Company of One

I have been an entrepreneur for the last 14 years. There have been times when I have been torn between growing my company to the VC-backed levels or to remain small but highly profitable. I know I would mostly lean to the latter (I value my independence and freedom a lot) but the “growth at any cost mindset” seems like the evil twin that keep surfacing in books, lessons and talks. When I meet people at social gatherings, the common question asked is not how much profit you have made by how many people work under you and how fast you are growing!

I came across the Company of One book on one of the blogs and immediately decided to read it. It 100% resonated with me. I love building software and earning while I sleep (passive recurring income). I love my free time to pick up a sport, travel or just to have a balanced life. I don’t want to be locked into a 9-5, clock-in clock-out culture. Autonomy and independence to work from anywhere, anytime is paramount. A lean company that is small and profitable is something that is just the perfect fit.

This book is an encouragement to all the other entrepreneurs who want to remain small yet profitable — we can choose to design our work around our life!

Company of One by Paul Jarvis

Company of One by Paul Jarvis

Maxim Ananov of HazeOver

Today, we interview Maxim, an independent software developer. I have been using HazeOver since the last 4 years and it is one of the small mac utilities that I just HAVE TO install on a new machine.

Maxim Ananov

Maxim Ananov

Location: Pskov, Russia.
Favorite gadget: The new iPad Pro.
Start your day with: I start my day around noon with a hearty brunch.
Favorite time-saving trick: I use sheets of paper to outline tasks for the day and the nearest future. I find it satisfying to cross them out one by one and then crumble and throw out the sheet when it's complete.
Daily reading: I have a couple dozen of RSS subscriptions that I skim though regularly. Mostly tech, design and Mac related websites.

Maxim’s setup

Maxim’s setup

Describe an average day at your company? What does your morning routine look like?
I'm an individual developer and without a boss and hard deadlines so my routine is quite sloppy. I work at home and there's no regular schedule. Some days I do nothing but ruminate and plan things to do or look for ideas. Some days I code 12-16 hours in a row when I get in the flow. The hardest part is to make myself get started. Then I lose track of time and can't get myself to stop working. It's not something that I'd recommend as a way to make things done, but it works for me.

How did you get into programming? Do you focus on a few languages or try to learn new things going along? Any tips for newbie programmers?
I got interested in programming when I was a kid in the 90s. My cousin showed me some simple programming stuff on ZX Spectrum. For my projects I tend to do everything myself. So I had to teach myself different skills along the way to realize my ideas – programming, scripting, web development, copywriting and design. I'm in no way an expert in those fields, but I learn just enough to solve related problems. For example for an app I design and code it, draw an icon, create a website and write content for it.

My number one tip for a newbie programmer would be to keep learning stuff even if it's not directly related to programming or a single language. Don't lock yourself into a knowledge bubble. You'd be more effective at understanding how your work relates to other fields. If you work in a team, you'd integrate better and it gives you new ideas and perspective. Also some skills transfer really well to new knowledge domains.

What is your dev setup look like? What apps/tools do you use to help you aid in your development work?
I work on a 15" MacBook Pro. That's the only prerequisite. For better or worse it gives me flexibility to work anywhere. Sometimes I work at the table, then I move on to a sofa with the laptop on my belly. And when I travel I can get work done on the go or in a park. Some parts of my apps were written on a long haul bus trips or a flights.

What does your wind down routine look like?
To wind down I play some video games.

A big thanks to Maxim for taking the time out to answer these questions! If you are a developer and love to be featured here please get in touch with me.

System + Processes

Companies and teams can work like a well-oiled machine. It does not have to be chaotic at work. A lot of misery can be put to rest if people at companies documented processes and systems in place. When I consult with companies, this is one of the first things I look for. How prepared is this company to scale?

People create processes (the way they work) but never document them.

Is it because they are afraid that their job will be dispensible now that they have given an exact blueprint of how they work and what needs to be done? Are they lazy to get this done because “why bother, the works getting done” mentality? This to me is a “hoarders” mindset - people who want to protect their jobs at any cost. These people stick to the same routine and seldom grow. They love the comfort of repetative tasks that have a predictable outcome.

Instead, companies need people who learn, teach others let go and grow. You don’t need to move between jobs at a company but by creating processes (documenting, letting go or improving the way you work) you can get your current work done more efficiently and can focus on higher-value core work. For example, a manager who is spending most of his week fire-fighting with clients and co-ordinate with vendors can set up systems so that others in his team (or a new employee in the future) can help him do some of the busy work while he uses his  energy on more important work!

Here are a few examples of processes that you can think of creating to speed up work and save time:

  • Document outlining what to do when your website/servers go offline so you are not scrambling when shit hits the roof!

  • A document for the next feature in your software project so programmers have all the specs needed (gathers from all the stakeholders at once) to get the project done well before the deadline. 

  • A writer’s manual outlining common mistakes and the overall tone for the company/brand so that as you scale and hire more writers the tone and message of the content will remain in-sync.

Systems and processes are cogs in a company. It just depends on how well-oiled they are!

Matthias Gansrigler of Eternal Storms Software

Today, we interview Matthias (an independent Mac/ iOS software developer) from Eternal Storms Software - makers of Yoink, ScreenFloat, Transloader, Glimpses etc. I use Yoink daily and love how small apps can improve the way one works!

Matthias Gansrigler

Matthias Gansrigler

Location: Austria, Europe
Favorite gadget: I recently acquired an Apple Watch, and I love it. I also adore my AirPods :)
Start your day with: Getting on my stationary bike. And coffee.
Favorite time-saving trick: I usually get eMails out of the way while I drink my coffee, and then only skim over new ones and attend to those needing attention right away. Others I’ll get to in the evening. This helps in staying focused on my programming work without too many distractions. Not launching Twitter during most of the day also helps ;)
Daily reading: I’m currently into Agatha Christie’s Poirot novels. I also recently read “Your Code as a Crime Scene” by Adam Tornhill - it was eye-opening.

Matthias Gansrigler’s Workplace

Matthias Gansrigler’s Workplace

Describe an average day at Eternal Storms Software? What does your morning routine look like?
I get up at 6 AM (give or take - I do like to snooze from time to time :P) and get on my stationary bike for half an hour. Then I take a shower, get some coffee and check my mails. Afterwards, I quickly plan a rough schedule of what I have to do that day (which app I should work on) and start working. At around 2 PM, my girlfriend and I will have lunch for about half an hour, maybe 45 minutes, and then it’s back to work until the evening, at around 8 PM. Depending on my workload, sometimes I’ll get back to work at 10 PM until 1-2 AM (this is where the snoozing comes from in the morning - coming full circle in a day in the life of Eternal Storms Software :D

How do you juggle between being a founder (and running things) as well as being a developer?
It can be difficult at times. What I love doing is work on my apps - it’s what I wish I could do all day long, without interruptions. Having to do support, PR, bookkeeping and all the other stuff that comes with running a business is necessary, and I enjoy doing it, but sometimes I wish I could hire somebody to take that off my hands.

How did you get into programming? Do you focus on a few languages or try to learn new things going along? Any tips for newbie programmers?
I’m not sure how I got into programming. I got started with HyperCard on a Macintosh Classic. Nothing serious, obviously, as I was maybe 6 or 7 years old at the time. When my dad bought a Macintosh Performa 5320 CD a few years later, I moved on to realBASIC and wanted to write a soccer manager game (I never got far :D). After that, I moved on to Xcode and Objective-C and took over an iTunes helper app (sadly, I forgot from whom and what the app was called before I took it over), and soon thereafter released GimmeSomeTune, my first real public app, that would display the currently playing song in iTunes and automatically download artwork for albums and lyrics for songs.

As for learning - I try to learn things going along, as they pop up, “as needed”, if you will. I’d love to learn more about Swift, for example, but with about 5 apps (all still Objective-C only), I currently don’t have the time to learn the language or even switch to it. But I’d love to do it some time.

I only have two tips for newbie programmers:
1. Do not give up! It can be frustrating some times (and even when you’re no longer a newbie programmer, you’ll get frustrated) - but keep at it, you’ll get better and better.
2. Start learning with a real project (it doesn’t matter if it’s “only” an app you use yourself) - I found that learning by “isolated” tutorials didn’t work for me. But - in my example - with having GimmeSomeTune to work on, I had a goal, something I wanted to achieve and work towards. It’ll do wonders.

What is your dev setup look like? What apps/tools do you use to help you aid in your development work?
I work on a 27’’ iMac and a 15’’ MacBook Pro.
I use Xcode to develop my apps, and CodeRunner for PHP stuff for personal projects.
For blogging, I use MarsEdit.
For communicating with clients, I use Slack, Skype and Trello.
I plan and schedule appointments using Calendar and Reminders.
A not necessarily developer-related tool I can only recommend is BetterTouchTool.

What does your wind down routine look like?
I usually check emails one more time, and then either relax on the couch reading, watching some TV show, or, more often, playing something on the Nintendo Switch with my girlfriend ;)

A big thanks to Matthias for taking the time out to answer these questions! If you are a developer and love to be featured here please get in touch with me.

Nike Fit

I came across the Nike Fit app today in the news . Love it when non-tech companies leverage technology in unique ways to move business forward. Kudos.

Enter Nike Fit, a new scanning solution that uses a proprietary combination of computer vision, data science, machine learning, artificial intelligence and recommendation algorithms.

Personally, I love these kind of use cases for our phones. In addition, Fit resonates with me as I have had massive hesitations in ordering footwear online - and never do for this reason - what if they don’t fit?

Using your smartphone’s camera, Nike Fit will scan your feet, collecting 13 data points mapping your foot morphology for both feet within a matter of seconds. This hyper-accurate scan of your unique foot dimension can then be stored in your NikePlus member profile and easily used for future shopping online and in-store.

Read more about this here - Nike News

Nike Fit

Nike Fit

Apple Watch 4 Complications

I love mechanical watches (a touch of analog in a digital world) but recently I have been wearing my Apple Watch on workdays.


The customisable world clock complication helps me know the time in places where people I care about are traveling to and/or remote devs are working from.

The calendar entry on the top keeps me up to date with my next meeting (well, today is Friday).

Auto Unlock - the watch unlocks my Mac :)

Remote Dev

For software projects, I am a big believer in remote work. 100%.

However, I have never built a 100% remote team from scratch. I have always worked with developers in the office first (get to know them really well), and then have them work remotely (if they wanted to or if they moved to another country). Yesterday, I was thinking about how it would be like to onboard a remote developer that I have never met. Here are a few things that came to my mind…

  1. Get to know the developer through calls, chat and email. This is crucial. I prefer to know the person before I start working with them - especially their working style.

  2. Communication for work and expectations should be spot on. Don’t leave everything in email. Use Google Docs & Spreadsheets when needed to lay down the plan, specifications or notes.

  3. Manage expectations so that we both are on the same wavelength. The developer needs to know what the end goal looks or feels like.

  4. Weekly updates - here, I should be able to gauge efficiency and problem-solving skills. If something is taking too long, does the developer have the knack to get it resolved swiftly? Or, if work is getting done quickly, then does the code look efficient and well written?

Come to think of it, shouldn’t these rules apply to non-remote developers also :)

Because remote devs are out of sight, they sometimes are out of mind - which is a good thing. You give them the space to create their work instead of walking up to them to discuss bugs, features that they are not going to be working on this week!

A Fresh Start

Whenever I get a new device (Mac, iPad or iPhone) I don’t migrate data from the old device but I start from scratch. This is a way to re-think if I really need those apps that I have installed over the years. A clean install is a fresh start.


So, a few months back when I switched laptops, I had the opportunity to go through this exercise again. Here are some things that I changed and the apps that I must-have!

  • Did not setup mail accounts on the default Mail app. Gmail is a better alternative in my opinion - web-based, fast and does not cache emails on the Mac.

  • Did not install Bartender (tool to organise the menu bar). This forces me to have fewer apps on the menu bar.

  • Yoink - the best drag and drop tool I have come across for the Mac. Super helpful.

  • 1Password - the best password manager I have come across. Been using this for 7 years now!

  • Evernote - I am done exploring new notes apps. There are plenty and new ones come and old ones go. I have used Evernote for 8 years now and the switching costs are way too high for me. Most importantly, Evernote just works.

  • Unsplash Wallpapers - a neat app that updates your wallpaper everyday from Unsplash’s library - “From space pics taken by NASA, to bewitching urban streetscapes, to astounding shots of nature taken by high-flying drones—find mesmerizing wallpaper for your Mac in seconds”.

It feels good - doing away with the old and bringing in the new!