I know for myself personally, I had no idea what the life of a programmer entailed, much less what tools they used on a regular basis to develop software. I thought it might be interesting to share what tools I use as a developer. These are solely my favorites as of the time of writing this post, and are based on my personal preferences.
This is a very important, and often understated, part of a developer's toolkit. Depending on the type of development you do, you can get by on the cheapest of laptops; however, just as a Nascar racer would not drive a VW bug, experienced developers understand the need for a machine that fits the environment the best. For me, that is a laptop that runs Mac OS-the 2018 Macbook Pro. There are very, very many reasons I choose Mac OS over Linux and especially Windows, but I will have to save that for an entirely separate blog post. :)
Text editors are a crucial element, and merit a mention on this short list. What makes a good text editor depends on your needs as a developer. There are some very slim, lightweight text editors that suit very fast coding with fewer distractions. Heavyweight text editors called IDEs are used by hardcore developers in very particular languages. You don't need a hardcore IDE for learning to code. The text editor/IDE hybrid I use is an open source (free) software program from Microsoft called Visual Studio Code.
As on any team, collaboration is a must. Developer teams, such as scrum teams or open source teams, need a way to collaborate on one body of code. We do this through git, which has historically been the easiest way to collaborate on projects. You add git to your coding project, create a "master" branch where the production-ready code lives, and then anyone and their dog can download the master code and make changes on their own separate branch, and then merge it back to the master branch based on merit judged by the owners of the master branch. The main website used to manage git repositories is Github, but there are other popular ones like BitBucket.
This isn't a developer-specific product by any means. Asana is the web-based application I use to keep track of my projects and my to-dos for each project as well as milestones that signal project progression. It's a very well-designed tool and I recommend it for any team. There are many others out there like Microsoft Project and OmniPlan.
A coder never stops learning. The best way to enter a new world of technology is through learning by industry professionals. On PluralSight, courses on programming languages, topics, and softwares are taught by professionals and experienced users. I use PluralSight to learn about AWS, web development using the JAMStack, and many other things. I recommend this to beginners and experts alike, it is a very well-made learning and education platform.