Code Craft – Freedom languages

Mr. Barnes has written a very interesting essay about the trade offs languages make in the freedom-safety dimension. Well worth the read.

The Law of Computer Entropy

TeleRead: Bring the E-Books Home » The Law of Computer Entropy is great post about how the Law of Computer Entropy (The market for your computer product tends towards zero over time) impacts the publishing industry. Interestingly, one of the model Mr. Sperberg suggest to deal with this is “Pay once, read any book — free all day (all week/month/year)” is already being used by O’Reilly with their Safari Bookself.

Via: Ongoing

Less Condescension, please

I generally like the writing on lesscode.org but I have to take issue with the tone of History Repeats Itself. Mr Bunardzic is basically right about the fact that Java succeeded because it was simpler than C++ and that it looks like Ruby might succeed because it is simpler than Java but I really dislike the condescending attitude he has toward programmers stuck in static languages.

The last line of the post is, “The full fledged OO nature of Ruby, coupled with its dynamic nature, may prove to be too big of a challenge for the average application developer out there.” I think that Mr. Bunardzic both over-estimates the difficultly of dynamic OO languages and under-estimates the capabilities of the average programmer. Most programmer use static languages not because the are dumb and cannot handle the power of dynamic OO languages but rather because that’s what they were taught in university and it is what they can get paid to do.

I have trained several static language programmers (hi Mike and Navdeep) to use a dynamic, pure OO language in a previous job and I have yet to meet one that found it to be “too big of a challenge”. There is a learning curve and programmers who have only worked in static languages are not going to be dynamic language gurus overnight, but they are able to produce useful results in about the amount of time it takes to learn any language and its libraries. Probably even less because in a well designed dynamic language, like Ruby, there are a lot fewer mantras to remembered. (Imagine not having to mumble the same six lines of code plus comments over and over again just to get attribute accessors.)

So if you are a static language programmer thinking of trying out a dynamic language, fear not, you are up to the challenge. Dynamic languages are good because they require less mental effort to get the job done.

Turning Off the HTML?

Mr. de hÓra has an interesting post about solving the one-click subscription issue. I think he is wrong to write off the browser. It seems to me that feeds are best suited to providing sets of data which change regularly or are useful more than once and require little user interaction to construct. That tends to exclude a significant number of the things I do on the internet. For example, driving directions rarely change and are rarely useful more than once and getting them often requires some user interaction (e.g. clarification). Sure, you could view them in an aggregator but I don’t see any benefit.

On a side note, I currently use an online aggregator because I find the ability to access my subscriptions from any computer invaluable. I can imagine a way that different aggregators could be made to work off of an online subscription list so that I could use any aggregator on any machine, but I do not see that happening anytime soon. Until then I will be sticking with my browser based aggregator.

One other little point I wanted to bring out. Mr. de hÓra says, “permalinking to a html file is starting to look more and more like a bug”, and he is right, it does look like a bug. Permalinking should be done at the resource level. The HTML and XML feed formats are just different representations of the same resource and therefore they should have the same URI. Blogging software could easily serve up different formats based on the accept header. “Auto-discovery” is a bug, not a feature.

Two Weeks

Only two weeks until my daughter will be born. We still do not have a name, but everything else is just about ready. We saw our traditional two-weeks-before-the-baby-is-born concert last night. We have sorted out all of the gender neutral baby clothes we had for Elliot and are in the process of washing them (and all the new, pink frilly, clothes). We got a double stroller the other day. It is very big but I cannot imagine trying to go shopping with two, two and under, children with out one. Lots of little things still need to be done but I think we are in pretty good shape. Except for that name thing.