A home page author's progress

I was rather surprised to find that the Wayback Machine has copies of the home page I set up when I was 14. I'm not sure how it could even find it, something must have had a link to it for this to happen, and I have no idea who might want to link to it. Sadly, little of the actual content was archived, so the things from my youth that I might have wanted to revisit are permanently lost, but the HTML layout is preserved in all its embarassing glory.

Regardless, it made me realize that it's been over a decade of online presence for me.

It's an interesting and still largely unexplored social implication of the Internet, the digital trail you leave behind you that is public and undeniable. I'm quite lucky that really stupid things I've done online when I was in my teens didn't leave a permanent evidence, not least because they mostly happened on the IRC, while on my home page I mostly kept things I wouldn't be ashamed to share with anyone.

This is also an interesting implication of personal web sites, to me anyway, and perhaps one of the reasons so many home pages had so little content (other than author's laziness). If it's going to stay there accessible for a long time, and you need to think where it fits in its structure, the value threshold gets higher. In social networks where a post will sink lower than the immediately visible part of the feed quickly and that often do not even have decent archive search functionality, the inhibition is way lower. Not that there's anything wrong with it, perhaps there's place for pictures of one's lunch too, but sometimes it's worth it to stop and think what's really important and what is not.

Frankly, I feel a bit guilty for adding this strictly personal stuff that is of little value for anyone who doesn't suffer from unhealthy interest in someone else's life. I've been trying hard to redeem the concept of a home page and populate it with stuff that is actually useful for the visitors. But, on the other hand it's a personal account of someone who got started with web just before the web 2.0 really took off, so I'll leave it here.

2004–2005

Website screenshot from 2004

I was (un)lucky enough to catch the tail end of the web 1.0 era, when web page layout was controlled by invisible tables and spacer GIFs. It sure was an age of clunky web technology and tacky designs, but it was also an age of a DIY movement when many people who were not professional web developers were building the web itself, not just populating web services with content. I'm grateful to have seen the latter, even if I would like to forget the former.

The first incarnation of my homepage was more about learning how to write web pages than anything else, and it hardly had any useful content. It's not to say it was entirely devoid of content like so many personal web pages around the net, there were science olympiad problems and papers by the aspiring researcher, but I doubt it was useful for anyone else. You never know, of course. It also did have that distinctive feel of a 15 year old geek's web site, which is not surprising.

From the web technology point of view, it was a pretty typical web 1.0 page, with tables and inline color/bgcolor attributes, spiced up with some purely decorative CSS. To my credit, I avoided most of the web 1.0 original sins such as absurd background images, bright color, animated GIFs and so on; as you can see, it did have silly banners though. But hey, it was 2004 and you still could not count on proper CSS support in viewer's web browser, and tableless layout still wasn't a common knowledge.

The server side was a bunch of PHP scripts that generated the menus from arrays and assembled pages by simple require() calls, without a proper template engine, but template engines weren't exactly common either. At the time simply having a dynamically generated website could raise your street cred a bit, among the geeks anyway; it didn't use the cutting edge technology of the time, but it wasn't as backwards as it may seem now.

Web hosting with script execution or database support was also quite expensive at the time, so were second level domains, totally out of reach for a poor high school student. That web page used a third level geographical domain that was free to register if you had means to host the zone, and my friend who worked as a system administrator at a college, and could use its resources within reason, provided me with hosting and DNS. He was also the person who introduced me to Linux and web programming and generally shared a lot of computer knowledge with me. Later in my life I became a person who provided my friends with free hosting and support, so it came to a full circle in a sense.

2005–2007

Website screenshot from 2006

The second incarnation had a bit more educational content. Too bad the Wayback Machine never got to archiving most of it.

From the technical point of view, it was a curious mix of the old and the new approach: it still used tables for layout, but all visual style was defined in CSS. I believe it was due to browser compatibility concerns (IE6 was still common!), and I seem to recall I took pride in good cross-browser compatibility, and standards-compliant HTML and CSS for that matter. That said, it was the last table-based website I ever made, in the mid-2000's web browsers without proper CSS support pretty much went extinct and it became a non-issue.

Around that time I became a huge fan of XML in general and XHTML in particular, so it was using a perfectly valid XHTML 1.0 Strict. I'm still quite disappointed that HTML5 makes XHTML5 specification optional rather than mandatory, and doesn't provide either DTD or XML schema. They go as far as to claim that their validator application is a proper substitute for a machine-readable specification, which is nonsense.

The doodles that I drew specially for it, sadly, got lost over time. They were rather badly drawn but I still think they were kinda fitting.

The server side almost didn't change compared to the previous version. What I'm still wondering about though: why no one thought of static website generators at the time?

All in all, despite its issues, I don't really think of it as an old shame. It was fair for its day and my age I guess, and I'm even a little proud to see that it still renders quite well in latest web browser versions on my 1920x1080 display, even if its design simplicity is a big contributing factor (many simpler layouts from old days break down on modern setups).

2009–2010

Blog screenshot from 2009

Year 2008 wasn't the best time in my life in many ways, and struggling with a lot of personal and financial problems hardly left me with time and energy to maintain any websites of my own. In the spring of 2009 I quit the job at the company that had failed to pay me anything for a few months anyway, which left me with even less money but much more time for learning and writing. At that company I was technically a network admin, but as it started shrinking due to questionable management practices that turned out unsustainable in a time of recession, my responsibilities expanded to making and maintaining company websites, up to fixing bugs in a proprietary CMS only available in obfuscated PHP that was left behind by a defunct company, migrating from it to Drupal and converting website designs made by graphics designers in Corel Draw (yes, Corel Draw) to website layouts. After I quit, I made my living doingodd jobs, often making website for small companies, so it was the only time in my life so far when I was paid for doing anything with web frontend.

In 2009 I decided to start a tech blog and picked Blogspot since it looked like the best platform for technically-minded people at the time. Unlike most platforms of the time, it allowed custom themes to redefine the layout completely rather than just change the colors and pictures, and the template language was XML-based. There was not much theming documentation, but I used the capability to make my own theme in my trademark style of aggressive minimalism. If I used a readily available theme, it probably wouldn't even qualify inclusion in this timeline.

It was one of the few services that supported custom domains at the time. In the same year I've finally registered a second level domain for myself and went all-in with Google services, the CNAME record of baturin.org pointing the Blogspot blog, the MX record pointing to GMail, and SRV records for XMPP pointing to GTalk. At the time I still believed that Google will follow its own “don't be evil” philosophy. Then they started analyzing email message content for context ads, and then silently switched GTalk XMPP s2s off without warning, before replacing the protocol itself with Hangouts and creating yet another walled garden. By the end of 2010 I started moving away from Google towards self-hosted alternatives.

2010–2012

Website screenshot from 2010

I can't remember if I stopped using Blogspot for any particular reason, or it was just a part of my migration away from Google services. In 2010 my friend offered me to trade a free VPS for help with his network, so I decided to go back to hosting the website myself, but keep the tech blog format, mostly focused on Vyatta and networking in general. That was also the point when I switched to writing in English instead of my native Russian, to practice my English first, and to share it with people from different countries I've met on the net second.

I used Textpattern for it, for a while it's been my absolute favorite CMS that I used myself and helped my friends make websites with it. I still think it's a pretty nice CMS with a lightweight and no-nonsense approach. Before that my go to CMS was Drupal, but at some point I got disappointed by it becoming more and more heavyweight and messy (they mostly fixed it since then).

2012–2015

Website screenshot from 2012

I don't remember what prompted me to dismantle the Textpattern blog and replace it with a single page stub. I do remember that I've been using my blog on Tumblr as a primary platform though. By now a tech blog on Tumblr sounds quite strange, but I still think at the time Tumblr was quite a good idea, if only it didn't get that unfriendly to technically-minded people.

2015–2019

Website screenshot from 2015

The amount of stuff that had to go somewhere but could not be added to a third party web service because it needed support for custom HTML and JS, like the iproute2 cheatsheet has been growing, so I kept adding new links to that single page stub, and at some point I thought I may as well want to make a full-grown personal website again, so I did.

To simplify maintenance of the new multi-page website, I've made a home-grown website generator, because there are already so many of them that it's easier to make a new one than to choose. The other reason is that, sadly, almost all of them are using markdown or similar limited and poorly specified markup syntax that is not that simpler or more intuitive than actual HTML, but makes it harder to use full capabilities of HTML, and completely ignores the semantics of the elements. This is an abstraction so leaky that it simply shouldn't be there.

2019–...

That's what you are looking at.

Not a radical change from the 2015 version, more of a refresh, and in some ways, even a simplification.

The main motivation for the layout change was to make it mobile-device friendly. I still think at the time of writing mobile device UIs don't show any improvement, and capacitive touchscreens will forever remain very low resolution input devices. However, people routinely using their phones (not even tablets) for internet access is now the reality that is impossible to ignore. Back in 2015 I still could just tell someone to use a real computer, but now that half the web traffic comes from mobile devices, mobile device usability is webmaster's problem, much like IE compatibility used to be before IE lost the browser war.

In 2018 I finally started making mobile usability improvements, starting with the iproute2 manual and the MTU/MSS calculator. I was very disappointed to find out that all mobile devices ignore the “handheld” media query, which makes it impossible to target them easily. I'm equally disappointed to see that the default response to the issue in the industry is to either use mobile version redirects based on user agent detection, or degrade the desktop website UI to the handheld device level.

In any case, the comparison with IE compatibility issues is superficial. IE compatibility issues that invariably required dirty hacks to fix, while mobile device accessibility is a hardware and user interface issue for the most part, so it can be seen as a chance to make accessibility improvements in general.

Responsive web design is a good idea in general, but only to a point. Compared to paged media, web already made proper typesetting nearly impossible. When composition, in the visual arts sense, is no longer possible either, it threatens to make web pages simply collections of loosely connected elements. I don't know what will reverse the trend, if anything will.

Design simplicity was always one of my goals though, so I thought I can make acceptable compromises. I'm not a graphics designer after all, nor I ever wanted to impress anyone with the looks of my page. I see it more like book design, which is meant to augment the perception of content, not dominate over it.

Since making a separate mobile version looked impractical, I decided to try to simplify it to the point when there's still some composition, but also make it work even on small screens. I immediately opted out of a “hamburger menu” since it requires JS, and code simplicity was also one of my goals: I think if something can be done without client-side scripting, then it should.

Since any remains of fixed layout had to be removed, I decided to finally switch to a flexbox-based layout. Centering the content block worked like a charm. Automatic layout of link in the top menu seems just acceptable to me since on small screens in landscape orientation it often creates huge gaps, but so far it seems like an acceptable compromise. I'm sure I can make quite a few improvements, if I find time for it.

This page was last modified: