21 August 2008

C++0x

There is massive confusion about C++0x. I've heard the name made fun of no less than five times in the last couple days, most recently in a blog post that spends a good half page mocking the possible pronunciations. On a side note, I recommend not reading that blog post, it's rather impressively packed full of ignorance. I made a joke about the name on Reddit and realized from the subsequent comments that people seriously think the standards' name is going to be C++0x. "0x" is supposed to be the ratification year -- "x" is not going to stay there. If it gets ratified in 2009 like they expect, the standard will be called C++09. This is not in any way new. C had C89 and C99, released in 1989 and 1999, and they're working on C1x (OMG AN X; how will we pronounce it?). C++ had C++98 and C++03, released in 1998 and 2003, and they're working on C++0x. Just like how we don't clarify C89 or C99 unless it's necessary (we just say "C"), we're not going to be saying "C++09"; we'll be saying "C++". C++0x is not a "new language", it's a new standard for the existing C++ language.

16 August 2008

Linux isn't for everyone

I've wanted to write this entry for ages, but I keep forgetting. Fortunately, there's plenty of people on the Internet that helpfully remind me. There's a massive misconception about why people should adopt Linux, and I see it over and over again (because I still read Digg comments; the drama is just too enticing). Quotes like this pretty much sum up the problem:

people want an OS that works OUT OF THE BOX - they don't want to tweak with the kernel ... and no flavor of Linux is getting that done properly.

NO. "they don't want to tweak with the kernel" is 100% wrong, and that is the issue. The inevitable banal response to this is somebody saying "Ubuntu means you don't have to mess with the kernel", which is completely the wrong tack to take. The right answer is "If you want things to work out of the box and you don't like fiddling, Linux is not for you". "I just want it to work" is not the attitude of somebody that should be using Linux, that's not what it's for. Yes, it is entirely possible for things to work out of the box on Linux, and Ubuntu is very good at that, but what's the point? You might as well use Windows, you're not getting the main benefit of Linux: infinite flexibility. You can make arguments for security and reliability, but obviously Windows users (or at least the 87 that dugg up that comment anyway) don't particularly care, or have no issue with Windows in those areas.

I understand the Linux community's desire to convert people to Linux: the more people that use Linux, the more supported it has to be by hardware and software companies. But harrassing every Windows user you find and telling them they should be using Linux if they know what's good for them is nonsense. Linux is not for everyone; it really isn't for most people, since most people are fine with the default configuration of everything and don't particularly need it to change. Leave those people alone and stop getting in arguments with them; if at any point in a Windows/Linux argument the Windows person says "I just want it to work", just let it go -- they'll be happier with Windows

11 August 2008

Reddit power




Apparently I should get reddited more:





Sadly, that now makes the handful of visits I had before look like 0 on the graph, but oh well. I actually posted that entry on a comment to another post, but apparently somebody reposted it as a story. A surprising number of people agreed with me considering I think it's a minority opinion, but there were plenty that disagreed too. And my anti-Windows thing at the end got interpreted backwards, which lead to confusion: I was saying that Pidgin, as an open source project, should be avoiding the very things that tend to drive people away from Windows. The main reason I love Linux is I can customize whatever I want, effortlessly; Windows is far less flexible. Trillian is an example of an unusually flexible Windows program, which is the very reason I used it, but with Linux it's no longer the exception to find a program that lets me configure it the way I want

EDIT: Apparently I should've waited before taking that screenshot:

09 August 2008

DNS flaw released without warning

I think the Kaminsky DNS vulnerability news was big enough that non-tech people heard about it, so hopefully everyone here knows what I'm talking about; if not, it doesn't really matter. There was a serious DNS vulnerability that Dan Kaminsky discovered this year. Ignoring the temptation to hack the entire Internet, he worked with DNS vendors to patch their nameservers; there's a fairly cool video that shows a map of the world over time colored to show if servers are patched or not:



The details of how the exploit worked weren't actually supposed to come out until his black hat presentation a few days ago, but they leaked a week or so early. Nonetheless, watch the clip above and look at how many servers were patched by the time the details came out in late July

Then some Russian guy discovered that the fix isn't completely effective, although it does make poisoning take way longer. Did he quietly share the news with DNS vendors and try to work out a fix? Hell no, not only did he post the story on his blog, he helpfully included exploit code with it, because having to write your own might slow down attackers for a few hours

I understand the desire to release the news as soon as possible; Kaminsky is pretty much the most famous security researcher in the world at the moment, but what the hell? Now the New York Times has picked it up, so anybody with a couple good computers and a few hours on their hands can try poisoning a nameserver just for fun.

05 August 2008

Now I Can Manipulate Pictures in 3D

So I'm told there's this new interface that resembles the thing from Minority Report. For those too terribly sheltered to have seen Minority Report:




That part isn't particularly good, but I can't find the clip I like. You get the idea anyway. I don't expect the example for the real interface to be Tom Cruise solving future crimes, but I really hoped it would be something, anything, besides this:



Why?! Why is it always the freaking picture twiddling? It was the same thing with the damn giant table, is that all multitouch interfaces are good for?

Firefox Password Fail

What happened with Firefox remembering passwords? Around the middle of July I suddenly noticed Firefox wasn't remembering passwords anymore. It still had them all in the saved passwords list (I think -- it doesn't anymore), and I still had it set to remember them, but it wouldn't auto-fill forms anymore and it didn't offer to remember new passwords. Oddly, this happened to both my home and work machines. My work machine runs Windows XP and Firefox 3, while my home machine runs Gentoo and Firefox 2, so it's fairly odd that both broke at the same time. I finally got around to searching for a fix today, and found a bunch of posts with the same problem:

All these people posted right around the same time, the middle of July. It seems Firefox simultaneously broke for a whole bunch of different people, and as far as I can tell nobody knows why; I'm not even sure if people have noticed the connection or not. The fix seems to be deleting the password cache so it can start over, but I haven't heard any explanation for what actually happened

04 August 2008

McCain lies? No!

So this might seem to be somewhat at odds with my last post, but I just couldn't resist posting it. I'm not actually surprised by any of this, but maybe Republicans will be, since every time Obama varies his position in the slightest they go nuts. This guy took the time to make a massive list of all the lies McCain has told. And not small stuff like Obama's generally are, these are complete reversals on virtually every position he's ever had, including the same things Republicans attack Obama about. Technically these aren't "lies", they're more like flip-flops, but I'm more than willing to adopt Republican rhetoric in this case. Next time a Republican whines that Obama changed his position on something, direct them to this list

27 July 2008

Politicians lie? No!

I've been bleeding my RSS feeds dry recently, which means I'm forced to read the bottom of the barrel:



80% of Digg articles are about the same thing: some politician said something that makes people sad. Usually, said politician is on record saying the opposite thing sometime in the past. Diggers are shocked, hurt, betrayed, etc. Diggers will never vote for said politician ever. Unfortunately, every politician is in the category of politicians that can never be voted for, which puts us in a predicament (if we listen to Diggers, anyway).

This just in: All politicians lie an alarming percentage of the time. They have to, or they'd never get elected to anything. Too many voters have positions that are deal-breakers, so if a politician has solid positions on everything a majority of people will disagree with one of them, and they're screwed. Not to say politicians don't have standings on these issues; of course they do. They just have to make sure you don't know about them. This either means they have to dance around things they know will alienate voters (that is, everything), or they need to change their position depending on who they're talking to. Unfortunately, with the Internet this no longer works, because now we know that the things they told people on the other end of the country aren't the same things they're telling us, but that doesn't stop them from doing it over and over again.

Yes, it would be awesome if we could elect politicians who didn't lie to us on a regular basis, but there are so many issues that America is divided on that it can't happen anymore. Stop being surprised when it turns out a politician lied about something.

04 July 2008

Harriet Jones uses Saitek

In the first part of the Doctor Who finale (which, for the record, was excellent), Harriet Jones is controlling the subwave network from her house:



I do believe that's a Saitek Eclipse she's typing on. Nice choice, if I do say so myself, and high five for good product placement. And since the subwave network got the Doctor to Earth, Saitek pretty much saved the world

I am uncreative

I was halfway through a blog post about Haskell when I suddenly realized the blog's name is "Things that amuse me". So apparently my blog title is thoroughly uncreative; if I recall correctly, my title was originally going to be exactly that, but I added the "or depress" when I realized many of my posts would probably be things that are bad. Maybe I'll rename my blog, if I can think of anything else

03 July 2008

Viacom vs Google

There's a fairly unbelievable ridiculous stunning typical case going through the courts right now. I saw it mentioned on other sites, but they focused on the vast privacy violations and generally sidelined the other impressively absurd parts of the lawsuit. Somehow Viacom has gotten it into its head that people occasionally post copyrighted videos on Youtube (Lies!). I read through the filing, it's impressive. For example in (4):

YouTube itself publicly performs the infringing videos on the YouTube site . . . It is YouTube that knowingly reproduces and publicly performs the copyrighted works

This is somewhat clever, and practically ubiquitous in these cases: abusing pre-Internet laws. When they say YouTube "performs the copyrighted works", we all know perfectly well what they mean: YouTube sits there while people stream off them. It's like saying my SMTP server performs recitations of my e-mails as I send them. Obviously that law was meant to forbid me setting up a projector and selling people tickets to watch videos I've bought, that's what "performing" a copyrighted work is. In case there's any doubt, they just come out and say it in (31):

YouTube then publicly performs the chosen video by sending streaming video content from YouTube's servers to the user's computer

Then Viacom complains because they're lazy (6):

it has decided to shift the burden entirely onto copyright owners to monitor the YouTube site on a daily or hourly basis to detect infringing videos and send notices to YouTube demanding that it "take down" the infringing works

Unbelievable, Google. What makes you think you can possibly shift the burden entirely onto copyright owners? Actually, they probably think that because of the DMCA. Yes, I was shocked too, but the DMCA actually does have a section buried in the middle entitled "Limitations on liability relating to material online". And in section 512, subsection d, bullet 3 (actually, pretty much every subsection of 512 is identical, this thing is absurdly redundant) it states that YouTube needs to, "upon notification of claimed infringement as described in subsection (c)(3), respond[] expeditiously to remove, or disable access to, the material that is claimed to be infringing". DMCA: fighting for the people.

The next couple pages is the always impressively boring plaintiff exposition, but in skimming it I noticed something that made me smile: they list some of the videos they disseminate online themselves, including:

"SpongeBob SquarePants," and "Dora the Explorer," among others, from Nickelodeon; and "Beavis and Butthead," "Laguna Beach," and "Jackass", among others, from MTV

I would love nothing more than to hear a $500/hour lawyer expounding about how Viacom has willingly given Dora the Explorer and Laguna Beach to the masses

And while Viacom demands catholicons for their problems (can you have more than one? oh well), I can understand their annoyance. But then I found the latest filing from yesterday, which actually manages to top the aforementioned bitching (legal term). This is the one where the judge responds to Viacom's demands, so it's a nice concise summary of what Viacom wants. For example, the logs of everything everyone has done on YouTube ever ("all data from the Logging database concerning each time a YouTube video has been viewed"). This is obviously crazy, except as the wired article points out, it was granted. Viacom and Google probably stared at the ruling with identical slack-jawed amazement. Viacom claims that this isn't a privacy violation, because (quoting a Google blog post) "an IP address without additional information cannot [identify you]". Technically true, although the "additional information" required is really just the date/time you were using it; that's sufficient for an ISP to pinpoint who was using it. And since the data Viacom is demanding includes "the time when the user started to watch the video", this claim is specious. But other site have already talked about that, this is the epic one:

The computer source code which controls both the YouTube.com search function and Google's internet search tool "Google.com"

...right. Viacom knows perfectly well it'll be a cold day in hell before Google gives them the source code to their search engine, so I'm not sure what their angle is here; maybe it's the patent insanity that's lead other sites to ignore this. I purport that Microsoft has intentionally rigged Windows to blue-screen periodically; can I have the source code now? But wait, they're not done yet:

Defendants have purposefully designed or modified the tool to facilitate the location of infringing content

They're not kidding, they claim Google has modified their search engine to intentionally favor copyrighted data. They've apparently forgotten about their earlier filing, when they accosted Google for doing the opposite:

YouTube has also implemented features that prevent copyright owners from finding infringing videos by searching the Youtube site. YouTube thereby hinders Plaintiffs' attempts to locate infringing videos to protect their rights

So either Google is intentionally helping people find copyrighted videos, or they're intentionally thwarting it -- either way, Viacom is pissed off. It's a bold move claiming that Google is making it harder for them to find copyrighted data by taking it down. Not that this thwarting has actually slowed Viacom down (3):

Plaintiffs have identified more than 150,000 unauthorized clips of their copyrighted programming on YouTube

Way to get around that Google blocking, Viacom. You showed 'em. Here's the judge's actual signature on the order to "compel production of all data from the Logging database", just so you can see it :):



BLAME! E-mail that guy and tell him he should learn how computers work before he makes rulings

EDIT: Wow. Speaking of abusing pre-Internet laws, it's like the government saw this post and wanted to show just how far it can go: a woman was charged with violating the Computer Fraud and Abuse act because she signed up for MySpace with a fake name. Viacom sounds downright competent now

01 July 2008

Heck yes it's Web 2.0

Awhile ago, Digg decided to Web 2.0-ify their site. Which I'm cool with, yay for the future and all. So now when you look at a story, the comments aren't included in the initial request, they're loaded via AJAX right after. Annoying but theoretically faster if there are enough comments on the story. What's actually cool is subthreads aren't loaded, just the initial comment tree; comments on comments are loaded as requested. Even digging and commenting is AJAXified...as long as you're logged in. If you're not, you get this:



Is this AJAX? Hell no it's not, to login you have to go to another page, which means all the progress you've made on your current page (which can be considerable since the rest of it is AJAX) is now lost; you have to start over. And it doesn't check to see if you're logged in at click-time like a real AJAX application, it's hard-coded into the link at load-time, so if you open a bunch of different Digg stories and then try to login, you need to reload all of them. Nicely done Digg. At least I've stopped getting a dialog saying I can't digg stories I've left open for too long, it only took them like a year to fix that one

25 June 2008

Flippable e-books

I found a video about a dual-display e-book reader, which sounded like an interesting idea. And then I watched it:



...huh? They apparently seriously believe that pressing buttons to switch pages is a lot of work for users, and it's much easier to either manually simulate a page flip, or to actually flip the entire device over. I think they must be joking or intentionally lying, because anybody that actually used that device for more than 5 minutes would be so tired of either one of those actions they'd be begging for navigation buttons.

Worse is the "thumbnail" technology used for searching the entire text. The thing I hate most about physical books is it's hard to find a phrase I remember reading if I don't remember where it was. Never in my life have I needed to search through an e-book and thought "well, I can just use the find feature, but I sure miss being able to riffle through the pages hoping to stumble across what I want instead". The thumbnails are so absurdly small as to be useless, especially in a document with no pictures. Next they'll be telling us we should organize our photos on a giant digital table. I don't know how the trend of making digital devices that simulate analog devices and their flaws got started, but it should probably stop soon

21 June 2008

Product placement

I never really understood why companies spend so much money on product placement. I've never stood in a store thinking "Well, I need X. What kind of X does Jack Bauer use?" (obviously if I were to think this, Jack Bauer would be the role model). I figured maybe it was just a subconscious thing, where people choose things they've seen on TV because they vaguely remember hearing of them, but then I found this

hey i was watching Psych and they mentioned something called Kangaroo Paste. What is it? & Where could I buy it?

Bravo, Psych. By having Shawn mention for 10 seconds that he wants a fictional item, you've convinced somebody they want it, without knowing anything about it since it isn't real. I'm much more impressed with marketing people right now

EDIT: Also the verticoli hair brush

20 June 2008

Now I've got you

I'm having an interesting problem with Firefox 3: I'm unable to close my blog. Once I go to my main blog page, I can't close the tab or navigate away from the page, or Firefox segfaults. I like to hope all my readers have this problem, because then it's like a feature of my blog, but I expect not. I tried disabling Flash and all my extensions to no avail; I suspect the problem is one of the other media plugins, like Totem for playing audio clips. On the rare chance that somebody else is having this problem, let me know

18 June 2008

Open Reddit

I'm a big fan of Reddit, particularly the programming subreddit, so I was excited to see that yesterday reddit went open source. I got a copy of the code and started poking around; I never realized that Reddit is written in Python, which automatically makes it good. I also hate the Reddit developers less now; they've had a problem for months now with their RSS feeds showing duplicate entries, and have thus far claimed they have no idea what's wrong. I don't know Pylons (the framework Reddit uses), but after my initial poking around I too have no idea what's wrong, so for the moment they're not idiots anymore, although I plan to look into it further. A comment calling something a hack appears 8 times in their code, which is fairly respectable; I particularly enjoyed this comment I noticed in /r2/r2/config/middleware.py:

#god this shit is disorganized and confusing

17 June 2008

Linux Journal's Captcha

I forgot to post about this in my last article, I was too focused on my rockbox love. Linux Journal has a very unique captcha. Admittedly, the standard find-the-characters-in-the-distorted-image one can be difficult:



However, Linux Journal's solution is probably not the best. It's a particular annoyance because they require you to preview your comment before posting, which loads a new page, and they don't auto-fill/skip the captcha, so even if you fill out all the fields right you have to do at least two captchas. But that's not the problem, I can live with that, the problem is the captcha is a math question. And because (see myspace.com for corroboration) most people on the internet are stupid, they ask you a low number addition problem. Now, computers may suck at complicated OCR, but one thing they've pretty much got down is addition of single digit numbers.

For an amusing proof of concept, here's a greasemonkey script that will automatically fill in the captcha on any Linux Journal comment page:


// LJ-Captcha
//
// ==UserScript==
// @name LJ-Captcha
// @description Auto-fills the Linux Journal captcha
// @include http://www.linuxjournal.com/comment/reply/*
// ==/UserScript==

nodes = document.getElementsByTagName('span');
for(i in nodes) {
if(nodes[i].className == 'field-prefix') {
mathExpr = nodes[i].innerHTML;
mathRe = /([0-9]+) \+ ([0-9]+) \= /;

first = parseInt(mathExpr.replace(mathRe, "$1"), 10);
second = parseInt(mathExpr.replace(mathRe, "$2"), 10);

document.getElementById('edit-captcha-response').value=(first+second);
}
}

Rockbox > Linux Journal

I'm starting to wonder if Linux Journal is like The Onion for Linux. Every article I have ever read on that site (so like 3) has at some point made me stop and wonder if it's just a big joke. But they went too far when they did a video about Rockbox. Now Rockbox is pretty much amazing. It's an alternate firmware for MP3 players, and I've used it on mine since about 20 seconds after I got it. It has a million features and is in general better than whatever firmware you're using, in every possible way. Here is what the 6 minute video Linux Journal did on it consists of:

  • First two minutes -- Talking about how he attempted to install Rockbox on an iPod Nano v3, iPod Nano v2, and Toshiba Gigabeat u, the last of which he actually went to the store to buy just for this video. As he discovered through totally unnecessary trial and error, Rockbox does not support any of these; ironically, it does support these devices, just not these particular versions. You can feel free to go through the same trial and error with your device, or you could just check the compatibility list helpfully offered on rockbox.org

  • Next two minutes -- Playing DOOM

  • Next minute -- Showing "demos" like plasma and fire. At one point he mentions for a few seconds that you can play music

  • Last minute -- Advertisement for GoGrid. Seriously



At the very end he mentions that it can play music, but doesn't actually show it. I'm starting to suspect that maybe this was meant to dissuade people from using rockbox by covertly making it look terrible. He demos it on an ancient, monochrome iPod that he has to have plugged in because it has no battery strength anymore; he mentions several times what a terrible player it is. Super choice there. And then he spends half the time rambling about the players it doesn't support, the problems his ignorance has caused, and how neat GoGrid is.

I posted this as a comment on the video, but apparently they didn't feel it warranted approval: Despite what the video portrays, Rockbox is fantastic. It's not nearly as ugly as it looks in the video; that player blows and he's using an ancient rockbox version, there's a whole bunch of different themes, like:


Everybody who has a supported player go try Rockbox, you'll love it

Crypto-virus, oh noes!

I keep seeing articles on this, and I've even commented on a couple, but I haven't actually mentioned it on here: I don't get the gpcode thing. I'm not exactly old; I'm certainly younger than the people writing these articles about the coming malware armageddon, but this is not exactly unprecedented. There was a virus in the 80s (I can't find the name anywhere now) that copied your FAT to RAM and wiped the main copy, then made you play a slot machine type game to try and win your files back. Sure, not extorting money out of you, but that's only because they lacked the highly networked computers of today necessary. This was 20 years ago, so I don't know why everyone is so shocked by this revolutionary virus. Forget the slot machine virus, I remember before malware was the cool thing to write when viruses actually deleted stuff. None of this encryption, "pay us and you can get everything back" nonsense, and certainly no attempts to be stealthy so they can live on your machine for years sending spam e-mails -- they deleted everything they could find as fast as possible and then laughed at you about it. Why is a virus that encrypts some of your files worse than a virus that deletes all of them?

On an amusing side-note, if you use openoffice instead of office, tar/gzip instead of winzip/winrar, and png files instead of jpgs (none of which are at all unreasonable, my Vista machine does all three), you're practically immune to this virus, it doesn't check for any of those extensions at all.

Firefox 3

I'm told Firefox 3 just launched a few minutes ago. I'm not really sure if it did or not since its Mozilla's whole website is down hardcore, but I guess that's probably a good sign. World record FTW

EDIT: Hey, it works. Most of Mozilla.org is still down, but they must have done some sort of load balancing on just the Firefox download part, so that's working perfectly. I thought I'd post how to patch extensions to work with Firefox 3, as most of mine are apparently written by authors too lazy to do so themselves. Most places will tell you to use the nightly tester tools; this works too, I've used it before, but sadly Firefox's add-ons page is down so I can't download it at the moment. I've also seen instructions on how to patch the XPIs, but there's no need to do that if you already have them installed; this is how you manually patch add-ons that you already had on Firefox 2. Obviously these add-ons haven't been tested under Firefox 3 or their authors probably would've updated them, so there's a chance things will break when you do this:

  1. Open your extensions folder. On Linux it's at ~/.mozilla/firefox/(your profile)/extensions; on Windows, C:\Documents and Settings\(your username)\Application Data\Mozilla\Firefox\Profiles\(your profile)\extensions

  2. Each plugin is in it's own folder, named with a hexadecimal UUID. Open the first one and open it's resource descriptor, install.rdf. It's plain text, so any editor will do (read: use emacs)

  3. Somewhere under em:targetApplication you'll find em:maxVersion. If it's 2. something, change it to 3.0.*

  4. Repeat this procedure for every extension folder

  5. Move all the folders you changed (or all of them, it doesn't matter) to some temporary location

  6. Restart Firefox; your add-on list should be empty now

  7. Move all the folders back to your extensions folder

  8. Restart Firefox again; the add-on window should automatically open to alert you it has detected new extensions. All your extensions should be listed as before, but enabled now


Screenshot from an XP machine:

14 June 2008

Holy crap, people do have rights

Somehow I missed hearing about this for two days, but apparently the Supreme Court essentially overturned the Military Commissions Act. I practically fell out of my chair when I saw, I was under the impression we stopped caring about rights approximately the moment we elected a Republican President. The oral arguments are actually pretty interesting.

On page 31, Ginsberg says "in every practical respect, Guantanamo Bay is U.S. territory", which is one of those things the government tries to skirt. It's thoroughly enjoyable because unlike the typical forums you see these people at (press conferences, etc.) where they can just ignore questions they don't like, the justices don't let them dodge stuff; Souter in particular doesn't put up with their shit. Clement spends a good deal of time dancing around whether or not Guantanamo prisoners are "prisoners of war" or not; they obviously are, but the government has declared pretty emphatically that they're not so we can avoid the Geneva Conventions. Scalia -- and my approval of this one phrase shouldn't be taken to mean I in any way like any decision he's ever made -- says on page 49 "if we had to either charge or release these people, what would they be charged with? Waging war against the United States? Is there a statute that prevents non-citizens from waging war against the United States and provides criminal penalties?", to which Clement brilliantly responded "Not as such". I thought this was excellent, since he's essentially saying these people have broken no laws, and yet they're somehow still not prisoners of war; they're in that fun gray area where we can do whatever we want.

Ultimately this whole argument hinged around the idea of CSRTs. Before this decision, inmates got to go before a "Combatant Status Review Tribunal", which was a sort of laughable affair where officers decided if an inmate was an enemy combatant or not. While they're doing that, the inmate doesn't get a lawyer, doesn't get to see the evidence against him and really doesn't get to do much of anything. Most of the time if the inmate manages to win (i.e. are declared to be a non-combatant), another CSRT is convened so the officers get to decide again. Waxman's explanation of why this whole concept blows is good, starting on page 72. Breyer says it pretty succinctly on page 61: "it has been six years, and habeas is supposed to be speedy."

Kennedy, who wrote the majority opinion, had one of the better quotes I've seen come out of this court: "To hold that the political branches may switch the Constitution on or off at will would lead to a regime in which they, not this court, say ‘what the law is,’"

Too true. And what did McCain have to say? "I think it's one of the worst decisions in history"

Please, sir, can I have another?

I hate religion, but I make an effort to avoid all-out religion-bashing on my blog since I know religious people (although there are exceptions to this rule). However, this drives me crazy. I've seen it a thousand times, and it seems like the most obvious self-deluding nonsense, but again and again I see it. This woman was falsely accused of stealing some cop's gun, and spent 10 months in jail. She sued the city when she got out and won $7.7 million dollars. Her reaction:

"I'm going to go home and lie down for a little bit," an ecstatic Jackson, 41, said after the verdict. "I feel relieved. I'm happy, and I'm thanking God."

Why? Why are you thanking God? Why aren't you pissed off that God made you spend 10 months in jail, that part isn't God's fault? But it's God's doing that you got $7.7 million. God has a pretty good deal going here; he controls everything, gets to take credit for all the good stuff, but doesn't get blamed for bad things. The ultimate religious explanation for why bad stuff happens to religious people is that God gives the greatest tests to those he loves the most. Really? That sounds like a damn fine reason to not be on God's good side, maybe then I won't get thrown in jail for 10 months as part of some sadistic test. God reminds me eerily of a mafia don, and religious people are mafiosi trying to stay on his good side. When bad things happen, the don tends to punish those closest to him, so it's a lot more risky being there than being some random guy he's never heard of. But they stay there anyway, because either they hope they're going to get rewarded someday, they don't realize there's no reason to put up with it, or they're too scared to death to leave. God is Yakavetta, and theists are Rocco

And now it's all too clear why the concept of hell exists in religion, because without hell there would be no reason to put up with God's shit

EDIT: My girlfriend just sent me NeedGod.com; I recommend everyone check it out. It tells you, surprisingly, why you need God. At one point it asked me, "Does the fact that you're headed for Hell concern you?", and when I responded that it did not it exclaimed "It should concern you". Why?

Perhaps you feel safe because you don't believe in Hell. This can be likened to standing in the middle of a busy highway and shouting "I don't believe in trucks!" . . . God has given us HIS WORD on the existence and purpose of Hell...

OH. My bad. I didn't realize God has given us HIS WORD on the subject, what was I thinking. And not to nitpick or anything, but in the highway example, you can see the trucks

08 June 2008

Arguing with users over what they want

I wrote a whole bunch of this a long time ago when I stumbled across the debate that resulted in the FunPidgin (apparently now Carrier) fork of Pidgin. As their website puts it, "Unlike the Pidgin developers, we believe the user should have the final say in what goes into the program."

If you've missed this whole debate (likely even if you use Pidgin), it started with this bug report for Pidgin. The problem was stunningly simple: in the new version of Pidgin, the input text area automatically resizes itself. This is fancy and neat, but it also can't be sized larger than about 4 lines of text, which makes a lot of people sad, and some people find the auto-resizing jarring and unpleasant. This massive support ticket is basically a huge argument between the users and the developers about whether users want this feature or not. Seriously, a whole group of users telling the developers they want something, and the developers telling them they're in some way addled and don't really want it at all.

If your users want a feature, unless it's too difficult or time-consuming to write, you should add it. Your users shouldn't have to defend or justify why they need something, that's ridiculous; if they say they need it, they need it, and developers saying "no, you really don't want that" is absurd. Users have better things to do than sit on your bug tracker begging for you to implement something you've already written; obviously they want this feature.

I've always been of the opinion that if users want two competing ways of doing something it should be an option, which I know isn't a universally accepted view -- I might go so far as to say it's the minority view. I like the ability to customize how my programs work, since usually I don't like the defaults. Trillian was spectacular at this, and it's still my favorite IM client of all the ones I've tried; every single time I disliked something there was a preference to change exactly that. The pidgin developers do not believe this; they state repeatedly that they want a "better" (they frequently put the quotes around it too, like they're mocking themselves) solution than adding a preference. That's great and all, but either find one or give us the choice back. There might be a better solution than adding a preference, but adding a preference is still a better solution than telling a section of your userbase to go fuck themselves. The developers even mock the users in some of the posts, asking why they're not clever enough to write a plugin to do this. Is this supposed to be some sort of battle between developers and users, where developers change something and then taunt the users to try and change it back? I know lots of users don't like preferences; personally, I don't know why they can't just ignore them them, but apparently the mere fact that options exist bothers them in some way. Nonetheless, the users saying that they want an option and the developers telling the users that the users don't want an option is so obviously ridiculous that I can't believe this is still going on.

This quote was particularly amusing; it makes me think maybe the developers are missing the point completely: "it proved to be impossible to get both manual sizing and automatic resizing to work at the same time". Really? That's like saying "well, we tried to let the user set the size manually, but that damn automatic sizing kept automatically sizing". Obviously they can't work together, it has to be one or the other. Almost like it should be the user's choice. Like some sort of "preference" or something. They should have a dialog for those. I loved this solution: "What if manual sizing is disabled when automatic sizing is enabled?" Maybe it's just that this seems way more obvious to me than it apparently is to other people if this was actually considered ground-breaking enough to post, so I'll lay out my fairly brilliant solution to this problem in hopes of merging: Have an "automatic input resizing" checkbox. When it's checked, the input box auto-resizes. Manual resizing does not work. When it's unchecked, the box can be manually resized. Auto-resizing does not work. If anyone needs further clarification, I will send them a truth table

I dislike the notion that developers need to protect the silly users from themselves and not give them an option that deep down the developers are confident users really don't want. This is very much a Windows point of view.

29 May 2008

Mass Effect

So there I was, reading the wikipedia article on Mass Effect -- because I'm sad and lonely -- when I notice the PC release date is May 28th, 2008. I then notice that today is May 29th, 2008. After several moments of pondering, I conclude that Mass Effect has been released for the PC. And yet I do not have it. Because I am poor.



....somebody buy me Mass Effect please.

22 May 2008

Portal on Wine

I figured I'd post about a problem I had running Portal under WINE, since I couldn't find it posted anywhere. I dare you to try and solve this just from the symptoms:

  • Quicksave works fine, but quickload goes to a black screen and sits there

  • When a new level loads, you start outside the level and immediately begin falling to your death

  • Video settings are saved when the game is restarted, but key bindings are lost


Give up? I had no idea what the problem was, since by all accounts Portal works great under WINE, including on a friend's machine. I was fully prepared to blame Steam, which thoroughly hates me, but then I discovered the problem by accident when I had the developer's console open: there were a series of error messages about quicksave failing everytime I tried it. It turns out permissions had changed when I remounted a partition: I was running Portal without permission to write to its folder. This means quicksave can't work, and for some unknown reason quicksave fails silently (excluding the developer console output; the screen itself reports "Saved" whether it worked or not). You get the same black screen if you try to quickload without having any quicksave; apparently it doesn't check to make sure you have a save before trying to load it. The permission problem also means keybindings can't be saved in the configuration file; video settings are stored to the WINE registry, so they were fine. I have no explanation for the problem with starting outside the level, but changing the ownership on the portal directory fixed all the problems listed above, including this one. I suspect you would have the same problems under Windows if you ran as a limited user, but I'm not sure.

20 May 2008

Random Fail

I just found a fairly amusing/depressing (depending on what OS you're using) article about how Windows sucks at generating random numbers. First, we might as well all take a moment to laugh at Debian, as has become the custom every time random number generation is mentioned:



Now that that's out of the way. It appears Windows too fails at randomness, and the test of it is actually really simple. The author of the source article wrote a short PHP script that sets each pixel of a generated image based on the results from the rand() function. Since PHP uses the system libraries for this, it's equivalent to testing the OS. I ran his script on two of my machines, one running LAMP and one WAMP. Guess which is which:





The worst part, and I'm not really clear if this is a PHP problem or Windows, is the image doesn't change under Windows. PHP is supposed to auto-seed the RNG (somehow), but on Windows the image doesn't change unless I add an explicit call to srand(). This doesn't fix the problem, but at least then I get different non-random images. I considered writing "Random Fail" over the one image, but I like the glaring wrongness by itself.

And this is one of the big differences between Windows and Linux. When the OpenSSH vulnerability came out -- and it really depresses me that it took 2 years for somebody to notice, especially with sites like GitHub noticing multiple users with the same SSH key. But anyway, when the OpenSSH vulnerability came out, I got about 6 updates over the next 24 hours, presumably 1 to fix the problem and 5 more to convince me they were sorry. I'm fairly sure this problem will never be fixed (I ran the WAMP test on Vista).

EDIT: There's a nice in-depth exploration of this on Codifies that looked through PHP's source code and determined this is actually PHP's fault, not Windows'. Nonetheless, I maintain that the above paragraph would be true if this were Windows' fault.

11 May 2008

Jack Thompson makes me smile

I love Jack Thompson. Well, no, I detest Jack Thompson, but he does amuse me in ways few people can. A few weeks ago he apparently sent a letter to Strauss Zelnick's mother. Zelnick is the chairman of Take-Two, who make games like GTA that taught me killing cops and hookers is cool. In the letter he quotes miscellaneous biblical passages (of course), saying that Zelnick's mother didn't raise him well and should've beat him more. He encourages her to have a gamer play through GTA for her, assuming she can find one not on death row (I wish there was a way to find out how many lawyers are on death row; I'm sure there's a website for this somewhere). The next time some teenager kills someone they need to say "Well, I used to take out my frustrations on video games, but then Jack Thompson took them all away, so I was forced to kill real people instead".

I really don't understand why Thompson bothers anymore; everytime he opens his mouth (so, every second of every day) I'm reminded of the quote, "Say anything you want about me as long as you spell my name right". Jack Thompson does more for GTA marketing-wise than Take-Two could ever hope to do. I haven't played any of the new GTAs. The last one I played was GTA2, when you actually stole cars, instead of the craziness it's morphed into today; I think Take-Two has actually forgotten what the acronym stands for. Despite how stupid I think the new games are, I'm actually tempted to try them solely because of all of Thompson's bitching. I want to see what all the fuss is about; I want to find out if I do feel the desperate urge to murder people after playing this game. And if I do play, I am absolutely going to e-mail him and let him know he's the only reason I bought the game. And he'll probably reply that I'm harassing him and threaten to throw me in jail, which will be pretty entertaining.

05 May 2008

Are you my mummy?

The new Doctor Who had an amazing reference to a previous episode. If you haven't seen it, The Empty Child is an earlier episode from the Ninth Doctor, and in it the empty child wears a gas mask (I suppose "wears" isn't exact the right word, but oh well) and constantly repeats the phrase "Are you my mummy?"




This is the clip from the most recent Doctor Who episode, Poison Sky:




On an unrelated note, I upgraded to Hardy a little over a week ago, so at some point I'll post about the epic pain that was.

22 April 2008

My classes and how they don't exist

EDIT: I realized I forgot another 9 days, so I added them to the list and recalculated. It now comes to a nice even 100 days

I have 4 classes, that all meet 4 times per week, for 10 weeks. So in theory, I should have 160 days of lecture.

  • Two of my classes don't meet on Friday even though they're supposed to. Minus 20 days

  • One of my classes has 14 guest lectures. Minus 14 days (trust me, we don't learn anything in them. At all)

  • Another of my classes, apparently feeling left out of the guest lecture thing, did 4 in one week. Minus 4 days

  • One of my classes has 4 days of student lectures, where we read the textbook and teach each other. Seriously. Minus 4 days, and a piece of my soul

  • One of my classes has 9 days of student presentations on the projects and research we've done over the quarter. Minus 9 days

  • One of my classes has dedicated 5 days in a row for "lab time", and then another 4 for presentations of the work done during said lab time. Minus 9 days


So instead of 160 days, we have 100 days where professors trained to teach us are actually teaching us, or about 62% (this ignores the fact that one of my professors isn't actually a teacher). Therefore, I should probably only need to pay 62% of my tuition for this quarter. I should go talk to financial aid about this.

20 April 2008

Schoolwork

My schoolwork needs to stop existing, it's making me neglect my poor RSS feeds:



Look at that. Who knows what critical things I could be missing. 1000+ stories on Digg, and I bet 5 or 10 are actually interesting, and I'm not reading them.

16 April 2008

Credit Card Validation with Luhn

I found an interesting article on using the Luhn algorithm to validate credit cards. I'd heard of the algorithm before but didn't know how it worked; it's actually much simpler than I imagined. The idea of the article (validating credit card numbers client-side with Javascript) is a good one, but I thought the actual javascript implementation was fairly poor, so I rewrote it. So if anyone wants to validate credit card numbers for typos and that sort of thing, go crazy:

function luhn(cardNumber) {
sum=0;
for(i=cardNumber.length-1;i>=0;i--) {
sum+=parseInt(cardNumber[i],10);
doubled=parseInt(cardNumber[--i],10)<<1;
sum+=doubled>9 ? doubled-9 : doubled;
}
return sum!=0 && sum%10==0;
}

The function assumes you pass in just a string of digits, no hyphens or any of that. In case the one line is confusing, most compilers will optimize an instruction like x*2 to do x<<1 instead, but I'm assuming javascript probably doesn't do that so I did it manually; it just doubles the number. You could get really crazy with the optimization, like changing parseInt(cardNumber[i],10) to cardNumber[i]-'0', but that's probably excessive.

14 April 2008

You are better at dying!

I have yet to mention Doctor Who in this thing. If you haven't seen Doctor Who, you should probably go die. Although then you will have died without seeing Doctor Who, which is problematic. It's the longest running science fiction show ever, which means it has a disgusting 740 episodes. Sadly, most Americans haven't heard of it, because it's a British show, but you can think of it as the British version of Star Trek, only way better. Fortunately, you don't need to watch all 740 episodes to catch up, because they stopped the show for a while and just started making episodes again in 2005, so they started out assuming people hadn't seen the previous episodes. So if you start with the "new" season 1 in 2005, you're only 3 seasons behind (we're just starting the 4th season now). So spring into Amazon action. It's probably my favorite show ever, it even gives MacGyver a run for its money.

This is my favorite clip of all the new episodes. It's when the Daleks and Cybermen (the two biggest bad guys in the series) first meet up, so you get to see both races, how they're really similar, but constantly insult each other; also, how the Daleks are way better, how badass the Daleks are in general, and how they're still scared of The Oncoming Storm. This also has probably my favorite line of all time in it (bolded in the transcript, or look at the post title):



(show transcript)

(seriously though, the clip is so much better, go watch that)


Random side note: Blogger, wtf? I'm used to you sucking at general uptime (I had the usual "Unable to communicate with Blogger" every other auto-save), but you also fail at video uploads. I ended up canceling the "processing" screen after 4 hours and just uploading it to Youtube.

13 April 2008

Now we can read my RSS feeds as a group

Blogger in draft (beta Blogger) has a new thing they're testing called Blog List. And I live on the edge, so I added it. It's over there ----->. Approximately. What's handy is instead of manually entering them all, you can import from Google Reader, which is another service I highly recommend, it's the first RSS reader I've ever liked. Anyway, with a laziness-enabling option like that, you know I used it. So I just imported all 29 feeds I have in Google Reader, they show up in the list in order of who's updated most recently.

Perry Band > (!Perry) Band

This isn't related to anything at all, I just happened to stumble across this on my hard drive. It's an audio clip of some halftime commentators at one of the football games my high school band played at, talking about how we're awesome. Because we are. Well, were. I'm not in it anymore, so we suck now :).

EDIT: There used to be embedded audio here, but it was crashing Firefox :'(. Feel free to go here though

07 April 2008

PHP doesn't kill people, shitty programmers kill people

I'm reading a thing about security, and I found the canonical PHP example of why register globals is the worst thing ever:

if (authenticated_user())
{
$authorized = true;
}
if ($authorized)
{
include '/highly/sensitive/data.php';
}
?>

I've seen that so many times I have it memorized. Now, I don't program with register globals on, and there's really no reason to have it on, but seriously, show of hands. Who would ever write the above code? It's so obviously specious and yet nobody seems to notice. Assuming authenticated_user returns a boolean, everyone would write this:

$authorized = authenticated_user();

And magically, the problem is gone. Why would you ever have two branches that come back together with different variables released into the global namespace, that's just awful. Almost as bad as storing the user's username in a cookie and trusting it blindly, but obviously nobody would ever do that. I'm very worried about this field.

06 April 2008

Targeted ads

This is short, but I keep finding stories about companies and their increasing invasions of our privacy in the name of profit. A lot of the stories tend to be about targeted advertising. Why doesn't everyone want targeted advertising? It seems like a win for everyone involved. Advertisers only pay to advertise to people that actually care about their product, the people that show the ads get paid more, and the people that see ads might actually be interested in the products they're seeing for once. Why don't we want that? Instead, we've got advertisers and ISPs spying on us while we complain about our right to privacy and they laugh and ignore us. Why should they have to spy on us? You'd think we'd be volunteering this information, if it means we get ads for stuff we actually vaguely care about.

03 April 2008

House pwns Jeopardy

One of my professors, Dr. Richard House, was on Jeopardy tonight. And he won, because he's better than the other contestants. Plus all your professors. Combined.



EDIT: There used to be an embedded video here, but it was crashing Firefox :'(


So he'll be on again tomorrow. Go watch

EDIT: He won again, so go watch Monday. Thursday he won by $2, Friday he won by $3, which is an impressive increase percentage-wise.

EDIT: He owned the whole time on Monday until he lost in final Jeopardy. He's still better than all of you though.

If God is real he probably doesn't read my blog anyway

I've never read the Bible, or really paid much attention to any religions, I've found them patently stupid for as long as I can remember now, but this is basically my impression of how Christianity works:

God: "Jesus. JESUS! Get over here, I need you to do something"
Jesus: "Damn it Dad, what now?"
God: "HEY! I don't like that talk. Come over here, I'm not going to yell over the whole plane"
Jesus: "Fine. What?"
God: "Look, you know those humans I made? I messed up....er, I mean. I designed them to suck. Yeah, that's it. I designed them to sin. But sinning is against the rules I'm making them follow. But you see, I still want them to get into heaven. And I'm all powerful, I am. But I still can't let them in because they're sinners. Well, I could if I wanted to. But I can't. You following this?"
Jesus: "Uh . . . no. Why would you design them to sin if . . ."
God: "DID I TELL YOU YOU COULD TALK? It doesn't matter, just trust me, I know what I'm talking about, it's a whole "free will" thing. So I need a favor. I need you to go down to Earth"
Jesus: "Aww, no!"
God: "Shut it! You're going down to Earth, and you're going to let my crazy creations nail you to a cross, so then I can say we're even for all the sinning they do"
Jesus: ". . . That could not make less sense if you tried"
God: "Who's the omniscient one here? It makes sense, go do it. You'll just end up right back here anyway. Well, until the whole rising from the dead thing. But we'll cross that bridge when we come to it, for now just go convince them I'm God. I'm going to stay here. Don't worry, I've got this all timed to match up with their existing holidays, so when we convert them all to the true religion they won't have to change much. And make sure it's a cross, I've got stock in the people that make crosses, the industry is going to explode after this"

So yeah. I'm not a huge fan of religion either, if you couldn't tell by my rampant blasphemy. It's actually on the top of the hate list, even above Macs, which is an impressive accomplishment really, but Mac users don't make a habit of killing people that use other operating systems. Although I think they probably will one day, but even when they do, religion has a pretty big head start on them. I used to believe in the whole "let everyone believe what they will and respect each others beliefs" thing, but I got over that a while ago, now I just think they're all deluded.

I was searching for a couple of my favorite atheist quotes using the parts of them I could remember, and amazingly found pretty much all of them on the same page, which is handy. The last one is my all-time favorite and the inspiration for that thing above. It comes down to the rather succinct bumper-sticker friendly "God made me an atheist. Who are you to question his wisdom?"


  • "I contend that we are both atheists. I just believe in one fewer god than you do. When you understand why you dismiss all the other possible gods, you will understand why I dismiss yours."
    --Stephen Roberts

  • "When I was a kid I used to pray every night for a new bicycle. Then I realised that the Lord doesn't work that way so I stole one and asked Him to forgive me."
    --Emo Philips

  • "Is God willing to prevent evil, but not able? Then he is not omnipotent. Is he able, but not willing? Then he is malevolent. Is he both able and willing? Then whence cometh evil? Is he neither able nor willing? Then why call him God?"
    --Epicurus

  • "We must respect the other fellow's religion, but only in the sense and to the extent that we respect his theory that his wife is beautiful and his children smart."
    --H. L. Mencken

  • "Jesus' last words on the cross, "My God, my God, why hast thou forsaken me?" hardly seem like the words of a man who planned it that way. It doesn't take Sherlock Holmes to figure there is something wrong here."
    --Donald Morgan

  • Eskimo: "If I did not know about God and sin, would I go to hell?"
    Priest: "No, not if you did not know."
    Eskimo: "Then why did you tell me?"
    --Annie Dillard, 'Pilgrim at Tinker Creek'

  • "We must question the story logic of having an all-knowing all-powerful God, who creates faulty Humans, and then blames them for his own mistakes."
    --Gene Roddenberry


I also find this picture rather amusing:

Do you know what flavor your kid's lollipops are?

As far as I can tell, this story is in fact not an April Fools joke. Georgia has banned the sale of marijuana-flavored candy to minors. Not candy with marijuana in it, which is what I thought it was originally talking about. Candy that tastes like marijuana, with absolutely no actual drug content.

This entry is going to ignore the many, many arguments about the safety of marijuana compared to legal things like alcohol or nicotine, or how it's considered less addictive than caffeine. That doesn't even matter at the moment, we'll pretend marijuana is more deadly than decapitation. I'm also going to ignore the war on drugs altogether, which I think is the stupidest waste of money since . . . well, actually there are lots of stupid wastes of money in this country, I think there are whole websites dedicated to enumerating them. But I'm going to pretend that it is indeed the government's job to tell us what drugs we can and can't do like we're all 5 years old.

There's still two things so very wrong with this. First, why would you want marijuana-flavored candy? What's the point of it if you don't get high, it's like something that's cough syrup flavored but doesn't actually fix coughing (apologies to people that enjoy the taste of cough syrup, that analogy probably made no sense to you). Second, how is marijuana-flavored candy possibly leading to marijuana use? Apparently the theory is if kids eat the candy and don't die, they rationalize that marijuana must be equally safe. Personally, I'm a fan of letting all the kids that find no problem with this line of reasoning go for it, it's probably better for the planet as a whole anyway. I'm going to go get a water pistol and shoot myself in the head, and when nothing bad happens conclude that shooting myself in the head with a real gun must also be safe. They're calling it, and this is the part where I thought for sure I'd been had by an April Fools day prank, a "gateway candy". And the bill, and again I stopped to verify this isn't a joke and ended up looking up the actual bill to be absolutely sure, was introduced by a guy named Doug Stoner. I am not making this stuff up.

This is the biggest problem I have with Democrats and why I would be tempted to be a Republican if they weren't all so completely out of their minds that they've forgotten what being a Republican even means. Democrats love laws, we just cannot get enough of them. I don't believe the government should have laws telling us we can't smoke marijuana, but I can't see how anyone would believe the government should have laws telling us we can't eat candy.

01 April 2008

April Fools Day

I considered a post about how Apple had finally won me over with their sexy interfaces and easy-to-access menu location, but I couldn't really make myself write a whole entry about it, even this sentence makes me feel a little ill. People have sent me lots of amusing April Fools Day things though. There's a ridiculously large list on Wikipedia if you want to look at more of them, these are just some I've seen.

What confuses me is the alarming number of rick rolls. It confuses me how 4chan has the power to cause these things, but it happens all the time.

31 March 2008

I posted this with Ctrl+P

OK, try this. I think all browsers have a file menu; if your browser doesn't have a file menu, find one that does. Open the file menu. Done? Good job. Now, did you in any way touch the mouse? If you used the mouse to open the menu, you're doing something very wrong.

I was recently forced in class to read a thing about how wonderful the Mac menu system is. Seriously, I had to explain why Mac OS is clearly the superior operating system. For credit. I don't have the lecture material, but suffice to say Mac menus are awesome because the current window's menu is always at the top of the screen, so you can just fling your mouse to the top of the screen and easily click the menu. Now, obviously this ignores the whole still-need-to-position-horizontally problem, which I would think pretty much kills the time gain, but apparently studies say it really is faster. However, this also ignores the you're-using-completely-the-wrong-interface problem. The approximate order of increasing input device speed is:

  1. Prayer

  2. Mouse

  3. Keyboard

  4. Mind reading


The mouse has lots of useful applications, but my definition of "lots" is degrees of magnitude smaller than most people's. People used to watch me use computers in middle school and giggle that I never used the mouse, and while "never" is an overstatement it's fairly accurate compared to the rest of them. The mouse is stunningly overused, because people are too lazy to learn the keyboard ways to do stuff. You don't even have to bind your own shortcuts, just the default ways to do things will massively speed up your productivity.

If you need to run a program, Super+R opens the run dialog in Windows, Meta+F2 in GNOME. I can't remember the last time I manually opened a run dialog, and I almost never use a shortcut or a start menu item to launch a program, it takes forever. Super+D/Ctrl+Meta+D shows the desktop, although hopefully if you're doing this you're not going to need desktop shortcuts anymore so this won't come in handy very often. Here's one nobody seems to know: Super+Pause opens the System properties dialog. Never right click My Computer again. Want to open the start menu? There's a dedicated key on the keyboard for it. Stop clicking the start menu and hit the key with the pretty windows symbol on it. Then hit the first letter of the menu you want to jump to, P for programs, S for search (although Super+F will get you there faster anyway), etc. Just learning basic navigation keys for documents makes life so much easier. You don't need to be a vim ninja, just knowing that Ctrl+End will get you to the end of the document in most programs is helpful. Highlighting by holding Shift and an arrow? Hold down Control too and each arrow press will jump one word instead of one character.

Now, if you're feeling super crazy, you can set up your own hotkeys to do stuff. I don't know the canonical way to do this in Windows, but most programs come with their own way to deal with hotkeys. Under Linux I use XBindKeys, which lets you map keys to commands really easily. Here's one of my entries:

mpc toggle
Alt+Mod4 + space

When I hit Meta+Super+Space, it runs "mpc toggle", which pauses or unpauses my music. I have a bunch for MPD, a bunch of others for MPlayer (for videos), and a handful for miscellaneous other programs. For maximum fun, you can get peripherals. I have a Saitek Command Pad and a Griffin Powermate, and I use Gizmod to control both of them, which lets you write Python scripts to deal with input devices. In short: bonus hotkeys. Global hotkeying is much easier in Linux because everything is doable from the command-line, but I imagine a lot of this can be accomplished in Windows as well.

Side note: Coincidentally (I started writing this like a week ago when I had the evil lecture of mac-loving), there's an article on Coding Horror about how using the keyboard tends to take longer than using the mouse when learning a program. This is probably true, although with hints like letters underlined in menus I would think the keyboard would be able to keep up just about from the beginning. Nonetheless, once you know how to use the keyboard, it's always going to be faster, so if it's a program you use regularly it's definitely worth the effort. Google understands this, and all of their web applications have hotkeys built in, which is something incredibly lacking in web UIs for some reason. I hit Ctrl+S to save my draft of this entry, and Ctrl+P to publish it. In Google Reader (which i highly recommend), J and P jump to the next/previous entry in the list, and V opens the current selection in a new tab. There are other hotkeys, I don't remember them because I don't use them often, but just remembering two or three saves time.

26 March 2008

All the cool kids hate Apple

There's an article on ITworld about how even Apple will be hated one day. When that day comes, I want to have this blog post on hand so I can point at it and say "See! I TOLD you they sucked. I hated Apple before it was cool to hate Apple"

22 March 2008

Start?

This is going to be short, but this particular thing drives me crazy. At some point some anti-Microsoft person noticed that to shut down your machine, you click the Start button. They apparently thought this was quite comical, and suddenly everyone on the internet is making fun of Microsoft for being so silly as to put the shutdown option in the Start menu. Now, it's possible the whole Internet is just stupid, or maybe people really do get it and then just keep making fun of Microsoft anyway because it makes them feel good, but just in case it's the former I'm going to clear it up right here. The "Start" on the Start button means start doing something. So, for example, if you want to start to shut down your computer, you would click Start -> Shut Down. You don't click the Start button to start up your computer either, but nobody seems to care about that one. No, it's not a perfect analogy, but when they added the start bar in Windows 95 it was a really big deal UI-wise (No more alt-tab switching!, wink), and it took a decade for somebody to finally complain that apparently they're too slow to figure out how to shutdown their machines.

Microsoft is a dirty thief, let's iCry about it

I found yet another video of Apple bitching that Microsoft steals all its stuff:



Normally when I talk about operating systems on here I focus on my love of Linux, so it may not be clear that my love for Linux is equal to my hate for Mac OS. I hate the look and feel, I hate the interface, I hate the software, I iHate their iNaming scheme, and I hate its users pretty much on sight. Mac users focus on three truths they latch onto like a religion (speaking of things I hate):


  1. Mac is the best

  2. Windows steals everything from Mac

  3. Windows sucks


At some point they're going to realize that there's an issue in there somewhere. Windows steals everything so flawlessly from their precious Mac OS that they call it "photocopying", but Windows still sucks huge. Stop bitching that Windows steals all your shit as though they're going to stop or something; you can't maintain that you're amazing and yet still complain that people are imitating you and you want them to stop

21 March 2008

It's just like a real table!

I've seen dozens of videos now on Microsoft Surface. First, I think Surface could be very cool, I love multitouch interfaces. Second, I think right now Surface looks useless. As far as I can tell, a personal Surface table can do exactly four things:

  1. Show really big maps. This is pretty neat; personally, I would get tired of manually dragging a map around instead of just entering an address and going there, but I can see the use for it

  2. Transfer files (well, really just pictures and music in the clips I've seen) between devices. This is useless for me, but cool for other people, so this one is good

  3. Take the nice, organized photos stored on a device and explode them into a mass of disorganized thumbnails that you can spin and resize for no reason

  4. Make little bubbles shoot out from a glass when you set one on the table


Now, the one that really annoys me is apparently Surface's big feature: allowing you to, and I quote from more than one video, "organize your photos". For some reason, Surface's definition of "organize your photos" is to take all the photos on your device, ignore any organization they may have like folders named "Vacation" and "Work", and spread thumbnails of them all over the table haphazardly. Sure enough, I check the Wikipedia article and there it is:



Apparently this is somehow a good thing. If I wanted my photos to be like this, I would take print photographs and spread them all over my much cheaper analog table. Why would you want this?

Terrible:


Sexy:


I made up those picture folders on the spot because I don't take pictures, but still. I really don't understand why you would want to use the method of organizing photos that computers replaced forever ago, that's exactly the wrong way to be going about this. We should be designing new interfaces that are even easier to use than the ones we have now, not ones that very accurately simulate stuff we've already gotten rid of. Somebody should write a Surface app that lets you play music by dragging an LP over to a record player and then dragging the needle onto the record. Not that people ever actually do anything with the photos but spin them around and resize them over and over again; it's actually very much like people who enable the desktop cube in compiz for the first time:

20 March 2008

Jon Stewart: 1, Crossfire: 0

My roommate is watching this clip for the first time, and it's come to my attention that not everyone in the world has seen Jon Stewart destroy Crossfire. And you should see it before you die, because he is both unbelievably funny and extremely intelligent, unlike the sadly unimpressive Crossfire hosts:



And the transcript:
(show transcript)