Time to start a new Blog with a “Hello World!” post!
Let’s start with some technical, personal and historical background about my IT journey so far (even no one will be interested enough in this to read the whole article, though. And you know why I do it anyway? Because I decide so, it’s only about me to decide what is put here and what isn’t and there’s nothing you can do about 😛).
You digital-native-social-network-scum can search for some “Dislike 👎 or Report 📢” buttons as long as you like – this page was made by elders for elders 🧓 (quoth the 35 years old author), who went through the dark ages of the Internet, including connection breakdowns, because some other member of the household picked up the phone and interrupted your dial-up connection.
My first steps into the IT
I started to explore computers in 1994/1995 when my mother bought her first PC from an acquaintance she had back then. She was in the middle of an occupational re-training, aiming to become a medical secretary. They learned all kinds of typing things back then, starting with basics, like 10-fingered typing which she did on an expensive electric typewriter and stenography. But in about the middle of that re-training, “modern” computer systems were added to the skill stack (Windows for Workgroups 3.11, WordPerfect (not Microsoft Word!) 5.2 or 6 – do not remember that anymore). That included new topics one simply needed a PC for – you cannot learn and train mouse haptics, file- and folder-handling, dialogue interpretation and so on on a typewriter.
I was 13 or maybe 14 years old back then and did not have any contact with personal computers. The closest thing I knew was an NES (Nintendo Entertainment System); I neither got in touch with a C64 or such.
Nevertheless, since that acquaintance was such an expert in personal computers and reliable source to buy a ~800 DM machine from, he not only did rip-off my mother by selling her his own old computer parts (while presenting the bill for the new parts he defrauded for his own use to her instead), it was on me to copy some bad ripped black market copy of Windows for Workgroups 3.11 from 144 (!) floppy disks, manually for several days.
Neither I nor my mother had any experience in computers or even their parts. To us, this was an (apparently) working grey box; looking much like my good old NES. In that early months, we never we had the idea to check the insides of that machine for vendor or type informations; I’m sure, back then, nearly no one had opened an NES or PlayStation they bought for checking their bare insides; so didn’t we. It was months later when I gained some experience with that machine and read a bit about tuning and component exchangeability when I opened the case for the first time and noticed the rip-off.
However, since then, that device was more my own playground than it was my mother’s training station. In the beginning, she always had to wait in line when she came home to use her own training-computer for something else than watch me playing Solitaire or Stunts or fiddling around with the newest tricks or settings, I had discovered somewhere (we did not have Internet at that time and even if we had, the Internet was not such an endless source of professional information like it is today).
When it happened more and more often that she arrived at home, just to find her son’s elbows dug deep inside the opened case of her expensive PC (which usually was a clear signal for “no computing today”), she even started to lock the door to the room the computer was located. But soon, she just learned that that resulted in my lockpicking abilities to be trained and instead defined some more tight usage rules 🤣.
At some point in time, we had quite a fair arrangement on this, since she also could not deny the practical benefit to having a skilled PC service technician available 24/7 at no cost. I never really was interested in her typing and typography skills, but she definitely got some profit from my abilities and self-taught IT know-how.
My own playground
When I received my confirmation in 1997, I spent the whole money I got from presents (~ 2.200 DM) to buy my own “beast”-like PC together with my father. My parents were divorced at that time and little did he know, that I did not ask my mother for permission and just did it 😇. I think he had a good fight with my mother on that afterward … but since that device was my trustworthy companion for the next years to come, in every free minute (and in some in which other things like homework or studying would be next in line, also) I was trying myself and that machine out, I think it was a good thing. I learned everything I know about IT nowadays by such self-taught lessons; so, compared to what parents of other kids pay for the job education of their children, I think that was an OK amount to spend for that sake. That habit did not really change until today; I still sit hours in front of a computer, just learning stuff on my own.
With that “beast”, I suddenly was the strongest equipped nerd in town. Only a few had something at home which was comparable. And if they had, that surely was the device of their parents they barely were allowed to touch. No one had his own PC in their nursery; and that was not “any” stone-age PC which barely could start a session of Zork. It was a real killer from the vendor “network”, back then:
- 133 MHz Pentium CPU (including always switched on Turbo-Button 😉)
- 16 MB RAM
- 1 GB Festplatte (I was able to fit a whole audio-CD on my harddisk, dude!! That was before MP3 was available.)
- CD-ROM drive (wired to the SoundBlaster to play CD-audio)
- 16 Bit Creative SoundBlaster
- 3dfx graphics card
… still impressed? 😉 My case looked exactly like that from this flyer, BTW.
Connecting to the World Wide Web
Not too long after that, I bought an external 56K Modem, re-cabled the whole flat and utilized the phone line a lot! After my mother complained about that a lot in the first time, my PC soon became a 24/7 switched on router, also enabling her computer to surf the web 😄
More often than never, I was called while being on the road, because the internet was not working anymore because a fuse killed my PC. I then had to guide her on how to re-establish that manually 😅
Later, when I had my next PC, we had ISDN with dual channels to keep up our reachability by phone (if I did not decide to need dual channel ISDN connection at 128kbit/s). This first system then was still running 24/7, but in the meantime, serving as a home-server with network shares and routing capabilities (auto-reconnect in the meantime) for the whole family, running on RedHat Linux.
But that was later. When I got in touch with the World Wide Web 🌍 at around 1998, I also got in touch with some technically interested user groups over IRC networks and mailing lists. That really gave my learning curve a boost! And it also attracted me in a way that I wanted to understand what a website is, how it is build and how to write something like that on my own.
There was no such service like myspace, Facebook or Google+ back then; you had to tailor everything by hand. Sure, there were tools like Microsoft Frontpage, Netscape Composer or Macromedia Dreamweaver, which provided a more or less working WYSIWYG (What you see is what you get) approach (and I utilized Netscape Composer a lot to see a real time representation of what I changed in the HTML code immediately, instead of always save, switch window and hit reload), but under the hood, that was mainly manual work and you couldn’t achieve shit without knowing the most by heart.
In the very beginning, I really digged into learning HTML4 (without CSS, since that was too interfering with my hidden tables and 1×1 pixel, transparent image alignment skills 😉). I had some great results with that (in my opinion), but – no surprise here – it
- was a lot of work
- took ages to bring content to the site
- looked different on any device and browsers
Also, I did not really have something to say – I just did that for the fun of the experience.
I always wanted to learn how things like these fancy visitor counters are working, implement it into my site and see >1K visitors some day.
Not only, I had not found affordable hosters for my child-sized pocket money budget. But when I got 5 MB (!!) of free webspace given for free from one of my IRC techy pals (including a perl counter – yaaay!), I never saw a number greater than 300, before the script stopped working by whatever reasons.
I never was involved in any of the “Social Networking” – hypes. I was not interested when the first state-of-the-art hot shit like myspace was popular (around 2005 or so), offering a kind of limited inline frontend editor to change basics of the same template millions used also (like colors, icons and stuff). And I also do not use Facebook or Google+ regularly nowadays. I only have fake accounts for the case, someone decides these platforms are a valuable way to discuss and plan some stag night or ex-employee meetup (it is not!!).
That never attracted me, since it always looked the same, like boring stuff from the rack. It also did not require any skill, so the result was nothing you could be proud of (what did not prevent most people to be anyways).
My own dedicated host
In 2003, it was at the very beginning of my apprenticeship, I rented my own personal server and started to experiment with the wildest things. PHP 4 was en-vogue in the meantime, offering easy access to any scripting embedded within plain HTML code, without the need for any CGI-BIN – foo and even widely accepted by most low-budged hosting services. But I wanted to have my own server – now!
I did not only play with PHP or websites, but started to make myself familiar with every technique, one could realize with an own vital, 24/7 and bandwidth equipped server:
- Mailing service, including POP3, IMAP and spam filtering
- MySQL and PostgreSQL databases
- FTP server
- Background Irssi IRC client
- hidden eggdrop bot in my favorite IRC channels (to follow the discussion even when I got banned in the heat of the moment 😉)
- giving back some of the love I received by volunteer Webspace to friends and colleagues
- setup, tune and maintain Apache HTTPd
- scripting around with BASH
Start of my professional career
Later in 2007, exactly this interest and self acquired skills have lead me to my first real jobs in leading technical positions of several online agencies. I had a little focus on webserver maintenance, back then.
I started my “real” career in 2007 (not counting my apprenticeship and my first Callcenter Agent job) in a marketing agency, who expensively sold moderate quality TYPO3 sites with poor-to-no-QA software and hosting of that sites to uneducated customers, who underestimated the vendor lock-in for bad code and concepts.
This sounds bad, but when I started to work there, it did not feel like that, since first of all the market standard was different – there were no such things spread too widely like Amazon AWS, Google App Engine or Azure. Hosting customer sites on shared bare metal servers were considered a fair compromise that time on the market (at least I thought that, based on my lack of experience and the fact that dozens of customers paid that 😱) from cost efficiency perspective. We also had dedicated bare metal systems in stock – starting from ~3.000 € a month 😉 I cannot understand until today why anybody was paying that much for so less. I rented my server for ~30 € a month. Multiply that by 10 or so and you could tailor a great dedicate-everything – solution, including multi-node load balancing and -failover, proxying, separating DB- from Web-Load – solution for a tenth of that costs.
But OK – seems like some companies like to pay more to have the benefit of only having to discuss with one representative, even these days … 😳
But to be fair to myself: I only learned with my experience and market overview growing that this was an overpriced and, from a quality perspective, insufficient business model. And as much as this insight grew, both, my criticism towards some of our concepts and disgrace against my person from my employer’s side grew too.
After 6 years in total, including 4 years as operational team leader with a head count of 3 employees and after some unbelievable juristical offenses against employment law from my employers against nearly every employee (including myself), I was not willing to continue like that and decided to use the opportunity to hop on board of a small startup in the online marketing business as system administrator in April, 2013.
Since that was planned as a time limited experiment from my side for one year in the first place and the startup did not succeed as much as anticipated, I again switched in June, 2014 to a telecommunication company, located in Cologne.
This time, I also changed business fields: From mainly web hosting related stuff to more infrastructure maintenance and refinement weighted opportunities, utilizing way more advanced and complex setups in both, infrastructure and application stacks.
After two years working in Cologne, while living in Ratingen (~70 km which took between 90 and 120 minutes one way during the rush hour I was bound to, resulting in 10,5 – 12 hours a day), I decided to re-locate my working place closer to my living place in July, 2016 again. In the meantime I became a father of two children and I do want to spend my time with my family rather than behind glowing breaking lights.
Today, I’m working as a Site Reliability Engineer, doing a lot of DevOps and Python / BASH development at a global playing company, located in Düsseldorf (with several sites all over the globe).
Today’s site goal and server status
I never gave up on that concept of a rented server. In the meantime, the underlying system has changed some times (to gain more CPU power, more RAM, more … everything usually at lower costs than my previous contract had to offer), but I always migrated the most of what I had achieved with me.
Today, this site is not only a named virtual host within the same shared Apache HTTPd anymore, written from scratch as plain PHP embedded HTML, but only one service within a Dockerized environment, including security hardening, a CMS (WordPress), Off-Site backups and services fenced against each other, carefully.
Compared to what my first blog (German, not updated anymore) looked like and the technical concepts (and benchmark results) between those two sites, I think I have done quite an OK job: As measurements of today (29.12.2017) show, I reach the following results in the listed tests:
- Google PageSpeed insights:
- 100/100 for mobile
- 100/100 for desktop
- A Qualys SSL Labs test Result of A+
- 5/5 times Rank A at webpagetest.org
- Between 100% and 97% performance scores at GTmetrix, measured from Vancouver, Canada
- A ranking at securityheaders.io (I’m lacking a tight Content-Security-Policy, preventing me from being ranked A+ on purpose, since that is too fragile and test intensive for a commonly enhanced private hosting for now)
- Google PageSpeed insights:
I think that is a fair technical start for a new beginning! Let’s hope I can make that stay like that 😉
PS / Update from 30.12.2017:
These results were reached with a minimalistic version of the – mainly – empty start page. Running the same performance tests on this post reveals slightly bader results … but mainly because of things, I do not want to change, like that Gravatar seems to not offer proper browser caching headers and delivers unoptimized images … peanuts to me, so: no change!
This blog will aim for some more global attention, being listed in some meta collectors and planet sites, like http://planetpython.org/ (I’m very excited if I will match the quality expectations readers on especially that one have!). So, I decided to make this an English – only blog 🇺🇸. Hopefully, that does not turn out to be too mumbo-jumbo like.