In 2021, Don't Learn a New Programming Language(sushantsrivastava.substack.com) |
In 2021, Don't Learn a New Programming Language(sushantsrivastava.substack.com) |
Of course, when it's off or weekend days, feel free to swap the rule to 80% learning and 20% to anything else you must do.
Obviously it's just a suggestion, not a mandatory task, but hey; whatever works for you, isn't that right?
But the really surprising thing is how much they affected how I think about software overall. You know, at work I’m busy trying to build things. But taking a step back to understand what computation really is has been so helpful for even the code I’m writing on a daily basis.
Specifically with Alloy, which has an awesome state viewer, you can use it as a tool for prototyping ideas really quickly. It does suck that you can’t take that and use it to test your actual code, but I have ideas there :)
Anyway, yea I can’t recommend those tools enough. I think specification will grow in popularity soon - and no that doesn’t mean specifying your whole program up front. It’s totally possible to spec a program out iteratively. The value is huge - we write user stories and have product docs somewhere which explain what it is we’re building, but they get completely discarded after building. Having a highly simplified description of what a piece of software is expected to do is invaluable, especially as members come and go on the team. Agreed. In 2021, we don’t need another programming language. We need to master the tools and processes that we have.
I've found that having other languages than my workaday ones in my repertoire is a valuable part of the cap of the T -- although it's certainly not the only kind of thing that should be there.
Two and a half years ago I felt stuck working with only dynamic languages most of my career so I started learning Rust. Now I have an extremely powerful tool in my belt that solves problems that most dynamic languages cannot solve [adequately].
But I'm not going to learn yet another dynamic language if that won't make me any money or expose me to a new way of thinking, no. Nor will I relearn C++.
Furthermore, if I make a comeback to JS then I'll prefer to learn TypeScript and pick the most productive tools for it (Parcel struck me as mostly getting out of the way).
I get the overall sentiment of the article even if it expresses it rather poorly.
It has a good point, though; many of us the programmers are rather capricious and spoiled and get distracted by new shinies -- as opposed to learning several skills deeply and be then very useful to the business we're serving.
We easily forget that we do what we do for money.
That is good. I do not want to remember Java and Kotlin.
Use holistic profiling like https://twitter.com/OptimyzeCloud/status/1351203905850519557
When you see performance issues then dig into your language stack and learn how to remediate them.
In any case, Java, and especially Kotlin are quite tolerable with IntelliJ. It is a great IDE for those two at least. Plus I get paid, which is also a motivator... :D
[1] Truth be told, it is difficult to keep that sanity because I dislike the OTP documentation. I am reading books instead. I already know what their "target_system" does anyway, I modified it a lot for my use case but I reverted it because I thought it would be more of a hassle in the end.
Plus, macros (basically, generators of code). How can you say no to that?
You will always have something that you don't know. Took me a loooong time to get over it. Try and short-circuit this struggle because it would otherwise never end.
I also have anxiety about my health when I notice something out of the place, but that is a different sort of issue. I remember when outside there were construction workers and beneath me the floor moved and I almost had a panic attack because of it. At first I did not know it was caused by them, I thought something was happening to me. It got better when I realized it was just them.
Doesn't that make it a little better?
I get what you mean with performance anxiety -- my last job kind of ended because I felt a severe impostor syndrome. But eventually it turned out it wasn't only that; I was forced into rituals and ways of work I didn't enjoy so the job couldn't possibly work. Realizing this instantly made me feel better.