kdmurray.blog

The crossroads of life and tech

Thoughts on a New Podcast

Podcasting :: Deliver personally driven messages to anyone who's interested. Develop your own "pod culture."

Over the past year or so I’ve been kicking around the idea of starting up a podcast of my own to go along with the efforts that I’ve put in with Dave and Cait on the Aussie Geek Podcast. I love doing the AGP and it helps to stimulate a large portion of the geek side of my personality… but not all of it. The one piece that it leaves off is the developer piece.

I’ve tried to stimulate this in a few different ways in the past, writing blog posts around pieces of code; trying to kick off a standalone open-source project and writing my two plugins for WordPress (Admin Links Widget, Random Image Selector). Though these were all items that I enjoyed they lacked a certain interactivity.

When Jeff offered to let me co-host WordPress Weekly to provide a developer’s perspective it gave me the unique opportunity of mixing my interest in software development with an interaction with a community. I only did a handful of shows at the end of last year, but it helped to reinforce that I really enjoyed putting my skills to use providing information for other people.

There are a great number of development-focused podcasts which discuss wider abstract concepts, and complex topics but precious few which dive into the nuts and bolts of specific software development topics.  Examples of a couple that I’ve really enjoyed listening to lately are the .NET Rocks! podcast (Carl Franklin, Richard Campbell) and the Stack Overflow podcast (Jeff Atwood, Joel Spolsky).

Realistically, this new show idea won’t come to pass until later this year, probably in the April-May timeframe as I have several weeks of school to get through before I explain to my lovely wife why I’m spending yet more time in front of the computer.

So there it is, out in the open: I hope to be releasing a development-focused show sometime later this year.

Learning by Disaster

I was reading an article on Raymond Chen’s blog today really made me think. The story, for those who don’t care to read it, essentially is about a service (shell.windows.com) which was created by a Microsoft developer as a proof of concept. He ran it off a computer under his desk at first and that’s where it sat… until it stopped working one day. Now that service is run on proper infrastructure in a Microsoft data centre.

In the industry I’m in, this story really hits home. It’s very common for us to make decisions based on the short-term, tools which we don’t expect to be around for a long period of time. We should have learned over that this kind of “short-term gain” strategy almost always leads to long-term pain.

The lesson: Take some time to make sure that tools you build can be left unattended even after the cleaning crew vacuums under your desk.

Investigating the ASP.NET MVC Framework

Over the past few months I’ve been hearing more and more about a new framework being developed by Microsoft and the ASP.NET community.  It’s something that will bring a very common coding practice from the Java world and that’s the pattern of the model view controller (MVC) framework.

Due to the covoluted nature of my own school experience, I haven’t had much in the way of formal exposure to MVC concepts.  In fact it wasn’t until about 18 months ago that I first heard the term when we were rolling out a new Java framework at work.  This was a pretty major shift in direction for my team as we’d been using ASP.NET and webforms to do web application development for the past few years.

The transition hasn’t been an easy one.  Most of the folks involved in the project are new to the company, new to the working world in general and the training on MVC was at a minimum.  (I’m leading a team to replace that framework now, but I’ll talk more about this in some future posts.)

So over the past few months I’ve been reading posts by Scott Guthrie and listening to every episode of the Polymorphic Podcast that I can get my hands on.  The PMP in particular has proven to be an excellent resource for information relating to the ASP.NET MVC framework.  Craig Shoemaker regularly brings on guests who are experts in the field of .NET development and key players in development of the framework.

Over the next few months (in amongst my myriad other projects) I want to take a closer look at the MVC framework and see what all the hype is about.  I need to figure out how to get a decent windows development environment up and running.  For that I’m thinking about returning to a Boot Camp setup to give me a bigger boost when running my Windows environment locally on the Macbook.

Since my new role doesn’t involve a lot of development work, I’m really looking forward to getting my hands dirty again, and diving under the hood once again.

Admin Links Widget for WordPress 1.1.0 Released

Well after a far more successful 2007 than I could have imagined, I’ve released the first significant feature update to the Admin Links Widget.

First, THANK YOU to everyone who has downloaded the widget.  It has been downloaded an astonishing 2300 times since the inaugural release on August 14th of last year.

The most significant changes for this version are the addition of two new links that you can add to your site:

  1. Edit This Post
  2. Edit This Page

These links provide you the opportunity to edit a specific page or post from a link in the sidebar whenever you’re viewing a single page or post (ie not the front-page, or a search result).  This is particularly useful for blogs which don’t have an edit link built into their current theme.

Please take a moment and download the latest version of the plugin from the WordPress plugin repository.  And as always, if you have any feedback, please don’t hesitate to leave a comment on the blog.

Scope Creep – A Real World Example

Here’s a real-life example of how scope creep can absolutely kill a project you’re working on. I tend to find that this particular phenomenon tends to take hold of my projects on a regular basis, and I’ve been actively trying to combat it for quite a while now.

The project in question was a very simple installation of TwitterFeed on my blog. In my recent rediscovery of Twitter, I’ve noticed lots of folks seem to be auto-creating tweets when new posts go up… and quite frankly, I wanted in on that action. ;)

First, a description of the problem. The scope creep I talk about tends to come up when a simple project begins to show you options that you just have to could implement. Each option can really be a project in and of itself, and as a result the original project (which should have taken 10 minutes) has taken you the whole night and you’re up until one in the morning working on it and then blogging about the problem! :mrgreen:

Here are the basic instructions for setting up TwitterFeed:

  1. Step One: Decide you want TwitterFeed
  2. Step Two: Provide OpenID credentials
  3. Step Three: Start using TwitterFeed
  4. DONE!

Here is the example of what happens when you let your curiosity about the extendability of the same plugin get the better of you. Instead of getting this all to work as expected, it causes an evening of frustration.

  1. Step One: Decide you want TwitterFeed
  2. Step Two: Discover that TwitterFeed uses OpenID
  3. Step Three: Read the OpenID tutorial and discover that you can host your own OpenID server
  4. Step Four: Download the OpenID code
  5. Step Five: Read the roll-your-own-OpenID tutorial and discover that you should use OpenSSL
  6. Step Six: Do trial and error until you find a way to actually get the OpenSSL working
  7. Step Seven: After 2 hours of searching, submit a support ticket and give up on the SSL for now
  8. Step Eight: Go get something to drink. Something strong
  9. Step Nine: Configure phpmyid
  10. Step Ten: Add code to your site.
  11. Step Eleven: Realize that it doesn’t work and use a regular OpenID account until you get more time…
  12. DONE!

I rest my case. So let this be a lesson to you:

  1. Figure out what you need to get done
  2. Get it done
  3. Make notes of the other options along the way
  4. DONE!

Flickr Fight Follow-up: The proof

After the post I did a couple of days back about FlickrFight using images and not attributing them to the photographers who took and own the images, I thought it might  help to actually point to some of the things that FlickrFight is doing.

First off, they’re not copying the images, they are getting them from the Flickr API.  As a result they have access to all the information required to properly attribute the photos, and I sorted that out after five minutes of looking through the Flickr API documentation.

Here are two Creative Commons licensed images that came up in my search for Sunrise vs. Sunset:

Photo Credit: onurati on Flickr
Photo Credit: onurati on Flickr

Photo Credit: mandyseyfang on Flickr
Photo Credit: mandyseyfang on Flickr

Get it together, FlickrFight.  Attribute the photos!  Everything you need to know is RIGHT HERE.

Sun Acquires MySQL

Sun CEO Jonathan Schwartz announced yesterday that they have acquired the Open-Source database platform MySQL. This is a huge purchase and one of the largest acquisitions of an Open Source entity that we’ve ever seen.

The goal, says Schwartz, is to put a Fortune 500 vendor behind the innovative technology powering many next generation web-based services. To accomplish that goal Sun is “putting a billion dollars behind the M in LAMP” (and MAMP, WAMP, and of course Sun’s own SAMP…).

Support of open source projects is nothing new for Sun. They have been a positive force behind several other projects in the past including Java, ZFS, NetBeans and OpenOffice.org. This bodes very well for the future of MySQL and companies offering other higher-priced options for production databases will be watching very closely to see what edge this provides in the Enterprise space.

With the acquisition Sun picks up “clients” who may not be using Solaris, or even Java in their implementation but are major players in the Web 2.0 market. These include Google, Facebook, Nokia and WordPress. Kudos to Sun for putting some more muscle behind the Open Source movement, and here’s hoping some more major corporations will now be willing to take a “leap of faith” and make more use of a proven and effective open-source technology.

SimCity Source Code Released Under GPL

Bil Simser has posted an article on his blog about the release of the source code for the original SimCity under the GPL. The GPL’d version has been renamed under the original working title Micropolis to protect the trademarks of Electronic Arts who currently own the intellectual property for the Sim* franchise. If the original title had stuck I wonder what they’d call The Sims these days….

The source code for Micropolis has been published on author Don Hopkins’ website. He has also included a bit of history about this branch of the SimCity project including some technical detail behind this iteration of the code.  The GPL version has also been ported to the version of Fedora Linux being run on the OLPC.  A great way to spread this brilliant game to those who are just getting a computer for the first time.

I love the fact that older software continues to be released to the public domain. I’d love to find a copy of Wing Commander… If there’s anyone out there from Origin (or EA) can we see a GPL’d version of WC1 so that we can play it on our Macs!!

The future of Gaming?

I was sent a link to this YouTube video a couple of days ago, and it took me a bit of time to get around to watching it in its entirety. When you stop to think about what this means for the future of gaming, the future looks pretty cool. This type of thing could give a whole new element to not only first-person shooters, but many other game types too.

The video was done by Johnny Lee, now a quasi-famous Internet personality for a series of articles he’s done about Wii-hardware-related topics on YouTube.  The other two being Finger Tracking and the Multi-Touch Whiteboard.

[youtube:http://youtube.com/watch?v=Jd3-eiid-Uw]

The software for the demos are available from his website.  All of the PC development work has been done in C# using the Direct-X SDK and Visual C# Express (which I’ve blogged about before).

After seeing these videos I want a Wii more than ever.

Random Image Selector 1.2.0 Released

I’ve just put the finishing touches on the latest version of the Random Image Plugin that I originally released in the summer.  This plugin will allow you to produce an <IMG> tag containing a randomly selected image from a folder of your choice on any wordpress page (or post if you allow php).

The two biggest features in this version are:

  1. Automatic discovery of your WordPress Folder:  One of the biggest barriers to entry for the non-technical folks who tried to use this plugin was a lack of knowledge (or access) for finding the physical path to the WordPress installation.   The plugin will now automatically detect and use this path.
    CAVEAT
    : If you currently point your plugin at a folder which is outside of your wordpress installation, you will need to move that folder to use the v1.2.0+ versions of the plugin.
  2. Scaling/Sizing of the Displayed Images: One of the most requested features from the first iteration of the plugin was the ability to resize or scale images to fit in a particular location.  With older versions, if you wanted all the images to display at the same size or proportions then you needed to resize them all prior to uploading.  Well this is no more!  Now you can upload tons of randomly-sized images and the plugin will take care of the dirty work (including the calculation of just how much to scale-to-fit.  :)

I’d like to take the opportunity to thank everyone who has downloaded the plugin, and particularly those who have taken the extra time to send me feedback.  As of this release the plugin has been downloaded over 2,400 times which far exceeds anything I thought I would accomplish.

So give this plugin a shot, and let me know if it works out for you!