Quotes
- "[A]nd then it occurred to me that a computer is a stupid machine with the ability to do incredibly smart things, while computer programmers are smart people with the ability to do incredibly stupid things. They are, in short, a perfect match." - Bill Bryson
- "Beta. Software undergoes beta testing shortly before it's released. Beta is Latin for 'still doesn't work'." - Author Unknown
- "Version 1 of any software is full of bugs. Version 2 fixes all the bugs and is great. Version 3 adds all the things users ask for, but hides all the great stuff in Version 2." - Fred Blechman
- "Writing the first 90 percent of a computer program takes 90 percent of the time. The remaining ten percent also takes 90 percent of the time and the final touches also take 90 percent of the time." - N.J. Rubenking
- "Good code is its own best documentation. As you're about to add a comment, ask yourself, 'How can I improve the code so that this comment isn't needed?'" - Steve McConnell
|
Programmers typically use tools such as editors to create the source code, compilers or translators to
convert the source code to executable binary code, link loaders to connect this to various libraries
called from within the program. In addition programmers typically use tools such as version
control systems, debuggers, makefiles, reformatting tools, preprocessors, profilers, Integrated Development
Environments, Graphical User Interfaces builders and Unified Modelling Language tools.
Programmers may need to know the ASCII table, use regular expressions,
master programming editors and development envionments, write prototypes using scripting languages or shells
and work within a project and with other programmers in a team. - Neville Richter
Here are two simple demos of using jquery within web pages fisheye.html and carousel.html the
source html code can be viewed within the web browser and the javascript files are located within
this folder in fisheye_files and carousel_files
- see examples at http://sorgalla.com/jcarousel/ and see
examples at http://malsup.com/jquery/.
Here is a simple alert pop up
<a href onMouseOver="alert('hello world'); return true;">click here</a>
click here .
Programming Languages
Programming for Kids
- LittleWizard - development environment for children to learn programming (Windows, Linux)
http://littlewizard.sourceforge.net (GPL)
- DrPython - highly configurable, simple with editing enviornment, designed for schools (Windows, MacOSX, Linux)
http://drpython.sourceforge.net (GPL)
- ucblogo - Berkley Logo - graphics language for kids (Windows, MacOSX, Linux)
http://www.cs.berkeley.edu/~bh/logo.html (free)
- Ruby - Try Ruby! in your browser (platform independent)
http://tryruby.hobix.com (Free)
- Squeak - multimedia environment for kids - Object oriented programming environment based on smalltalk (Windows, MacOSX, Linux)
http://www.squeak.org (GPL)
- Scratch - Programming for Kids from MIT - easy to create interactive stories and games (Windows, MacOSX)
http://scratch.mit.edu/ (Creative Commons License)
- Kturtle - learn to program by moving a turtle - Logo programming for KDE (Linux)
http://edu.kde.org/kturtle (GPL)
Basic Programming
- Basic-256
- easy to use version of BASIC designed to teach young children the
basics of computer programming (Windows, Linux)
http://kidbasic.sourceforge.net/
(GPL)
- FreeBasic - compatible with MS-Quick
Basic (Windows, Linux)
http://www.freebasic.net/
(GPL)
- wxBasic - Basic with openGL support
(Windows, Linux)
http://wxbasic.sourceforge.net/
(LGPL)
- VisualBasic.NET - support in Mono (Windows, Linux)
http://www.mono-project.com/VisualBasic.NET_support (GPL)
- Visual Basic 2005 - Microsoft Express Edition (Windows)
http://msdn2.microsoft.com/en-us/express/aa718406.aspx (Free)
Programming Languages
- Java Runtime Environment - JRE developed by Sun Microsystems (platform independent)
http://java.sun.com/j2se/desktopjava/jre/ or http://java.sun.com/javase/downloads/index_jdk5.jsp (Free, Sun License)
- PHP - web script language and part of web tools such as WAMP, XAMPP, MAMP and LAMP (Windows, MacOSX, Linux)
http://www.php.net/ (GPL)
- PHP Class Scripts - find useful PHP components (platform indepenedent)
http://www.phpclasses.org/ (Free)
- Python - object oriented programming/scripting language comes with IDLE (Windows, MacOSX, Linux)
http://www.python.org/ (GPL)
- PyGame - Python modules for writing games (platform indepenedent)
http://www.pygame.org/ (GPL)
- Ruby - object oriented scripting language designed to surpass Perl (platform independent)
http://www.rubyonrails.org/ (GPL)
- RubyInstaller - one-click ruby installer for Windows (Windows)
http://rubyinstaller.rubyforge.org/wiki/wiki.pl (Ruby License)
- Instant Rails - Ruby on Rails combines Apache, MySQL, ruby and rails (Windows)
http://rubyforge.org/projects/instantrails/ (GPL)
- Awk - GNU AWK data-reformatting jobs
with just a few lines of code (Windows, MacOSX, Linux)
http://www.gnu.org/software/gawk/
(GPL)
- C/C++ - GCC, the GNU Compiler Collection (Windows, MacOSX, Linux)
http://gcc.gnu.org/ (GPL)
- CLIPS - A Tool for Building Expert Systems (Windows, MacOSX, Linux)
http://clipsrules.sourceforge.net/ (CLIPS License Free Public Domain)
- Clisp - Common Lisp Interpreter (Windows, MacOSX, Linux)
http://clisp.cons.org/ (GPL)
- Cobol - business transaction langauge still used by industry (Windows, MacOSX, Linux)
http://www.opencobol.org/ (GPL)
- Forth - GNU implementation of Forth (Windows, MacOSX, Linux)
http://www.complang.tuwien.ac.at/forth/gforth/ (GPL)
- Fortran - GNU implementation of Fortran (Windows, MacOSX, Linux)
http://gcc.gnu.org/wiki/GFortranBinaries (GPL)
- FreePascal - Pascal compiler (Windows, MacOSX, Linux)
http://www.freepascal.org/ (GPL)
- jQuery - Fast and concise Javascript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development (Windows, MacOSX, Linux)
http://www.jquery.com (MIT and GPL) - see demos
- Mono - C# compiler to run .NET software
(Windows, MacOSX, Linux)
http://www.mono-project.com
(Free)
- PERL - programming language (Windows, MacOSX, Linux)
http://www.perl.org/ (GPL)
- CPAN - Comprehensive Perl Archive Network - or why write scripts when someone else already has (Windows, MacOSX, Linux)
http://search.cpan.org/ (GPL)
- Prolog - GNU free Prolog compiler with constraint solving over finite domains (Windows, MacOSX, Linux)
http://www.gprolog.org/ (GPL)
- Plt - Dr Scheme lisp style language (Windows, MacOSX, Linux)
http://www.plt-scheme.org/software/drscheme/ (GPL)
- Bash - Shell script - command language interpreter for UNIX systems (MacOSX, Linux)
http://www.gnu.org/software/bash/ (GPL)
- Tcl/Tk - Tool command language and Tk toolskit (MacOSX, Linux)
http://tcl.sourceforge.net/ (TCL)
- Whitespace - Programming using only spaces, tabs and newlines hence the name (MacOSX, Linux)
http://compsoc.dur.ac.uk/whitespace/ (Free)
- ActiveState - download the latest ActivePerl, ActivePython and ActiveTcl
http://www.activestate.com/
- BloodshedSoftware - provides a list of free compilers
http://www.bloodshed.net/
Flash Programming
- Aswing - Actionscript GUI framework and library to make flash application UI easily (Windows)
http://www.aswing.org/ (GPL)
- Kagswf - Easy to use tool for building SWF applications based on Actionscript language (Windows, wine on Linux)
http://kagswf.tensus.net/ (GPL)
- Mtasc - Motion-twin Actionscript 2 compiler to generate flash SWF bytecode (Windows, MacOSX, Linux)
http://www.mtasc.org/ (GPL)
- haXe - High-level object-oriented programming language to develop Websites - haXe can generate Javascript, Flash and Neko VM bytecode (Windows, MacOSX, Linux)
http://haxe.org/ (GPL)
- Neko - compiler and virtual machine - neko is a high-level dynamically typed programming language (Windows, MacOSX, Linux)
http://nekovm.org/ (LGPL)
- FlashDevelop - open source ActionScript 2/3 and web development environment (Windows)
http://www.flashdevelop.org/ (MIT)
- Ajax Animator - cross platform, cross format animation tool, supporting GIF, SWF, SVG and more (platform independent)
http://antimatter15.110mb.com/ (GPL)
- Salasaga - open source IDE for creating Flash based eLearning - in development (Windows, MacOSX, Linux)
http://www.salasaga.org/ (GPL)
- OSFlash - information, demos, and ratings on all things related to creating animation, also has tutorials on how to use the software and a wiki for developers
http://osflash.org
C/C++ Manuals, Tutorials and Examples
- C Programming Tutorials - help with C language
http://www.cprogramming.com/tutorial.html
- Learn C/C++ Today - list of C and C++ language tutorials
http://www.cs.bilkent.edu.tr/~tugrul/C_sources.html
- List of C Resources
http://www.lysator.liu.se/c/c-www.html
- The C++ Virtual Library
http://www.desy.de/user/projects/C++.html
- Devcentral Programming Tutorials - C/C++
http://devcentral.iftech.com/articles/C++/default.php
- Programming in C - UNIX system calls and Subroutines using C
http://www.cs.cf.ac.uk/Dave/C/CE.html
- C Programming - Course to introduce programmers to C language
http://www.strath.ac.uk/CC/Courses/NewCcourse/ccourse.html
- C++ Annotations - for C programmers migrating to C++
http://www.icce.rug.nl/documents/cplusplus/
- Visual C++ documentation and tutorials on C++, .NET, C++/CLI, Visual C++, VC MFC and more
http://www.functionx.com/vcnet/index.htm
- C++ Prorgramming Tutorials - topics include MFC, .Net and WIN32
http://www.codersource.net/codersource_cppprogramming.html
- Codeguru - web site for developers
http://www.codeguru.com/cpp/
- Programmers Heaven - C++ info, articles, files, links, etc
http://www.programmersheaven.com/tags/C++
- Standard ECMA-372 - C++/CLI Language Specification
http://www.ecma-international.org/publications/standards/Ecma-372.htm
- Dev-C++ - IDE for Win32 using GCC, Mingw or Cygwin compiler or libraries
http://sourceforge.net/projects/dev-cpp/
HTML and CSS Manuals, Tutorials and Examples
- css.tar.bz2 - Cascading Style Sheets Manual
http://sourceforge.net/projects/quanta/ (Creative Commons Attribution-Noncommercial-Share Alike 2.5 License)
- html.tar.bz2 - HTML 4.0 Reference Manual
http://sourceforge.net/projects/quanta/ (Creative Commons Attribution-Noncommercial-Share Alike 2.5 License)
- CSS Tutorials
http://www.w3schools.com/css/default.asp
- CSS Selectutorials
http://css.maxdesign.com.au/selectutorial/
- Web Style Guide
http://webstyleguide.com/
- W3C Cascading Style Sheets
http://www.w3.org/Style/CSS/
- XHTML Tutorials
http://www.w3schools.com/xhtml/default.asp
- Zen Garden - demonstration of what can done with CSS based design
http://www.csszengarden.com/
- A LIST apart for people who make websites - how to make it work for non standard browsers
http://www.alistapart.com/
- HTML Goodies - html resources
http://www.htmlgoodies.com/
- Sizzling HTML Jalfrezi - comprehensive guide to writing web sites
http://www.academy.net.au/jalfrezi/
- Reallybig.com - resources for Web Builders
http://www.reallybig.com/
- Advanced HTML - University of Denvor
http://www.du.edu/uts/training/materials/classes/advhtml/
- How to target a link to a window
http://graphcomp.com/info/specs/target.html
- Frames - The Internet Spec List (SGML & HTML Info)
http://graphcomp.com/info/specs/frames.html
- Osskins - Open Source skins for content management systems
http://www.osskins.com/
- Oswd - Open Source Web Design - free web page templates
http://www.oswd.org/
- OpenDesigns - free CSS templates
http://www.opendesigns.org/
- CSS Creator - Cascading Style Sheet learning resource for web developers and designers
http://csscreator.com/
- FontForge - font editor to create or edit postscript, truetype, opentype, cid-keyed, multi-master, cff, svg and bitmap fonts
http://fontforge.sourceforge.net/
Javascript Manuals, Tutorials and Examples
- javascript.tar.bz2 - Client-Side JavaScript Reference v1.3 Manual
http://sourceforge.net/projects/quanta/ (Netscape Communications Corporation)
- Java Script.net - free javascripts
http://java-scripts.net/
- Website Abstraction - javascript kit
http://wsabstract.com/
- Core JavaScript Guide
https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide
- The JavaScript Source "Cut & Paste" JavaScript Library
http://javascriptsource.com/
- Webmonkey Javascript Tutorials
http://www.webmonkey.com/tutorial/JavaScript_Tutorial
- The Web Developer's Virtual Library
http://www.wdvl.com/
Perl Manuals, Tutorials and Examples
- Perl Documentation
http://perldoc.perl.org
- Perl, Sockets and TCP/IP Networking. An oversimplified introduction to sockets
http://www.perlfect.com/articles/sockets.shtml
- Perl - Eric Foster-Johnson
http://foster-johnson.com/perl.html
- mod_perl - combines the power of Perl and Apache
http://perl.apache.org/
- Writings about the WWW - Lincoln D. Stein
http://stein.cshl.org/~lstein/
- CGI Resources
http://www.pageresource.com/cgirec/index.html
- The CGI-lib.pl Home Page all about cgi-lib.pl
http://cgi-lib.berkeley.edu/
- libwww-perl
http://ftp.ics.uci.edu/pub/websoft/libwww-perl/
PHP Manuals, Tutorials and Examples
- php_manual_en.tar.bz2 - PHP manual html version
http://www.php.net (GPL)
- PHP Tutorial
http://www.w3schools.com/PHP/
- PHP HOWTO
http://tldp.org/HOWTO/PHP-HOWTO.html
- PHPRO - PHP Tutorials, Articles, Examples and Manual
http://www.phpro.org/
- Free-PHP - scripts, resources and tutorials
http://www.free-php.net/
Python Manuals, Tutorials and Examples
- Python Documentation
http://www.python.org/doc/
- Python Beginners Guide
http://wiki.python.org/moin/BeginnersGuide
- Python in Education
http://www.python.org/community/sigs/current/edu-sig/
- Python Library
http://www.pythonware.com/library/
- Python Tutorial
http://en.wikibooks.org/wiki/Non-Programmer's_Tutorial_for_Python
Ruby Manuals, Tutorials and Examples
- Ruby Documentation
http://www.ruby-doc.org/
- Ruby Programming - Self Made Scholar Learn Free
http://www.selfmadescholar.com/classes.php?tag=ruby+programming
- Programming Ruby - The Pragmatic Programmer's Guide
http://www.rubycentral.com/book/
- Ruby Revival - tutorial
http://www.troubleshooters.com/codecorn/ruby/
- Ruby Learning
http://rubylearning.com/satishtalim/tutorial.html
- Ruby on Rails Guides
http://guides.rubyonrails.org/
Editors
- Notepad++ - source code editor and replacement for Notepad - supports Ada, ASCII, ASP, Assembler, AutoIt, batch file, C#, C++, Caml, CMake, CSS, Diff, doxygen, Haskell, HTML, ini file, InnoSetup, Java, Javascript, KiXtart, Lisp, Lua, makefile, Matlab, Objective-C, Pascal, Perl, PHP, Postscript, Properties, Python, RC file, Ruby, Scheme, Smalltalk, SQL, TCL, TeX, VB/VBS, Verilog, VHDL, XML, YAML
(Windows)
http://notepad-plus.sourceforge.net/uk/site.htm (GPL)
- SciTe - text and program editor with automatic syntax styling supports ADA, Assembler, C, C++, C#, CSS, Fortran, HTML, Java, Javascript, Lisp, Matlab, Pascal, Perl, PHP, Python, Ruby, Shell, SQL, TCL, VB, XML, YAML (Windows, MacOSX, Linux)
http://www.scintilla.org/ (GPL)
- Pfe - simple powerful editor (Windows)
http://www.lancs.ac.uk/staff/steveb/cpaap/pfe/default.htm (Free)
- WinVi - Windows version of "vi" Unix editor (Windows)
http://www.winvi.de/en (GPL)
- Vi - Unix editor - VIM X11 version uses full GUI interface (MacOSX, Linux)
http://www.gnu.org/vi (GPL)
- CSSED - CSS editor supports HTML, XML, Java, Javascript, JSP, PHP, C, C++, Python, Perl, SQL, Shell - multi-purpose text editor written in Java (Windows, MacOSX, Linux)
http://cssed.sourceforge.net/ (GPL)
- jEdit - programmers text editor written in Java (Windows, MacOSX, Linux)
http://www.jedit.org/ (GPL)
- ConTEXT - small text editor, developed for programmers with language specific highlighting (Windows)
http://www.context.cx (GPL)
- Crimson Editor - text and source program editor with syntax highlighting for HTML, C/C++, Perl, Java, Matlab and LaTeX (Windows)
http://www.crimsoneditor.com/ (GPL)
- For web authoring using WYSIWYG editors see Networking Web Tools
Software Development
UML/CASE tools
- ArgoUML - UML design tool with cognitive support - requires Java Runtime Environment JRE (Windows, MacOSX, Linux)
http://argouml.tigris.org (BSD License)
- Bouml - Free UML 2 tool box (under development) extensible, external tools named plug-outs can be written in C++ or Java (Windows, MacOSX, Linux)
http://bouml.free.fr/
(GPL)
- StarUML - UML/MDA platform which is fast, flexible, extensible, featureful and free (Windows)
http://staruml.sourceforge.net/en/ (GPL)
- Umbrello - UML modeller requires KDE (Linux)
http://uml.sf.net (GPL)
Integrated Development Environments
- Aptana - Web IDE for building dynamic web applications, code assists on JavaScript, HTML and CSS languages (Windows, MacOSX, Linux)
http://www.aptana.com/ (Eclipse Public License)
- Boa Constructor - cross platform Python IDE and wxPython GUI builder (platform independent)
http://boa-constructor.sourceforge.net/ (GPL)
- Codeblocks - C++ IDE extended with plugins (Windows, Linux)
http://www.codeblocks.org (GPL)
- CodeIgniter - Application Framework built for PHP coders who need a simple and elegant toolkit to create full-featured web applications (Windows, Linux)
http://codeigniter.com (CodeIgniter License is an Apache/BSD style License)
- Cygwin - Linux like environment for Windows used to rebuild from source Linux applications so that they run on Windows (Windows)
http://www.cygwin.com/ (GPL)
- WinGW - Minimalist GNU for Windows - port of GNU compiler collection and binutils for development of native Windows applications (Windows)
http://www.mingw.org/ (GPL)
- devPHP - PHP editor and IDE (Windows, Linux)
http://devphp.sourceforge.net/ (GPL)
- Eclipse - IDE Software Development Kit, java development, plugin development, team work and version control (Windows, MacOSX, Linux)
http://www.eclipse.org/platform (Eclipse Public License)
- Eric - Python and Ruby editor and IDE, written in python (platform independent)
http://www.die-offenbachs.de/eric/index.html (GPL)
- Judo - Java IDE for Children and Beginning Programmers (Windows, MacOSX, Linux)
http://judo.sourceforge.net/ (GPL)
- JUnit - automated testing tool for software developers plug-in module for both NetBeans and Eclipse (Windows, MacOSX, Linux)
http://www.junit.org (Common Public License)
- Lazarus - visual programming environment for FreePascal compiler (Windows, MacOSX, Linux)
http://sourceforge.net/projects/lazarus/ (LGPL)
- NetBeans - IDE Software Development requires Java SE JDK (Windows, MacOSX, Linux)
http://www.netbeans.org (Sun Public License)
- wxPython - blending wxWidgets C++ class with Pyhton (platform independent)
http://wxpython.org/ (GPL)
- SharpDevelop - Free IDE for C#, VB.NET and Boo projects on Microsoft's .NET platform, requires .NET Framework 2.0 SDK (Windows)
http://www.icsharpcode.net/OpenSource/SD/ (Free)
- Kdevelop - easy to use KDE IDE supporting many programming languages such as C++, Java, Fortran and Haskell (Linux)
http://www.kdevelop.org (GPL)
- GUI programming in Python
http://wiki.python.org/moin/GuiProgramming
Version Control Systems
- CVS - Concurrent Version System
(Windows, MacOSX, Linux)
http://ximbiot.com/cvs/wiki
(GPL)
- Subversion - Version control system replacement for CVS (Windows, MacOSX, Linux)
http://subversion.tigris.org/ (Apache/BSD License)
- Subcommander - Subversion GUI client (Windows, MacOSX, Linux)
http://subcommander.tigris.org/ (GPL)
- TortoiseCVS - extension for Microsoft Windows Explorer for CVS (Windows)
http://sourceforge.net/projects/tortoisecvs/ (GPL)
- TortoiseSVN - extension for Microsoft Windows Explorer for Subversion (Windows)
http://tortoisesvn.tigris.org/ (GPL)
- CVSweb - WWW interface for CVS respositories (Linux)
http://www.freebsd.org/projects/cvsweb.html (BSD License)
- ViewVC - Web-based Version Control Repository Browsing interface for CVS and Subversion (Linux)
http://viewvc.tigris.org/ (BSD License)
- git - version control system designed to handle very large projects with speed and efficiency (Linux)
http://git.or.cz/ (GPL)
- Qgit - graphical interface to git respositories (Linux)
http://sourceforge.net/projects/qgit/ (GPL)
- SVN Book - Version Control with Subversion (platform independent)
http://svnbook.red-bean.com/ (Creative Commons Attribution License)
Software Development Tools
- nsis - Nullsoft Scriptable Install System is a tool for programmers to create installers for Windows (Windows)
http://nsis.sf.net (Free - zlib/libpng license, bzip2 license & Common Public License)
- DBDesigner - database design, modelling, creation and maintance (Windows, Linux)
http://fabforce.net/dbdesigner4/index.php (GPL)
- Pyro - PYthon RObotics provides programming environmnet for artificial intelligence (Linux)
http://pyrorobotics.org/ (Open Source)
Freeware
Copyright 2007-2009 GNU General Public License
OSWINS DVD was built by Neville Richter - http://os.cqu.edu.au/oswinsdvd