When I started my blog in 1999 (by adding a date to a “Link of the Day” archive I had been maintaining for a year or so), I coded everything in HTML, by hand.
This was before Facebook, before YouTube, before Wikipedia, and around the time that the domain google.com first went live.
Most of the content on the Internet was hand-coded HTML, and instead of search engines, you would click your way through a hand-coded catalog — Arts -> Music -> Classical -> Mozart -> [scroll through a long list]
This was perfectly normal, because it’s how libraries organized their contents — every book was in a specific place, and you’d walk to that place and find the book, and while you were there you’d make sure to look at the other books on that shelf, which you’d never know about if you hadn’t walked there.
Search engines were in their infancy, and that meant in order to find a page, you usually had to follow a link that someone had created. So people who came across interesting links put them into the niche catalogs they collected on their own private, hand-coded web pages. I had catalog pages devoted to college writing, interactive fiction, the Czech play Rossum’s Universal Robots, the medieval York Corpus Christi Pageant. Instead of clicking through a social media stream that someone else’s algorithm determines would keep us engaged as a cog in someone else’s money-making factory, we happily puttered in our own gardens, and thought of people who came across our pages as “visitors” — not “followers” or “users.”
When my home page got too long I would cut a week or so worth of entries from the home page and paste them at the top of an archive page. I don’t remember the first time I heard the term “weblog,” but I in July 1999 started adding dates to my “Writing Links and Commentary” entries.
I also added a comments feature, and for many years fought off the spam manually, with a home-grown set of PHP scripts.
My first faculty job was teaching technical writing, at a time when knowing HTML made English majors very marketable. I also had my first-year writing students create a “personal home page.”
For me, coding the backend was part of the pleasure of blogging, but when I moved to my current job in 2003, I had a small technical support budget and hired a former student, Will Gayther, to bring my blog into the 21st Century. Here at Seton Hill, I taught the very basics of HTML/CSS in an upper-level “New Media Projects” course.
I introduced my students to blogging through MoveableType, which permitted me to give students individual blogs on a site that I managed. Later I switched to WordPress.
Today, doing things with a social media app (adding filters, tagging friends, muting or unfollowing or blocking, etc.) means selecting an option from a menu someone else has created for you. Yes you are creating the pictures or writing the comments, but the nuts and bolts of the apps involve people selecting options from a menu.
By contrast, creating web pages in the 1990s and early 2000s was more like baking from scratch.
This article does a good job capturing what we lost when we made the shift away from hand-coding our own bespoke sites (where we could casually throw in an interactive widget or feature into an otherwise static HTML page) and towards the complex platforms (where the average user can’t just code up a custom widget, but must instead install someone else’s plugins; it takes a lot of effort to get to the skill level where you can code your own plugin, and so the average user becomes much more passive).
The mildly dynamic website. PHP enabled dynamic web applications for the masses. But an interesting and particular effect of the rise of PHP was that it enabled and led to the rise of what I’m going to call “mildly dynamic” websites.
Broadly, these are websites which are still web pages, not web applications; they’re pages of essentially static information, personal websites, blogs, and so on, but they are slightly dynamic. They might have a style selector at the top of each page, causing a cookie to be set, and the server to serve a different stylesheet on every subsequent page load. Perhaps there is a random quote of the day at the bottom of each payload. Perhaps each page has a comments section. Perhaps each page load shows a different, randomly chosen header image. Anyone remember shoutboxes?
Of course, this is all minor functionality, with the possible exception of comments sections. It’s not a big deal. Still, these random details gave a certain character and individuality to websites of this era that is hard to find today. They were, inimitably, the product of jamming. (Many use the term “indieweb” today in reaction to their own perceptions of a change in the character of the web from how they once remembered it; these random details are one such part of my own memories.)
(As an aside, WordPress and similar PHP blogging platforms are probably the principal exception to the static site trend here. These are a mixed bag; while on the one hand, they’re still oriented towards publishing static content, they do offer mildly dynamic functionality like comments systems. On the other hand, they’re not really oriented towards adding your own mildly dynamic functionality. Though of course you can add custom functionality with plugins, they’re not really an environment that encourages jamming, or, say, embedding dynamicity inside a blog post right then and there. Others have noted that the rise of blogging platforms such as these led to a greater uniformity in websites, because of the rigid publishing paradigm of chronologically ordered blog posts they imposed on those who use them. You can go against the flow and fight the system, of course, but this takes effort, and most won’t, so the net result is that websites become oddly samey.)
The dynamicity gap. Eventually, the era of PHP websites passed and static site generators became the new fad. Everything old is new again! First you had people who made static websites discovering dynamic websites, and then you had people who made dynamic websites discovering static websites. A consequence of this, however, has been the demise of the mildly dynamic website.
In short, here’s the problem: the mildly dynamic functionality I mention above is too minor to be worth bringing in a web application framework, and spawning and maintaining persistent processes just to serve a website. —The Demise of the Mildly Dynamic Website