Free Tools for Developers You Might Not Know
Here’s a list of resources, in no particular order, that we’ve tested at Develer: some we found very useful for our software development activities and are still using. Others simply caught our attention because they were curious or interesting. Most of these tools are not only free but also open source.
did Who always remembers to log their hours? 😃 This handy tool reports personal activities by week, month, quarter, year, or a selected date range.
👍 Depending on the configuration, it tracks the user’s activity across specified tools within the chosen time frame. For example, it checks all configured git repositories for the list of commits or contacts Bugzilla to find created, modified, or closed bugs.
📖 GNU GPL
Earthly is a build automation tool. You can use it to create Docker images and other artifacts like binaries and packages.
👍 It abstracts the languages/tools used in your builds, making it very useful when you need to combine multiple elements.📖 Mozilla Public License 2.0
Firefox Profiler is a web interface for the Linux perf profiler, developed by Mozilla.
👍 Tip: add --call-graph dwarf
to perf record to get the function names.
📖 Mozilla Public License 2.0
KDAB GammaRay. A really useful tool for Qt developers. It enables real-time QML debugging, runtime inspection of all QObjects, and the ability to emit signals synthetically to simulate them or set the value of any Q_PROPERTY from the UI.
👍 It provides tons of useful interactive views.
📖 GPL
Movfuscator is a single-instruction C compiler that “compiles programs into mov instructions, and only mov instructions.”
👍 We mention this more for its theoretical value than for its practical utility.
📖 BSD
PlatformIO. A collaborative development platform for the embedded sector.
👍 Supports Qt Creator
📖 Apache-2.0
DistroSea is a website where you can test numerous Linux distributions online. It was a bit slow when we tried it.
Pagespeed is the web UI version of Google’s Lighthouse, and it’s useful for testing the performance of public web pages.
👍 It also evaluates Core Web Vitals.
Rich Result Test. Another Google tool that allows you to check if your web page correctly reports structured data.
👍 You can test the code before publishing it.
httpbin is a Swiss Army knife for testing common cases when interacting with a web server. If you want to conduct simple experiments, it can be tedious to write a custom server that responds to the most common requests. httpbin comes with everything you need for basic testing, helping to ensure security during development.
👍 It’s an open-source project that is also available via Docker, so it can be easily launched locally without requiring a development infrastructure to be installed.
📖 ISC (similar to BSD)
CyberChef is also a low-level Swiss Army knife, a tool with many functionalities: it’s a web application that allows you to try out many encoding and encryption algorithms in real-time, from simple ones like base64 to more complex ones like PGP, without forgetting linters or minifiers. We recommend using it to quickly test these algorithms before implementing them.
👍 It offers a wide range of features.
📖 Apache-2.0
bitbar For Mac users, we found this tool very useful because it allows you to integrate the output of a command-line tool into a system component – the macOS menu bar – very quickly. It also provides a list of ready-made plugins that give access to integrations with developer tools like CircleCI, AWS, JIRA, Travis, and Cloudflare, as well as generic integrations like mail, news, etc. We used it to keep an eye on our builds on CircleCI to be informed of any issues with committed code.
👍 Simplicity and integration with many tools.
📖 MIT
JSON for modern C++. There are many JSON libraries out there, but we are pleased to highlight this one by Niels Lohmann for its extreme ease of use.
👍 Ease of use and adherence to modern C++.
📖 MIT
Clazy is a clang plugin (can also be integrated into Qt Creator) useful for those working with Qt libraries, as it checks the code and issues more than 50 warnings related to best practices with these libraries.
👍 Useful for developers using Qt libraries.
📖 LGPL-2.0
Hexdump. Not exactly new, but it’s a C++ program that is always useful for any developer. It allows you to inspect the content of a file in hexadecimal format, optionally with an adjacent ASCII representation.
👍 It’s particularly useful for identifying file formats.
📖 LGPL-2.0
Compiler Explorer. An interactive online compiler that allows you to view the Assembly code generated from a program compiled in C++, Rust, Go, and many other languages. It lets you select different compilers and versions, comparing the generated code.
👍 Supports numerous languages like Go, Rust, and D.
📖 BSD-2.0
Insomnia is a GraphQL and REST client available for Mac, Windows, and Linux. It is a valid alternative to the well-known Postman, allowing you to navigate the GraphQL schema and perform autocompletion of parameters in requests. It also has the concept of environments.
👍 Although the commercial version is more complete, the open-source version is sufficient for most needs.
📖 MIT
jq. A very flexible command-line tool for processing JSON data, for example for searches, insertions, and extractions. It’s a single binary with no dependencies (you can simply copy it where you need it and use it, useful for embedded Linux systems). It’s extremely powerful, allowing advanced manipulations of JSON data. Even basic usage is extremely convenient: it formats (and colors, if the terminal supports it) the JSON you feed it.
👍 It’s a static binary and extremely powerful.
📖 MIT
Project Manager. A Visual Studio Code plugin that’s highly useful for managing your projects. You can define projects or choose automatic recognition of Git, Mercurial, or SVN repositories, VSCode folders, and detection of any other folder.
👍 Adds missing features to Visual Studio Code for navigating multiple projects.
📖 MIT
Got any tools to suggest?? Write to us at redazione@develer.com or comment on the post on social media.