Library columns
Pro Developer - Optimize Your View
Introduction
For anyone who spends a lot of time writing user interface code, optimizing the view immediately conjures up images of windows, clever little UI gadgets, usability issues and a long string of design meetings with excitable and over-caffeinated programmers. The fact that these little get togethers may very well involve airborne white board erasers traveling with great velocity and purpose is just another testament to the passionate importance we place on how our software is presented to our customers. Indeed, the portal through which the user peers into the depths of our code often seems to define the software itself, at least in the eye of the beholder. Consequently, we acknowledge that user interface issues are not just a matter of putting on a pretty face, but in fact define the boundaries within which our users will operate. Put a clunky view on a good piece of software and you end up with a clunky piece of, well, software.
However, those of you who have already fired up your programmer's editor and called in your order for a pepperoni pizza in anticipation of yet another exciting session of coding are probably getting a little ahead of the game. We're not here to talk about the bits and bytes of coding. We're here to talk about something much more important - your future as a professional software developer. So, you won't be needing that programmer's editor for the moment. The pizza's probably still a good idea, though. Some traditions should never be changed.
And wheres the info??? i would like to see you expand on the methologies you use day to day and how you approach new apps in time managment.
After reading it, however, I think it would make a very, very good intro into a much longer essay (or book!) concerning this topic. If Christopher Duncan ever writes on this topic again (and I hope he does), I'll jump at the chance to read it.
Hey, guys.
Thanks so much for the kind words. I of course try to observe proper etiquette regarding blatant plugs, etc., but, er, since you asked...
I go into a lot of practical details about how to get the project out the door in the real world (where we aren't usually given the time we really need, etc.) in my previous book, The Career Programmer: Guerilla Tactics for an Imperfect World (Apress). This isn't a Code Complete / bits & bytes kind of book, but rather a collection of street tactics for dealing with management, marketing, arbitrary deadlines, etc. If you enjoy the Pro Developer columns, I think it's the sort of stuff you'd be interested in.
Additionally, my latest book,Unite the Tribes: Ending Turf Wars for Career and Business Success, just went to the printer Friday and should be on the streets mid-November. This is not a techie book, but one written as much for us as anyone else - the tactics apply to anyone working (or managing) for a living. Since I just got it done, there's not a lot of info up on the web site just yet, but I'll have more details up very soon. In short, the bottom line is that prosperous companies have more money to spend on their people than broke ones, so the path to a better career requires expanding the empire (i.e., your company, the people who write your paycheck). The cornerstone of it all is the fact that, at the end of the day, success is all about people, and knowing how to get them to support your goals and desires. Once again, it's written in practical terms with the real world in mind rather than discussing ivory tower concepts. Maybe I've just been on the streets too long...
Anyway, as far as my writing, that's what I've been up to lately. By the way, I'd love to hear success stories from any of you who take these tactics into battle and achieve your goals. That's half the fun of writing.
I have to agree- I was left with my mouth watering, waiting for the beef to arrive. I have absolutely no comments regarding the message of the essay (all quite true). After reading it, however, I think it would make a very, very good intro into a much longer essay (or book!) concerning this topic. If Christopher Duncan ever writes on this topic again (and I hope he does), I'll jump at the chance to read it.
Conceptually a good article to get programmers who have not already embraced the concept started thinking.
Lacking in the "meaty" details of just how this is done.
First, management has to buy in to the concept that they will get a better product, fewer bugs/complaints, ROI and agree to support the effort.
Next, Users have to become part of the development process all the way through, not just as beta-testers at the end of the development cycle.
Finally, there is no substitute for a really good, professional project manager who can work both sides of the street, leading programmers toward the water, getting the users to drink and the training company to create training materials that address user issues instead of just high-lighting the techno-features that may not make the program more useful to the end-user. You know the person who's paying for the software, whether directly or as a corporate user within your company.
This thread is for discussions of Pro Developer - Optimize Your View.