visual studio with multiple projects

published 29 Aug 2011

When working with more than one project in a single solution, your working environment can get quite cluttered as you follow references between projects, sometimes with conflicting filenames (think generic things like Program.cs). This can lead to confusion as to where exactly the file you are working on is coming from.

I'd like to introduce anyone who is not yet aware of their existence to the Visual Studio Productivity Power Tools (released by Microsoft). These "Power Tools" are basically previews of new features and improvements which will likely be present in the next version of Visual Studio (vNext!), but Microsoft decided to release early to preview and get feedback.

I'd like to focus on one particular feature offered by this pack, which solves the project differentiation problem I mentioned above:

By enabling the Document Well 2010 option, you allow the PPTs to take over your document tabs and display them using a new (improved) format. The killer new feature here being per-project colour choices for tabs!

The defaults are a bit plain, but changing them only needs to be done once in order to get a really nice looking tab setup.

In this screenshot you can see I have files open from three different projects, grouped by project with clearly distinguishable colours. Also note that I have one tab which is pinned to the left -- another useful feature of the PPTs -- allowing it to always remain visible when many tabs are open.

The Document Well part of the PPTs has far more options to explore than the ones I have mentioned, including custom ordering, allowing multi-line display and scrolling and plenty more tick boxes for the control freak. I actually like the default behaviour of the VS2010 tabs for the most part, so only use the two particular features I have covered in this article.

Definitely worth checking out if you haven't already, along with all the other goodies that come with the PPTs extensions.


coding in colour

published 28 Aug 2011

I spend quite a bit of time setting up my development environment to a perfect state. I define a perfect state as one where I can innovate, create and debug without thinking about -- or being distracted by -- my input/output environment. There are quite a few separate elements I'd like to focus on and share, but this time around let's take a look at colours and syntax highlighting.

While I believe my colour scheme was originally based on another, I have unfortunately since lost its origins. It has been through many revisions over the years, but I have been using it for over a good length of time without any changes, so believe it is at a stable point to release!

You can download my visual studio 2010 colour settings here. Preferred colour schemes are quite a personal thing, so I'm interested in hearing about which parts people like/dislike about this scheme!


local game dev meetup

published 27 Aug 2011

Today I attended and presented at a local game development showcase event run by -- "Show us your Bits". I decided to focus on the process involved with porting osu! to the mobile platform, and the technical decisions and optimisations that consumed a large chunk of the development time.

I also had the chance to talk with more local game developers than I knew existed, and give some eager people a shot at osu!stream :).

The event was recorded so there will likely be a recording of my presentation (and others) available in the future, at which point I'll make sure I link it.  For the time being I'm going to dump my presentation's slides here for public consumption. They may not completely stand-alone, but will give an idea of the stuff I covered. If you are interested in anything in particular, leave a comment and I can go into more detail!

Note that due to the filesize, videos are not included in this web-viewable copy.


decommissioning a wordpress blog

published 25 Aug 2011

One of my long-term goals has been to cut down on the number of servers under my control that require frequent maintenance and attention. For over a decade I have hosted personal content (including my blog) on a PC in my house, which has served many purposes over the year including streaming media, storage, web hosting and just as a general shell box for IRC and other persistent connections.

While hosting things locally can be great in some ways (full control, minimal latency), there comes a point when you realise you just don't want to have the hassle of dealing with power and network failures that come with the household environment. Things also change over time, and most of the services provided by a local server -- to myself as well as my family -- are no longer being used; in fact the only remaining uses I have for it is hosting my personal sites and as a shell for IRC.

In moving my blog over to a hosted solution (tumblr, as you can see), I decided to use this as an opportunity to consolidate my hosting and make a step forward towards decommissioning my home server (falco).

The main two sites still being hosted on this server were my blog and splash page for Today I will cover the wordpress side of things, and leave the other for next time.

My thoughts were to create an archived copy of my blog, keeping a fully navigable copy of the content without any security risks caused by maintaining a wordpress install or web server. A quick google search led me to a plugin called Really Static, which allows for static caching of pages. It has a manual option to create a static content of every page in one swoop, which was exactly what I was after.

After adding a "deprecated" header to the top of every page, I went ahead and ran the plugin (which took a good two hours due to my crippled apache2 configuration).

"Really Static" Wordpress plugin

Apart from a few manual corrections for stray images (which could have been avoided with some better configuration choices in the Really Static settings), everything seemed to work perfectly. The static copy ended up being around 68mb of HTML and images.

I had been meaning to give NearlyFreeSpeech a chance for web hosting once I found a project small enough to do so, and this was the perfect opportunity. They offer hosting with a unique payment system where you deposit money and only pay for the storage and bandwidth you use. Kind of like cloud hosting without the running costs. A few calculations showed that with my expected traffic and storage requirements the costs would be well under a dollar a month. Couldn't hope for any more than this!

So my old blog is already up and running on the new hosting in a completely static form. Go take a look if you are that way inclined (but don't try to leave a comment on it; it won't work :p).