Tuesday, January 15, 2019

Episode 86: Wolfram Language and Mathematica


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

Join us on Discord! https://discord.gg/r4V2zpC

Wolfram Language and Mathematica

  • What is Wolfram Language?
  • What is the difference among the wolfram language, mathematica, and wolfram alpha?
  • Pros and Cons of proprietary language
  • Wolfram Language dev meetings livestreamed?  What is that like?
  • New products coming from Wolfram Research?
  • How to teach kids to code?
  • Jobs?

Stephen's homepage: https://stephenwolfram.com/
Wolfram Language: https://www.wolfram.com/language/
Livestream of Wolfram's dev team meetings: https://www.twitch.tv/stephen_wolfram

Tuesday, December 4, 2018

Episode 84: Customer Bug Handling

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

Join us on Discord! https://discord.gg/r4V2zpC

Intro

Funny Computer Science Pop Culture

https://www.youtube.com/watch?v=hkDD03yeLnU
https://www.youtube.com/watch?v=kRcdmbC0HHs
https://www.youtube.com/watch?v=K7Hn1rPQouU

News/Links


Book of the Show

Tool of the Show

  • Jason: Software RAID Controller
  • Patrick: Pass

Customer Bug Handling (41:04)

  • Desktop
    • Distribute your binary
    • Turn on debug symbols
    • Add rolling logs
      • Balancing size vs not missing the event
      • Log Levels (Performance implications)
    • Add crash handlers
    • Catch Signals
    • Process logs
      • Grep / jq
    • Interpreting Stack Traces
      • Addr2line / atos
      • Turn off address scrambling (security implications)
    • Sending data to your database
      • REST/GraphQL endpoint
      • Windows/Fedora/Debian crash aggregator
  • Web Client
    • Send crash logs over AJAX
  • Mobile

Monday, October 1, 2018

Episode 82: Reactive programming and the Actor model with Jonas Bonér

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

Reactive programming and the Actor model with Jonas Bonér

  • Tell us about your background
  • What is reactive programming?
  • What is the actor model?  How does it fit with reactive programming?
  • Why would someone use this way of programming?
  • When is it applicable and when it is not a good fit?
  • How does the actor model compare to other distributed programming paradigms (MPI, Map-Reduce)
  • How can the system recover from node failure?
  • What is Akka?
  • What is it like to work at Lightbend?  Are you hiring?

More info:

Follow Jonas Bonér on Twitter: https://twitter.com/jboner
Check out Akka here: https://akka.io/

Thursday, September 6, 2018

Episode 81: 2018 Mailbag

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

Christmas Gifts

News/Links

Book of the Show

Tool of the Show

Mailbag (29:15)

  • Nathan
    •  PICO-8 and/or the pocketCHIP (if you order one, be warned they are behind on other orders. Check their forums) for simple 2D game development with Lua.
  • Dylan
    • Modding video games?
  • David
  • Jack
    • How do we manage passwords?
  • “A Listener”
    • For job security, as an individual, is it best to have a little knowledge on a lot of languages or to specialise in just a single one
    • Switching programming languages for a whole organization
  • Chris
    • OS X, Windows, Linux? If Linux, what distro? What do you use day to day? What languages? 
    • What's your favorite development platform? Laptop? Battlestation? SMART PHONE?!
  • BSDTech (Discord)
    • I have a question.  As a fairly new programmer how do you best deal with variables changing types and being cast wrong in languages like python (what im working on).  In C it was fairly easy either its the right type all the time or it fails miserably and you didn't have random "its a NoneType this time" errors other than doing a ton of if loops checking for it
  • McGee (Discord)
    • I’m taking a class this semester called Operating Systems. In this class we will be creating a basic operating system in C and apparently some Assembly... what are some things to keep in mind or to expect when writing something like this?
  • Vellor (Discord)
    • Will we ever revisit topics on the show?
  • Apettit9 (Discord)
    • What do you listen to while you work?
  • Peter (Discord)
    • What are some of the best work from home positions? Sometimes it's hard to work remote, but are there any positions that are a good fit? Or does it depend more on company culture/co-workers?
  • ReillyC52 (Discord)
    • Where are some of best places to discover new open source projects and contribute to them ?
  • Grant (Discord)
    • Immutable vs. mutable objects
    • New AI Libraries (tensorflow, keras, pytorch)

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