Moving from JS to Ruby (and planning to amp up the Python+)
Our last Chipy Mentorship night was amazing. We heard 9 of the other program participants present their work and their learnings from the past several months, and I am humbled.
Learning by Deconstruction
I presented on a topic related to learning programming. As a a new junior developer, I’ve been recalling my first language-learning spree. It was the summer of 2011. I started drinking coffee and learning Russian at 6am on a daily basis out of sheer curiosity and hunger. The easiest part was surprisingly the Russian alphabet — in a week I could pronounce everything I saw in Russian, minus a few quirks in the language and disregarding actual dialectical nuance.
Learning code this last year has felt similar. All of this syntax and a false confidence — what can you do with just syntax? What use is knowing just how to pronounce Russian, or more recently, knowing just how to write Python exercises? I reached that same point in learning to code, where making sense of things, figuring out semantics, not just syntax, and creating real applications, all of this has become super important to my learning.
That said, having done so much learning the early stages of languages, I realized I could use some best practices to share how to make the transition to real programming (or real conversations) as swift as possible. Last night the best practice I referred to was “Meta-Learning” from Tim Ferriss’ 4-Hour-Chef. (This is one of Tim’s best books, so definitely do yourself a favor and pick it up! https://www.amazon.com/4-Hour-Chef-Cooking-Learning-Anything/dp/0547884591)
So my presentation took 3 ‘sentences’ in 4 programming languages to compare and contrast them, with the intent to uncover as much syntax of each language as quickly and efficiently as possible. Please check out the video when it is released on Youtube of my presentation. I’ll update the post when it’s released. Be sure to watch the other talks from that night the other mentees did amazing work and it blows mine out of the water!
What I have been learning
We finished our instruction and projects using (most of) the MEAN stack. This project was collaborate. My partner and I came up with a web app that allows independent donors to list items they have available to give away and it allows for school to list out items they are looking for. Check out the repository for the project here.
Now we are learning Ruby. We finished learning how to spin up an MVC on Sinatra, and I’m excited to be learning Angular next week. My impression of Ruby has been very positive. I enjoy the simplicity and also the bells and whistles it has. So many methods. I think it will be very interesting to practice lots of Ruby and then come back to Python to relearn how to solve similar problems in Python.
My Chipy mentor Jordan (he is sadly my ‘former’ mentor now but has graciously offered to keep an eye on my code! Hurrah!) talked at length about the book he is reading, Effective Python, and by the sounds of it, that’s where I want to go next with Python. Also based on a conversation with another mentee after Chipy ended, I am very excited to give Django another go. If you follow my GitHub, the amount of Django on it will be much less sad come fall!
Next on the agenda:
To reiterate, I want to get a Django app up and running this fall. I definitely hope to do more reading and heck, maybe I’ll even start practicing my flute again (thanks for the encouragement, Jordan). All this thinking about learning through deconstructing multiple languages has got me inspired to immerse more into both Ruby and Python as well as possibly furthering my C# (or plain-old C) knowledge.
All of that is admittedly long term say, a 6-month endeavor. In the next couple of weeks though, I want to make my upcoming project continue in the theme of school, teacher, or student support (stay tuned!), and I want to get better at coding challenges. Loving codewars.com right now!