Send As SMS

Matt Morgan's Mutterings

Saturday, October 22, 2005

Power surge!

Last night my family and I were awakened when lightning hit the corner of my roof. It blew out a light fixture, tripped a breaker, tore up my heat pump...but my computer is (obviously) safe. Thank you, APC UPS.

Monday, October 17, 2005

Trend Micro vs. ZoneLabs antivirus

I have been running Trend Micro PC-Cillin at home for over a year now, and I have been running ZoneLabs security suite in the office. Both recently came due for renewal, and because Trend is smaller, faster and less expensive, I bought two copies, one for home and one for the office.

As soon as I loaded it, the first order of business was to run an antivirus scan on the office machine's hard drive. Since ZoneLabs keeps their antivirus up to date, one would expect the results to be the same - that is, no viruses. Well, Trend found two instances of JAVA_BYTEVER.R, in files that ZoneLabs had scanned multiple times over.

The more I use Trend's package, the more I appreciate it.

Sunday, October 16, 2005

When Firewall/AV Software Misbehaves

I have a good friend who called me to his house to look at his computer. He had been having consistent problems with it, running slowly and not hitting the internet as it should. The internet issue was especially noteworthy - on a DSL connection he was seeing connection speeds around 3.7 KB/s, which is slower than my lowly dial-up connection at home.

One thing that was happening very consistently is that a program called ccApp was dying every single time he rebooted the computer. A little research showed that this was the Norton Internet Security Control Center. This is not an application that you want to have blowing up when you have a DSL connection.

So, to solve that much of the problem, I stripped it from the system and installed ZoneAlarm and AVG antivirus. There are free versions of both, and the licensing allows for home use. As soon as I stripped Norton from the system and loaded the other applications, his DSL connection suddenly began to work like a DSL connection - 180+ KB/s download rate, and everything seemed much more stable.

I would have expected a slight slowdown with Norton, but nothing appreciable. That his DSL connection was reduced to the status of a bad dial-up is something that merits more investigation.

Thursday, October 13, 2005

A Smart MP3 Player for the PC

One of the things I enjoy is playing music in the office while I work. I have a nice selection of MP3s that I have ripped from my CDs and I have them on my local hard drive here. I have been using a small and lightweight MP3 player but it has some problems - it only lets me load up one song at a time, and I have to hit play every time I want to play the song again. There is no facility for queueing more than one title and there is no repeat. In a nutshell, it is a very labor-intensive application if I want to listen to 8 hours worth of music.

I do not use Windows Media Player because it is very large, it does not repeat tracks without a significant delay, and it constantly wants to go to the internet. I have messed with WinAmp and I have played a little with LiquidAudio, and neither of these suit me. In frustration I went out to find a good MP3 player that would simply play more than one file in succession and would allow for repeats.

What I found has to be one of the most amazing MP3 players I have ever seen - Synapse, an artificially intelligent player that has exceeded my expectations.

The first time I ran Synapse, it took an outrageous amount of time to load as it indexed my MP3s and looked for any place that might have music files that it can play. I have my stuff spread out on the hard drive, so it ground away for a while until it was satisfied that it had found everything it needed. The whole process, searching a 40G hard drive, took 2-3 minutes.

Once it finished that, it had a complete library of all my goodies in a sorted list, having figured out the artist and title of each track I have on my system. Playing one of them is easy, I just double-click the track in the list and it fires up. There is a repeat function if I want to play the same track repeatedly.

Where it gets interesting, though, is in what is called "The Brain" which is somewhat like a favorites list - but not quite. I have spent a few days playing assorted tracks. So far, I have picked the tracks by hand, and I have been very happy with that. Today, I decided to do something different and I told "the brain" to select stuff for me. What Synapse has done is it has gone back through my listening history and has selected tracks from those I have listening to, and it has assembled a playlist for me in near perfect sequence, but in a different order than I have ever chosen. It is all over the map but it's not messing up.

This is a SMART player. It has clumped together songs from the same genre, it has not exceeded the number of songs in a genre that it plays beyond what I have played myself, and it fades in and out beautifully.

I tried something yesterday with it that just worked amazingly well. I went into the "console" screen and decided I wanted a playlist of nothing but a particular artist. So, I typed "play artist-name" and that's the list it gave me - all the tracks by that artist, played by default in alphabetical order (I could have asked it to shuffle and it would have done that).

Best of all? It's free!

There are some negatives to this application, though. For one, it has not been updated in almost 2 years. For another, I made an effort to contact the authors about the application and my email was returned due to a full mailbox. So, there is no support with this thing.

But that doesn't matter. It's smart enough that you likely will not need any support. Synapse is the MP3 by which all others should be judged, and I heartily recommend it.

Wednesday, October 12, 2005

Digital Mars C++

I am not shy about my advocacy of the Digital Mars C++ compiler. I have been using it since it was Symantec C++ version 6.0 (and by the way, that version was not exactly wonderful). Symantec held on to it until ending the product line at version 7.5, having given more attention to Visual Cafe (which is also now a dead product - if you trace the history, it went from Symantec to WebGain and then on to Borland who killed ti in favor of JBuiler). When Symantec ended their relationship with C++, they allowed Walter Bright to have owndership of his compiler again and he has continually updated it.

So what compelling reason is there to use this compiler, as opposed to something like Microsoft Visual C++ or Borland C++Builder, or even MetroWerks CodeWarrior? For one, there is the matter of cost. Walter does not charge for the command line version of the compiler, and this makes a compelling case for at least trying it. You can do quite a lot with the command line compiler, although you will not have the full complement of tools and libraries.

For a small investment, you can buy the CD and add in the IDDE and all of the nifty stuff that you might want to do more robust development. One thing that comes with the CD is an older version of the MFC, which is a good option for doing OO-based Win32 development. Some would argue that MFC is dead, but I would say that it is not quite gone yet. If it is dead, why does Microsoft still update it for Visual Studio .NET?

So what about OpenWatcom? It has a full IDE and all the tools and toys, including the libraries and the debuger and and and.... And it's very behind on supporting the C++ standard. And it seems to be unstable, from the times I have tried to use it - I have a simple application that, when I try to compile using OpenWatcom, the compiler generates a protection fault and I get a pretty register dump. And the IDE is, frankly, clumsy.

Walter has expended a good deal of time and energy on supporting the C++ standard. It is quite probable that DMC++ is the most compliant compiler on the market running under Windows right now. If language compliance is important to you, then this compiler is likely your very best choice.

The generated binaries are varied when it comes to smallest vs. largest and fastest vs. slowest. As is expected, this compiler does some things exceptionally well, in particularly memory allocation and management, while it slows down on other areas such as floating point math operations. It is a mixed bag. In general, I have found my code generated with DMC++ to be slightly better than average.

The compiler does NOT support .NET. I personally do not care to code to .NET's standard, so this does not bother me.

There is a good support community for DMC++ as well. There has been grassroots support as far back as the Symantec days, including efforts that have brought BOOST, the STL, wxWidgets, and the latest Win32 SDK to the table. If you get stuck, there is a well-tended support forum on the Digital Mars website (you could just use a news reader too and access the forums that way).

Digital Mars C++ is an excellent compiler, and has been around for a very long time, dating back prior to the Symantec days. It is fast, stable, compliant, and an absolute bargain. Visit the Digital Mars website to score a copy for yourself. If you like the command line version, consider grabbing a CD too.

Resurrecting the blog here

Because I am a bonehead and am an impatient person, I screwed up my blog that was here once before, so I am rebuilding it. I will try to be a bit more diligent in posting, but time and responsibilities frequently get in the way. I will try to keep this to technical articles, but I reserve the right to babble incherently about other things on occasion.