Posts in Category "Windows"

Never thought I’d say it, but I’m one happy Windows user

I’ve never been a big fan of Windows. Until now.

I was introduced to Linux at my previous job, primarily by my long-time friend, Ben Simon. I was a happy Linux user for years, then switched to OS X when it came out. I was a happy OS X user for many years, as well, but was recently compelled to switch to Windows. I tried to be a good sport about it and embrace the change. In fact, I decided that if I was going to switch to Windows, I was going all the way. No Cygwin. No command line tools. I wanted everything to be graphical. I wanted the full Windows experience, and to fully embrace the Windows world.

In many ways, I was very impressed. Windows is far faster than OS X (a problem I’m hoping the Intel Macs will help solve), and most software is much better supported on Windows (Mac users may argue both these points, but believe me, they are both very true). I also didn’t mind the ease with which I could install certain applications. I’ve installed MySQL dozens of times on Linux and OS X, and it was kind of refreshing just to double click, go through a configuration process, and a few minutes later, have a great database server running perfectly.

But the honeymoon didn’t last long. My biggest frustration was a lack of command line. My commitment to doing things the Windows way wasn’t working. I tried things like Tortoise CVS and Tortoise SVN but found them clumsy and even buggy. I’m a huge Vim fan, but I tried to force myself into using Eclipse (which actually I really love now for certain things) and TextPad for all my editing needs. When I needed to move files to a Unix machine, I opened WinSCP rather than running scp from a shell environment. The result was months of constant frustration at the clumsiness of a purely graphical environment. I needed a command line, or I was going back to OS X the day the Intels came out.

The DOS shell is pretty much a joke (it doesn’t look like it’s changed a bit since I was a kid), so I decided to install Cygwin, an amazing Linux emulation layer and collection of tools, commands, and utilities. The problem I’ve always had with Cygwin was that the terminal window itself wasn’t much better than DOS. Although it behaves like a Unix box, the look and feel was clearly that of Windows DOS. Danny Dura suggested one day that I try installing sshd and using Putty to SSH into my own box locally to give myself a better terminal. I kept meaning to get around to trying it, and then when I saw that Ben had done just that, I used some time over my holiday to play around with my own setup. I’m happy to report that it works perfectly, and now I am probably the happiest Windows user I know. I have my command line just how I like it, vim, make, ssh, scp, cvs, svn, ls, mv, d, bc, cal, cron, aspell, etc. — all just how I like them. And, of course, I still have all the convenience and speed of Windows. And the icing on the cake: screen. Now if only I could run FVWM.

Cool Tool Friday: Symbolic Links on Windows

Cool Tool Friday: Symbolic Links on Windows

One of the biggest problems I had in transitioning from Mac to Windows for development was not having symbolic links anymore. Symbolic links allow you to create references to files that the operating system and all your applications treat as the actual file. In other words, it allows you to keep a file in one location, but trick your OS into thinking it’s in another location.

Symbolic links are extremely valuable for development. On Linux and OS X, I like to keep my source trees in a project directory, and symbolically link into that directory from other places (or instance, from my web root for web apps). I’ve found it also enables me to simplify my classpath when doing Java development. The problem is that symbolic links aren’t supported on Windows. At least, I thought they weren’t until Danny Dura showed me Junction Link Magic.

Junction Link Magic allows you to create the Window’s equivalent of symbolic links, and as far as I can tell, works perfectly. The interface is intuitive, and the application is completely free. And any application with so many warnings about being for experienced users only has to good!

Remapping Your Windows Key

Warning: There have been reports that applying this hack can cause certain keys to stop functioning. I recommend using other techniques for remapping your keys which are mentioned in the comments.

I’ve been using Windows for a couple of weeks now, and although I still keep my Powerbook close by, I’ve actually adapted to the Windows world better than I expected to. I’m using a ThinkPad T41 which I like a lot, but for some reason, ThinkPads don’t have "Windows" keys (perhaps to make them more Linux friendly?).

Anyway, I’m the kind of person who makes frequent use of keyboard shortcuts, so I decided to figure out how to remap my right alt key as a Windows key. Fortunately, someone already figured it out, and wrote a tutorial. It involves modifying the registry, but it’s actually very simple to do. The tutorial shows you how to map your left alt key, and doesn’t actually provide a copy-and-pastable version of the patch, so here’s mine (which maps the right alt key, not the left):

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"00000409"="KBDUS.DLL"
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,5B,E0,38,E0,38,E0,5B,E0

Naturally, I take no responsibility for completely hosing your machine, and I highly recommend testing it on a co-workers computer first while he’s in the copy room or at lunch.

Also, let me know if you have any other cool Windows tips (post them here for everyone to enjoy).