Tech Friend

I always wanted to start a personal weekly newsletter and late last month I started one. Tech Friend is 3 issues down and I am currently curating links on tech, biz and life.

September 24

October 2

October 8

Do sign up (click on any one of the issues above and the signup form is on the top of the issue) if you think this might interest you.


The Obstacles Is The Way

"The impediment to action advances action, and what stands in the way becomes the way"

Fabulous personal development book on how to tackle obstacles/ adversity to your advantage. Embrace them instead of getting worked up or anxious. There is a hidden meaning and opportunity in each obstacle we face. 

A few Kindle highlights of the book:

“And from what we know, he truly saw each and every one of these obstacles as an opportunity to practice some virtue: patience, courage, humility, resourcefulness, reason, justice, and creativity.”

Andy Grove, former CEO of Intel, outlined when he described what happens to businesses in tumultuous times:

“Bad companies are destroyed by crisis. Good companies survive them. Great companies are improved by them.”

It says: Okay, you’ve got to do something very difficult. Don’t focus on that. Instead break it down into pieces. Simply do what you need to do right now. And do it well. And then move on to...


Fast Software

Read this piece today - Fast Software, the Best Software.

Software that’s speedy usually means it’s focused. Like a good tool, it often means that it’s simple, but that’s not necessarily true. Speed in software is probably the most valuable, least valued asset. To me, speedy software is the difference between an application smoothly integrating into your life, and one called upon with great reluctance.

Speed and reliability are often intuited hand-in-hand. Speed can be a good proxy for general engineering quality. If an application slows down on simple tasks, then it can mean the engineers aren’t obsessive detail sticklers. Not always, but it can mean disastrous other issues lurk. I want all my craftspeople to stickle.

I love software that does this: Software that unbloats over time. This should be the goal of all software. The longer it’s around, the more elegant it should become. Smooth over like a river stone.

But why is slow bad? Fast software is not always good software, but slow software is rarely able to rise to greatness. Fast software gives the user a chance to “meld” with its toolset. That is, not break flow.

It feels — intuitively — that software (beyond core functionality) should aim for speed. Speed as a proxy for efficiency. If a piece of software is becoming taurine-esque, unwieldy, then perhaps it shouldn’t be a single piece of software. Ultimately, to be fast is to be light. And to be light is to lessen the burden on someone or some task. This is the ultimate goal: For our pocket supercomputers to lessen burdens, not increase them. For our mega-powered laptops to enable a kind of fluency — not battle, or struggle — of creation.

Such a brilliant essay. Agree 100%. Fast software makes the user feel good about themselves.

The Great Hack

A rainy, wet weekend is the best for a movie in the afternoon. Netflix had nudged me via email (clever!) that The Great Hack has been released so I decided to watch it. I did follow a bit of the Cambridge Analytica scandal when it broke so I knew what the move was about but did not know the finer details which the movie portrayed so well - the whistleblowers, secret meetings and bringing this entire saga together in 1.5 hrs.

What was mind-boggling was the mining of user data, analysing emotions through the data and then targeted messaging on Facebook to change the person's views on certain subjects i.e. altering human behaviour! This is plain wrong.

We all have come to terms that "Data is the new oil". Companies have a responsibility to protect and safeguard personal data and let people know what, when and how their data is being used. I guess this is the reason why the GDPR was created.

Watch this documentary if you haven't already. It will open your eyes to what is happening behind the scenes on how much do the social networks know about us - more than what we know about ourselves!

Simon Grimm of Devdactic

Today, we interview Simon, a developer, educator and consultant at Devdactic. He is the creator of the Ionic Academy - I have gone through some of his tutorials while learning the Ionic framework and they are just excellent!

Simon Grimm

Simon Grimm

Location: Münster, Germany.
Favorite gadget: Apple AirPods.
Start your day with: At 5am with the 5 Minute Journal, my Winners Bible and 10 minute meditation with the Headspace App.
Favorite time-saving trick: Stop and recognise that you procrastinate (e.g. watch YT), make a short pause and then focus 100% on work again.
Daily reading: I just put articles I want to read into the Pocket app and then forget about them. Only reading books before sleep right now!

Simon’s workspace

Simon’s workspace

Describe an average day at Devdactic? What does your morning routine look like?

I try to get up early for my morning routine, then I put in like 1.5 hrs of deep work while my wife and baby are still asleep. Then we have breakfast together and I get the morning to work on whatever tasks I have planned. We take lunch together, I get back into my tasks and end the day around 4pm. I have a “shutdown work” task to wrap up my day and I mentally sign off from my tasks (mostly) once I finish that task!

Because I work from home and am my own boss, I try to still have a regular workday so I can still have this great employee feeling on Friday when the work week is over. Weekends are mostly for my family and sometimes side projects if I find the time.

How do you juggle between being a founder (and creating courses) as well as being a developer?

I try to theme my week. Mon+Tue are my high energy days, I either create new courses, videos, content and feel like I already achieved something important early during the week. Wednesday is then for client work, and Thursday for my own projects and growth of the Ionic Academy that I ran.

For Friday I got all the administrative tasks and things like answering all YouTube comments and recording welcome videos for my new members. This also gives me some buffer at the end of the week if I still need to finish something else.

Finally, I try to balance being a teacher and being a developer as good as possible. I still experience real life problems in client projects that I can then use for my content creation work to show how things can be solved! This gives me a nice balance and I can stay relevant

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 started early (like with 13) with C++ because my big brother was into it and I wanted to learn these things as well. I basically followed everything he did so I also learned HTML and PHP back then. In school and university we learned Java but I never really liked it.

The change came when I learned ObjectiveC to build an iPhone app during my university time. From that time on I was sold to mobile!

This got me my first job, but I quickly also picked up the pretty new Ionic Framework and Angular back then, and I finally sticked with that until today.

I don't branch out into other languages at the moment because it’s really hard to have skills in all the frameworks like Vue, React and Angular at the same time.

However, when you get the basic idea of programming you can quickly pick up new languages. I can get into Python real quickly or understand what some Swift or Ruby code is doing. Once you are at a specific level, things really start to get easier!

My tip for newbies: Don’t fear to get deeper into problems. Look at the root of a problem, dive into Git repositories and see why something is failing. There is always a reason why, and you can find it out. It will teach you a lot and is a boost for your confidence and mentality.

What is your dev setup look like? What apps/tools do you use to help you aid in your development work?

I have an iMac in my home office and another MBP for downstairs/outside. I use Visual Studio Code for coding and besides that a bunch of apps like:

- SourceTree for my Git repository management
- Todoist for managing tasks
- Slack for communications
- Postman for API testing
- Bear (instead of Evernote) for taking all notes

What does your wind down routine look like?

I finish my shutdown task to know that I have wrapped up all open ends for the day. I get downstairs to my family, we grab a coffe together or go for a walk with the baby and then my mind get’s into a different mood quickly!

A big thanks to Simon 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.

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!