Science Addiction

A dormant blog by Devanshu Mehta

Category: Miscellany

Between Protected and Private

Ruby has a closely related keyword called protected that differs subtly from private. As far as I can tell, the only reason to learn the difference is so that you can ace a job interview that asks you “In Ruby, what is the difference between private and protected?” But do you really want to work at a company that asks you such a lame interview question?

Michael Hartl.

Google AppEngine: SMS, the Namespace and Other Quirks

This weekend I started experimenting with the Google AppEngine.

Wondering what it is? There’s a pretty good answer from Google and one from Wikipedia, but the short answer is that it’s a hosting platform for web applications. Effectively, Google is the sysadmin for your application and provides the ability to scale processing, bandwidth and storage on their infrastructure. For a price.


  1. SMS Verification: In order to create an application, you need to provide Google with a valid mobile phone number where you can receive an SMS. Google sends you an SMS with a code, you enter the verification code on the site, bob’s your uncle. The question is: why?

    There is no official answer, but here are a few guesses:
    * AppEngine is freemium service. Basic accounts are free. SMS verification is a complicated CAPTCHA.
    * SMS verification loosely ties one individual to one account. Google only allows one AppEngine account per mobile phone number.

    And no, Google Voice is not one of the options among carriers for verification. Because that would imply people actually use Google Voice.

    I kid. I actually use it. Sometimes.

    I don’t know if Google Voice actually works for verification. There are conflicting reports on the web.

  2. The Google Namespace: Google has a single unified namespace, shared among all Google services. If you have a gmail username, someone else can’t use the same string as an AppEngine app name. This may seem trivial. It’s not. Just like the .com’s, it seems there’s been a gold-rush for Google names.

    Among the many, many I tried, here are some absurd app names that were not available:
    * truetrue
    * truetruetrue
    * truetruetruetrue
    * truetruetruetruetrue
    * truetruetruetruetruetrue
    * truetruetruetruetruetruetrue was finally available. Not that I wanted it. But you get the idea.

    I’m not sure if some deranged squatters are actually holding on to these names on the off chance that they’re worth something, or Google’s availability-checker has a bug.

  3. Programming Languages: The AppEngine only supports Java and Python. I want to use Python (web2py, more specifically), so that’s fine by me.

I have an idea for a nifty app that will help at least one person. Me.

I’m not quite ready to say what it is. And I’m not sure AppEngine is the right home. But we’ll figure it out- the free 500 MB of storage and CPU/bandwidth to support around 5 million page views a month is tempting.

How To: Create Amateur Drawings on Your iPad

I bought an iPad a couple of weeks ago, and the #1 use of it has been to draw. Now, I’m terrible with my hands– with pencils, brushes, paint, I make a mess. With the iPad, I may still be horrible, but I don’t get bogged down with the tools. I enjoy myself. And I’m satisfied. Which is more than I could ever say about oil paint. Crayons, on the other hand…

Anyways, I created two videos to demystify the process. I don’t make the claim that either of these drawings are any good, but I want to reach out to people like me– people who loved to draw but hated the tools- to pick up one of these devices and enjoy themselves. Let all the years of pent up art-rage out. (Here are all my drawings so far.)

Part 1: How to Draw on the iPad (Tools: iPad, ArtStudio for iPad):

Part 1.5:

Thoughts on Google Buzz: 120 Days Later

When I last wrote about Buzz, I was cautiously optimistic.

I still am.

I continue to use it after four months, but not many other people do. Of the things that I noted that I did not like about Buzz, only #1 has been resolved. I live with the rest. A few thoughts on Google Buzz usage:

  • Buzz has its own place in my social media landscape– I use it to share links with a known, finite set of people. My wife, my parents, and about 3 friends.
  • Engagement is fairly high among this small group.
  • The only distinguishing feature of this group is that they are all avid GMail users.
  • The only reason I am able to sustain sharing on Buzz is because I am an avid GMail, and more importantly, Google Reader user.
  • The role of Buzz is very different from Twitter, Facebook or others in my social media universe. On Twitter (and my blogs), I talk to the world and the world may or may not listen. On Facebook, I talk to my subset of the world, and the most random embers from my past glow in response. On Buzz, I send specific links curated for a specific set of people. I know who they are, and post links for them. It is so much more like email; no wonder it lives in GMail.
  • I have 41 followers. I know almost all of them personally.
  • I follow 48 people, but only a handful post anything regularly. Almost all the people who post regularly, do so because they share from Google Reader. Put another way, they would be sharing links on Reader even if Buzz did not exist.

Things I Don’t Like About Google Buzz

I generally like Google Buzz, especially things that it may enable with its APIs. Having said that, things I don’t like about Buzz so far:

  1. It brings every message that has a new comment to the top. I have to manually mute each conversation I don’t want to hear from again.
  2. It won’t let me comment on some Google Reader shares. It says “Oops, there was an error posting your comment. Please try again in a few seconds.”
  3. It doesn’t update feeds (twitter, rss, other) in real time. Sometimes delayed as much as 12 hours. Sometimes doesn’t show up at all.
  4. There is no way for me to share to a subset of people without everyone in that subset knowing the members of the subset. Confused?
  5. Finally, I would like more control over what gets posted. e.g. only tweets that are tagged #buzz.
  6. And recognize redundancy. If I post something to twitter and share it in Reader, don’t show my followers both.

Most or all of this can be fixed with subsequent updates, so I’m not worried.

Got a Valentine’s Day Card from Google, seriously!

Google loves me.

“Others will fill your heart this Valentine’s Day
We want to overload your servers.”

Is it love, or is it just advertising? The pen covers my coupon code. 🙂

Revisit: An Ode to the TSA

With all the renewed interest in TSA craziness, what with the underwear bomber and all, I thought I’d put up this amateurish, silly video I made a few years ago as an “Ode to the TSA” (Transportation Security Administration):

The Elevator Pitch for Health Care Reform

I participate on, where people can ask questions and get answers from the community. At 2am this morning, I got a question on politics from someone in Florida:

Can someone explain this healthcare shit they are trying to pass? It sounds like everybody will be forced to buy insuance and that sounds like crap to me. Help me understand it, cause it sounds like bad news bears to me.

I almost ignored it. But the dude really wanted an answer and he’s from Florida, where every vote counts. Or at least, it should. Now I realized I couldn’t reply at length, the conversation had started in bad faith (shit, crap) and I had to answer quick or he wouldn’t be paying attention any more.

So, very quickly, this was my answer:

It’s going to be tough convincing you since you start out calling it shit and crap. But here’s a try: there is a mandate to buy health insurance. You could be fined for not getting insurance. But people below certain income levels will get government assistance to buy it. And there are all kinds of things that bring insurance (and health care) costs down. Also, no one can be denied coverage by an insurer and an insurer cannot rescind coverage when someone is sick.

An additional 30 million people will be covered, costs for coverage (on average) will drop by $3000 per year, seniors can’t be charged more than 3x others (currently as much as 11x), women can’t be charged more than men (currently up to 50% more), the federal deficit is reduced and medicare is solvent for 10 more years than without the bill.

Phew. That was my elevator pitch for health care reform. It probably has holes the size of Aetna in it– I’m generalizing, I’m oversimplifying and I’m glossing over. But that’s what you get if you’re stuck with me in an elevator.

And I couldn’t have done it without this graph at the Wonk Room. I wonder if the Floridian dude saw that coming!

UPDATE: I got a reply from my Floridian:

“Thanks for your reply. You made it easier for me to understand, and it doesn’t sound as bad as I thought. I am still not convinced it is the right thing to do but that’s not really what I was looking for. I just needed understanding and you help with that. Thanks again. Have a good holidays.”

If only all political disagreements could be this civil.

Administrative Note

For all the people who follow this blog, here’s some additional information:

<li>I have recently started blogging at <a href=””>Things of Which I May Not Speak</a> about film, music, things I read and write.</li>

<li>You can <a href=””>add this blog to your RSS feed reader</a> like Google Reader, My Yahoo, Bloglines or others. If you don’t use RSS readers, you should– it brings updates from all the sites you like to you, instead of having to go out and see if they’ve updated. I recommend <a href=””>Google Reader</a>.</li>
<li>I’m fairly <a href=””>active on Twitter</a>, so you can <a href=””>follow</a&gt; my more live, off-the-cuff and short updates there.</li>
<li>I write about <a href=””>Star Wars stuff on my Star Wars site</a>. </li>
Enjoy and thanks for reading! Leave a comment once in a while, so I know who is reading.

Star Wars Game Theory

The Freakonomics blog analyzes Han’s decision to come back and help the rebels in Star Wars.

Han understands that the Rebels have a dominant strategy of fighting. Knowing that, although he has no dominant strategy, and being the self-centered person he has already shown himself to be, Han realizes he is better off choosing to aid the Rebels and fight.

And Volokh Conspiracy follows it up with a serious point:

[Han’s] contribution is likely to be decisive to the outcome. After all, he’s got “the fastest ship in the galaxy,” and it can make mincemeat of Imperial tie-fighters. […] Now the serious part: Consider how different is the situation of most people suffering under oppressive governments from Han Solo’s. If any one of them tries to rebel, it is highly unlikely that their actions will have a decisive impact on the regime’s fate. On the other hand, they, unlike Han, don’t have the Millenium Falcon to escape in. If they defy the government, they will likely be caught and punished. Of course if all or most of them resist at once, they might well overthrow the state.