Thursday, September 30, 2010

Mercurial diff folding in Vim

I use Merurial a TON these days. One of the things I like to do is to view incoming patches before I pull and update them. Typically, I would hg in --patch | gvim - and browse the diff that way. However, when pulling in several of changesets which modify potentially dozens of files, the output can be quite lengthy.

At first I started to tackle this by just folding hunks, files, and changsets as I browsed through the output. This got to be ridiculously time consuming though. So, one afternoon, I decided to figure out how to make a vim plugin which would do this for me. Here is the result.

Pretty soon, I found myself using this for diffing changesets and managing my mq patches as well. Try it out and let me know what you think!

The script is also in my vimstuff bitbucket repo.

P.S. Be gentle as I am definitely still a beginner when it comes to writing vim scripts :)

Saturday, July 10, 2010

I'm Back!!! (I hope)

Man, has it been a long time since I have updated my blog...

First, let me say that this last year has been really crazy for me. I bought my first house, which has been quite an adventure. There went a couple months of moving and just adjusting to having all the responsibilities of home ownership. Then there was getting a puppy to complete the first house and new fenced-in backyard. That lead to another couple months of getting the puppy adjusted to a new home, doing the important puppy training classes, and replacing destroyed toys and furniture.

All of that has been a lot of fun, but that still leaves quite a few months of not updating my blog. Which leads me to the real reason for being too busy to blab here:

After many many months of planning, programming, testing, and bug fixing, NovaShield has finally released the 3.0 version of our behavior-based anti-malware product.

We are all extremely happy with it and are proud to say that the 3.0 version of NovaShield is probably about the most awesome thing we've ever produced.

For those interested, here are some of the highlights for the new version:
  • Totally rewritten in C/C++
  • Significantly improved detection and remediation engines
  • Decreased false positives
  • Huge performance and memory improvements
  • GUI is smaller, faster, has a nicer look and feel
  • Now supports Windows 7 (32-bit only still)

The new NovaShield Console -- TaDa!

With all of that said, I would be remiss if I didn't ask everyone to grab the latest free trial here. This is my day job and it's hard to stay employed without having any customers, so please try it out and let me know what you think!

I'm hoping I'll have more time to update the blog in coming weeks/months. There are still a ton more exciting things coming down the pipe from NovaShield (64-bit support, for example), so I may still be busy coding and testing for a while.

If you have any casual questions/comments, feel free to drop them here. I don't want to use this as a support forum, however, so any serious issues should be reported to