i3 – tiling window manager

In the last few days my attention was unfairly distributed between a whole lot of tasks.  The fragmentation and constant context switching affected my productivity, so I briefly revisited my toolbox setup, in hopes to find something that I didn’t know about, forgot about, or have greatly underutilized.

One of the things that came (again) on my radar was terminal multiplexer tmux.  I’ve blogged about it before.  I used it for a while, but at some point, it faded away from my daily routine.  The two most useful features of tmux are:

  1. Persistent sessions, where you can work on a remote machine, detach your terminal, disconnect from the machine entirely, and then, at some point later, connect again and continue from where you left off.  With simpler workloads and reliable Internet connection, this became less useful to me.  When I do need this functionality, I use screen, which is more often installed on the machines that I work with.
  2. Terminal multiplexer, where you can split your terminal screen into a number of panels and work with each one like it’s a separate terminal.  This is still useful, but can be done by a number of different tools these days.  I use Terminator, which supports both horizontal and vertical screen split.  Terminology is another option from a choice of many.

I thought, let me find something that people who used tmux have moved on to.  That search led me, among other things, to “ditching tmux” thread on HackerNews, where in the comments a few people were talking about i3 tiling window manager.

Continue reading “i3 — tiling window manager”

Is It Worth the Time?

I’ve seen this chart before, but completely forgot where it was from.  Tried to find it a couple of times in a hurry of a conversation, but couldn’t.  Thanks to this SysAdvent blog post, I now have it permanently engraved into the archives of my blog.

xkcd figured out how long can you work on making a routine task more efficient before you’re spending more time than you save.  The crossing of how much time you shave off and how often you do the task gets progressively less obvious when move from the top left corner of this char to the bottom right corner.

Never judge a programmer by their commit history

In a comment to another post, Andrey sent in a link to this blog post, titled “Never judge a programmer by their commit history”.  It’s very similar to something that I wanted to write for quite some time now.

It’s been a very long time since I judged any programmer based on their commit history and I believe if you think you can judge a programmer’s ability by reading his/her code YOU ARE WRONG.

As technical folk, we are often fast to judge an implementation purely on its technical merits, forgetting, that there are other factors often at play.  Mehdi Khalili, the author of the post, goes over just some of them, including:

  • Abiding by bad coding standards
  • Bad leader and project manager
  • Junior devs
  • Business reality
  • Brain fart
  • Personal issues
  • Synergy or lack thereof
  • Physical issues (which is similar to the Personal issues above)
  • Imposters! (which is funny and, something I didn’t think about)

I’ve seen (and done) almost all of these.  Business reality and junior devs are the two I’ve come across the most.

Pull Request focused dashboards for BitBucket


A few days ago BitBucket announced the re-worked dashboards, which are now much more focused on the Pull Requests that you’ve created or need to review, rather than lists of repositories that you have access to.  I’ve enabled the feature for my team and it looks super awesome!

If you’ve been suffering from being lost in dozens or hundreds of projects and missing out on the Pull Requests activity, check them out.  You’d be surprised.

“I’ve never had a goal”

I found the blog post “I’ve never had a goal” over at Jason Kottke blog interesting.  There is a quote from Jason Fried, the founder of Basecamep (aka 37signals):

I can’t remember having a goal. An actual goal.

There are things I’ve wanted to do, but if I didn’t do them I’d be fine with that too. There are targets that would have been nice to hit, but if I didn’t hit them I wouldn’t look back and say I missed them.

I don’t aim for things that way.

I do things, I try things, I build things, I want to make progress, I want to make things better for me, my company, my family, my neighborhood, etc. But I’ve never set a goal. It’s just not how I approach things.

Also, Jason Kottke’s therapist advice:

For the longest time, I thought I was wrong to not have goals. Setting goals is the only way of achieving things, right? When I was criticizing my goalless approach to my therapist a few years ago, he looked at me and said, “It seems like you’ve done pretty well for yourself so far without worrying about goals. That’s just the way you are and it’s working for you. You don’t have to change.”

I myself don’t set goals either.  But I’m yet to reach that “you’ve done pretty well for yourself” part. Wink.

Infrastructure update : GitHub, BitBucket, HipChat, TeamworkPM and Redmine

It’s been a while since I posted an update on our infrastructure tools, so here goes one.  (I know, ideally, it should be on our company’s blog, but we haven’t finished that part of the site yet).

Continue reading “Infrastructure update : GitHub, BitBucket, HipChat, TeamworkPM and Redmine”

Top 10 companies winning at remote work culture and their secrets

Remote work is a complex subject.  More and more individuals want to do it, yet very few companies offer it.  Communications, project management, knowledge sharing, remunerations, time tracking, team building – are just some of the issues.

Here’s the list of 10 companies that are very successful with their remote work cultures (read the article for details):

  1. Automattic (aka “the WordPress people”)
  2. Buffer
  3. Zapier
  4. Groove
  5. Basecamp
  6. Baremetrics
  7. Treehouse
  8. InVision
  9. Help Scout
  10. CloudPeeps


Transpose – structured notes alternative to Evernote

Evernote is an excellent note-taking service.  But it lacks any kind of templating, which is a pretty much required feature once you have more than a few hundred notes.  It’s nice to see that some people realize this enough to create alternative services.  Transpose is one such attempt.

I haven’t tried it yet, but judging by the video, the interface is not the friendliest ever.  Flexibility is a hard problem to solve when it comes to the UI.  And at $15/month it’s a bit pricey.  But it’s still nice to see that someone is trying.