Code with Free Computer Programming Software
The latest tools used to write computer programs are very capable and helpful, allowing you to concentrate on the actual code writing instead of wasting time trying figure 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, 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. 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 spend 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 needs to do so ask all the questions needed to get a good view of what is required. Note 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.) The designs will not be set in stone but change as the program develops, problems are encountered and overcome, and feedback from users is taken on board. Concentrate on getting the most important functionality covered first and additional functionality in later releases.
- LibreOffice – http://www.libreoffice.org – Free
- Microsoft Office – http://office.microsoft.com – From $100/£75/€90
- Scrivener – http://www.literatureandlatte.com/scrivener.php – From $40/£32/€38
- Kingsoft Office – http://www.kingsoftstore.com – Free/£36/£50/€50/$70
Integrated Development Environments
Long gone are the days of simple text editors and command line compilers. For maximum productivity an Integrated Development Enviroment (IDE) is need. 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:
- JDK – http://www.oracle.com/technetwork/java/javase/downloads/index.html – Free
- Eclipse – http://www.eclipse.org – Free
- Visual Studio – http://www.microsoft.com/visualstudio – From $130/£96/€164
- Visual Studio Express – http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express – Free
- MonoDevelop – http://monodevelop.com/ – Free
- SharpDevelop – www.icsharpcode.net/OpenSource/SD – Free
- Visual Studio (see C# entry above)
- Code::Blocks – http://www.codeblocks.org – Free
- EditiX – http://www.editix.com/ – From $79
Occasionally we need to work on older source code projects and find ourselves digging out Visual Basic 6 to help some clients out!
Smartphone, Tablet and Mobile Device Programming
He is a list of development environments for App (mobile) development.
- Android SDK – http://developer.android.com/sdk/index.html – Free (requires Eclipse see Java above)
- Android Studio (Beta) – http://developer.android.com/sdk/installing/studio.html – Free
- IntelliJ IDEA – Free and commercial versions
- PhoneGap – http://phonegap.com – Free (uses Eclipse see Java above) based on Cordova (http://cordova.apache.org)
- Intel XDK – http://html5dev-software.intel.com/
- Monkey – http://www.monkeycoder.co.nz/ – $130 (£85/€98)
- NS Basic – http://www.nsbasic.com – From $100 (£64/€80)
- Basic4Android – http://www.basic4ppc.com – From $49 (£32/€40)
- Xamarin – http://xamarin.com/monoforandroid – Free (limited) and commercial licenses
Get Free Components and Code to Help Your Projects
- Sourceforge – http://sourceforge.net
- Google Code – https://code.google.com
- Code Project – http://www.codeproject.com
- GitHub – https://github.com/explore
- NuGet – http://www.nuget.org
- CodePlex – http://www.codeplex.com
- Binpress – http://www.binpress.com
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.
- Images, Sounds and Videos -Wikimedia Commons – http://commons.wikimedia.org
- Clip Art – Open Clip Art Library – http://openclipart.org/
- Information on Open Source Unicode Typefaces (fonts) – http://en.wikipedia.org/wiki/Free_software_Unicode_typefaces
- Assets for Games (2D and 3D art, sound effects, music, textures) – Open Game Art – http://opengameart.org/
- Sound Effects – http://soundbible.com/
Of course there will be times when you need to change an asset grabbed from the interweb and there are tools available for that.
Media Creation and Editing
- Vector Graphics – Inkscape – http://inkscape.org/ – Free
- Raster Graphics – Paint.NET – http://www.getpaint.net/ – Free
- Video, 3D Modeling and Animation – Blender – http://www.blender.org/ – Free
- HTML5 Animation – Adobe Edge – http://labs.adobe.com/technologies/edge/ – Cloud based
- Sound Editing – Audacity – http://audacity.sourceforge.net/ – Free
- 3D Modeling – SketchUp – http://www.sketchup.com/ – Free version available
- Media Conversion – XMedia Recode – http://xmedia-recode.de – Free
Once the software has been written and tested you will need to wrap it in an installer to ease distribution.
Installers for Windows
Now put together a web site for your users to find information on your new programme.
Website Content Management System
Finally do the house keeping on the code so you do not lose any of the hard work done.
- Version control – git – http://git-scm.com/ – Free
- File and directory differences – DiffMerge – http://www.sourcegear.com/diffmerge/ – Free
- File and directory synchronising – OneSync – https://code.google.com/p/onesync/ or SyncToy – http://www.microsoft.com/en-us/download/details.aspx?id=15155 – Free
- General editing – Notepad++ – http://notepad-plus-plus.org/ – Free
- File compression – 7-Zip – http://www.7-zip.org/ – Free
- Link checking – Xenu’s Link Sleuth – Free
- Graph Visualization Software – Graphviz – http://www.graphviz.org/
Don’t forget to keep back ups of your work safely tucked away somewhere.
Making Money from the Software You Have Written
Thanks to the thousands of software developers all around the world who have made free computer programming software available for all to use for the greater good.
Programming Languauges on IT Hare – http://ithare.com/category/programming-languages/