Talks

A Rubyist's Guide to Existential Dread

A Rubyist's Guide to Existential Dread

by Jeremy Smith

In 'A Rubyist's Guide to Existential Dread', Jeremy Smith addresses the growing anxieties within the Ruby community regarding various threats facing developers, particularly around the rise of AI and a stagnant job market. He presents a heartfelt exploration of the fear of loss related to three significant aspects: craft, livelihood, and community. Smith discusses his personal journey from a passionate teen tinkering with HTML to a seasoned Rails developer and reflects on the importance of recognizing the good amidst uncertainties.

The key points of his talk include:
- Acknowledge Your Feelings: Smith starts by urging the audience not to panic amid the looming threats. Drawing from personal experiences, he emphasizes the importance of staying calm and recognizing that challenges are part of life.
- Cherish What You Have: He encourages valuing the opportunities and community present in the Ruby ecosystem, recognizing the luck involved in being able to work on something one loves.
- Create Space: Highlighting the necessity of fostering community, Jeremy showcases Rubyists who are successfully facilitating connections and support networks for developers.
- Get Tedious: He talks about the value of dedicating oneself to seemingly mundane tasks that ultimately lead to significant contributions within the community, using examples of developers who have committed to smaller, focused projects.
- Sell Your Work: Finally, Jeremy stresses the importance of marketing and communication for developers, giving examples of successful initiatives that have helped promote Ruby and Rails effectively.

Jeremy concludes with a powerful message: rather than becoming paralyzed by fear of the future, Rubyists should focus on improving the present, both for themselves and their community. This approach can lead to proactive solutions, creativity, and resilience against external challenges.

00:00:11.799 All right, our closing speaker is actually the founder of Blue Ridge Ruby, and here he is now.
00:00:26.439 Jeremy: Hey, thanks everybody! It's good to be here. Welcome to "A Rubyist's Guide to Existential Dread." Thank you. Have you felt it? A vague sense of dread in our industry and our community over the last 18 months.
00:00:36.960 For me, it's been a lot of little things building up. I've seen my leads slow down last year and heard the same from other freelancers and agency owners. I’ve watched the listings on Ruby and Rails job boards dwindle and seen some friends with Rails agencies have to let their employees go and ultimately close their doors.
00:00:53.039 Finding out that next year will be the last RailsComp event, hearing over and over in tech news that AI is taking or is about to take my job. I even listened to Obie Fernandez at Sin City Ruby a couple of months ago warning us that a wave of change is coming. While he was optimistic about Ruby's place in that wave and confident that our work as programmers will change forever, I'm guessing you have some anecdotes and data points of your own.
00:01:19.720 I've never been to Silicon Valley, but this isn't my first time in a valley. This isn't the first time that I've seen our industry and community overshadowed by threats, both external and internal. However, I'd be lying to you if I said that it wasn't affecting me. I've had conversations with folks on this topic recently, whether at conferences, on podcasts, or just DMing friends. I've been trying to gain clarity on my own thoughts and feelings, and on how I should respond.
00:01:40.920 While it's uncomfortable, I'm trying to hold these threats with a steady gaze and consider what they're trying to tell me. I've come to the conclusion that, for me, at the bottom of it all, it's about the fear of loss—specifically, the loss of three things I care very much about: the loss of craft, the loss of livelihood, and the loss of community.
00:02:08.840 Let me take these three things in the order that I discovered them. I fell in love with building websites as a teenager in the mid-90s and fell in love with building web applications with Ruby and Rails in 2008. For me, no other art or craft pursuit has matched the obsession I’ve had with building software and the pleasure of seeing things I’ve made on the web.
00:02:36.920 Although I was hooked immediately, my skill as a developer was pretty slow to develop. Two decades later, I would be deeply lost if my craft was suddenly gone. Regarding livelihood, I never really intended for my teenage hobby to become my vocation, but it turned out to be a natural fit. I was able to make enough money to support my growing family. My skills allowed me to have an outsized impact in small organizations, and over time I found a way to work on my own, gaining more autonomy and ownership.
00:03:03.879 While some folks enter programming through community, for me, community was the last piece to arrive. I learned HTML over dial-up in the middle of Currin County. Later, I worked in settings where I was frequently the only developer. I attempted to find professional camaraderie at meetups in my 20s, but I struggled to find my place. It’s only been in the last few years that I've found the connections and friendships I had always wanted.
00:03:29.760 When I think about these three things—about the work involved, the time measured in years, and the extraordinary luck of it all—it’s quite reasonable that threats would feel significant and worrisome. For me, peering into the future boils down to the following question: Will I still be able to make a living doing work I enjoy with people I care about? I think it's sometimes helpful to address the feelings behind a question before addressing the question itself. As we all know, context is critical, and a question changes the one who asks it.
00:04:07.320 With that in mind, let me share the six things that I've been telling myself. Number one: Don't panic. I mean, not that you ever would, but I certainly might. When my kids were little, they were pretty accident-prone, so we had many trips to the emergency room. As a young dad, I would often panic in these situations, emotionally flooded, unable to think straight and barely able to take action. Thankfully, my wife was always calm and collected, and each time we got our kids the help they needed.
00:04:50.680 You see, my response was completely understandable; it just wasn't helpful. Looking back, having gone through those challenging experiences, I see that if I could have avoided panicking, I would have been more capable of taking care of myself and others. When I think about our industry currently, it helps to remind myself of the following: being alive is inherently dangerous. My safety, stability, and comfort were never guaranteed. While I often am safe, stable, and comfortable, there’s no amount of money or power that I can acquire that will ensure I will always be so.
00:05:23.000 I have been through hard times before. I can look back and see that I’ve made it through scary and uncertain times, like 9/11, the 2008 housing crisis, and COVID. In my work, I’ve made it through a couple of boom-and-bust cycles, predictions of industry disruption, and warnings that Ruby is dead, that Rails can't scale, and that everyone is moving on to Closure, Elixir, and Go.
00:06:03.440 I rarely wish for the past. When I think about it, it’s rare that I actually want to go back to a time without asthma inhalers, air conditioning, video calls, carbonated water, movie theaters, and GPS. I don’t want to go back to building HTML layouts with tables and transparent GIFs. I don’t want to code without version control; I don’t want to deploy with FTP, and I don't want to manage Ruby gems without Bundler.
00:06:38.000 And this leads me to my second point: to cherish. Now, if I’m scared of what I have to lose, it also means that I have a lot to be grateful for right now. This reminds me of a tweet I saw the other day: If you're not regularly blown away at how lucky you are to program computers, I highly recommend spending a few minutes just considering the luck of it all—the timing, the circumstances.
00:07:30.600 In average social circles, I often talk to people who do not like their jobs, and some don’t even expect to. I’m grateful that I love my work. Building software has taught me a lot about the world, about people and systems, about organizations and industries. I'm grateful for what I've learned.
00:08:07.760 Have you ever tried to explain the Ruby community to people outside this profession? I found it very difficult to do. It’s hard to convey that while it's true we are a professional community, it feels more like we're a group of enthusiasts or hobbyists or artists. How would you ever explain to someone why the Ruby community is so special?
00:08:37.160 I’m grateful for the community I've built. I'm able to support my family from a small office in my house, with customers around the country, using skills I've learned mostly for free, with equipment that fits easily into my backpack and operating costs that many service workers would envy. I'm grateful for the life I've been able to build.
00:09:04.000 So, instead of becoming paralyzed by some possible dark future, how can I continue to make now better—not just for me, but for those around me? My next three points are categories of action accompanied by examples of Rubyists I think we can draw inspiration from. They saw something that needed to be done and went for it.
00:09:30.600 Number three: Create space. Creating space—whether physical, virtual, temporal, or attentional—is a necessary prerequisite for communities to form and grow. Creating space is about making new places for people to gather for the first time, as well as opening up gaps in existing spaces for newcomers to be welcomed. Nothing takes me back to the painful experiences of middle school like walking into a room full of strangers, looking around for a group to join and finding no openings in the circle.
00:10:05.640 We want to keep the Ruby community healthy. We need to create space. Here are some Rubyists who are doing just that. Andy does this in a couple of different ways. He’s the organizer of Brighton Ruby, one of the longest-running Ruby conferences in Europe. He’s also the creator of First Ruby Friend, a program connecting early-career developers with Ruby mentors.
00:10:49.920 Gemma and Emily are two organizers of WNBR RB, a virtual community for women and non-binary Rubyists. They have monthly online meetups with speakers from their community and often host meals for their members at conferences. I’m equally thrilled and jealous I’m unable to join in.
00:11:25.680 Dave is a longtime Rails developer and founder of Block, the first online coding bootcamp. He recently founded an organization aimed at getting early-career developers, particularly boot camp grads, job-ready.
00:11:49.600 Bobby Lee noticed that the Australian Ruby community had its own Rails camp and decided to create her own version in the US. Rails Camp West is an unplugged retreat for developers of various backgrounds hosted in different locations out west every year. It’s like summer camp for adults.
00:12:15.000 I have always been full of ideas, so here are some opportunities I see: someone should help connect local meetups with developers looking for speaking opportunities. Someone should create a Ruby conference geared toward developers with kids, a group that often can't attend conferences. Someone should provide training and support for experienced devs transitioning from other languages.
00:12:45.360 Number four: Get tedious. I came across this tweet a while back from the annals of just doing the tedious thing and immersing yourself fully. It’s an excerpt from a New York Times article, which says the best view of New York City might just be in a near windowless conference room on the 12th floor of a Midtown Manhattan office building.
00:13:09.000 They describe a map pieced together with paper tape and sticky notes, detailing every block and parcel in Manhattan below 96th Street.
00:13:41.280 This map is the work of Bob Nicoal, who created it by walking every avenue and street during the desolate early months of the pandemic. Updated regularly, the dots are color-coded with highlighters and sticky notes to show which blocks are for sale, recently sold, owned by the city, or under construction.
00:14:03.760 For four decades, Mr. Nico has used his obsession with data and creative marketing techniques to achieve rare status in the cutthroat world of New York City real estate. He is widely considered by industry professionals to be the top commercial sales broker, buying number transactions in the largest commercial market in the country.
00:14:43.400 There’s incredible value in finding and committing to one thing that to many other folks might seem tedious. Let’s consider some examples from the Ruby world.
00:15:17.520 Luchan is the creator of the Short Ruby newsletter, which is the most comprehensive weekly newsletter I've ever seen. It’s so long that it always gets clipped by Gmail, so I have to click 'View entire message' to read the whole thing in a separate tab. It’s the most comprehensive news source for everything that’s happened in the Ruby world in the past week. Last year, Stephen went all in on SQLite and Rails, writing blog posts, improving Rails' support for SQLite, and creating the Active Record Enhanced SQLite 3 adapter.
00:15:52.560 He’s also been talking on podcasts and speaking at conferences. I think he’s putting out a new book now, and he’s been educating folks on the benefits of using SQLite with Rails in production.
00:16:30.600 Boi is a Rails developer, mentor, and educator. She writes the One Ruby Question newsletter, which tackles one question every issue, such as how do constants work in Ruby and when do we use Turbo? It’s been one of my favorite ways to level up my learning.
00:16:57.720 Andrew is one of the most prolific open-source authors in Ruby. In January 2020, he set out to improve the machine learning ecosystem for Ruby and released 16 libraries over the next five months. He learned a lot along the way and wanted to share some of that knowledge and introduce some libraries you can use in Ruby.
00:17:33.280 In September, he shared that he’s released 15 more ML gems for Ruby, stating, ‘Ruby is getting better for machine learning.’ Many popular Python libraries now have Ruby counterparts that can be used in Ruby scripts, IRuby notebooks, and Rails applications.
00:18:00.760 This should make it easier to do machine learning without leaving your favorite language. Now, here are some opportunities I see: someone should catalog all the tools in the Laravel community that we don't have and bring those missing ones over to Rails. Someone should find a way to connect all of those outdated Rails apps out there and make them available to freelancers to maintain and upgrade.
00:18:33.560 Someone should write an in-depth cookbook for real-world web scraping and HTML parsing using Nokogiri. Guess what? I was working on that last week! Finally, number five: Sell.
00:19:07.480 As developers, we're not generally known for appreciating or excelling in marketing and sales. Maybe it's because we tend to believe that good ideas, good tools, and good practices will be self-evident and will succeed on their merits alone. But years of freelancing and many failed attempts at launching products and projects have taught me that marketing and sales are critical.
00:19:40.960 How many developers got into Ruby and Rails because of DHH's famous 'How to Build a Blog in 15 Minutes' video? I’d wager many of us here, and I’d argue that was the most influential marketing piece in the history of web development. If you have another example that’s better than that, let me know.
00:20:14.480 As Arena Nazarova, CEO of Evil Martian, said during her Rails keynote earlier this month, ‘We are not loud enough.’ I would also add that we have misapplied the DRY principle when it comes to communicating about our tools, projects, and learnings. We have to repeat ourselves.
00:20:43.560 Speaking of Arena, she and Evil Martians are doing amazing work to further Ruby and Rails in the startup world. They put out the highest quality technical content, design, open source, and products. Their visual style and attention to detail make them stand out in a crowd.
00:21:01.159 They are consistent, and they earn and keep attention. Talk about Marco: in addition to his extensive open-source contributions, Marco has done some of the best work I’ve seen to promote and educate on the Hotwire approach to front-end development through his conference talks, his site hotwire.dev, and the Hotwire Weekly newsletter.