Let me start this post by writing how much I thank the Ubuntu
, Debian
and therefore also the apt
ecosystem to be there in my life.
It was there when I operated VPS back in 2010, it excited me in 2013 when I used Ubuntu as my main Desktop Operating System, and therefore it prepared my path to become a Software Developer and Founder before I even earned my first dime.
I hate
Keeping your Dotfiles in Sync and your Secrets in Gopass
Inspired by solutions how Secrets are being handled in corporate DevOps environments, I wanted to keep my Dotfiles on multiple machines in Sync and store all sensitive information inside gopass (which I started using instead of KeePass some time ago since I like the CLI and Unix / KISS aspect of it)
Luckily, I am not the first one to have such desires and I came across chezmoi which manages your Dotfiles for you inside a Git Repo and which also has support for gopass.
Manually Migrate ZITADEL with PostgreSQL
As you, the reader, found this article, it is likely that you want to manually migrate the ZITADEL PostgreSQL database to a new version.
Now, normally this step is being done by the zitadel setup
command with the --init-projections=true
flag but, as we all know since “2001: A Space Odyssey”, computers can’t be trusted - so you are either paranoid or something went terribly wrong.
For manually updating the database, we should first understand the structure a bit. So far, the Zitadel Team seems to use versioning for their tables - meaning they create a new table for every change instead of just altering the current table. This leads to some beautifully structured schemas full of tables like users6
, users7
and users8
up to users10
.
Introducing network.txt: A Standard for 3rd Party Data Transparency
In today’s digital age, privacy and data protection have become major concerns for both website visitors and developers. With the introduction of GDPR laws, it’s important for websites to provide clear information about the sharing of personal data with 3rd party providers. This is where the proposed standard, network.txt, comes into play.
What is network.txt?
network.txt is a new standard that provides information about the use of 3rd party providers on a website. It’s a simple text file that is both readable by humans and programs alike. The purpose of network.txt is to offer an easy and standard way for visitors to understand which 3rd party providers are being used on a website and where they can find the privacy policy and terms of the website.
State of OpenID Connect Providers
In the last days I tried to integrate multiple OpenID Connect Providers into my Applications (currently mostly Alphalerts and some dev projects)
So far, I only got Google to work, and even this is currently limited to 100 Users. In this blog post, I want to explain why the integration of OpenID Connect Providers is such a struggle by showing multiple examples.
But before I show the examples, you should know that there are not so many big OpenID Connect Providers compared to the big OAuth2 Providers. E.g. GitHub offers OAuth2, but is not a OpenID Connect Provider yet.
The Dangers of PFOA
PFOA, also known as perfluorooctanoic acid, is a synthetic chemical that has been used in a variety of industrial and commercial applications. It is a key ingredient in the manufacture of Teflon, a non-stick coating used in cookware and other products. PFOA has also been used in the production of firefighting foams, stain-resistant coatings for carpets and clothing, and other products.
Despite its widespread use, PFOA has been linked to a range of serious health problems in both humans and animals. Studies have shown that PFOA can cause developmental and reproductive harm, liver damage, and cancer. In particular, PFOA has been linked to an increased risk of testicular and kidney cancer.
Simplify Your Code with TypeScript Barrels
A TypeScript Barrel is a way to simplify the importing of multiple exports from a single module.
Imagine you have a module called myModule
that has several exports, such as:
export const foo = 1;
export const bar = 2;
export const baz = 3;
To import these exports into another module, you would normally have to write something like this:
import { foo, bar, baz } from './myModule';
This can get tedious if you have a large number of exports, and it can also make your code less readable. This is where TypeScript Barrels come in.
Why everyone should know KPIs
Every Investor has to know KPIs (Key Performance Indicators) to value Investments. But why did I write that everyone should know them in my title?
Knowing KPIs helps you even if you don’t invest any of your money. It helps you e.g. decide which job you should take or which customer you should prefer.
Deciding between Job Offers - an Example
Recently, I decided to start freelancing besides working on my own projects. I contacted some possible customers and some companies contacted me.
How legit is a NewsWatch TV Feature?
Many founders get Emails from NewsWatch TV saying that they will promote your company on an American Television “Morning Show”.
I also got a similar Mail for Alphalerts.com and want to explain what you, as a Founder, should think about that.
Firstly, if you get such a Mail, it is likely that you promoted your product on ProductHunt lately. NewsWatch seems to scrape the ProductHunt listings and even the founder of ProductHunt wrote a tweet about it:
Drone CI with Podman
I run Drone CI for a longer period now with Docker. Because I decided to switch for multiple reasons from Docker to Podman, this setup had to be changed a bit.
In this blog post, I want to cover how to install Podman and how to set up Drone so that it works with Podman.
Installing Podman
Install the podman
and podman-docker
packages. E.g. on a Debian based System:
apt install podman podman-docker
If you currently use docker-compose
, then you should also install podman-compose
:
Linux: Setup ZITADEL with PostgreSQL
In this Guide, I want to cover installing ZITADEL with PostgreSQL on a Linux system. Please be aware that PostgreSQL support is still in Beta at the time of this writing, and you will need a PostgreSQL installation with Version 14 or higher.
NGINX Proxy
Create a new subdomain and point it to your server. Use certbot -d domain.name
for creating a new SSL Cert. Create a new file in /etc/nginx/sites-available/domainname
Open Source Authentication Solutions
Imagine you run a company and provide multiple web applications for your customers. In the beginning, you probably created a user table and the authentication methods yourself, but from the second application onwards, you will think about using already made open source solutions.
That’s the situation I am in right now. I run multiple web applications, which each have their own auth mechanisms and user tables. This means, a user from App1 can’t use App2 unless he creates a new account.
Open Source Social Media Management Tools
As a Startup founder, marketing is one of the biggest topics you have to take care of. There are tons of marketing automation tools, and most of them aren’t cheap. I found several open source social media management tools, of which some of them are getting used by me for multiple years now.
Socioboard
Socioboard is your full-blown social media management tool. It is open source and offers all the features you know from paid tools like Buffer, Hootsuite and others.
Recap: Are Startup Investments profitable?
Since 2017, I invested in multiple Startups via Crowdinvesting platforms. Before that, I only invested in public traded companies.
I am currently thinking about investing in some new Startups (and I also operate my own Startup), so that is a good time to check if my previous investments are profitable.
Industry | Type | Year | Performance | Comment |
---|---|---|---|---|
Drinks | Loan | 2017 | No profit yet | Waiting for repayment, company currently unable to pay. |
Software | Loan | 2019 | No profit yet | Growing fast but no profit yet. |
Software | Loan | 2018 | No profit yet | Growing fast but no profit yet. |
Restaurant | Equity | 2018 | Bankrupt | Won’t see any money. |
Food | Equity | 2019 | Worth lesser | Valuation has gone down. |
Finance | Equity | 2017 | Doubled | Valuation has gone up. |
Cars | Equity | 2019 | Up a bit | Valuation has gone up. |
Phones | Equity | 2018 | Doubled | Company should be worth more now. |
I also invested, via loan, in three - not public - companies which already exist for a longer period and which I don’t classify as a Startup because of that. Of these 3 companies, only one could pay me back in time.
VR and digital Assistants are the Future
I want to make a prediction. I think in around 10 - 15 years, most of the people in the western World will own or think about owning a Virtual Reality Headset. I also think that digital Assistants like Google Assistant or Alexa will be more important in that context than currently.
For context: I own a VR Headset and use digital Assistants since multiple years. I also worked in a team developing a digital Assistant and seeing practical use-cases for AR in the past.