News for the ‘Projects’ Category

Imposter: Simplifying Your Web Dev Process

Ever been frustrated by having to upload or publish static content to a server before being able to check your code? This is a common problem for me as a developer that interacts with Dynamics CRM 2011 on a daily basis. When we need to test a change to a JavaScript file, we have to upload the file to CRM in order to update the Web Resource before being able to test it through our web browser against the environment. This is a very annoying process especially when done in repetition.

Thankfully with the help of FiddlerCore, this was not that difficult of a problem to solve. I took some inspiration from LiveReload and wrote a WPF wrapper around FiddlerCore which I lovingly call Imposter.

image

Imposter allows you to create a profile that contains a couple of basic settings including a base URL or URL fragment to match requests on and a working directory from which local files will be proxied for remotely requested resources.

Another great feature is that Imposter can be set to automatically refresh any HTML page that is able to be proxied whenever a file in your working directory changes!

Let’s use some scenarios to clarify the behavior. Say your settings are:

Here’s what Imposter will do in the following scenarios:

  • Browser requests file: http://awesome/index.html
    • Imposter looks for C:\source\awesome.web\index.html and if found, serves that file to the browser instead of the remotely hosted file.
  • Browser requests file: http://awesome/js/index.js
    • Imposter looks for C:\source\awesome.web\js\index.js and if found, serves that file to the browser instead of the remotely hosted file.
  • Browser requests file: http://notsoawesome/
    • Imposter ignores the request.

So you can see that Imposter has a fairly simple set of rules that it follows by default. I just today added in another profile setting for overriding the default “match this path and file name” rule so that you can serve up files that may not match the default rule. The ability to override the default behavior is especially handy for when your directory structure doesn’t match your deployment structure, or if you want to serve up an unminified file temporarily for debugging purposes.

The only real gotcha is that since Imposter uses FiddlerCore, you can’t run Fiddler at the same time. I see this as a minor problem though and one where the positives greatly outweigh the negatives.

If you want to check out the tool, feel free to grab it or its source code over at http://github.com/gotdibbs/Imposter and feel free to comment or provide feature suggestions!

New Grunt Plugin: QUnit-Minimalist

Inspired by grunt-qunit-serverless and its approach to running QUnit tests in grunt without the overhead of running connect, I setup my own implementation which combines pieces from grunt-qunit-serverless and grunt-contrib-qunit to create a minimalist approach to testing with QUnit from Grunt.

The main goal I had was to make it simpler to setup when converting an existing suite of manual QUnit tests to an automated Grunt-based environment. In doing so I wanted to keep console output to a minimum. Honestly, all I really care to see is that either everything passed, or that these specific tests failed. This way you don’t have to comb through the logs to find which errors you had and can spend more time fixing them.

Feel free to check it out here: http://npmjs.org/package/grunt-qunit-minimalist or on GitHub at https://github.com/gotdibbs/grunt-qunit-minimalist.

Please drop a comment if you have any feature suggestions, or, make a pull request!

Posted: May 24th, 2013
Categories: Development, Projects
Tags: , , , , ,
Comments: No Comments.

Notes on upgrading from Vista Ultimate x64 to Windows 7 x64 – Round 1

This entry is going to be one of several in a series where I’m going to upgrade my desktop PC from Windows Vista to Windows 7. In this first round, I’m going to explain why I’m offering this story as well as start off with choosing an edition of Windows 7.

Background

To start off with, you should know when it comes to data. I’m paranoid. All of my music, videos, and documents are backed up as best as possible on my budget. Music and videos get duplicated out to my home Server 2008 box and all of my documents get the royal cloud treatment through Live Mesh. What can I say, when you lose all of your documents due to a hard drive crash once, then again to a bad configuration, you get paranoid. Data recovery is a painful and tear-jerking process. Therefore when I realized that I’m going to be upgrading my desktop to Windows 7, I also realized that its time to lay out a plan.

If you’re as paranoid as me about data loss, and as nitpicky about having everything work as me, then hopefully you’ll get something out of my experience in upgrading from Vista Ultimate to Windows 7.

Round 1 – Choosing an Edition

First I’m going to have to select which edition of Windows 7 to run on my PC. I know that I’m going 64bit because that’s simply the way technology is going and I’m currently running 64bit Vista already. To those afraid of the 64bit transition let me offer this: 64bit operating system’s have been around long enough now to the point where the problems of “olde” are no longer an issue. It is a rare occasion where you cannot find a 64bit driver. Even some of my older hardware have recently released 64bit drivers. Now I believe that I’m going to go for Windows 7 Professional. I have been running Vista Ultimate, and have not really found a personal need for all the features found in the Ultimate edition. I’m not a huge user of Media Center simply because I stream all my media out to my Xbox 360 or just use Windows Media Player for anything I’m watching locally on my PC. As well, with Windows 7’s improved Anytime Upgrade feature, all of the components for Windows 7 Ultimate will be installed with Windows 7 Professional in case I do decide to upgrade at a later date, meaning I don’t have to be as paranoid and do a clean install in order to upgrade.

Result:

I’m going to start downloading Windows 7 Professional and research through a couple more of the differences in the feature sets of 7 Professional vs. 7 Ultimate just to double check my thoughts.

Next Time

For my next entry, I’m going to start looking at drivers for my PC and all of its peripherals to make sure their Windows 7 counterparts have been released and are working considering Windows 7 doesn’t officially release to public until October 22, 2009. Drivers will play a major role in my upgrade considering my setup includes a mix of brand new hardware, ancient hardware, and infrequent configurations of that hardware. My main concern being my RAID 0’d hard drives that I plan to install Windows 7 on.

Posted: August 9th, 2009
Categories: General Technology, Projects
Tags:
Comments: No Comments.

Web Server Woes

I’ve been having a fun time dealing with Windows Server 2008 this last year or so since I first got it up and running for PING. I just recently moved and forgot to forward the ports on my router again, so the website has been down for several days. Doesn’t help me to notice either considering I do all my work on it at home so I never know if the outside world can really see any of the sites I have served up off of the box. I’m slowly getting better at dealing with Windows Server ’08 and will try to keep everyone enlightened with my trials and tribulations of running an enterprise server out of a small apartment :P

Posted: August 4th, 2009
Categories: Ponderings, Projects, Servers
Tags: , ,
Comments: No Comments.