55 Steps on

How to develop a website
(that everybody will love)


Victor Miguel Ponce

© 2005, 2013



  1. The website should have:

    • appropriate content,
    • good navegability,
    • good communication arts, and
    • interesting style.

  2. The content should be accurate, of interest to a certain target audience, relevant, timely, and current.

  3. The website should be easy to navigate; it should be fast to load and show a clear path from link to link (portal to subportals to actual pages).

  4. The good communication arts refer to appropriate usage of the English language, good syntax and spelling.

  5. The style refers to the appropriate use of colors, backgrounds, patterns, shapes, and images.

  6. Navegability can be enhanced using an adaptation of the Dewey Decimal Classification System (DDCS), which numbers main categories (first level) from 100 to 900, and subcategories decimally thereon (Example: second level, 310 to 390; third level, 31001 to 31999).

  7. Use the Vlab's color palette (color.sdsu.edu) to choose colors for web design.

  8. The best operating system is Apple/Unix and the most popular webserver is Apache.

  9. The command-line entry (using a terminal window) is more reliable and effective than the graphical user interphase (clicking on windows).

  10. Configure important pages as subdomains; for instance, facets.sdsu.edu  is a subdomain of http://ponce.sdsu.edu.

  11. To keep the source code lean, it is better to develop the code manually, from scratch.

  12. The use of code generators, for instance Dreamweaver, load the code with extraneous and often unnecessary baggage, rendering the code slow to load and difficult to maintain.

  13. A time-tested approach is to develop a template, and then to replicate the template, varying the contents as appropriate; this assures a lean code, fast to load and easy to maintain.

  14. Avoid code that is not supported by the leading browsers.

  15. CSS cuts down repetition in the source code, but it can be complex and not work all the time as intended.

  16. For dynamic legacy applications, use CGI to control the flow of information and PERL to handle input/output.

  17. Use PHP for dynamic web-based applications such as online computing.

  18. Use MySQL when handling databases.

  19. Use jpg as the preferred image format.

  20. Use ImageMagick to create, edit, and compose bitmap images.

  21. Use SSH to connect to the server remotely from any place that has web connectivity.

  22. Work remotely on the server whenever possible; otherwise, work locally on the client and upload (to the server) every so often.

  23. Edit files for content with a suitable editor such as XEMACS.

  24. Use explicit dates on webpages to show last edit date, for reference and ease of maintenance.

  25. Use plenty of color and color design.

  26. Use tables in HTML to better control the position and display of contents.

  27. Use preferentially sans-serif fonts (such as Arial or Helvetica) to increase friendliness and visual appeal (see this font).

  28. Use serif fonts such as roman for historic and other background content.

  29. Do not size the font so small that it is hard to read.

  30. Design the content to be read preferentially with 12-point font size.

  31. Information posted on the web has five levels of security, varying from easy to difficult access:

    1. Clickable:  The link can be accessed by anybody simply by clicking on it; open, easy access.
    2. Nonclickable:  The link can be accessed by only those that know the URL; limited access.
    3. Cryptic:  The link has criptic components that would be hard, but not impossible, to type; limited access.
    4. Masked:  The link can be accessed by only those that know the mask (usually a trailing _) on the URL; very limited access.
    5. Secure:  The link is protected by server security; username and password set are required for access; privileged access.

  32. A healthy mix of security levels has about 80% links with open access.

  33. Develop a system of protected subdirectories to the public HTML directory, with patterned username/password pairs.

  34. Make your username/password pairs easy to remember by the average specific-interest user.

  35. Share your username/password pairs with specific-interest users (business associates, colleagues, family and friends).

  36. Develop a system to make your username/password file secure and with privileged access.

  37. Navegability is enhanced with About, New, Subdomains, Videos, Search/Index, and Contact Us links in the main portal.

  38. Explain the content and navegability of your website in an About link in the main portal.

  39. Inform frequent visitors of new links in a New link in the main portal.

  40. Subdomains are featured in Subdomains link in the main portal.

  41. Develop and show videos by self streaming or by posting to YouTube.

  42. Develop a search feature with PHP and access with Search/Index link in the main portal.

  43. Make it easy for people to contact you by having a Contact Us link in the main portal.

  44. Set counters on main portal and subdomains to monitor interest by users around the world.

  45. Specify date and time on main portal for reference.

  46. Specify Last Update on main portal to show frequency of website maintenance.

  47. Set Last Update date on each page that is changed (maintained) periodically (see date at the bottom right of this page).

  48. Set date in the following form: 130727 (2013, July, 27). This number always increases.

  49. Using PHP, develop random-access image display in the portals to keep up interest on the site.

  50. Scan bibliographic material of thematic interest and post on website.

  51. Set footer link on most (if not all) pages to return to the main portal; this increases the chances of being highly rated by the leading search engines.

  52. Reserve a main category for your curriculum vitae (Biodata).

  53. Reserve a main category to show your lighter side (hobbies, miscellaneous interests, and so on) (Personal).

  54. Maintain the main portal frequently and effectively; show website currency by using explicit dates.

  55. Provide institutional backup, and/or replicate your website to the cloud or to other servers.

130728 16:00