Welcome to Developmode
My new home
I haven’t really had the motivation for starting a developer blog until now. The main driver of that change is explained in detail in my first real blog entry, The State of Frontend Development. There are so many things happening in the frontend development world, just so much to talk about.
I’ve read and enjoyed many blogs from many experienced developers over the years. My own experience has gotten to the point where I feel like I now have something worthwhile to contribute to the conversation, and I could use a place to dump my thoughts.
Content
Like any new blog, this one will start off with some simple entries, but I’m not a big fan of filler. The development websites that I enjoy the most have indepth content with complexity. They seemed more like well through-out articles than random thoughts hastily scribbled down. I find that enjoyable to read, so it follows that I would find that more enjoyable to write.
Static site generator?
A developer friend of mine has gotten into the Go language. He was a convert from Python. He used Hugo, a Go-based static site generator, to build out the website for an open-source game that we both played. I had previously glanced at static site generators based on Python, but never took the time to play with them. After talking with him and looking through the Hugo docs, I thought, “Eh, why not?“
The reasons for a static site generator over a database-driven CMS? There are a few. Simplicity of deployment and maintenance are good reasons. Another being that you can keep the entirety of your website in version control (Git), data and all.
Another one for me is simply to have experience with it.
The limitations of a static site are somewhat obvious, starting with the lack of dynamic content. There are some ways around that using 3rd party services — Disqus is commonly used for comments on static sites. I can also add on my own dynamic portion using a backend REST API and a frontend JS client. But there must be some reason to add that. Many websites have very little dynamic content.
Hugo is fun to learn. The basics are not that difficult to pick up. The only difficulty I’ve had thus far has been with learning the details of the Go template system, which Hugo uses by default. It is possible that Developmode may switch template systems in the future. In particular, the Amber template engine is interesting as it is inspired by the HTML preprocessor langauges HAML and Jade.
Reponsive grid layout
The Sass-based grid layout system that I’m using is Susy, which I have used before on another project and enjoyed. I find it to be very flexible where very complex layouts can be achieved very easily. It doesn’t suffer from class overload like many other grid frameworks.
Some refer to this type of grid layout as a smart layout — “layouts that appear correctly without the use of classes to specifically tell an element how it should be presented”. This way, you can use classes more to describe what the element is rather than describing its layout. It seems to work for me.
Design
The design I went with for Developmode was somewhat whimsical, and will have ongoing adjustments or even redesigns. It may be a place where I experiment with some interface ideas.
One limitation of Hugo (to my knowledge) is that it doesn’t support multi-themes or sub-themes. This is something I’ve previously used with the Drupal CMS. I don’t see a technical reason why a static site can’t have different contexts defined and different themes or frontend behaviors delivered for areas of the site. I’ll have to scour around for any ongoing discussions about this with Hugo. I’ll also keep an eye on the Hugo roadmap.
Build out
I used Grunt and Bower for the project construction.
I might consider switching over to Gulp and Slush in the future.
The Roadmap
Who knows? This is just a start and I do not know where it may lead. Developmode may evolve from my personal blog / portfolio to an E-zine on development topics.
Or not.
← Back to posts