4 ms·
You mention you are a loyal C developer. As someone who learned C as my first language and used it for years (along with C++ and Java), I found I enjoy programm
by lastofus 11y ago
You mention you are a loyal C developer. As someone who learned C as my first language and used it for years (along with C++ and Java), I found I enjoy programming significantly more when I'm using an expressive high level language like Python.
When it becomes 10x easier to express complex ideas and algorithms with a fraction of the code by making use of built-in language features, it's a breath of fresh air. The huge ecosystem of easy-to-use libraries for most anything doesn't hurt either. I can enjoy focusing on the problem I'm trying to solve instead of how to structure my code, what design pattern I should be using due to a limited static type system, how best to avoid memory corruption or seg faults, etc. It's akin to writing pseudo code, and then having it execute.
Another great thing about Python in particular is that it ends to be extremely easy to read other people's code due to semantic whitespace and also by language design of there only being one way to do things.
If Python turns out to be your thing, it's popular in data science/machine learning. If you lean in that direction, you may be able to work more on some complex math/stats problems and less on writing/maintaining large low-level codebases.
Also, that feeling that your code is not perfect is really common. I've been programming for ~20 years and it has never gone away. What's helped me a lot is focusing on the end result of the product, and its impact on the business and the value it creates. As someone who wants every line of code to be error free, as performant as possible, and properly structured, I find comfort knowing my "good enough" solution (and sometimes not-so-good solution) is making business owners and end-users more than happy.