Expresso – The Best Free .NET Regex Tool

August 15, 2010

When you’re scaling the north face of a complicated regular expression (well hopefully it’s more like a hill than Kilimanjaro, otherwise you’ve got problems), you need a good tool to help you along the way, a Sherpa to guide you and help carry your snacks.

I’ve tried several (free) regex tools, but none of the others compare to Expresso for usability, features, teaching the syntax, and a just plain cool name.

My favorite thing about Expresso is that it can teach you the syntax – all the way from basics through advanced structures – as you construct your regex.  This makes it great for any level of developer.

Expresso is very helpful for building regular expressions in that you don’t have to know the exact syntax for each construct – you can use the dialogs to generate a lot of it for you!  For example, if you need to insert a capture group that repeats zero or one time, just go to the ‘Groups’ tab, select the group type and repetition type, click insert, and you’ve on your way!

The best feature is the expression tree in the right pane – it breaks the regex into a hierarchical tree, and if you select a node it will also be highlighted in the regular expression, helping you to understand what each piece of syntax does.

When you’re done building your regex, of course you need to test it, and Expresso makes that easy as well.  You can, among other things, run a validation on each line and see exactly which part of the line matches.  It will also show you each match group.

So the next time you get that itch – I think I can solve that with a regex… just make sure you’ve got a good guide, and Expresso is the best I know of.


I Heart Vim

July 13, 2010

I Vim logo

A quest to make my all tools Vimish Vimesque

Vim…ahh such a simple name for such a powerful tool.  I’ve been using this text editor for over 5 years, but I still pick up new tricks all the time.

Vim everywhere!

In a quest to leverage my Vim muscle memory in more than one program, I’m using Vimperator, which turns Firefox’s interface into a Vim-like interface!  Yes, that’s right, it rids you of those pesky toolbars and lets you navigate without a mouse; it even has different modes (It’s in insert mode as I type this 🙂 ).

I also found a plugin to turn another of my favorite tools into Vim: VsVim! It changes Visual Studio’s key bindings to match Vim’s.  I’ve been using it for a few weeks, and so far it works well alongside ReSharper and Visual Studio’s built-in Intellisense, etc.  It’ll even read in your .vimrc!! Oh, did I mention it’s free? This is a great FOSS alternative to viEmu (although I’d still love to try this one to compare the two). It hasn’t hit version 1.0 yet, so I’m really looking forward to the future versions as Jared adds more features.

One more highly recommended Firefox plugin is It’s All Text! Not really Vim-specific I suppose, but it lets you edit any textarea (or textbox depending on settings) in an external text editor.

Hopefully all this Vimania doesn’t fan the flames of the editor war…but if you like Emacs you’re probably off flipping bits with butterflies anyway…

Happy Vimming!


Tulsa TechFest 2009

November 9, 2009

I enjoyed my second  Tulsa TechFest this year.  Although it was only one day instead of two, I still had a blast and got to see some top notch presenters talking about exciting technologies just like last year.

ASP.NET 4.0 4 Fun

The first session I went to was Robert Boedigheimer’s presentation on ASP.NET 4.0 and Visual Studio 2010 and I learned a lot about the new features that are introduced with ASP.NET 4.0/VS 2010, such as finer grained control over client IDs, web.config minification and transformation, some WebForms improvements like easier HTML encoding, and improvements to the routing engine to name a few.  (The ASP.NET site has a great summary).


I saw Shawn Weisfield’s presentation on .NET generics (like the name, too) which was a great way to brush up on a feature I already use every day.  Not only was it a good review, but I was reminded of the performance and other reasons to keep using generics (avoiding boxing/unboxing, reusing code, etc.).

C# 4.0

Chris Koenig did a great job conveying the usefulness/danger of the new dynamic keyword in C# 4.0 along with some other nice features, like easier COM interop (no more Reflection.Missing.Value, woohoo!).

As always, he’s fun to listen to and very informative; I’ve always enjoyed his presentations at my .NET user group meetings as well.

The main new feature is the dynamic keyword, which brings some dynamic language features to the (historically) statically-typed language.  I think Chris summed it up best when he said over and over (paraphrasing)

the only thing the dynamic keyword does is defer method selection until runtime…don’t overthink this

So of course this means less code, but more opportunity to shoot yourself in the foot with hidden runtime errors since method names aren’t checked by the compiler; remember: “with great power comes great responsibility” (thanks Chris…and Uncle Ben).

Rework your workflows

I went to Jennifer Marsman’s session on Windows Workflow Foundation (WF) which was pretty informative. This was a toolset I’d never been exposed to, so I went in hoping to get a good introduction.

Jennifer did a great job packing a lot of information into a relatively short session, explaining both concepts and giving concrete examples. She showed us how to create a workflow in the designer and also explained some of the breaking changes introduced in version 4 of the framework.

All in all, WF seems like a promising technology for modeling business processes, but I think it needs to mature a bit more.

Test Driven Development: A C# Demo

The last session I saw was Brett Schubert’s test driven development (TDD) demo in C#. It was a little more open-ended than I’m used to, and I think it would have been better if we’d had more time. And even though it was meant to be a demo, I think it was more a good review on the concepts of TDD. I still need to see a good example of TDD applied in a large system to judge its worth properly.

All in all, another great TechFest!  Lots of learning, networking, and fun, and it all goes to a good cause.  Can’t wait til next year!


TiddlyWiki for great justice (and notes)

October 6, 2009

TiddlyWiki is a great way to store and share notes, to do lists, task lists, or really anything else that fits well in a wiki style system.  You store things in “tiddlers”, which are small portions of text on the page.  From the intro page:

Most web sites and wikis manage information as pages. TiddlyWiki is different — it saves your stuff in smaller chunks (each chunk is called a ‘tiddler’).

I found a lot of people on Stack Overflow recommended it, so I gave it a try.

BTW, I will from now on refer to it as TW because TiddlyWiki makes me cringe every time I say it to someone at work… “Yeah, I finally found a good place to put all my notes, it’s portable, extensible, simple, and free.”  “Oh yeah, what’s it called?”  “TiddlyWiki…yeah it’s…here I’ll just send you a link…”

The main thing I like about it is that it’s all stored in one HTML file, which makes backup and syncing a breeze.  (I haven’t tried it yet, but soon will and I’ll update the blog.)

It’s also customizable.  You can change the colors, fonts, borders, or anything else really since it’s all just HTML and CSS.  I haven’t delved into the customization too far yet, just enough to satisfy my own obsessive tendencies – the main thing I change was the border around the tiddlers (it’s a  little hard to see where one ends and the next begins) and the color scheme.

There are also several variations, such as TiddlyBackPack, GTDTiddlyWiki, and several others.  I tried some of them, but in the end stuck with the simplicity of the original.

So what started out as a test run has become my primary daily notes system.  I’ve replaced my previous “system” (whiteboard-sticky notes-notepads-Outlook notes-emails to myself at 3 different addresses) with one simple, customizable one.  So for what it’s worth, I highly recommend it!


September 24, 2008

Addicted to Stack Overflow

So, is anyone else addicted to Stack Overflow?  I’ve been on it at least an hour a day since I heard about the public  beta last Monday, and I’m pretty impressed.  So far, I’ve found out lots of interesting programming tidbits, tools, tips, etc.  that would have been almost impossible to find using Google.  I haven’t contributed very many answers yet, but I’ll get there some day! 🙂

I look forward to seeing where this site goes in the next few months and years.  It all boils down to the quality of the community, and so far I’d say it’s one of those places that makes you feel right at home.

P.S. If you want a snazzy badge, like mine, someone was kind enough to make this Stack Overflow badge Creator!  Now you can treat yourself to all the badges you think you deserve, instead of waiting for those pesky “rules.” 🙂

Hello, world

September 23, 2008

Well, I’ve started a blog with the hopes of putting some of my (programming-related) thoughts to paper hypertext.  Who knows, maybe a post ‘er two will even be relevant and helpful to someone besides me!

P.S.  Yes, I had to do that…come up with a blog name related to a *nix joke.