practical computing


a high level, needs a good low level foundation

I've written down some hints for a solid foundation of often necessary computer-knowledge. Maybe you should read them first.

Think non-traditional:

Away with the standard:"let's use a computer, so sit behind a keyboard next to a grey case". First ask yourself if a computer is a good solution, often just pen&paper is better. Combinations are also very powerful to limit your RSI-developing time: pen&paper plus scanner and maybe OCR, tiny voice-recorder and maybe -recognition, phone to talk to your computer (voiceXML), or use any of the various other communications modes: cable, WAP, IR, GPRS, Bluetooth, UMTS. Some other nice solutions especially for graphical(ly oriented) applications: A stand-alone digitizing whiteboard, tablet PCs, portable touchscreens.

Dream and learn:

Now for designing the implementation: dream, cause anything is possible anyway, up to augmented reality. Don't stick to traditional technologies. Dare to try something new and learn.

Now you're finally released from your restricting knowledge and have the perfect ideas: wake up and use your knowledge to figure out what part of the dream you are going to realize, and how. Use powerful combinations, every language has it advantages. Self-educate by reading the internet

Use open formats:

(try to avoid proprietary!)

Because:
W3c (World Wide Web Consortium): the 'reference' for lots of types among which are:
(X)HTML (eXtensible) HyperText Markup Language webpages
CSS Cascading StyleSheets powerful styling method to use on XML, (X)HTML
XML eXtensible Markup Language structural data
XSL eXtensible Stylesheet Language transformation and styling
SVG Scalable Vector Graphics 2D,filters
VoiceXML obvious voice interfacing
SMIL Synchronized Multimedia Integration Language ("smile") animation
MathML Mathematical Markup Language displaying formulas
XForms somekind of general form language to decouple data, logic and presentation

WEBformats make you less dependent on being at your own PC, plus are easiers to combine with anything else on the (which is a whole lot of useful stuff), check these: CSS Zen Garden W3 schools Handleiding HTML bookmarklets W3 validators Mozilla Firefox Opera browser output buffering with PHP letting IE do CSS properly Typography CSS editor setting passwords on websites: htaccess Character Encoding MOZilla In-Line Editor PHP serverside script MySQL database Open ClipArt Library SVG website on web development

Some formats hosted elsewhere:
PDF Portable Document Format great 4 WYSIWYG-printing
X3D eXtensible 3D successor of VRML
(Virtual Reality Markup Language)
WML Wireless Markup Language WAP pages
CML Chemical Markup Language molecules
XMI XML Metadata Interchange UML (Unified Modeling Language)
+ MOF (Meta Objects Facility)
Unicode Universal code every character in the world
can be used in XML, (X)HTML, etc.
MusicXML obvious musical notes

Don't start from scratch:

Open Source:
Open source software can be a great help; SourceForge (part of the Open Source Developers Network) claims to be the biggest repository of it (read the licenses)
Using GeoCrawler and Google will find you even more.

some popular packages to start off from:
Linux is a popular Operating System, because it's good and free. Mac OS X is super user-friendly, both GUI and command-line.
Java makes programming "Write Once, Run Anywhere".
Open Office: finally gives people a serious alternative to MS Office, enabling them to choose an operating system other than MS Windows.
Net Beans and Eclipse are for developers who like a big IDE.

Get (and give) help:

There are loads of people out there that like to help for whatever reasons.
You can reach them by opensource-networks (e.g. SourceForge), newsgroups(read Netiquette first) or websites (use google to find these)