113: Macro vs. Micro Vision

In this weeks episode we start off by congratulating Mick on handing in his masters dissertation. We then move on to discuss decision trees, ordinal regression and genetic algorithms. Edd then mentions managing large tables in Postgres, MVCC, Fill factors and Vacuuming a table. From here we highlight an interesting JavaScript Unicode/New-Line length issue that occurred recently. Finally, we touch upon testing time-dependent processes in isolation, dreaded CRM integration and sign-up processes.

Corrections: Couple of mistakes by Edd; its’ MVCC not MVVC, and any character that can’t be represented using 8 bits in PHP will have a strlen > 1.


112: The Mafia Effect

In this weeks second in-person episode, we start off by congratulating Fraser on his recent engagement. We then move on to chat about setting up Kong, rate-limiting APIs and monitoring the health of an application system. From here we discuss the final stages of Mick’s masters dissertation, highlighting the PageRank paper and the Matthew (not Mafia) effect. Finally, we mention Edd’s trip to Silicon Milkroundabout and blog posts that he has recently had the chance to publish.


111: Let it Crash

In this weeks episode Mick and Edd start off discussion with an update on Mick’s masters dissertation. We then move on to highlight the value of getting an MVP released, and the old adage that hindsight is 20/20. Edd then brings up how he has had the chance to revisit MyBuilder’s logging and monitoring infrastructure recently, re-accessing Severity levels along the way (embarrassingly missing out Critical in the podcast). He also mentions how background processes used within the application have changed overtime - discussing the difference between Time-dependent and Continuous processes. Finally, we chat about successfully introducing Supervisor into the stack and Erlang’s ‘Let it Crash’ philosophy.


110: Getting Started using Composer with Jonathan Klein

In this weeks episode we are joined by Jonathan Klein to discuss his recently released Composer Pluralsight course. We start off by discussing the problem Composer is trying to solve, followed by past attempts at trying to solve it in the PHP landscape. Following this, we move on to discuss how the composer.json and composer.lock files work, the importance of versioning, the Semantic Versioning standard and how autoloading works. Finally, we delve into a couple of lesser-known Composer features, such as the event life-cycle, scripts and the plugin architecture that is present.


109: Processing Signals and Collecting Garbage with Joe Watkins

In this weeks episode we have a long overdue catch-up with Joe Watkins. We start off discussion with progress on PHP 7.1 and work Joe has been doing to provide an interface to libui within PHP. We then move on to chat about a couple of interesting RFC’s that are currently under-discussion, followed by managing long-running PHP processes with Supervisor and Unix signaling. Finally, we highlight how Garbage collection works and how PHP implements the concept to help manage memory.


108: The Vinyl Experience

In this weeks episode we start off discussion on the latest Apple event, what we think the next big product will be (the Apple Hat?!) and phone battery life woes. We then move on to chat about immutable design considerations, controlling mutation to aid performance and being bit by values vs. references. From here we highlight how profilers such as Blackfire are a great way of benchmarking/profiling your application - providing statistics over only your own intuitive claims. Finally, we mention database backup strategies, AVL trees and adding AirPlay support to your Vinyl deck.


107: More Chemistry than the Periodic Table

In this weeks episode we start off the show by catching up on the ‘programming filled’ holidays both Edd and Mick have just come back from. We then move on to discuss Mick’s photo-shoot?!, Edd’s half-marathon training and highlight our deployment/testing processes. Finally we ‘Shave the Yak’ and discuss event-oriented system design - highlighting how it has been used in a recent project and the pros n’ cons of such an approach.


106: The World of Amazon Web Services with Jason Marden

On this weeks episode we are lucky to be joined by Jason Marden, to discuss the world of Amazon Web Services. We start off the show talking about Jason’s recent visit to the AWS Summit in London, and what the talking points were from the conference. From here we delve into the Serverless Architecture, how AWS Lambda is paving the way of FAAS, containers and view-based aggregation services. The Immutable Server is next brought up, highlighting the change in deployment philosophy that can be achieved by using such a concept. Finally, we discuss the value of a good debugger, bringin’ back awesome screen-savers and the craze of Pokemon Go.


105: Hip hip (array)

On this weeks show we start off discussion around what we have been up to away from the keyboard, and an update on Mick’s big freelance project. We then move on to the pros n’ cons of being tied into an ecosystem such as AWS, React performance, Micro-services and the expected FUD outcry when a web application makes a significant change. Finally, we chat about how important logging and monitoring are within an application, and how it can become tricker to track down issues when a system is sufficiently large or a sum of many parts.


104: Falling into the Pit of Functional Success with Jimmy Burrell

In this weeks episode we are lucky to be joined by Jimmy Burrell for a long over-due ‘geek out’. We start off discussion around his recent functional programming exploration, and how you can take many of these principles into your day-to-day OOP language. Following this we chat about what drew Jimmy to F#, the REPL, making illegal states unrepresentable and reasoning about immutable data-structures. From here we highlight some of F# capabilities including, pattern matching, computational expressions, type providers, currying and concurrency paradigms. Finally, we wrap up the show discussing our experiences learning about monads, the continuation passing style, and thinking in terms of data transformations.