On this episode of Ruby for All, there’s a spider on Julie’s monitor and Andrew and Julie couldn’t figure out a topic of what to talk about today. They decided to ask ChatGPT for some help and it came up with today’s topic, “Common Pitfalls for Junior Ruby on Rails Developers.” Thanks, AI! Julie has so many great questions for Andrew “the cowboy coder,” who’s ready and willing to answer them all! Download this episode now!
[00:01:29] Julie and Andrew tell us what the hardest part of learning Rails was for them.
[00:02:03] Andrew explains what to test and not to test, provides examples, and mentions the Shoulda gem.
[00:04:48] Julie wonders if there’s a way create data in your tests without adding to the database and Andrew explains using Factory Bot’s build_stubbed.
[00:07:54] Fabricate gem is brought up since Julie uses that and she wonders how to name the variables for the stubs and mocks.
[00:11:11] Have you ever modified data in production, and do you know about Sandbox command? Julie has used it and Andrew tells us why you should use it.
[00:13:32] Julie wonders if there’s anything she needs to be concerned or careful with using that Sandbox flag.
[00:14:40] Andrew “the cowboy coder” shares what he did with modified data in production.
[00:16:21] Impersonation is explained as Andrew shares his tip to have a different colored nav bar, Julie explains how she added colors on each Chrome bar for her kid’s accounts, and there’s a new color thing in Safari where it modifies the appearance.
[00:18:17] The topic of using a ton of instance variables and not using enough objects is discussed, and if you’re using current users instance variables, check out CurrentAttributes.
[00:21:39] What is a Decorator and how do you wrap a post in it? Andrew talks about a Decorator gem called Draper, explains what a service object does, and where he puts it in his directory.
[00:27:19] We hear some other examples of a Service Object, and one is using it to create a Zoom session.
[00:28:21] Julie wonders what happens if you’re working with someone who is strongly passionate against what you are strongly passionate about, and code keeps getting moved around or shifted because of that.