Stephanie Weirich gives an introduction to the ideas behind dependent typing, dependent typing in Haskell, extending Haskell, and the status and future of type theory.
Leah Hanson explains the characteristics of the Julia language, its type system, how to use and implement static analysis for the Julia language in the Julia language, and much more.
Performance engineer Monica Beckwith covers tuning java garbage collection, including: defining customer requirements; methodology; baselining and measurement; strengths and weaknesses of the different collectors; heap usage; causes of GC pauses; the distribution of pauses; tuning pause characteristics; going off-heap to avoid collection; scaling GC on multi-core and high memory machines.
Amir Chaudhry explains the ideas behind Unikernels, implementations like the OCaml-based MirageOS and Haskell-based HalVM, Rump Kernels for integrating with legacy code and much more.
Andreia Gaita takes a look at the state of Core CLR and Mono, Unity, cross platform mobile apps with Mono, the state of VR and the many challenges VR developers face.
Bridget Kromhout explains Cloud Foundry, how to run or use it, the tools Cloud Foundry provides for automation, and much more.
The interview with Jon Moore begins with a discussion on the relevance of Hypermedia APIs in the context of micro-services as well as the impact of HTTP 2.0 on APIs in general.The second half of the interview focuses on event causality in distributed systems and Moore's research on the application of population protocols for better clock synchronization.
Darach Ennis talks about the actor-model language Pony, its distinguishing approaches to memory management and concurrency, how it relates to Erlang, and much more.
Manuel Edwards on building DevOps momentum across the company with an initial success story and top-down support. Also how to empower self-supporting teams by providing them the tools to do their job.
Adam Wick talks about software security, research into formal methods and randomisation as well as documentation and types to help write secure software, HalVM and other Unikernels, DRM.
Modern software systems are complex and chaotic. Requirements, employee counts, and production environments change quickly. Yet the software produced under these circumstances must be understandable as well as useful. Matt Ranney, an architect at Uber, argues that to understand these complex systems you must embrace chaos, rather than run from it. You must also accept limits to our understanding.
David Hussman shares his thoughts around the Uncertainty Movement and moving from progress to product, as well as NonBan, Dude's Law, Cardboard and the horizon of electronic card boards.