WordPress + Windows at WordCamp NYC 2010

WordCampNYC2010Logo On October 16th & 17th, I had the privilege of attending WordCamp NYC 2010.  WordCamps are community events that bring together WordPress-loving web publishers and developers to learn more about the WordPress platform. 

The first day of WordCamp NYC had a structured schedule with pre-selected speakers and ran very similar to the Code Camps in the .NET community. The second day of WordCamp was run in an open space/un-conference format more like a BarCamp.  Speakers submitted topic ideas Saturday evening, and then an “on the fly” schedule was built out Sunday morning!

A key difference between WordCamp and the .NET Code Camps was the “lightening talks” portion of the day.  With 5 parallel tracks and 6-7 sessions in each one, it’s impossible to catch all of the talks you’d like to see.  So, the WordCamp organizers dedicated the entire morning to all attendees being in a single room.  Each of the ~40 session speakers got to do a 5 minute ‘version’ of their talk for the general audience to promote their session.  This enabled attendees to more easily decide which sessions they wanted to hit, but get a sampling of the ones they couldn’t attend.  I really liked this idea.

At the end of day one, Microsoft (via me) sponsored a dinner for the speakers.  I enjoyed meeting folks in the community and learning more about how folks are using WordPress.

WordPress + Windows: Tips & Trix You Can Use

On the second day, I presented a talk during one of the “un-conference” sessions.  The talk was titled: “Microsoft + WordPress: Tips & Trix You Can Use”.  My goal was to show folks how easy it is to run WordPress on Windows, as well as a bunch of tools & plug-ins that make building your site on Windows a great experience.  

Thanks to all of the folks who took the time to attend and had plenty of questions to ask!

I’ve now posted my talk up on SkyDrive. You can download the presentation, or view it online in the PowerPoint Web App.  The presentation features a lot of screenshots, but I have included links to all of the relevant downloads in the slide notes.

WordCampNYC2010CrowdDarylKoop
The Crowd at WordCampNYC 2010 - By @DarylKoop

To get started with running WordPress on Windows, visit https://microsoft.com/web.

From there you can install WordPress via the app gallery within Microsoft Web Platform Installer, or you can use the new Microsoft WebMatrix beta tool too.  The WebMatrix also features the ability to publish your WordPress site back out to any host (Windows or Linux) via FTP, or to Windows hosts using the easy-to-use “Web Deploy” technology built into WebMatrix & the IIS Web Server.

WebMatrix includes a version of the IIS web server called "IIS Express".  IIS Express is a lightweight, self-contained version of IIS optimized for developers. IIS Express makes it easy to use the most current version of IIS to develop and test websites. It has all the capabilities of IIS 7 and can run on Windows XP, Vista, and 7.  A key feature is that it doesn't run as a service or require administrator rights to perform most tasks.

Tools For Working With Your Site

Microsoft Tech Plugins for WordPress

WordPress + The Cloud

WindowsAzureLogo Do you have a lot of media files as part of your website? Podcasts? Videos? Big high resolution images? Those can add up on your bandwidth costs, especially on a low-end shared hosting account.  Perhaps you should consider hosting your media in the cloud!

Windows Azure is Microsoft’s cloud computing platform.  One of its core features is Storage, handling non-relational (blobs/tables) and relational (SQL Azure) data.

Using the Windows Azure Storage for WordPress Media plugin, you can host those media files in Azure’s Storage system and pay only for the bandwidth & storage you use. Download the plugin at WordPress.org

Windows Azure also offers elastic, on-demand computing for hosting your applications.  Azure helps take away your worries of managing server infrastructure.  Azure is not for everyone though. Hosting a single simple blog with low traffic is probably not economical on Azure. But if you’re running a large WordPress site with lots of traffic and are using a dedicated host today, then you might want to consider hosting your entire WordPress site in Azure!

First announced in late 2009, WordPress can now run in Azure! The set up is a bit manual, but is getting a LOT easier with the recent introduction of a new beta tool called the Windows Azure Companion for PHP. The Azure Companion is like a “Web Platform Installer” for the cloud.  My teammate Jim O’Neil recently wrote a great post on how to use the companion to install WordPress in Azure.

There is also a four part series from the Windows Azure Tech Support team on how to install WordPress in Azure manually:

Of course, if you’re considering the cloud, you’ll want to learn about Azure pricing here.

WordPress + Microsoft SQL Server

SQLServerLogo 99.99% of the WordPress installations out there (including via the Web PI on Windows) run on the MySQL database.  If you want to run WordPress in a company that is a SQL Server ‘shop’, MySQL might not be an option. Via work that Microsoft has done with the community, there is a ‘patch’ for WordPress that enables it to run on SQL Server! This does require a bit more of a manual setup process than using the WebPI or WebMatrix tools shown earlier.

To learn more about running WordPress on Microsoft SQL Server, read here:

If you have already built out a WordPress site with WebPI or WebMatrix on MySQL first, you can migrate it to SQL Server by reading this:

WordPress + Internet Explorer

IELogos Still wracking your brain over supporting IE6? I feel for you.  IE8 has been out since March 2009, and IE9 is on its way soon.

What do you need to know as a site developer? IE8 has a NEW rendering engine that is standards compliant! If you’ve been serving one version of your site to all of the other browsers (Safari, Firefox, Chrome, etc) and a different version for IE, you need to update your site!

You can’t just check for IE, you also need to check the version of IE. If it’s IE6, keep sending that “special” version you wracked your brain over. But if you serve IE8 a page designed for IE6, it MAY BREAK since IE8 has a standards compliant rendering engine!

Two options:

1.) Check the IE version.  If it’s IE8, send IE8 the SAME markup you send to all of the other browsers. This should “just work”. If you have too many places you would need to make this check and no time to fix all of them, then consider the next option…

2.) Add a special <meta> tag across your entire site that will cause IE8 to render your site in “compatibility mode” with the old rendering engine. This is a quick & simple fix that can be applied to your site’s headers in either the IIS or Apache web server.

See these links for help:

Oh… if you’re in to HTML5 and staying on top of the newest cutting edge features, check out IE9 (currently in beta) at https://beautyoftheweb.com.

If you sprinkle a few lines of JavaScript & a meta tag or two onto your site, you can give it a nice integration with the Windows 7 desktop & taskbar. Check out:

Wrapping Up

Want to learn more about PHP on Windows?  Visit the PHP center on IIS.NET!

Finally, you can check out all of the other things Microsoft is working on with open source technologies at the Interoperability Bridges site.