Skip to main content

My view on Pair Programming

· 4 min read
Pere Pages
Software Engineer

pair programming

Pair programming is a collaborative strategy that has gained traction in the software development world. It involves two developers working together on a single task, with one taking the lead and the other providing support. This approach is not just about sharing the workload; it's about leveraging the collective expertise to drive efficiency and quality.

My Perspective

In this article, I'll share my perspective on pair programming, exploring the key stages and strategies that underpin this collaborative approach.

  1. Task Allocation and Leadership
  2. Acceptance Criteria
  3. Exploration through Proof of Concepts (PoCs)
  4. Convergence and Decision-making
  5. Refactoring and Continuous Delivery
  6. Repeat

React.FC type

· 2 min read
Pere Pages
Software Engineer
functional component type

The usage of React.FC or React.FunctionComponent has been a subject of debate within the React community. Both approaches—using it or not—have their pros and cons.

Do not use React.FC

IMHO, do not use React.FC or React.FunctionComponent in your codebase, only if you know you are using children props.

Architecture Decision Records (ADRs)

· 4 min read
Pere Pages
Software Engineer

ADR

In the context of software development, "ADR" stands for "Architectural Decision Record." An ADR document is a way to capture and document important architectural decisions made during the development process of a software project.

An architectural decision refers to a significant choice related to the software's architecture, design, or implementation. This could include decisions about the overall system structure, the selection of technologies, the integration of different components, or the handling of specific design challenges.

SSR: Server Side Rendering

· 6 min read
Pere Pages
Software Engineer
Server Side Rendering
TL;DR

SSR stands for Server-Side Rendering. It's a technique used in web development where the content of a web page is generated on the server instead of in the user's browser.

SSR stands for Server-Side Rendering. It's a technique used in web development where the content of a web page is generated on the server instead of in the user's browser. This differs from client-side rendering (CSR), where JavaScript runs in the browser to produce the page's content dynamically.

The Three Pillars of Software Development

· 4 min read
Pere Pages
Software Engineer
Three pillars of knowledge
TL;DR

By integrating technical prowess with a deep understanding of business contexts and infrastructural environments, this approach fosters a holistic understanding that is invaluable in a professional setting.

Software development is a field marked by its complexities and interconnections, extending far beyond mere coding skills. This framework not only aids in categorizing the essential elements of software development but also facilitates their management and optimization. It serves as a conceptual structure that brings clarity and organization to the multifaceted nature of software development. By integrating technical prowess with a deep understanding of business contexts and infrastructural environments, this approach fosters a holistic understanding that is invaluable in a professional setting. This comprehensive view encapsulates the various dimensions crucial for effective software development.

Grokking Simplicity: Taming complex software with functional thinking by Eric Normand

· 11 min read
Pere Pages
Software Engineer

"Grokking Simplicity: Taming Complex Software with Functional Thinking" by Eric Normand is a book that introduces the principles of functional programming in a practical and approachable way. It focuses on simplifying complex software development tasks by applying functional programming concepts.

The book teaches how to write simpler, cleaner, and more reliable code by avoiding shared state, mutable data, and side-effects. It's particularly useful for developers who are accustomed to object-oriented programming and want to explore functional paradigms.

grokking simplicity book cover
Published 2021

React Image Placeholder

· 7 min read
Pere Pages
Software Engineer
Pear being loaded

The rationale behind creating a component like the ImagePlaceholder in React, especially in a web application that handles a significant amount of images, centers on improving user experience and performance.