Random Turing Ask Me Anything
Recently a current Turing student reached out with some questions. I thought I'd share them along with my responses! Don't worry I didn't completely lose my mind like I did with the infamous TFA incident of 2024. Unlike TFA, I love the Turing School of Software and Design and encourage everyone to donate to keep the program going.
Other than Very Normal, what are some other personal projects you are working on? How do the skills you learned during Turing come into play?
Aside from verynormal.info, there is also verynormal.dev which I use for hosting personal projects. Right now, I'm working on a time tracking tool which helps me check that I'm spending my time in a way that aligns with my values. Earlier last year I put together a little math game to teach addition facts.
I often reach for Rails when I'm building personal projects. I learned Rails at Turing, so as a result it's the framework that I really have the best intuition around.
In general, I pick personal projects that bring me joy. I'm not looking to build anything commercially viable at the moment. Often writing is the thing that sparks the most joy.
(I know this question likely leads to biased answers, but:) What are some invaluable (possibly universal) skills that you believe most software engineers should know that Turing does not teach?
The Turing School of Software and Design gives us good intuition about code - keep methods and classes small, write tests, model-view-controller and RESTful routing etc. But, what's challenging going into software engineering is how to develop good intuition about production systems. Practically that means reading, testing, and understanding code that you did not write. It also means using logs and database queries to interrogate the system.
Learning Rails has been a bit of an overwhelming task for me. I'm finally getting some of the basics down, but every step feels uncertain. Do you have any tips or resources that may help, or is this overwhelming feeling and uncertainty going to go away over time?
Learning Rails is hard. I struggled a lot in Mod 2, which was when I was introduced to the framework. It's different than learning Ruby because a lot of the initial learning curve is understanding where things go. Convention is the beauty of Rails, but it is also something that we must simply force ourselves to learn through practice.
Another nice thing about Rails is the community surrounding the ecosystem. There are great tutorials and learning resources out there that I reach for.
- LLM's like Claude and ChatGPT are great because Rails is well established in the training corpus.
- Go Rails is the gold standard for Rails tutorials.
- Drifting Ruby is another good video resource.
- Rails 8 Unpacked with Typecraft is a Rails-sponsored tutorial series aimed at introducing Rails 8 and is really well produced.
- Ruby Weekly is a great newsletter.
- Confreaks has an enormous backlog of Ruby and Rails conference talks. Pro tip: a good question when networking is for conference talk recommendations.
I have never been very, traditionally, creative. I have difficulty coming up with ideas to pursue (in a personal coding project sense) and even when an idea comes to mind its always fuzzy at best. I was wondering if you might talk about your process: how you come up with an idea as well as bring it to fruition. Or does it tend to come naturally?
I believe that creativity comes from practice and experience. I don't have a lot of ideas for full applications, but sometimes I have an idea for a feature or a small utility that I'd like to create to solve a problem I'm struggling with. From that first idea, the next step is to ask, what would make this even better?
It's also worth doing the same thing in different frameworks, languages, or just implementations. The math game I mentioned was initially a spreadsheet, then a react app, then a ruby command line tool, and finally a Rails app.
Canonically, the to do list is a common project to use to learn a new framework or language. Do a to do list in Rails, then do it again but with a cleaner implementation. Then do it again in another framework or language entirely.
This one is a bit random, but I love having at least one personal question: Do you listen to music to boost your productivity? If so, which genres do you tend to favor while working on a project? If not, are there any other things you enjoy during work time? Perhaps a nice cup of tea?
When I'm working I almost always have music on - typically progressive rock without a ton of lyrics. Phish and Goose are my favorites. My morning coffee is one of my great joys.
Member discussion