Bitbucket
If you're working solo, you probably want to put at least a
copy of your code into the cloud. If you're working as part of a team, you
absolutely must have a way to share code in order to make the project happen.
There are several code repositories out there, but Bitbucket -- a Git
service -- has several things that make it a strong challenger in the space.
First, you're able to have private repositories with a free
account. That's significant because some of the major players limit you to
public repositories until you start giving them money. Next, they don't put a
limit on how many repositories you can have with a free account -- they only
limit the number of collaborators to five before you have to hand over a credit
card number. Finally, the Atlassian folks have written a free client that works
with a variety of Git and Mercurial repositories. (More on that will follow.)
Github
Github is the largest and most widely known Git
repository service. Its wide variety of public repositories (accessible through
free accounts) have made Github a popular cloud service for open source teams,
writers, and creative teams that span a range from app developers to
environmentalists.
If your projects can live in the open, then Github is free
for you to use to your heart's content. If you need some privacy, though,
you'll have to pay at least a little bit for the privilege. With pricing that
starts at the equivalent of a couple of macho-mocha-frappa-whatzit beverages
each month, the cost is not a huge burden. You can always drop back to the free
version when your need for privacy ends.
SourceTree
SourceTree is that free client for Git and Mercurial
repositories I mentioned earlier in this list. This is a nice GUI client that
allows you to work with repositories at a variety of services. It lowers the
macho quotient, since it removes the CLI requirement, but it more than makes up
for that by allowing you to collaborate with people who haven't been
programming since early Emacs days.
SourceTree isn't perfect. There isn't a Linux version. But
if you're using either Windows or Mac OS X for your development platform,
SourceTree is a tool that could make version control easier and much more
visual.
Slack
When you're working with other developers (or with clients,
or with business partners) you'll probably need to communicate. Since email is
orders of magnitude too slow for today's business needs, an enterprise-class
communication system designed with developers in mind is needed. Welcome to Slack.
Slack is a messaging system that can be thought of as a
buttoned-down business ICQ. The concepts of channels and groups are similar to
ICQ. Private messages are also available. It's easy to send files and other
digital assets back and forth using Slack, but Slack's best quality for development
teams may be that it saves discussions and creates a database of topics that
have been discussed. That way, there's no worry about losing the genius of a
late-night, Red Bull-fueled discussion when everyone turns off their system to
head for breakfast.
Trello
Trello is all about lists. Most of them will be to-do
lists, but there's no reason to limit the lists to one type. If you want to
have lists of feature ideas, it's easy to create them in Trello, and then move
the items to a to-do list when it's time to implement.
In many ways, Trello is the embodiment of a perfect cloud
app. Your lists live in the cloud, where they can be accessed from any of your
devices. You can invite other Trello users to share a Trello board (which is
where lists are pinned) and it becomes a group list manager in a matter of
moments. Trello is free, though you can pay a few dollars a month for
"Trello Gold" if you need to attach files of up to 250 MB to your
list items. Trello Gold also brings you different colors for your boards, and a
whole fleet of emojis. If your programming team communicates through emojis,
then Gold is definitely the way to go.
Black Duck Open Hub Code Search
Do you every wonder whether someone has already solved the
problem you're working on? And whether the person who solved that problem has
included it in an open source library or application? You can find the answer
at Black Duck Software's Open Hub Code Search. All it does is search --
through billions and billions of lines of open source code. The learning curve
is rather steep, but the payoff can be huge if it saves you from reinventing
the wheel. Again.
Cyberduck
Cyberduck is one of the applications that I've used for
years. It is, quite simply, a great FTP client that is richly featured, open
source, and available on Linux (in CLI form), MacOS X, and Windows. Cyberduck
is rock-solid at doing its very basic but vital job -- transferring files to
and from servers, repositories, appliances, storage systems, and development
workstations. It's donation-ware, but isn't obnoxious about it. It also has a
cute rubber duck as an icon. It integrates into many other applications and,
darn it, the application simply works.
Cyberduck
Cyberduck is one of the applications that I've used for
years. It is, quite simply, a great FTP client that is richly featured, open
source, and available on Linux (in CLI form), MacOS X, and Windows. Cyberduck
is rock-solid at doing its very basic but vital job -- transferring files to
and from servers, repositories, appliances, storage systems, and development
workstations. It's donation-ware, but isn't obnoxious about it. It also has a
cute rubber duck as an icon. It integrates into many other applications and,
darn it, the application simply works.
jEdit
The second of the three modern editors on our list, jEdit,
is notable for two reasons. First, as an open source project it has been ported
to a lot of platforms, from Windows to VMS. Next, it's extensible through
plug-ins that bring functions like grammar checking and auto-completion to
different languages and systems. Finally, it's a very solid programming editor
that can be convinced to support almost any text and file creation tasks you
need to perform. Are there areas to criticize? Of course. The most significant
is in the display. If you have a new, very high-resolution display, jEdit can
be a bit fuzzy. It's still extremely useful, though, and could be the perfect
solution if you have to work on a variety of different platf
Komodo Edit
The third of the modern editors to make our list is one of
the applications that I use all the time. Nearly every article I've written in
the last five years has passed through Komodo Edit because it has
tools that make most of the repetitious tasks of building HTML pages simple and
painless. Komodo Edit is fast. It handles big files well, and it has never
crashed in the middle of a writing or editing session. I count that as winning
behavior. If you want to support an entire team through Komodo Edit, you can pay
for Komodo IDE, but I haven't found a task, yet, that I couldn't accomplish
with Komodo Edit.
There they are, 10 free tools. How many do you use? How many
could you use? And which ones will you be trying out? Let me know in the
comments section below -- and let me know which great tools I've missed.
There's always room on the desktop for another great tool.