Every two weeks we break down solutions to code problems, talking about the decisions that got us where we are. We reveal our thinking and discuss trade-offs. Evil devs. Evil problems. Evil code.
This short episode of the podcast serves as a farewell to the one and only Meredith Edwards. Meredith has unfortunately recently acquired some angel wings and can no longer be an evil genius alongside Emmanuel! So today we are just wrapping up what the journey thus far has taught our two hosts and bidding Meredith a very fond farewell. We briefly look back at some of the key lessons we have covered so far as well as reminisce on the benefits of hosting the show. Tune in hear it all!
Talking Points
Links Mentioned in Today’s Episode:
Evil Geniuses on Twitter
Ruby
Sandi Metz
Welcome back to another episode of Evil Geniuses. Today on the show we welcome back Kirsten Nordine. The last time Kirsten was on the show was a little over a month ago and we talked a little bit about an open source contribution we’re working on but we also talked a lot about her experience going to a POOD Workshop by Sandi Metz in Durham, North Carolina.
In today’s episode, we are talking all about Kirsten and the little vacation she took. Well, not necessarily a vacation but time away from clients to learn more about software development. Kirsten and Emanuel attended Sandi Metz’s new three-day workshop titled POODR Two: Practical Object-Oriented Design in Ruby. We dive into why they went, what they learned, and the biggest takeaways from the workshop that each of them had. Keep listening to hear more!
Key Points From This Episode:
Talking Points
Links Mentioned in Today’s Episode:
Evil Geniuses on Twitter
Kirsten Nordine
Kristin on Twitter
Sandi Metz
Stride
Ruby
Welcome back to another episode of the Evil Geniuses Podcast. We are coming at you with something new this week! This episode will be the first time that we are not talking about a code problem that we’ve solved because we are going to take a stand, and our stand is about testing. We are diving into the ins and outs of how you describe your test. Here at Evil Geniuses, we believe that the description of a test should describe business value not implementation.
So stay tuned as we unpack the differences between business value and implementation descriptions, the opportunities that can come from rewriting code, and why naming your tests can take quite some time to fully master. For all this and more, keep listening!
Key Points From This Episode:
Talking Points
Tests should describe the business value and not the implementation
Different types
Test that describes implementation:
“it should call the render_text method”
Test that describes business value
describing the reason to return a certain value
“it should have the amount given by the user”
“it should render text”
Who are the tests for?
Other developers reading the code
Future you if you’re refactoring
Following this practice results in better tests
Bad: “it should raise a PriceError”
Not only about raising the error; it’s about notifying the developer and user that something exceeded the max price
Supports Refactoring
clarifies the objective
Ex: feel confident to refactor as long an error is raised when the max price is exceeded
Supports Feature Changes
Feel more confident changing or removing test related to max price with description instead of just “exceeds 100”
Links Mentioned in Today’s Episode:
Evil Geniuses on Twitter
The Stand
Stride
On this episode of the Evil Geniuses Podcast, we continue our series on a first example of the video checkout system. To start off we recap some of the points from the first two parts and then move into the final stretch! We talk about the two main patterns that are present in this code, namely base charge for rental and extra charge for rental before getting into renaming decoupling and calculating a final cost. We add in some reminders about primitive obsession and take some handy lessons from the idea of a library and borrowing books, so stay tuned for that! For all this, and much more be sure to listen in as we go deep!
Key Points From This Episode:
Commits
Links Mentioned in Today’s Episode:
Evil Geniuses on Twitter
Stride
GangofFour
Ruby
JavaScript
Sandi Metz
Primitive Obsession
Refactoring
Welcome to another episode of Evil Geniuses. Last time we teased you but we’re back and this time we’re actually going to deliver the goods, no more click bait. We are working with a video checkout store type software where our classes are a movie, a rental, and a customer.
We’ve given you insight into what our test look like and today we want to talk about the code that does tester testing. The theme of this discussion is you have to do two things. One, you have to introduce duplication in order to identify the right obstruction because you can’t always trust the obstruction that is present and then two, stop being obsessed with primitives. No more primitives. Keep listening, there’s, even more, coming up in the next episode!
Key Points From This Episode:
Talking Points
Commits
Links Mentioned in Today’s Episode:
Evil Geniuses on Twitter
Stride
Ruby
Sandi Metz
Primitive Obsession
Basic Instinct
Sharon Stone
On today’s show, we embark on a new, evil adventure, one on which we hope you will join us! We’ll be looking at another refactoring problem and this will make up the first part of a short series of episodes dealing with this issue. Emmanuel lays out the topic, which takes the shape of a code used to run the rental of videos in an old style video store.
During this week’s discussion, we deal with the first areas of the topic, looking at what Emmanuel’s work takes directly from Martin Fowler’s Refactoring and where his actions diverge. We discuss the conditions and objects that deal with the duration of a rental and how these differ across genres of movies. We also unpack test names and start on the topic of his commits. Be sure to tune in for this especially evil episode!
Key Points From This Episode:
Talking Points
Commits
Links Mentioned in Today’s Episode:
Evil Geniuses on Twitter
Stride
Martin Fowler
Refactoring
Ruby
Java
Blockbuster
Hollywood Video
Cars
RSpec
MiniTest
Flickr
AJAX
Myspace
AOL
Messenger
BitTorrent
Today on the show, we welcome Kirsten Nordine of Stride and her faithful colleague, Scaredith, to reflect on their adventure into the open source jungle. Deciding on an open source project and what issue to tackle can be tricky, and in this episode, we find out exactly how Kirsten and Scaredith embarked on the Issue #572 quest: To “Add Ability to Cancel an Event or Mark It Canceled.”
Today’s episode of Evil Geniuses is spent looking back on the lessons we have learned so far in this series. Through all of the evil problems and scary paths we’ve had to walk, there have been some invaluable takeaways that we have been able to share with our listeners.
On today’s episode of the Evil Geniuses Podcast, we are carrying on the evil journey in video service refactoring. If you have not yet checked out part one and two from this series we suggest that you listen through those to get yourself up to speed. Otherwise, the nasty, dangerous code might get completely out of hand! In this episode, we compare Martin Fowler’s technique for refactoring with Emmanuel’s and break down each step and difference.
On today’s episode of the Evil Geniuses Podcast we are delving deeper into the video service we started last time around. Part two means twice as evil and twice as malevolent! Emmanuel and Meredith are taking you down the dark tunnel and hopefully out the other side into the daylight with this continued exploration of refactoring a video service from Youtube.
On today’s Evil Geniuses Podcast we are delving deeper into the scary and unknown world of refactoring. You know we deal with evil code over here at the evil headquarters and this week is no exception. Meredith and Emmanuel are looking at a particular Youtube API problem and our hosts unpack it all for your listening pleasure.
Welcome back to the Evil Geniuses Podcast, where we’re talking evil code, evil programming and all things evil! Today we complete our series on Tic Tac Toe, so if you have not listened to the first two parts on this topic go back and get all that evil stuff out the way before continuing down this dark tunnel. Emmanuel and Meredith are finishing up on how they approached this relatively simple, yet still immensely evil task and giving you all the scary secrets that come along with it.
On today’s episode of the Evil Geniuses Podcast, we continue with our exposé on tic tac toe. Our hosts will go further down the dark tunnel they entered last week and hopefully see the light at the end. Meredith hands the torch over to Emmanuel at the beginning of the show to shed some light on how he approached the problems with this evil code.
Welcome back to the Evil Geniuses podcast! Today we will be looking at another set of problems with nasty and evil code. Meredith and Emmanuel will be going through an exercise in which Meredith was working with the game tic tac toe!
In our first proper episode of the Evil Geniuses Podcast we have a look at the very evil topic of validations! Meredith and Emmanuel will be getting down and dirty with this super dark and scary topic so we hope you are ready.
Welcome to our new podcast series brought to you by Stride Consulting in New York! We are the Evil Geniuses and in the forthcoming episodes, we will be diving into all those terrible and troublesome parts of your coding life. Pulling apart all the mistakes, nightmares and calming any worry you might have. We will be looking at areas such as refactoring, validations and everything in between. So, make sure you subscribe, connect with us and stay tuned for more!