What Business Can Learn from Open Source
dtolton writes "Paul Graham has written a fantastic article on what businesses can learn from Open Source. He covers why Amateurs can outperform Professionals, why the home is a better work environment than the office, and how bottom up ideas are better than top down. Finally he ties these lessons into the business relationship." Derived from a talk at Oscon 2005. From the article: "...the biggest thing business has to learn from open source is not about Linux or Firefox, but about the forces that produced them. Ultimately these will affect a lot more than what software you use. We may be able to get a fix on these underlying forces by triangulating from open source and blogging. As you've probably noticed, they have a lot in common."
The problem with the "I can be more productive at home" argument is that it blurs still further the distinction between work and personal life. IT people are already subject to odd-hours, psuedo or real on-call schedules, VPN access "just to check your email", etc.
People need to stop this trend - its not healthy. When I walk out the door of my job, I'm done. They pay me for 40 hours a week, and they get it. No more. If I work an extra 4 hours a week at home, I just gave myself a 10% pay cut.
I want to delete my account but Slashdot doesn't allow it.
Or Open Source similar to blogging? I just saw that and my vision went blurry... Blogs are just web pages that people update everyday or so... WTF!? BLOG!? I hate that word. It's just stupid.
My humor is probably your flamebait
What business can learn from open source?
1.Make Andrew Tanenbaum angry
2.Put GNU in front of your company name
3.Grow beard
4.?????
5.Profit!
One thing that businesses can learn from open source is that properly motivated employees can produce great things. Here we have a group of technical professionals working for free to produce great software. Employers on the other hand, have a difficult time motivating people who they pay. Motivation == productivity.
Ultimately these will affect a lot more than what software you use.
From my own observations, this part is very true but, not in the way you think. Rather than ushering in a new revenue stream, open source destroys revenue streams. So far, there are only two companies that will even claim to have made a profit from open source. They are IBM, who may have reason to fudge the numbers, and Red Hat, who claims to have scraped some skin from its teeth. All the others are either losing money or folding.
Now, before you go off on me about the "evils of corporate profit", let me remind you that without corporate profit, you don't eat or have a roof over your head or any of the other "God given rights that you enjoy. Open source is shaking up the business world alright but, it looks like it is going to make a lot of people homeless.
This is also true as some amateurs are more known then sipffy pro's with really big degrees.
Go to the w3.org and put Slashdot.org through the validator.
Yes, the best blogs spreat, the worse ones get forgotten. But the worst ones can cost you a breakfast.
Anagram("United States of America") == "Dine out, taste a Mac, fries"
Once you've got a job and are getting paid, why spend your hours working really hard when you can take it easy and do the same task 4 times slower ? It's not as if slower productivity is a sackable offence.
This group of technical professionals are doing a hobby they enjoy. That's it. It really doesn't have anything to do with work. Would you like to explain how somebody who works in, say, insurance could be more inspired by his employer, given that his hobby is model trains? What they do on their own time is completely unrelated to work.
I don't respond to AC's.
Yes, the best blogs spreat, the worse ones get forgotten. But the worst ones can cost you a breakfast. Thanks. I just HAD to look didn't I? You're right. That one DID cost me a breakfast. And a keyboard, too.
My blog
has he ever practiced what he's preached? Granted, I don't have time to read that whole 10 page article. But this one line struck me:
People have always been willing to do great work for free, but before the Web it was harder to reach an audience or collaborate on projects.
That's true for pet project, but not as a full time job, Paul. Eventually, you have to eat.
The Cobra Kai: Strike First. Strike Hard. No Mercy.
There'sa lot of people in the open source community who work with motivation and fun. That's the key in my opinion.
If the great industries care about his employees, they should be a lot more productive
Codexcast, the first Spanish podcast in the world made in High-Resolution parchment. (I think so
As the author of TFA states, changes to our cultural ideas of "how things get done" are indeed glacial. But that's no reason that business in the 21st Century can't take a couple small steps in the right direction.
I have been lucky enough in the past to work for a forward-thinking company that understood that allowing their employees to follow the threads of their own ideas could be enormously profitable overall to the company. Job descriptions are far too restrictive, IMHO, and should only be used as base guidelines. This is not to say that management should push employees outside of the job description and expect more, but that they should allow and encourage employees to explore new methods and ideas.
I've written quite a bit of software over the years for employers with this "Go ahead, give it a try" mindset -- software that was completely off the track of what I was actually "hired to do." Yes, I did my job, but by allowing my job to morph as my interests drove it, the company ultimately ended up with new products and services to offer that they hadn't envisaged. I was paid well for the work that I'd prefer to be doing, and everyone was happy on both sides of the equation.
So, managers of the world, loosen the grip on the reins a bit. Let a little entropy into the system and see what gets produced...
"home is a better work environment than the office." Ummm... NO! its more like, "home is a better work environment to search slashdot and cheat your buisness out of money than the office."
But after yesturdays post NRLB Redefines 'Your Own Time' I guess your boss will just set up a camera in your home office.
You're assuming that you're talking to people who all work for mega-corporations with thousands of employees that can afford to let their emplyoees tinker on company time. I think that's a bit unrealistic. I know that when I hire somebody, I have a job for them to do. I simply cannot afford to have them playing around, hoping to come up with some great idea that's unrelated to my business.
I don't respond to AC's.
why Amateurs can outperform Professionals
I think the article and the facts on the ground would justify rephrasing this as "why professional programmers get better results on their free time, without pointyhairs, committees, and marketing droids in their way".
..who hates their job.
I enjoy coding, and the stuff I code at work is very interesting and challenging. When I was unemployed for 6 months 2 years ago, guess what I did with my free time - code!
You think professional golfers just quit at the end of the tournament and say tripe like "if I golf 10 hours in my free time, I just got a 10% paycut!"
Have fun hating your job, working the bare minimum, and never getting ahead. Meanwhile I will keep enjoying my job, getting ahead, and when I am 45 I will be sipping on a margarita in the bahamas while you are still working 40 hours a week to make rent.
This guy is really insulting. He says that failing your own business "won't hurt as much." as having a real job? To say that investing every dime you own in a business, and spending every day for several years (most businesses fold in the 1-3 year range), only to see it fail "won't hurt as much" as working as a job that may not be 100% rewarding is pure bullshit.
Actually, I'd say it's this cavalier attitude about business that causes many startups to fail.
It sounds like he's suggesting that developers work at home, develop open source, and pay their rent with what? fairy dust? good will?
Another thing that keeps people away from starting startups is the risk. Someone with kids and a mortgage should think twice before doing it. But most young hackers have neither.
And as the example of open source and blogging suggests, you'll enjoy it more, even if you fail. You'll be working on your own thing, instead of going to some office and doing what you're told. There may be more pain in your own company, but it won't hurt as much.
I don't respond to AC's.
Yeah, but the best open source products have people involved who are paid for their time in working on it.
Amateurs are great, and amateur drive is an amazing thing -- it's enabled me to produce software of a quality and sophistication that a "professional operation" couldn't match for anywhere near the price.
But the "great advantage" of amateurs -- they work better at projects they love, without bosses -- is also their great shortcoming. As a rule, amateurs don't do the crap work. Most amateurs, being their own bosses, won't do, or do inadequately the pain-in-the-ass parts of the job. Check grammar on a weblog? Make the GUI useful and intuitive to an average user? Hang around and get the damn thing finished? Ensure that your startup has a legally sound foundation?
In short, discipline is something amateurs as a group lack, and that's something some of those fancy degrees teach : to achieve something, you can't just do the stuff you like.
As far as meetings go, well sure, meetings are to be abhorred by any sensible person. That's also why in Universities (where you get your fancy degrees) we teach people to break up in arbitrary small groups and work on a project. The smart ones figure out pretty quick that small group work sucks and determine to avoid such situations, or make them as functional as possible.
And well, yeah, it sucks being a wage slave, but most jobs are just that: jobs, and for lazy-ass amateurs like me to live our lives, we need an infrastructure of people who work for a living.
... I can tell you what the problem is with "working at home" from my perspective - I have no idea whether you are working that entire time or not. What if you tell me that a particular task takes 80 hours, but in reality it takes you only 20? I have no way of knowing that I'm wasting 60 hours!
If I have you in a cubicle, I can look over your shoulder and make certain that you are working, I can monitor your browsing, check for personal emails, etc - in other words, I can track how you're spending your time and if you're ripping me off I'll know it.
I've found that this is a particularly bad problem when it comes to software development. Most American developers lack the maturity and responsibility to be allowed to "work from home".
I think the important part of OSS is that teams are built on individuals' technical ability rather than race, creed, colour or indeed paymaster.
rd
Something else business can learn from is unbiased research, which would have been nice in the case of this article, which is basically a collection of this person's gut feelings on things.
:P
I almost get a feeling of the old saying "Happy workers are good workers" which is definately not the case for all jobs (or even most jobs at this point).
I think instead of amateurs, the focus would be more on hobbyists (slightly different). A professional IT person may know nothing more than absolutely necessary and get the job done, but the innovation, free thinking, and creativity comes from people for whom IT is also a hobby. They can be professional, but often they are not. That hobbyist aspect is what makes a real difference IMO. If you can get a professional/hobbyist then you have someone that will at least have their eyes open for new and innovative things, even if they aren't on the clock and even if they don't put in the crazy amount of overtime.
And then when there are economic problems, the hobbyist gets fired because management doesn't understand IT anyway
1 (short ton / firkin) = 89.1432354 slugs / keg
This article isn't about what business can learn from Open Source, it's about how blogging and Open Source are similar, and how cool the author things they are.
I just re-read the article, and I've realized that this is one of the venture gapital guys that live in the happy-happy land where an idea to sell something online instantly qualifies you for a $10mil gift from one of these guys. Does anybody know how to get to this never-never land of slick marketing, lots of money, and no products? I've been working like a dog to scrape by with my real business for the past 3 years, and I'd like to cash in on some of this venture capital crap.
I don't respond to AC's.
It is not that open source software can outperform professionally-written software. It is most often the case that a piece of nice commercial software is written and the open source community tries to replicate it for free. The reason that they can come up with so many quality, open source alternatives is because they have no timeline. Nobody bats an eye that it took the open source community 5 years to come up with a competitor to IE6. Nobody cares about that (it's free, after all, quit complaining!).
Rather, it is the case that code that is well written, only needs to be written once. Take the gecko rendering engine, for instance. How many open source browsers use it? And once a quality piece of core software is written, it doesn't need to be written again! So, it may take the open source community years to come up with a solution, but once it's there, it isn't going anywhere.
You can see this happening with kde and gnome, too. They aren't quite as user-friendly or as stable as their commercial counterparts, but once they get there, unless the desktop paradigm changes, then the OSS community will have their free desktop alternative.
The first reason is that many, many businesses are focused on building what the customers ask for. Clue number one: customers know fuck all about building software. If they were remotely clued in, they wouldn't need to ask somebody else to build it, would they?
So customers ask for stupid things. That's what makes them customers. The problem arises when the business doesn't care that it's stupid, but builds it for them anyway. Now you have a suboptimal solution that cost lots of money.
Compare this with the amateurs. They are building it for themselves, so they are qualified on both the problem domain and the software construction. They aren't going to build something stupid because they are going to be the ones using it.
Then there's the morale. The professionals are fully aware that what they are building is stupid. It's demoralising. They offer sensible solutions instead, but get knocked back with "it's not what the customer asked for". They begin to understand that their job isn't to build good software, it's to spend their time programming, and if the result is somewhat functional when they reach the deadline, that's just a bonus. It's not surprising that they don't really give a shit whether the code is up to scratch or not, because the whole exercise is pointless beyond collecting a paycheck.
Again, compare with the amateurs. They get satisfaction not only from using the software they wrote (being both users and developers simultaneously), but they get the satisfaction from finding that others appreciate it too. They know they've solved a problem well, and they take pride in their work. People who take pride in their work generally put in more effort.
If there's anything that businesses can learn from this, it's that they need to be able to say no to customers. To put off deadlines. To say "You know what? This is solving the wrong problem!" and go back to the drawing board with the customers to figure out a better approach. It's only when the professional programmers see that they are actually doing something productive that they'll feel motivated enough to take pride in their work, and feel like they are in an environment where they can contribute actual solutions instead of banging their head against a brick wall.
His opinion, while interesting, is incredibly naive. It's great that there was recently a posting about the spread between "good" programmers and "average" programmers. Much of what the author talks about represents an incredibly small portion of the overall developer community. While there may be some people that would flourish being given freedom to work from home on a project that they found interesting, the fact is, those types of projects are fairly uncommon (the real challenge is to take the "mundane" project and make it interesting) as is the person who would actually benefit from this. Let's face it, the majority of developers would not see a similar leap in productivity. They might enjoy their lives more, but it certainly would not relate to higher productivity.
The author mentions that M$ can't motivate its IE programming staff to come out with a "better" browser than FireFox. Well, discounting things like dealing with the codebase you have inherited, lets face it, M$ operates by putting their A Team resources where they perceive they are needed the most. Right now, they kick butt in the browser wars (even against "better" competition), so there isn't a perceived need to "have to come out with something significantly better". OTOH, the FireFox team does nothing but produce a browser (kinda), so of course they HAVE to be better. Would a new browser that was only "just as good", or even "not quite as good" been acceptable for the FF team, obviously not. So to assume that the quality of software coming from both sides has more to do with amateur developers vs non motivated professional developers is simply not looking at the bigger picture.
I think a large fraction of tech companies (at least here in the UK) run flexitime these days, generally something like 37.5 hours a week, you must be in the office between 11:00am and 3:00pm. And even large, traditional companies like Shell allow IT employees at least one day a week working from home.
Most businesses suppress the creativity of their employees. Part of this is through poor management practices, part of it is through poor strategic decisions that demoralize people, part of it is through decisions about the office environment, and part of it is legislation. I'm working on a "manifesto" about this: http://www.agileaxioms.com - I'd love people to take a look and tell me what you think. There's a comments link.
Helping with organizational effectiveness is our job.
When people are paid for units of work rather than hours they will try to do anything to get themselves more productive. And number one step is lowering the quality as much as they can. I have seen this happen in real life.
The one thing that makes FOSS better is in my opinion the fact that in most cases you are working on something you are going to use yourself. You care about quality, maintenance and you will not try to cheat.
They have fewer admin people fewer accountants, fewer IT people. They benefit from economies of scale and have lower overall overhead. Lots of small companies means higher employment rather than lower.
Deleted
Slides and Video.
by triangulating from open source and blogging. As you've probably noticed, they have a lot in common This is the most irritating comment I've read in a long time. Blogging has nothing in common with open source, except for it is one of the things that are now considered cool even by mainstream media. Apart from being currently "in", they have nothing in common.
"Two things inspire me to awe -- the starry heavens above and the moral universe within." - Albert Einstein
I've worked an a few open source projects. The common denominator among those projects is that people WANT to work on them. It's fun, it's usually non-committal, there are no "drop dead" timelines, etc. >>why the home is a better work environment than >>the office >>and how bottom up ideas are better than top down This just isn't how the "real world" works. Over half the people in the US aren't particularly happy to go to work every day. Projects ARE handed down and down "top down" because that's how customers specify them. >>or Firefox, but about the forces that produced Yeah, ok. Groups of people working for free on fun projects. So you think industry is going to learn that we should all work for free? Because they certainly can't make work fun. Basically, this is the Open Source World's version of coporate double speak.
Distinction between work and personal life is a very fresh concept, connected with capitalism and work for hire. As someone already mentioned it does not exist if you run a restaurant. It doesn't exist if you are a farmer. Hell, it probably doesn't exist if you run any kind of private small-scale businness.
It didn't exist in pre-capitalism era: families worked together, dined together. Even if you were hired, quite often your brother/sister worked at the same place. Women were taking their babies to work or were gathering together to spin wool or linen, to sew and so on.
So it seems that this distinction was artificial and caused by a fact that if some people have to be in the same physical location to work and they have to commute - it is more efficient to separate their work time and leisure time. But with introduction of modern communication methods more and more jobs take different trend: work at home, feel comfortable, manage your time yourself, your employer is only interested in results, not means. And this means switch from time based work to task based work - which in fact is a return to natural state.
Wouldn't you like to spend your day at home, with your family, just retreating to your home office if you need to focus a bit more on work, have a lunch at home with your wife and kids than to commute everyday, order a pizza for lunch, and then spend an hour and a half driving back home? Do you like explaining to your boss that you have to take a day-off because of some reconstruction in your house or something?
With a laptop I can do my work while laying on my sofa and listening to my favourite music on my home stereo - and that is when I am really productive.
Cheers
Raf
How NOT to write code
"He covers why Amateurs can outperform Professionals"
This is total bullshit.
Perhaps he covers why motivated people outperform unmotivated people. Just because you don't get paid for you craft, does not mean you are not a professional.
In his latest essay, he tries to explain why a Professional will never be as productive as an Amateur because Professionals don't do what they like. Excuse me? So you're saying amateur athletes players are better than people in the NBA/NHL/MLB/NFL because they'll play for free? That's absolutely ridiculous. Professional athletes are more motivated than anyone else. What about people who actually applied for jobs doing work they loved, like me. Not only do I have a job I love, I get paid to do it.
I'm certain there are people who hate their jobs, and who are very unproductive. But has Paul ever considered the fact that maybe they were unmotivated to begin with, and that the reason they took that job was because they were too unmotivated to get anything else?
A previous posted stated that motivation is what drives productivity. I couldn't agree more. Money has absolutely nothing to do with productivity, it's all about motivation.
Phemur
The professionals are fully aware that what they are building is stupid. It's demoralising. They offer sensible solutions instead, but get knocked back with "it's not what the customer asked for". They begin to understand that their job isn't to build good software, it's to spend their time programming, and if the result is somewhat functional when they reach the deadline, that's just a bonus. It's not surprising that they don't really give a shit whether the code is up to scratch or not, because the whole exercise is pointless beyond collecting a paycheck.
What a complete crock. You are completely mixing requirements with design with implementation. Customers provide requirements, which developers then create a design and eventually an implementation. Customers often times have no clue as to what they need (and therefore the requirements that the design and implementation flow from are flawed/wrong) and this can caues issues. However, this has less of an effect on whether or not the code is "up to scratch". Crap code is crap code. You can have the most complete and correct requirements and an intelligent customer, but if you design and code it with crap developers, you'll get crap. Now gui code is probably the closest you'll get to somewhat agreeing with the parent poster. However, if you design your apps well (you know there is a reason why three tiered design is popular), you can help mitigate the impact of flakey customers. Completely isolate, no, obviously not. But to make such a blanket statement as yours is just a lame cop-out for all the crap developers creating crap code.
I'd like to see the author's definition of productivity. If it's "units of working software per hour worked", then I dispute that home environments are more productive. If it's "units of working software per elapsed week", then home may be more productive becuase of all the extra hours worked.
Customers often times have no clue as to what they need (and therefore the requirements that the design and implementation flow from are flawed/wrong) and this can caues issues. However, this has less of an effect on whether or not the code is "up to scratch".
Perhaps you misunderstand me. I'm not saying that bad requirements directly cause bad code. I'm saying that programmers who know they are building the wrong thing are going to find it difficult to care enough to create high-quality code.
The author seems to portray that startups have a high chance of attaining google-like fate. This is a bit ambitious. Startup requires money and financial backing and most graduate students have neither. If the startup fails, you may not feel that bad;atleast you had fun working on that project. Too bad your credit-card company will not feel the same way!.Also, how many startups have actually survived more than a couple of years?
I believe amateurs are creators, but professionals drive the industry. Being on time, following rules and other "plague" of professional life is necessary for sane life. Imagine if your plumber refused to come and fix the problem because he/she "don't feel like it"!. However, I do agree that office environment degrade productivity. I am a full-time employee at a large corporation. I have seen people taking up days doing work that I could have finished in a few hours. In my opinion, traditional offices are a workplace for tired and burnt-out, or for those who are inline to achieve this status. But, the cold, hard reality is that you need money to live, and people will rarely pay you to have fun!
These are one of the reasons open-source has thrived. It lets you have the best of both worlds.
...everyone knows that if the idea didn't come from a guy in marketing that has no idea what he's talking about, it has absolutely no value to customers.
Shesh...bottom up ideas...ya...right...
If you work in a vaccum, working from home is great, but when you are trying to produce a coherent product, and market it with one message, you need to be in an office.
I do a lot of work from home and find that I goof off more than when I used to work in an office. I may work when want and get things done on time, buttoo frequently, I just procrstinate until I can't put things off any more. I think that, socially speaking, being an office is a good thing.
But it isn't jus the social aspect of being in an office that is important. I work in an organization that has consultants spread across the counrtry and we all have our own tools for accomplishing the same tasks. When I take on a development project, I attack much differently than my other co workers, sometimes to my detriment. If we were all in the same office, the differences in how we accomplish some tasks would be mitigated as we all learned from one another what works and what doesn't.
I would be curious to see research on how well a new company does when its people all work from home versus companies that open an office. I think you would find that the centralized office based companies are going to be more successful and consistent in their products.
This has been commented on briefly already, but due to my pathological hatred of 'blogs' [shudder], I must comment on this comment in excessive detail:
We may be able to get a fix on these underlying forces by triangulating from open source and blogging. As you've probably noticed, they have a lot in common.
Open-Source: A software project in which the source code is freely available. Talented people with an interest contribute. Less talented/interested people test. Less talented/interested people again, use.
Blogging [shudder]: People who want to be known online, but are too stupid/lazy to even maintain a home page, and so have to use online blogging services to handle the oh-so-complicated HTML for them, while they (attempt to) regale the world with their incredibly intellectual opinions.
People in open-source and people who you-know-what are the exact opposites of each other. I know this is stating the obvious, but when you-know-whatting is mentioned I am compelled to respond. Thank you for your time.
I don't think he gave enough emphasis on the "minor" downfall of the opensource community. Nobody wants to do the grunt work. Granted, there are a select few that will attack every aspect of a project with a frighteningly overzealous fervor, but the majority will stick to "the fun stuff".
The other aspect that was not covered AT ALL in the article (but has been touched in here) is the true definition of top down vs. bottom down development. This was an easy an unforgivably overlooked analysis.
Who is at the bottom? The developer, the person actually writing the 126,032 lines of code to get the job done. Now for the important question, who's at the top? The customer. You know, the one with the money?
It's a beautiful thing that there are many opensource solutions that can be leveraged in high-power corporate environments for better ROI. The fact still remains that said product is STILL being leveraged a wage slave desk jockey.
At some point, someone has to come to work. With a boss. For a customer. And yes, they will probably need face time.
It might also proove to many exactly why they have no readership on their blog, because the reverse here is true. In my opinion, 90% of blogs are crap created by people who just don't work at it. It's not surprising given what most people consider "working at it" anyway. And why should they know any better when what they do for 40 hours a week is their only example of working to draw upon. Perhaps Open source is an important model not only for a business, but also those employed in a business - "They [open source] show us what real work looks like".
It's a good lesson not only for business, but also staff.
Very nice jimmy dear now go back to your cave^H^H^H^Hbasement and I'll bring you some milk & cookies.
If there's anything business tends to learn, for a combination of reasons which do include constant onslaught from those who are reflexively anti-business (attack and your enemy defends, it is easier to influence friends than defeat enemies), it is to do things as cheaply as possible.
Coders have as much right as anyone else to be paid for their work. Oh, but here comes Free Open Source Software. Legions of geeks willing to write all sorts of code you find useful and you can use it in your business. They want you to. Who needs to pay coders' relatively large salaries now? Now you have a cudgel in the fight against giving the coders the pay they want and feel they deserve. Why pay $60K/year to someone writing in-house apps when you can pay some geek who couldn't maintain a job at Dairy Queen but who has really good Linux skills half that?
THAT is what business learns from FOSS. And all OSS is FOSS in the minds of the majority of the OSS using and writing world. It certainly is in business. A way just needs to be found to insure that is is FOSS.
The socialistic and chintzy anti-corporate "free, free, free" brigades and the corporate "closed source if we can help it, open source if we pay nothing" people need to call a truce and establish a way that coding can be open to future learning from it without denying fair IP to anyone or making it hard to earn money from your labors or for those who are not in OSS. Corporations will always make money. If it is not handled right, then they will be the only ones making money and those doing the programming will make little to none. All because of blind fanaticism, inability to see the forest for the trees, and unwillingness to do what is needed in the way of compromise and different approaches to the conflict.
Not for nothing my day job isn't programming or supporting same anymore.
If my grammar and spelling are off, I am [distracted/tired/careless] (take your pick)
sir i do not feel liek doing the goatse dance it is raw
I've finally found it!!
And yes, I know this is a semi-humorous post that makes reference to the slashdot mod system.
I need to preface this comment by saying I work for neither a large corporation nor a small business, nor do I write code... hopefully this won't invalidate my response for either having an ulterior motive or being uninformed.
That said, I find Paul Graham's first point, that amateurs do better work than professionals, to be amazingly poorly defended. (This isn't to say that I disagree with the point, just with Graham's argument.) He digs his own grave by bringing up the "average pro vs. average amateur" discussion in paragraphs 14-17. Walker's argument seems to be that companies, by their nature, turn lower limits (e.g. An article can't be any WORSE than "standard x") into upper limits (e.g. An article needn't be any BETTER than "standard x"), whereas, because amateurs aren't held to any such standards, the best of them are free to exceed "standard x" in writing or what-have-you.
That's all fine and good for the best of them, but what about everyone else? One of the benefits of the business model is that it lets average writers (continuing with the example of writing vs. blogging) still productively contribute to the newspaper. Furthermore, it has an investment in training these average writers to be better writers, and it puts them in close contact with better writers. It's pleasant to imagine that you're one of the best and brightest writers (or programmers, or, again, "job-x"ers) in the world, and maybe more slashdot readers are above average than the general population (although I realize as I type this that by definition the general population clusters around the average mark) but what if you're wrong? If you're wrong, which is to say, if you're average, and you go into business, you can still get a paycheck. If you're average, and you put your faith in Graham's argument and try and start a business, you'll be quickly run off the road by the best and brightest.
We see the best amateur software projects, but, as Graham mentions in his discussion of bar-room commentators, we rarely see mediocre amateur software projects, because they're worse than both the brilliant amateur and the reliably-middling professional jobs. As an example of this, had Graham's piece, a thoroughly mediocre amateur piece of writing, been written by a talented amateur, it wouldn't have these horrific logical gaps, and had it been produced by a reliably-mediocre organization like the New York Times, the 25-year-old copy-editors Graham blames for mangling his work would have never let a word like "ones's" (at the end of the paragraph beginning "The big advantage of investment...") get published.
The description reads more like a persuasive text than an informative one. Might as well throw it on the heap of other soapbox author open source books.
Be sure to remember the Programmers Prayer
Vote this guy for president!!! u rock man.
I actually get more thinking done on the subway during the commute. If I could dispense with the ten hours per week plus the 40 hour wasted there,I'd actully be much further ahead.
Meanwhile, I tried to telecommute for a week while telling my boss that I had pneumonia. I got more done in that week in my underwear than in the rest of the month. He still insisted that I haul my carcass in thought and my productivity went up in smoke.
MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
Fact: Most programmers don't work for commodity software companies.
Fact: Opensource only causes revenue losses for commodity software companies.
If you make niche software (to small a market for a good opensource alternative), or customise software for your company, then you have nothing to fear from opensource. In fact you will probably end up making more money as your company doesn't need to spend thousands of dollars paying for proprietary software (most of which ends up paying executives and marketers), and can put more dollars into customising opensource apps.
Not to mention how much more efficient you can be when you can fix bugs and add features instead of waiting months for the vendor to hopefully do it for you. Or that you can hire a multitude of companies to provide support and do this work for you, when you are stuck with the one vendor with proprietary software.
Opensource is taking away the revenue stream of charging for common software. But is adding new competitive ones for modification and support of software.
========
CINC, 4th Penguin Legion
The author must not have a wife or kids.
So we can be just like Germany & France with 1-2% growth rate in their economy over the last decade. And to fix the problem the government will need lots more beaurocrats to supervise the increased amount of more liberal labor laws, which "Benefit the Workers".
What they don't say, is that it doesn't benefit the workers who are out of work, OR the vast supermajority of the people in the country who are NOT beaurocrats or union members or union leaders.
Yeah, that is really what benefits me, my children and my grandchildren and my community.
I've worked at home much of my life, started & sold many small businesses doing innovative products (many patented), and it is the innovations that change a product forever that are the hardest, and rarely come from sitting at a regulation desk for regulation 40 hours/week.
At the point you make the breakthrough idea, it is only the start of a long creative process. New ideas often take thousands of hours to optimize, prove out & implement once conceived. I couldn't care less about where someone does the work, but it damn well better be the highest quality design when I do it or another party.
A lot of people seem to be getting hung up on the amateur vs. professional distinction, but the message I pull from the article is that artificial constraints like fixed hours and fixed work locations restrict the creativity and productivity of professionals. Amateurs do not suffer from the same constraints.
Graham is simply pointing out that far too many companies put up barriers which make it more difficult to create excellent software. If these companies allowed their employees' natural enthusiasm and creativity some freedom, the companies would enjoy better returns on their labor investment.
This isn't ivory tower nonsense. If you hold people accountable for results but let them manage the process by which they achieve those results, you can increase efficiency. This gives power to employees at the implementation level, and eliminates many of the Dilbertesque barriers so common in the corporate world.
Read the EFF's Fair Use FAQ
They support not only by money, but by full time employees, who supervise, direct and manage the open source process.
Of course, there are a lot of pure amateur projects -- but those of being known are supported indirectly by very professional organisations.
Another point, that the quality of work is independent of the commitment and effort. Everyone knows how s**t emerges from blood, sweat and tears. (I mean not literally...) So I strongly disagree with Paul Graham, despite some of his thought well worth to read.
Open Source and blooging have a lot in common?
Well, they have a few things in common. But every idiot and his pet rat seem to be blogging, and the vast, *vast* majority of it isn't worth reading, except maybe by friends and some family.
The quality of the average open source project is far better than the average blog, and far more useful to many people.
You might as well claim the Spac Shuttle and the personal bicycle have a lot in common because they both help people go places.
The biggest thing I think there is to learn here is that if the group that is working on something is extremely passionate about their cause then it does not matter how much money a competing group throws at the same solution. A while back I saw some show on PBS about when Microsoft was building Windows. At that time had a group of very motivated Engineers building Windows all hyped up on free soda. They did well. Now there is Linux, same deal. So now when I am trying to decide which software package or solution to choose I always look for the zealots. Alot of Open Source Projects definitely has the edge on this.
I am now just a worker bee nerd. I've been THE boss, running a software company. Both are/were fun, both were/are stressful in different ways.
And I've been middle manager boss, stuck in-between bosses and employees. This wasn't fun. It was just stress and not-fun.
In all cases, measuring results ends up being soooo subjective I could scream. The most subjective is being the middle manager (and also the most stressful).
Stress sucks the fun out work and life, and I suspect that stress comes from unmeasured and undeterminable outcomes.
So why can open source projects be fun? When you're on an open source project, you just KNOW if you are being productive.
When you have a boss hanging off your ass-handle-bars, and that boss can't/won't make it clear what he wants and then tell you if you're doing it - major stress.
Unmeasured results leads to stress. Stress leads to not-fun. Not-fun leads to suffering.
Working at home, not working at home, open/closed source it doesn't matter. People WANT to do well . Even the worst guy on your team NEVER gets up and says to himself, "I think I'll do a real bad job at work today."
But give him a reasonable expectation that is clear, and he'll either do it or not do it. He'll know why he is being fired if he is incapable of completing it. He'll work diligently at suceeding too, at whatever level he can, because people want to suceed.
So how can we measure results?
That's the key - can you and I tell if we're doing what is expected? More than expected? When are done with today's work?
*click**beep**beep* Scotty, One to Mod up!
NCF
So let me get this straight...the UNIONS are to blame for France and Germany's economic woes. The integration of East and West Germany, the merging of the European Union (with many *poor* countries dragging on the growth of the larger countries), and the overall higher standard of living (low-crime, high-culture, fair wage, available health-care, environmental awareness) have NOTHING to do with it. Its all the UNIONS.
Give me a break.
For what its worth, I am German (born and raised) and am NOT in a labor union. But I'm bright enough to realize how important their influence is on mitigating the excesses of bottom-line corporatism.
90% Professional Slacker
Paul Graham has written a fantastic article...
This article is only "fantastic" if you are already a "true believer" in what he's already saying. At that point, you are just looking for others to help you validate your own beliefs.
His second paragraph, for example:
More significant, I think, is which 52% they are. At this point, anyone proposing to run Windows on servers should be prepared to explain what they know about servers that Google, Yahoo, and Amazon don't.
Is completely religious. What Google, Yahoo, and Amazon know about their business and why their choices work for them may have zero bearing on what servers YOU need for YOUR work. For example, there may be applications (even legacy ones) that run on some other OS (doesn't have to be Windows) where the application is not OSS and is not available on an OSS OS? I personally know someone who has a bunch of software that he wrote running his own business (quite well, I might add) that is written in a language that he can't find in OSS much less on Linux. Why change? Why would any of those three companies know more about his business than he does? Why would he have to justify his decisions to, well, anyone?
Basically, this article is great if you are already part of the OSS religion. If you view OSS as "just another tool that you can use" then the article is somewhat "meh". Besides, the author doesn't even take into account any other businesses that aren't electronic in nature, such as manufacturing (yeah, you want a bunch of amateurs spread out all over the world trying to assemble cars? the shipping costs of the required parts for one car to all the workers (and back and forth) would cost 10x the amount that a car on the lot today would cost). Yet, the author doesn't make any distinction (perhaps saying that his "research" only applies to businesses that do all of their business online and are basically just information or retailers). Maybe he doesn't realize that there are other businesses out there...
I call "Bullshit!"
FOSS is also motivated by anti-Microsoft sentiment (IMO a _good_ thing). But FOSS participation has the unintended consequence of driving the cost of software development (and wages) down to zero. This hurts programmers in the long run.
FOSS will drive out alternatives other than those who _must_ maintain secret or proprietary systems [defense, government,etc.].
From the graham page:
j jij12%2fX%3d1123172624%2fE%3d23732888%2fR%3dst%2fK %3d5%2fV%3d1.1%2fW%3dG%2fY%3dYAHOO%2fF%3d225624150 2%2fS%3d1%2fJ%3dBDA9A342');
if (window.yzq_a == null) document.write("");
if (window.yzq_a) yzq_a('p', 'P=uDrxfEKjqb2aH7.MDxSooADpGAS80kLyQRAABr9t&T=13n
if (window.yzq4) yzq4();
I have a 4-year old. Trust me, I get far, far fewer interruptions when working at the office than when working at home!
I've abandoned my search for truth; now I'm just looking for some useful delusions.
His problem seems to be what some companies offer as a work environment. Yeah, if I had to come in at 8 everyday into some shitty little cube then I would want to work at home too.
But I don't. I can come in at any reasonable time I want and have a real office. And I'll always believe that having your teammates in the offices next to you will always be more productive than telecommuting.
There's a lot of benefits to actually popping into the office next to you and actually talking to your co-worker. It's higher bandwidth than e-mail or irc chat. And its also nice to be able to get a few guys together to start scrawling on the whiteboard. And a lot of our developers are smokers, so we go out to the warehouse to smoke and chitchat about some shitty customer problem we're having or querying about some code, and then both being at the same workstation to look at the debugger....
But I'm bright enough to realize how important their influence is on mitigating the excesses of bottom-line corporatism.
No, that veiled discredit of free markets is why France and Germany's economies suck. Too many germans and french think like you. Just remember there is no free lunch. If you want your socialism then be ready for the consequences.
Oh, fuck off with your "open source" already! Linux is Free Software.
What is wrong with a 1%-2% growth rate?
Three reasons why open source is appealing to the hacker:
1. It allows him to work on projects that only interest him and could be useless now and forever.
2. He can work on it for however long he likes without justifying it to anybody. And when he has lost interest he can simply walk away.
3. He may be the Van Gogh of software development and people can discover his genius thru his original source code.
Piss off. I spent seven years in combat arms units, am a combat veteran, and you have the balls to tell ME about a free lunch? Get your fat ass out of your chair and pull a tour in Iraq, then you can tell me about free lunches.
Ask the perpetually underemployed, debt-ridden, overworked, and underpaid American worker (including thousands of programmers...) about the consequences of unfettered Capitalism. See if they would be willing to sacrifice the "economy" for a safety net.
As for me, I have a job that I love, am working on a doctorate, own a house, and a have fat 401k. I've been saving a quarter of my income for a decade, much in line with my German relatives. So tell me again about "free lunches".
90% Professional Slacker
The idea sounds somewhat similiar to the already existing business system called "Open Book Management", or OBM.
Without being too sarcastic ...
I thought that most of the sucessfull Open Source project were maintained by very close team. I thought that we realised lately the the chaos theory was doomed to chaos. And that basically a small team of people working at the same place were working far better than 10.000 people around the globe.
I think there is nothing to learn from the open source development scheme. Basically it's always up to a very few people to make things go forward. And the rest of the people causes more troubles than good...
Now if everybody changes his mind !
Are you really Linus Torvaalds?
If you aren't, it might be better to have a handle like; "Linus Torvaalds Wet Dream". I just think that would be the respectful thing to do. If you are, well, just doing my bit to protect people from identity fraud.
****
Anyway, I more agree with what you are saying than the opinion that Developer driven stuff becomes a boon-doggle. Both bad open source projects that go nowhere and corporate shovelware are a reality. I suppose that it all comes down to leadership. If the person (or concept) leading the direction for development doesn't understand what problems the software is should solve and how to make it useful, then it is doomed to failure.
I've been involved in a few projects (useually from the Interface side). And from what I've seen, a lot of programmers fall into the Term Paper or the Novelist category. Meaning; most programmers know how to solve a specific problem if they plug away long enough at it. But at the end, they've just made a useful widget--somebody else has to plug it into a useful context. The Novelist, understands the storey--they get the "big picture". The programmers churned out in college with their Microsoft Visual Basic or C # training are often people with some ability but not necessarily any love towards making poetry or a great storey. People who want to do "great things", I think, tend to move towards the *NIX's or the Java or something where you "understand the whole storey". They want to understand why everything is working rather than memorize how to get the software to work.
Not that the "Term Paper" programmer couldn't create a large application with enough time and resources. But, it invariable becomes something unwieldy. I guess, the best way to describe this idea is if I can go off on another analogy-- a great musician doesn't need to poll the audience to make great music -- but they naturally "get" the audience because they love the music and want to please the listeners. Someone else may know all the notes and studied at the best schools, but nobody wants to listen to someobody just banging out technically correct snippets of sound that have no storey or concrete evolution (of course, maybe a few people for a brief and masochistic period of experimental music in the 1980's).
I'm glossing over a lot and sterotyping a bit. But I don't think I'm uselessly off track either. From my limited experience with Visual Basic, I got really turned off by the "Cook Book" method. Meaning that you looked up a recipe or a wizard and hammered out a useful thing very easily. If you couldn't find the wizard or the recipe, then you were in for a world of pain. Later, after toiling with debugging convoluted JavaScript, I really appreciated Flash, because it was much cleaner and more object based and you could "create the whole widget". But, these are just tools -- I'm just pointing out that the type of developer is also attracted to certain "types" of tools. So that business get Term Paper developers who got good grades, and UNIX and Java get hackers and poets who like good code. On average.
One of the chief things that most all programs tend to lack, is things like usability. Many programmers don't "get it" when it comes to the interface--or in their hearts, they actually don't like things to be "easy". But some people intrinsically understand the user, and work from the audience back down the the algorithm. Other than bad marketing, I think the most common thing to kill off popular acceptance of programs is that they have bad interfaces. Give the common man eye candy and a way to get something done with it easily and you are 90% on the way to success.
But how does bad software get made so often?
I think the whole problem comes down to how corporations award and identify merit. Personality, loyalty and other issues tend to trump ability--this more than anything else means that the corporate model tends to lead to bad design. Whereas past success in the open source world, tends to create a good reputation, and so
>>"ad space available -- low rates!!!"
This guy knows what he's talking about, even if he's only 99% correct. That other guy missed it by a centimeter, but doesn't show much comprehension.
Maybe it's because that other guy spent so long working for Microsoft before he got free to work in the real world.
I heard a presentation by the president of Mysql a year or two ago. I believe he claimed they were the biggest open source company and they seemed to be making a profit.
The article states that work at home is better than at workplace - you can't generalize like that, it's just that some people perform better at a workplace, others at home.
Hey Richard, that Astronomy degree wouldn't happen to have been at UWO would it?
Cheers,
Lee.
I have worked from home for over 20 years and I never spanked my kids once!!!
Organise your house so they have their own areas separate from you. Also MOM should be able to help... not that my wife was any help because she wasn't. That is another issue but the sad fact is she couldn't and I had to look after her as well as the kids.
In spite of all of this I was still far more productive then I ever could have been in an office. Furthermore it left me in a situation where I could provide the care my family needed.
Thank gawd I had very understanding clients who loved my work and paid my the big bux so I would build the software they wanted. I will add that they had office space downtown and had programmers in some of that office space. They were willing to pay me over 2x what they paid their own employees and were willing to pay me while I worked at home. So I really think Graham is correct.... but clearly not for all people.
Hi, Lee.
Yes, that's me. Do I know you / were you a classmate of mine? The 'main Lee' I remember from those days I mainly did appmath (computational simulations) courses with. I think he went to UW for his PhD.
If you're interested in more of the 'YAPC story', I did an interview with Perl.com here: http://www.perl.com/pub/a/2005/05/12/rdice.html
Cheers,
Richard
This image that Linux and all OSS is developed by some nerd in the basement of his grandma's house is simply wrong. While this may have been true one day, now, thousands of programmers are PAID to develop OSS. KDE, the Linux kernel, Gnome, Apache, and hundreds of OSS apps are developed by paid programmers.
And there's thousands more programmers employed to develop in-house applications that are built on top of OSS. If anything, it's promoted the idea of in house talent because you can take the software and mold it to your specific needs.
OSS is quickly turning into a multi-billion dollar industry and it's not all on the shoulders of poor Jimmy in his basement with leet C++ skills.
Why don't you find out a little more about the OSS economy before spilling this absurd garbage that you sucked up from Microsoft and the other closed source camps?
- It's not the Macs I hate. It's Digg users. -