Balancing Git Commit Quantity and Quality

person holding black magnifying glass

Commit Quantity vs Quality Balancing commit quantity and quality is a common challenge for software engineers. While some emphasize frequent, incremental commits, others advocate for single, clean commits that ensure a pristine history. In this post, I’ll share my personal approach to navigating this balance, lessons from past experiences, and tips for fostering a team

Full Height Display in Storybook Preview

books on white wooden shelf

When working with Storybook, I wanted my component previews to take up the entire viewport height. But by default, the preview area doesn’t always stretch to fit the full screen. After trying a few different approaches, I found the simplest and most reliable way to achieve this. Here’s how to make sure your Storybook preview

Managing Event Hub Data: Effective Strategies for Clearing Messages

a black and white photo of a building

Azure Event Hubs are designed as an immutable, append-only store for events. Once events are ingested, they remain available until the retention period expires. This approach is ideal for high-throughput and reliable streaming, but it also means that individual message deletion is not supported. Instead, the available options focus on managing data lifecycle through retention

Managing Mutation Status with React Query

view of green and blue earth artwork

As I work with React Query, I often find myself needing to manage the status of mutations to ensure a seamless user experience. This involves disabling fields and buttons while data is being updated or created, preventing users from triggering multiple requests simultaneously. In this post, I’ll share how I handle mutation status using React

Real-Time vs. Batch Processing: When to Use Apache Flink and Apache Spark

sparkling sparkle

Apache Spark and Apache Flink are two of the most popular open-source frameworks for large-scale data processing. While both are designed to handle big data workloads, they have distinct architectures, processing models, and use cases. Here’s a comprehensive comparison to help you understand their differences: 1. Processing Paradigm 2. Latency and Throughput 3. Fault Tolerance