Thursday, February 11, 2010

URL Rewriting

As mentioned in my previous post, Regex Storm now has URL rewriting. It's nice to have simpler URLs. It's only used on 3 pages right now, but I expect to get a lot of mileage out of it as I keep building up the site. And then there's the SEO bonus, of course. More concise, more readable URLs tend to get better treatment with search engines.

My initial approach to implementing the URL rewriting was very tedious. Lots of code in Global.asax Application_BeginRequest() to manually pick apart the URI. I've done it this way before, but I don't recommend it. Too many little issues pop up as you go down this path.

I ended up going with the IIS URL Rewrite Module. Very easy, very systematic, and overall it just behaves better.

The reason I didn't do it this way at first was because I wasn't using IIS in my development environment. I finally sucked it up and got IIS running on my local box. So now my development and production environments are more similar, I can use (and test) modules locally, and my development environment is more robust. All good things.

Labels:

Pretty Links

I did a lot of work behind the scenes to improve the URLs on Regex Storm. For example, now you can get to the tester page with this: http://regexstorm.net/tester.

I've also made searches on the reference page bookmarkable, so you can save (or share) a specific regex element. Like this:
  1. Match a unicode character
  2. Balancing group definition
  3. Zero-width positive lookahead
And on and on.

Labels:

Wednesday, February 10, 2010

Organized

I've decided to organize the blog posts with four tags:
  • Announcements (news)
  • Features (new site features)
  • Technical (programmer stuff)
  • Articles (regex knowledge)
I'll try to keep posts distinct between these 4 tags from now on. Because someone might be interested in new features, but not the geeky implementation tirade that comes with it. :)

I also thought it would be cool to actually write a few informational posts on regular expressions in general. Maybe add some value to this blog. I doubt I'll have the time to do that very often, but we'll see.

Labels:

Thursday, February 4, 2010

Housekeeping

I've spent the past few days takings things easy with Regex Storm. Mostly been replaying Mass Effect. :) But also fine-tuning things here and there on the site.

I made a few changes so that the ajax stuff feels zippier. I decreased the "are you done typing yet?" delay from 0.5 seconds to 0.25 seconds, and made the progress spinner pop up immediately (instead of after the delay) so the UI feels more responsive.

I also did some good old fashioned HTML/CSS reduction to save bandwidth and make ajax responses lighter. Tip: using shorter IDs for your controls in .NET can make a huge difference, especially with repeating or nested controls. Results vary depending on what's in the form, but in my test case I cut the response size by about 50%.

Also fixed a few browser bugs (silly IE7) and changed some styles (the site is in Arial now).

Maybe I'll finish Mass Effect this weekend. Then buy Mass Effect 2. :)

Labels: