Tuesday, July 31, 2018

Episode 80: Concurrency

Download

We are sponsored by audible! http://www.audibletrial.com/programmingthrowdown

We are on Patreon! https://www.patreon.com/programmingthrowdown

T-Shirts! http://www.cafepress.com/programmingthrowdown/13590693

Intro

We are on discord! https://discord.gg/r4V2zpC

News/Links

Book of the Show

Tool of the Show

Concurrency (29:15)

  • Why?
    • Getting more work done
    • Handling asynchronous requests
  • How?
    • Threads vs Processes
    • Message Passing
    • Shared Memory
    • Threadpool
  • Locking/Mutex/Semaphore
    • Coordinating Threads
    • Preventing Threads from modifying the same structure
  • Pitfalls
    • Race conditions
    • Deadlock
  • Advice
    • Don’t do concurrency yourself
      • Gnu parallel
      • Async libraries
      • Basic Linear Algebra System
    • Have a way to actually measure results

Sunday, July 1, 2018

Episode 79: Technical Arguments

Download

We are sponsored by audible! http://www.audibletrial.com/programmingthrowdown

We are on Patreon! https://www.patreon.com/programmingthrowdown

T-Shirts! http://www.cafepress.com/programmingthrowdown/13590693

Intro

Understanding how Blockchain works

News/Links

Book of the Show

Tool of the Show

Technical Arguments (1:00:26)

  • Making progress vs “Doing it Right”
    • Adding/Reclaiming Technical Debt
    • Delivering on time
    • When/how to optimize
  • Language Arguments
    • Which language to use
    • Tabs vs Spaces
    • Style
    • IDE/Text Editor
  • How to make technical arguments
    • Reflect on why you want X
    • What alternatives/substitutes exist?  What compromises?
    • Do not force an argument to complete in a single session
    • In between sessions, reflect on what has changed
    • Pick your battles