Posts tagged ‘chrome’

Why I'm quitting GMail

Lots of people have expressed fear at the power Google has over our information. I don’t intend to expound on that. Suffice it to say that they know more about me than I do.

It’s never bothered me. I have always trusted Google to take care of this information. They’ve always been on the same side of privacy, net neutrality, and copyright debates as me. They’re extremely active in the open source world and they seem to value open source rather than simply using us. I trust them.

I used to trust them.

A couple weeks ago, Aaron (head developer of Arch Linux) received an e-mail from Google Adsense telling us our account had been terminated:

While going through our records recently, we found that your AdSense
account has posed a significant risk to our AdWords advertisers. Since
keeping your account in our publisher network may financially damage our
advertisers in the future, we’ve decided to disable your account.

Please understand that we consider this a necessary step to protect the
interests of both our advertisers and our other AdSense publishers. We
realize the inconvenience this may cause you, and we thank you in advance
for your understanding and cooperation.

How are we a risk to advertisers? What are we doing wrong? How do we fix it? No explanation. Aaron, of course, asked for clarification. They regurgitated the response:

Thanks for providing us with additional information. However, after
thoroughly reviewing your account data and taking your feedback into
consideration, we’ve re-confirmed that your account poses a significant
risk to our advertisers. For this reason, we’re unable to reinstate your
account. Thank you for your understanding.

As a reminder, if you have any questions about your account or the actions
we’ve taken, please do not reply to this email. You can find more
information by visiting

https://www.google.com/adsense/support/bin/answer.py?answer=57153

Following instruction for obtaining more info, Aaron posted here: http://www.google.com/support/forum/p/AdSense/thread?tid=029aef7a42e7c4f2&hl=en&fid=029aef7a42e7c4f20004707fc5d9ce9e

Still no additional information. I find this offensive. We are an honest, upstanding, unfunded open source Linux Distribution. We have done nothing wrong.

I respect Google’s right to choose where they place ads. If I was a marketing agency for companies that sell adult products, I wouldn’t post advertisements in a daycare or during Saturday morning cartoons. However to cancel our account without giving us a chance to fix or even understand their rationale is troubling.

The money from Adsense is mediocre at best, compared to our donations and schwag income. But this event caused me to reevaluate my trust of this mammoth company. I’m not suddenly “OMG Google is evil, I must not use their products.” (As a teen I had this tendency toward Microsoft products. I’ve matured a bit and can acknowledge that Microsoft has some good products: their mice and keyboards.) However, I now feel less comfortable giving this company full control of my information.

And thus, I am slowly moving my e-mail account from GMail to my own domain. I’m considering anonymizing my Google cookie. I’m reluctant to put my own or client data on Google App engine. I’m losing enthusiasm for my Android powered phone (that has as much to do with Java as it does with Google, to be honest), and evaluating all new exciting Google services with just a hint of distrust.

Google still creates some of the best technology in the world, and they are still mostly friendly to the open source community. They are a large company and the actions of one department obviously don’t reflect the opinions of others. Adsense is Google’s cash cow. The more exciting Google projects occur in research and innovation. There isn’t much communication between the two.

I am looking forward to Google Wave (I intend to set up my own host, of course) and to an anonymized version of Chromium for Linux. I have no problem with Google Gears. I still use their maps, but I’ll have to stay off Latitude.

Update: This post unexpectedly hit Reddit, and within a few hours, Aaron got another e-mail telling us that our Adsense account had been reinstated. We’re still lacking an explanation, and I’m still not sure I trust them, but I have to give them credit for quick action!

I hadn’t made this post to get action out of Google, though, so we’re probably not putting Adsense back on archlinux.org and I’m probably not going to go back to GMail.

Offline-Enabled Web Apps: The Future

I was reluctant to join the world of web development. I started in high school with a few sites and realized several things: Javascript sucks, Internet Explorer sucks; therefore web development sucks.

Fast-forward through a couple academic degrees. Job hunting with one requirement: Python. Python jobs all require Django.

So I learned Django, assuming, incorrectly, that if I was developing python backends, I wouldn’t need to work with the horrors of Javascript or Internet Explorer. I earned money. I relearned Javascript and became a first rate web developer.

In the back of my mind I still felt that web development sucks. So a few weeks back when deciding on a platform for a personal project, I thought I’d try something new. The Android platform was in my hands and I gave it a whirl.

I didn’t enjoy it much and I am now rewriting the app as an offline enabled webapp using Google Gears.

Then Chrome OS was announced and I realized that I’ll probably be doing a lot of offline enabled webapps using Google gears and/or HTML 5. Like it or not, it’s the future. Me, I like it. There are a lot of advantages to this kind of setup: I can access the apps from my phone, my laptop, my parent’s desktop, or Phrakture’s hacked computer whenever and wherever I want. I don’t have to write a different client for each one. Its true ‘write once, run anywhere’. I can upgrade each of those clients automatically as long as there’s a network connection.

On that note, you don’t need a network connection to run HTML 5 or Google Gears based apps. They both provide a ‘localserver’ that caches pages and javascripts, and give you an SQLite database for data caching. Typically offline versions of apps are not as powerful as their networked counterparts, but they do not require network access to run. Further, because they are locally cached, they can be made to run as fast as a “standard” (old fashioned) desktop app. The apps run in the browser, but the browser is just a container, a window manager, to hold the application.

In traditional webapps, you code most of the logic on the server side. In this new model, you end up coding most of the logic in the client, because the app needs to run without a guaranteed server connection. For me, this has a massive, nearly show-stopping drawback: A large portion of the app must be written in Javascript. JQuery makes Javascript suck lest, but it still sucks. I’m a Python programmer.

For years, I’ve dreamed of browsers supporting tags that allow me to write my DOM manipulation scripts in Python rather than the ubiquitous and annoying Javascript. This wasn’t possible because python can’t be adequately sandboxed such that arbitrary scripts running on the web don’t have access to, say, your entire hard drive.

This is no longer true. The PyPy project finally has a complete Python 2.5 interpreter that can be safely sandboxed. Since discovering this at Pycon 2009, I’ve been thinking about interfacing it with a web browser.

I figured “somebody must have started this already”. Google didn’t help much, but when I logged into #pypy on freenode I was told “fijal started doing that with webkit yesterday”. I’ve been following up trying to get the project to build (I was warned that the build process is a mess and was invited to wait until it is cleaned up a bit). So far, no luck, but I am optimistic that python support is finally coming to the browser. Granted, it won’t be much use for public webapps (at first) since browsers won’t want to be distributing pypy, but a lot of my projects are personal, and satisfying the general public will be far lower on my priorities list than ‘developing in my preferred language’.

I’ll have to install a pypy interpreter into Chrome Lite under Android before this is useful to me. That may be tricky.