Is it just me, or is a job ad that includes the following just a tad bit creepy:
Send your resume and code samples in C/C++ that demonstrate your ability to engineer practical solutions to difficult problems. We prefer to see code in such areas as multithreading, sockets, or other difficult problems. We generally look for at least 2500 lines of code in at least two different subject areas. [emphasis added]
We encourage you to send code that will show your best work, and would suggest avoiding linked-list implementations, matrix transformations, lightweight "wrappers", and the like, as those samples tend not to give a clear idea of your abilities. If you collaborated with other programmers on the code that you submit with your resume, please give us a clear indication of which parts you wrote. Finally, please do not submit executables, make-files or data files.
Don’t get me wrong here. Asking for applicants to solve a mathematical problem or to supply a couple hundred lines of code is perfectly reasonable. But a couple thousand lines of code (at minimum; check the wording above)? That’s excessive. I think someone’s trolling for free boilerplate they can reuse. Remember, they’re going to get dozens of responses if it’s like a typical help-wanted ad.
After requesting all this, they helpfully add: “Code samples will be held in the strictest confidence and used solely for the purpose of evaluating your abilities.” Yeah, right.
In The Cathedral and the Bazaar, Eric S. Raymond argues that open source software will eventually drive proprietary software out of existence because open source is intrinsically so much more efficient at creating quality, useful programs.
I’ve never been terribly fond of the Cathederal-versus-Bazaar analogy, myself. Open source is not very much like a bazaar at all. In a bazaar people are buying and selling things; open source software gets given away for free. It’s more like communism (in the true, anti-authoritarian sense of the word, not the vile perversion begot by numerous political parties bearing the name “communist”) versus capitalism. From each according to his ability, to each according to his needs, and the “state” (in this case, the corporate hierarchy) has withered away.
We’re creatures of our biases, and Raymond’s Libertarian ideology leads him to see capitalism (which he highly admires) in everything he admires. Even if it ends up being a case of a gift economy versus large profitable corporations.
But I digress. I continue to be surprised by how favorably the Microsoft-designed ASP.NET manages to compare with open-source alternatives like Ruby on Rails, which I’ve been reading about this afternoon. For someone who has spent most of his career glad to be in the open-source/Unix/Linux world as opposed to the PC/Microsoft world, this just doesn’t fit very well into the map I’ve built of how the world is.
What’s happened, I think, is that the “cathedral” has gotten so large and wealthy that it can now afford to spend enormous sums of money to dump huge amounts of effort at circumventing its inherent disadvantages. Much of that effort ends up being wastefully spent, of course, but the amount of resources being devoted is such that the fraction of useful work still manages to beat the useful work happening in the open-source world.
It’s sort of like what semiconductor companies do to make cutting-edge chips. They’re so miniaturized that existing techniques can’t make them reliably. It’s not unusual for defect rates to be 90%. Chip makers respond not by refusing to make such chips, but by cranking out chips like crazy, testing thoroughly for defects, throwing the bad ones away, and charging enough for the few good ones that their costs are recovered.
In many ways, we have open source software to thank for making technologies like C# and ASP.NET what they are. Microsoft was a Johnny-come-lately to the Internet. They were pushing their own proprietary networking technology and couldn’t care less about this TCP/IP stuff. So they got bypassed when the World Wide Web turned out to be the “killer app” that made the Internet something that everyone and his Aunt Millie could use. The first wave of Web servers all ran on Unix boxes using open-source software. .NET was designed explicitly to compete with Java, which Sun was giving away for free.
That’s very significant, because it meant Microsoft couldn’t get away with their traditional business model of selling inferior systems software to people who had no experience outside of the PC world. Anyone who was running a web server already knew very well how good open source software could be, because that is what they were running. Microsoft couldn’t get away with the old ignorance strategy this time.
So, where now? In his essay, Raymond writes that it is critical for open-source projects to be able to “recognize good design ideas from others.” Witness the success of Mono, which is creating an open-source clone of Microsoft’s .NET by doing just that.
Of course, if Mono is wildly successful, it will cut into Microsoft’s bottom line, and Microsoft’s directors and shareholders won’t like that. Open-source software luminary Richard Stallman worries about what might happen then. Capitalists can get very mean when their ability to maximize profits is compromised, so it’s not an idle worry.
On the other hand, Mono might never become wildly successful. It might remain a niche product, secure enough in its niche but never becoming dominant. There’s nothing stopping the Rails development community from, say, getting inspired by how nice the ASP.NET suite of controls is and implementing something that is both inspired by its general overall design yet distinctly different enough to be lawsuit-proof. If that happens, there will be no real motive to switch from Rails in the open-source world. And other open-source frameworks could likewise improve themselves. The end state could be an open-source world in which no one framework dominates. In general, the only thing we can say about the future is that we don’t know what is going to happen.
It actually serves Microsoft’s interests for there to be an alternative to its implementation of the Common Language Runtime out there. Microsoft is, by all reasonable measures, a monopoly. No, they don’t have 100% market share, but neither did Standard Oil back when Ida Tarbell was writing The History of the Standard Oil Company. Competition in real world economies is not perfect for a variety of reasons, (there’s always barriers to it of one sort or another) and neither are monopolies.
Microsoft has been sued for antitrust violations before. If they can point to there being compatible alternate implementations of their core product line out there for people to freely choose, then they have the makings of very good defense against future such litigation. Don’t overlook that Microsoft voluntarily chose to publish large parts of .NET as open standards. They were essentially begging someone to what the Mono project is doing.
I’ve finally got access to a web host that allows scripting again, so soon it will be possible to have a real comment feature instead of a page with my e-mail address in a graphic telling you to just send mail yourself.
The university I graduated from has been sending me postcards asking me to call them because they are supposedly in the final stages of preparing an alumni directory and need to be sure that my contact information is correct.
Yeah, right. You’ve been sending card after card to me. Obviously you have my address. None of those cards have come back as undeliverable, so odds are very high that address is just fine.
’Fess up. What you really want is to get my phone number on Caller ID (actually, on 800-number ANI, which cannot be blocked), so you can badger me for donations. This suspicion is only bolstered by there being no web or e-mail address for me to confirm the information at.
No thanks, you can keep me off your sucker list.
That’s my impression on hearing of the latest spat between Venezuela and Colombia.
The center-right government in Colombia has proven itself to be an eager lackey for the United States. The way the Obama Administration backed the coup in Honduras shows that US imperialism in Latin America is not dead, and that Democrat-led administrations are just as guilty of it as are Republican ones. So it could easily be part of a concocted (or mostly-concocted) pretext to unseat Chávez by force.
On the other hand, Chávez himself is hardly a paragon of virtue. He’s amply demonstrated his authoritarian side time and time again. He could well have been caught with his hand in the cookie jar.
One thing to look for in all this is how willing Colombia ends up being to take this case to the International Court of Justice. If they huff and puff but never get around to filing a case, it’s a sign that they know they don’t have much of a case. On the other hand, if they do promptly take their case to The Hague, any resulting verdict is probably not going to make Chávez look good.
Trust nobody in this one.
I thought I had the comments feature working, but there’s some truly bizarre bugs that are mysteriously causing about 90% of messages from the server the comments page is on to vanish. Until that’s fixed, that page is probably going to send your comments into a black hole.
Subject pretty much says it all. The same comments page software as before is running, just hosted in a different place.
It was supposed to be a fancy ASP.NET comment form (complete with captcha to keep the spammers away), but because of some truly bizarre bugs in the Mono class library that cause outgoing emails to mysteriously vanish, that’s on hold for now.
It’s the first serious bug I’ve run across in Mono so far, and given how the problem does not manifest itself when run using Microsoft.NET on Windows, I’m pretty sure that it is a Mono bug.
Update: The new comments page with the captcha on it is now working.
If you really hate something, chances are you are not alone.
In this case the “something” would be Taleo, a personnel-management system that has just about the most atrocious user interface of any web site I have ever had the misfortune of stumbling across.
My archetypal Taleo experience was spending nearly a quarter-hour entering a while sh*tload of mandatory data to apply for a job, over several screens, ending in my email address and a password, only to have all the data rejected because I applied for a job with the same company a year ago and it’s not allowing me to create a “duplicate” login.
I am certainly not alone in this dislike. Turns out there is a blog of one job seeker’s horror stories using (mostly) Taleo sites, and also a page for people to share their impressions of the service (they’re 95% negative, by the way).
Monthly Index for 2010 |
Index of Years