Technical

Clean code, and how to write it

Note: the article was originally circulated on #cleancode and #kohana on Freenode and is now recorded here as an archive. It seems very useful as something to link people to on IRC when they have questions, so feel free to share as well.

At SevenStrokes, we practice Clean Code. Although code speaks louder than words, at the moment my public repositories are heavily outdated. What isn’t as outdated, however, is a short introductory guide I wrote on Clean Code for the internal use of SevenStrokes. Although it is a guide which focuses on the basics, it does make some assumptions on the reader having some knowledge about programming. You’ll notice that the examples are primarily written in PHP, but are applicable in all languages.

Clean code architectures

The article answers the question of why good code matters, what is good code, and covers the three pillars of good code: syntax, architecture, and workflow. It shows coding examples of how to write good code, introduces you to the more abstract architectural jargon, and different tools and processes out there.

Without further ado, please click to read: SevenStrokes: Learn how to write Good Code.

Technical

A short and simple beginners look at Markdown

At SevenStrokes, we forego email support and go straight to a forum / discussion-based system based off Vanilla. This is great, because we can organise client discussions much better, focus discussions on certain topics, split and merge topics as they spin off from original topics, and through an intuitive interface that takes no time to learn. Best of all, we can escape from those badly formatted client emails with the annoying 10-line signature and get to the point. That’s the reason our discussion post formatting is based off Markdown.

Too bad it’s not obvious enough how to use Markdown.

I wrote this very short, basic, and purposely omitting details guide to What is Markdown? – I hope you like it :)

Uncategorized

The very best of thinkMoult

Well, a year has passed and it’s a great time to look back over the year and follow the tradition of mentioning the first letter of names who contributed to that awesome year – in alphabetical order of course. Not that these are the only people, but they did definitely add some flavour.

A. B. C. C. C. D. E. G. H. J. J. K. L. R. T. Z.

We notice the entrance of 3 more than last year, with some remaining and some leaving the list, and a new highscore of 13/26 letters. Notably we have a new A, C, G, J, K, and a loss of an F (his fault for not replying) and an M (my fault for somehow magically forgetting he existed).

Now to start looking back at the best posts on thinkMoult ever. Or something like that. In reverse order we have…

Word processing? Real Men use LaTeX!

This little entry marks my discovery of LaTeX – basically a markup language for documents. I still use LaTeX to this day and don’t see myself stopping anytime soon. It’s also an eye-opener for those who think that Microsoft Office is the be-all and end-all. It’s a fun hidden subject to most people on the street and for that it deserves the 8th article of the year.

Sibelius, Finale, Cakewalk? Real men use Lilypond.

Similar to the previous post we continue the theme of "Real Men". This time introducing the markup of music it also represented the creation of Evan, my first music composition in a long time. It’s also opens up the idea of me releasing more compositions in the future as I continue to recalibrate some priorities.

The problem with Gentoo

This charming little post shows my second public displeasure at Linux – in this case a few personal downfalls with the Gentoo Linux distribution. Despite this hiccup I still very much like Gentoo and continue to use it today. In fact, I _just_ got my wireless working :P It also provoked a few comments from the Gentoo crowd (a hocking 16 to be exact) and made me see Gentoo in a different light. Gentoo fills a very interesting set of niches in the Linux market and I’m glad to be in one of them.

Perspective Failure

This was was also a turning point in some ways more than others – it was just after my third Perspective magazine had been released and I insulted my very own handiwork. Or rather it’s printing. I also jabbed at the entire development process for the magazine, complaining about time restraints, inefficiency, and the purpose behind the entire thing. This consequently led to a very interesting "debate" over issues, me refusing to do the next Perspective issue, and a comeback with my final Perspective creation with a completely refreshed design, a revamped workflow and most importantly, my very own article on the front page hoping to instil a little bit of initiative in my fellow students. This initial spark was supported by a whopping 23 responses – and a lot of private emails, too. It continues to influence certain events even today.

Beware of Google

Originally written back in May this definitely overdue post predicted the imminent takeover of Google. Speaking 7 months later with proof that this has started to escalate prooves intuition to be right after all. And no, the web takeover did not begin long before Google – simply because Java isn’t Google. Nor was anybody else that tried to do it. I remain a steadfast opposer to Google services and boycott it as necessary (with the exception of Google Docs, required for working with the KDE promo team). At the same time, it’s a fun thing to watch. This provoked a decent 12 comments.

The Open-Source Market – Limitless and Forever expanding?

This prequel to the 2nd article of the year earns its 3rd article of the year award. It takes a step back at the open-source market and uses Linux as an analogy to observe several of its common problems and mishaps. It takes a few daring jabs at a system to solve it but which will never be realised through raw social inertia. Definitely a wall of text, some brainfart here and there, but a post I like to rereading myself.

Kaizen and Kakushin’s Practicality in Open-Source Business Models

This memorable post was applauded silently through select IRC channels and takes a very simple and small idea about efficiency and extrapolates it throughout many different aspects of open-source business models. A gem of a post, with some lovely diagrams splattered throughout. It also ends with a few open-ended questions and was definitely something I enjoyed writing and reading again. Simple to understand and a good introduction. Yep, that’s the 2nd article of the year.

How to use CodeIgniter’s OpenID library to integrate OpenID in your existing user system.

The Article Of The Year ™ has one hell of a mouthful of a title. It’s one of the few technical posts I have written, in the form of a guide of a problem I tackled myself. It turns out that this is a pretty popular problem and one that hasn’t been answered due to the complexity of answering it. I feel I did a decent job in providing a solution understandable to most people and reports in the comments show that it has worked – boosting my geek cred considerably!

It also wins due to brute force of having 45 comments (and counting!)

’till next year!