Tomer Gabel's annoying spot on the 'net RSS 2.0
# Thursday, 04 May 2006

Wanting synchronization capabilities and frustrated with a bizarre folder locking bug - a folder remains locked if a connection is dropped server-side while downloading mail - which I was too lazy to fix, I switched from Thunderbird back to Outlook 2003. It's actually a lot better than I remembered (having worked with it extensively from a development point of view until last year); when not working against an Exchange server (and on a gargantuan Athlon 64-based machine) it's actually very fast, doesn't stall and is pretty stable at that.

It's not, all in all, a bad product. But it's not a complete one either.

First and foremost, Outlook's search capabilities are so ridiculously bad that third party tools have been coming out for years to address this shortcoming. Among those are Google Desktop Search, MSN Search Toolbar beta, Copernic Desktop Search and very much my personal favourite, Lookout. Lookout is an Outlook plugin written in .NET (one of the first commercial-grade products I've ever seen to use the platform) which indexes your mail in the background and performs extremely fast searches. It's complete free and was, in fact, so good Microsoft bought the company a couple years ago and is presumably busy incorporating Lookout's features into Outlook 12.

Second, the spam filtering options are lacking. I've no idea what sort of mechanism Outlook uses, and it is effective for certain kinds of spam, but it also generates a lot of false positives and misses a lot of other spam. Looking for a client-side (i.e. non-proxy) bayesian filter implementation for Outlook I eventually settled on SpamBayes, which is so far completely stable and hassle-free - not to mention effective, and open-source at that.

Moving back from Thunderbird was not without hassle though; I wasn't inclined to import the Thunderbird mails over to Outlook so that wasn't much of an issue, but I couldn't get the "Send To Mail Recipient" shell option to work with Outlook. Theroetically, merely changing the default mail program in "Internet Options->Programs" to Outlook should do the trick, but it appears not to be the case. I eventually found a solution on Joel's old forums: start RegEdit, go to HKCU\Software\Clients\Mail and change the default value from "Mozilla Thunderbird" to "Outlook". That's all there is to it.

As a bottom line, if you do not require simple bidirectional mail support or PDA synchronization via ActiveSync, stick to Thunderbird. It's a basically superiour piece of software.

Thursday, 04 May 2006 17:01:39 (Jerusalem Standard Time, UTC+02:00)  #    -
Software
# Thursday, 27 April 2006
As part of an on-going research I've been playing around with Windows Vista build 5342. Spoiler: it's not ready for prime-time, not even remotely. Here's a quick run-down:

  • Performance is aweful. On my reasonably powerful development workstation (Athlon 64 3500+, 1GB RAM, Radeon X300) it literally crawls, and feels closer to how Windows XP performs on my old Celeron 900-based server at home. Eating broken glass shards seems almost preferable to browsing files on the Visual Studio 2005 DVD.
    There are also minor performance issues which may be related to immature drivers as opposed to Vista itself, primarily to do with sound: practically any CPU time-consuming operation on the OS side (such as when it changes screen mode or performs sudden but serious disk I/O) results in sound stuttering.
  • Eye-candy: Vista looks slick, have no doubt about it. The new Aero is very appealing. I'm not a Mac afficcionado so I can't really tell if it's been ripped off of Aqua or not, but strictly speaking I don't actually care. Some aspects of the UI can definitely use some polish - particularly the annoying tendency to reset the display whenever I switch to one of the "secure" displays (i.e. login or ctrl+alt+del), but the window fade and deformation effects are wicked, and the Glass feature (where window frames look vaguely like glass and everything beneath them is blurred) are absolutely gorgeous.
  • Compatibility and stability is severely lacking. I'd expect an OS that's been in production for years (not to mention scheduled for a 2006 release, which was only recently postponed) to be a lot more stable than this. Most applications work reasonably well, but for example while Firefox installed perfectly it wouldn't work past the first boot:

    What's worse is that Firefox wouldn't even uninstall afterwards. That's not generally a good sign. Visual Studio 2005 wouldn't install at all (installation failed silently) and I couldn't find anything useful about it on the 'net (just some comments regarding MSXML6, which was not the case here) until I rebooted the machine. The .NET Compact Frameworks, J# Redistributable and SQL Server 2005 would not install at all. Some applications would not even start (the Total Commander installer, for instance), others would display unusual error messages but work just fine afterwards:

    Networking in particular was unstable; I've no idea where to get beta Vista drivers and since everything was mostly working out of the box I wasn't inclined to look, but the network driver for the onboard nForce adapter would often simply stop working, claiming that there is no traffic on the network. Only a reboot would remedy this.

  • Usability: In some respects, Windows Vista is a tremendous improvement over Windows XP; it contains a huge amount of subtle but helpful hints in dialog boxes, much quicker access to some aspects of the OS configuration and a search function is available almost everywhere (especially useful in the Start Menu). When it comes to security, though, Vista is horrendously frustrating. Check out this post by Paul Thurrott. A noted Microsoft fanboy, such harsh cristicism coming from him gets double the attention. He is so right: Vista will continuously pester you with annoying security dialog boxes, and of particular annoyance is that this happens even if you are an administrator! If Microsoft ever wants Windows to be taken seriously security-wise, they should stop trying to stop malware from exploiting administrative privilidges via ever more sophisticated techniques, and start educating users not to use administrator accounts in the first place. This malfeature, called User Account Protection (UAP), sends the wrong message. I initially had the same reaction to Fedora Core 3, which would keep asking me for administrator password, but I became accustomed to it quickly because you don't usually DO things that require administrative priviledge as a user. With Vista you can't do squat without getting a series of annoying dialogs. For example, simply going to C:\Documents and Settings results in this dialog:

    Clicking on Continue results in this dialog:

    And finally, to add insult to injury, despite being an administrator I can't seem to change ACLs on folders that reside on my own machine:

    Last but not least, having a look at the security settings for said folder showed that nothing, in fact, was wrong and I shouldn't have any trouble accessing it:

    Additionally, there was some really weird usability bugs/issues. For example, when I changed a folder's view settings to show hidden and system files, this had some unexpected results, which you can see here:

    Finally, I leave you with this jaw-dropping dialog I encountered on a file copy operation:

  • Internet Explorer 7 is leaps and bounds beyond Internet Explorer 6 in everything from performance to usability. Still, in the spirit of frivolous security Microsoft has chosen to annoy the hell out of you with brilliantly useless warnings that require user intervention, such as this:

I hope to update to the newer 5365 and re-test things, but currently this OS seems so far from ready it's not even funny.

Thursday, 27 April 2006 22:18:08 (Jerusalem Standard Time, UTC+02:00)  #    -
Software
# Monday, 24 April 2006

It's hard to miss the irony in the fact that the Visual Studio debuggers are riddled with bugs. As one of the most widely-used programming tools I'd expect it to be polished beyond reproach, however even in the managed world the debugger is - to put it mildly - not perfect.

The VS2003/.NET 1.1 debugger is particularly susceptible to threading issues. It stalls, it barfs, it lies, and now it even triggers exceptions in your code that aren't even documented in MSDN - I was getting ThreadStopExceptions on some of my threads while stepping over instructions. There was no way to know when it might happen and no way to reproduce it consistently. I was reluctant to blame the debugger at first, but this thread provided both the culprit and the solution: close all locals, autos and watch windows and you should be right as rain.

Monday, 24 April 2006 23:47:09 (Jerusalem Standard Time, UTC+02:00)  #    -
Development

Part of a very large project we're working on stopped working oh-so-suddenly for one of my colleagues. An exception would be thrown on initializing .NET Remoting - specifically when instantiating a TCP port. Here's part of the exception content:

System.Net.Sockets.SocketException: Only one usage of each socket address (protocol/network address/port) is normally permitted

at System.Runtime.Remoting.Channels.Tcp.TcpServerChannel.StartListening(Object data)
at System.Runtime.Remoting.Channels.Tcp.TcpServerChannel.SetupChannel()
at System.Runtime.Remoting.Channels.Tcp.TcpServerChannel..ctor(IDictionary properties, IServerChannelSinkProvider sinkProvider)
at System.Runtime.Remoting.Channels.Tcp.TcpChannel..ctor(IDictionary properties, IClientChannelSinkProvider clientSinkProvider, IServerChannelSinkProvider serverSinkProvider)

... (deleted)

Running netstat -b proved that some process or another was indeed listening on that particular port, however it failed to say which process is responsible (just said "System".) Running the excellent SysInternals utility TCPView also proved futile, as it displayed a prominent <non-existent process> in the Process column.

As usual, at this point I turned to the 'net; a quick search provided a hypothesis that IIS was somehow responsible for hogging the port; this didn't seem to make sense because IIS was not involved (the channel was not hosted in IIS, nor was it an HTTP channel to begin with) and shutting the IIS services down didn't help any either. Listing the active services via tasklist /svc proved useless as well, as did a reboot.

After some serious searching I picked up this thread in the pgsql.hackers newsgroup; apparently they had similar issues with broken security (AV, firewall) software not uninstalling properly; a lot of security-related software products (called Layered Service Providers, or LSPs) install their own TCP/IP handlers into an appropriate chain in the Windows TCP/IP stack. Although that wasn't the case here, we figured it can't hurt to try the solution pointed to by the newsgroup participants; LSP-Fix is a utility that rebuilds the appropriate registry entries in an effort to restore the handler chain to a working condition. One reboot later and everything was back to normal.

I'm still not clear on the cause of the issue, but this information might prove useful up ahead...

Monday, 24 April 2006 22:15:59 (Jerusalem Standard Time, UTC+02:00)  #    -
Development
# Thursday, 20 April 2006

The immediately good news: the 2.0.1 version of Hebrew OpenOffice.org is out - go and download it! It features a whole bunch of bugfixes, primarily fixes to the way tables in Word files are imported. I don't use Word much - particularly not for Hebrew files - so I can't righly comment on it, however I've been told by friends and peers that this bug was one of the biggest issues they had with the 2.0 Writer.

Also, a tip: it's not obvious nor exactly trivial, however it IS possible to do regression analysis and include trend lines in Calc sheets and charts; check this tutorial out (via xslf on the OOo.il forum).

Thursday, 20 April 2006 22:01:04 (Jerusalem Standard Time, UTC+02:00)  #    -
Software
# Wednesday, 19 April 2006

Although I enjoy using GAIM, it has several issues - most notably a very poor UI experience, which is being worked on in the 2.0 betas (which are perfectly usable, by the way). The second most obvious problem I've been having is to get GAIM to receive Hebrew messages from buddies on ICQ. This issue can be easily fixed by accessing the ICQ account properties and changing the Encoding field:

The default encoding is ISO Western (ISO-8859-1); to get Hebrew properly just disable the account, change the encoding to Windows Hebrew (Windows-1255) and re-enable it. Although not technically correct, ISO Visual Hebrew (ISO-8859-8) seems to work too.

I'm not sure if the Western encoding is indeed the default - I've been importing my account settings since GAIM 1.3 or so - but I'll look into it and file the appropriate bug report (encoding should be set to what is appropriate according to the current locale, at least in Windows).

Wednesday, 19 April 2006 01:34:14 (Jerusalem Standard Time, UTC+02:00)  #    -
Software
# Sunday, 16 April 2006

Check this out, then stop wasting our collective time and send a supportive e-mail to alexness at toysforbob dot com.

GET ON WITH IT!

Sunday, 16 April 2006 00:45:50 (Jerusalem Standard Time, UTC+02:00)  #    -
Gaming
# Wednesday, 12 April 2006

The other day my laptop started acting up - it slowed down to a crawl then barfed on burning a disc (which I originally attributed to irregular I/O behavior on the side of µTorrent); that in itself was annoying, but it only raised warning signs when another burn (this time without any active background applications) failed in the exact same spot.

I decided to run scandisk (which, being that I'm running only one partition, would not run until the next reboot), and over the next three hours I could do nothing but stare at what any seasoned computer professional will sadly tell you is one of the most horrible sights in existence:

Three hours later I have a fully-functional laptop with over 5MB of bad sectors (and, as the same seasoned computer professional will tell you, the problem is only exacerbated with time) that runs somewhat slower than it ought to on I/O operations. Luckily the warrantee is still in effect, but invoking it means having to spend days without my laptop.

Almost makes me wish I bought an HP (unless I'm mistaken, they have a "if it breaks we'll replace it for you at home within 24 hours" kind of policy), but then I remembered that my laptop has been customized by the shop in which I bought it (with a 7200RPM Hitachi drive instead of the standard 5400RPM one). Since I'm not even (remotely) new to hard drive crashes I knew what this meant - a trip to the store, which sends the drive to the local importer, waiting for days while it's being "examined" and then another trip to the store to get it back. What makes it even worse is that the shop where I bought the laptop (Lamir) is situated in another part of the country.

Luckily the lab guys were kind enough to allow me to remove the hard drive and send it to them via courier, which should save me a couple of unnecessary trips to the centre of Israel. I'm not sure how support services work in other countries, but this is quite unusual here - normally warrantee on branded products is voided if you tamper with them (even if it's something as trivial as removing or installing a hard drive yourself), so in that I have to thank them. I just hope the rest of the experience is as pleasant.

Now I'm off to get myself a NAS device to back up my stuff on.

Wednesday, 12 April 2006 20:40:34 (Jerusalem Standard Time, UTC+02:00)  #    -
Personal

There's a recent fashion among blog-savvy developers in looking for the "ultimate programming font." This has been around as long as programmers, but the discussion has recently been sparked again by the impending release of Microsoft's Windows Vista along with its slew of new fonts. I'm not the early adopter type so I couldn't really be bothered and stuck with the default fonts, until I got a new monitor at work and figured it was about time to ditch good ole Courier New try for something with a little more panache.

A good couple hours later I had a large selection of fonts; the selection is actually quite overwhelming, however there are very few actually good fonts (for example, the Proggy fonts are generally considered some of the best around, but I can't stand looking at them) and fewer still could actually dethrone the aging but solid Courier New.

At first I actually considered using Consolas, although it's not easily obtainable. A quick Google Images search provided me with the necessary visual example of what the font would look like (screenshot courtesy of Jeff Atwood):

Honestly? The font looks horrible. I find the fuzziness introduced by the ClearType rendering very hard to swallow (the font looks as though it's suffering from colour-bleeding, even though it's not). I couldn't be bothered to even try installing the font.

A casual comment from a reader in one of the blog posts I've read struck me as brilliantly simple: I've been using OpenOffice.org for quite a while now (give it a try!), and the default font for Writer is a relatively new font from Bitstream (via GNOME) called Bitstream Vera. It originally struck me as an impressively neutral font - pleasing to both eyes and mind. Apparently a monospace version of the Bitstream Vera Sans font is included with OOo (and additionally available via the previous link); it's professional, it's free and it looks great (screenshot shamelessly stolen from this place):

 

I heartily recommend the Bitstream Vera Sans Mono font for programmers (note that it takes a bit of hacking for it to work with Visual Studio 2003, although it works just fine with 2005).

Finally, if neither of the above fonts suits you, there's a huge list of programmer fonts here; one alternatives you should look into is Andale Mono, which is very slick and functional.

Wednesday, 12 April 2006 14:02:39 (Jerusalem Standard Time, UTC+02:00)  #    -
Development | Software

Windows is anything but user-friendly if you're not a local administrator, or so I learned when my dad asked to be able to convert CDs to MP3s so he can listen to them on his PDA. A simple enough task, I figured I'll just configure Exact Audio Copy to "dumb mode" and leave instructions on how to use it (basically, double-click the icon; select the appropriate drive; Alt+G to get the information from freedb; select relevant songs; F5).

For some reason my dad (whose user is not a local admin so as to keep spyware and other crud off our system) couldn't access any but the generic (Daemon Tools and other emulation layers) CD drives. It took me two hours (!) to figure out that:

  1. Windows 2000 and on does not come with an ASPI layer installed
  2. Most software (including EAC) has been updated to use the native API calls instead and do not require ASPI
  3. The native calls fail for non-administrative users (!)

Installing an ASPI layer is supposed to remedy the situation; I've opted to use ForceASPI 1.8 (instead of the default Adaptec installer) but that did not have any effect. To make a (very) long story short, the way to handle this is to use Frog Rights, which finally solved the problem.

To add to my frustration, however, after screwing around with ASPI drivers for hours Nero would no longer recognize my DVD-RW; I figured I'll just intsall the latest Adaptec ASPI drivers which completely screwed up my system - Windows XP would no longer boot and the only clue a logged boot would provide is that something goes very wrong loading the fastfat.sys driver. Nothing I did over the next four hours would allow the computer to boot; oddly enough, my brother managed to boot the machine by simply removing the empty DVD-R media in the DVD burner (a major WTF). We're still not clear on the problem.

Update: Apparently Nero has its own tool for this purpose called Nero BurnRights, which works like a charm.

Wednesday, 12 April 2006 02:05:53 (Jerusalem Standard Time, UTC+02:00)  #    -
Software
Me!
Send mail to the author(s) Be afraid.
Archive
<2006 May>
SunMonTueWedThuFriSat
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910
All Content © 2024, Tomer Gabel
Based on the Business theme for dasBlog created by Christoph De Baene (delarou)