

Coder Radio
The Mad Botter
A weekly talk show taking a pragmatic look at the art and business of Software Development and the world of technology.
Episodes
Mentioned books

Mar 5, 2019 • 47min
347: Rusty Rubies
Mike breaks down what it takes to build a proper iOS build server, and leaves the familiar shallows of Debian for the open waters of openSUSE.
Plus Wes’ reluctant ruby adventures and our pick to ease your javascript packaging woes.Links:rbenv: Groom your app’s Ruby environment — Use rbenv to pick a Ruby version for your application and guarantee that your development environment matches production. Put rbenv to work with Bundler for painless Ruby upgrades and bulletproof deployments.
Serverless Feedback from TomEnom — One thing you left out of your definition of serverless (IMO) that I find important is that it scales to zero. So if your lambda/function is not being used it incurs zero cost. I guess you could say that that is where serverless becomes literal.Install openSUSE on Digital Ocean — Unfortunately, Digital does not at present have an option for an openSUSE image. That doesn’t mean that you can’t use openSUSE on Digital Ocean, but it is going to be a little more work than most common Linux distributions.What is Pika? — Pika's mission is to make modern JavaScript more accessible by making it easier to find, publish, install, and use modern packages on npm.
Introducing: pika/pack — If you’ve recently published a package to npm, you know how much work goes into a modern build process. Transpile JavaScript, compile TypeScript, convert ES Module syntax (ESM) to Common.js, configure your package.json manifest… and that’s just the basics.Implications of Rewriting a Browser Component in Rust - Mozilla HacksRust use case study in npm [pdf] — The npm Registry uses Rust for its CPU-bound bottlenecks.

Feb 26, 2019 • 45min
346: Serverless Squabbles
The three of us debate when to go full serverless, and if ditching servers is worth the cost.
Plus the battle against the Cult of Swift gains new allies.Links:Marco Arment on Twitter — Add up all of the time you’ve spent learning Swift from scratch, accommodating its strictness, fighting its buggy tools, migrating your code through language changes, and re-learning APIs and conventions as they’ve changed over the last 5 years.
I’ve spent zero time doing that.A Swift Takes Flight on Windows — I have finally managed to get the compiler, the support libraries, the runtime, standard library, libdispatch, and now, Foundation to build and run on Windows! Apple Plans to Close Stores in Eastern District of Texas in Fight Against Patent Trolls — To continue to serve the region, Apple plans to open a new store at the Galleria Dallas shopping mall in Dallas, just outside the Eastern District of Texas border.Linux Academy - Full Stack Ruby on Rails Developer (Remote) — Your primary focus will be development of all server-side logic, definition and maintenance of the central database, and ensuring high performance and responsiveness to requests from the front-end. What is Serverless? — Serverless computing (or serverless for short), is an execution model where the cloud provider (AWS, Azure, or Google Cloud) is responsible for executing a piece of code by dynamically allocating the resources. Serverless Architectures - Martin Fowler — Serverless architectures are application designs that incorporate third-party “Backend as a Service” (BaaS) services, and/or that include custom code run in managed, ephemeral containers on a “Functions as a Service” (FaaS) platform.Serverless Architectures at AWS — A serverless architecture is a way to build and run applications and services without having to manage infrastructure.

Feb 19, 2019 • 56min
345: F# Envy
The guys discuss the real last bastion of scratch your own itch, and debate the merits of recent C# functional programing fads that are transforming the language.
Plus Mike’s swimming in hardware, and a new movement sweeping the web that starts right here.Links:Yo, Thelio! - dominickm.com — Overall, I am very happy with Thelio and if you’re interesting in running Linux on a desktop full-time, I recommend you consider it.Michael Dominick on Twitter — 10 minutes in and the #DarterPro has the best non-Mac trackpad I’ve ever used.Michael Dominick on Twitter — Yeah, so @ChrisLAS I have fallen hard off the old man sleep wagon and it's deeply sub-optimal.SCaLE 17x — SCaLE is the largest community-run open-source and free software conference in North America. It is held annually in the greater Los Angeles area.C# 8: The switch expression — C# 8 delivers a few new C# features to developers, and it is nice to see the language improving, but today I would like to talk about only one and it is "switch expressions".Don’t Get Clever with Login Forms | Brad Frost — Let’s walk through some login patterns and why I think they’re not ideal. And then let’s look at some better ways of tackling login.Canonical Announces Latest Ubuntu Core for IoT » Linux Magazine — Canonical has announced Ubuntu Core 18, their open source platform for IoT devices. Ubuntu Core 18 is based on Ubuntu 18.04 LTS code-base and will be supported for 10 years.
Andrew Madsen on Twitter — It’s weird how the iOS community has shifted so much from “iOS development” to “Swift”. 5 years on, and a huge part of what everyone’s doing revolves around the language, not how to create great apps. Why is that?
Michael Dominick on Twitter — Thinking more about this conversation about how the #iOSDev #macOs scene has changed online, it occurs to me that there’s a platform where that past ethos of “just build cool things” lives — desktop #Linux and @elementary in particular #CoderRadio @ChrisLAS
16-Inch MacBook Pro With All-New Design Expected in 2019 — Kuo also says Apple may add a 32GB RAM option to the 13-inch MacBook Pro, without providing further details.

Feb 12, 2019 • 1h 6min
344: Cupertino's King Makers
The gangs all together and cover your poignant feedback right out of the gate. Then we jump into the psychological trap of freelancing, and imagine a world where app stores are a true level playing field.
Plus some really fun picks, a bit of hoopla, and more.Links:Feedback from Steve: Employment vs self-employment — Just a comment regarding an episode a few weeks back regarding being an employee or working for oneself. Emma on Twitter — Keep @dominucco away and make sure all beverages are in a separate room!Why Freelancing Creates Anxiety About Money — But once I started freelancing, things changed. I became hyperconscious of how much money I could (or should) charge for my time, and this made me unhappy and mean when my nonworking hours didn’t measure up to the same value. It was akin to the rage of watching cab fare tick up while you’re sitting in traffic, minutes and dollars dribbling away before your eyes.What Hooks Mean for Vue — You may read through this and wonder what Hooks have to offer in Vue. It seems like a problem that doesn’t need solving. After all, Vue doesn’t predominantly use classes. Vue offers stateless functional components (should you need them), but why would we need to carry state in a functional component?Hooks at a Glance – React — Hooks are functions that let you “hook into” React state and lifecycle features from function components. Hooks don’t work inside classes — they let you use React without classes.Making Sense of React Hooks – Dan Abramov — Unlike patterns like render props or higher-order components, Hooks don’t introduce unnecessary nesting into your component tree. They also don’t suffer from the drawbacks of mixins.Create Your Own AI Family Portraits — This week NVIDIA's research engineers open-sourced StyleGAN, the project they've been working in for months as a Style-based generator architecture for Generative Adversarial Networks.
A Style-Based Generator Architecture for Generative Adversarial NetworksStyleGAN GitHub — This repository contains the official TensorFlow implementationPython Developers Survey 2018 Results — In the fall of 2018, the Python Software Foundation together with JetBrains conducted the official annual Python Developers Survey for the second time.miniC — What is it? A simple stack-based virtual machine that runs C (missing features below) in the browser and the beginning of an interactive tutorial that covers C, how the VM works, and how the language is compiled.MiniC Online DemoMake all videos fun to watch — Our project Laff track is a plugin to Chrome, which adds this craziness to all Youtube videos. It simply detects when people are not talking, and adds in a bit of laughter.

Feb 5, 2019 • 50min
343: Say My Functional Name
Mike breaks down the drama around nullable reference types in C# 8.0, and we debate what it means for the future of the language.
Plus a fresh reminder of Apple's absolute App Store authority, and the state of Mike's relationship with the rust compiler.Links:RustPython: A Python Interpreter written in RustApple bans Facebook’s Research app that paid users for dataApple restores Google’s own internal iPhone apps after privacy brouhaha — For less than a day, Apple had briefly revoked Google’s iOS certificate that enabled those private apps to conduct various internal business such as company shuttles, food menus, as well as pre-release beta testing, and more.
Apple Developer Enterprise Program — Get tools and resources to transform your mobile workforce with enterprise-class apps, distributed seamlessly and securely within your organization. Apple Is Fighting a Good Fight Against Facebook and Google — The implication that Apple is exhibiting some monopolistic urge to gutshot Facebook and Google makes close to zero sense. The events of this week will not affect their bottom lines, and Apple could have taken much more drastic action to lock down iOS — as it has before.Nilay Patel on Twitter — Hi, I'm the nagging voice in the back of your head pointing out that it's pretty intense that Apple can simply decide to prevent people from running code on their phones.Essential .NET - C# 8.0 and Nullable Reference Types — Nonetheless, as it currently stands, and even after 7 versions of C#, we still don’t have a perfect language.Make your next C# project non-nullable — The naming is a bit confusing, because reference types have always been nullable, and that’s the whole problem. The novelty is that they can now also be non-nullable.Switch to errors instead of warnings for nullable reference types in C# 8 — Nullable reference types coming in C# 8 are a great addition to anyone’s toolbox. But if you tried it you probably know “just” warnings are produced. And sometimes you’d like to have errors instead of warnings, so the build fails hard or something like that. It’s surprisingly easy to do so.

Jan 29, 2019 • 43min
342: Webs Assemble!
Apple wades into controversy after filing some Swift-related patents and we explore WebAssembly and its implications for the open web.
Plus the latest on Mike's road to Rust, some great feedback, and more!Links:Choose Linux — The show that captures the excitement of discovering Linux.Reddit Feedback for Episode 341Vapor (Server-side Swift)Apple: Trust us, we've patented parts of Swift, and thus chunks of other programming languages, for your own good — In the past day or so, developers working with the language have highlighted on Swift discussion forum Cupertino's intellectual property land-grab, expressing concern that the patents – which are assigned to Apple rather than the Swift project – may expose those writing Swift applications to future legal jeopardy.Swift Forums: Apple is indeed patenting Swift featuresProgramming system and language for application developmentDHH on Twitter (1) — Treating the web as a “compile target” washes away much of what‘s so special about it. Reducing the web to just another closed platform, like Windows or iOS, is to be blind to its truly unique shape and promise. Let’s cherish what made the web special, not pave it over.DHH on Twitter (2) — Web Assembly is exciting in a lot of ways. This isn’t one of them. Hopefully we’ll keep HTML/CSS/JS readable, tinkerable, teachable for all the work that doesn’t need Web Assembly.WebAssembly FAQWebAssembly Use CasesWebAssembly support in Unity

Jan 23, 2019 • 52min
341: Too Late for Jenkins?
Mike and Wes are back to debate the state of developer tools and ask where Jenkins fits in 2019.
Plus some some anger at Apple, and Mike reveals the latest language that's caught his eye.Links:Dokku — A docker-powered PaaS that helps you build and manage the lifecycle of applications.Jenkins — The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project.Jenkins Evergreen — Evergreen is an automatically updating rolling distribution system for Jenkins. It consists of server-side, and client-side components to support a Chrome-like upgrade experience for Jenkins users.Jenkins Blue Ocean — Blue Ocean is a project that rethinks the user experience of Jenkins, modelling and presenting the process of software delivery by surfacing information that’s important to development teams with as few clicks as possible.Introducing Jenkins X — Jenkins X automates CI/CD and DevOps best practices for you.Jenkins Helm Chart — Jenkins master and slave cluster utilizing the Jenkins Kubernetes plugin.Jenkins Chef Cookbook — Installs and configures Jenkins CI master & node slaves. Resource providers to support automation via jenkins-cli, including job create/update.Why on earth did we choose Jenkins for 2019? — This article tries to explain why the hell Rookout, a relatively new SaaS company, chose to use Jenkins, and what the big advantages are that make Jenkins so great even now, eight years in.
Linux Academy Certified Jenkins Engineer — Learn CI/CD concepts as well as Jenkins installation and functionality. Plus best practices for CD pipelines as well as Jenkin's security.'Mad Botter' takes 'MacGyver' approach to tech sales — The Plant City-based company turns run-of-the-mill consumer electronics into devices capable of being deployed for use in advanced military applications, such as fighter jets.

Jan 15, 2019 • 57min
340: The Optional Option
Wes joins Mike for a special Coder. They share thoughts on the costs and benefits of Optionals in Swift, uncover Mike's secret love affair with F#, and debate the true value of serverless. Links:Mark's IoT FeedbackIOKit — The I/O Kit framework implements non-kernel access to I/O Kit objects (drivers and nubs) through the device-interface mechanism.Does iPad Pro (2018) support IOKit? — IOKit has included iOS support since 2.0Elixir — Elixir is a dynamic, functional language designed for building scalable and maintainable applications.Craft and deploy bulletproof embedded software in ElixirNervesHub — NervesHub helps you manage firmware updates for Nerves devices.Elixir Mix Podcast — A weekly discussion with Elixir developers.Optional - Swift Standard Library — A type that represents either a wrapped value or nil, the absence of a value.Swift optionals explained simplyF# Software Foundation — F# is a mature, open source, cross-platform, functional-first programming languageDatomic Ions — Ions let you develop applications for the cloud by deploying your code to a running Datomic cluster.
Rich Hickey on Datomic Ions

Jan 7, 2019 • 47min
339: One Week at a Time
Mike’s just had the talk, and now it's time to make some changes. Including admitting he was wrong about Swift.
Plus we read some feedback, answer some questions, and destroy another computer.Links:Year of Structure FeedbackSleep FeedbackCan PWAs Do This?Ionic Native - BLESwift - Apple DeveloperMichael Dominick on Twitter — "Well I am starting the new year with a bang it seemed I nuked another laptop @ChrisLAS #CoderRadio"Michael Dominick on Twitter — "With Apple Care protection this time... #macBookAir #CoderRadio @ChrisLAS… "

Jan 1, 2019 • 1h 11min
338: sleep(jesus);
Don’t call them resolutions, lets just call them reasonable goals. Mike and Chris share their plans for 2019’s ground work, and why every single thing is fair game.Links:The VHS of Software... OmniGraffle — Create beautiful diagrams and designs with this powerful and easy to use app.iA Writer — iA Writer removes distractions, giving you a calm, focused writing space.Working Copy, Git on iOS — The powerful Git client for iOS that clones, edits, commits, pushes & more.Year of Theme inspired by the Cortex PodcastTurning Pro (Audiobook) by Steven Pressfield — Tap Your Inner Power and Create Your Life's Work