I've spent the last few weeks making this site from the ground up. I was previously pointing my domain at a Tumblr site but as a developer I wanted a place to call my own. It's something I've wanted for some time, probably since I read Rob Conery's post a few years ago. Also, Scott Hanselman's post, Your Blog is The Engine of Community, was a call to action for me.
The Development Stuff
So I used this as an excuse to get stuck in to some technologies I've had my eye on and played around with a bit. First up was Node.js. The more I use Node.js the more I love it. Coming from .NET where a packaging system was a recent addition bolted on top, the integration of npm with Node.js just blows it away. I intend to do a post soon comparing my experiences.
Something else I wanted to use more was MongoDB. I'd had chance to use it via .NET at work but using it with Mongoose in Node.js feels like it was made for it. I'm using a starter account with MongoHQ at the moment so I'll see how that goes.
Finally, I wanted to get some experience of hosting in a cloud environment. I had my eye on Amazon Web Services but I wanted to be able to host the site in Elastic Beanstalk although it seems like they haven't got around to supporting Node.js yet. Although, they have released an SDK Developer Preview so I'll keep an eye on it as although it doesn't support Elastic Beanstalk yet I think this is the way I'll go. I settled on using Heroku and I'm extremely pleased with it. Deployment is a breeze and there is very little friction in getting something up.
The Design Stuff
I've really tried to learn more about design over the last year. I think it's important for all developers to have an interest in design as, like Aral Balkan says, “Design is not veneer”. Having my own site is a great way to experiment and develop my skills.
I decided I wanted to make this site responsive as I've made a few sites like this at work recently. I'm slowly starting out dealing with typography and layout. I started mobile first. Hopefully, I can build on this and become more adventurous as my skills improve. There's something so powerful about seeing something you've made on a high resolution mobile screen and it gets addictive fast.
What I've built is in no way a blog engine. It's a simple wrapper around MongoDB; there's no way for me to add posts through the site even! But I'm looking forward to putting in an admin section and implementing other ideas I have for how I want the site to work. I think I also feel more empowered to post more and use my own creation.