Bist du selbstständig und suchst nach einer einfachen Möglichkeit, deine E-Rechnungen zu erstellen? Dann bist du bei meiner neuen Mac App SupaRechnung genau richtig!

💡 Jetzt kostenlos im App Store herunterladen

Two mistakes I made with my first bootstrapped business

The first bootstrapped business that I created as a solo-founder was a disaster.

I had just parted ways with my previous co-founder, because we had run out of money and couldn’t find funding. Out business idea had been too big to bootstrap, and that taught me a valuable lesson about myself: If the business cannot be bootstrapped, then it’s not for me. I absolutely did not enjoy the process of finding investors and pitching our idea. Of course, I might have felt different if we had secured funding, but I really don’t think so. Plus, once investors are involved, you are no longer independent.

[Read More]

Blogging daily for eight weeks

I just realized that today is day 56 of my daily blogging experiment. That’s eight whole weeks of daily blogging. Wow. And a good thing that I noticed, as well, because I just couldn’t think of anything to write about today. Lucky me.

Did anything change during those 8 weeks of daily blogging that I would attribute to blogging? Maybe. After the first week of blogging I started to feel motivated to work on some side-projects. At the time I attributed this to the daily blogging exercise, but honestly, it might just have been correlation, not causation. Maybe the seed of motivation had already been there, motivating me to start blogging in the first place, and it only continued to grow into working on side-projects. I guess I can never truly know, but that’s quite alright. What matters to me is that I found the motivation, somehow.

[Read More]

Some tailwind beginner resources

Tailwind does not come with a default look and feel. If you don’t want to completely start from scratch, it’s best to start with one of many free templates. The following seem to be popular. All of them have a liberal MIT license:

I also found this interesting project that is specifically for prototyping email: Maizzle. It even includes markdown support. Probably worth a look if I ever need to create HTML emails.

Getting started with tailwindcss

Because I am primarily a backend developer, I have not paid much attention to innovations in frontend technology. Once I had learned the basics of the Bootstrap css framework, I didn’t really feel the need for learning about the details of css layout. But with my recent journey into frontend development, I also took a look at tailwindcss. As it turns out, this is exactly what I have been needing all my backend-developer-life. Its workflow is pretty much what I have been doing with Bootstrap most of the time: just adding a whole bunch of utility-classes directly to html elements, instead of neatly defining my own classes in css.

[Read More]

Teaching myself frontend development: What I learned this week

This week I struggled with getting vue to work with the most recent release of tailwind css. I was surprised to stumble into these kinds of problems this early in my first project. Usually, setting up a fresh project is pretty straight forward. But I completely undertestimated the complexity of frontend tooling. I went in with the idea that using straight npm would be a safe bet. However, the tailwind documentation refers to vite and npm.

[Read More]

Creating a fresh Vuejs 3 project that uses tailwind css and postcss 8

I had previous complained written about my difficulties when trying to add tailwind css to a fresh vuejs starter project. I wasn’t satisfied with the end-result, so I tried again today. And again, it took me ours of searching, and only finding unhelpful answers of people who seemingly just copy & paste commands until something works? Is this what frontend development will be like for me?

Anyway, I finally managed to reliably create an empty vue3 project that uses the most recent version of tailwind.

[Read More]

Ten cool tools I found on Thoughtworks' 25th tech radar

Browsing through Thoughtworks’ 25th edition of their technology radar, I found some tools that look interesting, in no particular order:

  • “Comby is a tool for searching and changing code structure” (source: comby’s website). It’s a little like grep, but specifically for source code, as it actually seems to generate an abstract syntax tree internally. Looks very cool.
  • ProxyMan is a (macOS only) and Charles are proxies for debugging network traffic.
  • gopass team password / secret manager based on git and gpg.
  • Berglas manages secrets using Google Secret Manager.
  • Hotwire is Basecamp’s take on server-side generated frontends without needing to write any JavaScript. There are community projects for flask (turbo-flask) and django (hotwire-django, django-saas-starter)
  • mob simple command line tool that helps with remote mob programming by handling the necessary “git handover”-workflow
  • headless UI by the creators of tailwind css, is a set of unstyled, fully accessible UI components
  • DoWhy is “an end-to-end library for causal inference”
  • Prefect is an airflow-alternative that lets you create workflows by annotating plain Python functions
  • Pulumi is a terraform-alternative that is not declarative and thus in some cases better suited, especially for handling dynamic deployments

The complete Thoughtworks technology radar can be found here.

Reading list on developer productivity and happiness

I stumbled down an internet rabbit-hole today, and came across a very interesting paper published in the ACM queue: The SPACE of Developer Productivity. I found the paper great because it made me appreciate once more, how interesting and complex the work of software development teams really is.

And I found some great additional reference that seem worth checking out:

Diversity & a better user registration form

Awareness that gender diversity is real, and not everyone wants to identify as either male or female is slowly moving into peoples minds, it seems. I remember discussions that clients were having, usually about user registration forms, where they had in the past always asked for the gender as “male” or “female”. They had long discussions, and their decisions kept changing. I was not in a position to have any input into either the discussions nor the decisions, but I regularly saw the results. I was sometimes amused, and sometimes shocked how little sensitivity was shown: They actually thought about using a term similar to “other”, but with an almost derogatory connotation (“Sonstige”, in German). Luckily, they later changed that again.

[Read More]

Teaching myself frontend development -- part 3

Frontend dependency trees seem terrifying

I did a little experiment today: I used my IDE’s (WebStorm) built-in “create new project” feature to create a vuejs, angular, and a react starter project. Then I compared the total number of installed dependencies for each project using

npm ls --all | grep -v deduped | grep -v OPTIONAL | wc -l

which should count all installed packages without duplicates. For comparison, I counted the installed packages on one of my python projects that is actually a full-blown production application:

[Read More]