I’ve had to sanitize this story a bit to protect the really spooky people in a really big and powerful company but I wanted to share this as I think it really sums up neatly why I love the opportunity rich world we are living in today.
I had the opportunity to sit with the CEO and CTO of a really large company in the US. Couple of hundred million in revenue. It was an event, I was at the table, etc, etc. We got to talking and I asked a fairly simple question, basically, do you guys worry about some little guy coming out of nowhere and eating your lunch because you have all this major investment in existing systems, people, pricing, etc, etc.
Imagine if you will the stereotype “fat cats” from Corporate America and you will have the attitude I got as they responded.
Now, son, we have tons invested, the best people, a lock on the market, a pile of customers and we just don’t waste time worrying about somebody that can’t out spend us or have all of our people or systems. As long as we just keep pressing on, we will be fine.
Keeping in mind the last time I coded something for general availability, there were toggle switches on the front panel, this will be even more meaningful.
I responded by saying, gee, seems to me a web service could be created fairly quickly with a database to do X and these functions to do Y. Ha, the CTO says, it would take years. Well, let’s test that theory, I said.
We move over to place with power for my laptop and crank it up.
First thing I do is fire up the Verizon card. Plenty of signal and plenty of bandwidth.
Next, point out that I can pull down Microsoft’s express developer tools for free. I further show that I can get 6 months free trial on the big stuff, like SQL Server. We then zip over to a hosting provider which offers a ton of bandwidth/storage for 100 bux or so a month. I then proceed to, as they say, code it up. I already had the Visual Studio stuff on my laptop. Within, call it 15 minutes, I had the basics up. I then did the ‘self host’ routine on my laptop to simulate what it would look , started putting in fake data, etc.
About this time, the CEO does what everybody does. He starts with can you do this, can you do that, etc, etc. I bounce in and out of dev mode, make a tweak here and there, presto.
Then the CTO starts in with an endless stream of “Yeah, but.” Yeah, but what about bandwidth? Easy, buy burst, pay for what you need. Yeah, but what about servers/hardware costs? Easy, rent the rack, rent more as you grow.
I then broke out excel and laid out the costs of what I had just done and what it would take to get something up in, call it, 90 days. It was not, as you can imagine, very expensive. In fact, using Microsoft software, there was really no cost for 180 days. And, if you wanted to just get a beta/test out, all you really needed was to pay for a hosting provider.
The reactions were right on cue. Guess who said “WTF are we paying for all this stuff in the company?” “How come it takes six months just to get a change in screen layouts and another 2 months to line up the application to get ready for distribution to our customers” Right. And Guess who said “Well, errr, uhhh, it’s really not that easy to explain.” or said “I can get some people to look into this”
Personally, if I were running a company with established products, established market share, sales guys making good commissions, IT departments with volumes of policies and processes, I would immediately do the following:
1. Find the nearest University Computer Science Professor.
2. Have him/her round up some bright, promising students.
3. Bring students into your company and have your marketing person spend a day explaining what your company does, sells, offers, etc.
4. Offer the student that codes up/presents the best new way to do whatever you are doing a full scholarship and a job.
I think you get my point.
The split second you get any traction, any success at all? Look over shoulder, they’re coming. You are already ‘the old way to do it.’
You don't need to go with Microsoft's 'free' tools that run on an expensive OS, or their 'free for the first six months' database. Take a look at what is happening in the Open Source world, where Postgres is competing with Oracle, and the development speed of tools like Ruby on Rails puts Visual Studio.Net to shame. Check out the video at www.rubyonrails.org if you don't believe me.
Posted by: Good Grief! | July 19, 2006 at 07:37
I can definitely beat the productivity of MS tools and the cost with open source solutions, but I love your point. It doesn't have to be heavyweight and expensive. A number of smart people have begun defying the conventional wisdom using unconventional tools and kicking the butts of the traditionalists.
Posted by: Todd Blanchard | July 20, 2006 at 21:55
Didn't these folks study any economics?
Why does it take so long to get a big-corporate IT person to do anything useful? Because big-corporate IT people have horrible incentives.
They don't get a share of the bottom line. They don't get credit when things go right, and if they have a fantastic idea for a way to make things better, their incentive is to sit on it because otherwise it'll just be stolen by their employer. But whenever they make a mistake, there's a long line of people outside the door screaming for their turn to beat up on the IT guy.
Any human being capable of remaining motivated to do good work in spite of that kind of pressure has long since left the corporate world and started their own company (where they promptly discovered that the pressure, while even greater, is much more tolerable, since it's focused behind motivating people to do things that good IT folks actually CAN do). So what's left are the folks who burned out years ago, the folks who are burning out today, and the young college grads with too many debt collectors on their backs to do something like start their own company...they'll take a few years to burn out, but unless they pay off their loans and quit, they'll get there eventually...and their effective productivity is already at burnout levels simply because of working with burnouts and being managed by people accustomed to managing burnouts.
It may take the (sometimes hard-to-find) Big Idea in order to get VC funding, but all it takes to have a massively better life than one could possibly obtain in a big-corporate IT department is a willingness to believe in oneself and do the work. So it's really no wonder at all that the folks left behind in corporate IT aren't able to get work done at anything like a reasonable pace.
Posted by: Matt | July 21, 2006 at 03:06
I experienced the internal Butt Pucker this week. We have a couple of sharp developer-people in our IT department. I have been going on about DNN (Dot Net Nuke) for a few years, I clapped my hands after they showed some Sites built with DNN at the cost of a couple of hundred dollars VS thousands spent on the corporate version. I heard the Butt puckering all around the room. It was an extreme pleasure. Reading your post reminded me to keep fighting the good fight, follow the path of logic and sanity.
Posted by: Johannes | July 21, 2006 at 03:49
Two words: red tape.
Especially in a large company with millions in revenue. Especially if they are publicly traded or in the finance industry. I'm sure many of the developers on staff at this company could have and would have loved to have done the same thing that you were able to do, but politics and procedures -- some regulatory and some not -- get in the way.
Hopefully enough examples like this will help eliminate some of the unnecessary red tape.
Posted by: Scott Isaacs | July 21, 2006 at 05:29
>>Especially if they are publicly traded or in the finance industry
Add Health Industry to that and I'll give you 2 more words:
sox and hipaa
Posted by: Vic Berggren | July 21, 2006 at 06:29
I notice the VP of Sales was not there and wasn't involved in the conversation. Nor was the VP of Marketing. Anybody can create a demo, but, and you spent a whole post on this (http://ricksegal.typepad.com/pmv/2006/07/developer_manag.html), it takes a lot of effort to make people feel comfortable enough to buy something.
They certainly won't buy demoware (unless you're Google or Microsoft), but even if you give it spit and polish, they still won't buy it because, well, who are you exactly? They know who the big company is by virtue of the big company's marketing they read and the big company's sales calls they receive.
They only way the big company loses that edge, it sounds like, is if their VPs of Sales and Marketing start attending functions with their CEOs and CTOs instead of out in the field with their customers.
Posted by: John Milan | July 21, 2006 at 11:32
Great story. The sad part of it though is that is isn't about the technology it's about the attitude.
Posted by: Stephen | July 26, 2006 at 10:31
I wouldn't be so quick to congratulate yourself. Whilst it's true that building a webservice is very quick in visual studio lets remember that it's just a way to provide an interface to underlying functionality. It's the meat of the system that counts.
I'm sure we can all build a web-page that looks like google but it's not quite the same, is it.
Posted by: Bryan MacErlean | July 31, 2006 at 10:26
I wouldn't be so quick to congratulate yourself. Whilst it's true that building a webservice is very quick in visual studio lets remember that it's just a way to provide an interface to underlying functionality. It's the meat of the system that counts.
I'm sure we can all build a web-page that looks like google but it's not quite the same, is it.
Posted by: Bryan MacErlean | July 31, 2006 at 10:26
Why does it take 6 months for a screen change verse 2 min for one?
Lets see - one person making the decision with the power to implement it without any of these consequences:
1. retraining users.
2. changing the manual and documentation
3. updating sales and marketing material
4. updating the web page
5. bringing all of the stakeholders together to ensure the change is approved by all interested parties.
6. Quality assurance testing
7. testing to make sure it doesn't break something else
8. system downtime during the deployment of the change
And those are if you're in an unregulated company, imagine the additional steps, procedures and requirements (documenting it all too) if you're in a regulated industry.
The bigger the company, the bigger the user base, the longer and harder even simple changes take.
Although, I'd admit, I'd love to do the same thing to a major company just for the reaction!
Posted by: Paul Davis | July 31, 2006 at 12:01
Many times have I demo'd certain new technologies (like web services) to CTO's and heads of IT and watched their mouths drop open. It's enormously frustrating to work for people who are not up to date with the latest technologies OR who are to stubborn to learn anything new.
Being able to sell a new technology to management is a very valuable skill as a programmer.
Posted by: jean | August 01, 2006 at 07:07
This little rant, while cute, is clearly written by someone that has never been part of a development team for even a moderately complex product.
Are you *really* so deluded that you think that slapping together a web-interface on a simple SQL database in some constitutes a "product"?
There is so much more that a company needs. I'm willing to bet, once you get a non-trivial user base, suddenly things like: concurrency, replication, internationalization, clustering, high-availability, etc, etc. will start to slow down the development a bit.
As the old saying goes: for every complicated problem exist a solution which is simple, clear, and wrong.
Posted by: Bryan S | August 14, 2006 at 13:54
I, too, appreciate the spirit of this post but without any further details it's difficult to determine its applicability and scope.
The difficulty of writing a standalone app is orders of magnitude lower than writing one which must rely on ugly, dirty legacy data and poorly designed legacy databases and interface with ugly, dirty and poorly maintained legacy applications.
I develop software for a financial analytics group at a large bank. It turns out that the easy part is the financial analytics. Dealing with dirty data, poorly factored legacy databses, data vendors whose formats are a moving target, and communications with upstream and downstream systems are what we spend our days (and nights) working on, not the interest rate models and price sensitivity measures.
When one factors in the legal and compliance red tape involved with a bank and the politics of ever competing fiefdoms, sometimes I wonder how anything gets accomplished.
Posted by: Jim | August 15, 2006 at 10:46