
Programming Throwdown
188 episodes — Page 2 of 4
Ep 138138: Fixing the Internet with John Day
00:00:24 Introductions00:00:49 IP v600:04:50 OSI00:12:53 The IP v7 debate00:20:18 The definition of an address’s scope00:21:38 Why John feels DNS was a mistake00:26:40 How IP mobility works00:32:13 Bluetooth 00:41:41 Where will Internet architecture go from here00:49:49 Understanding the problem space00:59:04 The angels in the details01:00:53 Scientific thinking vs engineering thinking01:04:01 Victorian architecture01:06:11 John’s career advice01:11:18 Garbage Can Model01:14:38 How to make the most out of college today01:27:05 FarewellsResources mentioned in this episode: Professor John D. Day:Wikipedia: https://en.wikipedia.org/wiki/John_Day_(computer_scientist)Website: https://www.bu.edu/met/profile/john-day/Book: https://www.oreilly.com/library/view/patterns-in-network/9780132252423/Terminologies:CIDR: https://en.wikipedia.org/wiki/Classless_Inter-Domain_RoutingOSI: https://en.wikipedia.org/wiki/OSI_modelConnectionless Network Protocol: https://en.wikipedia.org/wiki/Connectionless-mode_Network_ServiceSIP (Session Initiation Protocol): https://en.wikipedia.org/wiki/Session_Initiation_ProtocolGarbage can model: https://en.wikipedia.org/wiki/Garbage_can_modelIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 137137: The Origins of the Internet with John Day
00:01:01 Introduction00:01:28 COVID and the challenge of teaching00:04:11 John’s academic and career path00:08:14 LSI technology00:12:13 Collaborative software development in the day00:15:24 ARPANET’s early use00:20:08 Atom bomb and weather simulations00:26:55 The message-switching network 00:34:57 Pouzin00:38:00 Every register had a purpose00:45:15 The Air Force in 197200:52:10 Low memory00:59:14 Early problems with TCP01:11:51 The separation of mechanism and policy01:23:25 FarewellsResources mentioned in this episode:Professor John D. Day:Wikipedia: https://en.wikipedia.org/wiki/John_Day_(computer_scientist)Website: https://www.bu.edu/met/profile/john-day/Book: https://www.oreilly.com/library/view/patterns-in-network/9780132252423/ Pouzin Society: Website: https://pouzinsociety.org/ Twitter: https://twitter.com/pouzinsocietyIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 136136: Metaverse with Daniel Liebeskind
136: Metaverse with Daniel LiebeskindDecentralizing the future can often lead to missing out on genuine human communication. Daniel Liebeskind, Cofounder and CEO of Topia, talks about how they’re working to avoid that pitfall while building the foundation of a better online experience. Whether its his lessons from Burning Man, keeping the human spirit alive in today’s technological frontier, or how Topia fits in the future, Daniel has something for listeners.00:01:34 Introduction00:02:15 Daniel and early programming experience00:07:51 How coding felt like sorcery00:09:35 Skill trees00:16:10 Second Life00:19:56 Enhancing versus replacing real life experiences00:26:28 A decentralized Metaverse00:29:54 Web 2 versus Web 3 00:34:15 /r/place00:44:16 Why boom cycles are important for tech00:46:03 Topia for consumers00:52:47 Topia as a company00:55:50 Opportunities at Topia00:58:00 Topia.io01:03:50 FarewellsResources mentioned in this episode:Daniel Liebeskind, Cofounder and CEO of Topia:LinkedIn: https://www.linkedin.com/in/dliebeskind/Website: https://medium.com/@dliebeskindTwitter: https://twitter.com/dliebeskindTopia:Website: https://topia.io/topia/careersLinkedIn: https://www.linkedin.com/company/topia-io/If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 135135: Kubernetes with Aran Khanna
00:00:15 Introduction00:01:03 Aran Khanna and his background00:05:12 The Marauder’s Map that Facebook hated(Chrome Extension)00:20:11 Why Google made Kubernetes00:31:14 Horizontal and Vertical Auto-Scaling00:35:54 Zencastr00:39:53 How machines talk to each other00:46:32 Sidecars00:48:25 Resources to learn Kubernetes00:52:59 Archera00:59:31 Opportunities at Archera01:01:08 Archera for End Users01:02:30 Archera as a Company01:05:46 Farewells Resources mentioned in this episode:Aran Khanna, Cofounder of Archera:LinkedIn: https://www.linkedin.com/in/aran-khanna/Website: http://arankhanna.com/menu.htmlTwitter: https://twitter.com/arankhannaArchera:Website: https://archera.ai/LinkedIn: https://www.linkedin.com/company/archera-ai/Twitter: https://twitter.com/archeraaiKubernetes:Website: https://kubernetes.io/Documentary: https://www.youtube.com/watch?v=BE77h7dmoQUIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 134134: Ephemeral Environments with Benjie De Groot
134: Ephemeral Environments with Benjie De GrootDownloadHow do you test changes to your web backend or database? Many people have a "production" and one "development" database, but the development database can easily become broken by one engineer and thus unusable for the rest of the team. Also, how would two engineers make changes in parallel to the development environment? What if you could spin up hundreds or thousands of development databases as you need them? Today we have Benjie De Groot, Co-Founder and CEO of Shipyard to explain ephemeral environments and how virtual machines and containers have made massive improvements in devops! 00:00:15 Introduction00:00:24 Introducing Benjie De Groot00:01:26 Benjie’s Programming Background00:06:34 How Shipyard started00:09:17 Working in Startups vs. Tech Giants00:19:28 The difference between Virtual Machines and Containers00:26:17 Local Development Environment00:40:27 What is a DevOps engineer and what does it entail?00:45:42 Zencastr00:50:12 Shipyard as a company00:55:29 How Shipyard gets clients01:06:48 Farewells Resources mentioned in this episode: Benjie De Groot, Co-Founder & CEO at Shipyard:LinkedIn: https://www.linkedin.com/in/bueller/Podcast: https://www.heavybit.com/library/podcasts/the-kubelist-podcast/Shipyard:Website: https://shipyard.build/Careers: https://shipyard.build/careers/LinkedIn: https://www.linkedin.com/company/shipyardbuild/Twitter: https://twitter.com/shipyardbuildCommunity Website: https://ephemeralenvironments.io/GitHub: https://github.com/shipyardHeavybit:Website: https://www.heavybit.com/LinkedIn: https://www.linkedin.com/company/heavybit/Twitter: https://twitter.com/heavybit If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 133133: Solving for the Marketplace Problem with Andrew Yates
As anyone who listens to the show regularly knows, I've always been fascinated by marketplaces. How do we figure out what to charge for something, and how do we match buyers and sellers? How does a company like Uber match drivers to riders so quickly? Today we have Andrew Yates, Co-Founder & CEO at Promoted.ai, to talk about marketplaces and how to optimize for this two-sided problem. 00:00:15 Introduction00:00:27 Introducing Andrew Yates00:00:50 Andrew’s Programming Background00:04:19 Andrew at Promoted.AI00:08:17 What is a Marketplace?00:17:45 Marketplace Rankings00:22:50 Short-term vs Long-term Experience00:24:43 Machine Learning and the Marketplace00:34:57 Measurements00:37:09 Promoted.AI Integration00:38:31 How Promoted.AI Measures Success00:41:14 Auction Theory00:46:08 Experience with YCombinator00:50:34 Promoted.AI as a Company00:55:47 Farewells Resources mentioned in this episode: Andrew Yates, Co-Founder & CEO at Promoted.ai:LinkedIn: https://www.linkedin.com/in/andrew-yates-0217a985/Twitter: https://mobile.twitter.com/ayates_promoted Promoted.ai:Website: https://www.promoted.ai/LinkedIn: https://www.linkedin.com/company/promoted-ai/If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 132132: Funding Open-Source Projects
00:00:15 Introduction00:01:24 Gaming setups00:12:25 News00:12:27 I was wrong, CRDTs are the future00:17:18 How we lost 54k Github stars00:21:10 DALL-E 00:25:45 Inside the Longest Atlassian Outage of All Time00:35:11: Sponsor00:36:22 Book of the Show00:36:38 Indie Boardgame Designers Podcast00:37:24 The Laundry Files00:40:35 Tool of the Show00:40:39 Zapier00:42:21 Earthly00:46:46 Funding open-source projects01:19:44 How to get funding for open-source projects01:22:47 Farewells Resources mentioned in this episode:Media:The King of Kong: A Fistful of Quarters (2017)Class Action Park (2020)Indie Boardgame Designers Podcast: https://indieboardgamedesigners.com/GitHub Stars Won’t Pay Your Rent: https://medium.com/@kitze/github-stars-wont-pay-your-rent-8b348e12baedNews:I Was Wrong, CRDTs Are The Future: https://josephg.com/blog/crdts-are-the-future/How We Lost 54k GitHub Stars: https://httpie.io/blog/stardustDALL-E: https://openai.com/blog/dall-e/Inside the Longest Atlassian Outage of All Time: https://newsletter.pragmaticengineer.com/p/scoop-atlassian?s=rBooks:Indie Board Game Designers PodcastThe Laundry Files: https://amzn.to/3kdWWQgTools:Zapier: https://zapier.com/N8n: https://n8n.io/Earthly: https://earthly.dev/Adam Gordon Bell:Twitter: https://twitter.com/adamgordonbellWebsite: https://adamgordonbell.com/LinkedIn: https://www.linkedin.com/in/adamgordonbell/CoRecursive: https://corecursive.com/ If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 131131: Supporting your Favorite Creators with Brave with Jimmy Secretan
I've been a big fan of Brave Browser ever since attending a presentation from Brandon Eich back in 2017. Brave was one of the first browsers to aggressively block the ability for websites to share information on your computer without your consent (i.e. third party cookies). I'm so excited to sit down with Jimmy Secretan, VP of Ads and Premium Services of Brave, and talk about all things Brave, from the Browser to the other products to the way Brave takes privacy on the internet to a whole new level, while also empowering content creators and advertisers who depend on ads for income and to promote their businesses.00:00:15 Introduction00:00:44 Introducing Jimmy Secretan00:01:10 How Brave started00:09:33 Brave and internet advertising00:21:13 Local machine learning00:32:07 What is BAT (Brave Attention Tokens) 00:42:59 Cross-platform data synchronization 00:44:28 Chromium00:50:22 Public and Private key encryption and authentication00:54:27 Brave for Content Creators00:59:03 Where is Brave now and what is its trajectory01:05:40 Opportunities in Brave01:13:10 FarewellsResources mentioned in this episode:Jimmy Secretan, VP of Ads and Premium Services:Twitter: https://twitter.com/jsecretanLinkedIn: https://www.linkedin.com/in/jimmysecretan/ Brave:Website: https://brave.com/Brave Careers: https://brave.com/careers/Twitter: https://twitter.com/braveLinkedIn: https://www.linkedin.com/company/brave-software/If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 130130: Ethical Hacking with Ted Harrington
"Hacking" is a word that evokes awe from the public, laughter from developers, and pure fear from technology leaders. But what really is hacking? What does trust really mean and how do we acquire and keep trust on the Internet? It turns out that, while hacking is associated with computers, the methods behind it have been around since the dawn of time. Today we have Ted Harrington from ISE to dive deep into hacking, all the way from the medieval times to today. 00:00:15 Intro00:01:25 Introducing Ted Harrington00:07:10 Ethical Hackers, Non-Ethical Hackers, and Productivity00:11:58 Starting out in Ethical Hacking/Security00:14:40 Imposter Syndrome00:19:34 What is Hacking?00:30:48 Is Hacking like magic?00:38:14 Defense in Depth00:42:04 Earning trust and The Departed movie (Spoiler alert)00:59:52 DEF CON® Hacking Conference01:02:46 Tips on how not to get hacked01:10:08 ISE.io culture and opportunities01:24:13 Farewells Resources mentioned in this episode: Companies: ISE (Independent Security Evaluators)o Website: https://www.ise.io/o LinkedIn: https://www.linkedin.com/company/independent-security-evaluatorso Twitter: https://twitter.com/ISEsecurityo Facebook: https://facebook.com/ISE.infosec People: Ted Harringtono Website: https://www.tedharrington.com/o LinkedIn: https://www.linkedin.com/in/securityted/o Twitter: https://twitter.com/SecurityTedo Book: https://www.amazon.com/Hackable-How-Application-Security-Right/dp/154451767X Sponsor: MParticleo Website: https://www.mparticle.com/ If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 129Episode 129 - Web3.0: Breaking free from the Client Server Model with Michelle Lee
Brief Summary: What is Web 3.0? Guest speaker Michelle Lee, Product Lead of Protocol Labs, shares how web 3.0 will revolutionize the Internet and bring trust back into the web. 00:00:25 Introduction00:01:36 Michelle Lee’s career 00:03:10 What is human-computer interaction?00:04:55 The Google Sheets user experience00:06:19 Google Checkout, user feedback, and emails00:10:23 Code for America00:13:47 The real power of Open Source00:14:14 Web 3.000:23:04 IPFS network accessibility00:26:14 How does IPFS handle bogus content?00:38:56 Network storage costs00:43:03 Privacy and identification on IPFS00:45:23 Content moderation from the Web 3.0 perspective00:49:48 Audius00:54:20 Protocol Labs and IPFS00:55:26 Working with Protocol Labs01:05:00 Farewells Resources mentioned in this episode: Companies:Protocol Labs:Website: https://protocol.ai/Twitter: https://twitter.com/protocollabsLinkedIn: https://www.linkedin.com/company/protocollabs/Youtube: https://www.youtube.com/ProtocolLabsFilecoin: https://filecoin.io/Hackathons @ Protocol Labs: https://hackathons.filecoin.io/Course Learning @ Protocol Labs: https://proto.school/Metamask:https://metamask.io/Fleek:Website: https://fleek.co/Space Storage: https://fleek.co/storage/Estuary:Website: https://estuary.tech/Audius:Website: https://audius.co/ Social Media:Michelle Lee, Product at Protocol LabsTwitter: https://twitter.com/mishmoshLinkedIn: https://www.linkedin.com/in/michellelee3 Sponsor:RollbarWebsite: https://rollbar.com/Freebies: https://try.rollbar.com/pt/ Download the episode hereIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/ Reach out to us via email: [email protected] You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 128128: WebAssembly with Kevin Hoffman
Summary:What is WebAssembly? Guest speaker Kevin Hoffman, CTO of Cosmonic shares what WebAssembly is, why it exists, and what kind of things you can do with it.Notes:00:00:16 Introduction00:00:52 Cosmonic during COVID00:02:45 Kevin Hoffman’s career and Cosmonic’s begginings00:12:39 WebAssembly integrations00:16:20 What is WebAssembly?00:27:30 The developer experience00:30:30 WebAssembly, JSON, and other object interactions00:36:35 Rollbar00:41:08 Compiler linking00:49:27 wasmCloud00:54:21 Decoupling clouds01:01:51 Cosmonic fostering wasmCloud/WebAssembly01:03:28 Cosmonic as a company01:09:33 Opportunities at Cosmonic01:13:03 FarewellsResources mentioned in this episode:Companies:CosmonicWebsite: https://cosmonic.com/Twitter: https://twitter.com/cosmonicLinkedIn: https://www.linkedin.com/company/cosmonic-corp/People:Kevin Hoffman, Chief Technology Officer at CosmonicTwitter: https://twitter.com/KevinHoffmanLinkedIn: https://www.linkedin.com/in/%F0%9F%A6%80-kevin-hoffman-9252669/Sponsor:RollbarWebsite: https://rollbar.com/Freebies: https://try.rollbar.com/pt/If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown onFacebook | Apple Podcasts | Spotify | Player.FMJoin the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 127127: AI for Code with Eran Yahav
Brief Summary:Programming is difficult as it is, but imagine how difficult it was without all the current tools, compilers, synthesizers, etc. that we have today. Eran Yahav, Chief Technology Officer at Tabnine shares how AI is currently helping with code writing and how it could change in the future.00:00:16 Introduction00:00:51 Eran Yahav’s programming background00:08:11 Balance between Human and the Machine00:11:49 Static Analysis00:29:42 Similarities in Programming Constructs00:25:30 Average vs Tailored tooling00:36:19 Machine Learning Quality Metrics 00:38:27 Rollbar00:40:19 Model Training vs Statistic Matching00:50:19 Developers Interacting with their Code in the Future01:00:18 Tabnine01:08:17 FarewellsResources mentioned in this episode:Companies:Tabnine: Website: https://www.tabnine.com/Twitter: https://twitter.com/Tabnine_LinkedIn: https://www.linkedin.com/company/tabnine/Social Media:Eran Yahav, Chief Technology Officer at TabnineTwitter: https://twitter.com/yahaveLinkedIn: https://www.linkedin.com/in/eranyahav/Sponsor:RollbarWebsite: https://rollbar.com/Freebies: https://try.rollbar.com/pt/If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 126126 - Serverless Computing with Erez Berkner
Brief Summary:Erez Berkner, CEO of Lumigo, talks about his company, going serverless, and why you should too. He shares his experience and tips regarding serverless computing and its ever-growing opportunities in modern computing.00:00:16 Introduction00:01:43 Introducing Erez Berkner00:06:27 The start of Lumigo00:10:42 What is Serverless00:20:10 Challenges with going serverless00:39:53 Securing Lambdas00:46:50 Lumigo and breadcrumbs 00:55:46 How to get started with Lumigo00:57:06 Lumigo and databases00:58:20 Lumigo pricing01:00:28 Lumigo as a company01:06:30 Contacting Lumigo01:11:01 FarewellsResources mentioned in this episode:Companies:Lumigo: https://lumigo.io/Lumigo Free Trial: https://platform.lumigo.io/auth/signupSocials:Erez Berkner:Twitter: https://twitter.com/erezberknerLinkedIn: https://www.linkedin.com/in/erezbe/If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 125125 - Object Caching Systems
DownloadWe are sponsored by audible! http://www.audibletrial.com/programmingthrowdownWe are on Patreon! https://www.patreon.com/programmingthrowdownT-Shirts! http://www.cafepress.com/programmingthrowdown/13590693Join us on Discord! https://discord.gg/r4V2zpCObject Caching SystemsMany people have heard the names "redis" or "memcached" but fewer people know what these tools are good for or why we need them so badly. In this show, Patrick and I explain why caching is so important and how these systems work under the hood.Intro topic: Public database & cache services (Planetscale & Upstash)News/Links:Log4J Vulnerabilityhttps://jfrog.com/blog/log4shell-0-day-vulnerability-all-you-need-to-know/https://www.microsoft.com/security/blog/2021/12/11/guidance-for-preventing-detecting-and-hunting-for-cve-2021-44228-log4j-2-exploitation/Scan of the Month: Gameboyshttps://scanofthemonth.com/game-boy-original/Hyrum’s Lawhttps://www.hyrumslaw.com/Make the Internet Yours Again With an Instant Mesh Networkhttps://changelog.complete.org/archives/10319-make-the-internet-yours-again-with-an-instant-mesh-networkBook of the ShowJason: AI 2041https://amzn.to/3fOqnWQPatrick: Dawnshard - Brandon Sandersonhttps://amzn.to/3tFmuMiAudible Plug http://www.audibletrial.com/programmingthrowdownPatreon Plug https://www.patreon.com/programmingthrowdown?ty=hTool of the ShowJasonSwagger: https://swagger.io/Patrickripgrep https://github.com/BurntSushi/ripgrepTopic: Object Caching SystemsThe needLatencyIn memoryCachingDisadvantages compared to DBSize limits (memory)Limited query supportLimited persistence optionsStale cachesHow it worksKey-value storesSpecial operations for multi-get /multi-stepExpiry timers on each keyHashingExamplesRedisMemcachedDynamoDBGoogle datastoreFirebase database00:00:15 Introduction00:00:54 New Year’s Resolutions00:03:59 Saving money on cloud servers00:17:20 Scan of the Month00:20:14 Hyrum’s Law00:25:30 Make the Internet Yours Again with an Instant Mesh Network 00:31:45 Book of the Show 00:31:56 AI 2041 00:35:25 Don Shard00:37:35 Tool of the Show00:38:17 Swagger00:59:10 ripgrep0:45:31 Object Caching Systems01:10:22 High Frequency Trading01:14:07 FarewellsIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordYou can also help support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 124124 - Holiday Episode 2021!
In this holiday episode, Jason and Patrick answer questions from listeners. They also look back at the past year’s challenges and victories.00:15:35 (Kevin)What's been the biggest thing that pushed you to learn more during your career?Was it taking a new job and moving somewhere, doing stuff in your spare time or something like a new hobby or anything else?00:29:38 (Kevin)Favorite city to live in or visit?00:31:29 First Winner (James B.)00:32:21 (Clever Clover/James)Next biggest tech prediction.00:36:28 (Paul) If we could standardize all the code there is out there to one particular language, which language would it be and why would it be Python?00:40:40 Second Winner (Collin G.)00:41:21 (Necrous)If you could redo your career and education path, what would you change?00:47:12 Third Winner (Matt I.)00:47:48 (MQNC)What is the dirtiest hackiest anti-pattern piece of code you ever wrote in full consciousness and even maybe enjoying the thrill and why was it the way to go?00:54:36 (Leedle)Thoughts on server side rendering React and NextJS?00:57:00 Fourth Winner (Glenn S.)00:57:25 (NC Plattipus)The visual programming language, LabVIEW?01:05:02 Fifth Winner (James F.)01:05:53 (Gethan)Future technology or big technologies, what about AR? 01:10:18 (Gethan)On the topic of getting a master's degree or classes, do you see a benefit of getting certifications? 01:18:16 Sixth Winner (Don R.)01:19:38Predictions we made last 2020 and how they held up.01:26:00FarewellsIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 123123 - Project Planning
How do you stay focused when working on large projects that span many months? In this duo episode, we talk about Project Planning techniques and trends! We also cover solving personal data storage problems and building CNC machines & printers. 00:00:15 Introduction00:01:33 UML00:05:22 Home NAS and other personal storage solutions00:18:09 Homebrew CNC machine00:29:37 Raft (Consensus Algorithm)00:36:54 The Mathematics of 204800:45:44 Book of the Show00:45:57 Manager Tools 00:49:10 Make Magazine00:57:50 Tool of the Show00:57:51 Workflowy00:59:10 GitHub Desktop01:01:00 Project Planning01:22:11 FarewellsResources mentioned in this episode:Tools:Workflowy: https://workflowy.com/b/Github Desktop: https://desktop.github.com/Companies:Manager Tools: https://www.manager-tools.com/Make Magazine: https://makezine.com/Other references: QT Designer: https://www.qt.io/Shapeoko: https://carbide3d.com/shapeoko/Curves and Surfaces by Bartosz Ciechanowski: https://ciechanow.ski/curves-and-surfaces/Inkscape: https://inkscape.org/Raft: https://raft.github.io/If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 122122 - Building Conversational AI's with Joe Bradley
When you ask Alexa or Google a question and it responds, how does that actually work? Could we have more in-depth conversations and what would that look like? Today we dive into conversational AI with Joe Bradley and answer these questions and many more.Thanks for supporting the show!00:00:15 Introduction00:01:24 Introducing Joe Bradley00:04:44 How Joe got into Conversation AI00:21:35 Zork and WordNet00:27:48 Automatic Image Detection/Captioning00:39:31 MuZero00:45:27 Codex00:50:15 GPT and businesses00:55:16 Artificial General Intelligence01:00:05 What is LivePerson01:16:30 Working at LivePerson01:21:18 Job opportunities in LivePerson01:27:04 How to reach Joe01:32:40 FarewellsResources mentioned in this episode:Companies:LivePerson: liveperson.comPyTorch: pytorch.orgTensorFlow: tensorflow.com ★ Support this podcast on Patreon ★
Ep 121121 - Edge Computing with Jaxon Repp
What is "The Edge"? The answer is that it means different things to different people, but it always involves lifting logic, data, and processing load off of your backend servers and onto other machines. Sometimes those machines are spread out over many small datacenters, or sometimes they are in the hands of your customers. In all cases, computing on the edge is a different paradigm that requires new ways of thinking about coding. We're super lucky to have Jaxon on the show to share his experiences with edge computing and dive into this topic!!00:00:23 Introduction00:01:15 Introducing Jaxon Repp00:01:42 What is HarperDB?00:08:10 Edge Computing00:10:06 What is the “Edge”00:14:58 Jaxon’s history with Edge Computing and HarperDB00:22:35 Edge Computing in everyday life00:26:12 Tesla AI and data00:28:09 Edge Computing in the oil industry00:35:23 Docker containers00:42:33 Databases00:48:29 Data Conflicts00:55:43 HarperDB for personal use01:00:00 MeteorJS01:02:29 Netflix, as an example01:06:19 The speed of edge computing01:08:43 HarperDB’s work environment and who is Harper?01:10:30 The Great Debate01:12:17 Career opportunities in HarperDB01:18:56 Quantum computing01:21:22 Reach HarperDB01:23:53 Raspberry Pi and HarperDB home applications01:27:20 FarewellsResources mentioned in this episode:CompaniesHarperDB https://harperdb.io/MeteorJS https://www.meteor.com/ToolsRaspberry Pi https://www.raspberrypi.org/Docker https://www.docker.com/If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 120Machine Learning Embeddings with Edo Liberty
00:00:24 Introduction00:02:19 Edo's Background00:08:20 What are Embeddings?00:14:00 Self-Organizing Maps & how humans store data00:22:27 The lifecycle of a machine learning system00:34:40 The weirdness of high-dimensional spaces00:42:20 How to manage a vector database00:47:01 Pinecone the company ★ Support this podcast on Patreon ★
Ep 119The Art of Vacations
We are sponsored by audible! http://www.audibletrial.com/programmingthrowdownWe are on Patreon! https://www.patreon.com/programmingthrowdownT-Shirts! http://www.cafepress.com/programmingthrowdown/13590693Join us on Discord! https://discord.gg/r4V2zpCThe Art of VacationsTaking a good vacation is as important as getting a good night's sleep (*very important*). It may sound silly on its face, but planning a vacation and planning around your vacation is extremely important to ensure that you are in the right headspace the rest of the year. This is especially true in the COVID era where many of us are working from home. In this episode, we dive into why vacations are so important, how to plan a relaxing vacation, and how to make sure that your team is supported while you are out.Intro topic: Virgin Galactic and Virgin Orbit and Blue OriginNews/Links:TextStyleBrush: Transfer of Text Aesthetics from a Single Examplehttps://deepai.org/publication/textstylebrush-transfer-of-text-aesthetics-from-a-single-exampleBerkshire Hathaway Stock Price integer overflowhttps://www.theregister.com/2021/05/07/bug_warren_buffett_rollover_nasdaq/LineageOShttps://lineageos.org/Crafting Interpreters is now an actual bookhttps://craftinginterpreters.com/Book of the ShowJason: How to lead in product managementhttps://amzn.to/2UcPzPKPatrick: Holy Sister (Book of the Ancestor #3) by Mark Lawrencehttps://amzn.to/3fVZscnAudible Plug http://www.audibletrial.com/programmingthrowdownPatreon Plug https://www.patreon.com/programmingthrowdown?ty=hTool of the ShowJason: 7 Billion HumansPatrick: Moss (Oculus VR, PC VR, PS VR)Topic: VacationsWhy7 types of rest https://ideas.ted.com/the-7-types-of-rest-that-every-person-needs/Gives you energy for the next crunchStepping back provides perspectivePreparing the team for unexpected absencesWhy notCan lose contextMissed opportunitiesSlipped deadlinesHow to set up the perfect vacationHanding off responsibilityDocumenting codeDecide how much to work on vacationHow to be on vacationPre-cationHandling crises / unexpected eventsPost-cationHow to come back from vacationCreate email filters / smart foldersSkim new pull requests / scrum documentsReview chat logs Types of vacations1-3 days: delay results1-2 weeks: Deputize3+ weeks: ReplaceIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordYou can also help support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 118Building a Robotics Software Platform with Abhay Venkatesh
You’ve seen the dancing Boston Dynamics dogs, Honda’s ASIMO greeting people at malls, and the half-court-shooting robot at the Olympics, among other awe-inspiring robot stories that nowadays are getting increasingly more common. But equally fascinating, especially for us programmers, is the amount of programming and structure needed to make sure these robots work as intended. In this episode, we talk with Abhay Venkatesh, Software Engineer at Anduril Industries, about Platforms for Robotics (PFRs), and the intricacies happening inside these mechanical wonders.This episode touches on the following key topics and ideas:00:00:24 Introduction00:01:10 Introducing Abhay Venkatesh00:03:00 What robotics is as a field or practice00:07:18 Platform for Robotics (PFRs)00:10:07 OODA loop00:12:27 What makes up a Platform for Robotics?00:14:17 Raspberry Pi 00:15:30 Nvidia Tegra00:17:17 Edge computing00:19:29 Telemetry00:22:06 Ad: SignalWire, a next-gen video collaboration platform00:23:30 Real-time constraints and safety challenges00:28:31 Formal verification and defensive programming00:32:28 Operating systems in robotics00:34:27 Nix and reproducible hermetic builds00:37:52 Key aspects in robotics software development00:41:14 Deployment00:46:24 Simulation00:48:51 Google testing pyramid 00:52:01 Actuators00:55:27 Future of PFRs01:02:49 FarewellsResources mentioned in this episode:CompaniesAnduril Industries https://www.anduril.com/Nvidia https://www.nvidia.com/en-us/Boston Dynamics https://www.bostondynamics.com/ToolsArduino https://www.arduino.cc/Raspberry Pi https://www.raspberrypi.org/Nvidia Tegra https://developer.nvidia.com/tegra-developmentNixOS https://nixos.org/Docker https://www.docker.com/Bazel https://bazel.build/Our sponsor for this episode is SignalWirehttps://signalwire.com/Use code THROWDOWN for $25 in developer creditAbhay’s website: https://abhayvenkatesh.com/Abhay on Twitter: https://twitter.com/AbhayVenkatesh1If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordHelp support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 117117 - Authentication with Aviad Mizrachi
Brief Summary:Authentication has become a necessity in a digital world that’s ever-increasing in complexity. What can you do to arm yourself against the constant threat of data breaches and hacks? In this episode Jason sits down with Aviad Mizrachi, CTO and Co-Founder of Frontegg, to give us valuable insight into how Authentication works, and how these help you become more defensible against attacks.This episode touches on the following key topics and ideas:00:00:24 Introduction00:01:10 Introducing Aviad Mizrachi00:04:36 The login00:06:32 The many intricacies of Authentication00:10:25 How are passwords sent to servers?00:11:26 Query param00:16:59 Multi-factor authorization (MFA)00:20:11 Time-based One-Time Password (TOTP)00:28:05 Single Sign-on (SSO) Cross-site scripting00:33:38 Ad: SignalWire, a next-gen video collaboration platform00:35:03 Session tokens00:36:36 Cross-site scripting (XSS)00:39:24 JSON web tokens (JWTs)00:41:24 Difference between session token and refresh token00:49:33 More about Frontegg, Aviad’s company00:54:14 SQL injection attack00:56:11 Auditing and audit logs00:59:42 Authentication in mobile apps01:00:50 Frontegg hiring and intern opportunities01:05:22 Frontegg product offeringsResources mentioned in this episode:ToolsFrontegg https://frontegg.com/TypeScript https://www.typescriptlang.org/Angular https://angular.io/guide/architectureMicrosoft Identity and Access Management https://www.microsoft.com/en-ww/security/business/identity-access-managementGoogle Identity https://developers.google.com/identityOkta https://www.okta.com/Articles:How Twitter CEO Jack Dorsey's Account Was Hacked https://www.wired.com/story/jack-dorsey-twitter-hacked/Our sponsor for this episode is SignalWirehttps://signalwire.com/You can reach Aviad on:LinkedIn | GitHubIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordYou can also help support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 116Hash Maps
In this duo episode, Jason and Patrick introduce us to the world of hash maps, from buckets and hash functions, to differences between open and closed addressing, to minimal perfect hashes and locality sensitive hashing. A familiarity with hash maps is an oft-overlooked but highly sought-after skill, and it can be a valuable asset for those eyeing a career in programming.Along with the main topic, Jason and Patrick also talk about some of their latest interests: books, gadgets, tools and games.This episode touches on the following key topics and ideas:00:01:27 Playing games with Oculus Quest: Acron, Racket: Nx, Gorn, Superhot 00:11:05 News: “I Made a Water Computer” by Steve Mould00:14:56 colinfurze00:15:52 News: Comprehensive guide to Attention Mechanisms00:21:53 News: Starship SN1500:25:18 News: MailSync now Open source (GPL)00:28:34 Jason’s Book of the Show: Elon Musk00:32:04 Patrick’s Book of the Show: Ready Player Two00:33:40 Jason’s Tool of the Show: Datadog00:38:44 Patrick’s Tool of the Show: I Expect You to Die 00:40:30 Escape rooms00:45:39 Sudoku00:48:35 Hash maps: the promise and idea00:50:59 Hash Functions00:52:34 Examples of hash functions: Cryptographically Secure and Non-Crypto01:01:05 Load Factors01:03:43 Open vs Closed Addressing01:15:10 Minimal Perfect Hash 01:16:25 salts01:19:00 Locality Sensitive HashingResources mentioned in this episode:ToolsMailsync http://mailsync.sourceforge.net/Mailspring https://getmailspring.com/Datadog https://www.datadoghq.com/SHA https://en.wikipedia.org/wiki/Secure_Hash_AlgorithmsMD5 https://en.wikipedia.org/wiki/MD5MurmurHash https://github.com/aappleby/smhasheraxxHash https://cyan4973.github.io/xxHash/MapReduce https://www.ibm.com/analytics/hadoop/mapreduceBooksElon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future by Ashlee Vance Ready Player Two by Ernest ClineGadgetsOculus Quest 2 https://www.oculus.com/quest-2/Oculus Link https://www.oculus.com/accessories/oculus-link/GamesAcron: Attack of the Squirrels! https://www.resolutiongames.com/acronRacket: Nx https://www.oculus.com/experiences/quest/2255408847836468Gorn https://www.oculus.com/experiences/quest/3349689215139117Superhot https://www.oculus.com/experiences/quest/1921533091289407I Expect You to Die https://www.oculus.com/experiences/quest/1987283631365460The Legend of Zelda: Breath of the WIld https://www.zelda.com/breath-of-the-wild/Videos:I Made A Water Computer And It Actually Works https://www.youtube.com/watch?v=IxXaizglscwcolinfurze YouTube channel https://www.youtube.com/user/colinfurzeArticles:Comprehensive guide to Attention Mechanisms https://www.analyticsvidhya.com/blog/2019/11/comprehensive-guide-attention-mechanism-deep-learning/Starship SN15 https://www.space.com/spacex-starship-sn15-launch-landing-successMailSync is now Open Source (GPL) https://community.getmailspring.com/t/a-free-open-source-future-for-mailspring/484If you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordYou can also help support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 115Route Planning with Parker Woodward
Ever wondered how route planning apps, well, plan routes? In this episode, we navigate through this fascinating topic, a field as data-driven and systemic as it is magical and compelling. Joining us is Parker Woodward, Route Expert and Marketing Director for Route4Me. We discuss how route planning works, the intricacies behind it, and how services like Route4Me perform complex balancing acts between machine learning and user-generated feedback.This episode touches on the following key topics and ideas:00:00:23 Introducing Parker00:01:54 Becoming a Route Expert00:04:22 Getting started through smaller startups00:12:41 Leveraging technology for the greater good00:14:36 The magic of route planning00:23:30 Homomorphism and satisfiability00:31:18 Geocoding00:33:06 User-generated feedback00:37:08 Importance of statistics knowledge00:39:34 The degree of automation in route planning00:42:54 Inverse decision-making00:48:47 Operations Research00:53:42 Dwarf Fortress00:56:40 US vs European routes00:57:51 What Route4Me does01:05:38 Working at Route4Me01:10:26 Route4Me APIResources mentioned in this episode:ToolsRoute4Me https://route4me.comRoute4Me API https://route4me.ioWaze https://www.waze.comGoogle Maps https://www.google.com/mapsOpenStreetMap https://www.openstreetmap.orgMapQuest https://www.mapquest.comDeepMind https://deepmind.comBooksSapiens by Yuval Noah HarariGamesDwarf Fortress http://www.bay12games.com/dwarves/LinksWaymo https://waymo.com/Upwork https://www.upwork.com/Reach out to Parker via email: [email protected] Parker on LinkedInIf you’ve enjoyed this episode, you can listen to more on Programming Throwdown’s website: https://www.programmingthrowdown.com/Reach out to us via email: [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM Join the discussion on our DiscordYou can also help support Programming Throwdown through our Patreon ★ Support this podcast on Patreon ★
Ep 114Code Documentation with Omer Rosenbaum and Tim Post
What makes for good documentation? In this episode, we dive into one of the most important yet overlooked facets of coding. With us are Omer Rosenbaum and Tim Post of Swimm.io. Swimm is an app that allows you to create docs coupled with your code, which are auto-synced and integrated into your workflow. It makes for much more efficient, elegant, and accessible documentation. Omer is the CTO of Swimm, and Tim is Principal Development Relations and User Advocate. They are the experts who will guide us through good code documentation practices and tools, as well as share some fascinating real-life examples and stories.This episode touches on the following key topics and ideas:00:01:20 Introducing Omer and Tim00:03:28 Omer: learning tech while in the military00:06:36 Israel Tech Challenge00:08:32 Impostor Syndrome00:12:15 Tim: the consulting career route00:18:15 Stack Overflow elected moderator00:20:59 ZFS and Btrfs 00:22:49 What is good code documentation?00:34:48 Documentation and remote work00:36:99 Good practices00:40:37 Code comments00:45:20 How to write documentation00:46:59 Signs of bad code documentation00:48:05 Swimm overview00:53:21 PyTorch documentation00:54:45 PHP documentation00:56:34 Swimm’s CLI tools01:01:16 Code documentation horror stories01:07:26 Swimm offers for open-source projects and enterprises01:13:47 Working at Swimm01:19:54 The value of remote workResources mentioned in this episode:ToolsSwimm https://swimm.io/ReiserFS https://en.wikipedia.org/wiki/ReiserFSPyTorch https://pytorch.org/docs/stable/index.htmlElectron https://www.electronjs.org/Git https://git-scm.com/Stack Overflow https://stackoverflow.com/Catch Swimm on:Twitter | Facebook | LinkedInIf you’ve enjoyed this podcast, you can listen to more programming news and updates like this one on Programming Throwdown’s website: https://www.programmingthrowdown.com/, or send us an email at [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM You can also help support Programming Throwdown through our Patreon. ★ Support this podcast on Patreon ★
Ep 113Episode 113 - Full Stack Web Apps Using Only Python with Meredydd Luff
In this episode, we’re excited to have Meredydd Luff, the founder of Anvil. Anvil is a powerful tool that allows you to build full stack web apps with just Python. Without the need to be fluent in Javascript or other languages, Anvil is easy enough for beginners, but robust enough for professional work. We talk to Meredydd about Anvil and its features, as well as delve into the importance of making programming more accessible to more people.This episode touches on the following key topics and ideas:00:00:17 Jason introduces Meredydd and Anvil 00:01:06 What is Anvil?00:09:27 Web hydration00:11:00 Jupyter Notebook00:12:49 The Uplink00:14:02 GraphQL00:23:06 How Anvil works00:24:19 Skulpt00:28:09 Brython00:29:04 Pyodide00:32:46 Javascript daisy chaining00:37:11 GRPC and protocol buffers 00:39:03 “Anvil is an abstraction.”00:40:09 Escape hatches00:43:10 Anvil and Webpack00:44:35 “Learn Python and build a website.”00:45:02 Accessibility00:47:16 Meredydd’s personal background, and Anvil’s beginnings00:52:56 Putting your work out there00:56:01 Logging and capturing what people want01:01:06 Ad: ConfigCat01:03:04 Anvil’s parent company, The Tuesday Project Ltd. 01:05:22 Meredydd’s take on venture capitalism on developer tools01:08:42 Working in Anvil01:17:02 Contact details for Meredydd and AnvilResources mentioned in this episode:ToolsAnvil https://anvil.works/Python https://www.python.org/Jupyter Notebook https://jupyter.org/GraphQL https://graphql.org/Skulpt https://skulpt.org/Brython https://brython.info/Transcrypt https://www.transcrypt.org/Pyodide https://pyodide.org/en/stable/VideosMeredydd’s Lightning Talk in PyCon 2017 https://www.youtube.com/watch?v=IHUw3N15v38Turning a Jupyter Notebook into a Web App with Anvil https://www.youtube.com/watch?v=yh0B4HjQxOUPodcastStories from the Workshop, Anvil’s podcast https://anvil.works/podcastCatch Meredydd on Twitter @meredyddAnvil’s features are offered completely free for teachers and educators. Send Meredydd an inquiry through email at [email protected] ConfigCat: https://configcat.com/Get Audible: http://www.audibletrial.com/programmingthrowdownIf you’ve enjoyed this podcast, you can listen to more programming news and updates like this one on Programming Throwdown’s website: https://www.programmingthrowdown.com/, or send us an email at [email protected] can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM You can also help support Programming Throwdown through our Patreon. ★ Support this podcast on Patreon ★
Ep 112Trees
In another duo episode, Jason and Patrick give an in-depth introduction to trees, their many types, approaches and functions, and their importance in modern programming. Also, peppered throughout the episode are the games, books, tools, and ideas that have currently piqued their interest.This episode touches on the following key topics and ideas:00:00:17 Avoiding drama at work00:07:10 News: C++20 (7:10)00:09:37 News: Play Co-op Diablo II in the browser00:12:58 Wreckfest00:15:07 Kaboom00:17:45 The future of remote work00:24:46 Jason’s Book of the Show: Debt: The First 5000 Years00:27:08 fractional-reserve banking00:31:30 DeFi, distributed finance00:33:08 Patrick’s Book of the Show: Harry Potter and the Sorcerer's Stone, the Illustrated Edition00:35:49 (Ad) Audible00:37:05 Jason’s Tool of the Show: Vagrant00:41:04 Patrick’s Tool of the Show: Zach Gage Games00:45:03 (Ad) ConfigCat00:46:03 feature flags00:47:03 Trees: why are they important? 00:49:43 The divide and conquer approach00:51:34 The agglometric approach00:55:57 Choosing the right tree and algorithm00:57:56 Keeping trees balanced01:01:10 binary trees01:02:52 binary trees and machine learning01:05:28 b-trees01:10:04 spatial trees: the k-d tree01:16:50 k-d trees and multidimension01:18:42 quadtrees and octrees01:21:44 r-treesResources mentioned in this episode:BooksDebt: The First 5000 Years, by David Graeber https://amzn.to/3uKEoe9Harry Potter and the Sorcerer's Stone, The Illustrated Edition, by JK Rowling https://amzn.to/2R6ILSsGamesDiablo II browser game http://clouddiablo.com/Wreckfest https://www.thqnordic.com/games/wreckfestZach Gage Games http://stfj.net/ToolsVagrant https://www.vagrantup.com/Kaboom https://replit.com/kaboomArticlesArticle on C++20: https://oleksandrkvl.github.io/2021/04/02/cpp-20-overview.htmlThe debate over remote work: https://www.bbc.com/news/technology-56771539Get ConfigCat: https://configcat.com/Get Audible: http://www.audibletrial.com/programmingthrowdownIf you’ve enjoyed this podcast, you can listen to more programming news and updates like this one on Programming Throwdown’s website: https://www.programmingthrowdown.com/You can also follow Programming Throwdown on Facebook | Apple Podcasts | Spotify | Player.FM You can also help support Programming Throwdown through our Patreon. ★ Support this podcast on Patreon ★
Ep 111Episode 111: Real-time Data Streaming with Frank McSherry
In this episode, we talk with Frank McSherry, Gödel Prize-winning data scientist, and Co-founder and Chief Scientist at Materialize, Inc. Frank shares expert viewpoints drawn from his years as an academic, as well as personal insights on helping run a company at the cutting edge of real-time data streaming.Show Notes: https://www.programmingthrowdown.com/2021/05/episode-111-real-time-data-streaming.html ★ Support this podcast on Patreon ★
Ep 110Episode 110: Security with Dotan Nahum
Programming Throwdown talks cybersecurity with Dotan Nahum, CEO and Co-founder of Spectral. Dotan provides us with a high-level overview of the role of cybersecurity, its definition, evolution, and current challenges. He also shares tips for small- and medium-sized ventures on how to develop best practices.The episode touches on the following key topics and ideas:00:01:12 Evolution of modern cybersecurity 00:06:06 When to integrate security in a design00:11:54 Shadow IT00:13:50 Hacker motives and motivations; SQL Injection explained00:16:48 Firewalls and WAFs00:20:29 Cybersecurity for small- and medium-sized companies 00:23:52 “The last mile of developers”00:26:47 dotfiles00:32:23 Simple tools and good practices00:40:42 Attack vectors, attack factors00:44:16 Ransomware and phishing00:48:19 Unsafe languages00:50:02 Fuzzing00:54:11 Rust programming language00:55:54 Example security scenario with IntelliJ00:59:42 More about Spectral, Dotan’s company01:03:40 Staying virtual using DiscordTranscript:Episode 110 Computer Security with Dotan NahumJason Gauci: Programming Throwdown Episode 110, Security with Dotan Nahum. Take away, Patrick. [00:00:21] Patrick Wheeler: Hey everybody. We're here with a hundred and tenth episode, which is pretty exciting. And we have our guest to-- oh, yeah, go ahead. You want to... [00:00:30] Jason Gauci: I'm just saying, yeah! (laugh) [00:00:32] Patrick Wheeler: So we're here with our guest today, Dotan, and you are CEO of Spectral. Why don't you go ahead and introduce yourself briefly, and then we'll get started.[00:00:42] Dotan Nahum: Yep. So hi, guys. So I am Dotan, and by the way, 110 is binary, right? [00:00:48] Patrick Wheeler: Oh, there we go. That's right. (laugh) [00:00:52] Dotan Nahum: So yeah, so I'm Dotan, CEO of Spectral. It's a cybersecurity company, geared towards developers. I mean, we like to say that we create tools for developers with security as a side effect. So yeah, so that's, that's, you know, that's what our focus is. [00:01:12] Patrick Wheeler: Awesome. Well, I mean, I guess that's a lot to unpack, so I think everybody would agree, security is very important, but maybe everyone doesn't understand what security is. So we were talking about this a little when we were doing, doing warmups. So if we talk about security, does that mean that you are developing antivirus for computers, for developers, or does it mean something more?[00:01:35] Dotan Nahum: Yeah, I mean, I mean, it's kind of all goes back to, I guess, evolution of our, I guess it is our domain, our, our world, which is kind of a high-tech or softer, softer world? Time really gets compact with all these revolutions. We have a, we have evolution revolution. [00:01:57] So, I mean, if you go back to 2007, that was just before Facebook and just before iPhone, I guess. And if you go back to 2005, that that was before the rise of Microsoft, I guess the major rise of Microsoft as a .net shop, which really made, you know, made all the enterprise software come along and then kind of '98, 2000, the first bubble.[00:02:27] So all these stages, they had, it's kind of a sprint to create technology. And, the focus is on creating technology that is supposed to give developers productivity, and supposed to make, you know, make companies very productive and create a very nice portfolio of products. [00:02:48] And almost always, I mean, maybe not intentionally, but almost always the security side of things, was kind of left behind. You know, I'm sure no one intended for it to be, but, there's a lot of more velocity under creating a great product at the time. Every, each and every step of this, like in the first bubble, and then in 2005, and then into 2007 and so on, rather than, okay, so let's create the technology and the product, and let's also make it, you know, kind of, dependent on making great security, be there for us. [00:03:35] So almost every time, security came after the revolution, after the evolution. So we had from, simple firewalls, to intrusion detection, which is, you know, the large kind of, systems that try, try their best to find anomalies in the, in the area of 2000, to the smarter firewalls. And even today, those like, this, mini kind of firewalls, of WAFs that you integrate as an SDK into your app. So yeah, so it's kind of come, it comes in waves, technology, and then, security comes in waves as well. [00:04:17] And yeah. So the latest, the latest we're seeing right now in terms of the evolution of software is that yeah, we know that software eats the world, but we are kind of feeling that it already ate the world? So, you know, you can do so much today that you couldn't have done, I mean, as little as three or four years ago, actually. You know, it can take a Lambda and you can pick up a bunch of SAS services and you're done. I mean, you build a product that used to be maybe three, four, five years ago, you know, used to take much more energy to build.[00:04:58] So in that sense, as a developer,
Ep 109Digital Marketing with Kevin Urrutia
We chat with Kevin Urrutia about why marketing is so important to any project, how digital marketing is different than traditional marketing, and what tools we can use to market our ideas. Thanks for listening!Show notes: https://www.programmingthrowdown.com/2021/03/episode-109-digital-marketing-with.html ★ Support this podcast on Patreon ★
Ep 108Kotlin
We’re having a duo episode for this month! Patrick and I discuss the relevance of Kotlin, a JVM language used for web backends and android development, and why you should look into it. Also we are testing out adding transcripts to the show notes. Let us know what you think! Show notes: https://www.programmingthrowdown.com/2021/03/episode-108-kotlin.html ★ Support this podcast on Patreon ★
Ep 107Holiday 2020!
Happy Holidays! In this show we make predictions about 2021 and take questions from YOU, our loyal fans! Show notes: https://www.programmingthrowdown.com/2021/01/episode-107-holiday-episode-2020.html ★ Support this podcast on Patreon ★
Ep 106Augmented Reality
This month we are speaking with Connel Gauld from Zappar about Augmented Reality. Connel is an AR genius and blows our mind with details on how AR works under the hood and how it's easy for anyone to make AR apps and websites. AR is the next great platform, so it's good to get in early. Give it a listen and tell us what you built! Show notes: https://www.programmingthrowdown.com/2020/11/episode-106-augmented-reality-with.html Teamistry: https://link.chtbl.com/teamistry?sid=podcast.throwdown ★ Support this podcast on Patreon ★
Ep 105A Chatbot with a Brain
The September episode did arrive.... somewhat delayed, but it's worth the wait!! We have NEW INTRO MUSIC by amazing recording artist Eric Barndollar. We have a NEW PODCAST DEPLOYMENT SCRIPT which means the podcast timestamp will be correct and people won't have to hunt for our latest episodes. Last but not least, we have an AMAZING EPISODE where we interview Peter Voss, founder and CEO of aigo.ai and inventor of the term "Artificial General Intelligence", to discuss chatbots and general AI. Geeking out about AI may be my favorite thing to do on Earth, so I can't put in words how incredibly excited I am to share this episode with everyone. Show notes: https://www.programmingthrowdown.com/2020/10/episode-105-chatbot-with-brain-with.html Teamistry: https://link.chtbl.com/teamistry?sid=podcast.throwdown ★ Support this podcast on Patreon ★
Ep 104DevOps and Site Reliability
How do the most popular websites stay online? How do mobile app developers release new versions safely and monitor them? Today we have Matt Watson from Stackify on the show to talk about Developer Operations (DevOps) and site reliability. These two areas are critical for writing software that people depend on. DevOps is both a software exercise but also an exercise in process creation and process management. In this episode, we unpack these topics and do a deep dive to explain how to deploy software that other people can trust to remain online and secure. Do you have any questions about DevOps? Ask away in our #questions channel on Discord! https://discord.gg/r4V2zpC Show notes: https://www.programmingthrowdown.com/2020/08/episode-104-devops-and-site-reliability.html ★ Support this podcast on Patreon ★
Ep 103Working From Home
Many of us have found ourselves working from home due to current events. In this show, we chat with Adam Bell who has been working from home for the past decade. We also do the show interactive on Twitch.tv and take your questions! Give it a listen for a ton of great advice on working from home and some pitfalls to avoid. Thanks again for your donations in these tough times. We really appreciate your support! Feel free to continue the discussion on Discord (link in the show notes)! Show notes: https://www.programmingthrowdown.com/2020/07/episode-103-working-from-home.html ★ Support this podcast on Patreon ★
Ep 102Bayesian Thinking
Many people have asked us for more content on machine learning and artificial intelligence. This episode covers probability and Bayesian math. Understanding random numbers is key to so many different technologies and solutions. Max and I dive deep and try to give as many pointers as possible. Give it a listen and let us know what you think! Max also has an awesome podcast, The Local Maximum. Check out his show on any podcast app or using the link in the show notes! Show notes: https://www.programmingthrowdown.com/2020/06/episode-102-bayesian-thinking-with-max.html ★ Support this podcast on Patreon ★
Ep 101ReactJS
Hey all! In this episode we chat with Guillermo Rauch, co-founder of Next.js, about ReactJS. ReactJS is an amazing framework for web development that I've been a huge fan of for years. We dive deep into how ReactJS works and why it can lead to clean, structured development. We Introduce Next.js, a ReactJS framework that supercharges web development at scale. I recently built a site using Next.js and loved the developer experience! Check out the show notes for links to learn more about Vercel and Next.js. Show notes: https://www.programmingthrowdown.com/2020/05/episode-101-reactjs-with-guillermo-rauch.html ★ Support this podcast on Patreon ★
Ep 100One Hundredth Episode
I hope everyone out there is safe and healthy during these crazy times. The silver lining on all of this is that many of us have more time. Time is one of the greatest gifts that one can get. I hope you are able to spend more time with family and learning new skills. I'm looking forward to seeing all of the amazing innovations that people create when the world is back open for business. This is our 100th episode!!! In this milestone show, we reflect on our early episodes and how the field has changed over the years. Happy hacking! Show notes: https://www.programmingthrowdown.com/2020/04/episode-100-one-hundredth-episode.html ★ Support this podcast on Patreon ★
Ep 99Squashing bugs using AI and Machine Learning
The best part of hosting Programming Throwdown is reading emails from people who listened to this show before they had any coding experience and went on to land jobs in tech. Thanks so much for inspiring us with your stories. My second favorite part of hosting the show is hearing about so many awesome programming tools and resources, often when they are just starting out. DeepCode is one of these amazing resources. DeepCode is a static analysis tool that looks at your code and, using AI trained on all code in github (!!!), finds common mistakes and offers suggestions on how to resolve. I am a heavy user of static analysis tools, and yet DeepCode was still able to find real issues in one of my python projects above and beyond pylint and mypy. Best of all, it's completely free to use for open source projects! Give it a shot and let us know what you think! Show notes: https://www.programmingthrowdown.com/2020/02/episode-99-squashing-bugs-using-ai-and.html ★ Support this podcast on Patreon ★
Ep 98Agile Thinking With ZenHub
One of the most exciting but also overwhelming feelings in software engineering is starting a new project. Staring at an empty main.py file is intimidating for everyone. A great way to keep motivated and stay on course is to start by making a list of tasks. This is the first step to project management, and Agile is a set of methodologies for great project management. In this episode, we talk with Aaron Upright, cofounder of ZenHub, about Agile and project management. ZenHub is a quick and easy platform for Agile development that integrates seamlessly with GitHub. If this interview piques your interest and you are a GitHub user, grab a copy of ZenHub and check it out! In case you missed our last promotion with Educative, it's still possible to get 10% off if you sign up for one of their courses now! Try them out for free! educative.io/ProgrammingThrowdown Show notes: https://www.programmingthrowdown.com/2020/01/episode-98-agile-thinking-with-zenhub.html ★ Support this podcast on Patreon ★
Ep 97Christmas Episode
Hey all! Patrick and I are so lucky to be spending another year with you all. In this episode, we answer a bunch of listener questions and give away some great prizes. Thanks to all of our listeners for helping us bring the power of programming to so many people. We have some super exciting content coming up in 2020, so stay tuned! ★ Support this podcast on Patreon ★
Ep 96Continuous Integration
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 to working remotely. If you ever plan on writing software with a team of folks, you need to give this episode a listen! Also, I'm super excited to announce our partnership with Educative! Educative is an interactive way to learn how to code. Check out educative.io/ProgrammingThrowdown to get a 20% discount! Show notes: https://www.programmingthrowdown.com/2019/11/episode-96-continuous-integration-with.html ★ Support this podcast on Patreon ★
Ep 95WebRTC
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 can even write your own peer-to-peer applications to communicate or share information without the need for a server to relay everything. In this episode, we sit down with Sean DuBois, creator of Pion, to talk about WebRTC: a specification and set of tools for peer-to-peer communication over the internet. We also discuss Pion, an implementation of WebRTC that you can embed in almost any program you write. Happy Hacking! Show notes: https://www.programmingthrowdown.com/2019/10/episode-95-webrtc-with-sean-dubois.html ★ Support this podcast on Patreon ★
Ep 94Search at Etsy
What actually happens when you type something in the search bar at the top of etsy.com 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 should we show first?) to the inner workings (what is a reverse index and how does it work?). We also dive into what it's like to intern at a tech company. Happy Hacking! Show Notes: https://www.programmingthrowdown.com/2019/10/episode-94-search-at-etsy.html ★ Support this podcast on Patreon ★
Ep 93A Journey to Programming Mastery
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, tech leadership, and how to get your first coding job. Their new book, "The Pragmatic Programmer: 20th Anniversary Edition" comes out today! I hope that this interview inspires you all to grab their new book; it will definitely be a book-of-the-show for me. Show notes: https://www.programmingthrowdown.com/2019/09/episode-93-journey-to-programming.html ★ Support this podcast on Patreon ★
Ep 92Basics of UI Design for Engineers
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 UX/UI designer, dives into user interface (UI) design. We cover the best tools for making quick prototypes, common design mistakes, and his journey from software engineer to freelance designer. This episode is a great way to get excited about design and has plenty of resources for first-time designers. Check out the show notes for details! Show notes: https://www.programmingthrowdown.com/2019/07/episode-92-basics-of-ui-design-for.html ★ Support this podcast on Patreon ★
Ep 91Functional Programming
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 experience in FP. In this episode, we dive into what FP is all about, when it's useful, static/dynamic typing (our favorite topic), and other areas of FP. Thanks again for all of your emails and support. It is a treasure to hear your inspirational stories and we are so greatful to be creating content for over eight years. Happy hacking! Show notes: https://www.programmingthrowdown.com/2019/06/episode-91-functional-programming-with.html ★ Support this podcast on Patreon ★
Ep 90Terminal and Shells
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 shells. Patrick and I unpack this and more in today's episode! Thanks so much for all of your emails and support on Patreon! It's your enthusiasm and financial support that enable us to teach so many people, and we are eternally grateful for your support! Show notes: https://www.programmingthrowdown.com/2019/05/episode-90-terminals-and-shells.html ★ Support this podcast on Patreon ★
Ep 89From Combat to Code
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 you have served in the military or not, this inspiring podcast gives us all a glimpse into the boots of someone who rotated into a career in software development after school, and is full of great advice for newcomers to the field. Learn more about Vets Who Code, including how to donate to the cause, in the show notes below! We have more interviews in the future, but the next two months will just be Patrick and I. Keep sending us emails with topics that you want us to cover! Show notes: https://www.programmingthrowdown.com/2019/04/episode-89-from-combat-to-code.html ★ Support this podcast on Patreon ★