Life as an iPhone/Android Developer in Dallas

This entry was posted by Monday, 15 August, 2011
Read the rest of this entry »

For several years, I have been developing all types of software, from websites to desktop applications to mobile apps, etc.  When I started writing iPhone and Android apps, I didn’t think it would be my main thing.  It was a really cool technology, but I had no real idea how much I would end up loving it.

For me, the thing that I love is that it takes me back to the days of what software engineering used to be.  Back in the days of the Tandy Radio Shack 80 (commonly called the “Trash 80″), you had a very limited supply of memory, processing power, and storage (anyone remember floppy disks or tape drives?).  Today, we have so much power on our desks or even in our lap (I’m still talking computers here!).  Combine that with the new programming languages we have these days such as C# and Java that have “garbage collectors” in them so the developer doesn’t have to worry about cleaning up after himself and writing efficient code.

The end result is instead of it being “easier” to write good software, it has become easier – if not encouraged – to write bad software.  We have bloated software on our computers that take several seconds or even minutes to start, and things often feel sluggish and unstable.  Even the “best” of applications suffer from these symptoms.  Then, the universities don’t bother teaching good practices such as memory management because “Java takes care of that for you.”

And then, mobile app development became a hit, and everything changed…at least for now.  Now, good iphone developers can really shine because they already know the tricks of the trade.  Android developers can, too, but I still think it was a mistake to use Java as the language of choice.  However, in both cases, mobile developers are more focused on making their apps quick and lightweight because they have to.  You have to be efficient with your network access because it’s usually a slow cell network that you have to deal with.  So, no downloading several megabytes at a time if all you need is a few kilobytes of data.

The Objective-C language is good, bad, and ugly sometimes.  For the most part, it’s good.  The only bad I’ve really found is the syntax for calling methods in objects.  Apple calls these messages, and they look like this:

[someObject someMethod:arg1 anotherParameter:arg2];

In C++, it would look like this:

someObject->someMethod(arg1, arg2);

Does it make sense?  Not really, but it’s what they chose.  I’m guessing it had to do with the timeline of when Objective-C was created vs. when C++ was, or that NextStep (Steve Job’s other tech company) wanted to compete with C++ for market dominance.  In the end, developers like me have gotten used to it, and it gets ugly when other developers go crazy with nested calls and weird names.

Finally, you’re probably wondering about the Dallas part.  My wife and I moved to Texas a year ago because there was a better job market here.  I’m from California, but I didn’t want to deal with their economy…or lack thereof.  We love Dallas because there’s so much to do here, and with Plano nearby, there’s a ton of opportunity here.  I think the only thing left for me to do is to go buy some cowboy boots, hat, and a pack of Skoal.  Ah, Texas…the only place you can wear a cowboy hat and boots to work…no matter where you work!

Did you like this article? Please share it:

Comments are closed.