Programming Language Learning List (2021)

  1. Elixir
  2. Ruby
  3. Clojure
  4. Rust
  5. Kotlin (or Scala, Swift)
  6. Haskell

1. Elixir

Goals:

Frameworks to try:

Hack Ideas:

2. Ruby

Goals:

  • Try out Ruby 3.0
  • Learn the zen of Ruby
  • Solve problems more elegantly.

Things to try:

  • Ruby Koans
  • Hotwire: HTML over the wire https://hotwire.dev
    • Approach to send HTML over the wire
    • Powers HEY
    • Libraries: Turbo (core), Stimulus (integrate js code), Strada (for native mobile)
    • DHH's Twitter)

An alternative approach to building modern web applications without using much JavaScript by sending HTML instead of JSON over the wire. This includes our brand-new Turbo framework and pairs with Stimulus 2.0

3. Clojure

Goals:

  • Learn how to think and solve problems with data transformation
  • Learn how to do Functional Programming with data transformations

Things to Try:

  • Clojure Koans

4. Rust

Goals:

  • Get into more low-level stuff.
  • Code with high performance and low resource utilization in mind.
  • Understand how Ownership, Borrowing, and Borrow Checker works.
  • Create cool tools with Rust!

5. Kotlin (or Scala, Swift)

Goals:

  • Try out a very production-ready and elegant programming language that is still very focused on performance.
  • Try out a programming language that is very commonly used in production for mobile and backend development.

6. Haskell

Goals:

  • Really understand Functional Programming to its core.
  • Learn to think in mathematics.
  • Learn how to model computations more clearly.

My complete list