Matthew Lang avatar

Matthew Lang

Family guy and web developer

Are you Stuck?

The problem might be closer than you think.

If you feel stuck in your job then make a plan to get out. The only thing in your life that makes you stuck is you. But I’ll admit that it’s way easier to say it’s your boss’ fault. That’s our natural tendency always, make it someone else’s fault.

Stuck by Curtis McHale

Read on for three book recommendations from Curtis to help with a change in your career path.

Break time

Today marks the start of a three week holiday for myself from my daily posts. The last few months have been a challenge in trying to post something every weekday. It hasn't always been easy, but it's been great fun.

Don't fret though, I'll still be posting links, fixies and other goodies through the week if that takes your fancy. I may even post some holiday snaps of sunny Toronto.

Regular daily posts will resume on the 5th of August. See you on the other side.

The Fragmenting Mountain Bike

My first bike. A Kona Fire Mountain. I think it was the 1995 edition of the bike. Gold P2 forks with a dark green frame, cantilever brakes and of course a quill style stem. Those were the days. When mountain biking was still young. When bikes were all built to similar sizes and specs. It was like this for years.

Then innovation trickled through the industry in small, slow waves. Quill stems were gradually replaced with the new headsets. Cantilever brakes were slowly replaced by V-brakes and then after that disc brakes became the standard way of scrubbing down your speed on the trails. Rigid forks were replaced with suspension forks to allow for more comfort for the rider.

One component remained constant through all these innovative changes though. The 26" wheel. Since the first mountain bikes sold to the public, up until now, 26" wheels have been the standard wheel size for mountain bikes and its many disciplines. Cross country racing, downhill racing, trail riding, 4X, trials and street riding. Different disciplines and different types of riding, but they all used the same wheel size.

Then it started. The fragmentation as I like to call it. It started with a new bigger wheel size. The 29" wheel. The arguments for a bigger wheel were good. A bigger wheel would roll better over obstacles, the contact point where the wheel meets the ground is greater so there is more traction and you lose momentum slower than you would with a smaller wheel.

The downside? It's too big for your current frame and therefore you need a new frame and a new fork.

Then the 27.5" wheel came along. The old standard wheel size is too small and the 29" wheel is too big. Let's make a wheel that fits exactly in between they said. The benefits of a bigger wheel than the old standard 26" but without the much added weight of a 29".

Now, I'm not sure on the facts of this, but I have heard of riders who have in fact managed to fit 27.5" wheels onto a mountain bike frame with just a marginal change in the geometry of the frame, but if you're going to ride 27.5" wheels then I would at least think that I would only ride them on a frame that is designed to take them.

Wheels sizes are now forcing bike companies to assess what wheels they will pair with the bikes in their range. Already we're seeing bike companies with different wheel sizes in their range. You don't get the option of simply picking your preferred bike and wheel size. Certain models in the range will be tied to one of the three 'standard' wheel sizes.

And that's where I think it's sad for the mountain bike industry. Gone are the days where you can gradually over time upgrade your bike with better components as you know your bike is designed with sizes that almost every other bike uses.

Once you buy a bike that's designed for that one wheel size, you're basically stuck with the size for that particular bike. There will still be plenty of choice in components such as suspension forks, tyres and rims for those opting for one of the new wheel sizes, but nothing like the choice we had before.

I'm all for innovation and change. I'm a programmer for crying out loud. Most of my job is dealing with change and moving applications forward to use new platforms and software, but part of me wants to see a standard wheel size back for mountain bikes. I don't care what size it is, just a size that I know is going to allow me to upgrade my bike for longer.

Still though, part of me wants the 'one size fits all' wheel for mountain bikes.

James Shelley has some great thoughts on private correspondence.

In this age that champions transparency, this confession may at first be scandalous: if you ask me a question on a public forum and then again during a private coffee date, you may very well receive two different answers from me. Not necessarily contradictory answers, but different answers just the same.

Private Correspondence by James Shelley

Reading List for the Rest of 2013

In the past I've tried to read two books every month. One fiction, one non-fiction. In the last couple of years though I have rarely been able to do this. Ultimately, I don't have that much free time to read, so instead I'm reducing my expectations and setting myself a goal of just one book a month. Here's my proposed reading list for the next six months:

  • Frictionless Freelancing - It's been a hectic six months and I'm glad I made the jump to freelancing, but there's still so much more that I need to learn about.
  • Pragmatic Thinking and Learning - I've had this on my list of books to read for years. Thought it was definitely time to purchase it.
  • Crafting Rails 4 Applications - Rails 4 has been released. No time like the present to get myself up to speed.
  • The Mauritius Command - I'm currently halfway through book 3 of the Aubrey/Maturin series and I'm really enjoying it. Can't wait to start this.
  • War of the Roses - Stormbird - Conn Igggulden's Emperor and Conqueror series are some of favourite books of all time. If the quality of them are anything to go by then Stormbird will be another cracking read.
  • The Second World War - Ever since I was kid, I have been fascinated by the Second World War. The planes, the tactics and the politics behind the countries involved. I've heard so many good reviews of this book I had to add it to my list.

My Development Tools - 2013 Edition

Here is this years list of tools that help me on a day to day basis in my role as a web developer. There are other tools I use throughout the day for social networking and other things, but I've purposefully left these off the list, as I don't deem them necessary in helping me do my job.

Hardware

My hardware selection is very minimalistic, at least I think it is. I've read about various setups from other developers that include multiple machines and usually more than two monitors. I stick with the view that I need only one machine and that I need it to powerful enough to build web applications but also portable enough that I can carry it with me.

  • MacBook Pro - I previously owned a black MacBook that I have used as my main development machine for over 4 years, but owing to it's lack of expandable memory and that it won't upgrade OS X to anything beyond Lion, I decided that I needed something new. At the start of the year I plumped for a new MacBook Pro and I've been amazed at the capabilities of it as my main development machine. Also the Retina display is rather purdy.
  • Mighty Mouse - Still trying to get my head round the gestures for this, but needless to say, it's a very comfortable mouse to use.
  • Apple Keyboard - I've had this keyboard for a number of years now but I'm starting to find it a tad small to use. It's the actual size of the keys I find too small.
  • Asus Monitor - Just a 24" external monitor. Nothing fancy.
  • External Hard Drive - At the moment I have a Seagate 250MB external hard drive. It's sole use is for my Time Machine backups.
Hardware nice to haves

These have been on the nice to haves list for a while but I think I'll consider at least one of these as a purchase before the end of the year.

  • A NAS - To help with the day to day grind I have a massive iTunes library that I code to, however it is taking a lot of space on MacBook. I would love to have extra storage at home that I connect to easily and just pick my music and photos from it.
  • A better keyboard - Not sure what I am looking for in terms of a keyboard, but one definite criteria I have is that it is slightly bigger than the standard wireless Apple keyboard.

Software

This is the software that I use every day. These are the essential applications I need to work. If I had nothing else in terms of software, then these applications would be all I would need.

  • Mail - Newsflash, well at least for me it is. Mail, the default email client with OS X, is actually a great email client. I previously used the Gmail web client for email but since going Google free, I've been surprised by how much I enjoy using Mail.
  • Firefox - An open source browser that is gradually making improvements in performance, but it's mostly because it's open source software that I like using Firefox.
  • iTerm2 - This is my preferred terminal emulator as it provides more functionality over the terminal emulator provided with OS X. One particular nice feature is the splitting of terminal windows into panes.
  • Sublime Text 3 - I've used Sublime Text 2 for a couple of years and I immediately jumped to the next release when it was available.
  • Dropbox - I keep everything in Dropbox. I probably don't need to. Over the last few weeks though it's fallen into my "Do I need this service?" category of thoughts. I'll be assessing Dropbox closely over the next few weeks.
  • Skype - Everyone has Skype so it makes sense to use it for calls with clients. Very handy as well for group calls.
  • 1Password - Who wants to remember all their passwords or write them down or make them the same for all your logins and sites? Not me, but I still can't believe it took me to this year to start using 1Password.

While I do use the following software every day, these are more like nice to haves rather than essential. Still, they make me more productive every day, so I'm glad I have them.

  • Alfred - A very nice replacement for the default Spotlight application launcher. Also I've started to see the power behind extending Alfred to do custom searches on things like my Pinboard bookmarks.
  • Fantastical - A little application that sits in my menu bar and allows me to update my calendar easily. The great thing about Fantastical is that I can quickly add meetings and deadlines to my work calendar.
  • RSS Notifier - I use Feedbin for following blogs, but for service updates from Amazon and Heroku, I use this application.
  • Divvy - Great little application for managing your windows. I have a few shortcut keys setup to resize my windows accordingly.
  • MultiMon - Divvy doesn't let me move windows from my MacBook to my external monitor which is where MultiMon comes in. Great little application.
  • Broom - Diskspace is a premium at the moment, so while I am reviewing different external storage options I have Broom to let me know when folders get too big.

The Web

A web developer's playground. Just a small selection of the many services and products that I use online.

  • DuckDuckGo - I'm still sticking with this as my preferred search engine. Yes it does lack the comprehensive results that Google has, but I'm finding that if I don't find anything on the first page of results with DuckDuckGo, then I do have ready to roll searches for StackOverflow.
  • Github - My preferred source code management tool. Nothing to fault here. Easy to manage repositories and plenty of collaboration tools for both private and public projects.
  • Heroku - I've worked with the Heroku platform for over three years now and I love its simplicity. Might be more pricier than other options but that's the trade off when you don't want the hassle of being a sys admin.
  • LinkedIn - I closed my LinkedIn account a couple of years ago only to find that I actually needed it at the start of the year to get myself marketed as a freelancer. Jury is still out on it's usefulness but I am trying to make more use of it on a daily basis.
  • FreeAgent (Referral link) - I've only been using FreeAgent for six months now but it's already paying for itself in terms of usefulness. Having your accounts in order as an independent contractor is a necessary evil, but the FreeAgent application does such a great of job making mananging my income simple.
  • Instapaper - Reading development articles is part of development life if you want to stay up to date on the ever changing Internet.
  • Pinboard - You never know when you are going to need that article on nested resources on Rails or that article on implementing 'Remember Me' functionality in Sinatra. Good job I keep a nice archive of the articles I read and find useful with Pinboard.
  • Feedbin - My new RSS reader of choice. Check out a more complete review by myself here.
  • Gauges - Another service that I picked in the move away from Google. Okay it doesn't have the number of different metrics that Google Analytics has, but it provides all the information I need in a simple and easy to read interface.

Backups

One backup is good, two is better. I've been lucky so far, but I think I need to beef up my backup strategy.

  • Time Machine - It would be sort of crazy not to use Time Machine if you own a Mac. Background backups without the fuss. Still, it shouldn't be your only form of backup.
  • Dropbox - Which brings me to Dropbox again. I keep backups of a few folders in Dropbox so that if the worse was to happen with my MacBook Pro, I could be at least up and running on another machine regardless of which operating system it is.

There was more to this list but I had to limit it to just my essential tools. If I included all the extensions, addons, plugins and other tools I used, this post would just be too long to read. I wanted to just give an overview of a typical set of tools that web developers use.

My iPhone Setup

I wanted to share my apps setup on my iPhone for two reasons. Firstly, I wanted to see if any one had similar setups on their devices and secondly, it's something worth writing about.

So how do I have my iPhone setup?

Right from the first day I got my iPhone I had my own specific setup in mind. The setup I'm describing is very similar to the setup I had on my previous Android phone. The first screen, the home screen, on my iPhone is limited to apps I use on a daily basis.

Home screen

For a long time now I've stuck to the same types of apps on my home screen with just a few changes to the actual apps in the last six months. Here's what's on my home screen just now.

  • Fantastical - I started using this a few months ago, was previously Google Calendar synced to Calendar app.
  • TaskPaper - I've tried Wunderlist, TodoList, Things and others. I keep coming back to TaskPaper due to it's easy to use UI and use of a flat text file for my lists.
  • Reeder - I started using within the last month, I was previously using Feedly synced to Google Reader.
  • Path - I've had this on my phone since day one.
  • Forecast - Started using this year.
  • Felix - Started using this year, I was previously using Wedge but Felix has really came on in the last six months.
  • Instapaper - I've had this on my phone since day one.
  • Pop - Started using this year at the recommendation of Patrick Rhone. It's really handy as just a scratchpad or dumping ground for thoughts and ideas.

These are the apps that I use every day. I purposely keep this screen limited to just eight apps as it leaves some screen space so that I can see my wallpaper if it's a nice photo.

On the second screen is the rest of the apps that I use but instead they are categorised into folders.

Folders screen

I initially had these folders grouped by the verb that describes the action of each app after reading about the idea on Gina Trapani's Smarterware blog, but grouping them by a verb was difficult for some of the apps. Instead I just a name them to something that makes sense to me.

  • Schedule - Scheduling and timekeeping tools.
  • Network - All my App.net apps. It's the only social network I actively take part in now.
  • Words - Writing and reading apps.
  • Bytes - Apps for services that I use online like Trello, Github and Pinboard.
  • Photos - Camera apps and photo albums.
  • Listen - iTunes, Instacast and other apps related to consuming visual and audio media.
  • Shop - Finance related apps.
  • Setup - Setup and connectivity apps.
  • Games - Handy when we're out and about and I need my oldest to sit at piece for a few minutes.
  • Travel - Hardly used.

I've tried in the past to limit myself to eight folders on this screen however it just wasn't possible. I have enabled most of the notifications on this screen as a reminder that I have things that need to be done or reviewed. I very rarely switch to this screen unless I have a notification for one of these apps. Bookstand is also sitting on this screen awaiting the release of iOS 7 when I can finally put it in a folder.

I've had this setup on my phone for some time now, and I'm very unlikely to change it. I'm quite selective with my apps and I tend to stick to one app for one type of function. The only exception to this is the number of writing tools I have on my phone. I've had PlainText and Pop installed for some time, but I have been trying out Drafts recently.

Blog Heroes #2 - Michael Wade

Michael Wade is a management consultant currently based in Arizona and has been blogging since 2005. I found Michael's blog, Execupundit, through Nicholas Bate's blog and ever since I subscribed, I've been hooked on Michael's views on management, the workplace and life.

I'm always envious of bloggers like Michael who continually turn out not only excellent posts, but posts that make you question yourself and your work. Michael's posts take the form of random thoughts, quotes, links to other blogs, link posts and topical news.

Michael's blog isn't just for those in the levels of manangement though, it's for everyone. Michael is one of my blogs for recommended daily reading.