My first experiences programming where on a Commodore 64 and an Apple II+. In both cases there was no separation of the end user interface and the development interface…you could just start entering code at the command line and it would begin building. Things have come a long ways since then – this is good and bad. It is no longer quite as easy or essential to get involved in programming, on the other hand one can much more rapidly build complex applications.
If you ever long for the throw back days you may think of QBasic, which became ubiquitous due to its inclusion with Microsoft DOS…but all these concepts are so from yesteryear – in computer terms they are almost millennia away.
So what if you want to do some simple programming these days with a BASIC feel to it? One good option is FreeBasic. FreeBasic was built to be largely backwards compatible with Microsoft’s QBasic and thus can run many old QBasic programs with only minimal modifications, but FreeBasic has also gone far beyond this and delivers a fairly powerful development environment.
If you do decide to use FreeBasic I recommend downloading a free copy of FbEdit as well. See development usually consists of at least two components – the compiler and the editor. A compiler is the program that takes your code and turns it into an executable program while an editor is what you write the code in. Granted, you can write your code in any plain text editor – but trust me, FbEdit will be a big help.
The FreeBasic forums have a very friendly and active community that will help you along through the learning process. Just take some time to explore the entire site and community, it is pretty impressive.
All this said, FreeBasic isn’t the language I primarily use for development – or the language I would recommend. In general, I’m a Microsoft .NET guy – mainly ASP.NET and VB.NET. Microsoft offers free copies of the lite versions of these applications as well, and while I say kudos to the FreeBasic team and hope they keep up the great work, if you are looking for a job in technology, you might be better off starting with a Microsoft .NET technology. Actually, probably C#.NET instead of VB.NET as I do (old habits die hard).