October 25, 2004

In a geek’s perfect world

I’m a geek by trade. If you’re a geek, you read geek news sites, which are rich in controversy and debate. Also, geeks are often times pessimists, conspiracy theorists, “realists”, and are quicker to point out what’s wrong with something before what’s right with something. Many times, they don’t even offer solutions to things they see as problems in the non-technical world, presumably because they feel it would never be implemented anyway, due to some conspiracy theory that was aforementioned. There are reasons for this pessimism. Further, there are many conspiracy theories in the technical world that have been proven correct. Though the things geeks scoff at appear many and varied, they pretty much all boil down to a few things which, if they existed, would pretty much do away with all the debate. Here’s my top ten things that would exist or happen in the perfect world of the geek:

1. Operating systems wouldn’t matter. I could run whatever OS I wanted to, without worrying about hardware or software vendor support, network stack implementation, or the OS vendor’s take on “standards”. Of course, this would also leave most of the vocal geek community bored to tears. If you think hard about all of the ramblings on sites like slashdot, you’ll see that a great many of them would magically disappear if operating systems didn’t matter.

2. File formats wouldn’t matter. I could create a document with any word processor, and open it in any other app. OpenOffice would work with MSOffice would work with Corel would work with Abiword… etc. This goes for audio file formats as well; AAC, OGG, MP3, FLAC, etc., wouldn’t really matter from the standpoint of the application or device that was using it.

3. End users would be forced to have some rudimentary knowledge about being good netizens, and whatever technology they’re using. I’m not talking about understanding Linux ACLs. I’m not talking about understanding how programs are turned into ones and zeros for consumption by the CPU. I’m not even talking about understanding that programs are compiled at all. I’m just talking about simple things like that storing something on disk means it’ll be there when you reboot. Storing in memory means it won’t. Spam that looks like it came from your buddy doesn’t mean it did. Viruses don’t only hurt you. Problems with yahoo.com are not fixable by your local sysadmin. If end users had the slightest clue in the world about how what they do affects the outside world, the world would be a very different place. Of course, the same could be said for driving. Most people are just as oblivious behind the wheel as they are behind a keyboard.

4. Monopolies would not be allowed to make political contributions. I don’t know that there are no laws regarding this, but I’m assuming they don’t since Microsoft/Gates&Co. have reportedly been contributing heavily to the campaigns of both political parties. This seems like a conflict of interest that wouldn’t exist if laws were in place. After all, what’s the easiest way for a monopoly to remain a monopoly? Well, one way is to make a product that, given the alternatives, everyone actually chooses to use. But the other way is to make sure nobody gets in your way. Buy them. If monopolies weren’t allowed to make political contributions, its less likely they’ll use direct money contributions as a means of avoiding accountability for their actions.

5. Marketing departments would be more strictly regulated. You simply should NOT be allowed to market a product unless it actually exists. The practice of marketing “vaporware” can have a chilling effect on innovation and production of competing products. Also, marketing departments would have to make available from their websites documentation backing up anything they’re passing off as fact.

6. Companies that produce research reports for money would be forbidden from receiving funds from companies whose products are involved in the research, or their competitors. For example, neither Microsoft nor IBM should be allowed to commission research from one of these companies regarding anything surrounding Windows vs. Linux. The idea here is to have the monies that pay for the research coming from the end users of the technology, not the marketers. If Morgan Stanley wants a performance comparison of Apache/Linux vs. IIS/Windows, they should commission the research themselves, or form an independent committee made up of like-minded technology users. For example, they could pool funds with others in their vertical market to commission the research.

7. There would be the equivalent of a technology UN. The regular UN is not addressing growing issues which have a profound affect on internet security. In many breaches, the IP address that the attack appears to have come from is not the real source of the attack. Oh no — that would be way to simple; look up the ISP record for the IP address, go get the info from the ISP, bango — arrest the user. Unfortunately, what generally happens is that an attacker in Russia takes over a machine in China, then another in Ecuador, then another in France, then another in Germany, then another in Nigeria, then another in the US, and then attacks a network in the UK. The British firm that’s attacked has damages upwards of a million dollars, and no good way to trace back the path of the packets, because the attacker crossed all kinds of political barriers on his way to the UK. Getting all of the government enforcement agencies all over the world to cooperate and spend their money to work toward recovering money for someone in another country simply doesn’t happen. By the way, this is part of the reason it’s extremely difficult to track down spammers as well.

8. Legislators would have a clue about technology. They currently don’t. I don’t care how you attempt to convince me, you simply cannot convince me that our legislature has any clue about technical issues. Meanwhile, they make legislative decisions that have a dramatic impact on technology and its use. A lack of technology understanding leaves them little to base a decision on. See item number 4.

9. Programmers and system administrators would be licensed or take some form of oath or be held to answer to some minimum standard set forth by programmers, administrators and those who benefit from and understand their work. This would give those workers the right to refuse to do really amazingly stupid things because someone who has absolutely no business demanding such things “said so”. I don’t think anyone really cares if there’s an oath/license or not, but we should have the right to refuse stuff that’s just plain stupid without it costing us our jobs.

10. PDAs would be useful. I threw this one in for kicks. Due to IP woes swirling around e-books and digital music, progress in application development in this area is limited. Due to storage limitations, you can’t get many of these things onto a pda anyway. Due to the screen size, the web browsers are quite close to useless. Due to the form factor of the pda, along with those of devices you’d want to plug into a pda, it can currently only support so many things at once. Due to the doggedly slow advances in battery technology, they also become less useful, and things like wireless networking and watching video, etc., become something of a moot point on pdas because the processing power needed for these apps is power-intensive. There are thousands of other problems with PDAs that have more to do with other technologies. I just lumped them all under this heading because the PDA is the one device that could benefit dramatically and directly from improvements in seemingly all other facets of technology.