Back in the ancient days of computers, the 80’s, it was possible get free and open source software, but it was a bit more work. To do so you might have used your modem to connect to bulletin board systems or perhaps purchased a CD full of source code or compiled programs, most of which was in the public domain.
These days, the amount of effort is significantly reduced. A simple web search with the phrase “compiler download free” returns a lot of possibilities. The free possibilities are range from a free visual c++ from Microsoft (who would have thought) to GCC which will compile C, C++, Objective-C, Fortran, Java, and Ada.
The question of how to proceed might would be a question of someone interested in development but not sure just where get started. So many possibilities. I personally think that a bit of “C” programming is not a bad starting point, well, especially for those with a small masochistic streak.
Yet, even that comment is a bit harsh considering the high quality tools that are freely available and how they have improved over the years. The old school method of development and debugging was either with the print statement or using the command line debugger gdb.
These days it is not uncommon to an integrated environment for editing, compilation and debugging. Eclipse provides an amazing development environment which can be used for almost any compiler, but it is possible download a pre-configured version for Java or C++. All ready to go without any configuration necessary.
Java Developer
Eclipse | Multiplatform integrated development environment which includes its own built in compiler. |
Java JDK | Oracle Java command line compiler and other tools for building libraries and documentation. |
C++ Developer
Eclipse | Multiplatform integrated C++ development environment config |
GCC | C++ command line compiler, also includes support for C, Fortran, Java, and Ada |
Other Tools
WinMerge | This windows graphical utility for comparing source files and display the differences. |
Notepad++ | A windows text editor which supports tabbed editing, spellcheck, syntax highlighting, and comparison. |
Source Management | Used to manage changes to documents, computer source code, web sites, or collections of other files. |
Build tools | Utilities designed to transform source files into programs by executing commands. |
As important as the tools are the theory needs to be picked up somewhere.
- School online or offline
- Private tutor
- Internet training
- Books
The Internet again leaps in to fill the gap. It is possible to purchase books online, work with online tutorials or even visit an ivy league college online to get started.
For those really interested in ancient history (command line debugging) take a quick look at the wikipedia entry.
https://en.wikipedia.org/wiki/GNU_Debugger
I will try and expand more on the tools in future blog entries.