What to do with old domains?

So, it seems I suffer from one of two problems.
  1. I am incapable of seeing a personal project through to the end
  2. I struggle to find the time to dedicate to personal projects
I sincerely hope it’s number two.

I own the domains scraptrack.net and sharpnote.net.  Both were bought as the title domains for planned projects.  I did actually manage to start Sharpnote – a simple .NET wrapper to the Simplenote API.  However my workload in my actual job increased and it took some time getting used to being that busy.  By the time I was back to having free time that I didn’t use to just relax, I was using Workflowy for all my lists/note tracking and my interest in Simplenote waned.

That said, I do hope to get back to using the domains for something.  For the time being, I just don’t know what.

In an effort to be a little more organised and possibly a little more forward-thinking I plan to write blog posts a lot more often.  2-4 a month would be great.  I’m not holding any promises to myself but instead of trying to write on something that is new and hoping to be heard I’m just going to write on something that interests me.

I’m no literary genius either so if the post is only a handful of words or paragraphs, that’s just fine.

Multipart Form Posting in Android

I'm chugging away making a native Android app for the rather splendid @stringfellow.  It's been quite the eye-opener in terms of Android fragmentation, the joys of returning to Java after a (very) long hiatus and the intricacies of the platform as a whole.  I fully intend to write-up a few posts on what I've done (and hope for feedback on how things can be improved) but the following was an unexpected pitfall I think is worth talking about now.

Naturally the wealth of apps on Android and other mobile devices require some kind of network interface for consumption of data and communicating details back to servers.  Android - being built with Java - allows you to use the org.apache.http.client.HttpClient which is great until you want to send an image/file or anything else in a multi-part form.

The version of HttpClient in Android (2.2 - not developing against other versions yet) does not have support for multi-part forms.  You could write content as separate entities/directly to the stream but that can soon get messy.

To make things simpler, grab the HttpClient (4.1.3) jar from Apache, drop into your Android project build path and do the following in your request/response handler:


Chrome Dev Tools: CSS Auto-Complete

The Chrome Dev tools provide a lot of functionality to you as a developer when making changes to scripts, CSS, HTML or testing out the performance of a page.

Chrome filters the properties based on the text you enter
One of the great features of editing CSS is the auto-complete that allows you to quickly add style elements.

Begin typing and Chrome will provide a list of matching CSS properties, use the arrow keys to select an item, hit tab and you'll then be able to set the value.

When setting a value hit ctrl+space and you'll get a list of values appropriate for the property.

Hitting 'ctrl+space' provides a full list of static values
The final icing on the cake; if you enter a value such as 22px you can then use the up and down arrow keys to change the value.  This is ideal when attempting to position of scale elements on the page as all CSS changes are applied in real-time :-)

A vast array of other features are available in the tools.  Full guidance on how to use them is available here

PostLib

I played around with Posterous some time ago (the old version of this blog used to be there).

Twitter recently acquired Posterous and there has been some talk about it shutting down.  Naturally some people would like to get their content out of the system sharp-ish but the latest API needs a key.

I wrote PostLib ages ago when I was looking to process content from Posterous offline.  I couldn't find the original project (but I had the debug version of the dll referenced in an old project).  I've used Reflector to extract the source code and update it to .net 4.0 (it was 2.0).  No promises on it's full capabilities or the quiality of code but it should help out someone.  You can grab it from here

It uses the old API so it may not be perfect, but it does seem to be responding with the expected content.  Hopefully it'll help people out.  You can use it by putting a reference to the project and then doing the following:


New Build

It looks like I may be getting a new work machine.  I say looks as it may end up being a month before anything happens.

Anyway,  having a clean environment to build up I thought it might be an opportunity to look into using some new applications to see if I can improve my workflow and make my life easier.

The usual suspects currently include


Any suggestions for something else that's better then something I'm currently using?

I've also had the thought of sticking a bare git repo on our backup network share to keep track of changes to documents.  Hopefully that'll reduce the number of my_doc_v1/my_doc_v2 etc.  We'll see how that goes!

Books and Personal Development for 2012

During the last six months of 2011 I began picking up and reading more tech books then I think I had in the previous 3 years.

My interest in Javascript increased as I started playing around with Node.js, creating Google Chrome Extensions and in general trying to (hopefully) make myself a better dev. I then went back-to-basics and began looking at TDD before reading up and playing around with some of the loveliness that is HTML5.

I read through (and highly recommend):
I'm not one for making new years resolutions, but I'd like to keep up my tech reading with at least one book a month (dependant on size of course).  I get at least 1-2 hours of reading time a day commuting to and from work.  I find reading in the morning helps me get my brain up and running, reading on the way home helps me switch off from "work mode".

I'm not looking to pick up any new languages, but anything that demonstrates a new way of thinking, developments in .Net/Javascript/Node/HTML or toolkits which make life easier or more fulfilling for a developer would be of great interest.

I'm not restricting myself completely to physical books.  I do have a Kindle which allows me to make use of the wonderful Send to Kindle extension and Calibres fantastic RSS support to read web content that hasn't been published in either physical or ebook format.

My to-read list currently looks like:
  • Castle/IoC - I still consider myself a newbie with this.  There's plenty I do know, but not concrete enough to start from scratch without a reference at every step.
  • NHibernate/ORMs - I've toyed a little with NHibernate but again would like to get more knowledge in my head.
  • Node.js - I'm really enjoying tinkering with Node, it's time to make something a bit more complete and fully featured!
  • NoSQL - I've done some work with CouchDb but would like to see what other systems are on offer and how they fair.  A better understanding would also be appreciated when it comes to the IndexedDb API in HTML5
  • Android - I have an Android phone (and soon a shiny new tab) plus I am duty bound to deliver something to the inimitable @stringfellow that I have already started.
Finally I have just begun 20 Recipes for Programming MVC3 by Jamie Munro, so I'm sorted for this month.

If you've got a suggestion, I'd love to hear it.

(I've also signed up for the Software Engineering for Software as a Service course by Berkeley University, and CodyYear.com by Codecademy both are free and look excellent.)

Gaming For The New Year

I'll admit, I'm a cheap gamer.

It's not often I'll buy things brand spanking new.  While I fully appreciate the time, effort and dedication it takes for a team of developers to create a gaming masterpiece, not all games are masterpieces.  Game prices continue to soar and as a lowly (greedy) consumer I can't afford to buy all the games I want as soon as they are released.  Nor do I always have the time I would like to dedicate to them!

Some games offer a vast amount of playability e.g. Skyrim, some games offer far less e.g. Portal 2.  Both these games are fantastic creations but I felt more comfortable handing over a healthy chunk of money buying Skyrim on release day than I did Portal 2.  I love Portal 2, absolutely love it, for it's design, character and genius.  But I couldn't justify £40+ for less then ten hours of gaming.  Skyrim at 100+ hours is acceptable.

So, being the cheap gamer that I am, I enjoy the January sales.  There has been a recent trend in the high street game stores to offer less interesting deals on pre-owned games.  Some old games such as Hitman and Oblivion have seen a price hike (I got Hitman for £2.50 2 years ago, today it was £7.99!).  With Skyrim being released I assume interest in Oblivion has raised, hence the price change.  But again, 2 years ago I purchased the GOTY edition for £9.99 brand new.  Today the original release (no DLC) pre-owned was £17.99.  Similar patterns can be observed with the Assassins Creed series, Call of Duty and many others.

Two brief shopping sprees have left me with a nice pile of games to get through over the next few months.  By the time I've finished this lot, Assassins Creed Revelations and a few others will have dropped in price!

  • Child Of Eden 
  • Rage
  • Dead Rising 2
  • Far Cry 2
  • Crysis 2
  • Metro 2033
  • Ninety Nine Nights
  • Dark Souls
  • Splinter Cell: Double Agent

Having just looked at the pile under the table I realise I still have this lot to start or play through properly!

  • Skyrim - The missus is currently playing this
  • Fable 2 - Which will undoubtedly lead to buying Fable 3
  • Halo 3 - All the Halo love seems to of skipped me by.
  • Left For Dead
  • Left For Dead 2 - I've only been playing multiplayer with these!
  • Star Wars: The Force Unleashed  - With which I suffered a rather annoying bug where I need to restart my game!

I'll check back at the end of the year and see how many I got through!