Recent Posts
Archives

Posts Tagged ‘Bedrock’

PostHeaderIcon [PHPForumParis2022] BFF: Our Best Friend Forever for Frontend Applications? – Valentin Claras

Valentin Claras, a seasoned team leader at Bedrock, delivered a compelling session at PHP Forum Paris 2022, exploring the Backend for Frontend (BFF) pattern as a solution for managing complex frontend applications. With over a decade of development experience, Valentin shared insights from his work at Bedrock, formerly MC6, illustrating how BFF streamlines frontend-backend interactions. His presentation, dense with practical examples, highlighted the pattern’s potential to enhance performance and maintainability in PHP-driven projects.

Understanding the BFF Pattern

Valentin introduced the BFF pattern as a specialized backend layer tailored to specific frontend needs, acting as a “glue” between diverse APIs and client applications. Drawing from Bedrock’s streaming platform, he explained how BFF aggregates data from multiple backend services, simplifying frontend development. By reducing the complexity of direct API calls, BFF enables faster iteration and better user experiences, particularly for applications with varied frontend requirements like web and mobile interfaces.

Optimizing Performance with Asynchronous Processing

Addressing performance concerns, Valentin detailed Bedrock’s use of the Tornado engine to handle asynchronous API calls within the BFF layer. He explained how parallelizing 10 to 20 API requests ensures reasonable response times, even under heavy loads. Valentin referenced prior talks by colleague Benoit Viguier, emphasizing the importance of non-sequential processing to maintain efficiency. This approach, he argued, mitigates the risk of performance bottlenecks, making BFF a viable solution for high-traffic applications.

Maintaining Clear Boundaries

Valentin emphasized the importance of keeping BFF’s responsibilities minimal to avoid it becoming a monolithic service. At Bedrock, the BFF focuses solely on data aggregation and transformation, leaving business logic to dedicated services. This clear separation ensures maintainability and scalability, preventing the BFF from absorbing unrelated responsibilities. Valentin’s insights, grounded in real-world challenges, offered a blueprint for developers aiming to implement BFF effectively in their PHP projects.

Fostering Collaborative Development

Concluding, Valentin highlighted BFF’s role in fostering collaboration between frontend and backend teams. By providing a unified interface, BFF reduces miscommunication and aligns development efforts. He encouraged developers to adopt BFF incrementally, leveraging its flexibility to enhance project workflows. Valentin’s practical approach inspired attendees to explore BFF as a tool for building robust, frontend-friendly PHP applications, drawing from Bedrock’s successful implementation.

Links:

PostHeaderIcon [PHPForumParis2022] Code Review: We Didn’t Come to Suffer! – Anne-Laure de Boissieu

Anne-Laure de Boissieu, a backend developer at Bedrock, delivered a heartfelt presentation at PHP Forum Paris 2022 on transforming code reviews into positive, constructive experiences. As a member of the Duchess France network and an organizer of the Mixit conference, Anne-Laure shared personal anecdotes and practical strategies to make code reviews less daunting and more collaborative, drawing from her experience at Bedrock and her passion for community engagement.

Reframing Code Reviews as Collaboration

Anne-Laure began by addressing the emotional challenges of code reviews, recounting instances where feedback felt personal or discouraging. She argued that code reviews should be a collaborative process, not a source of suffering. By adopting a constructive mindset, developers can focus on improving code quality rather than defending their work. Anne-Laure emphasized the importance of clear communication, citing her own experiences at Bedrock, where supportive feedback helped her grow as a developer.

Best Practices for Effective Reviews

Drawing from Bedrock’s workflow, Anne-Laure shared actionable best practices for code reviews. She advocated for assigning a “buddy” to new developers for initial reviews, conducting verbal feedback sessions to reduce misunderstandings, and addressing complex feedback in person. Referencing Amélie’s talk on onboarding, she highlighted small tasks, like adding a name to a list, to familiarize newcomers with workflows. These practices, Anne-Laure argued, create a supportive environment that fosters learning and aligns with team standards.

Building a Positive Review Culture

Anne-Laure emphasized that human interactions are key to successful code reviews. She cautioned against piling up written comments, which can escalate tensions, and encouraged direct discussions to resolve issues. By sharing her journey from feeling hurt by feedback to valuing constructive critiques, Anne-Laure inspired developers to approach reviews with empathy and openness. Her insights underscored the role of team dynamics in creating a culture where reviews enhance collaboration and professional growth.

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: