Programming Throwdown

Programming Throwdown
A new Programming Language every show!

Continuous Integration
Nov 13 • 113 min
Most developers that I know use CircleCI every single day. It’s both an honor and an amazing experience to learn about continuous integration and continuous deployment from Rob Zuber, CTO of CircleCI. We also cover a range of topics from staying motivated…
Oct 24 • 77 min
Everyone has used programs that talk to a server: Uber, podcast apps, etc.. Most people also know about peer-to-peer applications such as bittorrent, but did you know that video chat programs such as Skype and Google Hangouts are also peer-to-peer? You…
Search at Etsy
Oct 7 • 78 min
What actually happens when you type something in the search bar at the top of and hit enter? This awesome interview with Liangjie Hong, Director of Data Science and Machine Learning, answers that question all the way from the philosophical (what…
A Journey to Programming Mastery
Sep 19 • 71 min
Every interview we do is such an exciting and unique experience. Patrick and I had great pleasure in hosting Andy and Dave, authors of “The Pragmatic Programmer”. We pick their brains on a variety of topics including rapid prototyping, the 10x engineer,…
Basics of UI Design for Engineers
Jul 13 • 66 min
Surprise! Weekend episode :-D Every piece of code you write is either going to be for computer-to-computer interaction, or for human-machine interaction. For the latter, how do you make your interface easy to understand and use? Erik Kennedy, independent…
Functional Programming
Jun 19 • 66 min
Hey all! Since episode 82, we received a ton of email asking for more info on functional programming (FP). To cover FP in great detail we are thrilled to chat with Adam Bell. Adam is the host of the Corecursive podcast and an engineer with many years of…
Terminal and Shells
May 21 • 75 min
Hey all!! Ask and ye shall receive! Someone in the Programming Throwdown discord suggested that we cover terminals and shells, so here we are! Despite sounding simple on the surface, there’s decades of complexity around terminal emulators and system…
From Combat to Code
Apr 30 • 97 min
Hey all!! Today we are sitting down with Jerome Hardaway. Jerome is an Air Force Veteran and the founder of Vets Who Code: a non-profit dedicated to training Veterans in web development and connecting Veterans to hiring managers around the World. Whether…
Image Processing
Apr 1 • 75 min
If you use ASCII encoding, the entire Oxford dictionary is about 5 million bytes. A single 4K image contains 25 million bytes. If you watch a 4K video running at 60 frames-per-second, over 300 dictionaries worth of data are going through your tv every…
Mar 4 • 69 min
While the web is one of the easiest platforms for deploying software, it can also be one of the trickiest to debug. People have many different browsers, and some have plugins or settings that restrict functionality. It may be extremely difficult to…
Wolfram Language and Mathematica
Jan 15 • 137 min
Happy New Year! Today we are sitting down with Stephen Wolfram, inventor of Mathematica, Wolfram Alpha, and Wolfram Language! In this super interesting episode, Stephen talks us through his journey as a mathematician, software architect, and language…
Holiday Party
Jan 2 • 58 min
Hey all! This is our annual holiday show! We give away prizes and talk about random news stories :-D. Thanks to everyone who chatted with us on Discord, and looking forward to a super exciting 2019! I’ll be sending an email to all prize winners later…
Customer Bug Handling
Dec 4, 2018 • 66 min
Hey all! How do you find and triage bugs on other people’s machines when they don’t have the source code (or the knowledge to build it)? That’s what we explain in today’s episode! It’s one of the topics that’s rarely spoken about but extremely important…
Teaching Kids to Code
Nov 13, 2018 • 72 min
Hey all! First of all, sorry for the delay in publishing October’s episode. There are some pretty intense wildfires close to where we live, but it looks like things are getting under control. Huge thanks to all the firefighters! In this episode Patrick…
Reactive programming and the Actor model
Sep 28, 2018 • 85 min
Hey everyone! This episode is an absolutely fascinating interview with Jonas Bonér, creator of Akka. We dive into reactive programming, the actor model, and the Akka toolkit. Jonas also describes his journey as a developer that led him to create Akka and…
2018 Mailbag
Sep 6, 2018 • 73 min
Hey all! Since setting up the #questions channel in discord, a lot of you have written some phenominal and thought-provoking questions both there and via email, so this is a great time to go back through our favorites and answer them in a Mailbag episode!…
Jul 31, 2018 • 67 min
What is a thread/process? How can you speed up a program that requires a lot of compute resources? How can you have a single machine serve web pages to 100s of people, some of whom have slow connections? Patrick and I answer these questions on today’s…
Technical Arguments
Jul 1, 2018 • 91 min
Sunday is a non-traditional day for a new episode and this is definitely a non-traditional episode! Today we are talking about Technical Arguments. We cover the most common arguments/debates you will have on the job as a software engineer and how to make…
Building and Testing Web Services with Postman
May 31, 2018 • 73 min
Web services are for much more than building websites: they are one of the most common techniques for passing information among programs. Creating a web API for your program is a great way to access it from a browser, another program, or a mobile app.…
May 2, 2018 • 80 min
Julia may be the most requested language we have ever received on the show, so Patrick and I took some time of the past few weeks to get familiar with Julia and share our findings. Overall, it’s a really slick language that has data and process…
Code Documentation
Apr 4, 2018 • 84 min
Writing documentation is an art and there aren’t many cut-and-dry rules that will guarantee the right documentation quality. In this episode Patrick and I chat about our lessons learned and also cover a bunch of ways to document and write self-documenting…
Mar 5, 2018 • 98 min
Ever want to build your own robot? We explain how to do this using Arduino! Show notes:
Cryptocurrency and Smart Contracts
Jan 30, 2018 • 58 min
Today we discuss Cryptocurrency and Smart Contracts with Amy Wan, CEO of Sagewise. Amy has a legal background and combines this with expertise in cryptocurrency, blockchain, ICOs, and smart contracts. Show Notes:…
Parallel Computing with Incredibuild
Dec 19, 2017 • 65 min
How can you use all of the computers in your lab/office at the same time to speed up tasks? Today we talk with Dori Exterman, CTO of Incredibuild, about parallel computing and the awesome tool Incredibuild has created that can run any multi-process…
Nov 28, 2017 • 66 min
How can you maintain a separate version of your app/site in all langauges and locales? How do you handle right-to-left text, various currencies, and a bunch of languages with non-ascii characters? We explain all this and more in Internationalization! Show…
Office Spaces
Oct 30, 2017 • 81 min
Today, we are going to talk about… office space! Not the hilarious 1999 movie directed by Mike Judge, but modern office spaces for engineers and developers. We cover office setups, desk setups, amenities, and more! We won’t cover IDEs (check out episode…
COBOL and Mainframe Computing
Sep 28, 2017 • 80 min
Did you know that there was a programming language co-invented by a consortium of government offices and top businesses (at the time)? Today we talk about that language: COBOL, and also discuss the mainframe computers of that era that ran COBOL. Show…
Puzzle Games with Mark Engelberg
Aug 17, 2017 • 112 min
Today we chat with Mark Engelberg about his background in software engineering and game design. Show notes:
Soft Skills with SimpleProgrammer
Jul 19, 2017 • 103 min
Today we chat with John Sonmez about soft skills: communication, self-motivation, learning to learn, and negotiation, Show notes:
Jun 30, 2017 • 86 min
Today we explain how cryptocurrency works and why it is possible to buy and sell electonic currency. Show notes:
Code Reviews
May 30, 2017 • 56 min
In this episode we explain how code reviews work and why they are so important. Show notes:
Testing on Mobile with Kobiton
May 15, 2017 • 48 min
In this episode we interview Josh and Adam from Kobiton. They describe the challenges with releasing a mobile app for many platforms, and how Kobiton allows one to test their app on many devices in the cloud. Show notes:…
Mar 30, 2017 • 72 min
In this episode we explain how data is encrypted and decrypted, and how you can use encryption in the things you build. Show notes:
Spring Framework
Feb 28, 2017 • 63 min
In this episode we interview Spencer Gibb and Mark Heckler from Pivotal, the company behind Spring Framework: a set of powerful enterprise Java libraries and services. Show notes:
PHP and Hack
Jan 24, 2017 • 68 min
On this show we discuss PHP and Hack, an language that extends PHP. Show notes:
Clojure with Eric Normand
Dec 22, 2016 • 68 min
On this show we discuss Clojure and ClojureScript, and all the amazing things you can build with them. Show notes:
Javascript For Mobile with Burke Holland
Nov 23, 2016 • 60 min
How to build great mobile apps with Javascript. Show notes:
Deploying Software
Oct 31, 2016 • 71 min
How to distribute software so it works on other people’s computers. Show notes:
Scaling Web Sites with Daniel Moore
Sep 27, 2016 • 55 min
This show is an interview with Daniel Moore about scaling web sites. Show notes:
Aug 31, 2016 • 75 min
This show covers software optimization (how to make software run faster). Show notes:
Jul 22, 2016 • 67 min
This show is an intro to robotics. Blog post:
Editor Wars
Jun 24, 2016 • 80 min
This show covers many different editors. Blog post:
Programming for the GPU
May 25, 2016 • 65 min
On this episode we invite Mark Harris, Chief Technologist at NVIDIA, to talk about programming for the GPU. Show notes:
Open Source Communities
May 2, 2016 • 62 min
On this episode we invite Mikeal Rogers, Community Manager at the Node.JS Foundation, to talk about open source communities and organizing large open source projects.
Scientific Python
Mar 28, 2016 • 71 min
This show covers Scientific Python: A platform for data analysis, visualization, and reporting built on top of python. Book of the Show Jason: Masterminds of Programming Patrick: Redshirts
Udacity: Democratizing Education
Feb 24, 2016 • 66 min
This show covers Online/Continuing education. We ask the experts: How can more people get jobs in programming?
Jan 21, 2016 • 70 min
This show celebrates 50 episodes of Programming Throwdown! We answer questions from the audience live on .
Tamper Protection
Dec 21, 2015 • 82 min
This show covers Tamper Protection: How hackers are able to tamper with compiled programs and the programs that prevent tampering.
Source Control
Dec 7, 2015 • 63 min
This show covers Source Control: Various tools that keep history of your code and enable code collaboration. Book of the Show Jason: Kobolds Ate My Baby Patrick: Firefight
Oct 12, 2015 • 69 min
This show covers Ruby: a multipurpose interpreted language for rapid development. Book of the Show Jason: Paranoia RPG Player’s Handbook Patrick: Lock In
Sep 10, 2015 • 66 min
This show covers R: a language suitable for data mining and machine learning. Book of the Show Jason: The hard thing about hard things Patrick: Steel World
Inside Video Game Programming
Aug 11, 2015 • 82 min
This show covers game development at a AAA company, featuring Dave Smith from Naughty Dog Inc. and Florent Devillechabrol from Ubisoft. Jason: The Mythical Man Month ; Patrick: Armada
Logo Scratch Lego
Jul 10, 2015 • 66 min
This show covers several programming languages we used as kids. Book of the Show Jason: Gödel, Escher, Bach: An Eternal Golden Braid ; Patrick: Leviathan Wakes
Jun 5, 2015 • 99 min
This show covers Debugging: how to fix and maintain code across any language. Book of the Show Jason & Patrick: Mindhacking
May 7, 2015 • 70 min
This show covers Fortran: An old (but still very useful!) imperative language for numerical calculations. Books of the Show Jason: A Theory of Fun in Game Design Patrick: Monster Hunter International
Apr 6, 2015 • 61 min
This show covers Node.js: A server-side platform for developing network applications. Books of the Show Jason: You Can Draw in 30 Days: The Fun, Easy Way to Learn to Draw in One Month or Less Patrick: Abyss Beyond Dreams (Peter F.…
Feb 2, 2015 • 71 min
This show covers Unity: A Toolchain and set of three scripting languages primarily for making games. Tools of the show: Jason: Meld Patrick: Space Marshals
Jan 7, 2015 • 60 min
This show covers Rust: A memory-safe systems programming language. Tools of the show: Jason: This War of Mine Patrick: Vainglory.
Nov 26, 2014 • 72 min
This show covers SIMD: A set of languages for fast array operations. Tools of the show: Jason: OpenEmu Patrick: Books of the show: Jason: Emacs Quick Reference Card: Patrick: The Mote in…
Funky Languages
Oct 15, 2014 • 71 min
This show covers Funky Languages: esoteric languages that are created mostly for fun. Tools of the show: Jason: Open Broadcaster Software Patrick: Plex. Books of the show: Jason: Impro for Storytellers: Patrick: The Android’s Dream…
Sep 8, 2014 • 62 min
This show covers Swift, a language developed by Apple for iOS and OS/X. Tools of the show: Jason: Nextdoor Patrick: Waze. Books of the show: Jason: Denial: Why Business Leaders Fail… Patrick: Red Seas Under Red Skies…
Aug 7, 2014 • 62 min
This show covers Haskell, a statically-typed functional language. Tools of the show: Jason: Uber Patrick: Store Coupon Apps. Books of the show: Jason: Start With Why Patrick: Childhood’s End
Jun 26, 2014 • 74 min
This show covers Databases. Tools of the show: Jason: nvAlt / nvPy Patrick: Arduino. Books of the show: Jason: Negotiating For Dummies Patrick: Steelheart
Design Patterns
May 13, 2014 • 69 min
This show covers Design Patterns. Tools of the show: Jason: VirtualBox Patrick: Bittorrent Sync. Books of the show: Jason: HTML5 Game Development Insights Patrick: The Martian
Mar 18, 2014 • 76 min
This show covers OpenSCAD and 3d modeling. Tools of the show: Jason: uSelect iDownload Patrick: Skulls of the Shogun. Books of the show: Jason: My Friend Dahmer Patrick: Make Magazine
Unix Commands
Jan 27, 2014 • 78 min
This show covers Unix Commands and How to Ace an Interview. Tools of the show: Jason: Duolingo Patrick: 123D Design. Books of the show: Jason: Locke and Key Patrick: Lies of Locke Lamora
Nov 20, 2013 • 81 min
This show covers Field Programmable Gate Array (FPGA) programming. Tools of the show: Jason: Kaggle Patrick: KiCad . Books of the show: Jason: Mahout in Action Patrick: Bebop to the…
CUDA and OpenCL
Sep 4, 2013 • 64 min
This show covers CUDA and OpenCL, languages targeting the Graphics Processing Unit (GPU). Tools of the show: NES/SNES Together…
Applied Artificial Intelligence
Jun 13, 2013 • 68 min
This show covers Applied Artificial Intelligence, techniques for applying AI to work or hobby projects. Tools of the show: WebM and FFMpeg. Books of the show: 2br02b and The Code Book (Kindle:,…
Theoretical Artificial Intelligence
Jun 4, 2013 • 73 min
This show covers Theoretical Artificial Intelligence, a deep dive into what AI is all about. Tools of the show: TypeScript and Ridiciulous Fishing. Books of the show: Dungeon (Paperback: and Hitchhiker’s Guide to the Galaxy…
Image Processing
Mar 26, 2013 • 66 min
This show covers Image Processing, techniques for manipulating images and extracting other useful information from them. Tools of the show: Moon+ Reader Pro and Spaceteam. Books of the show: Do Androids Dream of Electric Sheep? (Kindle:…
Unit Testing
Feb 22, 2013 • 74 min
This show covers unit testing, a way to put your code through the ringer before you show it to your users. Tools of the show: JsFiddle and Books of the show: The Lean Startup (Kindle: ), (Hardcover:…
JVM Languages (Jython, Clojure, Scala)
Jan 30, 2013 • 60 min
This show covers some JVM languages, languages that are built on top of Java. Tools of the show: Ripple Emulator and Battle of the Bulge. Books of the show: Reinforcement Learning: An Introduction and Ready Player One…
Dec 26, 2012 • 67 min
This show covers Hadoop, a set of several languages and libraries for working with big data. Tools of the show: Emacs and Chrome Browser Sync. Books of the show: Hadoop: The Definitive Guide and Anathem
Dec 9, 2012 • 66 min
This show covers LaTeX, a digital typesetting language. Tools of the show: Cocos2d-X and Snapseed. Books of the show: Algorithms in C++ and Head First Design Patterns
Nov 25, 2012 • 80 min
This show covers some of the top questions asked by the fans.
Query Languages
Oct 28, 2012 • 87 min
This show covers Query Languages, programming languages designed at accessing data from databases. Tools of the biweek: Pixen and Downcast
Sep 22, 2012 • 52 min
This show covers Beginner’s All-purpose Symbolic Instruction Code (BASIC), a starter language for many programmers. Tools of the biweek: Dungeon Crawl Stone Soup and Wireshark
Sep 7, 2012 • 72 min
This show covers Go, an interpreted, low-level language that has native coroutine support. News:100000 DPI printer, Joyent Cloud ending lifetime support, Apple buys fingerprint company, Twitter caps 3rd party apps.
Aug 3, 2012 • 78 min
This show covers Java, a semi-compiled language used heavily in web and mobile development. News: Ouya android gaming console, Is C/C++ Worth It?, Engineered Jellyfish. Tools of the BiWeek: Cygwin, MinGW and Macports, uShare.
Build Automation
Jul 3, 2012 • 69 min
This show covers build automation, scripts to streamline the build process. News: New Top Level Domains, Anatomy of Freemium, LinkedIn Passwords Leaked, $100 Masters Degree. The tools of the biweek are Apache Cordova (Formerly PhoneGap), Xbox Media Center…
May 29, 2012 • 69 min
This show covers Lua, an interpreted language designed to be embedded into larger applications. News: Facbeook IPO, Javascript Arduino programming, Brain Controlled Robots. The tools of the biweek are JDBM/BerkeleyDB and Audacity.
Interface Description Languages (IDLs)
May 1, 2012 • 73 min
This show covers Interface Descrption Languages (IDLs), such as thrift and protocol buffers. News: Sony fighting with PSP hackers, Pebble smartphone watch, Pacman runs on 0x10C, UF Computer Science cuts. The tools of the biweek are Sublime Text Editor and…
Apr 10, 2012 • 75 min
This show covers C++, a general-purpose programming language. News: Visualizing code to fail faster, the future of the used game market, Prince of Persia source code found. The tools of the biweek are sfxr and DC universe online.
Mar 20, 2012 • 56 min
This show covers Dart, a client-side browser alternative to javascript. Dart currently only runs in Chrome, but dart code can be compiled to javascript and then run in any browser. News: Raspberry Pi, California allows autonomous cars, Stanford online…
Feb 26, 2012 • 66 min
This show covers Lisp, one of the first functional langauge that is often used for academic purposes, but also has a place in industry. The episode talks about Cuda, how to write a Roguelike, becoming a good programming, and DOS games on Chrome. The tools…
Aug 29, 2011 • 85 min
This show covers Javascript, the only client-side scripting language built into most modern browsers. The episode talks about Patrick’s move to Silicon Valley, Codecademy, The HP Touchpad Fire sale, and Minecraft’s Notch challenging Bethesda to Quake 3.…
Aug 6, 2011 • 74 min
This show covers HyperText Markup Language (HTML) and Cascading Style Sheets (CSS), two of the three languages that make up most client-side Internet programming. The episode talks about the Humble Indie Bundle 3, Linux Kernel reaching 3.0, and the end of…
Jul 9, 2011 • 80 min
This show covers Prolog (Programmable Logic), a rule based language based on deductive inferencing. The episode talks about the Zynga IPO, Google+, and types of coders (Computer Scientist, Programmer, and Developer). The tools of the biweek are FreeNX, a…
Jun 18, 2011 • 79 min
This show covers Objective-C, the premier language for iphone, ipad, and os/x app development. The episode talks about the upcoming Wii U console and Duke Nukem Forever, (possibly) the most offensive game ever made. After the news, the show discusses why…
May 21, 2011 • 74 min
This show covers Assembly, the lowest level language used to program a computer. This episode talks about the amount of traffic Netflix is generating, how many ebooks Amazon now sells, Apple not standing up for its developers, how young is too young for…
May 13, 2011 • 60 min
This show covers C# a CLI language designed by Microsoft. This episode talks about over the air updates, decompiling, and Ubuntu. The tools of the day are VLC, a cross-platform video player and PortableApps, a collection of applications able to run off a…
Matlab and Octave
Apr 27, 2011 • 73 min
This show covers Matlab, a matrix-based interpreted multiprocessing function language. This episode talks about cloud computing, gaming, and then DIY hardware. The tools of the day are TI MSP430 Launchpad, a hobbyist single board computer (SBC) and…
Erlang Programming Language
Apr 8, 2011 • 61 min
This show covers Erlang, a multiprocessing function language. The show talks about latest updates in C++ and java, then talks about open sourcing hardware. The tools of the day are MS Dependency Walker, a DLL resolver and Keepass, a password multiplexer.
Python Programming Language
Mar 25, 2011 • 69 min
This show covers Python, a popular interpreted language. The show begins with discussion on javascript and browser updates, then goes into the Goldman Sach’s stolen code trial, eco-friendly programming, and the origins of Oregon Trail. The tools of the…
C Programming Language
Mar 8, 2011 • 57 min
This show covers C, the foundation of all programming languages. We begin by introducing ourselves, then jump into talking about the PS3 hack and Nokia cell phone strategy. The tools of the day are Comix the comix book reader and Bitcoin, a virtual…