Recent Posts
Archives

Posts Tagged ‘PHP’

PostHeaderIcon [PHPForumParis2021] Front-End Quality: Why It’s Also the Backend Developer’s Job – Martin Supiot & Élie Sloïm

Martin Supiot and Élie Sloïm, experts in web quality, delivered a compelling joint presentation at Forum PHP 2021, arguing that backend developers play a critical role in ensuring front-end quality. Representing Opquast, Élie, a pioneer in web quality standards, and Martin, a former AFUP treasurer, emphasized the interconnectedness of front-end and backend development. Their talk provided practical strategies for improving user experience through collaboration. This post explores four themes: shared responsibility, enhancing user empathy, optimizing error handling, and avoiding third-party dependencies.

Shared Responsibility

Martin Supiot and Élie Sloïm opened by challenging the siloed mindset of front-end versus backend development. They argued that backend developers, through their work on APIs and data processing, directly impact front-end performance and accessibility. Drawing on Opquast’s quality checklist, Élie and Martin highlighted how backend choices, like efficient API responses, influence user experience. Their collaborative approach at Opquast underscores the need for cross-functional teamwork to deliver high-quality web applications.

Enhancing User Empathy

A central theme was fostering empathy for users, particularly those with limited technical capabilities. Martin and Élie stressed that backend developers must consider how their code affects user interactions, such as ensuring clear error messages or accessible data formats. By prioritizing user needs, developers can create inclusive applications. Élie’s work with Opquast’s guidelines provides a framework for backend developers to align their work with user-centric front-end outcomes, enhancing overall usability.

Optimizing Error Handling

The duo emphasized the importance of thoughtful error handling, such as personalized 404 and 403 pages, to guide users effectively. Martin explained that a generic error page might lead users to blame their connection, whereas a well-crafted response provides clarity. While 500 errors are harder to test, Élie and Martin advocated for backend systems that deliver meaningful feedback, ensuring users remain engaged rather than frustrated, a principle rooted in Opquast’s focus on quality assurance.

Avoiding Third-Party Dependencies

Concluding their talk, Martin and Élie cautioned against relying solely on third-party authentication systems like Google or Facebook. They noted that such dependencies can exclude users without accounts, potentially losing 30% of a site’s audience. By designing backend systems that support independent authentication, developers can enhance accessibility and inclusivity. This approach, informed by Opquast’s best practices, ensures that backend decisions prioritize user access and engagement.

Links:

PostHeaderIcon [PHPForumParis2021] Design Patterns Explained to Children – Vincent Laurier

Vincent Laurier, a former mathematics teacher turned PHP developer, enchanted the Forum PHP 2021 audience with a unique approach to explaining design patterns through storytelling. Drawing on his recently published book, Vincent used a narrative style to make complex concepts accessible, likening design patterns to characters in a children’s tale. His talk blended pedagogy with practical advice, offering insights into both coding and project realization. This post covers three themes: simplifying design patterns, the circle of realization, and sharing knowledge through storytelling.

Simplifying Design Patterns

Vincent Laurier began by demystifying design patterns, presenting them as intuitive solutions to common coding challenges. Using analogies from his book, he likened patterns like Singleton and Factory to characters with distinct roles, making them relatable for developers of all levels. Vincent’s pedagogical background shone through as he avoided technical jargon, ensuring that even complex concepts like dependency injection were accessible. His approach, rooted in his passion for teaching, encouraged developers to view patterns as tools for clearer, more maintainable code.

The Circle of Realization

A key concept in Vincent’s talk was the “circle of realization,” a framework for turning ideas into completed projects. He described this as a cyclical process with five entry points—representing stages like ideation, planning, and execution—that developers must navigate to bring projects to fruition. Vincent emphasized maintaining momentum by addressing challenges at each stage, ensuring projects don’t stall in the “world of ideas.” This metaphor, drawn from his book, resonated with attendees seeking to complete personal or professional projects.

Sharing Knowledge Through Storytelling

Vincent concluded by highlighting the power of storytelling in knowledge transfer. His book, available in both French and English on platforms like Amazon, uses narratives to teach design patterns, reflecting his belief that stories engage and educate effectively. By sharing his journey of writing and publishing, Vincent inspired developers to communicate complex ideas simply, fostering collaboration and learning within the PHP community. His talk underscored the value of creative pedagogy in technical education.

Links:

PostHeaderIcon [PHPForumParis2021] Saving the Planet by Doing Less – Hélène Maitre-Marchois

Hélène Maitre-Marchois, a Scrum Master and co-founder of Fairness, delivered a thought-provoking presentation at Forum PHP 2021, urging developers to embrace digital sobriety to reduce the environmental impact of technology. Drawing on her work at Fairness, a cooperative focused on responsible digital solutions, Hélène challenged the audience to rethink feature development and prioritize sustainability. Her talk, blending ecological awareness with practical strategies, inspired developers to make impactful choices. This post explores four key themes: the environmental cost of digital technology, questioning feature necessity, optimizing user experience, and fostering sustainable practices.

The Environmental Cost of Digital Technology

Hélène Maitre-Marchois opened by highlighting the significant environmental footprint of digital technology, noting that it accounts for 3–4% of global greenhouse gas emissions, a figure growing by 8% annually. She emphasized that the internet is not intangible—data centers, networks, and user devices consume vast resources. Hélène referenced studies from GreenIT and The Shift Project, underscoring that user devices, with low recycling rates, contribute heavily to this impact. By framing coding as an energy-intensive activity, she urged developers to consider the ecological consequences of their work, from CPU usage to disk operations.

Questioning Feature Necessity

A core message of Hélène’s talk was the importance of challenging the need for every feature. She advocated for a “why” mindset, questioning whether functionalities truly serve users or merely satisfy client assumptions. Hélène shared examples where client-driven features, like flashy designs, were less valuable than anticipated when tested with users. By prioritizing minimal, purposeful development, developers can reduce resource consumption, aligning with the principles of eco-design that Fairness champions, ensuring applications are both functional and environmentally responsible.

Optimizing User Experience

Hélène stressed that sustainable design enhances user experience without sacrificing aesthetics. She suggested practical measures, such as using dark backgrounds to reduce screen energy consumption, as black pixels require less power than white ones on many displays. By optimizing user journeys and focusing on essential information, developers can create efficient, user-friendly applications. Hélène’s approach, rooted in her Scrum Master experience, emphasizes collaboration with designers and stakeholders to balance usability and sustainability, ensuring applications meet real user needs.

Fostering Sustainable Practices

Concluding her presentation, Hélène encouraged developers to adopt sustainable coding practices, such as optimizing database queries and choosing energy-efficient data formats. She highlighted the role of ethical designers and community initiatives like La Fresque du Numérique in promoting digital sobriety. By integrating these practices, developers can contribute to a cleaner internet, aligning with Fairness’ mission to build a responsible digital ecosystem. Hélène’s call to action inspired attendees to rethink their workflows and prioritize ecological responsibility in their projects.

Links:

PostHeaderIcon [PHPForumParis2021] Fiber: The Gateway to Asynchronous PHP – Benoit Viguier

Benoit Viguier, a developer at Bedrock, enthralled the Forum PHP 2021 audience with an exploration of PHP 8.1’s Fiber feature, a groundbreaking step toward asynchronous programming. With a history of discussing async development at AFUP events, Benoit shared early experiments with Fibers, positioning them as a future cornerstone of PHP. His talk blended technical insight with forward-thinking optimism, urging developers to embrace this new paradigm. This post covers three themes: understanding Fibers, practical applications, and the need for standards.

Understanding Fibers

Benoit Viguier introduced Fibers as a low-level feature in PHP 8.1, enabling lightweight, cooperative concurrency. Unlike traditional threading, Fibers allow developers to pause and resume execution without blocking the main thread, ideal for I/O-heavy tasks. Drawing on his work at Bedrock, Benoit explained how Fibers extend PHP’s async capabilities, building on libraries like Amphp and ReactPHP. His clear explanation demystified this cutting-edge feature for the audience.

Practical Applications

Delving into practical use cases, Benoit showcased how Fibers enhance performance in applications like Bedrock’s streaming platforms, such as 6play and Salto. By enabling non-blocking HTTP requests and database queries, Fibers reduce latency and improve user experience. Benoit shared early experiments, noting that while Fibers are not yet production-ready, their potential to streamline async workflows is immense, particularly for high-traffic systems requiring real-time responsiveness.

The Need for Standards

Benoit concluded by advocating for a standardized async ecosystem in PHP. He highlighted recent collaborations between Amphp and ReactPHP teams to propose a PSR standard for Fibers, fostering interoperability. By making libraries “Fiber-ready,” developers can create reusable, non-blocking APIs. Benoit’s vision for a unified async framework, inspired by his work at Bedrock, positions Fibers as a potential “killer feature” for PHP, encouraging community contributions to shape its future.

Links:

PostHeaderIcon [PHPForumParis2021] Trust Your Team’s Developers – Sofia Lescano

Sofia Lescano, a developer at Bedrock, delivered an inspiring talk at Forum PHP 2021, advocating for trust in development teams to drive innovation beyond mere feature delivery. With a background in embedded systems and mobile applications, Sofia emphasized the value of empowering developers to address technical debt and propose creative solutions. Her presentation, enriched by her commitment to diversity, resonated with the audience. This post explores four themes: empowering developers, tackling technical debt, fostering consensus, and promoting diversity.

Empowering Developers

Sofia Lescano began by highlighting the importance of trusting developers to take ownership of their work. At Bedrock, she encourages teams to propose improvements that enhance application quality. By giving developers autonomy, companies can unlock innovative solutions that align with technical and business goals. Sofia’s experience underscores how trust fosters a culture of accountability, enabling teams to deliver more than just functional requirements.

Tackling Technical Debt

A key focus of Sofia’s talk was addressing technical debt through continuous improvement. She shared examples from Bedrock, where developers proactively refactor code to maintain system health. By prioritizing small, incremental changes, teams can prevent debt from accumulating, ensuring long-term maintainability. Sofia’s approach emphasizes collaboration between developers and stakeholders to balance feature development with system sustainability, creating robust applications.

Fostering Consensus

Responding to an audience question about handling disagreements, Sofia explained Bedrock’s consensus-driven decision-making process. While the majority’s view often guides technical choices, she noted that transverse perspectives, such as those from engineering leads, help align decisions with broader company goals. This collaborative approach ensures that teams grow together, making informed choices that reflect collective expertise while respecting individual input.

Promoting Diversity

Sofia passionately advocated for diversity, noting the all-female speaker lineup during her session as a step toward inclusivity. She emphasized the role of visible role models in attracting more women to tech, drawing from her own experience as a speaker. By fostering an inclusive environment, Sofia believes teams can leverage diverse perspectives to drive innovation, encouraging companies like Bedrock to support underrepresented groups through mentorship and opportunity.

Links: