State Of The Blog
Posted by Pete Hague on 15 Apr 2012
Time for a little bit of meta-blogging. I've been running this blog for three months now and wanted to write down where I am with it now, and where I want to be with it in the future (There is some actual content here to, so don't click away too quick!)
Firstly, I have been doing a lot of back end work on the blog. Not all readers may be aware of this, but I have written all the code to statically generate Edgepenguin pages myself. Originally, all this coding was done in C, but I am now rewriting everything in Python (which I started learning only recently)
Secondly, I am hoping to find another author to work on this blog with me. This would ideally be someone I know offline, or have a long standing online relationship with - it does involve giving someone access to my virtual machine, after all.
I get asked a lot why I bother coding my own blog from scratch. There are loads of free blogging tools available, and plenty of sites that will host your blog for you. These sites and tools offer a high level of customisation, so that isn't a reason to go it alone. Simply put, I rejected off-the-shelf solutions (good as they are) simply because I wanted the experience of doing it myself.
I am one of those people who code for fun. Much to the annoyance of my wife, I can quite happily come home from work, go to my computer and spend the entire evening coding, even when that is what I've been doing all day. I have been programming since a very early age. I was 4 when me and my brother got my first computer - an Acorn Electron - and I have an early memory of getting it to print the alphabet in BASIC, although I can't be sure how long that was after getting the computer. I do know that by the age of 8 or 9 I was programming in BASIC and beginning to experiment with 6502 assembly language (very well documented in the manual that came with the computer, and there was also this book that my brother had.)
I don't use either BASIC or assembly language any more. I mostly use C unless I've a reason not to, and coding this blog has given me a reason not to. As I mentioned above, I've been converting the blog code to Python. The name I have given to my static page generating code is 'Brain Fart', and below is a table showing one example of how the move to Python has helped me, by reducing code size (using code length as an approximate metric for complexity)
|File||Function||Lines in C||Lines in Python|
|bfindex||Makes the front page||108||62|
|bfsort||Sorts the content||54||18|
|bfcontent||Makes content pages||133||54|
|bfcomments||Makes a comment thread||103||50|
This was before adding the updated features this week. Converting the code was a quick and relatively painless exercise. This has convinced me that all my future blog coding will by in Python, as I find string processing a great deal easier than in C. I will also be looking to use Python, where appropriate, in my future coding exercises.
A New Voice
I'm interested in a collaborator on the blog. I'm already set up to have posts written by different authors, and am about to add full profile pages, and a more elegant method of uploading content (at the moment it involves text editors and ftp.)
A fellow coder would be nice, but not essential. I'm mostly looking for someone to provide content. Someone with a similar background to myself would be best, so as to maintain a constant tone to the blog. The first post gives an indication what sort of tone this is (or rather, what I'd ideally like it to be. I've not been able to stick to it perfectly.)
This won't be for a little while yet; first I need to make some further modifications to the code so that its hassle-free to collect content from multiple user accounts on the VM.
Posted by Freddie on 15 Apr 2012
While I don't contest that coding your own blog is a good coding experience, you need to think about the experience people reading the blog will have.
I don't doubt your ability to code, but I would argue that the design you have implemented leaves a lot to be desired. You are not a designer by trade and so by deciding to do it all yourself the look and feel of the blog may suffer when compared to the coding and mechanics of it.
Personally I will continue to read your blog however good or bad it looks because I'm here for the engaging content, but it may be something to consider if you want to boost your readership.
Posted by Pete on 15 Apr 2012
If you are suggesting that my design is so bad as to stop people reading it, I don't believe that is true. What exactly is it that you don't like?
Many things are a matter of taste, and often I prefer simplicity in design.
Posted by Freddie on 15 Apr 2012
I personally don't think your design will stop people reading, but that doesn't mean that it won't
The design and layout are the things people have to go though to get to the content. They're the first things people notice and so if you want to attract people I'd say it's through the design first then the content second.
Posted by Rob Hague on 15 Apr 2012
Writinh your own blog engine is definitely a worthwhile exercise; I've done it myself. Having tried both home brew solutions and big, polished applications, I'm currently using Jekyll (http://jekyllrb.com/), which is kind of a half-way house. It's more like a kit to build your own solution; you get a similar level of control, but someone else has already written a lot of the tedious bits.
As for design, I agree with you on the simplicity. Making things as simple as they can be (but no simpler) is the key principle of good design. The current look is OK, but there's always room for improvement. Fortunately, the nature of the web makes it easy to see how other people do things.
In terms of getting others to contribute, you don't need to give everyone a user account. I have a submit-by-email script that should be easy enough to adapt; I'll tidy it up and put it on GitHub. It'd also be worth looking at Markdown, to save collaborators (and yourself) writing HTML every time.
Posted by mat on 29 May 2012
I like the design! Simple is good imho.
Keep it up!