Dynamic Website Building




The next Generation

The Next Generation (TNG) is developed by Darrin Lythgoe and is designed as a server-side genealogy program. But it is not a program in the regular sense that you can install on your home computer (unless your home computer happens to be a server). TNG is designed to be used on a server (a special kind of computer) where it can also interact with a number of other programs in order for it to deliver its final product to the user - a web page.

There are basically two ways to deliver web pages to the world ‐ Static and Dynamic ‐ and this article looks at the latter. In Static, you write from scratch (requiring the need to know to some degree how to write HTML and CSS) or use a program that writes each web page for you, and then upload each single page. Dynamic web pages use templates that link to a script (Common Gateway Interface) and a database, and basically that’s it.

You can find many definitions of a web server on the Internet, but basically a server is any computer that handles requests for data, email, file transfers, and other network services from other computers (ie, clients) 1. You will also be able to find many examples of how a server works, but as this is not the exercise of this article, we will only mention what is required for the necessary functioning of TNG.

TNG comes delivered to you as a downloadable zip file (724Kb) for the full version (5.1.4), or just 382Kb for the upgrade from 5.1.x to 5.1.4. There are other combinations available if you have the most recent prior version (in this case - 5.1.3) the upgrade is just 139Kb. Because they are zip files, you will need another program to unzip them, and in addition, at least 2MB hard drive space. As always, save the files to a location that you can remember (ie Desktop).

When TNG is put onto your web server, it basically comes preconfigured so that it can be used "straight from the box". Darrin Lythgoe, the developer of TNG has put together a number of additional templates that you can download. By uploading these files, you can change the general appearance of the whole web site in a just a few pages. Of course you are not restricted to these templates, and you don't even have to use them if you don't want to, but the home page that comes with TNG really does have to be modified.

This page is extremely bland and is there merely to kick start the procedure. It even states down the bottom of the home page, "Please customize this page!" in bold black lettering. The developer has put together a number of different templates that can be used for you to use on your site, but you are not restricted to this. These templates have all the necessary files required to simply upload to your server and instantly change the entire site. Naturally, you will have to change the content of these pages, as some of them have introduction paragraphs and extra menus that you may or may not wish have present.

In a website that uses static web pages, these pages are pre-written in their entirety, and take up physical space on a server, and when a link is clicked, the server delivers the particular html page to your browser. Using a dynamic model, the page that is clicked is a template that is pre-read and a html page written on the fly, inserting information extracted from a database located on the same server and it is then this page that is delivered to your web browser.

I tackled changing the home page as instructed to see if it was possible to make it almost like my static pages that I had on a different server. The answer is yes, but there are a few changes beyond the norm that need to be done in order to achieve the final outcome. TNG uses CSS (Customised Style Sheets) to modify the layout and presentation, and I had to spend a significant amount of time swapping backwards and forwards changing between the html and css files while I familiarised myself to where everything was located. Once this was achieved, it was just a matter of making the necessary changes to the appropriate tags, or adding tags and then testing as I went. Once you've tested one page, make sure that you test with the whole site, as I found out there were conflicts with other tags that needed to be addressed.

Benefits
If you write your own web site, you first have to know how to code, and then write it, test it, make alterations, check spelling etc., and then when it is all correct, connect and upload. Mind you, when I say 'write your own web site', I am also collectively referring to people from those who write the raw html code to those who use development tools such as programs like Microsoft FrontPage or the Industry standard Dreamweaver. Regardless of how the site is written, depending on the layout and structure of the site, this can be very time consuming. Benefits of hacking a site like this is purely for love, and updates can be relatively quick for simple page additions.

Using a genealogical package to create your website is extremely quick depending on the size of the database. Other limitations usually limit the type of web design to a single design. This can be say an Ancestor, Descendant or Pedigree style just to name a few. Some genealogical packages have these and others while other programs will have something altogether different. That's not to say that you can't create different designs and then link the different parts together, but remember, if you make just one change, you have to remake the entire site (including any special changes) then re-upload the entire site. This can take a lot of time depending on the size of the database and connection to the Internet.

With a dynamic website, you can basically set and forget. Updates are simply a matter of re-uploading a GEDCOM into the database, and all the changes will be made when the appropriate page is called. A dynamic website can also be interactive by allowing users to make suggestions or submit changes that only become permanent upon your review. With this feature in place, you can add as much or as little information as you want, but it will certainly speed up your research.

A drawback with conventional web pages is that sometimes they are not printer friendly due to the design of the web page. TNG has a printer friendly link on any page so anyone can print the information knowing half of it won’t be cut off.

So What's Different Than...

your normal web creating program? First let's see what's in TNG, and then we'll come back to this question. From the basic home page (which you are going to modify, right) there are links to other pages such as surnames, statistics, photos, histories, documents, cemeteries, headstones, places, notes, dates and anniversaries, reports, sources, and what's new. A lot of these are self explanatory and need no explanation because you are already familiar with these things in your current genealogical program.

  • Surnames - nothing new here except for the display. Like most programs, TNG displays an overview. But where other programs simply show a list of alphabetical links like this:
    [no surname] | ( | A | B | C | D | E | F | G | H | I | J | K | L | M... etc, where each link is the first letter of the surname, TNG also quantifies first characters ordered by occurrance as well as the top 25 surnames in the database. Both the alphabetical and occurrance links will will navigate you to the corresponding page beginning with that letter, whereas the top 25 surnames links will actually display a dedicated page for that surname with a list of links to individuals with that surname. The final link in any of these pages takes you to a Personal Information Page of the Individual. All the necessary information is displayed, and you the ability to access Ancestral Charts, Descendant Chart (Standard and Register format) where in the Standard format you can contract and expanf nodes to help make navigation easier, Relationship Calculator, a Timeline, where you can add up to 4 different people from the database, a means to download a gedcom from a specific individual, and a link to create any suggestions to the author on a specific individual.
  • Statistics - not very impressed with this part of the website considering that the site sits beneath a php server, and leaves an open canvas for anyone who wants to develop a template to expand in this area. I personally have devised the results of what I would like to see as a statistical package, but have not had the time to create a program in this area, as I am sure it would be a best seller. Darrin, if you are interested, contact me.
  • Reports - this is a very powerful utility that needs a bit of experimenting with before you make the final output live. In most genealogical packages, you can include various reports where creating these is done visually by selecting options that you want in the output, but mostly defines the presentation of the report. TNG does a similar thing, except it gives you the ability to very selective in what is output as per the information, and even more, if you know how to create SQL statements, it allows you to write the statements themselves. Once you have created a report and tested it in Administrator mode, you can then make it "live" where anyone visiting your site will see a list of report names. Visitors can then select the reports they want to see, so when you are designing these reports, take into consideration what you would like to see if you were visiting your own site.
  • Photos, Histories, Cemeteries, Headstones - all very similar to Reports - except these are created from the Administrator section of TNG and group the various sections. With Photos, it will show a list of images, descriptions and links. You also only have to worry about uploading your images to the server as TNG automtically creates the thumbnails.

In some cases, a genealogical package may offer a means of producing a website, sometimes with just one format, in others, you may get a choice between 4-6 types of websites. These can range from ancestor to descendant style, as well as others that are available. Whichever way you look at it, there is always some form of template design that is called upon and a series of options that must be preset from which the website is then written. In most cases, you can virtually tell the program's web creation wizard who to start from and then create pages as a majority of the options have a default setting and these settings usually give pleasing results. If you want or need specific settings, then you will have to make changes. If you do make any changes, then you have to re-make the entire site.

Rebuilding a site can be a time consuming effort. Each time you make a change to the options, you have to rebuild the site - there is currently no alternative in this area. In general, this may not take long depending on the size of your database, and a small 1000 individual database can be rebuilt within a minute on a late model computer. You then have to check the changes made, and if it is still not correct, you need to redo the whole procedure until such a time you are satisfied with the results. Once you have rebuilt, you then have to upload - again - all the pages, and it is this that can be time consuming.

Why ALL pages you ask? If you make minor changes to the information to be included in the webpage final outcome, and if you are a website guru, you may get away with hacking the pages directly. But, when you start adding people to the database, relationship links come into play. New pages are created as a result of the addition of the new individual(s), and links to indecis become paramount when researchers are trying to find their ancestors. If you forget linking in just one Individual to an Index, could mean the difference to find that link to an individual that will aid your family history. Are you prepared to take that risk? Okay, maybe one addition may not be much of a problem to track the necessary changes, but if you are updating 10, 20, 50, 100 individuals or more, are you really prepared to make those changes to your website by hand; the answer simply is NO! It is this latter reason why when you make so many changes, it is easier to let the program wizard create the web pages then take your time uploading all the pages again using an FTP program.

So where is TNG different from other programs? I have already mentioned briefly in the second paragraph the major differences. Now for the similarities. There is an Administration section of the website that allows the author to make certain adjustments to options, similar to what I mentioned above, however, with the dynamic model, there are more benefits than the static model.

In an example using Reports, these reports are actually created by you the author. You enter Administration mode by supplying your username and password, and TNG allows you to make changes behind the scenes as well as creating Reports. The TNG actually has a demo version online where you can try the various different sections of the program including Administration mode. There may be a bit of a learning curve with creating these reports, but once you have mastered them, you will be adding plenty. The beauty of the Admin side in creating Reports, is that there is an option of whether you want the Report to be active. If it is, then the report will be seen by anyone navigating your website while you can still perfect working on other reports. Any Report that is not active will not be seen on the Public Homepage or webpages. This is one of the major benefits of using a server to the maximum where the same machine cand handle simple web requests while at the same time, you can be working in Admin mode testing other features.

I get the impression that anyone who starts using TNG is not exactly new to 
the world of web sites, and will have at least a general understanding on 
how a web page is constructed from beginning to end. If on the other hand 
TNG is your first attempt at web site building, I applaud you in your dec-
ision to take on a project that will be worthy in its end result. For those
seeking a little extra guidance, these tutorials will help guide you 
through.


When making modifications to any code, always make sure that you have the 
proper documentation to back up what you did where! I cannot stress this 
enough. When people make changes to a site, then later they don't know how 
they did it, can waste many hours trying to recreate the situation or 
environment to replicate the problem or original code.


I was able to modify the home page that I had already on my personal web 
site. This was not created by a program and any genealogical content was 
hand coded from separately generated programs. ie I would create a web page 
for an individual from a genealogical program, then apply that page to my
template. A long and winded process, but I had creative process over the 
story I was trying to tell.

Installing

Delivery of The Next Generation is via downloading a zip file that contains all the appropriate files for uploading to your server. There are a number of different files so you must be careful in your selection. If you are a new user for the first time, then download the full version. If you are updating, then all you will need is one of the update files that will update you from a previous version as I mentioned briefly already in the 4th paragraph above.

Save your selected file to a location on your computer. I recommend using a location that you can remember (eg. Desktop). For all intents and purposes, the Desktop is not the ideal solution as a download space for any file, and is used as a example only in this exercise.

Because the downloaded file is a zipped file, it will contain a number of files which must be uploaded to your server location. To do this, you will also require an FTP program.

Installation instructions come with the source files, and is all self explanatory. But because this is a lot different to installing a program where the developer has created a file to install the program on your computer, you may find some of the steps difficult. If you think this is not for you, help is at hand from both the developer and sometimes from the Host Server. Darrin recommends both ICDSoft and SimplyHosting. I have used ICDSoft for my brother's website, and this website itself is hosted on SimplyHosting. There is also a support forum and two mailing lists available. But don't let that scare you either; truth be told, I have a computer science degree, am fairly knowledgable when it comes to computers, but even I hit a snag. I followed the directions exactly yet required a helping hand. What went wrong? I don't know. I did nothing that was not in the instructions, and yet SimplyHosting did exactly the same thing, and the whole project came together. The fact that there are over 100+ user's who have their pages linked from Darrin's website to their's is testimonial in itself that many different people from all over the world can get this simple program up and running and proud to do so.

Price

So what would you expect to pay for a package like this? As of the current version, all new installs cost just US$29. With various different payment options available, and all the help under the sun to get your site up and running, this could be the most ideal investment you make for a website. But remember, this is only the cost of The Next Generation templates. You must also factor in other charges such as annual fees for web hosting and DNS fees.

Overview
I have set up a working example on this site where you can search for names, places, creates ancestor charts, descendant reports and more. On the developer site, Darrin Lythgoe has a greater list of links that you can look at, and can be accessed at lythgoes.net.

As the complete list of improvements in v5 over its predecessors amounts to 95 items, it might be in your vested interest to look at the recent changes when you get a spare moment. Darrin also does frequent updates to keep the program updated, so you may have to visit back frequently or . This is the fourteenth update of TNG 5, the most recent being 5.1.4 released (9 June 2006). As you update your version, if there are copies of the files config.php and genstyle.css included, then only upload these if you are reinstalling from scratch. Copying these files over your previous copies will undo any configuration and style customisations you may have made.

Because The Next Generation is just a series of templates and files that are uploaded to a web server, TNG is platform independent. This means your web pages can be viewed on any PC, MAC or other platform. The same is true for the browser, Firefox, Safari, Opera or IE. Better still, to modify them really only needs a text editor and an understanding on coding PHP and HTML.

Static web pages are good, but Dynamic Web Pages impress, and that is one thing that TNG does ‐ impress!