Friday, March 31, 2006

Are we that old?

In the beginning was the data and the data was good. All we cared about was getting the database populated and getting our queries to run fast.

Then came Objects. And they too seemed good, but they really just wrapped our data and presented in an easy to use fashion. The data was still there.

Then came Components. They wrapped up our objects and were even easier to use. But, still at the bottom was the data.

Then came Services. They abstracted away the Components. But the data remained.

So developers are pushed to build Domain Object Models and Components and Services all to do what? Make it easier to develop against? Use some cool new toys?

Back in the VB6 days, we grabbed a connection, pulled a RecordSet, pushed on a form then updated as needed.
These days were supposed to do what? Oh, the same thing you say, just after we develop the DOM, the components and the services?

We're so old now that we've come full circle. Users don't really care about DOMs and Components and Services. They care about:
1) How the app looks
2) How fast you can deliver
3) How fast the app runs
4) It's right

And in that order! We've gotten lost in the hype. As developers, we've lost our way. The real truth is in this list. And that should translate to how we develop software. Technology will change, UI's will change, OS's will change, but the data will always be there. That's were the real value is.
Somehow we must get back to the basics of building applications, not software development.

We have to get back to delivering something that meets our client's needs.

Thursday, March 23, 2006

Microsoft, Sinofsky and Nash.

My blood is as blue as the next programmer's, but this time I'm left wondering.

I am a firm believer that Microsoft's development tools are the best as far as making a developer productive. I also believe that the Office suite is very good (notice I did not say great or the best). However, Office is 'good enough' and is one of those tools that has gone far too long without major updating (like IE). It is really a diamond in the rough. A perfectly ripe fruit that needs the hard labor that all farming does to bring it to harvest.

Enter stage left, Sinofsky. He's the one that has been handling the Office suite. His firm regimented management style has kept Office releases on schedule. However, that same management style has not allowed any major innovation or interoperability in years. So now, Allchin steps down and hands the reigns to Sinofsky. Was this meant to be a slap to the COSD team for missing release date after release date? Sinofsky, the same man who, when another team might delay his Office release, side stepped the team and 'did it theirselves' and sacrificed interoperability.

Enter stage right, Nash. What could we not say about this guy. He pretty much single handedly turned Windows from a security laughingstock to a serious contender. The same man who spent most of '03 sleeping in the MSRC handling the attacks as they came in and personally handing the STUs to get them out the door. The same man that said that Microsoft could and should respond faster. The same man who turned in his 'security keys' to the kingdom today. Today, the same day that Microsoft announced that Sinofsky was now the 'man in charge'.

As I said, I'm a Microsoft believer, but I'm worried that this is yet another misstep by the company. When they wasted a not-so-small fortune to bring in Ozzie with his half-baked and blue-sky ideas, I stayed awake many nights worried that he would lead them astray. With Microsoft "Live" coming to life like Ozzie's Frankenstein, is Sinofsky the stake in the heart?

Monday, March 20, 2006

Something to be said for neatness..

Sorry to be silent for so long, I've been working on a project. (Gotta pay the bills you know).
I'm one of those programmers who try to get the code right the first time. I will spend extra time up front on architecture and refactoring so that I'll find less bugs in testing.
In working on this project, I'd written about 50,000 lines of code and was testing when I had a strange error. It only took me a few minutes to track down, but it was a missing "@" sign from one of my procedure parameters. I noticed that if I had lined up my procedure names as I usually did, I would have spotted it in coding, but I had been in a hurry and did not take the time to make it neat. I think that if at all possible you should make your code as neat and lined up as possble to make it easier for you to spot these types of problems. Life doesn't usually give you the time to do it, so you sometimes just have to suffer.

Just so you know, I did write a decent sized program that worked perfectly the first time. That was the only time and I've been striving for it again ever since.

Wednesday, March 01, 2006

Code Snippets for VS05!

In case you haven't heard, there are some great code snippets available for VS05 from MS at