Nathan Simpson

[![Nathan Simpson on Flickr](http://farm2.static.flickr.com/1072/727584841_268c443ad3.jpg “Nathan Simpson”)](http://www.flickr.com/photos/neror/727584841/ “Nathan Simpson on Flickr – Photo Sharing!”)

You can make your own at [http://www.simpsonsmovie.com/main.html](http://www.simpsonsmovie.com/main.html “Simpsons Movie”).

I can’t wait for the movie!!!

The Real Python 3000

I didn’t think someone would take the time, but the not-so-lazy web has proven me wrong again. Someone actually wrote an [LOLCode](http://lolcode.com/ “LOLCODE”) dialect and an accompanying translator that converts to valid Python code. Of course, it’s called [LOLPython](http://www.dalkescientific.com/writings/diary/archive/2007/06/01/lolpython.html “LOLPython”), and it’s truly fascinating. I’m looking forward to playing with it once I get some extra time.

I figured the [lolcat meme](http://en.wikipedia.org/wiki/Lolcats “Lolcat – Wikipedia, the free encyclopedia”) had died out by now, but it seems to be experiencing a resurgence. Maybe my personal favorite knock off, [lolpaul](http://lolpaul.com/), had something to do with it? 🙂

LOLPython FTW! LOL!!

[![LOLCODE Book from O’Rly](http://icanhascheezburger.files.wordpress.com/2007/06/lolcode_r.jpg “LOLCODE Book from O’Rly”)](http://icanhascheezburger.com/2007/06/01/lolcode/ “I CAN HAS CHEEZBURGER? » Blog Archive LOLCODE «”)

[via [Daily Python-URL](http://www.pythonware.com/daily/ “Daily Python-URL”)]

Where do software developers get paid the most?

According to data from the [Department of Labor](http://www.bls.gov/oes/current/oessrcma.htm), it’s Houston. The blog at [delatores.com](http://www.delatores.com/blog/default.aspx?id=14&t=Top-10-Best-Worst-Cities-For-Software) crunched the numbers from the DoL for us and adjusted them for cost of living. This wasn’t even a close race, folks. Here are some highlights from the post:

>

Top 10 Bottom 10
Rank City Adjusted Salary Rank City Adjusted Salary
1 Houston $102,908 1 Honolulu $38,766
2 Austin $93,844 2 San Francisco $44,937
3 Fort Worth $91,614 3 San Diego $48,181
4 Arlington $91,614 4 New York $50,492
5 El Paso $85,741 5 Oakland $51,428

> …

> Who knew that a developer in Houston had more than twice the buying power of developers in San Francisco.

> …

Well, I didn’t **know**, but I’m far from surprised. Houston is a serious bargain for anyone who wants all the amenities of a major US city for around half of the cost. The city boasts top notch [cuisine](http://tonyshouston.com/cuisine.cfm), [opera](http://www.houstongrandopera.org/), [regional theatre](http://www.alleytheatre.org), [symphony](http://houstonsymphony.org/), [sports](http://houston.astros.mlb.com/index.jsp?c_id=hou), [rodeo](http://rodeohouston.com/), and [parks](http://en.wikipedia.org/wiki/Memorial_Park,_Houston,_Texas), and that’s just the stuff that I care about :).

Houston also has a large, thriving developer community supported heavily by the financial, biomedical, and energy industries. The [Python](http://python.meetup.com/14/), [Ruby](http://houston-ror.pbwiki.com/), [Java](http://www.hjug.org/), [.NET](http://www.hdnug.org/hdnug/home.aspx), and [Agile Development](http://agilehouston.org/) user groups each consistently draw at least 20 members to almost every meeting. That’s not bad for a city that spans more than 600 square miles.

Houston also has a burgeoning tech start up community powered by its favorable business climate. It’s not a stretch to say that a $100,000 investment in a company in the Valley will probably burn out in about half of the time as the same investment in a startup headquartered in Houston.

There is no scarcity of programming talent in Houston, either. With [Rice University](http://www.rice.edu/) and the [University of Houston](http://uh.edu/) in the city limits and [Texas A&M University](http://www.tamu.edu/) a mere 90 miles away, the market gets pumped full of eager developers at the end of every semester. As for experienced developers, who do you think has been powering the space program and the energy industry all of these years?

It’s no secret that I love Houston, and, yeah, I’m a bit of a cheerleader, but I hear a lot of negative things about Houston from people around the country. Most of that negativity is baseless, and it comes from people who have visited Houston only briefly or not at all. Try spending a couple of weeks here, and [I’m sure you can find something about the city that you love](http://ants.wynand.com/2006/10/07/203/). So, if you’re a developer, and you want to live and work in a big city, hop a flight to Houston (you can get here non-stop from pretty much anywhere in the US). [There](http://www.snapstream.com/) [are](http://www.bmc.com/) [a](http://www.enfoldsystems.com/) [lot](http://corp.fuelquest.com/) [of](http://www.bindview.com/) [software](http://www.int.com/) [companies](http://www.schipul.com/index.asp) [here](http://corp.webxites.com/), and I’m sure one of them would love to have you.

Fsckers

I am not a happy camper at the moment. After 3 days of incessantly reloading the order page for my brand new Wii bundle (for which my credit card has already been charged), this is the email I got this evening:

>Hello Nathan,
>
>Thank you for shopping at Buy.com.
>
>At Buy.com we strive to provide the widest assortment of high-quality products at the lowest
>prices on earth. However, sometimes circumstances beyond our control affect our selection.
>
>We were recently informed that the item listed below from order #XXXXXXXX
>is no longer available from that supplier. Please accept our sincere apologies for this inconvenience.

What!? It was in stock when I ordered it 3 days ago. It took 2 days of order “Processing” to get to “Sent to Warehouse” status. After that, it didn’t take the warehouse long to dash my hopes of having a Wii any time in the near future. I was soooo ready to play Zelda next week. Buy.com is going to have a hard time earning my business ever again.

Steve Jobs Hates Java

I finally read past the first few paragraphs in David Pogue’s [second iPhone FAQ](http://pogue.blogs.nytimes.com/2007/01/13/ultimate-iphone-faqs-list-part-2/), and I was a little surprised to see this:

> Jobs: It’s not worth building in. Nobody uses Java anymore. It’s this big heavyweight ball and chain.

As you can probably tell from my [last post](https://neror.com/2007/01/13/third-party-iphone-applications.html), I rather like Java, and I also rather like Apple. If that’s how Steve really feels about Java, it’s no wonder that Apple stopped supporting the Cocoa/Java bridge in OSX. I always assumed it was because of the wonderful open-source [Objective-C bridge](http://pyobjc.sourceforge.net/) in [Python](http://python.org/) (my personal favorite language) that Apple just couldn’t keep up with. Regardless of the reasons, it’s probably better that Apple chose to focus on Objective-C because the [improvements](http://developer.apple.com/leopard/overview/index.html) coming in Leopard are very exciting.

The Cocoa/Java bridge aside, I am disappointed that Steve still harbors the ancient misconception of Java being big and slow. This has not been the case since Java 1.4 was released, and Sun has made great strides in performance in its subsequent releases. From my personal experience working with Java both on the web and on the desktop, the platform is more than capable of performing at a high level.

This reminds me of a product I meant to tout in my previous post: [ThinkFree](http://www.thinkfree.com/common/main.tfo). It’s a Java applet based online office suite. ThinkFree is a great example of how powerful applets and Java are. Sure it takes a minute to download the applet the first time, but then it’s cached for future uses. It really is Word/Excel/PowerPoint in a web browser, and it it beats the pants off of Google’s office suite feature and performance wise.

Well, I haven’t written a lick of Java code in 4 months, and I probably won’t for quite a while (at least until the iPhone comes out ;)). So, this is probably my last post about Java as my knowledge of the language and the platform will become stale pretty quickly. I hope to write more about [Python](http://python.org/) and [Django](http://www.djangoproject.com/) in the coming year, though. My current project makes extensive use of them, and I’m having a blast working with them.

Third Party iPhone Applications

*Disclaimer:*

*I wrote this before I read [David Pouge’s iPhone FAQ ](http://pogue.blogs.nytimes.com/2007/01/11/the-ultimate-iphone-frequently-asked-questions/) which mentions that the iPhone’s Safari will not run Flash or Java Applets. D’oh! Since I spent some of my morning on Friday writing this post, i figured I’d publish it anyway. The benefits of Java Applets apply to web apps whether or not they target the iPhone. So, hopefully, there’s some value in here.*

*Update:*

*It looks like Pouge has recanted the comment about the iPhone’s Safari not supporting Flash and Java. It’s the first item in [his second FAQ](http://pogue.blogs.nytimes.com/2007/01/13/ultimate-iphone-faqs-list-part-2/). This post might be relevant after all!*

[Todd](http://www.ditchnet.org) wrote [a post](http://www.ditchnet.org/wp/2007/01/11/the-only-way-to-write-software-for-the-iphone/) Thursday on his blog that piqued my interest.

>The only way to write software for the iPhone that I can imagine is via web applications.

>…

> Are Java applets once again an attractive option? Or will devs and users prefer HTML/CSS/JS/Ajax?

I’m of the belief that Java applets have been given a bad rap because of their early history as slow-performing, memory-hogging toys in the 90’s. The truth is that Java is now a very powerful desktop platform, and applets allow developers to use the full power of that platform in a “web app.” I don’t believe that applets will experience a renaissance in the average data driven Web 2.0 app, especially with the advances being made in the DHTML/Ajax/etc. world, but I think Todd has an interesting point with the iPhone.

If the iPhone runs a full Java VM, “desktop class” applications are only an applet away. Deployment is simple. Pushing updates is trivial. Applets are also extremely simple to package and deploy. What seals the deal for me is event handling, drawing API, networking, and filesystem access for offline and advanced usage.

I’ll admit that I don’t have a bunch of experience with DHTML, but I wonder how DHTML compares to Java when it comes to handling events, especially the multi-touch gestures? 2D drawing is also very easy with Java, but this might be a toss up due to Safari’s support of the [<canvas>](http://developer.apple.com/documentation/AppleApplications/Conceptual/SafariJSProgTopics/Tasks/Canvas.html) tag. My gut tells me that Java2D is more full featured and easier to use, but I have no evidence or experience to back that up. If the iPhone really runs OSX, then Java also has [jogl](https://jogl.dev.java.net/) to do 3D OpenGL drawing. I’m drooling just thinking of multi-touch and 3D. I’m sure you couldn’t do a whole lot with the limited processing power of a small device, but there are still some possibilities there.

Filesystem and network access is a completely different story. Provided that the applet is signed, and the certificate accepted by the user, the applet has the same rights as any other desktop app when it comes to reading and writing files to the filesystem. I don’t know of any equivalent in the DHTML world. The only thing close that I know of is the [great work](http://codinginparadise.org/weblog/2006/04/now-in-browser-near-you-offline-access.html) done by the [dojo toolkit](http://dojotoolkit.org/) team. The dojo.storage API only allows you to store data in the client in a specific location, though. It is just for offline storage, and it’s not a real filesystem API. It also requires Flash to be installed and enabled on the client. A Java applet would have access to all of the preferences, pictures, video, contacts, music, etc. stored on the phone. This is a big difference, and opens up many other possibilities.

Applets also have all of Java’s networking libraries at their disposal. You can emulate some of this functionality with XMLHttpRequest, but not all. One example that comes to mind and ssh client, or maybe a VNC server over Bonjour (although I don’t know why you’d want to do that). Obviously, there is a lot more at the developer’s disposal here.

At this point, this is all speculation. I don’t know what kind of tools will be available for the iPhone. If Apple is not going to provide the tools and rights for developers to write real “desktop class” applications for the iPhone, the developer community **will** find a way to do it on their own. [It’s a moral imperative](http://imdb.com/title/tt0089886/quotes). I’m really interested to see how this all comes out.

How To Handle Privacy Like a Caveman

From an [article in Wired](http://www.wired.com/wired/archive/15.01/start.html?pg=9) about the new RFID chips in US passports:

> 4) The best approach? Hammer time. Hitting the chip with a blunt, hard object should disable it. A nonworking RFID doesn’t invalidate the passport, so you can still use it.

I guess that’s what I’ll be doing if I don’t get my passport this week. I need it to get married in Canada. 🙂

*via [Richard](http://www.richardyoo.com/blog)*

Hail Storm at the Office

There was a fierce hail storm at the office yesterday, and I was able to catch a little of it on my camera. It’s hard to see much past the gate, but I didn’t want to step out from underneath the ledge on account of the chunks of ice falling from the sky. The winds were pretty heavy. It looked like the front edge of a hurricane. FYI, the bigger one [here](http://click.videoegg.com/video/cqbYqH) looks better.

I’m Engaged

Here’s the short version. I’ve been writing this long post about my engagement on November 24th. Unfortunately, I’m very anal and long-winded, and I don’t know when I’m going to finish it. So, I’m posting a quick announcement to let everyone know that Christy and I are now engaged. After about three and a half years, we’ve finally made it official. I’ll be posting the story of the engagement eventually. Until then, I’ll leave you with some pictures because everyone just wants to see the ring anyway.

[](http://pics.neror.com/v/engagement/IMG_0770.JPG.html)

[](http://pics.neror.com/v/engagement/IMG_0769.JPG.html)

[](http://pics.neror.com/v/engagement/IMG_0800.JPG.html)

Smart Surveillance == ED 209?

> researchers at the University of Texas in Austin are hoping its smart surveillance system can lend a hand in detecting that pent-up rage. The “computer vision system” can reportedly analyze human movements as they occur, and distinguish between “friendly behaviors such as shaking hands, and aggressive actions like punching, pushing,”

> [Smart surveillance systems may soon detect violent behavior](http://www.engadget.com/2006/10/26/smart-surveillance-systems-may-soon-detect-violent-behavior/)

Although this looks really cool, I can’t help but worry that it will turn out like ED 209 in RoboCop some day.

You know, like this: