Ideas for OpenAttitude essays =============================== (Taken from two emails by Jim. We can prune and rearrange these next; I just wanted the initial commit to preserve all information.) - Why autoconf is more profound than Java (response to environment diversity) - Why Linus Torvalds is wrong about debugging (all debugging is fact-finding, and debuggers let you do it faster) - The missing feature (how extension languages are an underexploited design strategy) - The other missing feature (lisp macros for non-lispers, like Paul Graham's essay) - Why hygienic macros are not the Right Thing in Scheme (nobody understands them; build on introduction to macros in previous article) - Diagram of the week (an amazing diagram of the position of a human mother's nipple in a nursing infant's mouth, from Mothering magazine) - Why [A Certain Unnamed Company] is not the defining technology company of the 21st century (ASP's are; ref Google Mail, Google Maps, Paul Graham's essay) - How DRM, the black market for drugs, and Florida after a hurricane are all the same thing (evolutionary / competitive systems response to damage) - Why Biblical scholars really want version control (an adaptation of your idea for the presentation we gave on Subversion in Toronto; a totally kick-ass idea that has never gotten the audience it deserves) - Why blogs are argumentative (it's the easiest way to find topics) - Satire of a Cooks Illustrated article (not necessarily computer-related; I'll explain over the phone) - FCCFS - the Fast Copy and Compare File System (idea: use Linux filesystem layering to integrate a Subversion- or GIT-like client directly into the filesystem) - Why Subversion, GIT, and Monotone aren't really very different (they're all functional filesystems) - Why Subversion wasn't a changeset system (I couldn't figure out how to implement the repository so it would scale to long histories) - Why there should be an extensible debugger (my spiel about how debugging is the ultimate venue for beneficial creeping featurism) - Why JavaScript is the right language to teach young children - Why Google's hiring process is the way it is (half of Google's schtick is to write software that Actually Scales, and getting things to Actually Scale requires careful algorithmic analysis, which only educated people can do, and careful choice of algorithms, which only people who are willing to survey research can do) (This should go along with the Why [A Certain Unnamed Company] is not the defining technology company of the 21st Century article) - Why Gmail's searching is better than folders (but they don't apply labels retroactively, hmm.) - Why Rob Pike's essay about Operating Systems research being dead means that embedded devices have been the best place to look for interesting ideas. - Why cell phones are so good (they're about getting laid; push JWZ's point about groupware) - Portland article about bottled water (Portland TV segment: even after blind taste tests show that they prefer the taste of tap water to bottled water, one woman in the test group admits (fully conscious of how silly she's being, she wasn't dumb or anything) that she's still going to buy bottled water --- vamp on wanting to know how people actually work, and being tired of thinking about how they ought to work (i.e., what is the best way to think about problem X?)) - Can we all just admit that OSS is the best way to produce programmer's tools (GCC will be the best compiler in the world for general-purpose code in X years) - Hey everybody, let's short MSFT! (Dependence on IP; reckless coding culture) - Samoyed photographs - Why the BBC's science coverage is so utterly sucky, gee, the Wall Street Journal and the NYT do so much better - Let's just get over expecting news sources to be impartial, and instead ask them to be scrupulously honest (your point about old newspapers openly calling themselves the Bumptown Democrat) - Newspapers are doomed, but surely the service they provide (news gathering; muckraking; fact checking) are actually valuable, so what should they become? Some of these I think we could write The Definitive Article on. Others are topics other people have covered, but I don't think we need to be too scrupulous about not throwing our own half-baked thoughts out there. It'll be of interest to our audience (should there actually be one), and we'll inevitably have our own twist on it. I mean, the NYT published an article today about whether children are less well-behaved than they used to be. Really. Meta-ideas (where to find inspiration): - just read as much Joel Spoelsky as we can stand, and pick things to disagree with him about (I don't hate his writing, necessarily, it's just that he often takes positions, which means you can disagree with him) - Go through those "collected genius sayings of Linus Torvalds" essays, and pick things to disagree with him about - Read Slashdot, and pick things to disagree with them about (Hey, I'm beginning to get a sense of why the web log scene has this certain combatative character to it..., hey that's a topic) I should ask Peter Salus if he'd be willing to free that chapter I wrote in his book. Those all came out of my head so fast I was afraid of losing them because I couldn't type fast enough. I hope I don't run dry after a few months. We could space out the more intense ideas with lighter stuff, pace ourselves. - What is the actual difference between Ruby and Python? (Confess up front that it's a stupid idea, but then do it anyway.) - Why I hate GNU Emacs. I have the cred to write this. - Weak references are reversed pointers (story about exception-handling info and section GC in GNU Binutils) - Continuations and all this async crap (serf vs. neon; Subversion streams) - Why schools *should* teach Intelligent Design (and why Pharyngula's PZ Myers is part of the problem, despite his good intentions) - Archeological layering in user interfaces (let's run a shell in emacs in an xterm over VNC!) (Oh, and remember that gnome-terminal is emulating a paper tty.) - Remind everyone that *we're* the free-market advocates, and the proprietary companies are the ones suckling at the teat of mother Government. It'd be nice to wait for a juicy quote from some MS or Oracle suit comparing Free software to communism, and write this as a response. - Why mapmaking is fertile ground for open-source principles. - Paul Graham is awful persuasive that ASP's are the future "The Other Road Ahead", but ASP's concentrate power. From Karl: * Talking with someone recently about software patents, he brought up a conversation he'd had with Whitfield Diffie, in which Diffie said "Well, you know, it was really hard, and I don't know that without the patent protection we'd have put in the effort." (not a real quote, by the way). I think that's a silly argument in the grand scheme of things. Clearly, out of the million slaves in the South before the Civil War, some tiny number (even a hundred, perhaps?) were genuinely happy, and could even be said to be happier as slaves than they would have been any other way. So what? Does that argument justify slavery? Obviously not. But whenever someone responds to the flood of bogus patents by bringing up the "I know this one invention that was really hard and the patent system made it possible" point, they're making the same argument. If we wanted to be quantitative, we'd put in the effort to pick, say, a hundred patents at random (or a hundred software patents), and figure out which ones are "bogus" by our standards. But that's the genius of the system: you need a lot of funding to put in that effort, and those who fight patents don't have the funding. But shouldn't the onus be on those proposing the monopoly to prove that the percentage of otherwise-would-not-have-happened inventions is high? I'll bet it's closer to the slavery ratio :-). As long as we're in an essay about patents, we should also point out the following irony: A big purpose of the patent system was not to spur invention itself, but to force inventors to make their secrets public. In return for a temporary monopoly, you had to write up (and file in a publicly- accessible government office!) a description of exactly how your invention worked. Yet today, patents are having the opposite effect: because computer hardware manufacturers making anything more complicated than a mousetrap are stepping through a minefield of potential patent infringments, many dare not even publish APIs, because that would make it significantly easier for their competitors to spot infringements (this happens with video cards, for example). Meanwhile, consider the poster child for the patent system: big pharma. Richard Epstein calls that industry the one argument any patent reformer has to deal with. Well, notice that we already have an entirely separate mechanism for forcing pharmaceutical companies to divulge their formulas: the FDA! No drug can be marketed in the U.S.A. without its exact composition being published, along with various test results. And the patent system has nothing to do with this. So drug researchers couldn't keep their formulas secret, even if patents didn't exist. The only remaining question is whether they would be able to fund new drug research... Here I wish I had a Ford Foundation grant and a lot of expertise. Someone needs to look at, say, the top 5 most medically important drugs (in terms of lives saved) in the last 10 years, and see how much government funding or philanthropic funding was involved in their creation. * Already wrote it, but http://www.copyrightmyths.org/node/4 would have been a perfect OpenAttitude essay. It could stand some improvement, though. Maybe an expanded or differently emphasized version would be worthwhile? * This story about Oracle's acquisition of Sleepycat gets it all wrong, in a way that is very typical of mainstream tech press coverage of open-source stuff, and a deconstruction would be nice: http://www.businessweek.com/technology/content/feb2006/tc20060209_810527.htm For example: "Oracle is in talks to buy at least three open-source software companies in deals that could be valued at more than $600 million, BusinessWeek Online has learned. The transactions would extend the 18-month, $18 billion spending spree by Oracle Chief Executive Larry Ellison that has engulfed PeopleSoft and Siebel Systems. They would also put Oracle in control of some of the most sought-after open-source projects. Overnight, Redwood Shores (Calif.)-based Oracle would rival IBM (IBM) as the prime evangelist of a movement that's revolutionizing how software is developed and distributed (see BW Online, 2/6/06, 'Open Source's New Frontiers'). [...] Still, it's a gutsy strategy. Open-source alternatives can be up to 90% cheaper than other software, and that could feel threatening to Oracle employees peddling databases and middleware in the traditional manner. Oracle could be setting up a culture clash the likes of which it has never seen. And as always, a software company's biggest assets are typically its engineers. If they head for the door, Oracle is just buying code and -- in the case of JBoss -- a customer base that's largely getting a free ride. Another unknown is how the deals will sit with the vast open-source community. Technologies like PHP and JBoss are key ingredients in the bulk of open-source deployments, and if these deals go through they'll be in the hands of a large traditional software player. Selling the open-source community on Ellison's plan might prove just as hard as selling it to Wall Street." The talk about "control" shows a basic lack of understanding about what Oracle has really acquired. I don't know where the "up to 90%" cheaper came from. It can be up to epsilon cheaper, obviously. The comments about the community sound like someone who isn't really familiar with this world, just repeating things he's heard others say.