What Would You Have Said?

On my last project we had a lot of meetings that included “fluff”. This is not unique, especially in IT. What was different, though, was that every lead developer was expected to perform three-letter-acronym loaded monologues, nearly on a daily basis. On one particular afternoon I felt like I had really gone overboard. While the subject matter gave me little leeway in the speech that I could craft; I still I could barely believe what I had said, and wondered if anyone else felt the same way. I decided to ask one of my friends in the same meeting what he thought, over IM. Here is the conversation that followed:

Me: did you think that was absurd what I said?
Him: sorry, but kind of šŸ™‚
Me: OK
Me: what would you have said?
Him: same thing šŸ˜€
Me: (rofl) I KNEW IT

A List of Wisconsin iPhone Developer Blogs

Are you blogging about iPhone development in Wisconsin? If you are, I would love to add your blog to my list of Wisconsin iPhone developer blogs. Currently there is only one on my list. I know there are folks out there, though, as evidenced by Madison Cocoa Developers and Midwest iPhone SDK Developers.

Wisconsin iPhone Developer Blogs

Redefining Want

The word ‘want’ is a verb that, when used with an object, indicates their desire or interest in said object. For example “I want dinner”, or “I want to be happy”. In order to achieve that object, one must take some ordered steps. For example if ‘I want dinner’ some logical steps might be to go to the market, buy some vegatables and rice, cook them, and finally eat them. When the steps are anything but trivial, most of us get lazy. The result of the laziness is that when we start to follow the steps we simply say something to the effect of “I don’t want to”. For example “I want to be healthy, but I don’t want to exercise”. It is easy to get try to follow the ‘tough love’ approach on yourself or your friends in cases like this; but that virtually never works. What if, instead, we redefined ‘want’ to indicate not only the objects that we wish to attain, but also the means by which we will attain them?
Perhaps in doing so, it would explain to our brains that pleasure can be had not only in the fruits of our effort, but also in our effort alone?

R6RS Chez Scheme 7.4D and TSPL4 Now Available

A R6RS conformant Chez Scheme 7.4D and TSPL4 now available.
Surprised?! I was. I hadn’t heard anything either. Anywhere. From anyone.
Yesterday though, I saw Aaron (dedicated Chez user) posting about R6RS ports here and Eduardo mentioned TSPL4’s availability here here.
Addendum: 08/04/09
The TSPL4 link is broken, but was not at the time of posting. Since the hardcopy hasn’t been released yet, I suspect that the link will be down until the hard copy is released.
Addendum: 08/08/09
The link is back up.
FWIW: I didn’t think it was worth bothering Kent by asking about why it was down in the first place.

A Brief Review of PragProg's Becoming Productive in Xcode Screencasts

I just finished watching the first 2 episodes of this screencast series. It has a pleasant tone and a lot of helpful information in it. You might imagine it as sitting down with another developer already familiar with Xcode and having him show you the very best features and highlights of the IDE. The author doesn’t play up Xcode too much, but by demoing all of the specific features he did, the viewer will find that ultimately they all make for a very powerful and pleasant to use IDE.
This is a great screencast to combine with reading the vendor documentation (here). The screencast gives you a jumpstart by highlighting the best features and getting you productive with the IDE while the vendor documentation gives you some important details that wouldn’t make sense to include in a screencast like this.
The author presented with a pleasant tone and a good meter, and the content was perfect for showing off Xcode. Apple should thank him as the documentation doesn’t come anywhere close to selling the great features that Xcode provides as the author does in these screencasts.

Maybe Java and C# are the F-16 of the IT world

Emerging Technologies
The U.S. Air force Air Demonstration Squadron , also known at The Thunderbirds, started out in 1953 flying F-84 Thunderjets. The F-84 had been flown for the first time in 1946. In 1955 they upgraded to the F-84F Thunderstreak. One year later they broke the sound barrier with the F-100C Super Sabre, which they stuck with for 14 years. In 1969 they switched to the F-4 Phantom, which had made its maiden flight 11 years earlier in 1958.
In 1974 they responded to the gas crisis by flying T-38 Talon. It was sort of like the Toyota Prius of jets at the time. After a control stick failure in 1982 caused the death of four pilots, they upgraded to the F-16, which they have been using ever since.
Now the point is that in the early days of jet technology, frequent upgrades were necessary to take advantage of the advancements, but the F-16s work just fine and they are content to fly an aircraft that made its first flight in 1974, 35 years ago at the time of this writing.
Maybe Java and C# are like the F-16 of the IT world.
In the nineties we went from text-based applications to GUI applications. From structured programming to object oriented programming, from compiled code to byte code, from desktop applications to web based applications, and eventually to ā€enterprise applicationsā€. And that is where we are today. Sure, we have new frameworks and a few additional tools like Hibernate and AJAX. The F-16s have upgraded avionics and weaponry too. But we are still flying the same basic airframe.
As the technology has stabilized, our skills donā€™t decay as quickly. This is good for people who are slow learners, but it means that movers and shakers may not have the same opportunity to be a rock star that Windows programmers had in the early nineties or web developers had in the late nineties.
So where do we go from here?

— Zachary Schmidt
Good question.
In the late nineties and early 2000s it was an exciting time in IT. People were learning a lot about object-oriented programming and different styles of running software projects. Things have settled down though, like Zac explained. I had always assumed that everyone, having ramped up on the current technologies, would be spending nights and weekends ramping up on whatever might end up as the “next current technologies”. That really hasn’t happened though.
Where do we go from here? Perhaps it is functional programming, but I don’t have any strong opinions here. Rather, I would share that where we ought to go from here is towards smarter programming with powerful languages. IT is generally lacking in both of those things today; and addressing them would save time and money.