show episodes
 
Artwork
 
Want to learn web development from the comfort of your chair, car, when you're out for a run, or doing some random house work? This is the show for you. Every week, in 20 - 40 minutes, I help you improve your web development skills with new knowledge, tips, pointers, random facts, inspiration, and some general chit chat. Tune in to have a fun, engaging, and friendly conversation about web development.
  continue reading
 
Artwork

1
The Undercover ElePHPant

Benjamin Eberlei, Matthew Setter

Unsubscribe
Unsubscribe
Monthly
 
The Undercover ElePHPant is a podcast about scaling and optimizing your PHP applications. Each week, Benjamin Eberlei and Matthew Setter sit down with an expert from the PHP community to discuss a specific aspect of highly performant PHP applications.
  continue reading
 
Loading …
show series
 
Composer is an amazing tool that makes working with PHP so much simpler than it ever was before! In this short(-ish) episode, I want to introduce you to Composer's show command, and how it helps you find out about all of the dependencies on which your project depends. Links from the episode Composer's show command The Linux/UNIX ps command Want to …
  continue reading
 
In this episode, I'm discussing a recent post that I wrote on my blog about what it's like to learn Java as a PHP developer. If you're, primarily a PHP developer and have considered or spent time learning Java (or brushing back up on Java) then you might well relate to some or all of my recent experiences doing so. Links from the episode Learning J…
  continue reading
 
It's early days, so I don't know how detailed the project will end up being, yet. But, I wanted to share what I'm thinking with you, in this week's episode of the podcast. So, here's my overview of what I'm planning to do. Links from the episode The introductory LinkedIn post, with the first mockup pencil sketch Want to grow your knowledge further?…
  continue reading
 
In this episode, I'm talking with my friend Shelley Benhoff about Docker and Docker Compose, being a Docker Captain, and Kubernetes. It's a fun, warm episode, recorded some time back, where we talk about all of those topics, plus a look back on tech life, post-pandemic, work ethics in different countries, and more. Guest(s): Shelley Benhoff. Links …
  continue reading
 
If you're not aware, on May 6th, StackOverflow and OpenAI announced a partnership where OpenAI will have access to StackOverflow's API. This will allow ChatGPT to be trained, with attribution, from StackOverflow's large corpus of data. If you're a StackOverflow user, are you okay with this? Do you feel comfortable knowing that your contributions, w…
  continue reading
 
As software designers and developers, how often do we think about — or even put ourselves in the position of — the users whom we’re creating software for? How often have we had to use a poorly designed software, regardless of whether it was a native or web-based app or API? In this episode, I'm sharing my frustration with poorly designed apps and q…
  continue reading
 
In this episode, unlike in previous ones, I have a guest on the show. I sit down with my friend Andrew Kew to talk about whether AI is a net positive or negative for us as developers, and for society more widely. It was such a solid discussion that I felt my position become a little more open-minded to AI having a positive impact. That said, it was…
  continue reading
 
Building web apps in Go is extremely rewarding. No surprise there, right?! However, as Go’s a compiled language, to see changes, you need to recompile and restart them. Needless to say that’s quite tedious! With live reloading, it doesn’t need to be. In this episode, I'm talking about what live reloading is, what the benefits are, and how to get st…
  continue reading
 
You can specify build arguments in Dockerfiles to set variables required at build time. However, when you're using Docker Compose and one (or more) of the services in the configuration builds based on a Dockerfile, how do you specify build arguments for it? In this episode, I step through how to specify them in Compose configuration files. Links fr…
  continue reading
 
In this episode, the first for season 2, I talk about my recent experience deploying a Go app, backed by a SQLite database to Fly.io. Warts and all. Links from the episode Fly.io Persistable Volumes Fly.toml configuration The deployed application Want to grow your knowledge further? Check out the books and courses below, where you can grow your web…
  continue reading
 
In this episode, I had a wonderful chat with fellow Australian and former expat, Nigel James, about his journey from SAP consulting to PHP, and what life was like as a consultant over so many years in London. Our time there overlapped, but we never met. We also talked about why PHP is still an excellent choice to develop with, how Laravel is a Mark…
  continue reading
 
In this episode, I had a long and winding discussion about software testing with the legendary Grumpy Programmer Chris Hartjes. We talked about the importance of learning the essentials of software testing rather than focusing on a particular framework, as that makes your skills so much more transferable. We discussed how to approach testing; it's …
  continue reading
 
In this episode, I had the pleasure of continuing to talk with Arne Blankerts about one of my favourite topics: containers. We talked about his misgivings with Docker, his love of Podman, some of the history of containers and container plumbing in the Linux kernel, how Docker's architecture can lead to security issues, and so much more. If you're i…
  continue reading
 
In this episode, I had the pleasure of talking with my mate and colleague Darryl Ware, who I worked with in Brisbane (Australia) oh so many years ago, about the changing face of tech in Brisbane. He shared with me (as I've been living in Europe for the last 15 years) that it's changed from a broadly PHP-based city to a much more Golang-centric plac…
  continue reading
 
In this episode, I had the pleasure of talking with Doug Bierer about his history in computing, a history which if you're a computing hardware or programming nerd, you're going to love. Doug shares how he got in to computing with the TRS-80 and Commodore 64. How he taught himself to program in Assembler during shifts when he had some quiet time, an…
  continue reading
 
In this episode, I had the absolute pleasure of talking with Mihalis Tsoukalos, a long-time Twitter friend and someone who's given me loads of advice, about software development. He shared with me so much about his journey with C-based languages, particularly Python, C, Go, & Rust. He talked about Linux shells including Bash and Zsh (and of course …
  continue reading
 
It was a pleasure to sit down and chat with Oliver, a full-stack software consultant based in South Wales, in the UK. We talked about so many things which I'm sure so many developers can relate to, even those who've only been developing for a relatively short period of time. Some key takeaways are: Both working remotely and working in an office hav…
  continue reading
 
It was a pleasure to sit down and chat with Karl for this episode which went off on such a massive tangent at the start. Despite that, we felt it was worth keeping, as sometimes it's worth doing things a little differently. If you want to skip to the more tech/work/career aspect of the episode, jump up to about the 21 or 32 minute mark. Some points…
  continue reading
 
It was a pleasure to sit down and chat with Andreas. He shared what it was like taking over phpugffm (the PHP user group in Frankfurt, Germany), why he believes some devs aren't involved in user groups, how to become a better public speaker, and an excellent form of development: Documentation-driven Development. Some key takeaways are: When you los…
  continue reading
 
It was great to be able to talk to Andrey for this episode. He shared some of his journey to becoming a professional software developer (starting off with QBasic and Delphi), teaching software development to school kids, before moving to JetBrains to be the lead designer of the Kotlin language. Links Design Patterns: Elements of Reusable Object-Ori…
  continue reading
 
It was great to be able to sit down and chat with Cal again, as he shared so much great information, including: How he got started using WordPress How the WordPress API has changed WordPress How he gets podcasts out the door so quickly through scripting and proper processes; and How to be a better communicator. Some of the key things to know about …
  continue reading
 
Links Mastering Laravel Learning How to Learn NoCompromises.io No Compromises podcast SourceDive.com Midwest PHP ncurses installer Guests: Joel Clermont (@jclermont). Hosted By: Matthew Setter. Thanks for tuning in to Free the Geek. If you'd like to be a guest on the podcast or know someone who'd make a great guest, email me: matthew@matthewsetter.…
  continue reading
 
Links NASA The Australian Weather Service (now the Bureau of Meteorology) Psychological Safety Code Reviews Pull Requests (PRs) Red Hat Alta Vista Windows 95a The Gnome Bar Ganbaro Digital Ltd Guests: Stuart Herbert (@stuherbert). Hosted By: Matthew Setter. Thanks for tuning in to Free the Geek. If you'd like to be a guest on the podcast or know so…
  continue reading
 
Links Steve on YouTube Laravel Go Rust minicli Bash Call of Duty Laravel News Guests: Steve McDougall (@JustSteveKing). Hosted By: Matthew Setter. Thanks for tuning in to Free the Geek. If you'd like to be a guest on the podcast or know someone who'd make a great guest, email me: matthew@matthewsetter.com. This podcast is produced by Matthew Setter…
  continue reading
 
Links Functional Programming The Principle of Least Surprise TypeScript Web Scraping with PHP, 2nd Edition The Spark framework The Sinatra framework The Ada language Linus Torvald's talk at Google Guests: Matthew Turland (@elazar). Hosted By: Matthew Setter. Thanks for tuning in to Free the Geek. If you'd like to be a guest on the podcast or know s…
  continue reading
 
In this episode, I step through a recent post that I wrote for the Twilio blog showing how to build a Markdown-based blog with the Slim Framework and PHP's Iterators - and really show the love for Slim Framework. Why? Because I invested so much time in writing the code behind the tutorial, researching the various components that I used, writing, ed…
  continue reading
 
Docker Compose is an excellent way of deploying apps both on local development machines and to remote environments, but does it play nice with Composer path repositories. Yes. They sure do. In this week's episode I shared a little experience I had during the week where I didn't update my docker-compose.yml file to account for the fact that the path…
  continue reading
 
This is a bit of a fireside-chat style episode, with not much tech talk going on. Rather, it's a bit of a look behind-the-scenes at what goes in to creating technical books and courses, such as a bit about what it takes to set up a home recording studio (on a budget) that still delivers the level of professionalism that you'd expect. So grab your f…
  continue reading
 
It sure feels like a lifetime since I began planning out Docker Essentials all those months ago. But it's ready. So, I feel that it's only fair to talk about it, given the number of hours that have gone in to create it. If you haven't already, grab your copy today and get in to the fun that is Docker! But it's not all self-promotion in this episode…
  continue reading
 
In this episode, I share some of my recent experiences and learnings with tailwindcss, my frontend, css framework of choice, specifically building a fully responsive design for a new page on https://webdevwithmatt.com. The lowdown is that I didn't follow the key advice from tailwindcss and start with a small device first, and then work up to a larg…
  continue reading
 
In this episode, I share my absolute love and affection for responsive design mode in modern browsers, talk about what it is, how it works, some of its limitations, but most importantly, why you should use it, if you're not already. Links from the episode Firefox's Responsive Design Mode Chrome/Chromium's Device Mode Safari's Responsive Design Mode…
  continue reading
 
While building my first GitHub Action-based workflow recently, I struggled until I took the time to relearn - and re-appreciate - how the Docker client and daemon communicate. In this episode, I share: How they work How the understanding helped me build a solid workflow to deploy webdevwithmatt.com Some of the different ways you can tell the Docker…
  continue reading
 
In this, the series introduction, I wanted to tell you what the podcast is all about, what you're going to get by subscribing; generally, give you a feel so that you "try before you buy", if you will. Hosted and produced by: Matthew Setter. Website: https://webdevwithmatt.com Follow us on: Twitter, Instagram, and LinkedIn. If you like the podcast, …
  continue reading
 
We should be back with a new season of the podcast after the Summer but will let you know, exactly, when that will be when we have a firm date set. Hosted By: Benjamin Eberlei and Matthew Setter. Thanks for tuning in to the Undercover ElePHPant. If you'd like to be a guest on the podcast or know someone very knowledgeable in writing highly performa…
  continue reading
 
So, what are those tips? Have a dedicated workspace, or work area - one that is separate from the rest of your home Get the tools you need - and make sure you have a decent internet connection! Have a regular routine (both a start and end time and how you kick off your day) Talk to those who you live with so that you educate them about how working …
  continue reading
 
Samuel shared a load of excellent advice that you can start using today in your PHP applications, including: The common challenges with background processes and PHP? Why background processes & workers can be an important aspect of PHP applications? What angel processes are How to handle failed background processes How to handle memory in PHP with l…
  continue reading
 
Arne shared a load of excellent advice that you can start using today in your PHP applications, including: What PHP-FPM is What differentiates PHP-FPM from Apache/mod_php? NGINX's different pool types (dynamic, static, and ondemand) How to configure PHP-FPM for high-performance and throughput Using multiple PHP-FPM pools in the same application? Pl…
  continue reading
 
Here are some key takeaways: To start a user group, you only need three things: 1) a location, 2) a speaker, and 3) food. That’s it! What's also helpful is a mailing list to stay in touch. In his talks he tells a story. But he's also a perfectionist; He wants to make as much of an effort as he can. In the early days, he enjoyed speaking and did it …
  continue reading
 
In this episode, Benjamin and Matthew talk with Jordi Boggiano about logging in production applications as well as logging best practices. We also talk about logging formats, filtering log messages, Monolog and loads more! Jordi shared a load of excellent advice that you can start using today in your PHP applications, including: How to get started …
  continue reading
 
In this episode, I talk with Matthew Turland about the effort involved in updating one of his technical books and programming in multiple languages (PHP and Ruby) plus loads more! Matthew shared a load of excellent advice in this warm, fireside chat. Links Matthew on Twitter (@elazar) matthewturland.com Web Scraping with PHP, 2nd Edition | php[arch…
  continue reading
 
In this episode, I talk with Matt Stauffer about how he started Tighten, how he got into Laravel, why he's such an active member of the community, what he looks for when hiring developers and loads more! Matt shared a load of excellent advice that you can start using today in your career. Links Tighten onramp.dev Laravel Up and Running, by O’Reilly…
  continue reading
 
In this episode, Benjamin and Matthew talk with Matthieu Napoli about Shared-nothing and Shared Everything Architectures. We also talk about Bref, Swoole, ReactPHP and loads more! Matthieu shared a load of excellent advice that you can start using today in your PHP applications, including: What Shared-nothing and Shared Everything architectures are…
  continue reading
 
In this episode, Benjamin and Matthew talk with Nils Adermann about integrating with third-party APIs in PHP. Nils shares some excellent advice, including: Handling retries and timeouts Efficiently and effectively working with multiple API vendors How to work with vendors when their actions break your apps Different types of responses (the good and…
  continue reading
 
In this episode, Benjamin and Matthew talk with Bastian Hofmann about handling retries and timeouts in PHP. Bastian shares a load of great advice, including: Having dedicated hosts for certain traffic Distinguishing between normal users and admin users Offloading work to asynchronous jobs Default socket timeouts and max execution times Automatic re…
  continue reading
 
In this episode, Benjamin and Matthew talk with Robert Douglass and Larry Garfield from Platform.sh about running PHP applications on multiple servers. Robert and Larry share a load of excellent advice, including: - Why you need to use Load Balancers (along with what they are and some of the key options) - How PHP is exceptionally well suited to be…
  continue reading
 
In this episode, Benjamin and Matthew, talk with Marco Pivetta (ocramius) about: PHP 7.4's new preloading feature: what it is, how it works, the benefits and drawbacks of using it The speed differences between different versions of PHP (especially in 7.x) The difference between OPcache and Preloading How Composer's autoloader may soon be a thing of…
  continue reading
 
Thanks to PHP being an interpreted language and it that it has a garbage collector, PHP developers don't often have to think about memory management. Unlike developers in compiled languages, such as C/C++, we don't have to give that much thought to memory allocation and deallocation. However, it's helpful to have a broad understanding of how garbag…
  continue reading
 
Welcome to the introductory episode of The Undercover ElePHPant. This is the welcome episode, where we give you the rundown on what the podcast is about, who we, your lovely podcast hosts, are and what you can expect to hear. So, let's get started. This podcast aims to do three, core, things: Uncover details and secrets of scaling PHP and how to ma…
  continue reading
 
Ever wanted to dynamically add functionality to services you retrieve fromyour DI container — without creating custom versions or long inheritancehierarchies? Do you want to do it in a simple, clear, and well structured way? If so,then tune into this episode and learn about delegator factories. They're anadvanced and very powerful technique for han…
  continue reading
 
In this episode, I have an extremely interesting, inspiring, but most of all educational chat with my mate Najaf Ali, founder of Happy Bear Software, about what it's like to go from being an independent software consultant and freelancer to running a software consulting business. ★ Support this podcast ★…
  continue reading
 
Loading …

Quick Reference Guide