Everything old is new again

TechCrunch discovers moblogging. Let’s pause to give a nod to apps like Dave Winer’s YoMoBlog, Nokia’s LifeBlog, the TextAmerica service, to popularizers like Joi Ito, and all of the many others who came before. I’ve never been a big fan of “we did it first!” lines of credit (what have you done for me lately!), but I’m not a fan of ignorance of the past, either. That’s TechCrunch’s sin. The new apps will almost certainly be more powerful, and probably more popular, than the ones that came before . So a big hearty congrats to Automattic and SixApart on shipping their new iPhone clients. Hope you guys get some great adoption. :-)

Believe it or not the following fact was useful to me today:

Technically, a string constant is an array of characters. The internal representation of a string has a null character ” at the end, so the physical storage required is one more than the number of characters written between the quotes.

Kernighan and Ritchie, The C Programming Language, 2nd Ed., Prentice Hall, 1988.

C coders, I feel your pain.

Two views of GCC

Two quotes from this Infoworld article about the SCO case:

“The OpenServer compiler is crap. Without (the GCC) they would be up the creek,” said Hans Anderson, the director of software development with Price Data Systems in Louisville, Kentucky.

The proprietary world would have created adequate alternatives to the GCC, had the free software not driven development tool companies out of that market, [Jay Davidow, a reseller with Winnipeg, Manitoba’s Profit Master Canada Inc] noted. “You had companies that made developer tools, but where are they today? They don’t exist.”

Happy picture

Miguel greets Don
I don’t know either of these guys personally, but this picture just makes me smile. Photo credit: Tim O’Reilly/O’Reilly Network.

More programmer nerdism

hackdiary: “Using an RDF representation of Wordnet, the lexical database of English, we attach keywords to photographs to indicate what they objects they depict. With simple inference logic, we create improved search engines over this data. For example, using the hypernym information in Wordnet to extrapolate from keywords, a search for buildings can find hotels, churches, houses and other related photographs. We can automatically build a Yahoo-like hierarchical web site of photographs organised by the meaning of their keywords.” Okay, this is really cool.

Bedtime reading

Tonight I cozied up with the first two chapters of Dive Into Python and also got PyTechnorati working. This is a lead-up to installing TechnoBot, which is written in Python.

[Warning: serious programmer nerdism ahead] I noticed that Mark plays the XML document object instance equivalence game in his unmarshal() function. Very cool. Neither of the C# technorati api implementations I’ve seen do this, though they could using an XmlSerializer. Instead, they return a string for you to parse. More flexible, but more work. Ho hum. In a neat twist, Python’s typing rules allow this all to happen more or less dynamically, whereas in C# you have to define the classes that will hold return data ahead of time.

Object Orientation

Craig Andera: “I ask the question: is there something about OO that is inherently more maintaintable than a well-designed procedural system? I’m not sure there is. “

Wow, Craig really captured the sum total of my thoughts on OO after working with it for a little over a year. OO modelling is a fun game, but it seems just as pitfall-prone as other ways of programming.