Today is a great day for the Web.  IE10 has officially been released for Windows 7 (Sorry, XP, you’re what, 12 years old now?).  This release will play a significant role in getting the majority of the web up to the latest version of Internet Explorer, which is THE release we’ve been waiting for as web developers for years now.  IE “just works”.  With huge strides in interoperability, a 60% increase in supported web standards over IE9, IE10 allows you to write standards compliant HTML and JavaScript and know that it’ll work across all modern browser, including IE10.   This DRASTICALLY reduces development time for web applications and makes the web the best platform for delivering apps (IMHO, of course).  Not to mention it’s the fastest browser on Windows 7 now.

With great power comes great responsibility.

Ok, now that IE10 is standards compliant, there’s no more excuses for web developers.  It’s now on US to write standards-compliant code.  If we do things like checking for IE across the board and serve up IE7 JavaScript, then you are making the web worse, not IE.  If we were to check for Chrome, and run a totally Chrome-specific version of code, that would be unnecessary complexity, and a degraded user experience.  Nowadays, the best practice is feature detection.  By that, I mean doing checks like “does this browser support feature X?” instead of “Is this browser IE9?” Even checking for a particular version can introduce issues if there is a bug or a patch that comes out mid-stream, for example.  So, make sure you use things like Modernizr to ensure you check for features specifically.  In addition, this makes your code work better across even MORE browsers, not just IE, Chrome, Firefox, and Safari.

IE 10 Auto-updates Incoming

Most users will auto-update to IE10 over the coming weeks/months, though if you’re on Windows 7 and want to get rolling sooner (like, now), then you can download IE10 here.  If you want to have a little fun, go play Minesweeper (yes, THAT Minesweeper) in IE9 and look at the performance, then go download IE10 and check it out to see the performance improvement.

Happy browsing!

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Recently I was re-awarded for my third year as a Microsoft MVP for the IE category focusing on web development.  I occasionally joke (no offence, IE team!), that IE is the least fun category for an MVP.  IE takes a lot of flak over its history of IE6.  The internet is riddled with folks who hate IE because it’s fun, or so it seems, but honestly I think the majority are people who have been burned in the past.  Developers under a deadline who have been directed to make their site work with all browsers, only to realize that they’re spending a majority of their time writing THE SAME FEATURE 6 different times for not just Chrome, Firefox, and IE, but Chrome, Firefox, IE6, IE7, IE8, IE9…  See how that feels?  It hurts.  It’s depressing.  The majority of my projects where I’ve worked late nights are because of compatibility issues and checking browser versions.  I honestly believe the IE team is trying to make things right.  The IE MVPs are mostly web developers who have been through the same thing as the rest of the web development community and regularly voice their concerns.  I was lucky enough to become an MVP right before IE9.  IE9 was the turning point, but there was too much lost ground in the standards race.  While time will only tell if IE can shake their IE6 legacy and repair the damage done to the hearts of developers worldwide, I’m going to list a few things the IE team is doing right, wrong, and areas for improvement. Continue Reading…

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS
SW_kauffman_green

The thing I love about Startups is that it’s the combination of two things I enjoy: technology and business.  I’m excited to announce that I’ll be acting as a coach and mentor for the event!  Startup Weekend coincides with Global Entrepreneurship Week, where events will take place all over the world to help educate people about entrepreneurship and help businesses get started.  Here’s the official press release and the Startup Weekend Tri-Cities’ website:

AccelNow, the Northeast Tennessee regional accelerator, will hold a “Start-up Weekend Tri-Cities” on November 16, 17 and 18.

The weekend event is one of the entrepreneurial approaches that is becoming widely used in Tennessee and other cities.

Dave Lawrence, AccelNow Director, described the three-days as “a hands-on experience where entrepreneurs and those exploring entrepreneurship can find out if their start-up ideas are viable.” Based on national averages, attendees at start-up weekends are evenly divided between those with technical or design backgrounds and those who have business backgrounds.

Lawrence said the “Start-up Weekend Tri-Cities” will begin at 6 p.m. Friday at East Tennessee State University’s College of Business and Technology with registration in Brown Hall Auditorium and sessions in Sam Wilson Hall. The planners are specifically interested in those contemplating web-based or phone app development although all entrepreneurs can attend.

Friday evening’s session kicks-off with open microphone pitches where attendees bring their best ideas and try to inspire others to join their team. Teams form that night before day one adjourns at 10 p.m. During the next two days, the teams will focus on developing customers, validating their ideas, and using LEAN Startup Methodologies to build a minimal viable product.

The event concludes Sunday with teams demonstrating their prototypes and receiving feedback from a panel of experts. The hours on Saturday are 8 a.m. to 10 p.m. and from 8 a.m. to 6 p.m.

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

So for the past couple days, I’ve been deep into TypeScript, which is a super-set of the Javascript language that adds optional typing, classes, and module support in addition to standard Javascript.  I’d recently been checking out Dart, from Google, as a way to write Javascript-intensive applications in a way that multiple humans can write code and eliminate a lot of the errors that come along with the dynamic typing.  See, dynamic typing is powerful.  You can do a whole lot of cool things when you can do anything you want.  The issue comes when the app gets so big you can’t keep everything in your head, or you have someone else working with you.  Then, you need a way to know what methods are accepting and returning without having to crack open that method and read the code (that’s why we HAVE classes so we can write something once, and then forget about the specifics of it and only care about the passed argument and return value).  Typescript’s beauty is that it adds all this extra stuff, while still keeping the syntax of Javascript intact.  In fact, Javascript is valid Typescript!  That means you can add types, classes and coolness right alongside regular Javascript code!  Don’t need type checking or anything? – Just use Javascript.  Getting into some really hairy Javascript that you need to make sure what you’re passing around is a valid object? – Add in some classes, interfaces, and types. Once you’ve done that, Visual Studio or the command line compiler will check all the code for errors like it would a typed language, and spit out the plain Javascript for it.  So, at it’s core, it’s not so much a new language as it is sugar for letting tools have something more concrete to check against.  You can even create a definition file for libraries like jQuery to get checking from them as well.  In future versions there’ll be a generator that you can point to an existing Javascript file and generate a definition file.  Pretty sweet!

I tried setting it up in Visual Studio, but had a hard time getting it to compile on build.  I was still having to run the command line compiler (this was on an existing project, so that may have had something to do with it).

Here are the steps to get it working to compile your Typescript files on build in Visual Studio 2012:

Continue Reading…

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

When you think about building a startup in your spare time, one of the biggest barriers to that, particularly if you’re a .NET developer is that you’re going to have to spend a lot of money to purchase Visual Studio, servers, subscriptions to payment gateways, and more.  It’s easy to buy into the perception that it’s harder to build a startup company on the .NET stack than it is on something like Ruby on Rails or Java, that’s completely open source and free (including usable IDEs).  When you come right down to it, though, I think this can easily be debunked.   Here’s 5 specific ways and products you can use to build a Software as a Service based startup for free, where you’re guaranteed to not spend a penny until you’re making money. Continue Reading…

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

I love Visual Studio releases.  I remember when 2005 came out when I was in college, and while everyone else was writing their projects in C++, I was using C# and VS 2005.  I asked my professor if I could write my programs in C# (this was an architecture class where the apps could be written in anything).  I remember finishing my program way early, and with time to go back and add bells and whistles (yes, I did non-extra-credit extra-credit for fun…a nerd through and through).  The thing was, though, is that Visual Studio was such a joy to program in compared to DevC++ and even Eclipse, that I actually WANTED to write more code because it was so much fun.  I’ve been using the Visual Studio 2012 RC for a couple months now and have loved every minute of it.  So, to celebrate its release, here are my top 5 awesome features for in VS2012. Continue Reading…

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

If you’ve got a website, then chances are it’s built using a CMS.  You know, WordPress, Orchard, Joomla, DotNetNuke.  Why wouldn’t you?  They let you manage all your content on nice admin screens and PHP, ASP.NET, or whatever serverside technology your CMS is built on will magically and dynamically create your website pages every single time a user hits your page.  It’s one of the many ways the web has become so powerful since the olden days when all websites were just a link or two and a flashing, seizure-inducing banner at the top.

What is a static .html site anyway?

Well, if you didn’t already guess, a static site is the opposite of dynamic.  I’m not saying that nothing on your site moves or it’s bland in some way.  Not at all.  What I mean by static .html sites is that the .html has already been pre-generated and is just laying out on the web server as opposed to all your content being stored in a database to be dynamically mashed together when a request comes by a serverside technology like ASP.NET or PHP.  When my friend, Brian Connatser, first told me about his project Hera, which uses Twitter Bootstrap, Jekyl, Rake, and a few other technologies to pre-generate a static site in seconds, it really got me thinking.  Why would anyone want a static .html site with the options we have today in CMS products?  Why would you go seemingly backwards to the old days of .html?  Here’s what I learned after doing the research: Continue Reading…

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

In the past, I’ve had managers who have asked me for a daily status report of all of the items I’ve worked on during the day…every single one.  They essentially said if it’s not documented that it didn’t happen.  With all the tools we have available to us as developers, there should never actually be a case where what we code isn’t documented.  I’ve heard many people say that 10 minutes is about the amount of time you should have between source control commits, which means there should be a TON of paper trail to show for what you’re working on.  The problem is how do you show this to non-technical managers?  Do you give them access to source control to see commits?   What if even printing out the commit log is too technical for them?  At bare minimum, they’re likely using some sort of project management tool.  Luckily, today we can connect source control, bug/task trackers, and project management tools together to automate “daily status reports” away forever.  In this video I talk about Microsoft’s Project Server and Team Foundation Server connector that lets you do just that.  Take a look.

 

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

I recently came to the conclusion that I needed a MUCH better starter project for building ASP.NET MVC applications.  You see, I’m not a designer.  I just don’t have those skills.  I can make things look good in my head, but I can’t translate that to Photoshop and then to CSS attributes.  Then one day I stumbled upon Twitter’s Bootstrap project, which is a free, open source CSS/JS framework/library that has literally everything you need to build a quality, production ready application (from a design perspective).  It’s by far the most exciting project for me in a long time, as it fills the huge void and weakness that I have in building good-looking stylesheets from scratch.  Then, this past week I found CodeFirstMembership - an open source membership provider, similar to the ASP.NET .mdf file in the default starter projects, but that is written using EntityFramework Code First.  This…this was huge.  So I decided to begin to curate all these technologies in to an ASP.NET MVC starter project to end all starter projects (ya know, if you plan to go live very soon after you start and expect folks to not throw up when they see your site).

Continue Reading…

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

One of the big things I’ve seen flying around Twitter lately is the question of whether or not XNA is being depricated or faded off into the sunset or whatever.  I can understand how if you base your entire career on a single technology this might be scary, but remember that XNA isn’t available in METRO UI apps only, and that’s because Metro UI uses DirectX 11, and the current XNA implementation uses DirectX 9, which is still supported by the standard desktop view.  This means that XNA is still very much alive and well in the Desktop, and I would say thriving.  XNA isn’t going away anytime soon, and here’s why: Continue Reading…

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS