Scratch - a great starting point to introduce programming (procedural) with quick outcomes. Fundamental principles (sequence, selection, iteration) can be quite easily picked up. Easy enough to try with primary school pupils and remains a useful tool in demonstrating certain concepts to older students. (a project created in Scratch would not be acceptable at GCE level) Create your own games, stories, or music.
Alice - a computer program written in Java by the Stage3 Research Group at Carnegie Mellon University that makes it easy to write object-based, event driven, 3D animation and game programs. Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web. Alice is a teaching tool for introductory computing. It uses 3D graphics and a drag-and-drop interface to facilitate a more engaging, less frustrating first programming experience.
Visual Studio - Yes, Microsoft again. A pretty amazing (easy drag & drop functionality) IDE (Integrated Development environment) It can be used to develop console and graphical user interface applications along with Windows Forms applications, web sites, web applications, and web services. Built in Languages: Visual Basic / C# /Java - Very easy to get started and great for when you need to program form based interfaces fast! Excellent set of Tutorials at http://www.homeandlearn.co.uk/
Greenfoot (Interactive Java IDE) Excellent way to introduce Object Orientated Programming and expain concepts like Abstraction / Inheritance. Greenfoot - an interactive Java development environment designed primarily for educational purposes at the high school and undergraduate level. It allows easy development of two-dimensional graphical applications, such as simulations and interactive games. Comprehensive resources to get you up to a certain point are available.
Pascal an influential imperative and procedural programming language, designed in 1968/9 and published in 1970 by Niklaus Wirth as a small and efficient language intended to encourage good programming practices using structured programming and data structuring. Quite quick to get started and easy to learn. (Wikipedia definition) Console visuals ...http://library.thinkquest.org/27297/
QBasic Like QuickBASIC, but unlike earlier versions of Microsoft BASIC, QBasic is a structured programming language, supporting constructs such as subroutines and while loops. Line numbers, a concept often associated with BASIC, are supported for compatibility, but are not considered good form, having been replaced by descriptive line labels. QBasic has limited support for user-defined data types (structures), and several primitive types used to contain strings of text or numeric data (Wikipedia definition)
GameMaker (often abbreviated to GM) is a Windows and Mac IDE originally developed by Mark Overmars in the Delphi programming language. Game Maker allows users to easily develop computer games without the requirement of prior computer programming experience, while allowing advanced users to create complex applications with its built-in scripting language. Since its initial release in 1999, Game Maker gained many new features, notably 3D graphics support, as well as a significant user base, with YoYo Games providing free hosting for user-created games. Tutorials here and Great Introduction to Gamemaking in general http://www.yoyogames.com/make/tutorials
Python - an interpreted, general-purpose high-level programming language whose design philosophy emphasizes code readability. Python aims to combine "remarkable power with very clear syntax", and its standard library is large and comprehensive. Python supports multiple programming paradigms, primarily but not limited to object oriented, imperative and, to a lesser extent, functional programming styles. It features a fully dynamic type system and automatic memory management, similar to that of Scheme, Ruby, Perl, and Tcl. Like other dynamic languages, Python is often used as a scripting language, but is also used in a wide range of non-scripting contexts. (Wikipedia)
http://docs.python.org/tutorial/ <-- Comprehensive tutorials avaialble.
There is also BBC BASIC (which OCR Computing suggests / endorses for teaching pupils the basics) It's what many of the great programmers and system creators of all time started off in, so perhaps there is some logic to it! You can download BBC BASIC here .....and find a comprehensive complete beginners tutorial here.