http://www.falken.net/webfree/

Take control of your web surfing!



User's Guide

v1.1






WebFree

Copyright 1996-1997 by Steven Falkenburg. All Rights Reserved.

Warranty and License information is printed at the end of this User's Guide.

Special thanks to my beta testers, including Nancy Falkenburg, Steve Bollinger, Nitin Ganatra, Dave Clancy, Jim Luther, Alex Rosenberg, Brian Bechtel, Jeff Robbin, Mike Neil, Greg Robbins, and many more.

Apple and Macintosh are registered trademarks of Apple Computer, Inc. Netscape Navigator is a registered trademark of Netscape, Inc. Microsoft Internet Explorer is a registered trademark of Microsoft Corporation. All other names are registered trademarks of their respective companies.


Table of Contents


  1. Introduction
    What is WebFree?
    What can WebFree do for me?

  2. Installing WebFree
    System requirements
    How to install WebFree
    How to remove WebFree
    WebFree agreement dialog
    Other WebFree files

  3. Using WebFree
    Surfing with WebFree installed
    Blocking additional images using contextual menus
    Other neat stuff

  4. Configuring WebFree
    WebFree Control Panel
    Settings pane
    Statistics pane
    About/Registration pane

  5. WebFree Usage Scenarios
    WebFree for advertisement blocking
    Using WebFree for privacy
    Eliminating web page clutter
    Speeding up web surfing
    Blocking objectionable material

  6. Regular Expressions

  7. Troubleshooting
    Why doesn't WebFree block all of the ads?
    How does WebFree affect other applications?
    WebFree crashes my computer. What should I do?
    Does WebFree ever filter out too much web page content?
    How can I get a WebFree site license?
    My company can only pay via a purchase order. What can I do?
    When is the next version of XferIt going to be released?
    Didn't John Norstad write WebFree?

  8. System Requirements

  9. Other Stuff
    Registration information
    License agreement/warranty
    More fine print


1.Introduction


What is WebFree?

WebFree is a tool that works with existing web browsers to let you, the individual, take control over what you see when you visit web sites.

Were you annoyed when your favorite site added huge advertisements? Do you use web browsers in a educational setting where you don't want kids subjected to advertisements for beer, or worse? Are you surfing the web over a slow modem link, falling asleep before a page loads all of its flashy graphics? Are you concerned with your privacy when browsing the web? If so, WebFree might be for you.

WebFree allows you to be the editor for the web sites you visit. You can use it to screen out advertisements, unwanted images or links, and web cookies. The goal of WebFree is to make your web surfing more productive.

WebFree is a single Control Panel that works with your existing Internet connection and browser software. It works over direct Internet connections, as well as over modem and ISDN PPP links. Both MacTCP and Open Transport are supported, and WebFree is designed to work with all major Macintosh web browsers, including Netscape, Internet Explorer, Cyberdog, and the AOL web browser.

Finally, WebFree is ShareWare. If you like it, you can register by visiting http://www.falken.net/webfree/. I didn't cripple the unregistered version, and you don't need to enter any complicated serial numbers to register. Once you've paid, just check the "I've paid" checkbox, and you're registered. Thanks to Peter N. Lewis for this great "honor system" innovation.

What can WebFree do for me?

Plenty. Read on. Seriously, chapter 5 "Usage Scenarios" provides some typical target audiences and their usage patterns.


2.Installing WebFree


System Requirements

Before installing WebFree, make sure your system conforms to the minimum system requirements, as outlined in chapter 9.

Briefly, WebFree requires System 7.1 or later, either MacTCP or Open Transport, and a supported web browser, such as Netscape Navigator, Microsoft Internet Explorer, Cyberdog, or the AOL web browser.

How to Install WebFree

The standard WebFree distribution includes five files: the WebFree Control Panel, this user's guide, a short readme file, a link to my home page, and the Kagi registration application.




To install, simply drag the WebFree icon to your closed System Folder, or into your Control Panels folder. Next, reboot your computer. It is necessary to reboot before WebFree becomes active.

How to remove WebFree

Why would you ever want to do that? To remove WebFree, simply drag it out of your Control Panels folder and reboot. Alternatively, you may disable WebFree via the Extensions Manager in System 7.5 and later.
WebFree agreement dialog



After installing WebFree and rebooting, the above agreement dialog will be displayed. If you click "Accept", WebFree will install properly, and the dialog will not be displayed again.

If you click "Do Not Accept", WebFree will not be installed. Each time you reboot, the dialog will be displayed, until you either accept the agreement or remove WebFree from your system.

Other WebFree files

In addition to the WebFree Control Panel, a file named "WebFree Preferences" will be created in your preferences folder. This file tracks whether you have agreed to the WebFree usage terms, records your usage statistics, your configuration settings, and your registration status.

Removing this preferences file and rebooting will cause WebFree to restart in its default configuration, clearing any user-defined settings and registration information. After removing the file and rebooting, the agreement dialog described above will be displayed again.


3.Using WebFree


Surfing with WebFree installed

To use WebFree, just drop it on your System Folder, reboot, and launch your favorite web browser. Before WebFree, a web page may have looked like:


Without WebFree

After installing WebFree, pages will look more like this:


With WebFree

Blocking additional images using contextual menus

WebFree isn't perfect. It doesn't block all images that you might like it to. Luckily, it is fully configurable, which is described in detail in the next chapter, "Configuring WebFree". The simplest way to block additional images with WebFree is to click and hold the mouse over the image in your web browser. When you do so, you'll see a menu, similar to the one shown here:


If you scroll down to "Block this image with WebFree" and release, the URL for the image selected will be added to WebFree's blocking settings, and the web page will be reloaded without the image.

This feature isn't perfect. First, it's only supported with Netscape and Internet Explorer. In addition, it doesn't always work. Some web pages load a different image each time the page is refreshed (especially in the case of advertisements). If the "Block this image" menu item doesn't work, open the WebFree control panel, and edit the newly added blocker string as described in the next chapter (hit the Edit button on the Settings tab).

One last weird thing about this feature: with Netscape, the menu item says "Block this image", while with Internet Explorer, it says "Block this link". Image blocking keys the blocking request off the GIF image displayed on the page, while link blocking keys the request off of the URL you go to when the link is clicked. Both image and link blocking have pretty much the same effect- an image won't be displayed if you remove its corresponding attached link.

Other neat stuff

Besides image blocking, WebFree can block web cookies, stop blinking text, and stop cycling GIF animations.

Cookies

Web "cookies" basically provide a means for a web site to store little bits of information which can be retrieved whenever you return to a web site. You can think of them as "preferences" files for web sites. Some uses for cookies include tracking which pages on a web site you've visited (and how many times), storing a "shopping basket" for electronic commerce, or storing login and password information for web sites that you visit regularly.

Many people don't like the idea that web sites are building up information on them, even if that information is stored on your local computer. For people concerned about cookies, WebFree can eliminate this concern by blocking cookies. If cookie blocking is enabled, WebFree still allows sites to set cookies, it just doesn't ever let the local browser send the cookie back to the site.

Some sites require cookies to operate. For instance, some electronic newspapers and financial sites won't let you access the site without cookies. In these cases, you can uncheck the "block cookies" checkbox in the WebFree control panel when entering the site, and check it when leaving. This gives you more control than some other cookie utilities, which blast over all of your cookies whenever you reboot.

Blink Tag Blocking

Some HTML (web page) features have always been annoying. Tops on this list, in my opinion, are "blink tags". Although they're now somewhat out of vogue, you'll still find them hiding out on sites named things like "$$$ MAKE MONEY FAST $$$". When text on a web page is surrounded by blink tags, it blinks on and off, trying to attract your attention. It gives me a headache, which is why I added this feature. If you love blinking text, you can turn off WebFree's blink blocking from the control panel.

GIF Animation Blocking

GIF (Graphic Interchange Format) is used to encode many of the images you find on web sites. GIF has gone through several incarnations, one of which added the support for primitive animation. Netscape extended the support for this animation by specifying an extension to GIF that allows the animations to run continuously. Lots of sites use GIF animation to show things like spinning globes or digging "under construction" people. Probably the most prevalent GIF animation is the little Internet Explorer logo with the animating "e". I kind of liked things before all of this eye-catching animation (call me old-fashioned, I guess), so I added the "block GIF animation" feature of WebFree.

The GIF animation blocking feature of WebFree doesn't really block GIF animations. Instead, it just prevents them from repeating. So, if there's a graphic on a web page that assembles itself by flying in bit by bit, it will still do this when GIF animations are blocked. The difference is, once the graphic has finished loading, you won't have to watch it flying around the rest of the time you're looking at that web page. Advertisements are often the biggest users of animating GIFs, for obvious reasons- they want the ads to catch your eye. If you want, you can turn off ad blocking (image blocking) but leave GIF animation blocking enabled. This will let you look at the ads, but they won't spin and flip around over and over.

Anything Else?

If you have ideas for new WebFree features, let me know. Heck, maybe I'll do a version that puts advertisements into web pages that don't have any.


4.Configuring WebFree


WebFree Control Panel

WebFree is easy to configure. Just open the WebFree control panel from your Apple menu, change its settings, and close the window. No rebooting is necessary to change WebFree's configuration after installation.

The WebFree control panel is split into different sections, or panes. You switch between the panes by selecting the tabs at the bottom of the control panel window. The rest of this chapter describes the individual panes.

Settings pane



The Settings pane is shown above. The check boxes in this pane control the heart of WebFree's operations. They enable and disable blink tags, web cookies, GIF animations, and tag blocking respectively. Each of these features is described in the previous chapter "Using WebFree" in detail. The "Block the Following Tags" checkbox is the WebFree feature that blocks most web advertisements when enabled. For information on regular expression blocking, new in version 1.1, see section 6, Regular Expressions.

The scrolling list below "Block the Following Tags" contains every substring that WebFree matches against when you use WebFree to limit web page content. To add a new blocker substring, click the "Add..." button. To remove or edit a blocker substring, select the substring from the list and click "Remove" or "Edit...". There's some additional technical discussion about all of this in the "Troubleshooting" chapter of this guide. Statistics pane



This pane is pretty much self-explanatory. It contains counters that track how many times WebFree intervened under your direction. Maybe in a future version I'll add a sounds option so whenever a cookie is blocked, you hear something. By the way, I got the cool digits off a web site (they're public domain). Some people like to leave this pane open while surfing the web, watching the numbers climb from page to page.
About/Registration pane



This is, of course, my favorite pane. I'll let you guess why. Seriously, this pane contains the copyright information and contact e-mail address. It also lets you register by visiting the web page and by checking the "I Paid" box. The links in the control panel are made active via Internet Config. When clicked, the web browser or e-mail package configured in Internet Config is launched.


5.WebFree Usage Scenarios


WebFree for advertisement blocking

The most common usage for WebFree is for advertisement blocking. Many people don't want to look at advertisements while they surf the net. WebFree gives them the ability to filter out most ads, giving them a higher "signal to noise" ratio to their web browsing experience.

To use WebFree for advertisement blocking, you'll want to be sure and set the "Block the Following Tags" checkbox.

Using WebFree for privacy

For those who are concerned about privacy on the Internet, web cookies may be an issue. WebFree allows web surfers to block all cookie transmissions from your browser to web sites.

To enable the cookie blocking feature, follow the directions in chapter 4 and set the "Suppress Web Cookies" checkbox.

Since WebFree allows remote sites to set cookies, but not retrieve them, you can disable the "Suppress Web Cookies" option to selectively allow cookies while browsing certain sites, and then re-enable cookie blocking later. This makes WebFree's cookie blocking more useful than other cookie control solutions, which often erase the entire cookie file every time the computer is rebooted. Also, unlike the cookie settings in web browsers, WebFree won't throw up a dialog every time a cookie is transmitted.

Eliminating web page clutter

WebFree gives users the ability to limit a certain amount of web page clutter. Some users don't like a lot of blinking and flashing at them while reading web pages. For these users, WebFree has the ability to block flashing text and animating graphics.

These features are controlled via the "Block Blinking Text" and "Suppress Web Cookies" check boxes in the WebFree control panel.

Speeding up web surfing

Besides the obvious uses mentioned above, there are several other ways of using WebFree which many web aficionados will appreciate. The first of these is as a means of speeding web surfing.

Web browsers have the option of disabling image loading to speed up network access for slow links. Unfortunately, this is an all or nothing option, and web pages without any images often have a poor appearance.

WebFree gives you the option of blocking certain images you see all of the time, but don't much care to see again. You can tell WebFree to block a certain image in one of two ways. First, you can use the contextual menus described in chapter 3 by clicking and holding the mouse over the image and selecting "Block this with WebFree". The other way to block images is by adding them to the blocker list manually by clicking the "Add..." button in the WebFree control panel. WebFree will look for any occurrence of the strings in this list within HTML (hypertext markup language) tags between the characters "<" and ">" on web pages. Any time one of the strings in this list matches any text inside an HTML tag, the tag is removed from the web page.

As an example of using WebFree to speed web surfing, you could remove the graphic logo from a web search engine you often use, or you could remove a full-page image map from a page and instead use provided text links. Blocking images via WebFree has the advantage of not leaving the "image not loaded" icons all over your web page. When WebFree removes an image, no trace is left behind.

Blocking objectionable material

A second interesting usage of WebFree is as a means of blocking objectionable material from web sites. By adding items to the blocker list in the WebFree control panel, any HTML tag may be removed from web pages.

As an example, you might want to block images on web pages that contain the word "sex" in the image name. To do this, simply add this phrase to the blocker list via the control panel.

A second, slightly different, example is to use this feature to block certain links. For instance, an educational institution might want to block web surfers from sites in the ".com" domain. To do this, you could add ".com" to the blocker list in the control panel. This would remove any links on web pages that connect to commercial sites. This isn't quite perfect, since it doesn't actually block users from connecting to these sites by typing a URL manually.


6.Regular Expressions


WebFree 1.1 supports regular expressions in the blocker list. In WebFree, regular expressions are applied to each HTML tag in isolation. You can see several examples of regular expression blockers in the default WebFree blocker list. To specify a regular expression blocker, make the first letter in the blocker " " (option-R).

Full documentation on regular expressions isn't possible here. There are several good resources available including:

http://www.ebi.ac.uk/contribs/mlogs/regexp.html
http://www.webcom.com/glossary/regexp.shtml
The egrep manual page

A brief overview with a few examples follows.

Regular expressions are similar to standard search strings, with a few special characters thrown in. These characters allow searches to be more flexible, matching several or different combinations of characters.

In the below table, {ch} means any ordinary character. {chars} means multiple ordinary characters, unsorted. {str} means a literal string.

Special Characters

.

Matches any single character.

[{chars}]

Matches any one character specified between the brackets.

{ch}*

Matches any character in the ASCII range between the two chars.

^

Matches zero or more occurences of a single character
(can be combined with * to produce wildcard matches)

$

Anchors the start of the search expression to the start of the tag

{str}|{str}

Matches either one or the other literal strings

( )

Used for grouping, for example with | above.

\ {ch}

Used to turn a special character into a literal. For instance, to
match on the literal '. ', specify '\. '


Regular Expression Examples

Here are some examples. Note the option-R I've added to conform to the WebFree spec.

promo.*\.gif

Matches <IMG SRC="/promo s/stuff.gif ">

HEIGHT=(60|55)

Matches <IMG SRC="blah.gif" HEIGHT=60 >

WIDTH=[1-2][0-9]

Matches <IMG SRC="blah.gif" WIDTH=25 >


7.Troubleshooting


Why doesn't WebFree block all of the ads?

WebFree isn't perfect. It won't block all web page advertisements, and may block fewer over time between updates. WebFree works by parsing all incoming HTML pages, looking for certain keywords, as listed in the WebFree control panel. For instance, one of the keywords in the blocker list is "/ads/". This means that any time WebFree encounters a web page with an HTML tag containing the text "/ads/", the tag will be removed.

If WebFree doesn't block an ad on a page you're browsing, you can include this ad in the blocker list by following the directions in the "Configuring WebFree" chapter.

How does WebFree affect other applications?

WebFree works by hooking into the TCP/IP network stream on your computer. You may have already realized that this means all other network traffic on the machine goes under the nose of WebFree. Luckily, WebFree is careful about which data it should affect.

If you run across a problem where WebFree interacts poorly with another network application on the Mac, please let me know, and I'll look into the problem.

WebFree crashes my computer. What should I do?

Does WebFree ever filter out too much web page content?

Funny you should ask. One of the WebFree beta testers ran across a web site with several links containing the phrase "/ad/", but instead of referring to advertisements, "ad" instead stood for "Application Development". If you run into a problem like this, you may want to adjust your blocker list via the control panel. Fortunately, this is the only incorrect match I've discovered to this point. The blocker list has been developed to minimize such false hits.

How can I get a WebFree site license?

Site licenses are available. Visit http://www.falken.net/webfree/ for pricing and information. Registration is via Kagi software.

How can I pay for WebFree with a purchase order?

Many forms of payment, including purchase orders, checks, credit cards, and others are available via Kagi Software, who manages the registration for WebFree. Visit http://www.falken.net/webfree/ for additional information. When is the next version of XferIt going to be released?

In case anyone remembers, I also wrote XferIt, an FTP client for the Mac in 1991. Due to a variety of reasons, including not enough time to fully support the product (FTP clients can be quite complex), I decided to stop taking money for XferIt in 1993. The last version of 1.5b4 (that's right, 1.5 never did go final). XferIt still runs, although there's a compatibility problem with Open Transport (not my fault) that can cause crashes on quit.

Didn't John Norstad write WebFree?

No, that's NewsWatcher 2.0, silly. Here's the real story: I (Steve Falkenburg) wrote NewsWatcher 1.0 while an intern at Apple's Advanced Technology Group (ATG) in 1990. At that time, we determined that it was way too cool for Apple to do anything with, so my manager and co-workers (Tim Oren, Brian Bechtel, and Harry Chesley) decided that the best thing to do would be to write a "develop" article about NewsWatcher, thus putting the source code up for free use by anyone. In case you're interested, pick up a copy of "develop" magazine, Issue 6 from May 1991.

As it turned out, John Norstad (from Northwestern University) took up the NewsWatcher torch, producing way cool new versions of NewsWatcher, and keeping the source code free for everyone. In an ironic turn of events, years later, Apple decided NewsWatcher was cool after all, and ATG gave John a PowerMac, and licensed the updated NewsWatcher to ship on every new Mac as part of Apple Internet Connection Kit.

For those keeping score at home, I (Steve) also wrote the XferIt FTP client and the ZapTCP development tool for MacTCP developers, while John also wrote Disinfectant, which I'm of course running on all of my Macs. Somewhere in my past, there are vicious rumors that I wrote a bunch of PowerTalk/AOCE sample code, and told about 5 kabillion developers how cool Copland was going to be at a major session during the 1996 WWDC. At least I was right about the Internet catching on. I guess one out of three isn't all bad.


8.System Requirements


Hardware Requirements

WebFree supports any Macintosh CPU which has an Internet connection via either serial, Ethernet, or other means. WebFree has been tested most extensively on 68040 machines and later. Non-PowerPC configurations may have some performance problems with excessive numbers of regular expression blockers. Reducing the number of blockers will improve performance.

Software Requirements

WebFree requires System 7.1 or later, and MacTCP 2.0.6 or Open Transport 1.1 or later. Most testing has been done on System 7.6 and Mac OS 8 with both Open Transport and MacTCP configurations. OT/PPP and FreePPP have been tested for compatibility.

Web Browser Requirements

WebFree has been designed to work best with Microsoft Internet Explorer 3.0 or later and Netscape Navigator/Communicator 3.0 or later. WebFree also works with Cyberdog 1.2 and 2.0, as well as Explorer 2.1, and Netscape 2.0, and with the AOL web browser in AOL 3.0. Testing has not been done with versions earlier than this, or with other browsers. WebFree is not compatible with MacWeb.

Memory Requirements

WebFree should occupy no more than 200k of System Heap RAM on your computer.

Disk Requirements

WebFree occupies under 200k of disk space.


9.Other Stuff


Registration information

You may use WebFree at no charge for 30 days. After this point, you are required to register by sending the author US$20. Visit http://www.falken.net/webfree/ for details.

By registering, you'll be added to the WebFree e-mail list. You'll receive notification of future upgrades and other information related to WebFree. Make sure you include an e-mail address when registering. Registered users will receive maintenance releases (1.x) at no charge.

Site licenses are available. Information is available at http://www.falken.net/webfree/ .

WebFree cannot be redistributed in any form without prior consent of the author.

If you are interested in a custom application of WebFree, or similar, technologies, contact the author for information on consulting or customization of Internet tools.

License agreement / warranty

Please read this warranty carefully before using WebFree. By using WebFree, you are agreeing to be bound by the terms of this warranty license. If you do not agree to the terms of this warranty license, promptly remove WebFree from your computer.

WebFree is supplied as is. Steven Falkenburg hereby disclaims all warranties relating to this software, whether express or implied, including without limitation any implied warranties of merchantability, satisfactory quality, and fitness for a particular purpose. Steven Falkenburg does not warrant that the functions contained in WebFree will meet your requirements, or that the operation of WebFree will be uninterrupted or error-free, or that defects in WebFree will be corrected. Furthermore, Steven Falkenburg does not warrant or make any representations regarding the use or the results of the use of WebFree or related documentation in terms of their correctness, accuracy, reliability, or otherwise. Under no circumstances, including negligence, shall Steven Falkenburg be liable for any special, incidental, consequential, indirect, or similar damages due to loss of data or any other reason, or for any claim by any other party, even if Steven Falkenburg, or an agent of Steven Falkenburg has been advised of the possibility of such damages. In no event shall Steven Falkenburg's liability for any damages ever exceed the price paid for the license to use WebFree, regardless of the form of the claim. The person using WebFree bears all risk as to the quality and performance of WebFree. No dolphins were harmed in the production of WebFree. I can't believe you read this far.

By registering or using WebFree, you agree that any visual differences in web pages caused by WebFree are fully the responsibility of you, the customer, and not of WebFree, or its author. Using WebFree to block advertisements added by no-fee ISPs is in violation of the WebFree license.

WebFree registration entitles you to use the version you registered (and any future 1.x releases) for an unlimited amount of time. The author will make every effort to support registered users for a period of two years after registration.

U.S. Government Restricted Rights


WebFree is provided with RESTRICTED RIGHTS. Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013. Contractor/manufacturer is Steven Falkenburg, P.O. Box 937,Los Altos,CA 94023.

More fine print

Regular Expression Library copyright notice

Copyright 1992, 1993, 1994 Henry Spencer. All rights reserved.
This software is not subject to any license of the American Telephone
and Telegraph Company or of the Regents of the University of California.

Permission is granted to anyone to use this software for any purpose on
any computer system, and to alter it and redistribute it, subject
to the following restrictions:

1. The author is not responsible for the consequences of use of this
software, no matter how awful, even if they arise from flaws in it.

2. The origin of this software must not be misrepresented, either by
explicit claim or by omission. Since few users ever read sources,
credits must appear in the documentation.

3. Altered versions must be plainly marked as such, and must not be
misrepresented as being the original software. Since few users
ever read sources, credits must appear in the documentation.

4. This notice may not be removed or altered.