Programming Throwdown

Programming Throwdown

By Patrick Wheeler and Jason GauciNewsEducationHow ToTech News
Download on the App Store

Programming Throwdown episodes

  • 159: GraphQL with Tanmai Gopal

    GraphQL is one of the biggest API enablers in software development, but just how complicated can things be? Tanmai Gopal – Hasura’s CEO extraordinaire – talks with Jason and Patrick about how the secret sauce gets made. They dive deeply from how APIs function to having them managed in practice – among several other topic, making this a must-listen episode. 

     

    00:01:19 Introductions

    00:01:48 Tanmai’s late start in programming

    00:05:48 Plinko

    00:13:06 Coursera

    00:23:28 The question of API development

    00:30:30 API layer functionality

    00:34:58 How Hasura leverages JSON

    00:39:08 GraphQL

    00:42:49 Worse than an API call

    00:49:15 The potential REST minefield

    00:53:41 JSON Web Tokens

    01:11:34 Scaling writes

    01:15:17 Careers with Hasura

    01:22:35 Farewells


    Resources mentioned in this episode:

    Join the Programming Throwdown Patreon community today: https://www.patreon.com/programmingthrowdown?ty=h

     

    Subscribe to the podcast on Youtube: https://www.youtube.com/@programmingthrowdown4793


    Links:

    •  Tanmai Gopal:
      •  Website: https://hasura.io/blog/@tanmaig/
      •  Linkedin: https://www.linkedin.com/in/tanmaig/
      •  Twitter: https://twitter.com/tanmaigo
      •  Github: https://github.com/coco98
    •  Hasura:
      •  Website: https://hasura.io/
      •  Careers: https://hasura.io/careers/
      •  Twitter: https://twitter.com/HasuraHQ
      •  Github: https://github.com/hasura
      •  Linkedin: https://www.linkedin.com/company/hasura
    •  Others:
      •  Good Strategy, Bad Strategy (Amazon): https://www.amazon.com/Good-Strategy-Bad-Strategy-audiobook/dp/B07R6XQ8YP
      •  Modern Application Development (IIT Madras, archived): https://archive.nptel.ac.in/courses/106/106/106106156/

    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 | Youtube

     

    Join the discussion on our Discord

    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 24 min
  • 158: Software Supply Chain with Bill Manning

    In today’s episode, Jason and Patrick dive deeply with JFrog’s Senior Solutions Engineer, Bill Manning. With the conversation tackling the depth and complexity of software supply chains, vulnerabilities and more, Bill deftly offers grounded advice to listeners old and new.

     

    00:00:26 Introductions

    00:00:40 Bill’s plethora of job titles

    00:09:33 The excitement of learning a language

    00:15:08 Mechanical keyboards

    00:21:17 Bill’s advice on adapting

    00:27:55 What a supply chain is

    00:34:28 Castle analogies

    00:40:55 Unpacking legalities

    00:52:11 Log4J

    00:54:41 What JFrog does

    01:01:16 What can go wrong

    01:08:08 Getting started in this space

    01:14:15 Careers in JFrog

    01:20:23 Farewells


    Resources mentioned in this episode:

    Join the Programming Throwdown Patreon community today: https://www.patreon.com/programmingthrowdown?ty=h

     

    Subscribe to the podcast on Youtube: https://www.youtube.com/@programmingthrowdown4793

    • Links:
      • Bill Manning:
        • Website: https://about.me/billmanning
        • Linkedin: https://www.linkedin.com/in/williammanning/
        • Twitter: https://twitter.com/williammanning
      • JFrog:
        • Website: https://jfrog.com/
        • Careers: https://join.jfrog.com/
        • Artifactory: https://jfrog.com/artifactory/
        • Linkedin: https://www.linkedin.com/company/jfrog-ltd/
      • Others:
        • Liquid Software: https://liquidsoftware.com/
        • SolarWinds hack incident: https://www.wired.com/story/the-untold-story-of-solarwinds-the-boldest-supply-chain-hack-ever/
        • Transitive dependencies: https://en.wikipedia.org/wiki/Transitive_dependency

    More Throwdown? Check out this prior episode:

    • 153: ChatGPT: https://www.programmingthrowdown.com/episodes/158-software-supply-chain-with-bill

    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 | Youtube

     

    Join the discussion on our Discord

    Help support Programming Throwdown through our Patreon 

    ★ Support this podcast on Patreon ★
    1 hr 22 min
  • 157: Kubernetes with Craig Box

    There’s more than what meets the eye when it comes to Kubernetes, and Craig Box – ARMO’s VP of Open Source & Community –is one of several who have seen its many twists and turns since its inception. He talks with Jason and Patrick about Kubernetes’ origins in pop culture, utility in the modern workflow, and possible future in today’s episode. 

     

    00:01:31 Introductions

    00:03:39 Craig’s early internet speed experience

    00:07:46 An adventure towards Google

    00:16:55 Project Seven

    00:21:17 Mesos

    00:26:42 The origin of Kubernetes

    00:28:36 DS9’s influence on naming conventions

    00:37:49 Getting more results with the same resources

    00:47:13 IPv4

    00:53:44 Craig’s thoughts on learning Kubernetes

    01:06:59 Kubescape

    01:18:12 Working at ARMO

    01:23:16 Programming Throwdown on Youtube

    01:23:55 Farewells


    Resources mentioned in this episode:

    Join the Programming Throwdown Patreon community today: https://www.patreon.com/programmingthrowdown?ty=h

     

    Subscribe to the podcast on Youtube: https://www.youtube.com/@programmingthrowdown4793

    • Links:
      • Craig Box:
        • Substack: https://substack.com/profile/107796914-craig-box
        • Github: https://github.com/craigbox
        • Linkedin: https://www.linkedin.com/in/crbnz/
        • Twitter: https://twitter.com/craigbox
      • ARMO:
        • Website: https://www.armosec.io/
        • Linkedin: https://www.linkedin.com/company/armosec/
      • Others:
        • The Project Seven origin story: https://cloud.google.com/blog/products/containers-kubernetes/from-google-to-the-world-the-kubernetes-origin-story
        • 7 of 9 on Memory Alpha: https://memory-alpha.fandom.com/wiki/Seven_of_Nine

     

    More Throwdown? Check out this prior episode:

    • E135: Kubernetes with Aran Khanna: https://www.programmingthrowdown.com/episodes/157-kubernetes-with-craig-box


    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 | Youtube

     

    Join the discussion on our Discord

    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 25 min
  • 156: Perl and Regular Expressions

    Should AI research be paused? How far ahead have deepfakes come? Join Patrick and Jason as they tackle their answers to these timely questions – plus an in-depth discussion on Perl in practice – with today’s episode of Programming Throwdown. 


    Resources mentioned in this episode:

    Join the Programming Throwdown Patreon community today: https://www.patreon.com/programmingthrowdown?ty=h

     

    News/Links:

    • GPT4All & Stanford Alpaca
      • https://github.com/nomic-ai/gpt4all
    • Giant AI Experiments 6 month pause open letter
      • https://futureoflife.org/open-letter/pause-giant-ai-experiments/
    • Will Smith Eating Spaghetti generated video
      • https://www.vice.com/en/article/xgw8ek/ai-will-smith-eating-spaghetti-hill-haunt-you-for-the-rest-of-your-life
    • Robust image compression implementation from a NASA paper
      • https://github.com/TheRealOrange/icer_compression
    • Dig This Vegas
      • https://digthisvegas.com/
    • XKCD:
      • https://xkcd.com/208/
    • AI Open Letter:
      • https://futureoflife.org/open-letter/pause-giant-ai-experiments/
    • Godbolt:
      • https://godbolt.org/

    Book of the Show:

    • Jason: It Doesn’t Have To Be Crazy At Work
      • https://amzn.to/40PFgxH
    • Patrick: Prince of Fools by Mark Lawrence
      • https://amzn.to/3lWVEO9


    Tool of the Show:

    • Jason: 
      • ReMarkable 2: https://remarkable.com/store/remarkable-2
    • Patrick: 
      • Slay the Spire: https://store.steampowered.com/app/646570/Slay_the_Spire/

     

    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 Discord

    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 18 min
  • 155: The Future of Search with Saahil Jain

    When it comes to untangling the complexities of what lies ahead for search engines in this age of AI, few are as deeply versed in the subject as You.com Engineer Saahil Jain. Jason and Patrick talk with him in this episode about what search even is, what challenges lie ahead, and where the shift in paradigms can be found.

     

    00:01:16 Introductions

    00:02:06 How physics led Saahil to programming

    00:07:20 Getting started at Microsoft

    00:13:39 Analyzing human text input

    00:22:22 The exciting paradigm shift in search

    00:29:02 Rationales for direction

    00:33:40 Image generation models

    00:39:55 Knowledge bases

    00:45:12 FIFA

    00:49:29 Understanding the query’s intent

    00:51:18 Expectations

    00:55:38 A need to stay connected to authority repositories

    01:03:45 About working at You

    01:08:18 Farewells


    Resources mentioned in this episode:

    Join the Programming Throwdown Patreon community today: https://www.patreon.com/programmingthrowdown?ty=h

    Links:

    • Saahil Jain:
      • Website: http://saahiljain.me/
      • Email: saahil @ you.com
      • Github: https://github.com/saahil9jain/
      • Linkedin: https://www.linkedin.com/in/saahiljain/
      • Twitter: https://twitter.com/saahil9jain
      • RadGraph: https://arxiv.org/abs/2106.14463
      • VisualCheXbert: https://arxiv.org/abs/2102.11467 
    • You.Com:
      • Website: https://you.com/
      • Twitter: https://twitter.com/YouSearchEngine
      • Discord: https://discord.gg/f9jRFH5gHP 
    • Others:
      • On Thorium: https://www.youtube.com/watch?v=ElulEJruhRQ

     

    More Throwdown? Check out these prior episodes:

    • E143: The Evolution of Search with Marcus Eagan: https://www.programmingthrowdown.com/episodes/155-future-of-search-with-saahil-jain
    • E94: Search at Etsy: https://www.programmingthrowdown.com/episodes/155-future-of-search-with-saahil-jain

     

    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 Discord

    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 9 min
  • 154: Python Again with Jason C. McDonald

    A second Jason joins this episode of Programming Throwdown! Jason McDonald – Python evangelist, author, and more – talks to Patrick and Jason about his experience with the programming language, how his disability helped and hindered his software career, and where its strengths and weaknesses lie. 


    00:01:05 Introductions

    00:02:27 Jason’s pivotal Doctor Who regeneration

    00:04:49 The power of dialog boxes

    00:10:10 Python’s power

    00:12:37 How disability discrimination can look

    00:17:40 Making vs playing games

    00:23:47 Jason’s POV on intention

    00:28:04 Why Jason stayed with Python

    00:40:11 Every language’s Thing

    00:49:42 Duck typing

    00:52:48 Global Interpreter Lock (GIL)

    01:14:16 Dependencies

    01:34:08 Finding Jason online

    01:35:20 Farewells


    Resources mentioned in this episode:

    Join the Programming Throwdown Patreon community today: https://www.patreon.com/join/programmingthrowdown

    Links:

    • Jason C. McDonald:
      • Mastodon.Cloud: https://mastodon.cloud/@codemouse92
      • Website: https://codemouse92.com/
      • Github: https://github.com/CodeMouse92
      • BugHunters Café @ iTunes: https://podcasts.apple.com/us/podcast/the-bug-hunters-caf%C3%A9/id1556496590
    • Rural Sourcing:
      • Website: https://www.ruralsourcing.com/
      • Linkedin: https://www.linkedin.com/company/rural-sourcing/
    • Book Recommendations:
      • Dead Simple Python (Jason C. McDonald): https://www.amazon.com/Dead-Simple-Python-Idiomatic-Programmers/dp/1718500920
      • Kill It With Fire (Marianne Bellotti): https://www.amazon.com/Kill-Fire-Manage-Computer-Systems/dp/1718501188
      • Dreaming In Code (Scott Rosenberg): https://www.amazon.com/Dreaming-Code-Programmers-Transcendent-Software/dp/1400082471
    • Others:
      • Monty Python (troupe): https://en.wikipedia.org/wiki/Monty_Python
      • Monty Python (TV Show): https://en.wikipedia.org/wiki/Monty_Python%27s_Flying_Circus

    More Python? Check out these prior episodes:

    • E52: Scientific Python: https://www.programmingthrowdown.com/episodes/154-python-again-with-jason-c-mcdonald
    • E139: Scientific Python with Guido Imperiale: https://www.programmingthrowdown.com/episodes/154-python-again-with-jason-c-mcdonald

    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 Discord

    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 37 min
  • 153: ChatGPT

    ChatGPT has made a mark on the world as we know it, but that’s only the tip of the AI iceberg. Join us as we discuss how the field of artificial intelligence is growing – including some developments that might not be on your radar!


    00:00:23 Introductions

    00:02:01 Jason’s attic adventure

    00:06:09 Comparing saws

    00:10:57 Patrick’s surprisingly useful thing

    00:12:21 SpaceX

    00:17:31 Human motion diffusion model

    00:20:47 37Signals

    00:29:30 Polars

    00:35:37 Books of the Show

    00:46:11 Neon

    00:50:33 Patrick’s player search

    00:53:47 ChatGPT

    01:17:12 The threat to Google

    01:28:06 Jason and Patrick’s future prognostications

    01:32:13 Farewells


    Resources mentioned in this episode:

    Join the Programming Throwdown Patreon community today:  https://www.patreon.com/programmingthrowdown?ty=h


    News/Links:

    • SpaceX Starship Static Test Fire Planned
      • https://www.cnet.com/science/space/spacex-prepping-for-first-full-test-fire-of-its-mega-starship-rocket/
    • Human Motion Diffusion Model
      • https://guytevet.github.io/mdm-page/
    • 37Signals Leaving the Cloud and Details Cloud Costs
      • https://twitter.com/dhh/status/1613508201953038337
    • Polars: DataFrames in Rust
      • https://docs.rs/polars/latest/polars/index.html


    Book of the Show:

    • Jason: Build by Tony Fadell
      • https://amzn.to/3wpLnLW
    • Patrick: Age of Myth by Michael Sullivan (Riyria)
      • https://amzn.to/3HlEsJ5


    Tool of the Show:

    • Jason: 
      • Neon: Serverless Postgres: https://neon.tech/
    • Patrick: 
      • 7 Billion Humans (Steam): https://store.steampowered.com/app/792100/7_Billion_Humans/


    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 Discord

    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 34 min
  • 152: The Future Database with Sam Lambert

    Databases are key to almost any project, large or small.  Most database systems in the cloud are designed for heavy use and the costs can get expensive quickly, but database-as-a-service is a rapidly growing area, where many databases can share the same hardware for a much reduced rate, or even for free!  Sam Lambert, CEO of PlanetScale, joins Jason and Patrick to discuss database-as-a-service.


    00:01:41 Introductions
    00:02:34 Sam’s Github learning lesson
    00:07:08 The day after
    00:10:57 Getting started with databases
    00:14:21 Schema change difficulties
    00:19:47 Database transactions
    00:31:15 Why data recovery matters
    00:38:35 Planetscale
    00:49:24 Greetings from the past
    01:02:01 How Jason discovered Planetscale
    01:06:53 Branching
    01:14:00 The vision for Planetscale
    01:18:12 The rationale behind Planetscale’s work setup
    01:24:29 Careers at Planetscale
    01:28:06 Amp It Up
    01:33:10 Farewells

    Resources mentioned in this episode:
    Links:

    • Sam Lambert:
      • Linkedin: https://www.linkedin.com/in/isamlambert/
    • PlanetScale:
      • Website: https://planetscale.com/
      • Twitter: https://twitter.com/planetscaledata
      • Linkedin: https://www.linkedin.com/company/planetscale/
      • Github: https://github.com/planetscale
      • Careers: https://planetscale.com/careers
    • Amp It Up (Amazon):
      • Paperback: https://www.amazon.com/Amp-Unlocking-Hypergrowth-Expectations-Intensity/dp/1119836115
      • Audiobook: https://www.amazon.com/Amp-Hypergrowth-Expectations-Increasing-Elevating/dp/B09QBRBKFB/

    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 Discord

    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 34 min
  • 151: Machine Learning Engineering with Liran Hason

    Machine Learning Engineer is one of the fastest growing professions on the planet.  Liran Hason, co-founder and CEO of Aporia, joins us to discuss this new field and how folks can learn the skills and gain the experience needed to become an ML Engineer!


    00:00:59 Introductions

    00:01:44 How Liran got started making websites

    00:07:03 College advice for getting involved in real-world experience

    00:12:51 Jumping into the unknown

    00:15:22 ML engineering

    00:20:50 The missing part in data science development

    00:29:16 How to build skills in the ML space

    00:37:01 A horror story

    00:41:34 Model loading questions

    00:47:36 Must-have skills in an ML resume

    00:50:41 Deciding about data science

    00:59:08 Rust

    01:06:27 How Aporia contributes to the data science space

    01:14:26 Working at Aporia

    01:16:53 Farewells


    Resources mentioned in this episode:

    Links:

    • Liran Hason:
      • Linkedin: https://www.linkedin.com/in/hasuni/
    • Aporia:
      • Website: https://www.aporia.com/
      • Twitter: https://twitter.com/aporiaai
      • Linkedin: https://www.linkedin.com/company/aporiaai/
      • Github: https://github.com/aporia-ai
    • The Mom Test (Amazon):
      • Paperback: https://www.amazon.com/Mom-Test-customers-business-everyone/dp/1492180742
      • Audiobook: https://www.amazon.com/The-Mom-Test-Rob-Fitzpatrick-audiobook/dp/B07RJZKZ7F

    References:

    • Shadow Mode: https://christophergs.com/machine%20learning/2019/03/30/deploying-machine-learning-applications-in-shadow-mode/
    • Blue-green deployment: https://en.wikipedia.org/wiki/Blue-green_deployment
    • Coursera ML Specialization (Stanford): https://www.coursera.org/specializations/machine-learning-introduction
    • Auto-retraining: https://neptune.ai/blog/retraining-model-during-deployment-continuous-training-continuous-testing

    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 Discord

    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 19 min
  • 150: Code Reviews with On Freund

    Patrick and I are always stressing the importance of code reviews and collaboration when developing.  On Freund, co-founder & CEO at Wilco, is super familiar with how code review processes can go well, or become a hinderance. In today’s episode with us, he shares his unique perspective on code reviews and maintaining high code quality!

    00:00:56 Introductions

    00:01:38 On’s first exposure to tech
    00:06:04 Game development adventures
    00:11:12 The difference between university and real-world experiences
    00:17:43 A context switch question
    00:24:41 Points of frustration
    00:30:53 Build versus Buy complications
    00:32:06 Code reviews
    00:39:58 Quality of code
    00:45:12 Using callouts for the right reasons
    00:49:57 Code reviews can be too late sometimes
    00:52:11 Using social interaction as pre-review orientation
    00:57:03 How not to use code reviews
    01:01:35 Where Wilco helps programmers learn
    01:09:11 Working in Wilco
    01:11:49 Farewells


    Resources mentioned in this episode:

    Links:

    • On Freund:
      • Linkedin: https://www.linkedin.com/in/onfreund
    • Wilco:
      • Website: https://www.trywilco.com/
      • Twitter: https://twitter.com/trywilco

      • Linkedin: https://www.linkedin.com/company/trywilco

     
    References:

    • Micro-Adventure:
      • https://en.wikipedia.org/wiki/Micro_Adventure

     
    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 Discord
    Help support Programming Throwdown through our Patreon

    ★ Support this podcast on Patreon ★
    1 hr 14 min

About Programming Throwdown

From the publisher's feed

Programming Throwdown educates Computer Scientists and Software Engineers on a cavalcade of programming and tech topics. Every show will cover a new programming language, so listeners will be able to…

More shows like Programming Throwdown

Software Engineering Radio - the podcast for professional software developers by team@se-radio.net (SE-Radio Team)

Software Engineering Radio - the podcast for professional software developers

273 Listeners

Hanselminutes with Scott Hanselman by Scott Hanselman

Hanselminutes with Scott Hanselman

379 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

286 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

623 Listeners

LINUX Unplugged by Jupiter Broadcasting

LINUX Unplugged

272 Listeners

Talk Python To Me by Michael Kennedy

Talk Python To Me

582 Listeners

Soft Skills Engineering by Jamison Dance and Dave Smith

Soft Skills Engineering

286 Listeners

Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

Syntax - Tasty Web Development Treats

985 Listeners

The freeCodeCamp Podcast by freeCodeCamp.org

The freeCodeCamp Podcast

484 Listeners

CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

CoRecursive: Coding Stories

188 Listeners

.NET Rocks! by Carl Franklin and Richard Campbell

.NET Rocks!

244 Listeners

The Stack Overflow Podcast by The Stack Overflow Podcast

The Stack Overflow Podcast

62 Listeners

The Real Python Podcast by Real Python

The Real Python Podcast

139 Listeners

Oxide and Friends by Oxide Computer Company

Oxide and Friends

66 Listeners

The Pragmatic Engineer by Gergely Orosz

The Pragmatic Engineer

72 Listeners