SmallMap.com Title Image. SmallMap: Web directory and map presentation program for small communities.
   
SmallMap Manual

Chapter 2
What a Web Publisher Needs Before Getting Started
2.1 How SmallMap Works
2.2 What SmallMap Cannot Do
2.3 What You Need Before Getting Started
2.4 The Sample Town Template
2.5 What Can Be Customized
2.6 Web Hosting and Server Requirement
2.7 System Requirements
2.8 The Dynamic HTML Advantages
2.9 The Dynamic HTML Disadvantages (and Mitigating Factors)
 

Manual Chapters 2 to 7 are written for the Web Publishers.

2.1 How SmallMap Works

SmallMap is a simple database presentation program that runs from a regular-looking Web page. It is designed to present a small community's member directory and map on the Web, without asking the Web Publisher to go into sophisticated server scripting and database programming.

The simplicity helps reduce Web development and maintenance expenses. Yet SmallMap is flexible for continual upgrades.

To take advantage of SmallMap, a Web Publisher needs to download and customize the SmallMap template called "Sample Town". Then, after some customization, upload your modified SmallMap and supporting files (a text file for data and any images) to your Web site.

Visitors who open your SmallMap Web page will see a HTML page that lists your shops and map. As they try to find out more, they enter words to find, or click to sort the list or to navigate the map.

The interactive SmallMap HTML page responds by storing the visitor request into a short-live cookie. SmallMap then reloads itself, reads the cookie saved just a moment earlier, and redraws itself "on-the-fly" to give answer to the visitor. This "session" cookie is automatically deleted when the visitor quits the browser, and is not designed to collect any personally identifying information in the original version of SmallMap. End users, however, should check the privacy policy of the Web site they visit to find out what their customized cookies may collect. The Web Publisher may modify SmallMap to offer longer cookie expiry period.

For example, if the visitor has entered "restaurant" in the Find box, SmallMap saves that word into a cookie, then redraws itself to display only shops that belongs to the "restaurant" category, and displays any appropriate map grid.

All along the user is dealing with the same Web page, which refreshes itself to display only the specific information requested.

SmallMap is an innovative dynamic HTML program

In technical jargons, this interactivity in a Web page is achieved by writing the entire SmallMap program using dynamic HTML (DHTML). It means we use a Web page containing JavaScript to instruct the Web browser on how it should interact with your visitors. The DHTML components are Hyper Text Mark-up Language (HTML), JavaScript, Document Object Model (DOM), and Cascading Style Sheet (CSS). They are standards recommended by the World Wide Web Consortium and similar institutions, and are the common denominators for all major Web browsers.

SmallMap runs entirely within the Web browser, using text files. In other words, your visitors use only the Web browser to view your directory, without worrying about program installation or any plug-ins. There is no need for Active-X, Direct-X, JAVA, or Flash capability.

As for the Web Publisher, you only have to customize a text-based program (index.htm), a text-based data file (smallmap.js), and optionally prepare any images. Your Web server only has to serve up simple HTML page and images. You can use a minimal Web hosting package to deliver this, without worrying about ASP, PHP, MySQL, PERL, Front Page extensions, or other server script and database programs. You don't need to compile or zip the program. There is no executable or binary file to prepare.

See also section of our FAQ section: SmallMap as a Software Program

2.2 What SmallMap Cannot Do

SmallMap is a budget-conscious, light-weight, data presentation program, and there are many limitations.

While you may be able to modify SmallMap to add innovative features, by including JAVA applets, Active-X, XML, server-side scripting (PHP, PERL, CGI), and our SmallMap Software License Agreement does allow you to do these, these changes represent additional work and complications for many Web Publishers.

As it is, the sample SmallMap you download from http://smallmap.com will not be able to do the following. Among other limitations, SmallMap:

  • cannot put a little red circle around or a star on the exact location of a shop or point of interest on your map
  • cannot add caption or tip box identifying a particular name and address right on the map
  • cannot zoom into the map by more than 1 time. You can only zoom from the index map to a grid map.
  • cannot provide driving direction, highway, or route information
  • cannot give you locations of general points of interest, such as, post office, hospital, restaurants, movie theatres, ATMs, etc, unless the Web Publisher specifically include the data
  • cannot save files into your visitor's computer. This limitation is a desired security feature of JavaScript. Web visitors, however, are responsible to check if any Web site you visit has modified SmallMap to include binary, non-JavaScript, and executable programs that can pose security risk. As in any Web sites you visit, you visit them at your own risk.

2.3 The Sample Town Template

SmallMap.com makes it easy to adapt SmallMap by creating a template or sample set of HTML and image files you can modify or replace. This package of template files are based on a fictitious "Sample Town."

Through these sample files, we try to give you a clearer idea of what you need before starting to customize your own SmallMap. View our Download page for more details on what files are needed, and for what purposes.

2.4 What You Need Before Getting Started

Before you customize and publish SmallMap on your Web site, you first need to have a set of contents. You will require a small directory database, and optionally, you may need map images and customer/member images.

Required: Directory Database

Primarily, you need to have compiled a database of a few hundred to a couple of thousand of shops/clients/members/listings. Each listing (data record) may contain information (data fields) about IDs, names, category/grouping, telephones, faxes, emails, address, etc. The SmallMap template for "Sample Town" readily contains 26 data fields, but you can modify the program to add more. Our Download page provides a dynamic HTML tool (tabtool.htm) as well as a spreadsheet, either of which will help you convert these data into a JavaScript data file with a ".js" extension.

Optional: Map Images

Second and optionally, you may include a community map. An example is an image file of 1300x1000 pixels, divided into 13x10 grids. The map can be of any format (JPG, PNG, etc), but maps with fewer colors (eg, 256 colors or 8 bits), such as those in the PNG and GIF format, will be smaller and download faster for your users.

The full map can be of any size, but you need to consider that too large a map tends to include too many details. That is a problem when you need to shrink it to create an index map that can fit clearly into essentially half the screen of a 800x600px monitor common to many Web users.

This full map will need to be shrunken into a smaller index map. Further, the full-size map needs to be split into subdivision maps. This is so that a visitor clicking on a point of the index map, will get to zoom in once on a subdivided map with more details.

We will explain the procedure in Manual Chapter 6. Preparing Map Images and Customer Images. You'll need to do some planning to get the map images across so that the users can understand them intuitively.

We assume you have already prepared the "original, original" map drawn in a vector graphic programs such as Corel Draw. It is not a good idea to use scanned map, especially a large one, because the colors are complex, blurred, and the image files may be too heavy that it becomes a drag for users to download.

SmallMap can be run without maps, and works well as purely a directory service.

Optional: Customer/Member Images

Third and optionally, you may add images associated with each listing or shops. Sample Town template currently accommodates two images for each listing, but you can modify the program to add more. These can be scanned images of a shop or product, cropped to, say, 300x120px. Once you've input the image names under the proper data field, that shop's "name card" will automatically displayed these images.

2.5 What Can Be Customized

By customization we mean relatively simple changes you can make without modifying the main program code and scripts. We mean the customization of initialization and variable values.

There are three categories of customization: The main program file (index.htm), data file (smallmap.js), and any images (map and customer images).

The main program file is divided into sections. You can use a text editor to view and edit the main program file "index.htm" under the "/sampletown/" directory. Its "Section I.A." is clearly separated and is meant for customization. Here you can change default values, column headings, colors, map dimensions, etc. See Chapter 5. Customizing the Main Program File "index.htm" for more details.

What cannot be customized can still be changed by modifying the other sections of the program file. The SmallMap Software License Agreement grants you substantial freedom to modify the program provided you comply with other terms.

To modify SmallMap you will need to be familiar with dynamic HTML, especially JavaScript. Programmers familiar with C and JAVA should be able to become familiar with JavaScript quickly. See the end of our FAQ for links to Help and Manual Files, and to Web development resources.

2.6 Web Hosting and Server Requirement

As a dynamic HTML program, SmallMap is powered by the end user's Web browser. This is sometimes called "client-side" scripting.

There is little reliance on the Web Publisher's Web server, except for delivering plain text (ASCII) and image files. All the Web server needs to be able to do is to serve up "index.htm", "smallmap.js", "largemap.htm" (optional), and the map or customer images (also optional). The first three are text files, while the images are likely in the common formats of GIF or PNG.

As such, SmallMap does not require server-side include, CGI, PHP, MySQL, Front Page extension, PERL, and other server-side scripting or database capability.

The bandwidth requirement may not be large, depending on the number and size of your map and customer images. The three text files may total only 100-200KB, depending on your database. The same static files are used repeatedly, which may be cached by the end user's browser, and may mean faster viewing and less repeated download.

However, under some circumstances, and if you insert third-party ads, "index.htm" may be downloaded anew each time it is requested, eating up more bandwidth and slowing the download speed.

If all you run is SmallMap and other static Web pages, you may be able to start with one of the lower-cost Web Hosting options, and upgrade later for your other needs.

2.7 System Requirements

Browser Requirements

Because SmallMap runs on the Web browser, any recent Web browsers will likely conform to World Wide Web Consortium's recommended standards, and should be able to view SmallMap. These include Microsoft® Internet Explorer 5+, Netscape® 4.X, Netscape 7+, Firefox 1+, Opera 7.54+, etc.

We have only tested SmallMap on these browsers on the Windows operating systems. Our guess is SmallMap should work on the same browsers in other operating systems, because the SmallMap design has only used the more basic, rather than the fancier, elements of dynamic HTML.

The browsers, however, must be Javascript-enabled and have the cookie switched on. These are the default settings for most of the browsers and users today.

Web Publisher's Development Platform

The zipped template file available on our download page will probably only opens in the Windows 98 operating system and above.

For all other operating systems (including Linux, Unix, and Mac), Web Publishers should be able to right-click and directly download the files in the second column of our download page, under the section "Links To Individual Files". Right-click and then save each target link into your local computer's working folder.

2.8 The Dynamic HTML Advantages

Developing SmallMap in dynamic HTML (DHTML) offers several advantages. Web Publishers should keep these in mind when considering whether to add binary and other non-standard features in your modification of SmallMap.

The more basic elements of DHTML are highly standardized across browsers and operating system, offering you the broadest audience possible. Any visitor can immediately view and use your SmallMap, without the hassle of installing software or plug-ins. This makes SmallMap close to a truly cross-platform program.

DHTML code and script are transparent for all to scrutinize, and will help you build user trust.

SmallMap's transparency also means your community's users may be able to help you improve and customize your version of SmallMap, to be more efficient and suitable for your purposes.

See also section of our FAQ section: SmallMap as a Software Program

2.9 The Dynamic HTML Disadvantages (and Mitigating Factors)

SmallMap is written in dynamic HTML (DHTML). The transparent nature of DHTML has its drawbacks, mainly that it is difficult for the Web Publisher to protect data, privacy, and source code.

See also section of our FAQ section: SmallMap as a Software Program

Data risk

Your community database you publish through SmallMap becomes publicly available. Your rival can "scoop" up the data easily. But then all publicly accessible directories or yellow pages are at risk of being "mined" by determined programmers using automated scripts.

SmallMap does make it easier to capture your data because the entire database is contained in "smallmap.js", a single text file served to the visitor up front, and that is small and easy to download.

In the end, what matters is probably your relationship with your community members and the value you add. Someone else who copy the public slice of your data may not be able to do much with them without the relationship and value-added service you provide.

Privacy risk

The privacy of your members is not protected if you are careless about what you include in "smallmap.js".

For example, a shop or business client will likely welcome your publication of it telephone, fax numbers, and address. But you probably don't want to expose records about your last visit to your customers.

Warning: A private club should probably not include member home addresses and home phones in "smallmap.js," unless you have password-protected your site. Even then, any member may inadvertently cache and leak the entire text file even if you place it on a protected Website. Even though many columns of data (data fields) may not be displayed on the rendered Web page, they are still very easy to find because JavaScript files are text file. The best practice is to not place confidential information such as credit card and social security numbers on the Internet.

Source code risk

Your source code is transparent in this text-based Web application. If there is a substantial chunk of proprietary code and innovation, you would want to protect yourself by carefully writing copyright notices.

Recall that the SmallMap Software License Agreement does not allow you to re-license your customized SmallMap. You may opt to protect your code by stating with your copyright notice that you do not allow anyone including SmallMap.com to copy your code improvement. While SmallMap.com will honor your refusal to share your code improvement, there is no guarantee that others will.

But with the open source movement gaining momentum, perhaps transparent code may not be as risky as once thought. The transparent nature of dynamic HTML also means it is easier to check if your codes have been copied. Nevertheless, you publish your codes publicly at the risk that some unscrupulous programmers may copy and use them improperly.

Functional limitations

SmallMap does not involve binary programs and server-side scripting. Relying on dynamic HTML limits what SmallMap can do. For example it cannot provide map caption, zooming, and driving direction. These limitations are outlined in "2. What SmallMap Cannot Do".

Yet to provide these extras would mean you require massive budget to buy database and commercial maps that is not in our design. There are more economic ways for small communities to legitimately tap into existing map direction sites to supplement your own maps.

Potentially Slower Speed

The SmallMap program may be slow to run when the visitor does not have a broadband connection. The "index.htm" file is about 120kB in size (including full comments and any of your inserted text ads), plus "smallmap.js" database file that could be another 50-100kB in size.

Most commands will require a complete reload of "index.htm" which could take 20 to 60 seconds more than a server-side-scripted Web page of similar functionalities, when transmitted over a 56kb modem. This could discourage some of your visitors.

Google
Web SmallMap.com


Two Sample Websites

1. Sample Town - This is a fictitious town's directory and "map," a demonstration, and a template containing the latest SmallMap codes and scripts. To illustrate the capability to link to external map and direction Websites, we have input the addresses of actual public places under the Aquarium, Arboretum, and Museum categories. It uses single-grid, PNG-formatted, map images for zoomed-in view. Click for an alternative color scheme.

2. S2BJ - A real-life commercial area with a real map: Sungаi Duа and Bukit Jаmbul, Pеnаng, MaIаysiа. It makes use of 3-grid-by-3-grid GIF subdivided map images.

Promotions

Free: First 10 registrations

Recent News

Apr 30, 2005 (Press Release)

   
Top of Page            Copyright © 2005 SmallMap.com All Rights Reserved