Introducing the Redwerb Image Visualizer

by Brian Brewder April 03, 2009 19:40

I was in need of an image visualizer for Visual Studio today and I was dismayed that I wasn't able to find one that I could just download and install. Don't get me wrong, I found plenty of image visualizers, but they all required me to compile it myself. So I decided to go ahead and build one myself.

ImgVisScreenshot

The image visualizer includes the following features:

  • Scrolls if the image is too large
  • Zoom the image from 10% to 300%
  • Change the background of the frame from light to dark
  • Includes the following information about the image
    • Height
    • Width
    • Image type
    • Horizontal resolution
    • Vertical resolution
    • Size in memory (an approximation)
  • Quick access to features via keyboard shortcuts

 

[Download]

The source code is also available.

Internet Explorer 8 has been released

by Brian Brewder March 19, 2009 08:54

If you haven't heard yet, IE 8 was released today (March 19th) at 9am (PDT). IE 8 is supposed to be faster and more standards compliant than its predecessor. However, there doesn't seem to be any big, noticeable improvements to the browser like there were in IE7 (like tabbed browsing) so it will be interesting to see what the adoption rate for IE 8 will be.

Download Internet Explorer 8

If you like following the browser wars, Firefox 3.5 (codenamed Shiretoko1) seems to be just around the corner. This is a major update to the current version of Firefox (3.0).

1. Shiretoko: according to Wikipedia, this is an Ainu word meaning "end of the earth".

Tags:

Tools

Red Gate Buys .Net Reflector

by Brian Brewder August 20, 2008 11:51

Apparently Lutz Roeder has sold Reflector to Red Gate. Red Gate has said they plan on keeping a free version available. Red Gate has a lot of great development tools, such as ANTS Profiler and SQL Prompt. It will be interesting to see what they do with Reflector (I'm hoping for a Visual Studio add-in that allows you to debug into assemblies where you don't have source code :)).

Lutz's announcement

Red Gates announcement

New download page for Reflector

Tags:

Tools

Developer Express Release Notes Viewer

by Brian Brewder January 09, 2008 01:43

If you use Developer Express components and need to see what has changed between versions, I have built a tool that will display all the issues that they have included in their release notes between version 6.1.0 to 7.3.5 (you can add additional release notes if you want to) in a grid. This allows you to filter, sort, group, etc them so you can see exactly what has changed.

The following link provides additional information about this tool...

UPDATE: The viewer is no longer available. It is no longer relevant since DevEx updated the format for their release notes.

Tags:

Tools

Favorite Tools

by Brian Brewder January 05, 2008 14:24

If you are interested in seeing a list of the tools that I like to use regularly, I have added an article called Favorite Tools on my website.

I plan on keeping this list up-to-date on some sort of regular basis (probably annually). But don't worry, I will post to my blog when I make updates.

Tags:

Tools

Ultima Hosts lives up to its name

by Brian Brewder January 05, 2008 00:22

[EDIT 3/8/2009] Never mind. Their service now sucks and considering the cost, definitely not worth the effort.

I've been using Ultima Hosts as my web host since April, 2007. The main reason I got a web host was so I could mess around a bunch of stuff that I couldn't of done otherwise (even though I spent many years as a web developer, I never really got into the admin stuff). I spent weeks searching for a good host, unfortunately I had no idea how to determine if a host was good or not so I ended up asking the ch 9 community for a recommendation and they led me to Ultima.

Now it should be noted that my requirements for a web host are pretty minimal. I was looking for one that supported ASP.Net 2 and included SQL Server. I didn't have any serious plans at the time for a website and certainly wasn't concerned at the time about bandwidth or large amounts of storage. I just wanted something that was developer friendly, and Ultima certainly delivers on that.

If you are interested, here are some of the specs for the Standard .Net hosting package (this information is likely to go stale, check their website for current information)...

(the Professional.Net package is in parens)

Cost: $199 ($299)
Space: 2GB (5GB)
Domains hosted: 1 (5)
Sub domains: Unlimited
Bandwidth: 30GB/month (100GB/month)
Mailboxes: Unlimited
SQL Server databases: Unlimited (with remote access)
ASP.Net 2.0 (with full trust)
.Net 3.5
Total DNS control (I used this today to switch to Google Apps for Your Domain)
Lots of applications (such as Community Server)
Lots more, check out the website if this isn't enough for you :)

All this plus great customer service. I have sent them numerous emails and they have always responded very quickly and accurately, even in the middle of the night (usually within 30 minutes or so). In fact, it's their customer service that has prompted me to write this review (perhaps I feel a bit guilty about wasting their time with all the dumb questions I've asked :).

If you are looking for a company to host your web site, I would enthusiastically endorse Ultima Hosts.

Great Software of 2007

by Brian Brewder December 29, 2007 13:57

2007 was another great year for software. Here are a few software releases that caught my eye and imagination. I might not use all of the software on this list, but I believe most of these will have a significant impact on the software industry in some way or another.

Microsoft has a strong showing in this list. Of course, I'm a bit biased. I'm a .Net developer and most of my time is spent developing with Microsoft technologies, but a lot of the stuff they've released this year has been fantastic. If you can think of any software released this year that should be on this list (Microsoft or not), feel free to leave a comment.

The links below go to the original announcement of the release where I could find it. The reason a lot of the dates are towards the end of the year is because many software products release multiple versions per year and I tended to grab the announcement for the latest major release where possible.

iPhone (January 9th)

Strictly speaking, the iPhone is not software, but the innovations in this product, such as the multi-touch screen, have had a significant influence on software, especially for handheld devices.

Surface Computing (May 29th)

Again, this isn't really software per se, but like the iPhone it has (or may have anyway) a significant impact on how software is written. The primary innovation is multi-touch which isn't really new, but has historically been too expensive for consumers. Microsoft's surface computer isn't being sold to consumers yet, but who knows what the next few years will bring.

Silverlight 1.0 (September 4th)

Silverlight has the potential to replace HTML as the predominant means to delivering content over the Internet. Silverlight can present data in a pleasing graphical format with improved capabilities, better performance, and less effort than HTML not to mention the ability to be highly interactive.

I'm sure Silverlight won't take over the world overnight (it still needs to address multi-platform issues as well as overcome the inertia of HTML), but in years to come people will expect a more interactive experience that HTML just can't provide (AJAX is a stepping stone, but it isn't the final solution).

IIS 7 RC0 (September 27th)

IIS 7 introduces a ton of new features. Of particular interest is the ability to extend just about any part of IIS (including the core HTTP processing engine) using managed code as well as simplified deployment and configuration. If you want a good overview, check out the article Explore The Web Server For Windows Vista And Beyond at MSDN Magazine.

Ubuntu 7.10 (October 10th)

After years of putting off installing Linux, I finally did it. Installing Ubuntu was an entirely painless process. I was amazed how easy it was. The best part of Ubuntu was that I could run it from a DVD to make sure it will work on my system before I committed to installing it. To install it, I simply double-clicked an icon on the desktop and it was able to create a partition of my hard drive and install to it without breaking my install of Windows XP.

I would love to see Linux seriously challenge Microsoft, unfortunately if you have ever seen the distro tree you would probably understand why Linux has not had any significant impact on the consumer market (how's somebody like my uncle going to know which version to pick?). Hopefully the world of Linux will embrace a single distro as the consumer version of Linux and I believe that Ubuntu has a serious shot at being that distro.

Windows Home Server (November 5th)

Although most households today don't need their own server, many do (I'm pretty sure I need one anyway :)). It is also fun to dream about a future where all new homes are built with gigabit networks and home server closets just like all homes have plumbing and wiring and spaces for common household appliances such as washers, dryers, refrigerators, etc.

Windows Live Writer 2008 (November 6th)

After many months of no communication or releases, Microsoft finally released Windows Live Writer. This is the tool I use to write all my blog posts. It's simple to use and integrates with a ton of different blogging services out there. This is the tool that will be setting the standards for any protocols dealing with publishing to a blog. Live Writer support was one of the requirements I had when I recently picked new blog software.

Visual Studio 2008 and .Net 3.5 (November 19th)

This was the software release that I looked forward to the most this year. I use Visual Studio practically everyday and was glad to hear that they were putting in a lot of effort to improve the performance. I haven't used LINQ yet, but am eager to try it out once I've got something to use it for.

Parallel Extensions to the .Net Framework CTP (November 29th)

With the emergence of multi-core processors, developers need to step up to the plate and provide software that can utilize this additional processing power. In order to help make that happen, Microsoft has released a library to make this easier. Check out the team blog, Parallel Programming with .NET, for more information.

ASP.Net 3.5 Extensions CTP Preview (December 9th)

This package from Microsoft introduces the ASP.Net MVC architecture and URL routing (amongst other features). I'm not much of a web developer anymore, but this stuff seems like it could have a significant impact on how web applications are developed.

Tags:

Seam Carving

by Brian Brewder October 25, 2007 00:10

Have you heard of Seam Carving before? Seam Carving allows you to stretch or squish images without distorting them. It's an amazing process that you have to see to believe. The video is just a little over 4 minutes and well worth it (even my wife thought it was cool, though she might have just been pretending).

I learned of this through a blog post by Mike Swanson. He has created a .Net version of this algorithm. I'm really hoping that this makes its way into Paint.Net!

For more details about Seam Carving, check out Seam carving for content-aware image resizing [20 MB PDF].

Tags:

SlickRun Review

by Brian Brewder July 16, 2007 12:31

Summertime has really effected my blogging schedule. I've been spending my freetime working on a website for my neighborhood and building a garden wall. I'm almost done with the wall, but we might end up extending it another 30 feet, so we'll see.

Just recently I've started using a tool called SlickRun. It's a very simple tool that is essentially just a textbox (no form, buttons, etc). It allows you to type in commands similar to the Run (Win+R) dialog built into Windows. The cool thing about SlickRun however, is that you can also add "MagicWords" to it so that you can perform more complex commands with a single word.

There are plenty of configuration options for SlickRun to get it to look and work the way you want (see the screenshot to the right). You can even setup SlickRun to run instead of the Windows Run dialog. This is a little tricky since you have to edit the config file (I'm not sure why this setting isn't in the SlickRun config dialog), but once you set it up, when you press Win+R you get SlickRun!

Instructions to setup SlickRun to handle Win+R in Vista
  1. Install SlickRun
  2. Open Windows Explorer (Win+E)
  3. Navigate to your profile directory (C:\Users\\AppData\Roaming\SlickRun) - AppData is a hidden folder, however, you should be able to type in the path directly.
  4. Open the SlickRun.ini file in your favorite text editor
  5. Locate the GrabWinR setting and change the value to 1 (GrabWinR=1)
  6. Save the changes

Tags:

Tools

Making the Build

by Brian Brewder June 15, 2007 02:29

I am of the belief that an automated build process is perhaps the most essential element in producing a quality software application. The build process can be used to enforce good practices within the development team and also detect any issues within the application in a timely manner (the sooner you know about a problem, the less code you have to look at to determine what caused it). Even a small team with a simple application can benefit from an automated build process.

Recently I've gotten the opportunity to recreate the build process for the company I work for. The product is over 5 years old, is fairly large and complex (well over 200 separate .Net projects as well as database and legacy code), and has grown a fairly complicated build process using a combination of batch files and custom executables.

The main reason for recreating the build process is due to the difficulty of maintaining it. There were quite a few batch files and it wasn't easy to run. We averaged a build about once a week (builds should be run several times a day, nightly at most) and the unit tests weren't run very often and if they were, the results often times weren't published (it could be months before you find out a unit test no longer works and then who knows what changed that broke it).

I started building my own build software using Windows Workflow (see my April 28th post, Windows Workflow and Your Next Build System). Although it probably could work and is a great way to learn Windows Workflow, I soon remembered one of my life rules, always use the right tool for the job.

I decided to try FinalBuilder instead and boy am I glad I did. FinalBuilder (FB from here on) is a great build tool. They have dozens (maybe hundreds) of different actions (that's what they call activities or tasks) available to use, such as MSBuild, get from VSS, run SQL, update AssemblyInfo, NUnit, send email, etc. They also allow you to write script (either VBScript or JavaScript) that is run during the build. If that isn't enough for you, you can also create your own custom actions using .Net (or other supported languages).

I've looked at several of the build tools available out there today (especially the free ones :) such as MSBuild and NAnt and the thing that strikes me about these tools is that they seem to be designed for full time build engineers. I don't have time to figure out how to setup these tools let alone write a complete build process using them. Perhaps even more frustrating is that I actually did take the time to learn MSBuild at one point and had done some interesting things with it, however, I couldn't tell you the first thing about MSBuild anymore. I wouldn't use MSBuild to create an entire build process for the same reason I wouldn't use Perl to write an entire ERP system (write only code doesn't work well in a complex, constantly evolving product).

I am not sure if it would have taken longer to create the build process using another technology (such as MSBuild or batch files) or not, but the big benefit in using FB is in the ability to maintain it months later and, if I'm lucky, by somebody other than myself (I definitely don't want to be the "build" guy).

I'm sure there are other great build tools out there. If you know of one, feel free to leave a comment (I always love to find out about new tools :). I plan on writing another article within the next week or two that has more concrete tips for creating a build process (perhaps even some source code), so stay tuned.

Tags: ,

Powered by BlogEngine.NET 1.6.0.0

About the author

I've been a software developer since 1999 and have been working with .Net since 2002. I love creating software, playing with productivity tools, and improving the process of software development. I hope you enjoy my blog. Please feel free to leave comments or contact me, I would love to hear from you.