Frontpage still haunts my mind and why that blocks me.

by Dries De Roeck on April 15, 2021

The idea for this post has been circling around in my head for many years. In fact, I saved the title of this post as draft in 2014 already. Many years later, I keep coming back to the way I struggle with making things for the web – so it felt like the time was ripe to actually write the post.

Remember Frontpage?

I must have been 14 or 15 years old when we had ‘the internet’ at home (1996-ish). At that time I lived in Scotland, and it was the first time I had direct access to a computer in my own room. Together with some friends at school who also had an internet connection at home, we’d make the most random websites using Microsoft’s FrontPage.
It was ‘the geocities’ era, we were doing Play By Email RPG’s and the internet was still young … we were all used to the ehoow sound of an ICQ message blaring through the Creative AWE64 Soundblaster and drooling at the Matrox Millenium graphics card we couldn’t afford.
But, back to Frontpage! This piece of software was a WYSIWYG editor, part of the MS Office suite … or it at least looked like an MS Office style program.


Frontpage had everything I needed including a visual overview of how pages are linked together. I even managed to play around with custom javascript stuff to make fancy dropdown menu’s. It also allowed me to change stuff directly in HTML and learn how it all worked under the hood. Ow yes, it had frames! I loved frames.

Then CSS came around

Because I kept using Frontpage, I never really had to bother with CSS … and to be honest I only learned about it very late. I was never really interested in the code or whether the code looked ok … to me the only goal of making something was the result. And Frontpage allowed me to exactly that.

Weaving dreams

After Frontpage, I moved on to building sites in Dreamweaver (image hotspots!) with some basic flash animations I used to make in Swish. Basically, I stuck with the visual editors and only peeked under the HTML/CSS hood to tweak or tune some things. The culmination of this bricolage was probably which I created together with some friends. I can’t really recall how it all worked, but I remember it was a pain to maintain this site. I somehow figured out how to populate a database in the end … and had people submit entries.

The rise of the CMS

After doing some Dreamweaver things, I moved directly to building sites using Drupal and WordPress. Again, I kept relying heavily on the visual editor parts of these environments – mashing together adding and plugins to Frankenstein something together in the end. Because of all my web frankensteining, I did learn some basic HTML and CSS … but never really started that from scratch.

Frontpage haunts me

Whenever I picked up a course or a book to learn HTML/CSS properly, I usually didn’t get far in because I totally missed the visual feedback I was used to. I never started creating a website from code, but always from the visual ’end result’. Looking back, I totally regret I never learned to code from scratch and always had to rely on third party scripts, addons and plug-ins. My approach to web design has always pushed me in a seat where I would hack together some html code, and hope it would work. I never really developed the skill to debug things in code or make things look like I actually wanted them myself instead of relying on someone else’s plugin which I would tweak the colours of.

Static site generators

The past few years I started to poke around static site generators. In order to create something using a static site generator like Hugo, there is no other option than to start from code. There is no visual site overview, everything is ‘hidden’ in theme files and defined layouts.
Once again, I can use these things (ie. I recently created using a slightly customised Hugo theme) … but I never get round to really understanding what’s going on and how I can take full control of the thing I’m making.


Looking back, I started making my first small sites in 1996-97 and over the years I developed a need for control and understanding of what I was actually doing. By the time I came to realise that, it felt like it was too late already since my brain’s blueprint of ‘making websites’ had already been defined by the Frontpage approach.
So here I am, wondering if I should just keep doing web bricolage or be more ambitious and force myself to be more fluent in code. I think I’ve been asking myself that question ever since I got my master’s degree in 2007.

Why is it blocking me?

There are several cases in which I have a small idea to make something on the web. I know that all building blocks exist and it should be feasible to create it. But, once that something becomes too ‘custom’ or too much outside of common plugin / addons for different web building frameworks, I just don’t manage to push forward and make it work. I think, in order to change that I need to start from the beginning and take a decent (probably very general) coding course.

For now, I’ll just bricolage on and when things get complex I’ll try to find some funding for people who are apt in writing custom code things.


The first idea of the web was a read/write web, if I remember correctly. It is such a pity that never worked out.
I have been thinking about WYSIWYG editors on the web a lot. The problem with the web though, is that What *You* See, Is Most Probably Not What Everybody Else Sees. There are so many different screen sizes, browsers, operating systems, types of weather, devices, and types of assistive technology, it is impossible to create a WYSIWYG editor.
A true visual web editor would have to be something like a What They See Is What You Mean editor. This editor would have to help the designer with designing the purpose of the page, and help them with all kinds of contexts (like screen sizes, types of interaction, etc), and guide the designer through all kinds of complicated what-if questions, like “what if javascript failed to load”, or “what will it look like if this fancy font is not available on the user’s system.”
I really hope one day someone will make this tool.
Until then I am afraid you will have to learn CSS. The nice thing is that CSS is well supported nowadays, and it has tons and tons of new very nice features to play with.

by Vasilis on April 15, 2021 at 3:08 pm. #

@Vasilis – thanks for the comment. Indeed, the whole WYSIWYG has always been a nice illusion – I like the What They See Is What You Mean alternative though!

About learning CSS, an issue I have is I know enough HTML/CSS (even javascript or php) to roughly understand what is going on and where I should be looking to change stuff. But once things get a little more complex, that knowledge is just not sufficient. For example, seemingly simple things like ‘when this button is pushed, a database query needs to be made and at the same time the webpage should update’ or ‘When a button is pushed, a counter should increment and this counter should update automatically on all screens that have the site open’.

In fact, I managed to build the above examples … but I don’t really know how they work in detail. What I wonder about is if I should force myself to learn it ‘properly’ or just keep meandering on like I’m doing now.

by Dries De Roeck on April 15, 2021 at 3:21 pm. #

I understand your problem. I have the same thing with Python. I am sure I have written complete functions that could be replaced with one single word. In a way it is a lack of vocabulary. I think it is similar to trying to talk in a foreign language.
For me simply doing it is a pretty good way of learning. As you meander, as you say, you keep on learning new things and your understanding grows. The problem with this way of learning is that it *feels* like you are not learning things properly.
It is a discussion I have with some of my colleagues as well. They argue that our students should understand how HTML works before they work with it, while I think it is fine to first play with the material, and then learn the finer details while they go along.

by Vasilis on April 15, 2021 at 3:46 pm. #

Leave your comment


Required. Not published.

If you have one.