TechBlog

Join me as I explore the fascinating world of technology. This TechBlog is where I share my knowledge and insights on topics like Linux, frontend and backend development, and more. Whether you’re a beginner or an experienced tech enthusiast, there’s something here for you.

Things I Think About

Core Stack

Engineering & Leadership

Technical Depth

TechBlog

Angular Signals and Control Theory: A New Reactivity Model

Published: December 24, 2025 Reading Time: 4 min

Angular Signals have changed the way we think about reactivity in the frontend. But if you step outside the world of JavaScript, the concept of a “Signal” has a much older, much deeper history in Control Theory and Electrical Engineering. When we talk about “glitch-free” execution in Angular, we are actually talking about maintaining the integrity of a signal graph. I’ll explore the connection between the physics of signals and the architecture of modern web applications. ...

Continue Reading

Jupyter, ChatGPT, Copilot (Part 3): Real-World Code Examples

Published: December 23, 2025 Reading Time: 4 min

This is Part 3 of a series on modern development workflows. Part 1: The Strategic Value of Thinking in Notebooks and Part 2: The Technical Guide to Jupyter Setup set the stage. Now, let’s look at actual code. In the previous parts, we discussed why Jupyter is a “thinking environment.” In this final part, we’ll walk through four concrete scenarios where a notebook outperforms a traditional IDE for a senior engineer. 1. API Archaeology: Mapping the Unknown When you’re dealing with a complex API, you don’t want to build a full client just to see what the data looks like. ...

Continue Reading

Jupyter, ChatGPT, Copilot (Part 2): The Technical Guide to Jupyter Setup

Published: December 23, 2025 Reading Time: 4 min

This is Part 2 of a three-part series. In Part 1: The Strategic Value of Thinking in Notebooks, we discussed why and when to use Jupyter. Here, we dive into the technical implementation. Part 3: Real-World Code Examples covers practical use cases. The Modern Jupyter Stack For a software engineer, the “standard” way of installing Jupyter (global pip install) is often the wrong way. It leads to dependency hell and “it works on my machine” syndrome. ...

Continue Reading

Jupyter, ChatGPT, Copilot (Part 1): The Strategic Value of Thinking in Notebooks

Published: December 23, 2025 Reading Time: 5 min

This is Part 1 of a three-part series on modern development workflows. In this part, we explore the conceptual and strategic role of Project Jupyter. Part 2: The Technical Guide to Jupyter Setup covers installation and environment management, and Part 3: Real-World Code Examples shows it in action. If you come from a traditional software engineering background (frontend, backend, systems), chances are you’ve seen Project Jupyter everywhere, from notebooks and extensions to cloud platforms, and thought: ...

Continue Reading

Unlocking the Power of Angular's `@ViewChild` and `@ContentChild`

Published: September 8, 2024 Reading Time: 6 min

Angular’s @ViewChild and @ContentChild decorators provide a powerful way to interact with child components, DOM elements, and projected content within a component’s template. While they are often misunderstood or used interchangeably, each has its own specific purpose and use cases. In this comprehensive guide, we’ll dive deep into both decorators, understanding their differences, use cases, and best practices. Additionally, we’ll explore advanced techniques for leveraging them in various scenarios and edge cases, complete with sample code for hands-on understanding. ...

Continue Reading

The Hidden World of Esoteric Programming Languages

Published: August 13, 2024 Reading Time: 10 min

Programming languages are the backbone of the digital world, enabling us to create software that powers everything from our smartphones to space exploration. While most developers are familiar with popular languages like Python, JavaScript, and C++, there’s a fascinating and lesser-known realm of programming languages that exist outside the mainstream. These are known as esoteric programming languages, or “esolangs” for short. Esoteric programming languages are not designed for practical use or efficiency. Instead, they are created as a form of artistic expression, puzzles, or to explore unusual concepts in computer science. Some esolangs challenge the very idea of what a programming language can be, while others are designed to be intentionally difficult to use. In this post, we’ll delve into the hidden world of esoteric programming languages, exploring their history, purpose, and some of the most intriguing examples. ...

Continue Reading

Migrating from REST to GraphQL: A Step-by-Step Guide for Express.js and Angular

Published: August 7, 2024 Reading Time: 6 min

In today’s rapidly evolving web development landscape, GraphQL has emerged as a powerful alternative to traditional REST APIs. This blog post will guide you through the process of migrating your Express.js backend and Angular frontend from REST to GraphQL, unlocking the benefits of a more flexible and efficient API architecture. 1. Introduction REST (Representational State Transfer) has been the go-to architectural style for building web APIs for many years. However, GraphQL, developed by Facebook, offers several advantages: ...

Continue Reading

Code Archaeology: Exploring and modernizing legacy systems

Published: July 24, 2024 Reading Time: 10 min

In the fast-paced world of software development, we often find ourselves standing on the shoulders of giants – or more accurately, on top of layers upon layers of legacy code. These aging systems, some decades old, continue to power critical infrastructure in industries ranging from finance to healthcare. While they may lack the glamour of cutting-edge technologies, these legacy systems are the bedrock of many organizations, silently processing millions of transactions every day. ...

Continue Reading

Mentorship in Tech: How to Be an Effective Mentor and Mentee

Published: July 14, 2024 Reading Time: 13 min

Mentorship is a cornerstone of professional growth and development, particularly in the fast-paced and ever-evolving tech industry. Whether you’re a seasoned professional or just starting your career, engaging in a mentor-mentee relationship can provide invaluable insights, support, and opportunities for both personal and professional advancement. This blog post explores the benefits of mentorship in tech and offers practical guidelines for both mentors and mentees to maximize their relationships. The Importance of Mentorship in Tech Accelerated Learning and Skill Development One of the most significant benefits of mentorship is the accelerated learning curve it provides. Mentors can share their knowledge, experience, and insights, helping mentees navigate complex technical concepts and industry trends more quickly than they might on their own. This hands-on guidance can be particularly valuable in the tech industry, where new technologies and methodologies emerge rapidly. ...

Continue Reading

Creating Dynamic Music Visualizations with Angular and the Web Audio API

Published: July 13, 2024 Reading Time: 11 min

Music visualization has always been a fascinating way to enhance the auditory experience, offering a visual representation of sound that can be both mesmerizing and informative. With the power of modern web technologies like Angular and the Web Audio API, creating dynamic music visualizations is more accessible than ever. This blog post will guide you through the process of building an engaging music visualization application using Angular and the Web Audio API. ...

Continue Reading