Okay, I have a confession to make: I'm young. Turned 19 a month ago.
Being of the more entrepenurial type, in high school 3 or 4 years ago, a friend and I started a small web design firm to which we run to this day.
I have to admit, that I thought we were top shit. We'd look at sites done "professionally", and laugh, saying that we could've done a better job in our sleep. Being the more technically minded of the two of us, I delighted in pointing out technical flaws in our "competitors" sites. My friend would laugh at the obvious crappy HTML.
I still believe that today. Those sites were truly crap. People would pay web-design consultants hundreds of dollars an hour to be told stuff we thought was blindingly obvious. However, for some reason, we never made the big-time. We were relegated to doing $20/hour "kid" jobs for small business with no web-vision. Of course, we felt this grossly unfair.
One day, I get a mysterious email with a phone number asking if we did web programming. We ring the number - not expecting too much. It turns out that somehow an indirect reference from one of our existing small business clients was a certain government department who wanted a quote on some web work done.
We'd hit the big time, or so I thought. This was the absolute perfect opportunity for us to charge big bucks like the clueless consultants did. We went to their office and discussed their project. Keep in mind that I am approximately 16 years old at this stage - the "suits" in this department did something that threw me off completely.
They listened. They paid attention. We were the experts there. They took fucking notes.
This freaked me out. Perhaps we're not ready for the big time, I wonder. Eventually after further discussion of the project, it seemed entirely do-able, even though they required an NT solution, and I was a Perl coder. I just secretly resolved to learn a thing or two about ASP programming when working.
Fast forward three months. I dont know a fucking thing about ASP. I downloaded an evaluation copy of WebBase, a PHP/ASP-like scripting language with "idiot user" hooks to the database. That's when I realised that I didnt know a fucking thing about SQL - until now I had done all my programming in flat text files in Perl. Not a problem - read a book, learned the most basic of "SELECT" queries.
Armed with this, and example code from the WebBase manual, I eke out a "to the specs" system, ridden with bugs, but it worked (or so we thought). Relieved that we had beat the deadline, we go back to their office, set everything up, and prepared to present the site.
As soon as I try to do a simple lookup, the whole thing falls to bits. Shit. I spend 15 minutes in front of the assembled group just debugging the thing (turns out I had basically programmed in a SELECT without using any of the user input as what to select to. Choosing one record as an example whilst debugging made me overlook this boneheaded error). The bug is resolved. My partner looks relieved, and continues the presentation. I'm shaken, though, and I tell him in front of everybody, "shit, this code is full of bugs".
Everything stops. He looks at me as if I had punched him in the face, and says, "but it works now doesnt it?". I utter the fateful words "I wouldnt trust mission-critical data to this thing". The government department has a bit of a thing about mission-criticalness, being in the field that they are. I call off the presentation.
Our contact at the department is a nice guy, he looked after us. I suppose he gave us a lot of latitude because of our age (partner was 16 as well). He gave us a lesson that day - he told us, "never, ever, ever, argue in front of a client. It is plain unprofessional. If there is some emergency, have some sort of code phrase like 'gee, its a nice day today, isn't it?'".
We walk away tail between legs. We did eventually bugshoot the whole code and submit it to the client, but by then the actual department had broken up. Due to some loophole we got paid anyway.
We were young. We had new ideas. But we were arrogant, and overestimated our abilities. Due to this, we ended up letting the client down and looking extremely unprofessional.
What is the point of this? I need a breather - I'll continue this post in a reply, as I dont want Netscape to crash or anything. Sorry about this guys (and girls).
What is the helix?