August 31, 2009

Can productivity tools combine with outsourcing?

What happens when the easiest way to explain a project to outsourcers is actually to build it?

Over the last few months, I've supervised a group of offshore outsourcers who were using a very productive IDE that was new to them for one project; I also used the IDE myself for another project.

The outsourced project eventually turned out to be worthless, for a variety of reasons. Even though it seemed to be on track during development, once we got the code it became apparent they had violated a number of basic principles. My personal project, done in much less time, seems to be on track so far and I'm fairly sure that I can keep it on track. I know exactly what's in it, and I have thought through the architectural and implementation issues in detail.

[ Also on InfoWorld: Alpha Five V10 does codeless AJAX | Keep up with app dev issues and trends with InfoWorld's Fatal Exception and Strategic Developer. ]

I don't know if there's a general lesson here, but my take-away is that once you have an IDE that makes it easier to build a working project than it would be to build a specification and a wireframe mock-up, the value of outsourcing diminishes greatly. When you're supervising an offshore group, you have to be able to explain what you want. And if the easiest way to explain what you want is to simply build the project, there isn't much left for the outsourced developers to do.

In this particular case, the RAD IDE was Alpha Five Version 10, which is currently in a late beta stage. However, I think that the same lesson might apply equally well to other very productive IDEs, for example Iron Speed Designer and Servoy Developer.

It may be that I'm just better at building software than I am at explaining what I want to other people, so I'd be interested to hear from others. What's your experience with building software yourself versus working with outsourcers?

White Paper

D2D Virtual Tape Library Replication Primer

This whitepaper explains the terminology and concepts behind Data Replication technologies and establishes some sizing rules through worked examples. Learn the new paradigm in disaster tolerance—protect data anywhere.

Download now »

White Paper

An Alternative to Virtualization for Datacenter Cost Savings

Server virtualization is a popular option for dealing with mounting datacenter costs. Another equally promising approach is the use of an Application Delivery Controller. Citrix NetScaler provides a low-cost way for organizations to reduce their server count and accrue cost savings from a reduction in space, cooling, power and personnel.

Download now »

White Paper

Why Your Firewall, VPN, and IEEE 802.11i Aren't Enough to Protect Your Network

The emergence of WLANs has created a new breed of security threats to enterprise networks.

Included in HP ProCurve WLAN solutions is security technology that alleviates threats from WLANs through:
* Monitoring wireless activity inside and out of the enterprise
* Classifying WLAN transmissions into harmful and harmless
* Preventing transmissions that pose a security threat to the enterprise network
* Locating participating devices for physical remediation

Download now »

White Paper

Bringing the Edge to the Data Center

Effectively address data protection challenges, implementing solutions that help store and protect business–critical data while cutting costs and improving efficiency and reliability.

Download now »
Trencher93 31-Aug-09 11:05am
2 replies
Wow, Alpha Five is still around? I am not surprised at all that the outsourced project bombed or the result wasn't pretty. I had an encounter once with Alpha Five. It's like Microsoft Access or something. I would not call it an "IDE". I would be surprised if any developers remembered Alpha Five or knew what to do with it.
Martin Heller 31-Aug-09 7:16pm
That's just ignorant, Trencher93.
stevewood 1-Sep-09 8:45pm
Alpha Five is an exceedingly popular RAD language with hundreds of active professional and in-house developers. There is a very active message board at http://msgboard.alphasoftware.com and a professional group at www.alphadevnet.com. It's a great program which just got a ton better as described by Heller above.
stevewood 1-Sep-09 10:07pm
1 reply
Managing an offshore development group is no different than managing a group down the street. You gotta hire developers (or a group of developers) that have a proven track record (don't write useless code) and regardless of what you know about their experience, if you are the project manger, you've got to periodically check the program from an operation level AND review the code, which means you need to know how to code yourself (you or someone on your team). I can turn this around and say that a project manager, or a business owner requesting a project, can never provide enough detail to a developer if that developer lacks experience. At the same time, if the developer is well seasoned, you can get by with minimal description and (usually) expect a good result. In fact, a good developer is able to move your detailed description aside when needed, for instance in order to build the framework within the selected development environment. Seasoned includes programming skill, project management skill and the ability to communicate. IF that skill set does not exist, and you still want to hire another developer to build your application, then YOU have to make the investment to build that skill outside of your office. If you expect the developer group to learn on the job (which I suspect was the case for this offshore group) then you get what you pay for. Projects (at my level anyway) always take shape DURING the project. That is the only reason it appears to be easier to build the project rather than explain what you want. When you build it YOU are able to make those mid-course corrections you would not have known about at the start, when you are writing the project instructions. I've never built an application for a client, even a very detailed oriented one, where I did exactly what they said to do. In all cases, the project would be a flop if I had. p.s.: I know Alpha Five V9 like the back of my mouse hand. V10 adds quite a bit of power and requires a big commitment to education and experimentation. I expect it will be several applications and lots of little successes and screw ups before I say I am a qualified V10 developer.
Martin Heller 2-Sep-09 10:27am
3 replies
Well put, Steve. I'd argue with one of your points, however. It *is* harder to manage offshore developers than ones down the street because you can't sit down with them, draw diagrams, do brainstorming, and do pair programming; also, there's often a language barrier as well as a cultural barrier, and it's not always easy to tell whether you're overcoming them.
stevewood 2-Sep-09 1:14pm
Admittedly I have never hired or managed an offshore group. All those things you mentioned I do online or over the phone with my clients. We never actually sit down at the same table. In the few cases where I have had a local client and those things do take place face to face, the project becomes more complex, takes longer and is more likely to get off track. So I actually tend to pass on local projects. Same if I have a client that is overly-bent on whiteboarding everything in detail at every meeting. Micromanagement and too much detail kills my ability to "get" the application. Then again, I am talking about a one-person operation and projects that typically take three to five months. Maybe another related discussion is 'How to size up your developer(s); what level of detail and management is appropriate; how do you know they are headed the right direction....' In fact I think that is an important issue to bring up with my own clients.
PeterGreulich 3-Sep-09 6:43am
Once I had a Russian Geodesist with a Master Degree in mathematics work for me for several years. It actually took me two years to fully appreciate how the language barrier (his English was very poor) and the cultural barrier made clear technical communication nearly impossible. I always thought I understood what he was telling me, and vice-versa. Not quite. Although he was a talented person, that barrier constantly caused him to veer off course and do the wrong thing. As a result I was never able to fully take advantage of his knowledge and experience and he required constant close supervision to keep him on course (just barely). Eventually he left for a better job with more money and a supervisory position. I saw that as a losing proposition for both him and his new employer. A year later the other company fired him. His immediate supervisor later told me "I thought he knew more than he did". It wasn't the lack of knowledge so much, as the mutual inability to communicate properly. And this was a case of a hands on working relationship. How much more difficult must it be to use offshore companies to provide complex technical services to businesses in another nation and culture!
Martin Heller 5-Sep-09 3:44pm
Whether being live with a client helps or hurts depends largely on who holds the pencil, whiteboard marker, or mouse. If the client is telling me user stories and I draw the UI sketches or build quick prototypes, things go very fast. If the client is trying to specify or draw the UI, things quickly veer off course, since they almost never understand what the paradigm should be.
PatBremkamp 2-Sep-09 6:12am
I'm not surprised by Trenhcer93's comment. When I first started with Alpha 20 years ago, it was a $99 DOS based database program. Some of us pushed the envelope with it creating mulitiuser WAN based applications for multinational companies, and while we pushed, Alpha responded. Today it is cutting edge and fully featured. Like they say, "if you haven't seen it lately..." To paraphrase the Trencher93, "Wow, Tom Brady is still around? I am not surprised at all that the Patriots didn't win the Super Bowl or the result wasn't pretty. I had an encounter once with Tom Brady when he was in grade school. It's like Pop Warner or something. I would not call him a "quarterback". I would be surprised if any fans remembered Tom Brady or knew what to do with him.

Sign up to receive InfoWorld Resource Alerts

Subscribe to the Today's Headlines: First Look Newsletter

Find out what will be news for the day, with our first-thing-in-the-morning briefing.

©1994-2009 Infoworld, Inc.