Christian Heilmann

Author Archive

Continuous growth is cancer

Friday, March 3rd, 2023

Terry Jones as Mr Creosote in Monty Pythons The Meaning of Life

I am currently affected by the wave of layoffs in the technology industry and this isn’t my first rodeo. The difference is that it feels worse this time as I am not only annoyed by losing my job, but I am starting to feel that the system is incredibly flawed. Instead of building a sustainable work environment with sensible compensation, the system favours continuous growth – something that isn’t possible in a world of limited resources.

Betting wrong on the pandemic

I’d wager to say that 90% of the layoffs right now across the tech sector aren’t related to performance or productivity. The reasons are the troubles on the stock market and the general recession we are experiencing. We just barely survived a global pandemic and there is a war going on in Ukraine that could easily escalate into the next world war. During the pandemic all tech companies hired like mad as people who were quarantined at home needed tech much more than they did before.

This turned out to be a premature celebration of growth as the pandemic hit a lot of people hard and the war made people wonder how they could pay the next gas bill rather than if they want to buy another laptop, game console or mobile. So whilst there is no massive decline, there isn’t a growth that warrants the number of people in the company. The stock market looks at profit per head in a company, and if profit goes down, and you need to act swiftly, heads must roll.

Why not use stocked resources instead of trying to add when nothing comes in?

Maybe I am being naive here, but I don’t see how anyone can win in this situation. As the market gets better, companies will have to look into hiring again and there is already a serious lack of employees available in tech. Maybe, just maybe the better way would have been to plan for two years of no growth but sustained work instead. Every huge tech company has money – the layoffs right now aren’t cheap at all, after all. But instead of riding out a pandemic and the delivery issues it came with we still plan the old way with explosive growth in a short time frame.

This fetish we have for growth is starting to annoy me. If your career doesn’t progress every half year, you’re a failure. If your product doesn’t double user numbers each quarter, it gets canceled. If you don’t show any interest in advancing up the career ladder, but instead focus on your job, you’ll get asked why that is and pushed into booster processes.

The missing HR process for happy employees

This didn’t happen to me, but to one of my colleagues in the past. This person was amazing. A great technologist with tons of experience and liked by all. Thorough, documenting everything and patient with unreasonable demands, he was my go-to for new features. He also was family oriented and had a secondary income. So instead of a promotion with more money and more responsibilities, he asked for a four day week – even at the expense of a lowered income. There was no process for this, and the company back then was at a loss what to do. Instead of understanding that this was a decision by the person to get more peace of mind and time for the family, it was seen as not having a growth mindset. Instead of understanding that this could be a common demand in people who get older, he was refused the opportunity to work less and left the company.

I am worried about this as there is no logic to thinking that everything has to grow, get better and more. Not everybody wants to go up the career ladder and there should be no shame in finding a place you are happy in and stay on that level. For some of us our needs are met at a certain level and anything else would bring more money in but also eat into the way of life that makes us happy and effective.

Back to the grind?

Right now I am looking for new opportunities and I want to go into a lead role similar to the one I had. I would love to see if there are places that understand that people like my colleague earlier exist and could make up an incredibly effective team. And I would love to lead people like that, make sure they can concentrate on their work instead of being asked to think about advancing a career they do not care about.

If companies want to continuously grow and have long term career employees, they need to make sure that there are enough senior roles and positions available. It feels odd that we have a very limited number of high-level career positions, and yet everybody is forced to think about advancing towards those, or not seen as a person who is eager enough to be in this market. I want to build excellent products for our end users, I don’t feel like I should spend a huge amount of my time competing with my peers for those few senior positions.

How many more rounds of inflated hiring and short term layoffs do we need to go through before we understand that continuously shooting for unattainable goals isn’t as motivating as we think it is? Maybe with all the mess that is going on in the world right now, we should think smaller and more maintainable. I’m tired of companies telling me they aim to become a “unicorn” in the next quarter. I’d be more excited about companies aiming for a goal that makes them sustainable and keep their employees instead of having to deal with a one year churn.

Maybe we should grow in our mindfulness and humanity and not only in numbers.

If you agree and you’re looking for a technical lead in your company, check me out on LinkedIn

Automatically generating tests for JS/TS functions in VS Code with GitHub Copilot

Wednesday, March 1st, 2023

Want to automatically generate tests for your JS/TS functions? GitHub CoPilot now does that.
GitHubNext added a TestPilot experiment that can generate tests for a function by analysing it and scanning the docs and comments.

Animation showing how to create a test for a function by highlighting it

So, you want to safely authenticate with 2FA? App stores are still not the solution – “why the web is dead” revisiTED

Monday, February 20th, 2023

Eight years ago I spoke at a TEDx conference where I vented my frustration at the app and app store model. I specifically called out that Apps are to me the biggest step back in software and content distribution we could do. Instead of an on-demand platform like the web where we could get the weather by typing “weather berlin” or even talk to our phone, we got asked to download, install and most likely sign up for an app instead. It doesn’t scale, it puts the publisher before the user and it isn’t technically necessary with the web platform having evolved immensely in the last years.

Fast forward to now. Twitter just announced that it will turn off SMS two factor authentication for its users, and people should use an authentication app instead. This is an extra hassle, but authentication apps are safer than text messages. And as only a small percentage of free Twitter users have 2FA enabled anyways, this makes sense for Twitter financially.

So I went to the Google App store to get the Microsoft Authenticator App. I have this one on my company phone before and I am used to it. Going to the store and searching for “Microsoft Authenticator App” without any typos does not give me the official app as the first result. Instead I get the “Authenticator App 2FA” by Pixster Studio.

Search result in the Google App Store for Microsoft Authenticator App showing me a different app as the first result. The listing of the Pixster owned app showing that this authenticator would have ads and in-app payments.

I discovered this and didn’t install the wrong app. But most users would probably go for it despite the tiny “sponsored” above the listing. I’m not judging the quality of the app, but looking at the portfolio of the company on the app store you get the feeling that they are very quick in offering similar apps to currently hot topics. There’s a ChatGPT clone, a Wordle clone and my favourite “hashtags for insta”…

I don’t know – maybe the app is amazing and bullet proof secure. But I for one am not too happy about an authenticator app with ads or asking for in-app payments. Security should never be something I have to pay extra for.

This is exactly what App stores were advertised as to prevent. The web was a wild, untamed and terribly unsafe place full of software you can’t trust. App stores, instead, are curated and safe havens of only tested and tried, genuine software. Until someone pays enough to get their app listed with the right keywords. I’d even wager to guess that listing a web site as “Authenticator App 2FA – Secure Microsoft Authenticator” as it is in the App store would get you a call from Microsoft’s lawyers as there is no affiliation. But in the store, that’s just good marketing. Or is it?

I have quite a few more things to say. Maybe it is time to revisit this talk and give it somewhere else?

Mansplaining in the run down shopping mall – hybrid search engines and chatGPT solutions will be an interesting challenge

Thursday, February 9th, 2023

Machine learning generated image of the term mansplaining in the shopping mall

The race to implement the functionality of ChatGPT into the traditional search interface is on with Microsoft barging ahead taking advantage of their OpenAI partnership and Google trying to fast follow with Bard. And the hype is turned up to 11 where Google’s demo giving a wrong answer leading to a 7% drop in their share price. It is messy all around, especially when you look into the ethics of showing content without citation or having an interface too fast and immediate to moderate.

ChatGPT was a great example of how you can gain a lot of users by giving them a simple interface that does one thing well. Google used to do the same when it came about and replaced portals like Altavista and Yahoo and their bloated interfaces with thousands of links with a simple search box.

The problem with incredibly small and simple interfaces is that you also get a limited set of results. We had this with search bots in chat systems, we have this with audio interfaces like Siri, Alexa and Cortana. If all the system can do is give one answer as there is no space for more it better be the best there is. Or you get backlash like Google just encountered.

The difference that ChatGPT made compared to dumb bots or “virtual assistants” (remember the IKEA one?) is that it sounds eloquent, well researched and sensible, even when it gives the wrong result. People compared it to “mansplaining as a service”, or “CEO at a keynote” speak. This is and will remain an issue unless we find a way to fact-check the results at the same time, which might be an arms race that is hard to win.

In comparison to that, search engine results have become advertising in disguise, with the first 10 results either being flat out ads or those who spent a lot of money on advertising or shifty SEO tricks to show up first. It’s like a run-down shopping mall, with no local products or employees and chain stores selling knock-off products rather than the high quality ones.

Quite some folk on the end of the long tail have given up on search engines and stick to the reddits, stackoverflows and other specialist forums instead. No surprise that there are specialist meta search engines like coming up with a filtered experience.

crowdview showing results only from forum providers

This is sad, as there was a time in between where search engines started to be a lot more contextual. Their makers realised that people don’t always want a website to go to, but immediately get the result of their query. That’s why Bing and Google show a calculator interface when you enter an equation, or a weather interface when you look for “weather in x”. These quick results were excellent for the user and are a joy to encounter. The problem with them is that they cut into the view and click numbers and mean that people use your product for a shorter amount of time and don’t dwell on it so you can show more refreshing ads. Daily active user numbers don’t fill themselves, you know?

Now, how will we be able to mix the traditional search results and the low-level ChatGPT approach? Bing tries it by showing the chat interface in a sidebar and giving it much more recent, sometimes brand new content and context.

Smaller players try the same thing, for example being a search engine that offers a normal search or a chat interface side-by-side. showing results for a music query

This looks amazing, as it shows the answer next to the traditional search results. It still is a UX challenge to make the two compete with another, and it will be interesting to see what the usage numbers show. Will the chat interface prevail, or is it a new and cool thing people will try until it fails for them and then move back to the tried and true approach?

In any case, I love that the heat is on in the search market, as it was ripe for disruption once more. When Google showed that you don’t need to give people thousands of options but spend more time on analysing their query and give them what they need instead. Now we can analyse more deeply and give people not only what they are looking for but what may be interesting in context. But we need to get it right and this is where I am worried. When I buy a toilet lid on Amazon, I get lots of offers for buying more and ads for toilet lids in Instagram. I wasn’t planning on starting a collection, even if that would be great for the consumer platforms.

An easy way to copy + paste from the browser Console #shorts

Monday, February 6th, 2023

Copying and pasting from Console is annoying but there is a better way. The Console variable $_ contains the last result. You can use this with the copy() command to copy the data to the clipboard without having to highlight it.