Open source-minded Web developers have long looked towards well-known languages such as PHP and Ruby and powerful IDEs including Eclipse and NetBeans. Yet many newcomers don't know about the other open source and online tools that can fulfill other needs such as image manipulation and Web design, remote access, and database administration. In this article I'll introduce you to ten of my personal favorites, a few of which I've been using for over a decade!
Like Google or slashdot, ColorCombos.com is one of the few websites I visit almost every day. I've used this online library containing thousands of eye-appealing color combinations literally hundreds of times as a starting point for creating website color schemes.
If you need a diagramming tool that won't break the bank, check out Dia, an open source GTK-based utility capable of not only producing all of the aforementioned diagram types but also supporting a wide variety of formats including SVG, PNG and EPS. If you need shapes not offered within the native distribution, you can either create your own or select from the many shape libraries produced by fellow users. See this list for some idea of what's available.
Adobe Photoshop is the undisputed heavyweight king of image editing, capable of satisfying every conceivable print- and online-imaging desire. However, like Visio, Photoshop's features don't come cheap. One very capable alternative is GIMP, an open source image manipulation program capable of producing very impressive graphics and sporting an extensible interface similar to Photoshop's plugin community.
GIMP too boasts an impressive history dating back to 1996. Since the first release, the project has continually evolved into a formidable Photoshop alternative. If you're not familiar with GIMP's capabilities, check out the gallery in the GIMPTalk forum. Despite an utter lack of design acumen, I regularly use GIMP for creating basic website graphics, including many of those found on WJGilmore.com.
Incidentally, if you've tried GIMP and are a fan of the interface, check out GIMPshop, a GIMP fork that replicates many of the Photoshop's features.
4. Key-Based SSH Authentication
Rarely does a day pass in which I don't log in to at least one of several Linux servers via SSH, whether a client's or my own. Doing so requires the ability to easily recall often convoluted passwords. Time lost as a result of constantly looking up these passwords can really begin to add up! Save yourself the frustration by configuring your servers to use key-based SSH authentication, which involves using public key cryptography to authenticate the user rather than a password-based challenge.
When successfully configured, you'll be granted immediate access to the server merely by "SSH'ing" into it. Configuring your client and server to use key-based authentication is a pretty straightforward process, and a topic I've recently covered in the article, "Manage Your Server Accounts Securely with Key-Based Authentication".
With the project's 12-year anniversary rapidly approaching, phpMyAdmin ranks among one of the oldest open source projects in widespread use today. A Web-based MySQL administration tool, phpMyAdmin's ability to manage database schemas, data, users, and complex features such as replication and synchronization rivals the most sophisticated commercial offerings.
While I tend to have a terminal window logged into the mysql command-line utility open all day, phpMyAdmin is also close at hand particularly because it enables me to conveniently construct and test complex SQL queries.