Computer Programming Tools - Free Software Downloads
The latest tools used to write computer programs are very capable and helpful, allowing you to concentrate on the actual code writing instead of figuring out how to use them. If you enjoy computer programming as a career or hobby you have probably played with several tools over the years and some may be listed here, some of the tools listed here you may not have come across. If you are new to programming then maybe you are looking for software to get started, those listed here are worth a look.
Code with Free Computer Programming Software
The number of tools available runs into the hundreds, if not thousands, especially if you include the various types of tools used. The computer programming software listed here are some of the tools found to be useful to design and develop systems and software. This list is mainly for computers running Microsoft Windows because that is the most common business operating system, though some of the tools will also work on Mac or GNU/Linux systems.
Software Design and Documentation
Unless you are writing critical software (usually for medical, military or large banking operations) spending a lot of time in detailed design is a wasted effort. As a software developer, your time is best spent cutting code and shipping the results. That is not to say no thought needs to be given to design. You still need to know what the software must achieve, so ask all the questions needed to get a good view of what is required. Note down the major functionality that must be covered and produce a high-level overview and block diagram. Standard office software is fine for capturing requirements and initial designs. Spreadsheets are good for making rough screen layouts. (Spreadsheets are also good for checking the output of some types of algorithms.) An app's design will not be set in stone but change as the software is developed, problems encountered are overcome, and feedback from users is taken on board. Concentrate on getting the most important functionality covered first and add less important functionality in later releases. Here are some apps for documentation:
- LibreOffice - Free
- Microsoft Office - Prices vary (e.g. £120 for single PC UK install)
- Scrivener – From £55.
- WPS Office – Prices vary, from free or £34 upwards to remove ads and gain features.
- Grammerly - A LaTeX-based online tool used by many academics and institutions. From free or £120 annually for more features.
Free Integrated Development Environments
Long gone are the days of simple text editors and command-line compilers. For maximum productivity, an Integrated Development Environment (IDE) is needed. This allows you to edit code, organise a project, bring up online help and local documentation, compile, run and debug all from one location. There are plenty of choices, here’s a few:
C Sharp
The .NET C# compiler comes with Windows. Just grab an IDE to write C# programs:
- Microsoft Visual Studio – From Free
C
- Microsoft Visual Studio – From Free
- Code::Blocks – Free
- Eclipse IDE - Free
Java
First off you'll need the Java Development Kit (JDK):
- OpenJDK – Free
Then try the various free IDEs:
- Eclipse IDE - Free
- Apache NetBeans - The free NetBeans supports Java (and other languages).
- BlueJ - A free Java development environment.
- Greenfoot - Another environment for Java.
XML
- EditiX – From $19 for education or from $59.
Smartphone, Tablet and Mobile Device Programming
For a list of IDEs for programming mobile devices see the article List of IDEs for Android App Development, Which is Best for You?.
Get Free Components and Code to Help Your Projects
- GitHub
- Code Project
- NuGet
- Sourceforge - Note: The website is ad-heavy.
- CodePlex Archive - Stores the old Microsoft CodePlex site.
- Google Code Archive
Program Assets, Code Shipping and Management
Most of the time spent on a software project is cutting code and then testing it. Some programs will require additional assets, most commonly images, in some form, to illustrate actions, provide icons or guide users. Other programs will require additional assets such as sounds or videos. The Internet has plenty of assets available.
Free Fonts
Free Assets
- Unsplash for Free Photos
- Images, Sounds and Videos on Wikimedia Commons
- Open Clip Art Library - Free clip art images in scalable vector format SVG.
- OpenGameArt - Assets for Games (2D and 3D art, sound effects, music, textures).
- Tango Icons - See Tek Eye's revival of the Tango icons.
Of course, there will be times when you need to change an asset grabbed from the Internet and there are tools available for that.
Media Creation and Editing
- Vector Graphics with Inkscape – Free
- Raster Graphics with Paint.NET – Free
- Video, 3D Modeling and Animation with Blender – Free
- Sound Editing with Audacity – Free
- Media Conversion with XMedia Recode – Free
- Download Time Calculator - A web page to calculate the time to download a big file, see if you need to optimise an asset file.
Installers for Windows
Once the software has been written and tested you will need to wrap it in an installer to ease distribution.
- Inno Setup – Free
- 7-Zip Self Extracting - Free
- WiX – Free
Website Content Management System
Now put together a web site for your users to find information on your new programme.
- ↓markdown↓ CMS - Tek Eye's own free Content Management System (CMS), used to build this site.
- GitHub Pages - If you store your software on GitHub why not use it for the project website.
- List of content management systems - There are many CMSs, see Wikipedia for a list.
- WordPress – The most widely used free CMS (see also Useful WordPress Additions).
Other Utilities
Finally do the house keeping on the code so you do not lose any of the hard work done.
- Version control with git – Free
- File and directory differences with WinMerge – Free
- General editing with Notepad++ – Free (can be used to edit and run code).
- File compression with 7-Zip – Free
- Link checking with Xenu’s Link Sleuth – Free
Don’t forget to keep back ups of your work safely tucked away somewhere. Although GitHub is the biggest and most famous online git provider, there are lots of online services that allow remote backup and version control for software projects. Most services provide a free account, and premium accounts for commercial development teams. See the Wikipedia article Comparison of source code hosting facilities.
Make use for Artificial Intelligence (AI) tools when programming. Learn to use the AI tools now available to help write code. Tools like GitHub Copilot can increase coding productivity. It is like having pair programming without the cost of another developer.
Making Money from the Software You Have Written
See our post App Monetization List of Marketplaces, Advertisers and Others.
Acknowledgements
Thanks to the many thousands of software developers all around the world who have made free computer programming software and assets available for all to use for the greater good.
- The toolbox image on this page is in the public domain by OpenClipArt user rg1024.
- The hammer and spanner image on this page is in the public domain by OpenClipArt user Andy.
See Also
- Clean and free software at FossHub.
- See our list of Free Android Example Projects.
- For a full list of all the articles in Tek Eye see the full site Index.
Author:Daniel S. Fowler Published: Updated: