PixelPalaces, Technology page
This is an explanation of the various technologies (programs and file formats) we use on our web sites. If this sounds complicated and technical, remember this is our problem, not yours. You probably won't need or want all these things on your site. We're also open to using other things, if this lot doesn't suffice.This page is divided into the following sections:
For clarity, here are the definitions of terms we use a lot on this page.
- A commonly used code which represents letters, numbers, punctuation marks etc. as numbers. ASCII files are at least semi-intelligible to humans when read with a program like Notepad. Such programs can be used to edit ASCII files.
- Binary files are normally only intelligible to the editor which created them and programs which display them.
- This is a program which displays web sites, the best known are Internet Explorer and Netscape but there are others
- This is a program used to create and alter files
- These are normally controlled (more loosely) by some fairly democratic organization like the W3C. This means that they don't have some of the problems of proprietary things
- This is the combination of computer hardware and operating system (e.g. Windows 2000 on a Pentium III). The main point is that you often need different versions of a browser (or plug-in) to run on different platforms. Sometimes there isn't a version which will work and what claims to be the same version of the same program for different platforms has significant differences.
- This is a program which a browser needs to display certain file formats. Normally you can download plug-ins free.
- This means that the thing in question (usually a file format or editor) is owned and controlled by a company. This means that if the company goes belly up or does something stupid (like bringing out a plug-in that can't display files produced by older versions of the editor), you could have trouble with this file or program.
- Size (bigger or smaller) of files
- This refers to amount of space a file takes up in computer memory, not the amount of the screen it takes up. It's better to have smaller files.
These are types of computer file where the information it contains is laid out in a certain way. They normally have different extensions (the bit after the last "." in the name) which allows you (and computer programs) to recognize them.Data formats
These are used to hold data and aren't usually displayed without processing (and don't look good if they are)
Lay out formats
- .txt (text)
- These are a really old standard ASCII format.
- .xml (Extensible mark-up language)
- This is a whole family of formats which are supposed to be able to work together and have various common rules. These can get very complicated. The family includes XHTML, SVG and XSLT. XML files can be used as databases. Read more.
These are generally used to format text, pictures etc. in a web page.
- .doc (Microsoft word)
- This is really a word processing format. To view it on the internet you need a plug-in. If you don't have a viewer you can get one from Microsoft
- .html (often has the extension ".htm" - hyper-text mark-up language)
- Most the web pages you've seen were probably written in this. It's an ASCII format which evolved somewhat over the years to get more complicated and various browser makers started inventing their own extensions, making it hard to cater for all browsers. There was also the more esoteric complaint that it didn't differentiate between format and content. You can find out more here.
- XHTML (normally has the ".htm" extension - extensible HTML)
- This is similar to HTML but is compliant with the rules of XML. This page is written in XHTML. It should become increasingly easy to integrate XHTML with other members of the XML family to produce complex effects. You can find out more here.
- .svg and .svgz
- These are really graphics formats but they can be used for layout. See more here.
These are used to specify common formats for groups of pages.
- .css (Cascading style sheets)
- These are used to specify formatting such as fonts and colors for groups of web pages. This has certain advantages, like visually handicapped people being able to apply their own style sheets so they can read the page and being able to make global alterations to the style just by changing one file. CSS can be applied to HTML, XHTML and SVG (and probably some other things). It's also possible to include this sort of formatting information locally (in the file or even in a particular element), the more local style being applied if there's a conflict. You can find out more here.
- XSLT (Extensible stylesheet language transformations)
- Another member of the XML family. This one takes one or more XML files and transforms them using certain rules (specified in the file) to produce ASCII output, normally something that looks good when displayed (such as XHMTL or SVG). Find out more.
These appear as pictures when displayed.
- Bitmaps - these contain data which says what color each pixel should be. They are generally good for complicated pictures like photographs but they don't scale well and tend to use more memory than vector images. If an image isn't animated or transparent, we normally use the format which gives the smallest file size.
- These aren't compressed terribly well but they tend to come out smaller than other formats if the picture has few colors or has large areas the same color. They can also be animated (like the PixelPalaces logo) or have transparent bits (like the gargoil icons). Animated gifs have the advantage over other types of animation that they can be displayed by most browsers without a plug-in. See the gif gallery.
- .jpg (or .jpeg)
- These tend to use less memory than gifs, particularly if the picture is complicated. However they can't be animated or transparent. See the jpg gallery
- .png (ping)
- This was developed as a response to attempts to enforce patents for gif by producing a non-proprietary equivalent. It has better compression (so files tend to be smaller) than gifs and supports multiple levels of transparency but doesn't have animation. I've also found that in practice jpegs and gifs tend to produce smaller files. This format also has concerns about not being supported by older browsers
- Vector formats - these store images as a description. This tends to scale better than bitmaps and also should produce smaller files. These also tend to be better for diagrams rather than photographs. It's possible to display bitmaps in vector images. They can also be animated or interactive and SVG at least can be transparent.
- SWF (Shock wave)
- This is proprietary and binary. The shock wave plug-in is required to view these files. This format is heavily associated with the Macromedia Flash editor. As a forward looking company we prefer to use SVG and have yet to find a need for SWF.
- .svg (scalable vector graphics)
- This is the same as SVG but compressed so it takes less space on your server and downloads faster to your users.
- 3D - these describe objects in three dimensions so, when viewed on a normal 2D screen, you see them in perspective. Also it's normally possible to look at the thing from different positions. They can also be animated and/or interactive.
- .blend (Blender)
- These are created by Blender. They can be viewed on the internet using a plug-in which you can download.
- .wrl (VRML - virtual reality mark up language)
- This is probably the commonest 3D format. It can now be generated from X3D (an XML format) using XSLT. There are a number of plug-ins which can display it (and sometimes X3D) which are listed here.
- Movies - these obviously move but may also have sound. It should be remembered that motion can be achieved by some other formats which may be better.
- This can be read by (among others) Windows Media Player and Real Player. You can find a list of viewers for different platforms here.
These consists of, possibly very complicated, lists of instructions (some of them often conditional). These allow interactivity and may also be used to save server space by generating multiple pages from data files.
- .cgi .pl (common gateway interface - normally written in perl)
- Perl is an open source non-proprietary language which is stored as ASCII files and compiled at run time. This means that the same program will often work on different platforms. There are perl modules for generating HTML and SVG and probably other things. Normally these programs are server side, this means that they run on the server and the user doesn't need anything special to use them. This is necessary if the user is to consult databases or leave information on the server. The galleries of different types of images on this site actually all use the same Perl CGI script which is given different arguments to tell it which set of images it should display and which section icon (with appropriate link) to use. You can find out probably more than you want to know here.
- .exe (executables)
- These are binary files which can do pretty well anything. They tend to be compiled from programs like C++. Some hosts don't like you using them as they can be destructive and users are often wary of downloading them as they may well be viruses. They also tend to be platform dependent.
These are programs we use to produce and/or modify the files above (some of them can read other file types which aren't used on the internet).ASCII editors
These can read and write a wide range of ASCII files
- 1st Page
- This is the W3C's WYSIWYG editor/browser. It's not the most user friendly program (they've just brought out a new version I haven't tried yet) but it's very good for checking standards compliance. You can read about and download it from the W3C.
- Instant Saxon
- Generates ASCII files by applying XSLT templates to XML files. The type of file produced is determined by the XSLT file. Read more.
- This is a simple program which comes free with Windows. It's useful for opening mysterious files to try to work out what they are. It's been successfully used for things like modifying dfx files exported by Blender so they can be imported into Crossroads or Bryce. It's also useful for quick alterations to things like SVG and XHTML files.
- Xoology Coda
These are really for producing print documents. They're useful for reading word processor files.
- Claris works
- This is a fairly old works program rather than a real word processor. However it lives on a Macintosh so it may be able to read things our other software can't.
- Star Office
- This works on Linux. Again it might succeed where others fail.
- This is a commonly used word processor which can read a wide range of formats. It can export (and open) HTML but it tends to insert a lot of unnecessary code.
Most of these can export bitmaps but for some that's a sideline.
- Adobe Photoshop
- This is a famous program, primarily for editing bitmaps. Very good for that candid photo of you hang gliding with Elvis and Marilyn! It can read and export a wide range of formats. Read about it here.
- Adobe Image Ready
- This comes with Adobe Photoshop. It can create animated gifs, rollover effects, image maps etc.
- This is a very complicated 3D graphics program. It was created as an in-house program by a Dutch company which went bankrupt. It's now open source and non-proprietary. Unfortunately it has lousy documentation so we've only scratched the surface of what it can do. It can export bitmaps, movies and VRML. It can also create meshes which can be imported into Bryce. This seems to be the main Blender site now.
- Another very complicated 3D graphics program. This one's proprietary. One of it's strengths is being able to create rough looking things like rocks, mountains and clouds without the user having to design every nook and cranny. Unfortunately it's not good at designing custom meshes but it can import them from Blender. It can export bitmaps, movies and VRML. Find out more.
- Corel Draw
- This is a very popular vector graphics program. It can export bitmaps and SVG. Learn more.
- Corel Photopaint
- This comes with Corel Draw and quiet honestly we probably wouldn't have bothered otherwise. It may be able to do something which Adobe Photoshop has trouble with but we have yet to find out what.
- This doesn't actually draw or paint anything but it can interconvert a wide range of 3D formats. Learn more here.
- This is now rather an old 3D graphics program but it may still have its uses. Can export bitmaps and movies. It was made by Specular who's domain name is for sale (Dec 2002) so the best web site I could find about it is here.
- Jasc Webdraw
- This is a vector based graphics program. The twist is that it's native format is SVG. It's probably the best SVG editor to date. You can read more.
- This is for producing 3D objects. It's really only good for lumpy looking things, like Teddy bears.