Home » 2016 » January

Using Gulp to Bundle, Minify, and Cache-bust

Last week I discussed how to setup Node.js and Gulp in Visual Studio 2015.  During that discussion, I mentioned that I’m using gulp to bundle, minify and cache-bust my HTML, CSS, and JavaScript files.

This week, my intent is to walk you through exactly how I do that.

So, if you don’t already have Node.js and Gulp installed, you may want to go back and read the article I wrote last week.

Since most of the people who read this blog are ASP.NET developers, there may be a few .NET specific tips along the way.  But the Gulp file I am going to walk you through is technology agnostic.  So if you are using some other technology, you’ll still benefit from this article.


Continue reading “Using Gulp to Bundle, Minify, and Cache-bust”

Using Node.js and Gulp with ASP.NET in Visual Studio 2015

As I’ve written before, I’m using Angular a lot recently to write the client side of my web applications.  As I’ve gotten to the end of my current project, I found myself needing to implement cache busting and while I am at it compression.  But because I’m using a regular HTML page to serve up the shell for my single page application, using the regular ASP.NET on the fly compression wasn’t going to work for this application.

But there are a lot of tools in the Node.js space that will work.  Would it be possible to wire node.js and Gulp with ASP.NET in my existing web project?

It turns out you can. Although, at this point, it isn’t as straightforward as most other things in Visual Studio.


Continue reading “Using Node.js and Gulp with ASP.NET in Visual Studio 2015”

Cross Browser JavaScript Copy and Paste

I’ve searched all over the Internet for a Cross Browser JavaScript Copy and Paste solution.  I couldn’t find anything that really worked.  But I was able to put together the bits and pieces I found into a rather simple solutions.

As you may have noticed, I’ve written quite a few articles about programming in JavaScript in the past couple of years because I’ve spent most of my time programming in JavaScript.  For the last three months, I’ve been working on a browser based application that needed to be able to copy and paste between the browser and an external spreadsheet.  The main struggle in making this all work correct is that what needs to be copied to the clipboard is the underlying data of the application.

Getting this all working in IE, even the most recent version that runs under Windows 10, was pretty easy.  And fortunately, the browser of choice at this company is Internet Explorer.  But, it is IE 11, which takes twice as long to do anything with JavaScript as Chrome does.  Chrome is their secondary browser and my mission has been to find a way to get copy and paste working reliably using Chrome so that the end user would have a better experience with the application.

While the work I’ve been doing has been using Angular, the solution that I provide in this article using plain JavaScript with no dependency on any framework.  I want the solution to be available regardless of what framework you might be predisposed to use.  If you use angular, or jQuery, or whatever, the code should be easy enough to adapt.


Continue reading “Cross Browser JavaScript Copy and Paste”

Increase Your Excellence Capacity

Today I saw a GREEN traffic light for the first time.

OK, that’s not entirely true.  What I mean to say is that I saw that it was green.

You see, I was born color blind.  This never really bothered me because, like most people who are handicapped from birth, I didn’t know what I was missing.

But then, I found out that there is this company that sells glasses that help color blind people see color.  They are pretty expensive, at least they seem pretty expensive when you believe you don’t really have a big problem.  But then I took the standard color blind test on their site and found out

  1. I’m color blind (duh!)
  2. there is an 80% chance that the glasses would help and
  3. I only see 2% of the available color spectrum.

Wow! Only 2%?  I knew I had issues.  But I’ve been able to function.  But only 2%.  What am I missing?

Well, my wife got me a pair of glasses for Christmas.  Unfortunately, I ordered indoor/computer glasses and what they sent are sunglasses.  I’m still trying to get that resolved. Sad smile  But just for kicks, I wore the sunglasses out while I was running errands today.  This is the first sunny day that I haven’t been stuck inside since Christmas.  The reds are redder, the yellows are yellower and, hey! Guess what?!  The green light is actually green!

So, what’s this got to do with programming?  You did know this was going to eventually relate to programming right?


Continue reading “Increase Your Excellence Capacity”

JavaScript Alchemy with Strings, Numbers, and Booleans.

Those who are relatively new to JavaScript might have the impression that JavaScript has no variable types.  After all, we declare everything using var and we can treat

if(1 == "1")

The same as

if(1 == 1)


if("1" == "1")

But the reality is that JavaScript includes a very rich typing system with some well-known, and some little know methods of detecting types and converting from one type to another.


Continue reading “JavaScript Alchemy with Strings, Numbers, and Booleans.”