It’s rather frustrating to be an architect or a developer these days…Microsoft is bringing out so much new stuff that it’s hardly possible to keep up with it. Add to this the speed at which books are published, novel ideas appear on CodePlex, personal software development projects, daytime projects of all sorts and non-Microsoft technologies you cannot deny…hundreds of blog texts popping up in Google Reader every day, traditional journal articles…aaaaaah! If professionals cannot cope with the overflow how much less are students or laymen able to follow the technology wave?
On the one hand I admit that feeling the thrill of being part (conceiving, making blueprints) of new developments and watching the world evolve is the kick of being an architect. On the other hand, the world becomes more and more confusing. The wider the possibilities, the less it’s clear what to choose. As an example, let me present you with a little challenge. Imagine you want to make a website (it’s a weird idea, I know), what are you going to use? I stick to Microsoft-only stuff and hence assume you’ll use ASP.Net on IIS:
Of course, you need a database backend and you want a flexible data access layer:
If you have chosen, do you know the strength and/or weaknesses of your choice? Which version, or alpha release, or CTP, or Release Candidate? Will it be supported in the future? Think of Acropolis, the WPF layer for CAB…
On top of it all, you hear from your boss that you need to implement some kind of B2B integration with (guess what) SAP ERP and that another third party has this wonderful Ruby on Rails site we need to integrate with. I suppose exchanging data with MySQL over a Java webservice on WebSphere is not a problem anymore…
Excellent article!
Gone are the days where a bunch of instructions and some creativity were the ingredients to put your ideas to work…
Software development has become dialetheistic. A lot of functionality is provided with the development platforms out of the box or is packaged in some extension. The good thing is that we have to do less plumbing because libraries, building blocks, … encapsulate code we do not want to write each time. On the other side, we need to obtain an overview of technologies, building blocks, namespaces, class libraries, software factories, design patterns, architectural patterns, …
The art of software development these days is to choose the right ingredients to get the job done in a good way. Applications today are not standalone anymore. Interconnectivity and integration of different systems on different platforms and technologies are key. And of course, everything need to be secure…
Cheers,
By Nico December 7, 2007 - 11:41 amNico
Addendum:
By Me December 10, 2007 - 7:21 amas of today you can expand your .Net 3.5 toolbox with ASP.Net Extensions. Yes, indeed, now one has ‘extensions’. It’s not called ‘ASP.Net Futures’ or ‘ASP.Net Community Technology Preview’ or ‘Toolkit’ or ‘Starter Kit’. I guess this release is a beta of the preview of the CTP. But…don’t be mistaken, I do believe that we should have had MVC underneath ASP.Net already for a long time and Microsoft finally was pushed by the Rails success to deliver it. So, go a immerse yourself in this new technology, it’s really a step forward (independently of my irony).
Nico, dear valued and faithful friend
What I said is peanuts compared to integrating the mainframe with custom logic on some famous yet shitty framework brought into the company on the basis of political rather than technological criteria, which in the end brings more troubles than improvements, more endless meetings with incompetent silly business pimps, more idle documents and certificated nerds, more nonsense and rework. In some companies, the more things change, the more the shit remains.
I feel lucky to swim around in difficult choices and compromises, because in the end if all goes wrong I can point to myself. Which is still way better than being subordinated to the choices of others, chewing the stupidities of narrowminded decision makers and depending on money-hungry consultants. I mean…what I write about in my blog above is more a manifest of freedom than a real complain.
In any case, there is still beer and friends to alleviate the pain sometimes
By Me December 10, 2007 - 7:35 amYou made your point, and I agree with you. However, you have to admit that it’s not easy nowadays to keep up with all the new technology that Microsoft and others are bringing to us, mortals. And of course, exploring all the stuff is what makes it interesting! But look at the different roadmaps, product consolidations, vendor-specific choices, service packs and so on… It goes on, it goes on and it goes on… and the speed of releasing is increasing day by day. In the long run, this wil lead to specialization. Look at the skills that an average web developer need these days.
Remember, when the going gets tough, the toughs get going! By the way, all talk on no drink makes Jack a dull boy
Cheers!
By Nico December 11, 2007 - 8:11 pm