Wednesday, November 23, 2016

Episode 60: Javascript for Mobile

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

Javascript For Mobile with Burke Holland

  • Tell us about yourself and what you do!
  • How does mobile development work?
  • How is mobile development different from making a desktop program?
  • What is NativeScript / React Native? 
  • Why use JavaScript for native development?
  • If I have to make a website anyways, why not just wrap my existing website into an app (e.g. Cordova)?
  • How do you think mobile development will change in the next few years?
Burke's resources:

Progress Software - progress.com
NativeScript - nativescript.org
NativeScript Slack Channel - https://nativescriptcommunity.slack.com
NativeScript Getting Started Guide - http://docs.nativescript.org/angular/start/introduction.html
Key Differences Between NativeScript And React Native - https://www.quora.com/What-are-the-key-difference-between-ReactNative-and-NativeScript/answer/Valentin-Stoychev
Hybrid Migration Guide (for those looking to move from Cordova to NativeScript)  - http://www.hybridtonative.com
Kendo UI - www.kendoui.com
Kendo UI For Angular 2 - http://www.telerik.com/kendo-angular-ui/
Sharing Code Between Web And Native Mobile - https://github.com/NathanWalker/angular-seed-advanced#general-best-practice-guide-to-sharing-code




Monday, October 31, 2016

Episode 59: Deploying Software

Download

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

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

Intro topic: T-Shirts http://www.strawpoll.me/11315986

News/Links


Book of the Show

Tool of the Show


Deploying Software Discussion

  • Application Distribution
    • Why you can’t zip your program and send the zip to someone
  • Dependencies
    • Shared vs. Static libraries
  • Desktop Installers
    • Windows: Nullsoft Scriptable Install System
    • OSX: Sparkle
    • Linux: Personal Package Archive
  • App Stores (Steam, Windows, Apple, iOS, Android)
  • Continuous Delivery vs Continuous Deployment
  • Web deployment
    • Hot-swapping a website
    • Database migration




Tuesday, September 27, 2016

Episode 58: Scaling Web Sites

Download

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

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

Scaling Web Sites with Daniel X Moore

  • Who is Daniel and what is your role at fog creek?
  • What is a web stack? What are some examples?
  • Why do front end web programmers have to consider or work on back end systems?
  • What are the problems/symptoms I might have that should lead to considering docker?
  • What happens when my website becomes so popular that I need more than one webserver?More than one database?
  • Monolith vs microservice?
  • What are the best things to learn now to get started and become productive?
  • What is HyperDev?

Wednesday, August 31, 2016

Episode 57: Optimization

Download

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

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

Intro topic: Public Service Announcement: Binomial Distribution

News/Links


Book of the Show

Tool of the Show


Optimization Discussion

  • Architecture
    • SIMD
    • GPU
    • CPU
  • Compiler settings
    • Optimization Settings (Why to turn on or off) (size vs speed)
    • Loop Unrolling
  • Memory
    • Cache Levels vs Main Memory
    • Data Locality/Access Patterns (Matrix multiply optimization)
  • Indexing
    • Trees
    • Hashing (Clustering)
  • Distributed Computing
    • Threading
      • Multi-Thread
      • Multi-Process
      • Thread pools
    • Networking
      • Load Balancing
      • Reliable UDP
  • Algorithmic improvements
    • Big-O notation
    • Approximations





Friday, July 22, 2016

Episode 56: Robotics

Download

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

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

Intro topic: Reddit thread and new microphone

News/Links


Book of the Show

Tool of the Show



Robotics Discussion

  • Controls / Actuators
    • Locomotion
    • Manipulation
    • Closed loop vs open loop
  • Sensors
    • Cameras
    • Accelerometers
  • Planning / Autonomy
    • Teleoperated
    • Supervised
    • Tasked
    • Autonomous
  • Communications 
    • Inter system communication
    • Swarm
  • Human Machine Interaction
    • Input
    • Emotion
  • Examples
    • FIRST Robotics
    • Robotwars
    • Robocup
    • Self driving car





Friday, June 24, 2016

Episode 55: Editor Wars

Download

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

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

Intro topic: Mandatory Vacation
https://text.sourcegraph.com/why-vacation-at-tech-companies-should-be-mandatory-better-code-happier-people-d1b549681291#.imcvd6xem

News/Links


Book of the Show

Tool of the Show



Editor Discussion

  • Philosophy
    • Customized
    • Searchable/Ability to go from usage to definition
    • Integrated vs roll your own (The stack)
  • The simplest
    • Pico/Nano
    • Notepad/Wordpad
  • IDE-As-A-Platform
    • Emacs
    • Vi/Vim
  • Java behemoths
    • Netbeans
    • Eclipse
    • Intellij
  • Corporate IDEs
    • Visual Studio
    • XCode
  • New kids on the block
    • Sublime
    • Atom
  • Language-Specific
    • MATLAB
    • R studio
    • Spyder
  • In memorium
    • Code::Blocks
    • Borland C++ Builder
    • FreeBASIC





Wednesday, May 25, 2016

Episode 54: Programming for the GPU

Download

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

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


Programming for the GPU with Mark Harris


  • Introductions: Who is Mark Harris? What is NVIDIA?
  • GPUs & Heterogeneous Computing
    • What's the performance difference between GPU and CPU?
    • What’s better on a GPU? What’s better on a CPU?
    • If a program needs to use the CPU (e.g. reading packets from the network) and the GPU (e.g. fluid simulation) at the same time, how do the CPU and GPU programs communicate?
  • CUDA
    • What is CUDA?
    • What’s the difference between SSE / CUDA / OpenCL?
    • How does someone debug CUDA code?
    • How does someone profile their code to find bottlenecks?
    • Cuda Plattorm
      • Directives, openmp
      • Cuda c++
  • CUDA Libraries
    • Deep Learning
    • CuBLAS
    • Drive
  • Deep Dream:
    • https://github.com/google/deepdream
  • Udacity course on CUDA
    • Intro to parallel programming
  • Life @ NVIDIA
    • What is a day working at NVIDIA like?