So apparently in capitalism, the richer you are, the less taxes you have to pay.
Just look at all the big companies that pay less than 1% taxes for their
revenue, even though the corporate tax is usually much higher.
They use clever tricks with different subsidiaries and shell corporations in
some foreign countries that have loopholes or simply no corporate tax at all.
This is absurd in itself, and as a mere mortal who pays a lot of taxes, I feel
I was thinking: Why is it only the rich that can benefit from such –
apparently legal, but certainly amoral – wizardry?
How about there were some tax advisor (more like tax evasion advisor), who would
take care of all this for you, like creating bogous shell corporations in
foreign countries and can make guarantees that everything is still legal.
Someone who just said “I can guarantee you that you pay no more than 2% tax
and that you can not be touched by your countries income revenue service
(Finanzamt)” For that service, he can charge you 1% of all your income and make
tons of money himself (for which of course he himself does not have to pay
How about someone just starts up such a system as a service (SaaS) for every
single mid to small size company, freelancer or simple employee? So that every
single one could benefit from the same cheats that the super rich are using to
rip us off. And if everyone starts doing it, maybe the countries leaders
suddenly realize that the system is broken as fuck and start fixing it for good.
So why doesn’t anyone do something like this? And if something like this already
exists, point me to it.
Actually my first entry written in english, yay.
So I decided to quit my job. I just can’t take it any more. The problem came
down to the fact that I couldn’t work efficiently, I was bored all the time and
I did not enjoy working any more.
Naturally I asked myself the question what I want to do. What do I want to
achieve in life? Simple answer: I want to create something awesome. I love
software engineering and I want to have fun doing it.
There are a lot of articles out there saying that getting a job itself is
wrong, or selling ones time to a company is wrong. Well kind of. A lot of my
friends are in the same situation as I am. They are motivated, they want to do
something awesome. But the circumstances are not letting them do that.
Creating something awesome is of course awesome. But one has to make a living.
And for that to happen, someone else needs to want to pay for the awesome thing
you create. And that is a really really hard thing to get.
Working in a company might give you the assurance that someone down the road
pays for the awesome things you, or the company does.
But creating something that someone else wants, and creating something awesome
are not one and the same. You have to make it awesome. You have to make it
something great that you are proud of. And thats where most of the companies
fall short. They are not focussed on doing something awesome. It is not their
goal to make it fun and enjoyable. But that is one of the greatest mistakes I
I consider myself a problem solver. I solve problems, by creating solutions in
software. Thats what I do. Where I go a lot further than other people is that
I want to solve the core problem, not the one at hand. Lets make it clearer with
Say, the problem at hand is “deploy package X on the server”. One solution is
to ssh onto the server, create a backup, overwrite the files with the new copy
and depending on the software used, restart it.
I don’t know about you, but I just know that this is not a really elegant way
to go. It involves a lot of manual labour which is not fun, which is not
awesome. It is essentially the wrong solution for the wrong problem.
And that in itself is the problem: Deployment is boring, non fun work. So now
that we know the core problem, lets phrase our goal more precisely:
“Make deployment an elegant, fun and straight forward process”. Now thats a
problem worth solving… by using automation! As it turns out, there is a really
good way of automating this. Using git-based deployments, and post-receive hooks
a developer can just push to the server and it just works. Now that is a real
But yes. What if things break? Problem: “Intervene when things break”. Or… wait
a second; lets go one step further: “Make it impossible to break things”. Thats
an interesting, challanging problem worth solving. One way of making things
impossible, or well lets say a lot less likely to break, is to test the
But testing is a tedious and hard task. “Make testing software fun!” By now you
should kind of get the point. And with the right tools, testing is fun; and
leads to results. Most of the packages I have published have a good test
coverage, most of them up to 100%.
I had a discussion lately where another developer called this
lazyness driven development, LDD. I would rather call it awesomeness, or fun
driven development. A few weeks ago, a different developer told me “you make it
look so easy”, to which I replied “If its not easy, I’m doing it wrong”.
So coming back to the problem I have, for which there is no obvious solution
unfortunately. I want another job. And I want something awesome :-)
I want to work together with people who share my enthusiasm,
who are motivated, who love software
engineering, and love to solve the problems at their core. I want to have the
freedom to actually do that. By which I mean I don’t want to the problem to
become a political one. I don’t want corporate policy to stand in the way of
solutions. I want to work efficiently!
I kind of want to change away from the front end development to tooling. Just
because there is more problems to solve there. And it makes everyone more
productive. Better than creating something awesome oneself is to create
something awesome that helps others create even more awesome :-)