Read & Listen log - November 2020
published 3.12.2020
A log of articles, blog posts, and podcasts, that I've read and listened to in recent month.
Articles
Getting back to some more ruby on rails fun. Reading what changed since Rails 4, which is the last one I used years ago. A lot of goodies for sure, and a lot of leaked memory cells as well.
Videos
- RubyConf 2016 - Composition by James Dabbs
- RailsConf 2019 - Refactoring Live: Primitive Obsession by James Dabbs
- Peter Cooper - A Deep Dive into the Ruby Object Model
Podcasts
I liked the following podcast most:
What I didn't enjoy as much as I expected:
- The Overflow - Occam's Blazor
The Rabbit Hole: Ep. 138 - User Stories: Why "gathering requirements" is not a gorram story
As much as we hate breaking bad news to you, we have no choice today. If you think gathering requirements is a user story, you are wrong and we’ll tell you why. William, who is especially fired up about the topic, gets us started by explaining that usually gathering requirements is conflated with other components, such as a spike, task or research and there are also often delusions about what stories are. While it is important to keep track of all the tasks on a project, they should not be confused with user stories.
Gathering requirements is simply part of the job of being a developer and while there is a need to record tasks, if they get put on the PO board, it can create clutter and drown out the real user stories. So instead, it is important to label activities for what they are, be it a spike or task. This ensures that user stories shine on the board and they get the attention that they deserve. There are some task management tools we talk about that can help with sorting different project tasks to ensure that you never mix up gathering requirements with user stories again! To learn more, join us today.
Key Points From This Episode:
- User information gathering techniques: focus groups, implicit feedback and an embedded customer on the team.
- How to quantify time that is dedicated to interacting with the customer.
- Uncertainty is natural and sometimes options need to be tested.
- Just because it’s on the PO board, does not make it a story.
- To-do list mindset: why people often put gathering requirements as stories.
- Preliminary research does not belong on the PO board.
- If a user can’t brag about or share a feature, it’s not a user story.
- Each user story should have lots of tasks on the task board.
- Not all project management software differentiates stories from tasks.
- Some useful task management websites and tools.
- An ‘icebox’: storing half-formed ideas that could potentially become future stories.
- It is important to get user feedback before you create a development roadmap.
- How many stories it is good to have stored for future deployment.
The Rabbit Hole: Remix: The DRY Principle is Misunderstood with Steven Solomon
Today on The Rabbit Hole, we are doing another remix, this time going back to an episode with Steven Solomon on how the DRY principle is misunderstood. Steven has been a programmer since 2007 and has been fortunate to work in many contexts. In this episode, Steven unpacks what the DRY principle is and clears up some common misconceptions about it. Commonly when developers see two lines of the same code, they are tempted to extract that into a method based on their understanding of DRY-ing. Steven explains why he understands the definition to relate more to ideas than methods. We also look at why and when to think twice before you dry, some of the situations that require DRY-ing, and what to do when the code gets too DRY. This episode is a fresh take on a widely misunderstood concept. Tune in today!
Key Points From This Episode:
- Steven unpacks what the DRY principle means and common misconceptions.
- Understand how to apply the DRY principles to ideas and not only methods.
- Find out how only responding to duplicate code can land you in hot water.
- How Steven decides when code needs to be ‘DRY-ed’ up: find an expert!
- Two questions to ask when you can’t find an expert to help DRY up your code.
- Steven gives some examples of when you apply the two by two quadrant model.
- How to build separate objects rather than just DRY-ing up code by default.
- Why having an idea that is spread out over the system is the worst-case scenario.
- The ways that Mike, Dave, and Steven have used DRY in their own work.
- Understanding divergent change and how it relates to DRY.
JAMStack Radio: Ep. 57 - JSX in Markdown with Chris Biscardi
Brian talks with Chris Biscardi, an independent engineer and startup consultant. They discuss MDX, the struggles of website migration, and why more projects are adopting JAMstack.
Manager Tools: The Bridge Between Feedback And Coaching - Part 1, 2, 3
The Manager Tools Feedback Model works great to address potential problems when they're small. And we have ways of addressing bigger problems. But what about when a direct gets 2-3 instances of feedback and still seems to be struggling? How can we help them when they need just a little help?
This Cast Answers These Questions
- What do I do when a direct doesn't know how to make a change?
- How can I help a direct who needs more than feedback but less than coaching?
- How can I give simple guidance to directs without it becoming a coaching process?
The Overflow - Occam's Blazor
This week on the Stack Overflow Podcast: the best way for engineers to give feedback to executives. Plus, a quick dive into Blazor.
RNR: Ep. 172 - React Native Ultimate Guide with Mike Grabowski
In this episode of React Native Radio, guest Mike Grabowski joins us to talk about React Native optimization and discuss what life is like as a core contributor.
The SaaS Podcast: Ep. 268 - Chili Piper: How to Pre-Sell and Bootstrap a SaaS to Profitability – with Nicolas Vandenberghe
Nicolas Vandenberghe is the co-founder and CEO of Chili Piper, a SaaS platform that helps you instantly turn inbound leads into qualified meetings. Nicolas grew up in France and wanted to travel around the world. He applied to Stanford so he could live in California for a couple of years before continuing his travels.
But all his plans changed when one day Steve Jobs gave a talk to his class. Nicolas was so inspired that he decided he was also going to become a tech entrepreneur. Ironically, Nicolas's first startup was co-founded with John Sculley, the guy who became CEO of Apple and eventually fired Steve Jobs.
Nicolas's latest startup Chili Piper was founded when he and his wife identified a niche problem with companies losing leads because they couldn't respond quickly to inbound leads. He wanted to be sure he was solving a worthwhile problem, so he told his first potential customer that he could build them a solution for $20,000. The customer paid him upfront. And that's how they got started. But like most startups, when you look deeper you also discover a bunch of problems and challenges. And it was no different for Nicolas.
He said most people wake up and check their email every morning, but he used to check his bank account and worry if they had enough pay to pay the bills. And at one point, he ran out of money and couldn't pay his employees. However, despite those challenges, they bootstrapped the company from zero to over $5M in annual recurring revenue (ARR) and recently raised $18 million in funding.
The SaaS Podcast: Ep. 270 - How to Build a SaaS Brand Without Doing "Branding" – with Paul Campillo
Paul Campillo is the director of brand and communications at Typeform, a SaaS platform that lets you create interactive forms, surveys, quizzes, and more. Paul was a social worker helping youth involved in the juvenile justice system and he was helping adults coming out of prison to find jobs.
One day, the CEO of the non-profit where Paul worked told him that she'd heard about some software called Typeform which might be useful for them and asked if he could look into it. Paul went to the Typeform website and thought the product looked pretty cool. He came across a job application form that was created in Typeform. Filling out the form seemed like a good way to play around with the product so he answered the questions and submitted the form.
About a week later, he got an email from the head of HR at Typeform asking him if we could chat with their CEO about his job application. And eventually, he became Typeform's first marketing hire.
In this interview, we talk about his journey from joining a startup in its early stages and seeing it grow into an 8-figure SaaS company with over 300 employees and $52M in funding. Paul explains that whether you realize it or not, your startup is building a brand. And we dig into what exactly that means beyond how many people think of branding. We explore the importance of building a product people love, how to build deeper connections with customers and Paul shares a painful example of what happened at Typeform when they didn't pay enough attention to customers. We cover the fundamentals of storytelling, why it's so powerful, and how you can start using it to communicate with your customers in a more engaging way. And Paul shares a simple but powerful 5-part copywriting framework that you can use to market and sell your product.
X-Team's FwdConf - How to Be a Better Dev Mentor
- What is mentoring really all about?
- How do you give better feedback on Github PRs?
- How do you mentor someone after they make an epic fail?
- How can you be a patient mentor when a dev is being challenging?
- How can you mentor someone using Slack journals?
- How can mentoring help you impact your local community?
X-Team's FwdConf - Parenting Life for Remote Workers
- How do you stay productive as a remote work parent?
- How do you overcome some of the guilt that comes when you're working and your kids are waiting for your attention?
- Do you invite your kids into your work to prep them for work life one day?
- How do you capitalize on the opportunity of getting to spend more time with your family?
- How do you teach your kids how to code?
- How do you make time for your own growth as a remote work parent?
- What do you hope the future of work will look like when your kids grow up?