Skip to main content
Computer Science: Just the Useful Bits

Computer Science: Just the Useful Bits

By Noah Gibbs
Are you a professional developer, or do you want to be? Worried that your computer science theory is not enough, or is outdated? We'll talk about which parts are useful, which aren't, and why/where. Every week you'll get an informed opinion from a professional developer about a specific part of computer science and when/where/whether it's useful. We cover algorithms, analysis, data structures and all sorts of theory, here on Comp Sci: Just the Useful Bits.
Where to listen
Google Podcasts Logo

Google Podcasts

Overcast Logo


Pocket Casts Logo

Pocket Casts

RadioPublic Logo


Spotify Logo


With Larry Orton: Getting Started and Standing Out
Larry has 15 years' experience in the military under his belt, and is still training as a software developer. We talk about the up-and-coming developer experience, before his first job and what they're looking for. We also talk about social change, and how different the software world is from most of the real world. A little psychology, a little social science, a certain amount of ethics... A great conversation, all told. Larry is also dyslexic, and we talk about how he handles that, and how it's changed all those other things we talk about. For show notes and links, see:
August 08, 2022
With Tobi Pfeiffer: So Many Languages
Tobi works at Shopify and is the author of benchee, an Elixir-language benchmarking suite. He runs RUG:B, a Berlin-based Ruby group, maintains SimpleCov and... Lots of stuff. I always feel tired looking at all the stuff Rubyists do :-) Tobi had a pretty extensive formal computer science education, and it's served him well. We also talk about a lot of different Ruby implementations, and various Ruby folks he's met. We also manage to cover a ridiculous variety of different languages and topics, and lots of older software history. He's a very computer-history-literate fellow!
August 01, 2022
With Ross Kaffenberger: Teaching, WebPacker and Paradigms
Oh man, my audio quality is AWFUL here. Luckily Ross's is better and he's great at carrying the conversation! We talk about how Ross "cheats" both to get into teaching and to get into tech, and about some overlap between the two -- we talk about Seymour Papert, of course. Later we get into different paradigms of programming and what you learn from them, as well as the balance between being a generalist and a specialist. Ross has done a lot with WebPacker -- WebPacker and the asset pipeline are a lot like Bundler as a way to control the Wild West of dependency management. For show notes and links, see:
July 25, 2022
With Craig Petterson: Buzzwords, Pina Coladas and Centaur Chess
We talk about how Craig got started, of course, and about buzzwords and how he did his early job hunting. We talk a *lot* about Ruby performance - who's who, what matters, what's annoying. We veer a bit into how Pina Coladas shouldn't use dark rum (heresy!) and about the example of Centaur Chess, and how it related to other human/computer interactions. For show notes and links, see:
July 18, 2022
With Akien McIain: Test Automation Engineering
This episode is with me, my wife Krissy and Akien McIain, a mutual friend who is also a very senior test automation engineer. When two old engineers get together to talk, you can always expect a lot of war stories... But more importantly, a lot of this is a compare/contrast between developers, QA and test automation. What's similar? What's different? How do the two groups related to each other on the job? And when you get outside 'normal' software dev jobs, the career path is less clear. How do you prepare for something when there's not a degree program? What does the path through that career look like? We talk a lot about how to make the right kind of mistakes to keep moving forward. And that's useful for anybody. For show notes and links, see:
July 11, 2022
With Andrew Owen: the Culture of Programming -- If You're Raised by Missionaries
I barely know how to summarise this one. It's one of my favourites. Andrew is from dot-NET rather than Ruby. He was raised by missionaries, and is thus extremely literate about cultures and how to introduce yourself into a new one. He sees a lot of what I see from a very enlightened outsider's perspective. Which is like catnip to me, just so we're clear. We talk about how often learning programming *skill* is a side effect of learning programming *culture*. Also about affordances - what particular languages, cultures and tools encourage, not just what they enable. Powerful stuff. For show notes and links, see:
July 04, 2022
With Andrew Mason: I Expected College to be Basically Boot Camp
Andrew is the founder of the Remote Ruby Podcast (now a lot more prominent than when we talked!), RubyBlend and CodeFund. We talk about the prison and court systems, why FTP is a terrible protocol, reading code, ADHD and a lot more. For show notes and links, see:
June 27, 2022
With Shai Schechter: Hustle Hard, Do What's Practical
Shai Schechter, co-founder of RightMessage, has been hustling since he was 11. He believes that what's practical is very different for different people. If you see a task through a particular lens (e.g. tech) then that's the way you should do it. Do what comes naturally. For show notes:
April 19, 2022
With Caitlyn Greffly: It's Like Being Paid to Go to School and Make Cool Things Forever
Caitlyn didn't want to go back and get a degree "at my age", but went to Thinkful to learn to be a full-stack software engineer, which is "like being paid to go to school and make cool things forever." It's hard to tell what to focus on when there's so much to learn. "It used different muscles in my brain," she says, as she "learn[ed] to work from a place of frustration." And in the end, "it's either a good time or a good story!" For show notes and links, see:
April 21, 2021
With Jennifer Tran: Coding Paradigms, the Satisfaction of Studying and Unspoken Cultural Norms
Jennifer is an early-career cloud engineer. We talk about how she got into software development without having experience before university, and what that meant about picking up the unspoken cultural norms. We also talk about the dark academic aesthetic and how she improves at all of this. For show notes and links, see:
April 08, 2021
With Ernesto Tagwerker: Learning Programming, Business and Management
Ernesto and I talk about how he learned software development, but also some business and management in his competitive public university in Argentina. We talk group projects, learning well and trying things that failed. For show notes and links, see:
March 08, 2021
With John Pavan: Coming to Programming from Nuclear Physics
I met John Pavan early in his career, after he'd just made the transition from nuclear physics to full-time computer programming. We caught up on how C++ is doing and how he's doing in it. We also talked about what he looks for in a software hire, and handling legacy code. For show notes and links, see:
March 01, 2021
With Chris Seaton: On Ph.Ds and Software Apprenticeships
Chris Seaton, founder of TruffleRuby, talks with me about getting a computer science Ph.D, how learning compilers is necessarily like an old-style apprenticeship, and a near-the-metal view of complex algorithms for computation. For show notes and links see: For show notes, links and comments see
February 23, 2021
With Michael Dominick: Your Duck Was the Only Thing That Company Had Going For It!
Michael Dominick, of the Mike Dominick Show, talks to me about patterns in software, the Pokemon API, what he looks for when hiring developers and how he's pretty sure the universe is POSIX compliant. Links available here:
February 15, 2021
With George Sheppard: On Security, UML and What's More Important than Money
George and I talk about how he learned to do what we do. He loved his classes on security, and I'm envious. He doesn't remember his classes on mathematics — I might envy that, too. We talk about how hard making good games is, a little. And we talk about how you need to think of each job as a stepping stone to the right next thing.  For show notes, links and comments see
November 10, 2020
With Jared White: the Trip from PHP to Ruby and Beyond
Jared and I talk about his journey through all sorts of programming platforms, from the Commodore 128, through PHP to Ruby and onward. He talks about Object Oriented programming, Rails service objects and why he doesn't like classes that are just functions. He talks about how GitHub brings a little of the benefits of pair programming to the single-programmer experience. We even talk a little language performance, and how machine learning code looks weirdly like graphics and GPGPU. For show notes, links and comments see
November 03, 2020
With Chris Oliver: The Black Magic of Video Game Timing
In this episode, Chris and I talk about the black magic of video game timing, why you should build your own package manager, why you should write what you love, why Chrome using All The Memory is a good thing and what you can learn from Porsche redesigning their whole car every four years. For show notes, links and comments see
October 27, 2020
With Drew Carpenter: Static or Dynamic Languages?
In this episode, Drew and I talk about job interviews, static and dynamic languages and a little of everything career-related. For show notes, links, comments and transcripts see
October 13, 2020
With Hugo DiFrancesco: ...
October 06, 2020
With Swizec Teller: The Value of Theory and Why Not to Build an Analytics Service
Swizec and I talk about his theory-heavy education in Slovenia and how extremely useful it's been to him. We also talk about educational overengineering, automata theory, why NoSQL is usually a mistake and whether online education has jumped the shark. For show notes, links, comments and transcripts see
September 29, 2020
With Alain Mauri: to be a Great Developer, Learn Sport Instead of Computer Science
Alain and I talk about the old days; about jumping into a first job in PHP because Commodore 64 coding was probably close enough; about how, to be really great on a development team you can skip most of the university education, but learning sport should probably be mandatory. For show notes, links, comments and transcripts see
September 22, 2020
With Jake Yesbeck: On Getting Lucky, Mastery and the Fundamentals
Jake and I talk about basically just getting lucky... And also about mastery and understanding the fundamentals of computer science. We talk about university and how it works well for some things (theory, longer-term understanding) and poorly for others (basic how-to-build understanding.) We also talk about the semi-lost art of whiteboard interviewing and how to prep for it if you have way too much time on your hands. And the idea that there are only so many approaches to problems in the world. And maybe a bit about how much better it would be to be a coding recluse in a cave in Norway. For show notes, links, comments and transcripts see
September 14, 2020
With Mike Perham: Sidekiq and Whitepapers, and What Success is For
Mike, of course, is most famous in the Ruby community for Sidekiq. Outside Ruby, you're more likely to know him for Faktory. Mike and I talk a lot about his education in and out of university and how it's served him. We also talk about how that's changed over the years as his career has continued. For show notes, links, comments and transcripts:
September 07, 2020
With Tyler Williams: Hands-On Teaching Between Students; Formal and Informal Teaching
Tyler Williams talks about what made his education good. He's actually going back after years of development to finish his degree and get a master's degree. Not everything was perfect, not everything was good, but he thinks there are parts you can't easily replace in a formal education. For show notes, links, comments and transcripts see:
August 31, 2020
With Jason Swett: when data structures, big-O notation and algorithms were completely useless...
Jason Swett and I talk about his education as a programmer and the classes he took in university. I also explain big-O notation in a simple way that (Jason thinks) is useful, and we wander onto topics like philosophy, as Jason and I tend to... For show notes, links, comments and transcripts see:
August 19, 2020
BigCo New Employee Training - Inside Voice
This isn't actually an episode. More of a test upload, and a vocal rendition of an old blog post. From
December 27, 2019