Dev Tools That

Written by simranjitkamboj | Published 2018/07/14
Tech Story Tags: developer-tools | productivity | programming | software-development | mobile-app-development

TLDRvia the TL;DR App

Having the right tools at your disposal can really help you become a productive developer. I have come up with a list from the tools that I use on a daily basis and some that I have come across and found useful but did not end up using as much (but that’s only because my projects had different requirements).

This list of tools came about from my development of Clipit: Digital Coupons. I wanted to be as productive as possible and stay on track!

Command Line

  • ConEmu

ConEmu is my go-to choice as my Windows terminal. You can customize the colours, open multiple tabs, and run multiple apps, like PuTTY. I even run Git Bash within ConEmu.

Website: https://conemu.github.io/

Price: Free

Platforms: Windows

Source Control

  • GitHub

I use GitHub for all of my projects and have done so since I started programming. I am a student at the moment, so I am able to get private repositories for free, so, I chose to stick with GitHub. GitHub is based on Git.

Website: https://github.com/

Price: Free for public repositories. $7+/month for private repositories

Platforms: Windows, Mac, and Linux (using Git). The desktop application is available for Windows and Mac

  • Bitbucket

Bitbucket is just like GitHub. It’s mostly just a personal preference that I use GitHub. The biggest difference is that Bitbucket provides private repos for free while GitHub doesn’t. Atlassian also has a lot of different tools, such as Jira, Trello, Bamboo, and Source Tree, which means that a lot of the tools integrate into each other, creating a productive and efficient workflow.

Website: https://bitbucket.org/

Price: Free for public and private repositories. $2/user for unlimited users.

Platforms: Web through Bitbucket. Desktop through Git GUIs, such as Sourcetree

Git GUIs

  • Github Desktop

I mainly use command line for my Git needs but when I need to see something visually, I use GitHub Desktop or Sourcetree. You can see the changes you have made with ease, fetch, commit, and more without touching the command line.

Website: https://desktop.github.com/

Price: Free

Platforms: Windows and Mac

  • Sourcetree

Sourcetree is another Git GUI. It has more features than GitHub Desktop for sure and the workflow is also better. You should try out both GitHub Desktop and Sourcetree to see what works better for you. These are the two that I am familiar with but there are others as well, such as GitKraken.

Website: https://www.sourcetreeapp.com/

Price: Free

Platforms: Windows and Mac

Code Editor

  • Visual Studio Code

I always use VS Code when working on web projects. It has so many different plugins that make my life that much easier. You can customize folder icons, code themes, autocomplete for various frameworks, and so much more. It has built in VC as well, which makes it easy to push your code to source control. The search is also extremely fast, even when you have multiple projects in your workspace.

Website: https://code.visualstudio.com/

Price: Free

Platforms: Windows, Mac, and Linux

  • Notepad++

Notepad++ is another one that I really like. It is not fancy by any means but very light weight and gets the job done. I use it for making quick changes to files, opening projects that I don’t necessary want to add to my VS Code workspace, and just taking notes. VS Code is my main editor but I always find Notepad++ to be useful.

Website: https://notepad-plus-plus.org/

Price: Free

Platforms: Windows

Continuous Integration

  • Travis CI

Travis CI lets you test and deploy your code with ease. You don’t have to wait for a large change in your code before it is merged into your source code but rather, you can push small changes continuously and Travis CI will make sure to run tests and let you know if there are any issues that need to be addressed. Continuous integration definitely makes it easier for large teams to work together without breaking the project.

Website: https://travis-ci.org/

Price: Free for open source projects. $69+/month for private projects

Platforms: Web

  • Jenkins

Jenkins is an open-source automation server which can be used for testing, deploying, and delivering. Jenkins is my preferred tool to automate server tasks to test and deploy. The best part is that it’s open-source.

Website: https://jenkins.io/

Price: Free

Platforms: Jenkins can be installed through native system packages, Docker, or even run standalone by any machine with a Java Runtime Environment (JRE) installed.

Automating Mobile Deployment

  • fastlane

fastlane is an amazing tool for automating mobile builds and releases. I use it to build and release my iOS apps to TestFlight. It takes care of the tedious tasks, such as increment the version number, updating the screenshots, and code signing.I have a tutorial if you need help setting up TestFlight with your Ionic applications (most of the tutorial is pretty general and would work with native apps too): https://medium.com/@clipitapplication/fastlane-ios-ionic-2-3-tutorial-e46d0d6b5943.

Project Management

  • Basecamp

After having tried many different tools, such as Trello, Favro, and Asana, the one that worked best for me was Basecamp. I really enjoy how streamlined everything is. You can avoid a majority of meetings by setting up automated check-ins for the entire team. Each project is basically its own page, with documents, schedules, a chat area, messages, and to-dos. Basecamp also has Hill Charts if you want to visualize the progress of work being done.

Website: https://basecamp.com/

Price: $99/month for unlimited users, projects, and 500GB of storage

Platforms: Windows, Mac, iOS, Android, and Web

  • Trello

Trello is another great project management tool that was recently acquired by Atlassian. It offers tons of features, called Power-Ups, which are add-ons such as accessing Google Drive documents directly from boards, GitHub Autosync, and Slack webhooks. Those are just a few among the dozens that are offered. It was a personal decision of mine to go with Basecamp because the workflows are definitely different between the two and Basecamp’s just worked better for mew.

Website: https://trello.com/

Price: Free with unlimited boards, 1 power-up, and attachments up to 10 mb. $9.99+/user/month for unlimited power-ups, control user access, and get priority support

Platforms: Windows, Mac, iOS, Android, and Web

Communication

  • Slack

Slack is one of the best communication tools whether your team is 10,000 strong or 2 people. You can create channels for different projects and events, share files, images, gifs, and automate almost anything that you want. You want to create a bot that can tell you how to get to a meeting room on a floor you’re unfamiliar with? You can create one in Slack. Actually, I use one to do that almost every week because I can never remember where a certain room is. In my opinion, the communication section does not really need another contender because Slack is an all-rounder. There are other tools such as SocialChorus and those are really great as well but do not solve the same purpose that Slack does.

Website: https://slack.com

Price: Free for small teams with a limit of 10k of the most recent message being searchable. $6.67+/user/month for unlimited message search, multi-user video and voice calls, and more.

Platforms: Windows, Mac, Linux, iOS, Android, Windows Phone (beta), and also available on the Apple Watch

API Development

  • Postman

Postman is great for API development. The tool lets you easily design, test, and publish APIs through a well thought-out user experience. It allows you to monitor your APIs to ensure they aren’t facing downtime, automate tests, and document the different endpoints. The best part is, you can share your Postman APIs with other users and allow them to run it within Postman.

Website: https://www.getpostman.com/

Price: Free for up to 1,000 monthly calls. $8+/user/month for more than 100,000 monthly calls, single sign-on, and more

Platforms: Windows, Mac, and Linux

  • Paw

Paw is another great tool for API development. It has a nice user interface for testing endpoints, documenting APIs, inspecting server responses, and exporting API definitions. The only downside to Paw is that it’s exclusive to Mac. It allows you to work as a team on the same endpoints with the tests and configurations being synchronized across all members.

Website: https://paw.cloud/

Price: $49.99 for one user and up to 3 machines at a time. $10.99/user/month for Paw for Teams

Platforms: Mac

Code Quality Check

  • SonarQube

SonarQube is a continuous inspection tool that looks out for bugs, vulnerabilities, and code smells. It can be integrated with almost any project, with support for over 20 languages. SonarQube can be integrated with many different tools, such as GitHub and Bitbucket. I personally use SonarQube after making any changes and before deploying anything to production so I can fix what needs fixing. Best of all, it’s all open-source.

Website: https://www.sonarqube.org/

Price: Free to run locally. Free to run in the cloud for open-source projects and €10+/month starting at 100k lines of code

Platform: Windows, Mac, Linux, and Cloud

  • Codacy

Codacy is an automated code analysis tool, similar to SonarQube. It helps identify code duplicates, issues, code coverage, and code complexity. It also helps you keep track of your progress throughout the development cycle of any source code to see how issues are resolved, how often duplicate issues show up, and much more. I personally prefer SonarQube because the functionality is very similar and SonarQube is a more developed platform.

Website: https://www.codacy.com

Price: Free for open source projects. $15+/user/month for private projects

Platforms: Cloud

Icons

  • Feather

Feather provides 300+ beautiful open-source icons. I use them a ton for my projects and hope they help you out as well!

Let me know what tools you guys use the most and which one’s from this list you like. I will look into the tools you recommend to add to my own workflow or for recommendations when I decide to update this list. Best of luck being productive developers!

Recommendations from readers:

  • Daily — Developer’s Secret Source

Daily allows you, as a developer, to keep up with the latest news on software development through an extension in your browser. I have tried it out and the user interface is quite nice and not distractive. You get the news quickly and then you’re free to move on to your work!

Website: https://www.dailynow.co/

Price: Free

Platforms: Chrome and Firefox


Published by HackerNoon on 2018/07/14