Blog logoMatthew Lang


A 9 post collection

Say Hi to Daring

 •  Filed under Posts, Blogging, Projects

Back when my blog was running on Jekyll, I found solace in the amazing Hyde theme by Mark Otto. Simple, flexible and with a strong focus on the content of your blog.

Due to limitations with Jekyll I switched to Ghost a few months ago. So far everything is going great. The only problem is that many of the themes for Ghost focus on banner sized header and post images.

I ran with the Casper theme from Ghost for a few months. I like the typographical elements of the theme but I dislike the massive banner images for it. I needed a change.

Using Mark Otto's Poole base theme for Jekyll as a starting point, I started building a theme for my blog. The one constraint to the theme I wanted is that it shouldn't use any banner images for any part of the theme.

A few hours later and I have the beginning of a new theme for Ghost.

It's been a while since I flexed my creative cogs. Even though this was just a few hours work, it's still a great feeling being able to ship something. Even if it is just aa theme for my own blog.

The Daring theme for Ghost is available on Github.

Switching to Trello for Project Management

 •  Filed under Project Management, Posts, Projects

I'm halfway through Curtis McHale's book on turning your freelance career into a viable business and one thing that has become clear through reading it is my lack of progress on products and projects. Given that I only use a single list for everything, sometimes projects and ideas get skipped at the bottom of the list. It's the out of sight, out of mind thing. If I'm not reminded of something on a regular basis, I usually forget about it.

In order to make better progress, I'm going to start using Trello for managing projects and future products. I'll still stick a high level task on my master list relating to the project, but all the details for it will reside in Trello.

The reason I picked Trello for this was my familiarity with Kanban boards and some experience I picked up working in an agile team a couple of years ago. Basically the idea of Trello is that you move cards (or tasks) across the board from left to right until the card is complete. In my case my this will be features, bugs, marketing and admin tasks.

Cards move through the following lanes that are typical of Kanban boards:

  • Backlog - All cards start here. Cards are prioritised on a weekly basis with the next card to be done located at the top.
  • Analysis - We do some background work on the card. What does it involve?
  • Development - Let's implement this thing with some nice tests and code.
  • Testing - We test it out in a secure environment.
  • Deployed - Once it's tested and ready, we ship the code for the rest of the world.

Moving cards across the board is a great way to see progress being made, and also with work-in-progress limits, I can stay focused on one or two tasks at a time.

Also I'm currently using Trello with a couple of clients for project management, so the switch from their projects to my own when things are quiet is easy to do and I'll already be familiar with the Trello environment. Seamlessly moving from client work to my own work is important. I don't want to have to adjust too much to a different workflow.

My grass roots approach to work still stands with just a master list for capturing everything and scheduling actions in my calendar. I'll capture a high level description of the project in my master list and defer the details down to cards on the Trello board. Any work I do will be blocked off in my calendar as just "Project X Work" and then when it comes to actually doing that work, I can pick up where I left off on the Trello board. When time runs out, I can leave a note on the card where I left off and move on without losing my place.

It all sounds well and good in theory, but putting it into practice over the next few weeks might not yield the positive results I'm hoping for. Still, I've got to give a try though, right?

Project Updates

 •  Filed under Posts, Projects

Last week I found myself once again buried under a pile of work and projects that I wanted to do. Faced with another week of not making any progress I decided to step away from the blog for a week and focus on resolving some of these commitments. Here's what happened:

Client work

My only source of income at the moment, so it's easily the priority here. I need to continue with my client work. It gives me more and more experience with clients and Rails and is the foundation of my career at the moment. I'm hoping to build on this foundation with additional income revenues next year.

Journalong re-write

Most developers object to re-writes of systems and rightly so, it can be a costly process in terms of time and cost. In this case though I wanted the to do the re-write regardless of the cost, I wanted to start building on a product with a development framework that lets me implement new features fast and easily.

Sinatra is a great little framework for building web applications and I enjoyed building Journalong with it, but I wanted something more familiar. Since most of my client work is using Ruby on Rails, that's where most of my knowledge is. In order to make maintenance of Journalong easier in the long run, I've opted to take the hit now and re-write it as a Rails application.

The re-write is almost complete and I'm at the last stages of development. With other projects shelved or completed last week, I'm now free to work on this for the rest of the month and finish it.

Private bookmarking application

When Rails 4 came out I was keen to create a small application that would give me the chance to try out Rails 4 and give me a code base that I can use to experiment with the new features and idioms. It needed to be something private and simple to get me started. Intrigued by a screenshot of a fellow user's private bookmarking application, I started to build my own bookmarking application using Rails 4.

This is was a the one thing that I wanted to actually work on last week and by Wednesday I had something up and running that would work. For the rest of the week, I added a couple of features that would let me bookmark by different means from applications like Instapaper and Feedbin. With these complete at the weekend I now have a Rails 4 application that I can play with but also gain value from.

Trialing DigitalOcean

A couple of weeks ago I wrote about considering alternatives to Heroku. I did look about for alternative hosting providers for my blog and settled on trying out DigitalOcean.

The truth is though that the DigitalOcean box was left running for almost two weeks before I got round to doing anything with it. Moving my blog wasn't going to make me any better off in terms of income or knowledge. In the end I've decided that Heroku is enough for my hosting needs for the moment and I've killed the idea of moving my blog.

New product prototypes

I had plans to build two products this year, but I'm shelving this until next year. I underestimated how much work I would have this year as a freelancer. While I am welcome to be kept busy with client work, it does come at a cost. I only have so much time for other projects and products. I've shelved these for the moment and may re-visit them in 2014.

I learned a lot from last week. Priorities are important when dealing with different projects. Moving my blog, trying out a different PaaS is okay when you have the time, but it's just not that important to me right now. With the decks cleared, I'm looking forward to finishing off the Journalong re-write in the next couple of weeks and shipping it.

Planned Features for Journalong

 •  Filed under Journalong, Projects, Posts

With Journalong still fresh in my head I thought I would list a few of the features that I am planning to add to Journalong over the next three months. Development on Journalong has been slow over the last year and for that I apologise. It's no way to keep a product or service going and more importantly, making it useful for you. So if you're a user of Journalong, here's a few new goodies that you might like to see introduced to Journalong.

Viewing of journal files

This has been sitting in my list of planned features for months now. The reason for this is that I always said that I wouldn't display a substantial portion of journal entries through the interface. The reason for this was simply down to privacy. The idea was to allow the user to click on the month they wished to view in the sidebar and just display it, or display the current month's journal after you write a journal entry.

However, I have in the past thought this would be a particularly nice feature to have, especially when your journal can be easily converted to HTML to support formatting, links and images.

This feature will be optional and you will have to turn on the appropriate setting for this when it is released. If you don't fancy having your journal being displayed through Journalong, then leave the setting off. I would much rather customers opted in on their own accord than having them to opt out something they don't want or need.

Journal counts for each month

This just came to me last month. It's only a minor thing, but I envisioned a list of the last 12 months of journal entries, grouped by month, showing the number of journal entries per month in the sidebar.

In order to do this Journalong will scan your journal for the number of entries. Again, your journal is your and yours alone. I won't be scanning or retaining any information from your journal while doing this.

Journal from Draft

Draft is awesome, I love writing in Draft. All my blog posts start off in Draft. It has become my go to place to start all my writing. Why not journal from here too then?

I'll be honest, I'm no designer. The user interface to Journalong is simply what I have been able to do on my own with the help of a CSS framework and some JavaScript. I've tried to make it as pleasing an interface to use for people writing to their journals, but others might want to journal from other places.

These other places that I hope to include will start with Draft. The plan is to use Draft's WebHook URL setting so that you can write your journal entries in Draft and automatically save them to your journal.

Scheduling Time for Products

 •  Filed under Posts, Projects

When I first started working independently at the start of the year, I had grand visions of being able to dictate my own time and allow myself more time to write, work on my own ideas and follow them through to products. It was also a chance for me to explore other skills like iOS programming and web design. Just as we're passing into the last quarter of the year though, I'm shocked to see how little actual time I have spent doing this.

Aside from a three week vacation between July and August, I have taken very little time off away from client work. It wasn't that I couldn't, it just never occurred to me actually schedule some time in for myself and tell my clients that I won't be available for a few days.

I guess I initially panicked at the start of the year and thought that money in the bank was the goal, so I simply worked as much as I could in terms of client work to get some money put by. I am now in a much better financial position now, but I still need to top it up slightly to get to my goal of having four months basic salary there to live on should I find myself in a position where I am not working.

I may have mentioned this before on the blog, but I want this post to be the call to action I need to schedule some time for myself. Once I've scheduled some time, I'll write about my plans for this time and see what can I fit in during this time.