OMG, that's a long story.
It took me a while to get my high school diploma because I had to sit out three times: I was a lazy bastard. I was only interested in motorcycles and girls. Mathematics and physics were really easy because I didn't have to learn it by heart but only understand it. There I belonged to the best. But Latin and ... English ... (
) broke my neck.
Nevertheless I made my Abitur and started a to study mechanical engineering at the university in Darmstadt. There I learned a lot, but when they started to torture us with iron/carbon diagrams, I quit after three semesters.
So I changed to another study: geology. And that was really interesting, I was enthusiastic. But as life goes, my girlfriend got pregnant, overnight, so to say (she is my wife today). With four brothers and sisters my parents couldn't afford to support me financially. So I had to make some money and cancelled my studies and drove a cab in Darmstadt. During this time I met the boss of a software company, who appreciated me. I got a job there as an office clerk. I fed the printers with paper, sorted lists and took out the garbage.
After a while I helped a little bit in changing programs - after I was told exactly what I had to type and where. I learned quickly, and after a while I could write programs on my own. I enthusiastically worked 12, 14, 16 hours a day on systems /34, /36 and AS400 (aka i5) - on which I am still active today and became a specialist on IBM midrange computers.
After two and a half years I was the head of programming. That was exactly my thing!
Privately I extended my knowledge to Unix systems, I learned C and C++.
I stayed there for four years, but then I couldn't develop further. I started in a new company as a software developer, and almost doubled my income. But in the fourth year there, the boss decided to become a Sanjassin, and I thought "let's go!".
With the portfolio AS400 and Unix I could start my own business as a freelancer in 1993. The first customer went bankrupt and I lost 60'000 DM. After that I worked for Deutsche Bank (seven years), Deutsche Post AG, Danone, Fujifilm and especially for IBM in large software projects on AS400 and RS6000 (AIX) as well as Solaris.
When 9/11 came, Deutsche Bank terminated the contract of 4000 freelancers, I was unemployed. There were no projects, the market was flooded with freelancers. Money was getting tight, because I had to service my home loans and of course live. So I prepared to sell our beautiful house. That was quite a terrible, and really hard time full of hopelessness.
But then, four weeks before it got really serious, I got another project, it was salvation. I was overjoyed.
In the year and a half without a project I had privately started, out of curiosity, to develop a compiler that automatically converts AS400 programs from RPG to C++. In the AS400 forums I was laughed at "what took IBM 200 man-years, you want to redevelop at home on your living room table? Absolutely insane, ridiculous, impossible. Forget it!"
But I just did it. After two years I had a prototype as a proof of concept, and it worked, was modular and delivered excellent results.
But as it is with me, I wasn't interested in it anymore, because the problem was solved and then came exactly the part that wasn't called "playing" anymore, but was hard work. And the prototype was far from being complete as it only knew a handful of operators. So I published the whole thing as open source on the internet and turned to my new projects.
A few months later, because of my publication, I got a request if I could help a company in Czechia to develop a similar project with the target language Java. I accepted, it was only a few weeks. Again some time later I got a mail from Italy asking if I was developing software professionally. Then everything went fast: I flew to Italy, presented the concept of my compiler and was there for three days. Four weeks later I had to come again, and finally, shortly before Christmas, I had to fly there for the third time. I was told that they wanted me to lead a project to develop such a compiler to product maturity for the data center applications there.
But I declined: "
Gentlemen, I am very honored. But I have a very interesting project on my doorstep at IBM. This is like an Italian car mechanic having to change from Ferrari to Volkswagen, so I ask for your understanding".
But they did not let go. Until my wise wife advised "
Think about what conditions you would do it for and offer them that." Genius.
So I wrote down completely crazy conditions, hourly rate, expenses, flight home every weekend at the expense of the customer, hotel, crediting of travel time with 50%. I sent this off on Friday afternoon and thought to myself "now there is peace".
Monday morning the phone rang "Ciao Edgar, come stai? Va bene, accettiamo, quando iniziamo?"
I was speechless. To make a long story short: I accepted the project and remained the technical director of the project for 12 years. It was my design and my baby, the most beautiful job of my life. The company is a joint stock company that serves 20% of the Italian banking market with its data center applications. The AS400 serves 10'000 users simultaneously.
In total 32 million lines of code in RPG, 10000 lines of code in CL. The compiler was able to translate 99.9% of this code, as well as the CL programs. The result ran on Linux machines and was performant.
Unfortunately, in 2018 a bank had bought into the company with over 50%. They kicked out the CEO (who was very sympathetic to me) and put a Banker there. While the former CEO was a technician (he came from Intel) and saw our work, the new one saw only the costs - so the project was terminated.
It is still the only compiler in the world that can convert AS400 programs to C++ and thus makes them portable to Linux machines. But it is not used.
And so my project in Italy ended on January 31st, 2019. It was a wonderful time with many ups and downs, and professionally the best time of my life.
This was followed by another year at the German Air Traffic Control (C++ development for the air traffic controller workstations). On July 1st, 2023 I will reach my retirement age. But I'll keep doing projects, only I definitely won't be flying to Italy or anywhere else every week anymore.
And that's the good part.