Kielo
Best learning resources for a new programmer
Hi,
I run a language learning blog and would like to learn how to code so I can create an app to help English speakers learn French.
I know HTML and CSS as well as some basic JavaScript. I frequently use my CSS/HTML/skills to improve my blog but don’t know much about programming otherwise.
I’m currently 70% through Michael Hartl’s Rails Tutorial and want to finish it because it’s working great as an intro to programming.
But I’m considering switching to Elixir once I’m done with the rails course because I find it much more exciting than rails.
I finished Joy of Elixir a while ago and found Elixir really fun and logical. I also did half of the pragmatic Studio course. I also find the Elixir documentation amazing and way easier to understand than the Rails’ documentation.
But I’m not sure what to do next. I learn best by doing but I also need some guidance so I don’t pick up horrible coding habits along the way.
I’m considering the followings books because they seem the best suited for someone new to programming.
- Learn functional programming with Elixir
- Phoenix in action
My main worry is that they haven’t been updated in a while. I’m also considering Elixir in Action and Programming Elixir but am worried they may be too advanced for me.
I’m also considering this course:
https://www.knowthen.com/elixir-and-phoenix-for-beginners/
My goal would be to follow along the courses and books and also build my app in parallel to get some practice.
Would you recommend this course of action ? Are these resources the best choice for a beginner or would you recommend something else ?
Thanks
Most Liked
tme_317
Yes, in practice everything has been so much faster using LV rather than the SPA I was writing at the time… it was a major reason Chris wrote LV in the first place as he talks about in the excellent video at ElixirConf 2018 when he introduced it to the world!
I remember the same week I watched his conference speech I dealt with a very simple requirement to break full_name into first_name and last_name fields… and I realized how many times in my app first_name or firstName was defined from the DB/migration, schema, context, absinthe schema and mutation, apollo, react component tree, tests, etc… so much of it was plumbing data from the backend to the frontend. By keeping the data/schemas/validation logic all server-side it is MUCH faster for me to deal with changes like this without having to touch a dozen files.
This video from the Rails ecosystem also resounded with me… especially when Sam says “Guess what? You’re not Google. You’re not Facebook”. As a solo we don’t have massive teams of specialists… frontend, backend, db, devops, etc. LiveView is such a major win for us optimizing speed to market and lessening complexity!
kokolegorille
Hello and welcome,
Learning Rails will teach You a lot about MVC pattern. Those are knowledge You can port them to Phoenix, because it’s similar.
Except for the language, the main difference is Ruby use Object Oriented Programming, Elixir Functional Programming.
It’s like night and day…
Yes fun, like fun in functional.
If You are new to programming, your plan is very suited. Maybe You might learn the latest Phoenix, because it brings new concept to the table, liveview in particular.
There are free introductions
Some free at
and book also, if You prefer to read.
I need the opposite, french to english ![]()
dokuzbir
Your programming journey is very similar to mine. Html, css, sass, rails, ruby, elixir, phoenix, erlang, javascript, jquery, react, nodejs, react-native etc… many specific tools and languages. For a new programmer language specific tutorials or books are like a trap.
My advice is learn how to design code before everything. Clean Code - Robert Martin is a good book for that.
This is a good article to read.
Popular in Chat/Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance








