Updated: 23 Jun 2018

To create games, utilities, drivers or applications you need to learn to program and computers has loads of programming languages to choice from, the question is which one to use? It really depends on a number of factors: skill of the programmer, the software to be developed, time to be spent on it, speed, stability, and type of software. For example, a device driver would not be written in Basic or Logo but more like C or even assembler for extra speed and stability required.

If you are a beginner, then you need to learn the basics of programming and there are many books, guides, tutorials and courses available. You need to learn commands, syntax, variables, arrays, memory, input and output, files, structured or object orientated programming as so on. At lot of these concepts are shared between many languages, so learning them will allow you to almost develop in any language!

For a list of programming terminology, try these Terms.

Programming related subjects and sites

- PRINCE2 methodology
- Software Development Process
- Unified Modeling Language (UML)
- Flowchart in Programming
- Binary and Hexadecimal number systems.
- Computer based maths
- Jackson Structured Programming (JSP)
- Object Orientated Programming (OOP)
- Artificial Intelligence Programming (AI)
- Graphics with OpenGL and SDL new
- Graphics Programming new

Programming the Web

The web uses 1000s of standards and there is a lot to learn. Best place to start is to learn HTML first and work on from there. Java script is useful for client side scripting, but for advanced programmers you need to learn server side scripting for accessing databases and accessing other sites: ASP, ASP.NET, Java, Perl and PHP.

Hyper Text Markup Language (HTML)
- Getting started with HTML
- Advanced HTML
- Domains and HTML
- Media with HTML5 video
- Graphics with HTML5 canvas
Cascading Style Sheets
- Adding a touch of style
Java script
- Introduction to Java Script
- Introduction to AJAX
- Introduction to JSON
- Programming with Action Script (Flash) new

Tutorials and Reference Sites

- x86 Assembly Tutorial and x86 Reference wiki.
- For a reference on C commands see C Reference.
- ADA Tutorial
- C / C++ Tutorial
- C# Tutorials
- F# Tutorials
- Java Beginner Tutorial new
- Interactive Javascript tutorial
- LISP Tutorial
- Beginning Perl Tutorial
- PHP Tutorial
- Python Tutorial
- Visual Basic tutorial

Cross Platform Languages

The following links are pages for languages that can be used on different platforms.

Active Perl (Linux, PC, Mac)
D Language (Linux, PC, Mac)
Forth (various)
Free Pascal
(Linux, PC, Mac)
gFortran (Linux, PC, Mac)
GnuCobol (Linux, PC, Mac)
Google's Go (Linux, PC, Mac)
MathSoft Matlab (Linux, PC, Mac)
Netbeans IDE for Java
(Linux, PC, Mac)
REBOL Web Site (Amiga, PC, Mac, Unix)
Oracle's Java Language ((Linux, PC, Mac)
Perl Home Page (Linux, PC, Mac)
PHP Home Page (Linux, PC)
Pure Basic (Linux, PC, Mac)
Python Home Page (Linux, PC, Mac)
R Project (Linux, PC, Mac)
Ruby (Linux, PC, Mac)
Rust (Linux, PC, Mac)
Scratch (Linux, PC, Mac)
Unity3d (various)
Visual Studio Code (Linux, PC, Mac)

Products to aid programming and web development:

Adobe Creative Suite - Dreamweaver, Edge, Muse, Flash etc
Microsoft Expression Web - Web development
Microsoft Visual Studio Community - App and web development
Opus Creator - web development IDE esp HTML 5

Books and Articles on Programming

For Dummies Books
Pearson Addison-Wesley books
Pearson SAMS Teach Yourself books

Programming the Amiga, Morphos or AROS

To program the Amiga, you need to know some knowledge about AmigaOS and its internal workings. You need to know the concept of libraries, devices, resources, intuition, gadtools or reaction user interface, graphics, screens, sprites and the filing system. The Rom Kernel Reference Manuals and the Amiga Developer CD will supply a lot of information on how to access these features in AmigaOS. Some languages such as Amos and Blitz Basic will supply a lot of commands to access them and leave a lot of the complicated stuff out. On the Amiga, to write games, you need to know about the graphics library for Native graphics modes on OCS/ECS/AGA or using P96,CGFX,WarpUp and Warp3D for the graphics cards and 3D hardware.


Amiga Assembly Tutorial
Amiga Basic Tutorial
Amiga C Tutorial
Amiga E Tutorial (and here)
Arexx Tutorial
GCC and MUI Tutorial
Rebol Tutorial
AmigaOS 4 coding
Amiga Future - Programming AmigaOS 4

Web Site Links

Amiga Coding
Amiga Python
Aminet Dev Tools
AMOS Factory
E Language
JAmiga at SourceForge
Morphos Development tools
Murks IDE at SourceForge
Storm C, WarpUp, Warp3D
Unofficial SAS/Compiler Support Page
AmigaOS 4 Development
VBCC Home Page
Amiga Developer CD
Amiga OS 3.5 NDK
Amiga OS 4 SDK
Amiga Developer Wiki

Programming the Atari ST new

The Atari ST was a direct competitor to the Commodore Amiga at the time, so here are some links to some programming pages.

Atari SDK
C Compilers

Atari ST Books

Programming for Linux

To program the Linux there are a number of programming languages available which are also available for other platforms (see cross platform links above). The main language is GNU C/C++, there are well known languages for Apache such as Perl and PHP and other less well known ones as well if you want to try them.

Web Site Links

GNU Development Environment
GTK+ Development Reference
KDE Development
MySQL Command Reference
Qt Development Reference


Bash Shell Tutorial
GTK+ Tutorials
KDE Tutorial
Regular Expressions tutoral
YoLinux Tutorials

Programming the PC

To program the PC running Windows and so on need to know a about the inner workings of the operating system. So you need to know about shared Dynamic Link Libraries, device drivers (DRV, VXD), BIOS (DOS), Windows API, DirectX API, OpenGL API and so on. The Microsoft Developers Network (MSDN) provides a lot of information on developing programs on Microsoft operating systems and some is usually provided with most Microsoft Programming Languages such as Visual Basic,C and J and so on.


Bloodshed Dev C++
Borland Web Site
Game Creators
Javascript Resource

JScript Reference
Microsoft Visual Studio
Microsoft MSDN
PHP for Windows
Powershell Reference
QuickBasic 64
Small Basic
Strawberry Perl
VBScript Reference


Java Tutorials
Logo (Turtle Academy)
Metro Apps
Object/Free Pascal Tutorial
SQL Tutorial
Unity 3D Tutorials
Windows C/C++ Tutorials

Programming the Macintosh

There are a number of languages to program the Mac on a similar level to the PC as well as the Web based languages (see above):

Apple Developer WebSite
Bash scripting reference
Future Basic
Real Basic
XCode (GCC)

Programming Smart Phones

There are at least four main Smart Phones on the market today. They are the iPhone, Android, Blackberry and Windows Phone, they can be programmed
with their own languages and operating system with just a SDK:

Basic for Android
Android SDK
Android Studio
Blackberry Developer
iPhone and iPad - iOS SDK
Windows Phone Silverlight
Windows Mobile (xamarin)


Bootstrap Tutorial
IOS Tutorials

Swift Tutorial

8-bit Era Programming

AppleSoft Basic Reference
BBC Basic Reference
Commodore 64 Programmer's Reference

MOS 6502 Reference
MSX Basic
Oric 1 Forth
TI Basic Reference
Zilog Z80 Reference
ZX Spectrum BASIC

Programming specialist or gaming hardware

Microsoft XBox new
Sony Playstation new

Raspberry Pi

RobotShop Tutorials

If you want help with programming such as learning to program or other info, why not

Back Main page.

This article is translated to Serbo-Croatian language by WHGeeks .