Website Development
Documentation Techniques
The important function of documentation is to provide a “timely” source of
information, so that
- It is a log of the progress (success/failures) that you can refer to
- Your group members are kept up to date with the progress
- Provide a reference to future projects.
Hence a documentation tool should:
- Be easy to learn and use.
- Available
- Easily accessible (portable)
Traditional documentation techniques use paper notebooks or journals, however, in this age of sharing information, the portability is at issue.
A good and popular solution to this problem is to use text and create Internet website that can be hosted on the World-Wide-Web.
Text Editors
The choice of using text instead of a proprietary word processor is that text is universal and can be used/edited/hosted/shared on multiple platforms without conversion or loss-of-data.
The characteristics of a good text editor should include
- Produces pure text files (avoids conversion)
- Available on multiple platforms (avoids re-learning, available everywhere)
- Simple to use (avoids a learning curve)
- Other features should include
- WSIWYG - What-You-See-Is-What-You-Get (for easy editing)
- Advanced editing features (increases productivity)
- Unlimited edit size, multiple files, split screens
- Unlimited undo/redo edits
- Find/replace (with regex)
- Auto-indentation, completion
- Syntax highlighting to show tags/keywords, development aids
- Auto correct, spell-check
- Macros, quick editing
Here are some recommendations:
- Sublime Text a popular choice among programmers, not free but has unlimited use time.
- Atom an open-source github project, fast becoming very popular for new users, giving the same functionality as SublimeText.
- Brackets an editor tailored for HTML and web production.
- Visual Studio Code a free Microsoft product which is also used for developing Source code.
Website development
A website consists of webpages containing information of what you wish to display or to keep as reference. The advantages of documenting using a website are
- Data entry is in text with the added ability of sharing images and media.
- Available on multiple platforms
- Can be made private of public
- Instantly sharable, document as you go
- Possibility of hosting on a local PC, local site or remote site
For this module, you will create a website that
- keeps a record of what you have done in this module.
- shows your progress (success and failures)
- shows readers how to replicate your results (should he/she wish to)
- acts a reference (or how-to) for future projects.
What is important is that we should pay more attention to the content than how “beautiful”, “interactive” or “aesthetic” your site looks. We are not creating a website that markets a product/information but to share knowledge.
Here are the 4 ways in which you can develop your site together. You are free to choose any method to develop your website, however, you must remember that you need to update your site periodically (as and when) with new information
- Pure HTML & CSS
You start with HTML and write your content, stylize it with CSS to give a consistent look and feel.
- Advantages
- Simple to start, can be very basic.
- Design is completely yours to play around with, you have full control
- Disadvantages
- Gets complicated when more pages are added
- Difficult to maintain consistency
- Difficult to get a consistent design look and feel
- How-to
- Make a simple HTML file with links to your pages.
- Use a CSS file to format the layout
- Example of basic website
- Borrow A Design/Template That Works
You start with a design that works (e.g. Jake Wright: Learn CSS in 12 minutes). Modify and add whatever you want in HTML (content) and tweak its looks using CSS (Layout).
- Advantages
- Design is professionally looking, just add content.
- Don’t need to do much in terms of modification
- Disadvantages
- Need to understand how site is designed to add content.
- May need to make changes to maintain consistency
- Need knowledge of HTML and CSS
- How-to
- Search the Internet for a HTML/CSS template site that you like
- Copy the template to index.html as the starting page
- Populate and expand your website.
- How to use Jake Wright’s Template
-
Use Markdown (Pure Markdown)
Markdown is a light-weight Mark-Up editing language that is good for displaying information. It is ideal for making fast notes, while still maintaining the document very “text-like”. Most documentation sites offer a markdown hosting option.
Markdown text is first processed by a program (usually python/javascript) into HTML. The HTML is then hosted by the webserver. This process is usually transparent to the user.
- Advantages
- Very text-like, easy to make notes and add information
- Can supplement/substitute with HTML if you need more control
- github allows direct editing on the server.
- Disadvantages
- Need a hosting service that serves markdown (alternative: MkDocs)
- Need to learn Markdown
- Website looks very “bare”, “no-frills”, even with themes.
- How-to
- This site is an example of a pure Markdown site.
- Surf to the github site for this repository https://github.com/rdorville/EP1000
- Use the github code tab to examine the contents
- Create a new repo on your github account and enable github pages.
- Start with the file “index.md” as the root of your website.
-
Jekyll themed site (Using Markdown)
Jekyll is a static site generator which converts Markdown together with other instructions to HTML which is then hosted by the server.
Mr Chew has kindly provided a template https://skeatz.github.io/web-pk/ which allows you to create a very professional-like site for your project.
- Advantages
- Information is added using Markdown or HTML, easy to edit.
- Processing by Jekyll is transparent to the user.
- Very professional can change themes.
- Disadvantages
- Need to be hosted on github or a site which can execute Jekyll.
- Need to understand how each part of the site is created, like solving a puzzle
- How-to
- I would suggest that you complete the git section (next week) before you attempt this as you need to upload a number of folders and files to your repository (unless you want to do it one at a time)
- Download or clone the repository at (https://github.com/skeatz/web-pk) to a new folder.
- How-to use web-pk for your website
Assignments
There are 2 assignments for this topic. Both assignments will be graded, however, you will be given appropriate time to complete them.
- Assignment 4A HTML, CSS
This assignment checks that you have an understanding of HTML and CSS. You are required to
- Watch and replicate Jake Wright’s website (Learn CSS in 12 minutes)
- Modify the website based on the requirements
- Save the website as a ZIP file for submission
- Assignment 4B Github Website
Thsi assignment checks that you have created your own website prescence on the Internet. You are required to
- Create a Github account
- Convert a project site EP1000 to Github Webpages
- Use git/Github Desktop to manage the site.
Home
October 2020