Tim Hatch

Weblog | Photos | Projects | Panoramas | About

Meta-Thought: Templating 25 Mar, 2006

I just got about halfway through the RoR Flickr Mashup screencast, and I must say it’s better than a lullaby. However, its long stretches of nothing happening but typing left me time to think about the template situation for Ruby. Python has way too many independent templating systems, but things are getting better. Python is a language first, with (way too many) web frameworks and templating languages put on top. Will Ruby have the same kind of longevity options with its situation — namely, the average person equates Ruby==Rails.

I must admit however, as a Python programmer, I have a hard time deciding what to use. I tried Clearsilver, and like it (though it isn’t available for the platforms I need). I tried Smarty, and after some include path issues, it’s a bit bloated, and more than I want in a templating engine. I do like the host-language-agnostic templating languages from a design principle, including Clearsilver and HTML::Template in Perl. I wish one of those would catch on and provide best-of-breed templating rather than trying to be more. I’d embed that in an instant.

Game Programming: Gourad Shading 20 Mar, 2006

From a discussion in class two weeks ago:

“Gourad shading is neither efficient nor pretty.”
“Reminds me of Java.”

Java: Halfway to Lisp? 20 Mar, 2006

And you’re right: we [the Java language designers] were not out to win over the Lisp programmers; we were after the C++ programmers. We managed to drag a lot of them about halfway to Lisp. Aren’t you happy?

Guy Steele on Java

Belle and Sebastian, Dallas 19 Mar, 2006

I went by to see Belle and Sebastian in concert last Tuesday (and have since been quite busy recovering). The new girl is fitting into the band quite well — I could have sworn Isobel was singing some of the songs.

The new album, The Life Pursuit, sounds a lot better after hearing it played live. I didn't need that with the other Belle and Sebastian albums, but maybe it's just my state of mind.

Commence the photos (taken without flash so as to not annoy the performers... that has got to be one of my biggest peeves)
Live on Stage

Good programmers hate all languages 13 Mar, 2006

Let's say you're trying to hire a Java programmer. Well, you've already made your first mistake! Why? Because setting out to hire an "X programmer" for any value of X is probably going to land you a dud. I will assert: all the best programmers are proficient with at least three to five programming languages, and the Really Best ones pretty much hate all languages, but they hate some less than others.

Hiring Ruby Programmers, O'Reilly

Programming Tidbits 08 Mar, 2006

Unit testing is so great I can’t live without it now. I find that the code I write in Python, tests-first, is generally higher quality than that I’ve been able to write in other languages, such as PHP, Java, and any-random-dot-net-language. I firmly believe that all non-trivial functions should have tests written as soon as the design is spec’d out, which is to say, generally before the function is finished. It makes you think about edge cases earlier on, and provides a firm "this is finished" or "this needs more work" indicator.

Yes Eric H, I’m talking to you when I say non-trivial. Writing tests for getters and setters is generally useless, unless you’ve got some complex behavior in the getter/setter, in which case shouldn’t you split that out into a verification function separately?

In other news, a couple of programming links which I recently rediscovered, and don’t think I’ve mentioned before. Good reads, mostly focused on language differences (which I guess makes me one of those crufty Python people that is interested in doing things the “right” way.

XML is not the answer. It’s not even the question. … “Some people, when confronted with a problem, think ‘I know, I’ll use XML.’ Now they have two problems.”

Python is Not Java

Technologies, especially programming languages, do not win on merit. … What about Python? Is Python hip, funny, and fun? Not really. The community is serious, earnest, mature, and professional, but they’re not much focused on fun, which is an important part of marketing languages.

A little anti-anti-hype