Sunday, February 12, 2012

Programming at the speed of thought

In his classic "No Silver Bullets" paper in 1986, Fred Brooks claimed that the "accidents" of software development had been substantially addressed. He used the word "accident" in the Aristotelian sense, meaning tasks not inherently essential to programming like waiting for a program to compile. We were getting close to the being limited only by the essential tasks, where the limit is the human mind. I wonder how he might amend his views had he known how enterprise Java would introduce one bad accident after another to the profession. Fortunately, I think things are turning around.

The contrast between accident and essence came into sharp relief to me recently because of two things that happened one day. The first was when a colleague mentioned to me that he had wasted half a day trying to get Maven to build our application. He wasn't changing the build system: all he wanted to do was check out the latest code, build it, and work on it in Eclipse. This took literally hours to get working. The second thing was that I had been working on a personal project based on Grails.

Monday, January 9, 2012

No more cookies for you, says Facebook

The Facebook platform offers a great deal of functionality, and I have been using it recently for user authentication and management for a web application. Last December, Facebook implemented their mandatory migration to OAuth 2.0, causing breaking changes for those of us naïve enough not to monitor their blog. As part of this migration, they changed both their cookie format and policy, which will make life more difficult for server-side developers.

Thursday, December 22, 2011

Do you like your daily Scrum?

Over the years, I've attended my fair share of meetings and worked in a couple of places that are sort of "agile". Naturally, I have witnessed some unproductive meetings. It seems to me that the daily scrum -- or daily standup -- are disproportionately dysfunctional. This makes me wonder if there are truly fans of the daily scrum. Consider the following scenes of dysfunction. Have you seen these?

Monday, December 5, 2011

Reconsidering Java cloud hosting with PaaS

I have been looking into Java cloud hosting for my Groovy on Grails application, and I am quite pleased at what has been happening in this space. I last explored cloud hosting a couple of years ago. By contrast, today's PaaS (Platform as a Service) options look quite promising, particularly Cloud Foundry and Jelastic.

Monday, November 28, 2011

Tech conferences on the cheap

I like attending developer conferences. Developer-focused conferences bring a huge breadth of thought and concepts, an intoxicating  buffet of technology and learning that widen my knowledge beyond my current job's focus. Alas, technology-focused conferences have not brought the revolution in conference prices that technology has accomplished in other areas. That is, tech conferences remain very expensive. Including airfare and hotel accommodations, you could spend thousands of dollars for a single conference. I have been fortunate to have my employer pay for me to attend some developer conferences, but wouldn't it be nice if such conferences were cheaper in general?

This brings me to RIM's BlackBerry DevCon developer conferences. True, the conference itself is not unusual: lots of technical content plus parties, concerts and a price tag of a few hundred dollars. What I find interesting is what comes after the conference: the DevCon On-Demand website that lets you access the keynote and practically all conference session content. You get the transcript, streaming video/slides, streaming audio (synchronized with video and transcript) and source code. DevCon On-Demand is available not just to conference attendees but also to the entire public. Last year, RIM charged a mere $20 for a year's access to the US conference content. This year, they are charging … nothing.

BlackBerry development is a hobby for me, so I could never justify the cost -- airfare, hotel, registration and vacation time -- to attend something like DevCon. DevCon On-Demand is a great way for me to access the big ticket technical content without the big ticket cost. True, for some people the networking opportunities justify the cost of the real thing. But for geeks like me where the technical content is the primary draw, this is a great deal. Wouldn't it be great if other tech conferences followed this model?

Saturday, October 22, 2011

Twilight of BlackBerry Java

I have mentioned before in this blog that I develop apps for the BlackBerry as a hobby. For all my apps so far, I used RIM's BlackBerry Java SDK, which has been their the "official" way to develop apps. I just learned that by next year all my apps will be obsolete. I am not exactly overjoyed. Here are my thoughts.

Tuesday, September 27, 2011

From NoSQL to NoServer

I attended an interesting presentation recently on CouchDB, a document store database that helped make the term NoSQL famous. One of the interesting ideas discussed is the idea of CouchApps: pure JavaScript/HTML applications working with and interacting exclusively with CouchDB. So not only do you not need a relational database, you can dump your application server too.