investors just kept pumping up the stocks, and punishing the companies that kept honest books but missed a few pennies on the quarterly report.
Yes, in the short term doing the right thing is often not the easy thing. If it was, we wouldn't need things like discipline, moral fiber, leadership, and gumption. For long-term success, those turn out to be necessary qualities.
But in my book, "Everybody's doing it!" and "We thought we could get away with it!" don't win any sympathy. If you are going to play with fire, you'd better be smart and quick enough to stop before you get burned. You're right that some people will probably get away with this, but I'm not shedding any tears for the ones who end up with their nuts in the SEC's vices. If you can't do the time, you shouldn't do the crime.
You mean it wasn't obviously illegal. "Wrong" is the timeless notion that we try to express in the law. For example, in the era of the movie "The Sting", what most con artists did was technically legal. They were so successful that their activities were made illegal, but what they did was always wrong. In a more modern example, a lot of Enron business practices were technically legal (or at least arguably legal), but were clearly wrong.
The backdating thing is more about droping everything and kissing up to the auditors and throwing lots of money at redoing the books than actual wrongdoing.
I agree that if you play games with the books you'd better have accountants who can dance like champions, and that can cost a lot. But I believe backdating is wrong, and it seems like the SEC does, too. Here's my theory as to why it's wrong. Perhaps you can tell me where my mistake is.
Employee options only exist as a way to provide incentive to employees. By giving them something tied directly to the stock price, in theory you reward them when they increase the value of the company. The SEC, however, is interested in backdating where the options were made to be in the money. This wasn't an incentive program for executives; it was a hidden giveaway. A giveaway of what? Shareholder money.
And before you work too hard at explaining it away, note that this reasoning is also used by the pro-business newspaper "The Economist", which said this about backdating: "the mystery is how anyone saw anything but theft in dishonestly using hindsight to date options so that they secretly rewarded their recipients with an instant gain." And they also called it "a pay scam that may damage American business". But heck; they've only been advocating capitalism for 150 years. What do they know?
everbody else did it to keep up
Yes, yes. "Mommy, mommy! All the other kids are awarding themselves lots of other people's money for nothing. Can't I do it too? Pleeeeease?"
The interesting part will be to see whether these execs properly declared their backdated options on their taxes. If they recorded the in-the-money value properly that year, then your "we're just doing it to keep up with Microsoft's accounting" defense will make some sense. Not much sense, though. Why would we shareholders pay so much for supposed leaders whose first instinct is to follow the herd and give us questionable books?
But if they haven't, then it's evidence that they were, as a lot of people who aren't Silicon Valley execs suspect, committing fraud.
I agree completely. I'm inclined to sell Network Appliances short based on that one quote. If he doesn't know that it was wrong, why it was wrong, and why it's important for the SEC to fix the problem, then odds are good there are other quaint SEC customs that's he's unfamiliar with.
I prefer an honest scumbag who knows what's wrong and does it anyhow to somebody like this. He has a too-convenient blindness to some basic concepts of capitalism.
Only a tiny minority of Americans will ever use the fact of human evolution in their lifetimes. Indeed, the vast majority of the American public will never deal with science directly in their working lives. So what difference does it make what they believe?
Citizens run the country. Some of the most important issues of our day turn on scientific questions. Without an understanding of it or a willingness to trust people who do, we'll make the wrong decisions.
Of course, judging by both personal and government budgets, the American electorate doesn't even understand basic accounting, so maybe basic science is a little much to ask for.
No evolutionist who knows what he is talking about would ever claim that humans evolved from apes. The correct phrase is humans AND apes have a COMMON ancestor.
I agree that's more correct, but if that common ancestor were alive today, we would call it an ape. Therefore, it's reasonable shorthand to say that humans evolved from apes.
It says something that the most succesful open source projects tend to be run on a model almost identical to a typical corporation. I believe Linus refers to it as the "benevolent dictator" model.
Open source project leaders can't order anybody to do anything
Open source project workers can fork at any time if they disagree with the direction of the project
This changes the power dynamic completely from a typical corporation, and a different power dynamic means different behaviors and different organizations. If there's a close paralle in the business world, it's either a network of small businesses, or perhaps something like Semco or Origin.
there has to be management vision and clear direction [...] some kind of management [...] name one truly popular, non-trivial, and actively developed Open Source product that has no leadership of some kind.
You're conflating leadership and management.
Imagine you're out drinking with a half-dozen friends. It's about time for dinner, so people throw out some ideas. One person says, "From what people are saying, it sounds like X would be a good choice. That sounds great to me. Any objections?" That person is demonstrating leadership, even though they aren't managing anything.
The distinction is crucial in open source projects. Linus may lead the Linux kernel efforts, but he doesn't have much real power. He can't fire people if they don't do what he wants, and anybody can fork at any time. He's a leader, but not a manager. This is why so many businesses have a hard time understanding open source: they are used to managing rather than leading.
A hierarchical power structure ended up materializing despite our best efforts to keep it decentralized. Also, when we tried decision-making by polling everyone on every single issue, the decisions would take insanely long to determine.
For the co-ops I'm involved in, we have roles but no hierarchy. One, for example, is a bandwidth cooperative. One person calculates bandwidth usage every month. Another sends out bills based on that. A third collects the money, and a fourth bugs people who haven't yet paid. Others manage the firewall, run the mailing list, organize the wiki, sign up new users, and so on.
Generally, people in the roles just keep doing their thing as they see fit, and others will follow their lead. If there's some issue, we discuss it. We generally don't do polling; in five years, I can think of only two or three formal votes.
Sooner or later, every "we're all equal" business is going to have trouble with the proverbial (and now politically incorrect way to say it) too many chiefs and not enough indians. Nobody aspires to be a grunt.
You'd be surprised. One summer in college, I worked in a factory. For that summer, I loved it. One of my clients just hired an office manager. She loves it because it got her out of a waitressing job. The trick is to hire people for whom the scut work is something they want to do.
It's also worth having everybody do some of the grunt work. Another client has everybody build their own desk. And a third rotates ugly jobs (like production support and emergency bug fixes) between people every week. If everybody cleans up messes, there will be a lot fewer messes.
If you're asking for an organiztion where everyone has "equal" say that's just running for disaster.
It works for me!
I'm in two organizations that have no formal power structure and work by consensus.
I've also been involved in a few different startups that, although they had a formal power structure, almost never used it.
if everyone can go on willy nilly and do whatever they want, then what's to ensure something or heck anything get's done.
If everybody there is for the same purpose, then everybody ensures that it gets done. When you work by yourself, who ensures that stuff gets done? You do. With a consensus-based model, it's just like that, except with more people.
t. You need specialization and sub-grouping to focus on particular issues in depth. And some specialization will, inevitably, put some employees on different authority levels than others.
I disagree. Specialization can also work from trust, not just from authority. When I delegate things to people I generally trust them to do the work, even though I have the authority to interfere. In society, we put a lot of trust in academics, researchers, and third-party opinions, even though we don't give them formal authority.
This is exactly how a lot of development teams work, too. When the database guy tells me how something should be done, I'll generally do it his way. When we disagree, we work it out. If we have to resort to authority, we've failed in something important.
there are going to be things about it that individuals don't like, and yet the message of consensus-driven decision making seems to be that these things are anomalies which need to be eliminated.
That's not the case in the consensus-based organizations and teams that I'm involved with.
Consensus doesn't mean that everybody has to be of one mind. It just means that everybody has to find a decision acceptable. It's a common experience that somebody will disagree with a direction but accept it for now to see how it goes. There's also a lot of informal horse trading and self-governing. If I push hard for something that matters to me, I feel like I've used up some social credit and will be more moderate for a while. And if you let somebody have their way on something they care about, they'll be more agreeable.
it's not easy, it's time intensive, and it doesn't scale well beyond small groups of relatively like-minded individuals.
This is more true. It definitely takes more social skills. I don't find it much more time intensive when people are good at it, but it's certainly harder for people used to command-and-control organizations. On the other hand, I believe it's much more efficient: because everybody stays in sync, you avoid layers of management, confusion, and waste.
You're right that it doesn't scale up to large organizations if you're going to treat the organization as one unit. On the other hand, I've seen people have success when organized in a cellular fashion: you divide people into independent but interacting small teams. It's more like a network of small businesses than a traditional large organization. I'd also add that the large command-and-control organizations I know are really only good at simple things. For example, a large bank I know well is great at getting all the tellers to do the right thing, but their software development efforts are a mess. So it's not clear to me that command-and-control structures scale very well for knowledge work.
Even in cooperatives power is generally doled out according to who put in the most capital. In that sense they are run just like any other corporation.
For the cooperatives I'm involved in, they are entirely consensus-driven, with no formal power structure. It works fine for us; one's going on five years, and the other just hit three. Of course, our capital investments are minimal and neither intends to turn a profit. They're also small, with 25 and 15 members respectively.
I think a looser structure like that breeds resiliency. With no formal power, there's little authority to abuse. And different people take leadership on different issues when it's something they care about. Since many people are used to leading, it's no big deal when a heavy hitter goes on vacation or gets a little worn out; others pick up the slack as needed.
There does not exist a human organization in which everyone is equal (though some groups try to pretend).
However, the style of cooperatives and consensus-driven organizations is that you don't institutionalize power differences. Just because people aren't equal doesn't mean that we must create and enforce a one-dimensional ranking.
Floor trading is a pretty extreme job. Most floor traders work their way up from entry level runner positions.
Yes, and that's exactly what the original poster should do. It's been a while, but the trading firm I used to work for was geared for turning bright but unskilled people into traders. Set aside your pride and jump back to being an entry level employee again for a while. Hopefully your maturity and smarts will let you climb the ladder quickly.
I'd echo other people who advise you to stay away from day trading or just buying a seat. Learn the business from people who know what they're doing. You will avoid a lot of novice mistakes, which in trading can be very, very expensive.
The best part is that he could have made these predictions three years ago almost unchanged. But somehow it still continues to work. As far as I can tell, this is a litany of "things that scare or annoy me" rather than a serious analysis of why Wikipedia will or won't succeed. He certainly doesn't seem to have a reasonable explanation of how it has made it this far.
intonations of how important "consensus" is... having to treat idiots and obviously malicious editors as if they were serious [...]
The reason people do this is that it often works. Most people are very reactive. If you treat them like a problem, they'll be a problem. If you treat them like a contributor, they'll act like a contributor. And for people who come looking for conflict, not giving it to them means they go elsewhere.
The only real alternative to being insistently nice is unending war with conflict-hungry fuckwads. For Wikipedia's size, traffic, and number of contributors, there are dumbfoundingly few problems.
And I couldn't be bothered anymore. I logged out, and I haven't been back since.
Is this a problem with Wikipedia, or a problem with your use of Wikipedia?
If you do a frustrating thing too much, you will get fed up with it. Early I ended up hating and quitting a few different jobs because I took them too seriously and burnt out on them. Now I carefully limit my frustration levels to what I can handle. It's the same way with Wikipedia: I do as much as I can where I still enjoy it.
but I really can't take any book seriously titled "Building Scalable Web Sites" that explains itself using PHP and mySQL. I know PHP/mySQL have their place but I just don't think of them as industrial strength.
Flickr is the 41st most used website in the world, so scoff at your peril. And I say that as a heavy OO guy who does a lot of Java work.
I've seen Cal's day-long presentation that appears to have been turned into this book. He's very smart, and has done great work making the technologies suit their needs. He has proven that you can scale these technologies up to handle massive traffic while building a lot of neat stuff along the way. If the book is half as good as his presentation, it's well worth it.
My main scaling concern with this approach is instead that I don't see how they'll scale up the number of developers. Database-centric apps end up mainly being about the care and feeding of your database servers, and Flickr's no exception to that. PHP seems to be just fine for page rendering, but I haven't seen anything to convince me that it's a good general-purpose language like Java, Ruby, or Python. So with databases screwing up your abstractions on one end and PHP limiting them on the other, I'd worry that the code base is on the long-term path to being both rigid and fragile.
So with Flickr, my real measure for them will be whether they can keep innovating like they did in their first couple of years. If not, I'll suspect that the two-tier PHP/MySQL architecture is at fault.
Meanwhile, this article is basically Dvorak saying, "Man. Programming is HARD. It has to be a problem with the language."
Yeah, I had the crazy notion that technology writers should have some vague understanding of technology. He wrote "If your Internet connection happens to lose a bit of CSS data, you get a mess on your screen." I guess this is the Ted Stevens "leaky tubes" model of internet plumbing. I presume that Dvorak weekly mops under his cable modem to keep leaking bits from staining his floor. (But he's no fool; it's only the one bits he's worried about: the zero bits are round and so don't slip out of tiny holes as easily.)
So, why does implementing something in Java mean that it is not maintainable in the long term? (Yes, you didn't directly say that, but you sure as hell implied it).
No, you inferred it. Incorrectly, I should add. Note that I said "You can definitely do good work in it." To me, maintainability is part of doing work. I take it you feel otherwise?
Actually, what languages do you think lead to better maintainability?
I don't think languages really matter much for maintainability; it's mainly the people and their behaviors. That's why I said, "a lack of sense means not designing for long-term maintainability."
At a guess, I'd say that maybe 5% of maintainability is language choice. And in that 5%, Java does ok. Java 1.5 was a step up, but they could go a lot further.
That's one hell of a grievance note. Well-written, well thought out, and it makes its points well.
No denying it. And I'm inclined to trust him a lot more then some average joe, if only because he has not one but two umlauts in his name. Is it because northern Europe produces heavy hitters out of proportion with its size? Or just because of the heavy-metal umlaut effect?
But if we already could, then presumably we already would, and there wouldn't be any arguing about whether it was possible or not.
That's not necessarily the case. There are a lot of things that are marginal and poorly understood. Take color vision. We've known about color-blindness for a while. But did you know there are people with more color vision than you? To them, we're the color-blind ones. We also don't really understand the idiot savant phenomenon yet. We are an organism only partly understood and under vigorous evolution.
That's no reason to assume that we are latent telepath mutant supermen, of course. Just that we shouldn't rule it out a priori. People should feel free to keep looking until everybody's satisfied that there's nothing there, which presumably won't happen until we have a complete mapping of brain function and a roughly finished theory of consciousness.
But from what I read, though Java is well entrenched, it seems to be approaching 'legacy' status, and is well-bashed these days. (The next remark will really open up a can of worms.) Compare Java with Cobol, in a strange sort of way.
No, there's no denying it, Java is the new COBOL. That's not to say it's as bad as COBOL; you can definitely do good work in it. But it is also the default language choice for people with more money than sense. Those businesses with a lot of money tend to hang around, and a lack of sense means not designing for long-term maintainability.
Combine that, and hey presto! you have a lot of legacy code.
There are many times where my daughter says something that I am thinking or vice versa, or someone is searching for a word and it pops into my head, or my wife and I thought about something at the same time of day (within minutes of each other) but being miles apart.
So wait! You're saying that people you have spent years and years in close proximity with may occasionally think about the same things? That's unpossible! How could they ever do that?!?/me sighs.
investors just kept pumping up the stocks, and punishing the companies that kept honest books but missed a few pennies on the quarterly report.
Yes, in the short term doing the right thing is often not the easy thing. If it was, we wouldn't need things like discipline, moral fiber, leadership, and gumption. For long-term success, those turn out to be necessary qualities.
But in my book, "Everybody's doing it!" and "We thought we could get away with it!" don't win any sympathy. If you are going to play with fire, you'd better be smart and quick enough to stop before you get burned. You're right that some people will probably get away with this, but I'm not shedding any tears for the ones who end up with their nuts in the SEC's vices. If you can't do the time, you shouldn't do the crime.
It wasn't "wrong" until 5 years ago at most.
You mean it wasn't obviously illegal. "Wrong" is the timeless notion that we try to express in the law. For example, in the era of the movie "The Sting", what most con artists did was technically legal. They were so successful that their activities were made illegal, but what they did was always wrong. In a more modern example, a lot of Enron business practices were technically legal (or at least arguably legal), but were clearly wrong.
The backdating thing is more about droping everything and kissing up to the auditors and throwing lots of money at redoing the books than actual wrongdoing.
I agree that if you play games with the books you'd better have accountants who can dance like champions, and that can cost a lot. But I believe backdating is wrong, and it seems like the SEC does, too. Here's my theory as to why it's wrong. Perhaps you can tell me where my mistake is.
Employee options only exist as a way to provide incentive to employees. By giving them something tied directly to the stock price, in theory you reward them when they increase the value of the company. The SEC, however, is interested in backdating where the options were made to be in the money. This wasn't an incentive program for executives; it was a hidden giveaway. A giveaway of what? Shareholder money.
And before you work too hard at explaining it away, note that this reasoning is also used by the pro-business newspaper "The Economist", which said this about backdating: "the mystery is how anyone saw anything but theft in dishonestly using hindsight to date options so that they secretly rewarded their recipients with an instant gain." And they also called it "a pay scam that may damage American business". But heck; they've only been advocating capitalism for 150 years. What do they know?
everbody else did it to keep up
Yes, yes. "Mommy, mommy! All the other kids are awarding themselves lots of other people's money for nothing. Can't I do it too? Pleeeeease?"
The interesting part will be to see whether these execs properly declared their backdated options on their taxes. If they recorded the in-the-money value properly that year, then your "we're just doing it to keep up with Microsoft's accounting" defense will make some sense. Not much sense, though. Why would we shareholders pay so much for supposed leaders whose first instinct is to follow the herd and give us questionable books?
But if they haven't, then it's evidence that they were, as a lot of people who aren't Silicon Valley execs suspect, committing fraud.
I agree completely. I'm inclined to sell Network Appliances short based on that one quote. If he doesn't know that it was wrong, why it was wrong, and why it's important for the SEC to fix the problem, then odds are good there are other quaint SEC customs that's he's unfamiliar with.
I prefer an honest scumbag who knows what's wrong and does it anyhow to somebody like this. He has a too-convenient blindness to some basic concepts of capitalism.
Only a tiny minority of Americans will ever use the fact of human evolution in their lifetimes. Indeed, the vast majority of the American public will never deal with science directly in their working lives. So what difference does it make what they believe?
Citizens run the country. Some of the most important issues of our day turn on scientific questions. Without an understanding of it or a willingness to trust people who do, we'll make the wrong decisions.
Of course, judging by both personal and government budgets, the American electorate doesn't even understand basic accounting, so maybe basic science is a little much to ask for.
No evolutionist who knows what he is talking about would ever claim that humans evolved from apes. The correct phrase is humans AND apes have a COMMON ancestor.
I agree that's more correct, but if that common ancestor were alive today, we would call it an ape. Therefore, it's reasonable shorthand to say that humans evolved from apes.
You are entirely wrong here.
For the full scoop, read Karl Fogel's Producing Open Source Software, which details the differences. But two key ones:
This changes the power dynamic completely from a typical corporation, and a different power dynamic means different behaviors and different organizations. If there's a close paralle in the business world, it's either a network of small businesses, or perhaps something like Semco or Origin.
there has to be management vision and clear direction [...] some kind of management [...] name one truly popular, non-trivial, and actively developed Open Source product that has no leadership of some kind.
You're conflating leadership and management.
Imagine you're out drinking with a half-dozen friends. It's about time for dinner, so people throw out some ideas. One person says, "From what people are saying, it sounds like X would be a good choice. That sounds great to me. Any objections?" That person is demonstrating leadership, even though they aren't managing anything.
The distinction is crucial in open source projects. Linus may lead the Linux kernel efforts, but he doesn't have much real power. He can't fire people if they don't do what he wants, and anybody can fork at any time. He's a leader, but not a manager. This is why so many businesses have a hard time understanding open source: they are used to managing rather than leading.
A hierarchical power structure ended up materializing despite our best efforts to keep it decentralized. Also, when we tried decision-making by polling everyone on every single issue, the decisions would take insanely long to determine.
For the co-ops I'm involved in, we have roles but no hierarchy. One, for example, is a bandwidth cooperative. One person calculates bandwidth usage every month. Another sends out bills based on that. A third collects the money, and a fourth bugs people who haven't yet paid. Others manage the firewall, run the mailing list, organize the wiki, sign up new users, and so on.
Generally, people in the roles just keep doing their thing as they see fit, and others will follow their lead. If there's some issue, we discuss it. We generally don't do polling; in five years, I can think of only two or three formal votes.
Sooner or later, every "we're all equal" business is going to have trouble with the proverbial (and now politically incorrect way to say it) too many chiefs and not enough indians. Nobody aspires to be a grunt.
You'd be surprised. One summer in college, I worked in a factory. For that summer, I loved it. One of my clients just hired an office manager. She loves it because it got her out of a waitressing job. The trick is to hire people for whom the scut work is something they want to do.
It's also worth having everybody do some of the grunt work. Another client has everybody build their own desk. And a third rotates ugly jobs (like production support and emergency bug fixes) between people every week. If everybody cleans up messes, there will be a lot fewer messes.
If you're asking for an organiztion where everyone has "equal" say that's just running for disaster.
It works for me!
I'm in two organizations that have no formal power structure and work by consensus.
I've also been involved in a few different startups that, although they had a formal power structure, almost never used it.
if everyone can go on willy nilly and do whatever they want, then what's to ensure something or heck anything get's done.
If everybody there is for the same purpose, then everybody ensures that it gets done. When you work by yourself, who ensures that stuff gets done? You do. With a consensus-based model, it's just like that, except with more people.
t. You need specialization and sub-grouping to focus on particular issues in depth. And some specialization will, inevitably, put some employees on different authority levels than others.
I disagree. Specialization can also work from trust, not just from authority. When I delegate things to people I generally trust them to do the work, even though I have the authority to interfere. In society, we put a lot of trust in academics, researchers, and third-party opinions, even though we don't give them formal authority.
This is exactly how a lot of development teams work, too. When the database guy tells me how something should be done, I'll generally do it his way. When we disagree, we work it out. If we have to resort to authority, we've failed in something important.
there are going to be things about it that individuals don't like, and yet the message of consensus-driven decision making seems to be that these things are anomalies which need to be eliminated.
That's not the case in the consensus-based organizations and teams that I'm involved with.
Consensus doesn't mean that everybody has to be of one mind. It just means that everybody has to find a decision acceptable. It's a common experience that somebody will disagree with a direction but accept it for now to see how it goes. There's also a lot of informal horse trading and self-governing. If I push hard for something that matters to me, I feel like I've used up some social credit and will be more moderate for a while. And if you let somebody have their way on something they care about, they'll be more agreeable.
it's not easy, it's time intensive, and it doesn't scale well beyond small groups of relatively like-minded individuals.
This is more true. It definitely takes more social skills. I don't find it much more time intensive when people are good at it, but it's certainly harder for people used to command-and-control organizations. On the other hand, I believe it's much more efficient: because everybody stays in sync, you avoid layers of management, confusion, and waste.
You're right that it doesn't scale up to large organizations if you're going to treat the organization as one unit. On the other hand, I've seen people have success when organized in a cellular fashion: you divide people into independent but interacting small teams. It's more like a network of small businesses than a traditional large organization. I'd also add that the large command-and-control organizations I know are really only good at simple things. For example, a large bank I know well is great at getting all the tellers to do the right thing, but their software development efforts are a mess. So it's not clear to me that command-and-control structures scale very well for knowledge work.
Even in cooperatives power is generally doled out according to who put in the most capital. In that sense they are run just like any other corporation.
For the cooperatives I'm involved in, they are entirely consensus-driven, with no formal power structure. It works fine for us; one's going on five years, and the other just hit three. Of course, our capital investments are minimal and neither intends to turn a profit. They're also small, with 25 and 15 members respectively.
I think a looser structure like that breeds resiliency. With no formal power, there's little authority to abuse. And different people take leadership on different issues when it's something they care about. Since many people are used to leading, it's no big deal when a heavy hitter goes on vacation or gets a little worn out; others pick up the slack as needed.
There does not exist a human organization in which everyone is equal (though some groups try to pretend).
However, the style of cooperatives and consensus-driven organizations is that you don't institutionalize power differences. Just because people aren't equal doesn't mean that we must create and enforce a one-dimensional ranking.
Floor trading is a pretty extreme job. Most floor traders work their way up from entry level runner positions.
Yes, and that's exactly what the original poster should do. It's been a while, but the trading firm I used to work for was geared for turning bright but unskilled people into traders. Set aside your pride and jump back to being an entry level employee again for a while. Hopefully your maturity and smarts will let you climb the ladder quickly.
I'd echo other people who advise you to stay away from day trading or just buying a seat. Learn the business from people who know what they're doing. You will avoid a lot of novice mistakes, which in trading can be very, very expensive.
Heh. Yet another fellow with an axe to grind.
The best part is that he could have made these predictions three years ago almost unchanged. But somehow it still continues to work. As far as I can tell, this is a litany of "things that scare or annoy me" rather than a serious analysis of why Wikipedia will or won't succeed. He certainly doesn't seem to have a reasonable explanation of how it has made it this far.
intonations of how important "consensus" is... having to treat idiots and obviously malicious editors as if they were serious [...]
The reason people do this is that it often works. Most people are very reactive. If you treat them like a problem, they'll be a problem. If you treat them like a contributor, they'll act like a contributor. And for people who come looking for conflict, not giving it to them means they go elsewhere.
The only real alternative to being insistently nice is unending war with conflict-hungry fuckwads. For Wikipedia's size, traffic, and number of contributors, there are dumbfoundingly few problems.
And I couldn't be bothered anymore. I logged out, and I haven't been back since.
Is this a problem with Wikipedia, or a problem with your use of Wikipedia?
If you do a frustrating thing too much, you will get fed up with it. Early I ended up hating and quitting a few different jobs because I took them too seriously and burnt out on them. Now I carefully limit my frustration levels to what I can handle. It's the same way with Wikipedia: I do as much as I can where I still enjoy it.
but I really can't take any book seriously titled "Building Scalable Web Sites" that explains itself using PHP and mySQL. I know PHP/mySQL have their place but I just don't think of them as industrial strength.
Flickr is the 41st most used website in the world, so scoff at your peril. And I say that as a heavy OO guy who does a lot of Java work.
I've seen Cal's day-long presentation that appears to have been turned into this book. He's very smart, and has done great work making the technologies suit their needs. He has proven that you can scale these technologies up to handle massive traffic while building a lot of neat stuff along the way. If the book is half as good as his presentation, it's well worth it.
My main scaling concern with this approach is instead that I don't see how they'll scale up the number of developers. Database-centric apps end up mainly being about the care and feeding of your database servers, and Flickr's no exception to that. PHP seems to be just fine for page rendering, but I haven't seen anything to convince me that it's a good general-purpose language like Java, Ruby, or Python. So with databases screwing up your abstractions on one end and PHP limiting them on the other, I'd worry that the code base is on the long-term path to being both rigid and fragile.
So with Flickr, my real measure for them will be whether they can keep innovating like they did in their first couple of years. If not, I'll suspect that the two-tier PHP/MySQL architecture is at fault.
Meanwhile, this article is basically Dvorak saying, "Man. Programming is HARD. It has to be a problem with the language."
Yeah, I had the crazy notion that technology writers should have some vague understanding of technology. He wrote "If your Internet connection happens to lose a bit of CSS data, you get a mess on your screen." I guess this is the Ted Stevens "leaky tubes" model of internet plumbing. I presume that Dvorak weekly mops under his cable modem to keep leaking bits from staining his floor. (But he's no fool; it's only the one bits he's worried about: the zero bits are round and so don't slip out of tiny holes as easily.)
There's too many generalizations [...] that are incorrect under many conditions
Uh, that's the point of a generalization. Generally it's right. Sometimes it isn't.
Generally, that's fine. Sometimes, it isn't.
So, why does implementing something in Java mean that it is not maintainable in the long term? (Yes, you didn't directly say that, but you sure as hell implied it).
No, you inferred it. Incorrectly, I should add. Note that I said "You can definitely do good work in it." To me, maintainability is part of doing work. I take it you feel otherwise?
Actually, what languages do you think lead to better maintainability?
I don't think languages really matter much for maintainability; it's mainly the people and their behaviors. That's why I said, "a lack of sense means not designing for long-term maintainability."
At a guess, I'd say that maybe 5% of maintainability is language choice. And in that 5%, Java does ok. Java 1.5 was a step up, but they could go a lot further.
That's one hell of a grievance note. Well-written, well thought out, and it makes its points well.
No denying it. And I'm inclined to trust him a lot more then some average joe, if only because he has not one but two umlauts in his name. Is it because northern Europe produces heavy hitters out of proportion with its size? Or just because of the heavy-metal umlaut effect?
But if we already could, then presumably we already would, and there wouldn't be any arguing about whether it was possible or not.
That's not necessarily the case. There are a lot of things that are marginal and poorly understood. Take color vision. We've known about color-blindness for a while. But did you know there are people with more color vision than you? To them, we're the color-blind ones. We also don't really understand the idiot savant phenomenon yet. We are an organism only partly understood and under vigorous evolution.
That's no reason to assume that we are latent telepath mutant supermen, of course. Just that we shouldn't rule it out a priori. People should feel free to keep looking until everybody's satisfied that there's nothing there, which presumably won't happen until we have a complete mapping of brain function and a roughly finished theory of consciousness.
But from what I read, though Java is well entrenched, it seems to be approaching 'legacy' status, and is well-bashed these days. (The next remark will really open up a can of worms.) Compare Java with Cobol, in a strange sort of way.
No, there's no denying it, Java is the new COBOL. That's not to say it's as bad as COBOL; you can definitely do good work in it. But it is also the default language choice for people with more money than sense. Those businesses with a lot of money tend to hang around, and a lack of sense means not designing for long-term maintainability.
Combine that, and hey presto! you have a lot of legacy code.
There are many times where my daughter says something that I am thinking or vice versa, or someone is searching for a word and it pops into my head, or my wife and I thought about something at the same time of day (within minutes of each other) but being miles apart.
/me sighs.
So wait! You're saying that people you have spent years and years in close proximity with may occasionally think about the same things? That's unpossible! How could they ever do that?!?