PierreHenry.Dev Tech Show

🎡 Pierre-Henry Soria 🌴

Speaking about software engineering, AI, productivity, happiness, and intentional living. 🚀 I enjoy exploring ideas, sharing what I learn, and building products that solve meaningful problems. Topics I regularly discuss include: * Software engineering and product development * AI and emerging technologies * Productivity and time management * Personal growth and lifelong learning * Building systems, habits, and processes that last * Creating a fulfilling and intentional life Through writing, building, and continuous learning, I aim to share practical insights that help people think more clearly, work more effectively, and live more intentionally. I’m always interested in connecting with curious people, exchanging ideas, and collaborating on projects that create a positive impact. www.pierrehenry.dev

  1. Jul 11

    What 40 Years in Tech Teaches About AI, Blockchain, and the Internet

    For this conversation, I sat down with Roberto Capodieci, a technology entrepreneur, blockchain researcher, and one of those people who has seen several generations of computing from the inside. Our conversation started with something simple: coffee. As an Italian living in Bali, Roberto still begins his mornings with a cappuccino before jumping into work. It quickly became clear that technology has been part of his life for almost as long as he can remember. He started programming when he was five years old. By the age of nine, he was already making money from software. As a teenager, he founded his first company and built video games for the Commodore systems, working in C and assembly when every kilobyte mattered. Listening to those early stories was fascinating because they reminded me how different software engineering used to be. There were no online courses, no Stack Overflow, no AI assistants. Learning meant taking machines apart, reading manuals, experimenting, and spending hours on bulletin board systems with other curious people around the world. We also spoke about the early internet. Long before cybersecurity became a recognised field, Roberto was already investigating online scams. One case involved malicious dialers that secretly redirected people’s internet connections to expensive premium phone numbers. He tracked down the people behind the scam and shared his findings with the authorities, eventually receiving a letter of thanks from Bill Clinton. What quite surprise me wasn’t the technical achievement here. It was his motivation! He believes that when you understand how something dangerous works, you have a responsibility to help others understand it too. Whether it is exposing online scams or explaining how software really behaves, his goal has always been to make technology safer for everyone. That naturally led us into a discussion about trust. Modern software gives us switches, buttons, and settings that we simply accept. We click “disable”, “private”, or “do not train on my data”, but very few of us actually know what happens behind the interface. We trust software because the interface tells us to. It is an interesting perspective, especially today as AI becomes part of our daily lives. We then moved into blockchain. Roberto was involved with decentralised systems long before blockchain became popular. In fact, when he first discovered Bitcoin, he did not immediately see its value because his focus was elsewhere. Over time, after working on multiple blockchain projects and protocols, his perspective changed. One part of his journey stood out to me. During the pandemic, he spent a significant amount of time and money building a new decentralised platform. The first attempt failed. Instead of walking away, he started again, rewriting the entire project from scratch in C, this time with the help of AI to speed up development. I think every software engineer can relate to that. Sometimes the first version teaches you more than success ever could. Towards the end of our conversation, we discussed AI. Like many engineers, I often think about the balance between the opportunities AI creates and the concentration of power behind today’s largest models. Roberto shares that concern. He believes AI is one of the most powerful tools we have ever built, but he also argues that it should become more decentralised over time. If only a handful of companies control the models, the infrastructure, and the data, they also influence how information reaches billions of people. At the same time, he is genuinely optimistic about what AI enables. He gave a simple example that stayed with me. Someone who owns a bakery understands their business far better than any software engineer ever could. Today, with AI, that bakery owner can build the first version of the software they actually need instead of trying to explain every detail to someone else. That idea extends far beyond bakeries. People closest to a problem can now participate directly in building the solution. For me, that is one of the biggest changes happening in software engineering today. This conversation is not only about blockchain or AI. It is about curiosity, questioning assumptions, learning continuously, and remembering that technology is only valuable when it genuinely helps people. This is a public episode. If you would like to discuss this with other subscribers or get access to bonus episodes, visit www.pierrehenry.dev

  2. Jul 6

    Why Flow State Might Be Your Biggest Shipping Advantage

    Shipping better products is rarely about working harder or spending more hours. It comes from focus, flow, and knowing what matters next. Clear priorities reduce hesitation and improve decision making, helping engineers ship with confidence. This is about building the right things at the right time without noise or distraction. Building software is rarely about generating code first. It is about making the right decisions at the right time, with a clear focus on what actually matters. The strongest engineers are not the ones who know every tool. They are the ones who stay anchored in the problem they are solving and avoid drifting into unnecessary complexity. Focus keeps everything aligned. When you are in flow, you stop jumping between tools and start asking better questions. What does the user really need? What is the simplest way to deliver that value? What can be removed instead of added? This mindset changes how architecture decisions are made. If the system only needs a few endpoints and caching matters, REST often fits better than introducing GraphQL. GraphQL has its strengths, but it is not always the simplest choice. The same applies to databases and infrastructure. PostgreSQL, ORMs like Prisma or Drizzle, or query builders like Knex all solve different trade-offs. The decision is not about using the most modern tool, but the one that keeps the system understandable and maintainable. On the infrastructure side, simplicity wins in most early-stage systems. Lightweight CI/CD pipelines often outperform heavier setups early on. ECS can be enough without introducing Kubernetes too early. Terraform is powerful, but not always necessary at the start. Good engineering is also about knowing when to stop adding layers. Middleware, authentication checks, schema validation, and error handling are necessary, but only when they reduce real risk or duplication. Every abstraction should earn its place in the system. Reliability becomes part of this mindset. Observability tools like Datadog or New Relic surface issues such as latency spikes and failure rates. SRE concepts like error budgets help prioritise what matters next. If the system is consuming too much of its error budget, stability takes priority over new features. Security and maintenance are part of the same loop. Dependency scanning tools like Snyk exist to prevent hidden vulnerabilities, but they introduce trade-offs in cost and complexity. The decision is not about using everything available, but what is appropriate for the current stage of the system. At the core of all of this is focus. Focus on the user.Focus on the smallest useful system.Focus on shipping, observing, then improving. Everything else is optional until it is not. Building software is an ongoing cycle of decisions. The better your focus, the better your system becomes over time. Avoid distractions to increase quality and productivity outcomes. Subscribe for free to receive new posts. I’ve spent the last decade building projects on GitHub. They are available for inspiration and contribution. More content is coming on LinkedIn. Subscribe for free to receive new posts 🚀 I’ve spent the last decade building projects on my GitHub. Check them out for inspiration and contribution. And I’ve got more content coming your way on my LinkedIn! This is a public episode. If you would like to discuss this with other subscribers or get access to bonus episodes, visit www.pierrehenry.dev

  3. Jun 30

    Becoming a Product-First and AI-First Engineer: Mindset, Tools, and Efficient Workflows

    Being an engineer is not only about writing code or shipping features. It is also about how you feel while you build, how you think about problems, and how you choose to improve your daily workflow. A strong mindset starts with something simple: doing work you care about and staying close to that feeling over time. There are difficult days, moments where things feel unclear or frustrating, but what matters is how you respond to them. Staying grounded in a positive direction helps you keep moving, even when things are not perfect. Positivity here is not abstract. It is practical. It comes from surrounding yourself with the right influences, choosing tools that remove friction, and building habits that keep you focused on progress instead of frustration. From there, the shift toward becoming a product-first engineer starts with one key idea: think like the user. Before writing solutions, understand the problem deeply. Before building features, experience the product as someone who depends on it. This perspective changes how decisions are made and naturally leads to simpler, more useful software. On top of that, the role of an AI-first engineer is becoming more real in everyday workflows. Modern tools are changing how engineers interact with their environment. Tools like Superset, Conductor, CMUX, and terminal-based AI integrations like Codex or Grok bring intelligence directly into your workflow instead of keeping it separate. Using MCP integrations with tools like Figma, Linear, Notion, or Webflow also changes how fast ideas can move from design to implementation. Instead of switching contexts constantly, you can stay closer to execution and iteration inside your terminal environment. Even personal workflow setups evolve around this. Some engineers use multiple terminal sessions, cloned repositories, or workspaces to isolate features, experiments, and debugging tasks. Others rely on Git worktrees. Newer tools like Superset and Conductor simplify this by abstracting complexity and making parallel work more manageable without friction. The key point is not the tools themselves, but the willingness to adapt. What you used last year is often not enough for what you are building today. The pace of change in software engineering means your workflow must evolve with it. Improvement comes from exposure, experimentation, and action. When you discover better ways of working, the value only appears when you apply them in your own environment. The goal is simple: stay positive, stay curious, build with intent, and continuously refine how you work as both a product-first and AI-first engineer. Thanks for reading The Healthy Scientist: Build Using AI With Healthy Habits 🌱 I’ve spent the last decade building projects on my GitHub. Check them out for inspiration and contribution. I’m preparing more content coming your way on my LinkedIn! This is a public episode. If you would like to discuss this with other subscribers or get access to bonus episodes, visit www.pierrehenry.dev

  4. Jun 28

    Interview with a Solo Engineer Who Builds Simple Software That Lasts

    Most software becomes more complex over time. More features, more abstractions, more layers. But what about taking the opposite path? I had the great pleasure of interviewing Herman Martinus, the founder of BearBlog. He has taken a very deliberate path: simplicity over growth, independence over scale, and a strong refusal to let feature requests dilute the core idea behind his product. That mindset alone makes his approach interesting to follow! Herman is a former video game developer based in Cape Town, South Africa, where the tech scene is real and active. Meetups happen regularly, and the community is small enough that you keep bumping into the same people, which builds genuine connections over time. And when it’s not cloudy, the majestic Table Mountain is right there outside his window (no need for a virtual background!). Definitely a nice backdrop. Cape Town also turns out to be a strong base for independent builders. The cost of living is relatively low, the time zone aligns well with Europe, and English is widely spoken. Many developers there work remotely for European companies, earning in pounds or euros while living on South African Rand, which creates a comfortable setup for independent work. We also go into building products that last, resisting overengineering, and why saying no is one of the most important skills for any founder. A recurring theme is focus: building for a specific kind of user instead of trying to serve everyone. What also caught my attention is how Herman manages his work rhythm. He does not rely on a rigid schedule. He follows what needs attention, stays mostly in maintenance mode when travelling, and recently spent a month in Japan doing just that: handling support, emails, and small fixes. No deep building, no pressure to ship. When he returned, he felt refreshed and ready to build again. He also noticed that mixing travel and deep work left him underwhelmed on both sides, so he now separates them more intentionally. We also discussed how he uses AI. It is not part of the product itself, but it plays a specific role in his workflow, mainly for security audits and content moderation. Not as a shortcut for building features, but as a targeted tool with a clear purpose. From a lockdown side project to a sustainable independent business, Herman shares a grounded perspective on software engineering, product design, and what it means to build something that stays useful long after launch. A lot is covered in this episode: Why simplicity is a real competitive advantage, the dangers of overengineering, growing without traditional marketing, the special ʕ•ᴥ•ʔ growth hack that drives most of the user acquisition, how constraints often lead to better products, and the philosophy behind Bear Blog’s Manifesto, which helps Herman stay focused on what actually really matters for Bear Blog and its core values. This episode is definitely a must-listen for all software engineers, indie entrepreneurs, founders, and anyone interested in building meaningful products with intention rather than complexity. Herman also hosts his own podcast, “The Idea Roastery”, co-hosted with his friend Jason Forte. I’ve built plenty of projects on my GitHub over the years. Feel free to browse through for inspiration or contribution. I’ve got more exciting content coming your way on my LinkedIn. Make sure to hit that follow button so you don’t miss out! Thanks for passing by! 🌱 If you enjoyed this interview, I’ll make more like this. This is a public episode. If you would like to discuss this with other subscribers or get access to bonus episodes, visit www.pierrehenry.dev

  5. Jun 28

    How to Keep Your Web Services PERFORMANT

    APIs and web applications can become complex very quickly, and performance issues usually come from multiple small inefficiencies stacked together. Improving load speed is less about one big fix and more about identifying bottlenecks and applying optimisations at the right layer of the system. In this tech session, we explore practical techniques to make web applications faster and more efficient across the full stack. We start with image optimisation, since it is often one of the biggest performance drains. This includes serving images at the correct size, compressing them properly, and removing unnecessary metadata. We also look at modern formats like WebP and AVIF, which significantly reduce file size compared to PNG or JPEG. On top of that, lazy loading using the native HTML loading attribute helps defer offscreen images and improves initial page render speed. Fonts also play a role in performance. Choosing lighter formats like WOFF2 instead of heavier TTF or OTF files can reduce load time noticeably, especially on content-heavy pages. From there, we move into frontend and network performance. CDNs (Content Delivery Networks) help reduce latency by serving assets from locations closer to users. Preloading critical resources can also improve perceived speed by prioritising what the browser needs first. For client-side applications such as React, avoiding synchronous blocking calls and using proper asynchronous API handling helps keep the UI responsive. We also look at how hosting location impacts performance. If your users are mostly in one region but your infrastructure is hosted far away, latency increases unnecessarily. Using multi-region deployments or edge-based services helps reduce this gap. A key part of debugging performance issues is using browser tools effectively. Chrome DevTools provides the Network and Performance tabs to inspect request timing, payload sizes, and rendering behaviour. Lighthouse adds a structured performance score and highlights specific areas for improvement, making it easier to prioritise fixes. On the backend, database optimisation is critical. Proper indexing in relational databases can drastically reduce query time. Tools like pgAnalyze (for Postgres) help identify slow queries and inefficient patterns. Caching is another major improvement area, using systems like Redis or Memcached to avoid repeated expensive database calls. A well-designed caching strategy can often tolerate 30–60 minute stale data windows depending on the use case. API design also matters. REST APIs are often easier to optimise with HTTP caching headers, while GraphQL requires more careful cache management due to flexible query structures. In both cases, avoiding unnecessary requests and reducing payload size improves overall performance. Other important techniques include pagination and limiting data transfer. Instead of loading everything at once, APIs should return only the required chunk of data. This works well alongside frontend lazy loading strategies. Finally, serverless architectures require attention to database connections. Opening too many connections can create overhead, so proper connection pooling and cleanup is essential. The goal of this video is to show that performance is not a single optimisation, but a collection of small improvements across images, fonts, frontend behaviour, APIs, caching, and backend systems. When combined, they produce a significantly faster and smoother user experience. I’ve built plenty of projects on my GitHub over the years. Feel free to browse through for inspiration or contribution. I’ve got more exciting content coming your way on my LinkedIn. Make sure to hit that follow button so you won’t miss out! This is a public episode. If you would like to discuss this with other subscribers or get access to bonus episodes, visit www.pierrehenry.dev

  6. Jun 26

    Why Software Engineers Keep Choosing Complex Solutions Without Realizing It

    In this video, I break down why so many engineers default to complex solutions even when a simpler approach works better. And honestly? I’ve been guilty of this too. We all have. Here’s what’s really happening: ego, insecurity, and unclear thinking lead us straight into overengineering territory. You want to prove you’re smart, so you reach for the fancy design pattern. You’re worried the simple solution looks too basic, so you add layers of abstraction “just in case.” Or you haven’t actually clarified the problem, so you build something overly flexible to cover all possible scenarios. But here’s the truth… The best engineers aren’t the ones writing the most clever code. They’re the ones solving problems with the least amount of complexity necessary. Because simple code is easier to debug, faster to ship, and way more reliable in production. In this video, I’ll show you how to recognize when you’re overengineering, how to shift your mindset from “what’s the coolest solution?” to “what’s the right solution?”, and how to build cleaner, faster software that actually solves the problem at hand. Let’s talk about fighting the urge to be clever and learning to be effective instead. Psst! I’ve built tons of projects on my GitHub over the years. Check them out for inspiration or jump in to contribute! 🤠 I’ve got more content coming your way on my LinkedIn! Hit that follow button so you don’t miss out! 🎯 Thanks for reading The Healthy Scientist: Build Using AI With Healthy Habits 🔥! Subscribe for free to receive new posts and support my work. This is a public episode. If you would like to discuss this with other subscribers or get access to bonus episodes, visit www.pierrehenry.dev

Ratings & Reviews

About

Speaking about software engineering, AI, productivity, happiness, and intentional living. 🚀 I enjoy exploring ideas, sharing what I learn, and building products that solve meaningful problems. Topics I regularly discuss include: * Software engineering and product development * AI and emerging technologies * Productivity and time management * Personal growth and lifelong learning * Building systems, habits, and processes that last * Creating a fulfilling and intentional life Through writing, building, and continuous learning, I aim to share practical insights that help people think more clearly, work more effectively, and live more intentionally. I’m always interested in connecting with curious people, exchanging ideas, and collaborating on projects that create a positive impact. www.pierrehenry.dev