So, I tried Windows 7 beta, and recently scored a copy of Windows 7 for my desktop PC, via employee discount. (I’d be willing to pay $50 for the OS, so $25 isn’t a bad deal. The again, Microsoft sent me some very large checks for my Tellme equity in 2007 so a very small Capitalist part of me is rooting for them.)
It is pretty nice: basically a refresh of Windows XP, with extra spit-and-polish. Zippier, too! It boots and shuts down faster than XP or Ubuntu, and manages OS updates without requiring my intervention and subsequently breaking things, like Ubuntu does. I was musing to my coworkers that if it had the following, I could switch from Linux:
I turn my computers off when I’m not using them. I like that Firefox will remember tab sessions. But waiting for an OS to boot is wasted time.
Despite recent improvements, Ubuntu still takes way too long to boot, and seemingly forever to shut down. Windows 7, by contrast, is pretty darn zippy. I like that!
Winner: Windows 7
System Updates
So, for the record, I’m thinking to turn off system updates on my Ubuntu environments, because they aren’t worth it and they keep breaking my stuff. I’ll just refresh twice a year when the new release comes out, therefor managing the pain of upgrades. Windows updates are more important, given the constant security threats. Fortunately, Windows does that for me without my noticing, save the stupid “I will forcibly reboot you in 5 minutes” thing that hasn’t hit me (yet?) on Windows 7.
Winner: Windows 7
Software Packaging
Windows seems to have made some improvements with software packaging, and I gotta say it is convenient to go to a web site, click on an installer, and a few minutes later have the application running. Of course, then there’s another icon on your desktop and the Yahoo! tool bar has been added to your web browser . . .
On Ubuntu, though, most of the time I go to a shell and type:
sudo aptitude install foo
And there I go!
Sometimes software isn’t available in the central repositories, but 9.10 has made adding some PPAs easier. And sometimes I go to a web site, click on a link to a .deb file, it downloads, the system asks for my password, and the software gets installed without leaving crappy toolbars in my environment. Victory!
Winner: Ubuntu
Virtual Desktops
Ubuntu’s Gnome interface would be nicer if I could drag windows to the side of the screen and they’d pop over to the next screen, like the fvwm2 pager. But, I’m pretty well content with Ubuntu’s virtual desktop ability.
You could probably install a decent hack on Windows 7 to get this, but really, virtual desktops and pagers should be built in.
Winner: Ubuntu
Command Line Environment
So, with Ubuntu I can fire off command shells with wild abandon and do what I need to do. (I’m a Unix system administrator, so I relate to computers mostly by typing commands and scripting.) Windows 7 has a new “PowerShell” feature that implements a few Unix commands. After half an hour of searching I discovered that you can get to the PowerShell by hitting Windows+R and then typing “powershell” — heck forbid we should put this in the start menu or make it available by searching for “shell” but okay . . .
With Ubuntu, I can highlight text by dragging and clicking my mouse. This is just like other environments, but instead of hitting control-C (or, ahem Open-Apple-C) to copy the highlighted text into your clipboard, and control-V (I mean, Command-V) to paste from your clipboard, with Unix, whatever you highlight goes straight to the clipboard, and you paste by tapping the middle mouse button.
That can be a little scary sometimes but once you get used to the convenience you really can’t go back to having to mouse and keyboard to cut and paste.
Hit Alt+Space to bring up the console menu, then type ‘E’ to bring up the ‘Edit’ menu and then ‘k’ to start copying or ‘P’ to paste the text in the clipboard to the console. In ‘copying’ mode, you just use the arrow keys while holding down the shift key to select text, and hit Enter to add the selection to the clipboard.
“Ah, hello, Microsoft? Yes, the 1980s called and they want their primitive user interface back. Thanks!”
Update: You can launch PowerShell is a window that supports text highlighting by dragging the mouse via Start > All Programs > Windows PowerShell > Windows PowerShell. It looks like you can copy highlighted text with control+C and paste with the right mouse button. (Getting closer, I guess!)
Winner: Ubuntu
Focus Follow Mouse
Down in the accessibility menu, there’s an option for “Activate a window by hovering over it with a mouse” . . . but checking that option doesn’t actually change the behavior . . .
I’ll give Internet Explorer some credit; I can type whatever crazy thing I want into the URL bar and the second it realizes I didn’t type a URL, it goes over to Bing. Nice!
But then the default behavior is to create new windows all over. Seriously: what is the point of tabbed browsing if you don’t put stuff in the tabs? The big fail though is that for whatever reason the WordPress HTML editor in Explorer keeps jumping up to the top of the text input window, which made working out this post a seriously annoying experience.
A quick install of Google Chrome and my web browsing experience not only interfaces well with WordPress and pops new windows into tabs, but I can type whatever crazy stuff I want into the URL bar and in a not-be-evil sort of way, it shunts me with due humility over to Bing. So, Chrome is my new default web browser for Windows 7. (And I’ll continue trying out Bing, even though I’m a Google fan-boy.)
I remembered a dream this weekend. I was walking in Bangkok and it occurred to me I should turn off the data on my smart phone, lest I get raped by the service provider. Then I was kind of pleased to see that my smart phone was my Sidekick 2, because that thing was just wonderful.
Then I said to myself “I’m in Bangkok with a smart phone and its a Sidekick 2 when I know I own a G1, so like, am I dreaming?!” And so my unconscious was like shitshit, no look, it says Sidekick 4! Whoo! Shiny! Wouldn’t that make an awesome Android phone!? And I was like “damn, that rocks! When did we come up with this?”
Many appreciate what he has to say, but then again, he is basically articulating what we all know, and plenty figure that maybe his writing is no longer fresh, and he is just cranking out articles in order to shill his warez:
“This might be a neat opportunity to use Scrum. Once a week, the team gets together, in person or virtually, and reviews the previous week’s work. Then they decide which features and tasks to do over the next week. FogBugz would work great for tracking this . . .”
My position is that most stuff we read is mediocre, and Joel at least writes well, and Joel wears his ulterior motives on his sleeve, so when he starts figuring FogBugz can cure what ails CS curricula, I just figure “and now a word from our sponsors” and my brain hits the fast-forward button.
I think Tom actually has the best reaction to the issue Joel brings up, in that he adds that different people have different learning methods:
We all know there are students that are “visual learners”, “audio learners” and “kinesthetic” learners.
We all know what? Okay, yeah, and “everyone” is talking about this, right? Anyway, Tom, like me, is a learning-by-doing kind of guy who didn’t always “get” the formal CS curriculum:
When I took my undergraduate class on software engineering methodology I felt it was useless because I couldn’t see the point of most of what I was being taught. Most of my programming had been done solo or on a small team. I could not take seriously the problems that were being “fixed” by the software methodologies discussed in our lectures. “Code size estimation? Bah! Impossible, so why even try!”
In my CS days, the bits I enjoyed most were the learning-by-doing: compiling my first C program, bending my mind around recursion and functional programming to complete assignments in MIT Scheme, implementing a virtual spanning tree, and coming up on my own with the idea of a finite-state automaton to parse NWS weather forecasts. (Okay, that wasn’t a CS assignment and I didn’t know how to talk to girls.)
The parts where I fell completely flat were the theoretical classes where we considered bizarre hypothetical problems that didn’t make sense, using Greek letters that didn’t seem to have anything to do with reality. One day my ECE roommate asked how, as a CS major, I would go about sorting one million integers. My response was “why would you want to sort one million integers?” Later I slept through multiple lectures where the best methods of sorting integers were discussed at length. I skimmed the slides so I know that Quicksort performs well and in-place, but that Bubble Sort may work better if your data is mostly sorted, so in my mind that just means that if anybody asks how you would sort one million integers, the correct answer is to ask some questions as to why they need to sort one million integers.
Uh, yeah. Anyway, what was I nattering on about? Joel’s schtick is that CS students aren’t taught to manage large, complex, “real world” projects with lots of moving pieces. CS mostly focuses on the “interesting 10%” like how you would sort a million integers and skips over the boring 90% of hard work like implementing the interface for the customer to provide their million integers and retrieve the results. And Mark Dennehy’s reaction was “of course we focus on the interesting ten percent: the other 90% is constantly changing and best learned on the job!”
But, addressing the “how do you tackle big projects” thing, I think Joel has a point. And his point isn’t new. The point is extra-curricular activity.
Whether you’re a visual learner or whatever, the biggest secret to learning things is to find the thing that you are studying interesting. The very best computer programmers are all fucking fascinated by the challenge of getting the computers to do things within given parameters. Computer programming is fun because when you get down to it, it is a lot like computer games: a person at the interface banging away until they get their dopamine fix by either beating the level boss or getting the damn thing to compile and spit out the correct result.
Well, that is for the learning-by-doing types. Some computer programmers get their jollies by trying to fathom a new and novel method of sorting one million integers. Whatever floats their boat, I guess.
Anyway, long story short, I’m thinking the learning-by-doing types tend to get a little queasy after a few CS theory classes and end up majoring in English in order to score a bachelors degree, but they keep tinkering with the computers along the way, and end up, like Tom and me, as systems administrators, figuring out the best way to keep 1,000 computers running in order to make it possible to sort billions of objects with map-reduce algorithms in constant time.
Oh yeah, and that I agree with Joel that motivated CS students ought to find non-class projects that they are passionate about, and thereby gain chances to collaborate with others on the sort of “real world” challenges that they are likely to face in their professional careers. Back at Illinois the ACM played a big role in this. I myself did some time apprenticing at NCSA and at an ISP, and the big win these days it would seem are the oodles of Open Source projects ready to put interested volunteers to work. And that’s why Google’s “Summer of Code” just sounds like a fantastically great idea.
Download Speed: 12988 kbps (1623.5 KB/sec transfer rate)
Upload Speed: 2039 kbps (254.9 KB/sec transfer rate)
Twelve megabits?! That is a lot of bandwidth. So much so that my old 802.11b local wireless network will actually have less bandwidth than my uplink. Gadzooks!
And the cable comes with some HD channels to watch on our CRT, and a crude DVR which can record shows on multiple channels simultaneously. Not bad, I suppose, for a tad over $100/mo. Yeah, and free long distance, so I gotta start calling up relatives again.
This past Saturday one Muni train rear-ended another at the West Portal station, half a mile from my house. I decided to stay away from the scene, so as not to crowd an accident scene where authorities were attending to around fifty injuries.
I have ridden these trains a great deal. They run under computer control through the subway and then convert to manually-operated streetcar service at West Portal station. Apparently, after switching to manual control at West Portal station, the driver blacked out, so his train rolled down the track at 20-23 MPH, colliding with the train in front of it.
The Chronicle points out that there is a consideration of the practice that Muni has been allowing trains to switch out of automatic mode in the tunnel before entering West Portal station: by overriding the computer control, a second train can get in to the station platform, allowing passengers a chance to change trains. Had this train remained on automatic, it would not have been allowed into the station, and the accident would not have happened.
But, to me, the thought of switching to manual control early doesn’t sound like the problem. The problem appears to be that the driver blacked out while operating a train, possibly due to a diabetic condition. In this case it may have been a blessing that he blacked out at West Portal, where his train was stopped by the train before it. Had he blacked out outbound of west Portal, his L train could well have been rolling downhill on Taraval across 19th Avenue, with little more substantial than automobiles and pedestrians to slow its descent.
I spent a little time researching whether the Breda vehicles are equipped with a dead-man’s switch or not, but couldn’t find anything conclusive. I found some reference to dead-man’s switches being required on all vehicles after 2000, while the Bredas were introduced from 1995 to 2003. My hunch is that there is a dead-man’s switch or other vigilance device, but it may not kick in automatically: had the train been rolling down Taraval maybe the brakes would have kicked, but a few seconds pulling up to the platform at West Portal was enough time for an accident between vehicles operating with minimal distance.
I don’t know . . . NTSB gets to figure it all out. I’m just glad nobody got killed.
I rode an older Talgo in Spain, which was delayed due to a fire on the tracks ahead of us. They passed out soft drinks as we sat, and the Spaniards began playing music.
Virgin America has wireless access on its flights. For $13 you get enough bandwidth to video conference. It was fun.
I tried not to talk too much or too loudly from my seat. To be sure, everyone on Virgin America is pretty much immersed in their personal entertainment anyway so its not so much of a thing.
I’m flying to New York. Fortunately, I needn’t lose a work day because for $15, Virgin America has got me on the Internet!
It is zippy enough, and the latency is perfectly fine, so I am guessing it is a terrestrial network. VPN works fine, too.
http://www.speakeasy.net/speedtest/
Last Result:
Download Speed: 964 kbps (120.5 KB/sec transfer rate)
Upload Speed: 337 kbps (42.1 KB/sec transfer rate)
It is a bit cramped, for sure. Fortunately, my Dell Mini 10 arrived yesterday, with Ubuntu pre-installed. (Vendor Linux!) I hope to write more about that later, but this is a zippy little thing that is probably about as usable as you’re ever going to get in a coach class airplane seat. Yay!
Virgin claim to have power plugs at each seat. I haven’t seen mine, but given the battery life this thing claims, I shouldn’t need to plug in for the duration of this continental crossing.
That looks like . . . Nevada. No . . . we’re above US Route 6 in Utah. 2112 miles to go. That’s another thing I dig about Virgin America: an interactive map at the seat terminal, and an adjustable headrest, which Southwest lacks . . .
Well, this is a work day, better get back to working.
0-14:22 djh@ratchet ~> ls -lh mail/archive-*
-rw------- 1 djh djh 18M Jun 14 17:17 mail/archive-1997
-rw------- 1 djh djh 29M Jun 14 17:16 mail/archive-1998
-rw------- 1 djh djh 18M Jun 14 17:13 mail/archive-1999
-rw------- 1 djh djh 26M Jun 14 17:13 mail/archive-2000
-rw------- 1 djh djh 25M Jun 14 17:11 mail/archive-2001
-rw------- 1 djh djh 18M Jun 17 2004 mail/archive-2002
-rw------- 1 djh djh 25M Jun 14 17:09 mail/archive-2003
-rw------- 1 djh djh 15M Jun 14 17:08 mail/archive-2004
-rw------- 1 djh djh 63M Jun 14 17:05 mail/archive-2005
-rw------- 1 djh djh 202M Jun 14 16:54 mail/archive-2006
-rw------- 1 djh djh 362M Jun 14 18:06 mail/archive-2007
-rw------- 1 djh djh 202M Jun 14 19:17 mail/archive-2008
I recently went through, and using mutt’s date-range filters, revised my e-mail archives, most notably saving messages stored in Gmail into these annual mbox archives.
I think it was around late 2005 that I started using Flickr, so the ramp up in sizes is pictures being e-mailed from mobile devices.
I delete most e-mail that I receive, but I pretty much archive all personal correspondence, and anything I send.
Also, I was disappointed that when I tried to copy archival messages into Gmail, via IMAP, Gmail would interpret the message date as the date it was copied in to the archive, and not the date the messages was created. That was disappointing. I like Gmail’s search capability, so it would have been nice to give it access to my corpus.
Mainly though, I dig Gmail’s interface, especially while traveling. But I recently got mutt running again because it is a much faster way to step through an Inbox and delete / reply / Archive than clicky click web interface. If only I could give it access to my Gmail contacts . . .
Back in 2005, Marissa Mayer, VP of Search Products & User Experience at Google, stated:
“There will not be crazy, flashy, graphical doodads flying and popping up all over the Google site. Ever.”
Apparently Google lacks the same sort of respect for the web sites of its AdSense customers, because they started putting animated advertising on my site.
“Say it aint so.”
According to Google’s “self-service tech support” there is no way to turn them off, short of reverting to text-only ads.
This is wrong on a few levels. And I’m not sure if Google is just being its regular sloppy self or if they are getting desperate for revenue such that they’re finding more wiggle room in the “don’t be evil” philosophy.
Whatever is going on down in Mountain View, I will just get along without the $10/mo or so I’ve gotten from AdSense revenue.
I hate spam at least as much as the next guy. Heck, fighting spam is my day job. But I just gotta say, this little guy who made it through the Gmail spam filter this morning just made me smile:
Perhaps they are just being self-important, and I can’t help but imagine that the government is blocking them, but if this is even 10% true, well, Twitter and their network provider are doing the right thing in rescheduling some network maintenance:
“Our network partners at NTT America recognize the role Twitter is currently playing as an important communication tool in Iran. Tonight’s planned maintenance has been rescheduled to tomorrow between 2-3p PST (1:30a in Iran).”
Current and former Googlers said the company is losing talent because some employees feel they can’t make the same impact as the company matures. Several said Google provides little formal career planning, and some found the company’s human-resources programs too impersonal.
Concerned that employees may leave because HR is uncaring and impersonal, Google has naturally responded in the Google way:
The Internet search giant recently began crunching data from employee reviews and promotion and pay histories in a mathematical formula Google says can identify which of its 20,000 employees are most likely to quit.
Good luck with that.
I picture some super HR geniuses down in the Googleplex able to predict with great accuracy who will quit next, and exactly when, but lack any clue as to why they are likely to quit, or how to retain them. Still, they will still be hailed as ingenious visionaries because they figured it all out with great scientific precision and implemented their analysis using MapReduce.
I think Twitter is over rated. Some BBC commentator was yammering on the radio this weekend about how Twitter was insufficient to replace established media. WTF? Twitter is a way to waste a few minutes of time and occasionally score a chuckle or a wry observation off a friend. Much like a grilled cheese sandwich, Twitter should not be taken too seriously. And yet, there’s a whole ecosystem of people re-tweeting each other and #tagging their posts and live-tweeting as if like hey, its the blog-o-sphere 5.0 with a 140-character limit. Seriously, if you’re imitating the blagojoshere, you’re doing it wrong.