Keep in mind this idea springed in my mind just yesterday, but I’ll try to keep my development cycles as lean as possible, in order to entertain myself. In the past most of my self-driven projects lead to nowhere because I kept focusing on non-functional aspects like performance, code-tuning, including but not limited to implementing wild and new sparkly technologies.
That approach often lead to projects where I would spend a whole year implementing and code-tuning an MVC application in ASP.NET 3, which did all the error handling, real-time logging, corner-case handling that you could imagine, but barely consisted of a couple of forms.
This time instead, I’m eager to launch a minimal version of the site online as soon as humanly possible, and then build on it, adding features on the go. This will also give me the feel of how working with Node.JS on a production environment feels like.
I come from a strong C# background, although I consider myself to have a pretty decent front-end skillset as well; I figure this will help immensely as I delve into Node.JS. I already took care of a few fundamental decisions, which I expect to be able to fulfill:
- Node.JS on the server-side.
- MongoDB as the database of choice.
- Markdown will be used to write and display blog posts.
I decided on Node.JS in the back-end because even though it’s an entirely new language to me, I sense it will feel familiar working with it, given my past front-end inclination. MongoDB felt natural to me, as I find the idea of using JSON across every single layer very appealing.
Markdown is a simple yet powerful presentation language, and one I feel really comfortable with. Besides there are open-source distributions that make developing around Markdown a breeze.
Where do we go from here?
Right now, I’m writing this post on Notepad++ and I haven’t even begun working on the blog application. Even though I’ve already allocated a public GitHub repository to the task, and I’m code-naming the project NBrut.
Since I want leanness to be a defining characteristic of how I face Pony Foo, I’m using this post as a way to force myself into being able to go live as soon as I’m able to. In order to do that, I have to start by working on implementing Markdown, since it’s probably the part of the application I’m most comfortable coding. I’ll figure out how to solve the rest as I go along.
Pony Foo launched on January 18, 2013.