AstonJ

AstonJ

The "Work out what you want to learn next" thread!

The dev world doesn’t sit still, in fact it is probably one of the fastest paced industries around - meaning to stay current we are continually learning and honing our skills.

Luckily for most of us, we have a natural tendency towards investigating what’s new and pushing the boundaries to improve on what was before and what we’re doing or want to do next - it’s this striving for innovation that keeps driving the industry and the technology we use move forward at a lightening pace (the pros and cons of which we could probably discuss in another thread :laughing:).

So this thread is for when you want to thrash out ideas and thoughts on what to learn next - who knows, perhaps someone will nudge you in a direction that you didn’t first think of, or maybe you will inspire someone to follow or join you in your journey… because it’s much more enjoyable (and sometimes tolerable!) when you do things together after all :blush:

Most Liked

dimitarvp

dimitarvp

Focus has been a huge problem for me ever since I work as a programmer (so 19 years and counting). For the first time in my life I am seriously questioning my generalist approach and I want to focus some more and have several deep skills. Working on it but it’s extremely challenging to reprogram your own brain. It’s a daily battle.


What I am learning currently

  • Erlang/Elixir's OTP in more detail. It’s a ton of fun. I think I should rework some of my experiments into small demo projects on GitHub. They could be useful as a teaching material to others.
  • Rust to the maximum. It’s a constant fight that hasn’t stopped for ~2.5 years, on and off. Some of Rust’s concepts, especially the lifetimes, just take a while to settle in my brain.
  • Any and all data analysis and visualization command-line tools. Just today I discovered jp and miller and already used them for basic histograms and bar charts right there in the shell. Loved it! But also xsv, jq, yq and a ton of others! When I finally start blogging, I’ll have an entire section dedicated to such immensely useful tools.
  • Home servers, owning your data, and ZFS in particular. I bought a cheap and quiet home server and tinkering with it is (usually) a joy.

What I want to learn in the future

  • OCaml. The language and the compiler are amazing. The compiled binaries are faster than Golang and little slower than Rust – quite the achievement! The community does not seem very welcoming though. Plus some basic features aren’t there, like first-class UTF-8 strings. But I’ll still learn it. For quick scripting at the very least.
  • A subset of the modern JS and CSS tooling. I want to be informed how do people actually bundle, minimize, optimize and remove dead code when working with JS and CSS. And to be able to deploy my own websites using those tools.
  • More command line tools for processing, analyzing and visualization of data. I want to be able to almost not reach for scripts if such a thing is even possible. I want to have a lot of tools in my belt!
  • Containerization technologies and maybe their deployment. Namely Docker/Podman and optionally Kubernetes/Nomad. It’s obvious they are not going anywhere and are used more and more. I want to become comfortable with them (even if Kubernetes is a nightmare incarnate and needs tons of accompanying tools if you want to get anything done with it, and to save your sanity).

What I probably should learn but don’t care much about

  • Elixir's Phoenix and Absinthe in detail. Even if all of my Elixir work revolves around one of these two, I always kind of [re-]learn them on a good-enough level and just move on to the real interesting work which is the business logic and the proper organization of code. Now don’t get me wrong, I’ll orient myself in any Phoenix/Absinthe project and will be productive within the day. It’s just that I am beginning to think that I am just not into some of the plumbing technologies…
  • Modern JS and TypeScript. Yeah, it would probably add extra potential money to my career but I can’t bring myself to learn those. I don’t want to.
  • Kubernetes. My last job made a heavy use of it. I believe I hated it for life but who knows, I might get around to it.
Exadra37

Exadra37

What about learning Elixir:

  • build highly concurrent and distributed systems
  • build amazing realtime apps.
  • learn how to use LiveView to build single page applications without the need to write too much javascript your self.
  • the new upcoming possibility of running Elixir in the GPU’s.
  • and much more

I have I sold you on it :innocent:

davearonson

davearonson

Do you have any idea what you want to do? Frex, do you want to write web, mobile, desktop, command-line, or some other kind of apps, or OSes and their associated utilities, or something else entirely? That can help narrow it down. If you’re “into” some particular ecosystem (e.g., Windows, Mac, or Linux), that can narrow it further by indicating or excluding things; frex, if you want to write mobile apps and you’re into Mac, Swift is the obvious choice.

Alternately, if you’re casting about for a programming language to learn, you could try learning whatever is most different from what you already know. Done a lot of duck-typed OO scripting languages? Try a strongly typed functional or imperative compiled language. There may be such a thing already out there, but you could compose a list of the top twenty or so popular languages, marked by whether they’re OO/FP/imperative/logical/declarative or whatever, strongly or weakly typed, statically or dynamically typed, interpreted on the fly or compiled and linked ahead of time, and so on. That will make it easy to check whether your knowledge is missing some particular option in any column. Try to cover them all, and then if possible all combinations. :slight_smile:

Where Next?

Popular General Dev topics Top

AstonJ
Thought it might be worth having a dedicated thread for standing desk treadmills (for those interested, here’s our general thread on stan...
New
AstonJ
Always interested in seeing what apps people use and how they organise their phones/home screens! Here’s mine…
New
New
AstonJ
Inspired by this post from @Carter, which languages, frameworks or other tech or tools do you think is killing it right now? :upside_down...
New
AstonJ
Do the test and post your score :nerd_face: :keyboard: If possible, please add info such as the keyboard you’re using, the layout (Qw...
New
jss
What do people think about Data-Oriented Programming, like this book tackles? https://www.manning.com/books/data-oriented-programming Ho...
New
TwistingTwists
Hello Fellow developers, I have been trying to wrap my head around How difficult would it have been to be a dev 20-30 years ago? I have...
New
foxtrottwist
A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tab...
New
Exadra37
Your users of the two forums are spread across the world, thus I am curious how did you solved it?
New
harwind
I’m working on a C++ program where I need to convert a string containing a numeric value into an integer. I want to ensure that this conv...
New

Other popular topics Top

DevotionGeo
I know that these benchmarks might not be the exact picture of real-world scenario, but still I expect a Rust web framework performing a ...
New
brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
AstonJ
I have seen the keycaps I want - they are due for a group-buy this week but won’t be delivered until October next year!!! :rofl: The Ser...
New
PragmaticBookshelf
Create efficient, elegant software tests in pytest, Python's most powerful testing framework. Brian Okken @brianokken Edited by Kat...
New
AstonJ
Biggest jackpot ever apparently! :upside_down_face: I don’t (usually) gamble/play the lottery, but working on a program to predict the...
New
PragmaticBookshelf
Author Spotlight James Stanier @jstanier James Stanier, author of Effective Remote Work , discusses how to rethink the office as we e...
New
New
PragmaticBookshelf
Programming Ruby is the most complete book on Ruby, covering both the language itself and the standard library as well as commonly used t...
New
AstonJ
This is cool! DEEPSEEK-V3 ON M4 MAC: BLAZING FAST INFERENCE ON APPLE SILICON We just witnessed something incredible: the largest open-s...
New
mindriot
Ok, well here are some thoughts and opinions on some of the ergonomic keyboards I have, I guess like mini review of each that I use enoug...
New