Programmers are a commodity... right?(usingimho.wordpress.com) |
Programmers are a commodity... right?(usingimho.wordpress.com) |
When he started typing in the URL to the demo site, he was typing http:// into the yahoo search form. I said, "You should type it into the location bar."
The what? he said. Up there at the top I told him and pointed at it. Whoa.
"Well, you know, my friend is building this one for me and ... " This one was a default wordpress install that had no customization except the header and footer and nothing at all close to what his business needs, yet he had to run my site by his friend, who I can tell has no idea how to write code or create a database.
How can any of us here ever expect someone like that to comprehend the difference between someone who can put up a web page and someone who can build an enterprise system with customer interaction, inventory management, and any sort of security whatsoever?
They can't. Looking at a web page is like looking at the clothes someone is wearing and trying to figure out if they can do algebra. Yet that's how they do it. To 90% of people, maybe more, putting up a static web page or a word press site requires the same knowledge as understanding one-way hashes, caching, and parameterized queries.
And yes, I believe we should charge a lot more, but instead, we give away our software for free because it feels good. I love open source, I create open source, I use open source, yet I know that open source isn't going to feed me. It feeds some. It feeds the business guys who sell services on top of free open source systems. Those guys can't use a command-line, but they can pay programmers 10% of the deal, sometimes more. It feeds programmers who are lucky enough to work for a progressive employer who can afford to staff a team to support the project and defend it when it is stolen by a corporation and embedded in their set top boxes, but for those of us who want to create a path for ourselves, creating an open source project is like buying a lottery ticket. Sometimes it works, Zimbra did well, word press does well, MySQL did well, but those are but a tiny fraction of the open source projects out there. As long as we give away our work for free, why do we expect people to pay for it?
Outside the programming world, it is completely different. If a business person, a sales guy say, works for a technology company, they work on commission. Sell one product, take 20-50% of the sale price. If a programmer writes something that increases sales by 50% they get nothing additional. No percentage increase, hardly a raise at most places. Yet, code on.
Corporations simply could not operate without IT, yet it is considered a cost center, not a profit enabler, a cost cutter. Imagine a human without a brain!
Yet, code on. Why? Because we love it. Doesn't matter that sales guys also love to sell. CEO's also love to execute.
When I was a consultant, it angered me greatly that a sales man would win a client and while I was there, I would sell additional project after additional project, extending my time at the client and building more and more revenue for the company and I got a $5k raise the next year! The sales guy got the same commission on the additional work I sold! Why didn't I get the commission on the additional work? Why didn't someone say, "Awesome, you were at the client 5x longer than we expected and you doubled your expected billable hours for the year!"
Instead, the sales guy got a new flat screen TV.
It was sooo hard. There were months and months of this low frequency buzz in my gut, constantly thinking, "How am I going to make money? Am I going to make money? Why don't people understand what I'm building? Will I be able to survive on my own?" All the while my bank account was going down, down, down...
And from my own hands, I've created a 1 year runway! A whole year! That I built. That's plenty of time and we're growing and I look back and understand completely why almost everyone I know thought I was crazy. But now they are envious. "I wish I could do that. I wish I could quit my job. I have a mortgage." I had to move back to my childhood home in the middle of nowhere to make ends meet. I had to make real sacrifice. I was living on the beach when I quit. Now I'm 1500 miles from salt water, but I'm happy.
I do think sales is hard though. I don't get why they don't get it. I don't know how to speak their language. I don't know what motivates them. On the proposal yesterday, I didn't put a price, because the money doesn't really matter to me, what I want is to help him have a better site and provide a better experience for his customers, and bring technology home.
My state has had a severe brain drain. People like me don't stay here. Technology people who work for the corporations are actually consultants who live in the huge metro areas -- in other states! They fly in on monday and fly home on friday.
I work with companies all over the world, but people in my own town -- in my own state for the most part -- don't even understand what I'm doing and I wonder how or when I'll break through, but I'm going to keep trying. Next time I'll put the payment options on the form.
I've gotten it down to three options: Fixed fee, Hourly rate, or Revenue share. I have learned from past experience, that if you just put a price, people say no. If you give them options, they have something to think about. Some people want to take no risk. Some want to know what it'll cost up front and some just want the absolute best you can produce.
Every potential customer is different. I can't seem to find a strategy that always works and it's difficult for me to predict how people will react and how to figure out which kind of customer the person is. Are there subtle questions I can ask? Can I tell from looking at their business or customers how I can convince them to proceed. It's good technology. I know for almost sure that I can help them, but they are suspicious. They don't understand and don't want to be taken for a ride. How do I reassure them? How do I let them know I'm not one of those business guys who just wants to take their money?
I read lots of books and keep trying, but I don't know if it's easier to pick up sales. There is an aspect of gift to it I think. Persuasiveness. That "status" part of the theater class thread from the other day. Lots can be learned, but it takes a lot of practice and a lot of time and a lot of -- just numbers, really. Take your pride out of it. Be confident and tell everyone you know. Don't worry that you sound like you're tooting your own horn. That's what you have to do. If you don't tell anyone, no one will know.
I don't begrudge sales guys for what they can do. I envy it, but I also think it is overvalued. But why shouldn't it be? Sales guys are better able to sell their own value to their company than the programmers are able to sell their value. It's not the business guy's fault. It's our fault for settling for less than we are worth -- literally.
Eh, I can find other fun things to do. The sales guy makes a sale and takes a commission because you can't reuse the guy's sales effort. It's not like sales guy produces something after the sale that generates other sales.
Yes he collect valuable information, etc, but still every sale need effort by the sales guy.
Write a piece of code and... it lives for ever. So we should charge even MORE! Yes, IF we all agreed to, we could.
But OPEC could charge $10000 per barrel of oil, yet someone always breaks the deal and starts selling oil cheaper and the price stabilizes a lot lower.
So imagine all of us get together and form a world wide union and then some guy writes software for less then we agreed!
That's why sales guys take a percentage and software guys don't.
Well that's not entirely true, if you are partner in a software consulting company you share in the profits.
And a sales guy could quit being a sales guy and work a steady and easier job with no bonus but a simple pay-check. He could spend more time with his family.
I guess what I'm saying is, quit whining.
I think the problem is that the barrier to entry is so low in a lot of technical fields right now because demand is high. Companies are willing to hire a lot of mediocre programmers (or outsource to places of questionable quality) because they simply need something and the cost of failure is not catastrophic.
On the other hand, medicine and law have high barriers to entry, and you would be considered a fool to hire a doctor or lawyer who did not have the appropriate degrees, certifications, and licenses. This is not true with technology these days.
It's like the programming industry doesn't even have a bar to jump over.
Experts are not.
In any given field, probably 80% of the practitioners can do an adequate job and at least complete the tasks required by their position. In my experience, that number narrows to about 40% if the requirement is that the job is performed on time, on budget, and performed correctly the first time.
The question for the employer is simply whether the task at hand requires a “cog” or an expert. Most businesses require both.
However, this job ad was posted only outside their little division, because.. well.. uh.. academics are narrow-minded?
If they had bothered to post it about four buildings away from their department, it would have been seen by about a thousand CS students instead, which would have increased their chances of getting someone good with quite a lot.
It actually seems cool that they made an ad saying "no experience required". When else do you get that? And it makes perfect sense. Why would a student taking on the challenge be able to learn to program what they need?