Monday, January 31, 2011

Python blows, why do people use it?


At work, its no secret we use python and C++. The python is used to do stuff like guide the initialization of the game, and set up things, like graphics.

The python advocates claim the following:
  • Its script! Just change it and you can see things right away, its great!
  • Type safe coding is sooo 20th century.
  • Compilers are lame.
  • No large projects are written in C++ any more.
Heres what really happens:

I get the C++ code to compile, then I have to make another stop in python code to write the 'glue'.
If the C++ code crashes, I can attach a debugger, this might be because the python is all jacked up.
The python code may not 'compile', which is a runtime step... It might even not compile 'later', or it throws an error after 5 minutes of running the game/app. Then guess what, I'm screwed. There is no reloading of that script.
How would I debug python? There is no debugger for it. I'm back to putting in print statements.

It's like I've stepped back in time to 1983, and BASIC.

Then there is the whole "white space defines scope', which turns out to cause no end of trouble. It basically feeds back into the "Oh, you ain't done until the code is executed"

Also, being one of these languages where everything is an object and dynamically mutable, there is no IDE that can provide any help for me, like auto-complete. Working on a large python project is a nightmare.

I cringe every time I have to delve into the python code. Hopefully that will be less and less as time goes on.


Cyanogen on my EVO

After a bit of white knuckle 'clear all data' panic attacks, I got CM6 on my EVO. The process is actually quite easy, but there was a bit of 'read between the lines'.

Good riddance to HTC Sense.

Oh, and HTC, please stop developing Sense. It's terrible. I love your hardware, but if you keep shipping this crap, I'll have to look elsewhere.

So, I'm a web guy now?

Since my last post, I've been busy. I finished the video indexing website, and from that, I got another job building a 'kiosk' like application using tomcat/js/chrome, then my pet sitter had me update her website for payments. It's not quite paying all the bills (I do have a regular day job), but it's a nice chunk of extra money.

I've also helped out here and there with other sites, and dang, people really suck at HTML. I was poking around a website made for UGA, to see if I could help out my girlfriend, and was aghast at how poorly designed it was. It was made by a local web services company, to the tune of $5000. Thing is, it looked like it was a 'template' that they simply copied over. If thats what people are paying for, then maybe I should try to ramp up a bit more business and see what happens.

I also finally started android development, and the first thing I'm doing there is to do a port of sorts of my windows EFIS software, but update the UI to fit the android platform of course.

This is quite an interesting time to work on android. We've seen 2.3 pop out, and within a month, 3.0 announced and demoed. Its still unclear as to what the 'line in the sand' is between the two. Are phone devs supposed to target 2.3, or skip it for 3.0?
We'll find out tomorrow I suppose, there will be a Honeycomb launch at 1pm EST.