Farewell To FrontPage

Home Page   Oregon-Nudes   Non-Nudes   About Us   FAQs   Contact_Us   Links   Submit A Bug Report   Make A Donation   Out Takes

Page created:  December 8, 2013

FrontPage This web site has been around for nearly 20 years, and it has always grown & rarely shrunk.  As of this writing, there are well over 10,000 images on this site and over 1,000 pages.

For much of the time, this web site has been implemented with Microsoft's FrontPage.  It has served me well, but unfortunately, Microsoft obsoleted FrontPage roughly 9 years ago. The growth of this web site, along with the neglect of the support provider, has made it difficult to maintain this web site with FrontPage.  In particular, the web site started malfunctioning a couple of months ago -- the themes, page banners, and navigation buttons disappeared, and several pages got corrupted, and we simply couldn't fix these problems.  FrontPage had to go.  This page documents some of the effort & discoveries I made as I went along.

Table of Contents

Computers & Me:

As I write this, I am two months shy of my 61st birthday.  My interactions with computers goes back to my high school days, when I was in my mid-teens (yes, back in the mid-1960s).  Back in those dark ages, computers were large boxes full of vacuum tubes with switches & lights.  When I could, I'd take the trolley downtown to a science museum, where I had a pass & access to their computer.  I remember programming the computer by pushing toggle switches to light up or turn off individual lights (bits) in a row and then pressing a special toggle switch to "save" that single machine instruction.  Then, once you've entered in all the instructions (one bit at a time), you'd press another switch, and your program would run.  The program would run and when complete, your result would be represented as a series of lights in a single computer word.  It would be your job to interpret what the collection of lights (bits) meant.  I loved it -- I used that computer to calculate whether a cannonball, shot at a certain angle with a certain muzzle velocity, would escape the Earth's gravity (assuming that the Earth didn't have an atmosphere -- I didn't know how to factor that in).  Well, I was excited.  For me, that was like a train set on steroids.

After high school, I went to a hippie college, graduating in 3 years (yeah, I liked school so much that I worked at it year round).  That school didn't have any access to computers, so that part of my interest was dormant.  For what it's worth, although I dabbled with photography in high school, it was in college where I got interested in photography & art.

After undergraduate school, I got a job working with kids who were wards of the state (here in Portland, Oregon).  I started hanging out with a girlfriend, and when she decided to move to North Carolina to go to graduate school, I decided to go & live with her.  Once I arrived, I noticed that UNC had a terrific computer science program, so I walked in there, found the Director Of Admissions, and asked him to accept me in for the next semester.  He looked at my college transcript & laughed -- I had no undergraduate math or computer classes -- indeed, my hippie college didn't even have grades (not even pass/fail).  I understood his hesitancy, but I pointed out that he didn't know whether I couldn't manage the course work in grad school.  Fair enough -- we signed me up for two semesters of summer school, each semester containing an intermediate computer science class and an advanced mathematics class.  I aced them all.  And ten days before the Fall semester started, I was accepted in.

Computers had advanced a lot in those days -- we now had punch cards, so we were able to write larger programs & correct errors more easily.  Towards the end of my stay there, we even had computer terminals!  We were able to make computers do wondrous things back then.  My particular interest involved how humans & computers communicated with each other.

After graduating with a Masters, I got a job in a Fortune 50 company, working in the User Interface of their flagship proprietary mini-computer's operating system, with an emphasis in its user interfaces.  I had a good long career there -- I was there roughly 25 years.  During that time, I had many accomplishments, including the implementation of the first laser printer in the industry -- indeed, one of the first official document printed on a laser printer was my comments on one of my evaluations.

(Back To Top)

The Internet & Me:

I was in grad school in North Carolina in the mid-1970s.  Nobody has heard the term "nerds" way back then, but that's what we were.  Any computer that we could get our hands on became a playground for us, and we were nothing but industrious. 

One thing we found to amuse ourselves was a text-based game, called "Adventure" (which was much later released commercially as "Colossal Caves" and "Zork").  We loved it not only because of the clever puzzles it had; we also loved it because it was an early example of natural language processing.  You worked the game by telling it what to do in simple English, with commands like "go east", "put the blue key in the door", "attack troll with the axe" -- back then, it was a revelation to have a computer understand our language.  Up until then, we had to communicate with computers in their terms, using their language & their syntax.  Way back then, we had a glimpse of the future.

We enjoyed the game so much that we created something we called the "electronic bulletin board", where we would post hints & solutions to the various puzzles & traps in the game.  Eventually, we shared the bulletin board with neighboring universities.  We created discussion threads.  Eventually, one of our graduate students cleaned it up a bit, and that electronic bulletin board became the Usenet Newsgroups, which was the predecessor to all the various forums that you might see even today.  Hence, I like to say that I first was on the Internet back around 1977, which was long before it was called the Internet.

We also played pranks on each other.  We weren't malicious; we just wanted to have fun.  For example, if one of us wrote a compiler, he or she could be sure that his compiler would think that 2+2 would be 5.  Back then, it was all clever playfulness.

But eventually, we had one fellow student who decided that the easiest way to improve his grades was to sabotage our projects.  He would grab random cards out of our card decks or rearrange the cards.  During presentation, he would try to trip us up with difficult or impossible questions.  He was not popular, which was a problem for him since our curriculum involved breaking us into teams to work on projects together.  (In the "what goes around" karmic playback -- I graduated a year before he did & was hired by a great company, desired by many of us graduates; a year later, someone at the company called me to ask me whether I knew a handful of graduates from my school, and this guy was one of them -- I gave the recruiter my honest assessment.  That was the beginning of my "don't burn bridges" philosophy).

Anyway, we took precautions to protect our work.  In many cases, we had to invent the precautions we took.  And those precautions were the foundation for backup strategies, Internet Security, and Network Security.

Those were the good old days.

(Back To Top)


Where Humans Meet Computers:

So, in short, I have a long history with computers and with the Internet.  My focus has always been in the interface between users & computers.  I have come to think of it in this way:

Computer - Human Interface

Let me explain:  Computer & humans are radically different beasts.  Computers only know bits -- back in my teenaged days, I had to program computers bit by bit, and I had to interpret the results bit by bit.  In short, I had to do all the hard work to express myself in ways the computer could understand and to interpret the results the program provided.  The evolution of computer science in the past 50 years or so can be represented by the dividing line between what the computer can understand and what people can understand.  The evolutionary steps include the following:

  •    Machine language, like the bit-by-bit programming I did as a teenager,

  •    Assembly language, where the basic computer operations were substituted with meaningful short words, like "ADD", "STOR"

  •    Compilers, where mathematical formulae where used, making it easier for the humans but requiring computers to translate the formulae into assembly or machine language.  Typically, the syntax of compiler language is complex and pretty much unforgiving.

  •    Special document languages were created in the 1970s to allow the creation of good looking printed documents; typically, the formatting commands were embedded within the text of the document itself -- thus something like >underline< this >end underline< became this.

  •    WYSIWYG Editors (What You See Is What You Get) -- editors like Microsoft Word came along, where you would edit the document page on the computer monitor as it would appear when it was printed on paper; the formatting instructions were hidden from you, and you didn't need to know the formatting syntax.

  •    Written Natural language, where you simply wrote what the computer should do -- that's why we were so fascinated by the "Adventure" game -- it was very much ahead of its time.

  •    Speech recognition, where you spoke out loud to the computer.  That's available today, when you speak to your phone and tell it to find you the nearest Chinese restaurant.

In short, any interaction between a person & a computer is a compromise -- who does the most work in translating information from human language to machine language.  In my book, computers don't care, and computers work fast -- I tend to want computers to do as much of the work as possible.  In summary:

Kinds of User Interfaces (My view)
Generation Type Comment
1 Machine Language Bit by bit representation (represented with 0's & 1's).  The interface that is least understandable to people.
2 Assembly Language Like machine language with certain patters (commands) replaced by abbreviations.  Still difficult for people to understand.
3 Compilers & Text Processors Uses strict syntax, programming languages can express instructions that both machines & people can understand, but still it's difficult for people.
4 WYSIWYG Users work with documents that always appear the same way they will appear when printed.  Machine instructions are hidden from the user.
5 Natural Language Humans use the language they use all the time; natural language is full of ambiguity, which machines need to reconcile.
6 Spoken Language a.k.a. Voice Recognition.  We are beginning to see machines (like Apple's Siri) who can respond to spoken commands.
7 Thought Control Direct human-machine interfaces, where machines become an extension of the human's physical capabilities.
8 Artificial Intelligence At some point, we can eliminate the needs for specific human interactions altogether.  Machines can be given tasks, like "balance my checkbook", "drive me to work", or "clean the gutters", and it's taken care of.

Further, I should point out that computers are very literal.  If as much as a bit is out of place, a computer program won't work.  Computers can be precise -- people rarely can match computers in that way.  Hence, the further we can get away from the syntax of programming language, the better.

Because of my specialty (user interfaces), I can be very critical of the interface design of many computers & electronic products.  I want them to be intuitive, easy to learn, easy to use, consistent, and tailored to the task.

I often believe that many product developers make big mistakes with user interfaces.  For example:

  •    Often, the user interface was an afterthought, designed by the program developers,

  •    Often, the UI is designed the way the developers would like it, not the way its customers would like it,

  •    Often, the UI is created by multiple engineers, each of whom designed their own style, therefore creating inconsistencies.

(Back To Top)


Where FrontPage Fits In

FrontPage appealed to me because it was WYSIWYG (What You See Is What You Get).  It presented you a view of your page, and you would edit the page as it would appear in the browser.  You wanted something made bold, you highlighted the text & pressed the "bold" button.  In addition, FrontPage offered professionally designed themes and various components, like navigation buttons & hit counters.  A key part of any WYSIWYG application is that it "hid" the actual document implementation from the user -- you didn't care how the information on the page was stored as long as the page basically looked the same when viewed with a browser.  Because its user interface was very similar to Microsoft Word, it was intuitive, easy to learn, and easy to use.

FrontPage had inherent problems.  Many of its constructs were not web standard -- web servers that displayed FrontPage pages had to have FrontPage Extensions installed.  In the beginning, that wasn't much of a problem, but as the Internet grew in popularity, more browsers came on the scene, and with more browsers required more standard definitions of web pages.  As web sites became more commercial, they needed more functionality, including the ability to process input from site visitors (into product orders, for example).  As the web standard functionality proliferated, FrontPage (and its extensions) fell more & more behind.

Also, in theory, a FrontPage user shouldn't care about how FrontPage stored its page formatting information.  As solid as FrontPage's user interface was, it's ability to create web pages with correct syntax was only fair -- FrontPage created pages with errors, and some pages easily got corrupted.

Rather than keep up, Microsoft decided to obsolete FrontPage in 2004.  This is not the first time Microsoft abandoned an idea too early (in my opinion).  For example, Microsoft had a product called "Ultimate TV", which was a full featured DVR created in the late 90s, years before TiVo -- it even had the ability to do Picture In Picture and to record two programs while viewing a recorded third program.  But after a couple of years, Ultimate TV was gone, conceding the DVR marketplace to TiVo and to cable companies.

(Back To Top)


Alternatives To FrontPage:

There are tons of web page editors / web site managers out there.

By far, the industry leader is Adobe's Dreamweaver -- it basically can do anything.  When Microsoft obsoleted FrontPage, they released a new application to compete with Dreamweaver -- it was called Expressions Web (but when it didn't catch fire in the marketplace, Microsoft made it freeware and abandoned it, too).  These monolithic applications have inherent problems:

  •   They tend to be expensive (e.g. Dreamweaver is about $400 or $20 a month),
  •   They tend to be more like text processors, requiring the user to jump from the "WYSIWYG" view to a coding view.
  •    Users, in order to be proficient, needed to be conversant with CSS, PHP, Javascript, XML, and so forth,
  •    These applications didn't come with professionally designed forms,
  •    These applications didn't have functions hit counters, navigation menus -- you were welcome to implement your own
  •    Each of these applications would have a huge learning curve.

But to a user interface person like me, all these alternatives were a step back, like going from the Fourth Generation application back to a Third Generation application -- all these alternatives expected (and even required) users to do programming using programming languages; indeed sometimes a web designer needed to be knowledgeable in three or four programming languages.  To me, this was sad.

Microsoft claimed that they couldn't go forward with FrontPage when they brought out Expressions Web, but I don't believe that.  There's nothing stopping a well staffed team from creating a WYSIWYG web page editor that was capable of allowing the user to create web standard pages -- indeed, there's nothing stopping the creation of an application that would allow someone to be able to create a CSS stylesheet in a WYSIWYG environment.  But I guess that web designers enjoy the programming using old style computer languages.

There are other open source solutions (Joomla looked intriguing), but these still shared many of these same problems.  In particular, users still needed a steep learning curve to cobble together all the parts they wanted in their pages.

Given my computer science background, I have no doubt that I have the skills to become proficient in any of these web design applications.  But to me, all these alternatives were a step back from the WYSIWYG nature of FrontPage -- I didn't really want to know all these internal protocols & syntax.  (At my age, I figure that my brain capacity is finite, and I was afraid that if I learned CSS, for example, I might forget the name of the girl who first kissed me -- I didn't want to forget what's-her-name's name).

There were other, cheaper applications that were supposed to be good editors -- indeed, for a while I was interested in the Coffee Cup software, because the functionality was modularized -- you could purchase the modules you wanted.  But despite being touted as WYSIWYG, it really wasn't -- you still had to switch from WYSIWYG to code writing mode frequently.

Finally, there is another major problem -- none of these applications took into account that I wanted to transition a very large FrontPage site into a web standard site..  None of these alternatives were much help in that regard.

There are tons of simple build-your-own-site applications, like Wordpress, but how the heck do you convert a FrontPage site to Wordpress and how do you replace the features I wanted?

In the end, I chose Microsoft's Expression Web, based primarily on the following:

  •    It was free,
  •    It was at least conversant with FrontPage,
  •    There were a few whitepapers covering how to transition a FrontPage site to an Expressions Web site.

(a href="#Table_">Back To Top)



And there are plenty of downsides to the decision to use Expressions Web, including...

  •   It is no longer supported (except by the "community") -- see below,
  •   It was/is a step back from the WYSIWYG nature of FrontPage,
  •   It has a significant learning curve,
  •   It is confusing & inconsistent (which impacts its ability to be intuitive),
  •   I've found that much of the FrontPage to Expressions Web advice is just poor, incorrect, or not recommended.

I'm not a big fan of community support.  With community support, one logs onto a forum (like that old electronic bulletin board) and post a question.  Then people of unknown knowledge and poor articulation offer their opinions -- some might know how to fix things & others might not; when one suggests a solution, another might tell me that I don't want to do it that way.  I might ask how to do something (like put the same set of navigation buttons on the top of every page), I might be told "you don't want to do that". 

I'm still learning Expressions Web.  I'm sorry that Microsoft has abandoned it -- it has great potential.  If I owned it, I would move towards a more WYSIWYG implementation, with the option to edit CSS files in a visual way.  But there is no more development on the product.

I figure that I can use Expression Web to create a web standard web site, and if I have to move off of Expressions Web sometime in the future, it will be much easier to transition to another solution that supports web standards.  (At least, that's the theory).

Something to consider:  even with Expressions Web, I have to tweak each web page to remove its dependencies on the FrontPage extensions and to implement the new themes & navigation buttons.  It only takes a few minutes to tweak each page.  But here's the problem -- there are several hundred (if not thousands) of web pages on this site.  A few minutes times a thousand -- that's a lot of time & effort.

So, I'll muddle along.

(Back To Top)


What's Next:

To be honest, as of this writing, I've only tweaked the pages from 2008 and later -- that's just about half of the Oregon images.  I've still got a lot of work to "convert" the old FrontPage pages.

Note:  I am sure that there are tons of problems with this conversion.  To that end, I've created a new Bug Report page; I appreciate it if you would report any errors you find.

There are several projects I have in mind:

  •    Finish converting the whole site.
  •    I may be able to automate the donation / password process.
  •    I need to get back to photography -- that's the whole point, after all.

(Back To Top)