Computer Science: Just the Useful Bits
By Noah Gibbs
Computer Science: Just the Useful BitsFeb 15, 2021
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: http://justtheusefulbits.com/jtub/larry-orton-getting-started-and-standing-out/
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!
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: http://justtheusefulbits.com/jtub/ross-kaffenberger-teaching-webpacker-and-paradigms/
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: http://justtheusefulbits.com/jtub/craig-petterson-buzzwords-pina-coladas-and-centaur-chess/
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: http://justtheusefulbits.com/jtub/akien-mciain-test-automation-engineering/
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: http://justtheusefulbits.com/jtub/andrew-owen-the-culture-of-programming-if-youre-raised-by-missionaries/
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: http://justtheusefulbits.com/jtub/andrew-mason-i-expected-college-to-be-basically-boot-camp/
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: https://justtheusefulbits.com/jtub/shai-schechter/
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: http://justtheusefulbits.com/jtub/caitlyn-greffly-paid-to-go-to-school-and-make-cool-things-forever/
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: https://justtheusefulbits.com/jtub/jennifer-tran-coding-paradigms-the-satisfaction-of-studying-and-unspoken-cultural-norms/
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: http://justtheusefulbits.com/jtub/ernesto-tagwerker-learning-programming-business-and-management/
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: http://justtheusefulbits.com/jtub/john-pavan-coming-to-programming-from-nuclear-physics-and-some-vagaries-of-c++/
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 https://justtheusefulbits.com/jtub/chris-seaton-on-phds-and-software-apprenticeships/
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: http://justtheusefulbits.com/jtub/michael-dominick-your-duck-was-the-only-thing-going-for-it/
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 https://justtheusefulbits.com/jtub/george-sheppard-security-uml-and-what-is-more-important-than-money/
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 https://justtheusefulbits.com/jtub/jared-white-the-trip-from-php-to-ruby/
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 https://justtheusefulbits.com/jtub/chris-oliver-the-black-magic-of-video-game-timing/
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 https://justtheusefulbits.com/jtub/drew-carpenter-static-and-dynamic-langs/
With Hugo DiFrancesco: ...
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 http://justtheusefulbits.com/jtub/swizec-teller-the-value-of-theory-and-why-not-to-build-an-analytics-service/
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 https://justtheusefulbits.com/alain-mauri-to-be-a-great-developer-learn-sport-instead-of-computer-science
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 https://justtheusefulbits.com/jake-yesbeck-on-getting-lucky-mastery-and-the-fundamentals
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: http://justtheusefulbits.com/jtub/mike-perham-sidekiq-and-whitepapers-and-what-success-is-for/
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: http://justtheusefulbits.com/jtub/tyler-williams-hands-on-teaching-formal-and-informal/
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: http://justtheusefulbits.com/jtub/jason-swett-when-data-structures-big-o-notation-and-algorithms-were-completely-useless/