Dear Anonymous,

I felt compelled to write you a note regarding your thought that Python is only for data scientists and certainly not for everyone. I strongly disagreed with that idea, and although I didn’t get a chance to clearly explain why, I feel like you could benefit from my perspective, so please read on.

A little over a year ago, I started showing interest in software development, and a good friend of mine mentioned something about pillars and software development, well, I’m not sure if I ended up in the right place but I landed here and that was the start of an exciting journey for me as I ended up on the freeCodeCamp. I worked through the HTML course and eventually stumbled upon Dr. Chuck’s Python for Everyone course and the rest is history.

That one course opened up the Pandora’s box of software development. Since then, I’ve worked on numerous projects, utilizing various paradigms, frameworks, and languages to build varrying projects, including:

  • CLI tools and scripts written with Node.js or Python
  • C++ sketches for Arduino circuits
  • Building a Diablo 2 runeword calculator with ElectronJS
  • An OSRS Grand Exchange lookup using React and Express with my buddy’s C# API
  • The very same site you are reading this letter on, utilizing Ruby and Jekyll

My point is that for many of those projects, I’ve used Python for various different use cases. For example, I copied and pasted a deeply nested table from Pure Diablo containing all of the information I needed for my runeword calculator. Then, I used Beautiful Soup - one of the many libraries known to Python - to transform the data from the table into some custom JSON that I use locally for my Electron app; which was in fact prototyped as a CLI tool written in Python.

Clearly, this specific use case is more than a web scraper. Python is a versatile tool that can be used for a wide range of tasks: automation; using simple libraries to make everyday tasks quicker and easier; prototyping tools and software; web servers; building data structures for software development - you name it.

It’s okay to take pride in your craft, but you need to understand that there are many tools in the toolbox and countless ways to solve a problem with them.