Skip to main content

"If I Didn't Develop it Custom from Scratch, it's No Good"

It's time for developers to lose the "if I didn't develop it custom from scratch, it's no good" attitude. The other day, we were all sitting around at an internal technology presentation when suddenly, one of my collegues remarks snidely, "...with all these drag-and-drop, code-generating wizards driving development, are my .Net developers going to be writing code anymore?" Another collegue presented .Net Mobile 5.0 and all the new enhancements within Visual Studio 2005. Following the theme of "get developers away from developing plumbing and "every project needs _____ (logging, exception handling, data access, etc.)" code", these Microsoft tools take away many of the headaches involved with mobile development for the Windows Mobile platform.

Get over yourself! Code generators, IDE drag-and-drop functionality, and open/shared source frameworks serve as strong examples of industry innovation. One might be a strong coder/programmer but I believe it's both arrogant and ignorant to think these tools aren't as good as what you can whip up in a day. Bullcrap. If you still think this way then go take your laptop off to a deserted island (you'll want to pack a solar converter) and build applications in a vaccume. Your users...er, user will adore you. I can guarantee your code won't be nearly as robust, feature rich, maintainable, or error-free as what code be reused from commercial or open/shared source.

Unfortunately, I see this behavior every day. Oh sure, you'll plug in a few shared source libraries here and there: Log4J, Ant, whatever. But if it comes to working on a commercial tool such as a BPEL or a business rule engine/product...? No way! Heaven forbid you should get away from the code! What if the product needs modification?! C'mon. Do you really need to modify the Windows Server 2003 source code...? "Sure. I know better than 60,000 Microsoft employees. I do!"

It's an old, tired cliche but developers need to work smarter-not harder. With globalization, I guarantee there are 500 Russian, Chinese, Indian, or Nebraskans who can not only code you under the table but charge 1/5th of what you invoice. If no one else, you owe it to your clients or your firm. Become an innovator. Find the most effective and cost-aware method of accomplishing a task or solving a problem-not the method which most glorifies your precious custom code.

Stop reinventing the wheel out there folks. Plug in the commercial tools and shared libraries when applicable. It will propel your projects toward success, keep the industry innovative, and make our firms far more profitable and productive.

Comments

Popular posts from this blog

Certified or Certifiable?

As a senior technology professional, I interview a lot of candidates. I also maintain solid relationships with other folks in the community. Frequently, the topic of certifications arises: A good investment? Valuable? A clear measurement of skill? Consensus appears to draw the line related to one's seniority. If you're (for example) just out of school and looking for an instant creditability boost, by all means pursue a certification. Likely, this credential will assist you in overcoming the "junior" tag and likely land you more interviews and client roles. (Note: I'm going to use the terms senior and junior here...no offense to either. Can't think of a better one word description. I was a junior once too.) In stark contrast, the value of certifications drops off the table around the 2-3 year mark. Some in my circles even perceive certifications as a negative for the senior professional. They think, "If this guy is so solid, why is he wasting valuable...

Hero Write-up: Now this is Customer Service!

My best friend Scott is president/C-everything of a small northeastern Ohio manufacturing concern, KirkKey Interlock . I hadn't spoken with him for a while and wanted to see how Canton fared with the Blizzard of '08 (that's what they're calling it...not me). I say, "So what's new?" He replies that on Tuesday his primary server (which essentially runs the business) came up with lame with not one, but [a statistically improbable] *two* physical disk failures on a RAID5 hardware array. My friend attempts the fix but gives up pretty quickly after seeing some Linux nasty-grams on the boot screen. His service provider is an old college buddy who lives down in Raleigh, Cerient Technologies led by Jason Tower . Scott couldn't email out because Exchange was on the toasted server. Being creative, Scott started Treo-emailing photos of the screen. Unfortunately, Jason couldn't receive email because a storm had knocked out a lot of local hosting. [Sigh] After...

Rollback a Ooops in TFS with TFPT Rollback

Rhut roe, Raggie. You just checked in a merge operation affecting 100's of files in TFS against the wrong branch. Ooops. Well, you can simply roll it back, right? Select the folder in Source Control Explorer and...hey, where's the Rollback? Rollback isn't supported in TFS natively. However, it is supported within the Power Tools leveraging the command-line TFPT.exe utility. It's fairly straightforward to revert back to a previous version--with one caveot. First, download and install the Team Foundation Power Tools 2008 on your workstation. Before proceeding, let's create a workspace dedicated to the rollback. To "true up" the workspace, the rollback operation will peform a Get Latest for every file in your current workspace. This can consume hours (and many GB) with a broad workspace mapping. To work around this, I create a temporary workspace targeted at just the area of source I need to roll back. So let's drill down on our scenario... I'm worki...