If you’re a beginner just getting into programming or a seasoned veteran wanting to grow your skill set, the monstrous amount of development and testing tools can be overwhelming. Have you ever wondered about the best programming tools for productivity and what exactly makes them the best? Read on!
Don’t worry, we’ve curated a simple list of the best tools in their categories. We love simple.
This isn’t an exhaustive list. It’s meant to be a starting point and highlight some of the best tools that we use and recommend to others.
If you have no idea what these tools are or why they’re important, we’ve got you covered over at our getting started section.
Ask one hundred programmers for a critical skill that was overlooked, and many will tell you about spending more time on good source control practices.
There’s a lesson to be learned there. Source control is often a neglected skill that can make or break a successful engineer in the real world.
Many of these tools are free with optional paid plans and services that can unlock more features for power users, groups, and enterprises.
Best Free Source Control
Git is the de facto standard for source control software. It’s critical to learn git if you want to track changes to your code, join a collaborative software project, or contribute to a group project at an enterprise.
As an open source project, it’s likely that git will remain free forever and continue receiving regular updates from dedicated contributors in the community.
Most Popular Open Source Community
Founded by a group of open source developers and eventually acquired by Microsoft, GitHub is today’s largest host of source code.
Whether you want to contribute to another project’s source code or you just want to start building a public profile of your own projects, GitHub is definitely one of the best places to be.
The free plan offers everything you need to get going by allowing for unlimited public and private repositories. Paid plans start at $7 / month and offer more collaboration and larger storage space.
Best Alternative to GitHub
For a great alternative, Bitbucket provides solid features for cloud hosted source control, code deployment, and integration with other Atlassian products.
Bitbucket has recently tried tackling their competitors by offering better free plans for individuals and small teams.
If you’re new to Git, Bitbucket is more forgiving with the user experience. We recommend pairing your Bitbucket skills with SourceTree (see below).
Favorite Private Collaboration and Tools
As an established product, Azure DevOps has certainly kept up with its younger, more flexible competitors. Previously known as Team Foundation Server, Microsoft has rebranded and improved the user experience.
Like most Microsoft products, the biggest consumers of Azure DevOps are business teams. Free plans offer unlimited private repositories and many other basic developer services. Paid services offer more space, more users, parallel processing jobs, and a lot more.
Favorite Git User Interface
As fast and efficient as Git is, some people just don’t get along with its command line interface. That’s where great tools like SourceTree come into play.
If you’re struggling with Git, this is the perfect tool to understand a typical source control flow. Not only will you build confidence, but you’ll also get code visualization, convenient file differences, and incredible control over your code changes.
For you command line gurus, you still have the ability to drop into a terminal whenever you need more power.
Up and Coming Git User Interface
GitKraken is coming fast and on the heels of its competitors. Its creators have placed a heavy emphasis on a beautiful and intuitive user experience on top of Git.
With the ability to visualize commit history, drag and drop file changes, and view syntax highlighted code differences, it certainly is proving to be an awesome Git UI.
You’re limited public repositories with the free plan. If you want to collaborate on a private repository, you’ll have to jump up to the $29 / year plan. You can get around these limitations if you’re a student.
Code & Text Editors
An engineer is only as good as his or her tools. Carpenters need good hammers. Programmers need good editors. Here’s a quick list of our favorite productivity boosters.
Best Simple and Fast Text Editor
Sometimes you just want the best tool for the job even if it isn’t the most attractive. That’s where Notepad++ steps in. If you’re a programmer, tester, or even just a text editor enthusiast, then there’s a good chance you’ll want to keep a shortcut handy.
If you’re using Windows, there’s few better options when you need to dig into a configuration file, make a quick code edit, or use one of the many plugins to automate text editing tasks.
The best part? It’s free and open source.
Best Free Cross Platform Code Editor
Visual Studio Code is one of those tools that borders on being the best in multiple categories. Is it just a code editor or is it a full development environment? It’s both!
In our opinion, it’s a great choice when you want more than a code editor but not get tied into all the bells and whistles provided by full Visual Studio and Eclipse.
It’s free, works on many operating systems, and has some great features like extensions, debugging, and custom hotkeys.
Fan Favorite and Super Performance
We used to suggest Sublime Text over Visual Studio Code in previous years, but the features and release cadence just haven’t kept up. There’s no free version (only an evaluation mode), and the cheapest purchase price is $80.
So why is it on this list then? It’s been long adored by fans due to its flexibility and customization options. If it has a killer feature that you can’t find anywhere else, then there’s nothing wrong with making this your go-to editor.
Our Favorite Markdown Editor
Whether you’re writing documentation for your shiny new application, or you’re building out your GitHub Pages for your public portfolio, Typora is where it’s at.
If you’ve ever written markdown, you know it’s already very simple to understand. But at the end of the day, you’re still writing extra characters to get the perfect styling. Typora gives you a great markdown editing experience with a minimalistic style that doesn’t get in your way.
When you’re maxing out simple editors, and you’re ready to step up your game, consult this list. Here you’ll find a subset of the best complete environments that will keep your projects organized and running.
Premium Windows Suite
Visual Studio is a code editor, a debugger, a user interface designer, a source control browser, a database architect tool, and so much more.
Like most Microsoft products, it integrates with and works well with other products in the Microsoft ecosystem like Office, Azure, SQL Server, and Outlook.
Given the incredible productivity boosters provided by features like IntelliSense, CodeLens, and the debugger, we consider this the best environment when you’re developing with most languages and frameworks on Windows.
Start with the Community edition (free) and work your way up to the pricier options ($45 / month) when needed.
Most Productive Java Environment
If there’s one thing that IntelliJ IDEA does better than Visual Studio, it’s Java development. Java has a history littered with terrible development environments, but IntelliJ IDEA finally comes to the rescue with super improvements.
While mainly marketed towards Android developers, it also supports general Java, Groovy, and Scala languages.
The Community edition comes with build tools, source control integrations, and a debugger. The paid editions aren’t cheap (starting at $499), but provide for web and database development with some profiling tools.
Best Efficiency for Web Browser Development
Web development has been notoriously difficult to debug across multiple browsers. WebStorm has a built-in debugger that works with most modern browsers.
There’s no free version, but at $59 / year for individual use, it’s hardly breaking the bank when you consider the incredible productivity gains.
Swiss Army Knife of Environments
Originally started as a Java development environment, Eclipse has grown to be a jack of all trades with a massive ecosystem and customization platform.
When you need a tried and true development environment with the ability to adapt to any scenario, Eclipse should be your first choice.
It’s free, designed by an established committee, and definitely gets the job done. Be warned though, it has a history of bad performance and bugs.
It might seem weird to see a virtual machine application in the development environment section, but it makes sense when you think about it for a bit. VirtualBox is essentially a large sandbox that enables you to spin up and tear down environments at will quickly.
Whether it’s developing on an old version of Windows or testing out a niche version of Linux, you can easily virtualize these environments to meet the goals of your development activities.