beanz Magazine

Tools to Create and Develop Software

zzpza on Flickr

These tools make it easy to create and develop software with the ability to validate code, connect to web servers, store code snippets, and other useful features.

The software programming tools coders use to create software and websites are either hand picked or decided by the shop they work in. However, if you get the choice, or the choice is up for grabs, picking the ideal tool is both wonderful and daunting.

Software coding tools come in two flavors, simple and complete.

The complete tools are integrated development environments, or IDEs for short. They include lots of functionality beyond the ability to code. For example, they typically include the ability to FTP (send and receive) files to a remote server and the ability to check files in and out of version control repositories, for example, GitHub and Subversion. Typically they also include code checking, unit testing, snippets, code folding, and other neat features to save time and reduce the complexity involved in programming.

Simple software programming tools like TextWrangler and Notepad++ include a useful subset of all the functionality provided by complete tools. Notepad++ also has a healthy plugin development community to provide functionality not often found in basic programming tools.

Whether the software programming tool is an IDE or more simple, for example, Notepad++ or TextWrangler, there are important small differences to note. For example, the ability to search and replace multiple lines of code across multiple files can be really useful the few times you need it. However, not every tool includes this ability: TextWrangler does but the more polished Coda does not. These subtleties are learned by experience or by downloading tools and trying them out. And what annoys one coder may not be noticed by others.

Here are a few software programming tools to check out, whether or not you already have a favorite tool for coding:

Text Wrangler

This free software, made by the makers of BBEdit, another excellent paid editing tool, offers a lot of useful features. For example, you can search and replace multiple lines of data across files within one or more folders. Text Wrangler works on Macs only.

Notepad++

This free software programming tool is for Windows and has a strong community of developers who provide additional features through plugins, or add-on software. It’s as simple to use as Notepad, the ancient Windows text editor, but with lots more features useful to coders.

PhpStorm

Created by JetBrains, PhpStorm also tries to provide simple solutions to the process problems coders face. PhpStorm is written in Java to make the software work easily on Windows, Macs, and other operating systems. The company mostly creates language-specific software coding tools. They’re based in the Czech Republic.

Coda

This popular coding tool is Mac-only but it has an easy to figure out interface with lots of functionality, for example, the ability to create and use code snippets. It’s also designed by coders for coders.

Light Table

This brain child of Chris Granger started on Kickstarter then evolved into a Y Combinator project. He wants to re-imagine what coding tools should do. For example, the tool integrates testing and documentation inline as you code. It’s worth playing with and watching as the project evolves from alpha to a real product.

What tool you use is a highly personal choice. If you have a favorite tool not on our IDE resources page, be sure to let us know on the Contact Us page.

Learn More

Light Table

http://www.lighttable.com
http://www.chris-granger.com/2012/05/21/the-future-is-specific/

PhpStorm

http://www.jetbrains.com/phpstorm/

Coda (Mac)

http://www.panic.com/coda/

Notepad++ (Windows)

http://www.notepadplusplus.com

TextWrangler (Mac)

http://www.barebones.com/products/textwrangler/

Also In The August 2013 Issue

An Interview with Troy Hunt

Troy Hunt is a software architect and Microsoft Most Valued Professional (MVP) focusing on security concepts and process improvement in a Fortune 50 company. He's based in Australia.

1Password, LastPass, RoboForm

If you use a password you created that is less than eight characters, your password is vulnerable to hacking. Here are three ways to create and use secure passwords online.

How to Write Secure Code

Coding securely doesn't have to kill the joy of programming. In fact, learning how to code securely provides insights into languages and computing.

How to Code HTML Email

How to code an HTML email like the ones you open every day turns out to be an offbeat software coding challenge.

What is an SSL Certificate?

How to tell if a web page is secure is one of the most basic yet least obvious ways to protect your data online.

Where to Find Command Line Interface Software

One key computing skill is the ability to use command line interface (CLI) software to enter commands to control a computer. Here are some options.

Lua

Lua is a comparatively simple programming language used in a wide range of places, from digital TVs to video games to phone applications. It's also designed to be simple to use and lightweight.

Arrays

Here is how three programming languages handle a common problem: how do you organize and keep track of useful data?

Linux Command List for Command Line Interfaces

Some of the most common commands you'll need for a command line interface (CLI), in a Linux command list.

Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.

News Wire Stories for October 2013

Must read stories about computer science, software programming, and technology for September 2013.

Learn More Links for October 2013

Links from the bottom of all the October 2013 articles, collected in one place for you to print, share, or bookmark.