Playful Programming's Atom Feed
https://playfulprogramming.com
Learning programming from magically majestic words. A place to learn about all sorts of programming topics from entry-level concepts to advanced abstractions
フィード

Merging the "This Is" Community into "Playful Programming"
Playful Programming's Atom Feed
This is Learning and Playful Programming are merging to create a stronger open-source education community with 750+ articles and expanded resources.
7日前

Onboarding in the Ever-Changing World of AI
Playful Programming's Atom Feed
I’ve recently joined a new company, and I wanted to share my experience from my first week, what onboarding used to look like, and how AI is changing the game.
8日前

Tradeoffs in Engineering Identity
Playful Programming's Atom Feed
Finding your engineering identity is a journey of balancing tradeoffs. Let's explore the key tradeoffs that shape your path.
14日前

Why I’m Building My Own Home Server
Playful Programming's Atom Feed
Exploring the motivation behind why I'm building a home server.
18日前

AI Context as Configuration, Not Prompts
Playful Programming's Atom Feed
Stop repeating yourself in every prompt. Use files like agents.md to define project conventions, rules for universal constraints, and skills for optional capabilities. Prompts stay focused on the task, context lives where it belongs, and behaviour becomes predictable.
1ヶ月前

Adapting Library Logic for React Compiler
Playful Programming's Atom Feed
A deep dive into debugging React Compiler issues involving object mutation and referential stability.
1ヶ月前

How I read technical books and documentation
Playful Programming's Atom Feed
Don't skip out on a book just because it's long!
1ヶ月前

Making Mistakes in Public Isn’t a Failure
Playful Programming's Atom Feed
Working in public means being visible while learning. That isn’t a weakness—it’s how real software gets built.
1ヶ月前

Rust's `'static` doesn't imply memory leaks
Playful Programming's Atom Feed
Leaking memory is one way to get a value living for `'static`, but it's not the only way
1ヶ月前

Ads as a Performance Budget Problem
Playful Programming's Atom Feed
Exploring how ads impact website performance and strategies to manage their effects.
1ヶ月前

Where React performance issues start
Playful Programming's Atom Feed
Let's dive into the React fundamentals. This will help us build up a solid mental model that will allow us to understand what happens when react updates the UI.
1ヶ月前

Take control of your job with GitLens Launchpad
Playful Programming's Atom Feed
As a developer, you have to take control of your projects every day. Whether it is a company...
2ヶ月前

Fundamentals of Rich Text Editors
Playful Programming's Atom Feed
The mental model I wish I had when I started working with WYSIWYG editors: document models, transactions, and custom nodes explained in 10 minutes.
2ヶ月前

Building for the World: A Developer's Guide to Internationalization and Localization
Playful Programming's Atom Feed
Practical introduction to internationalization (i18n) and localization (l10n) - from a developer's point of view.
2ヶ月前

Psychosis, Hyper-Logic, and Engineering
Playful Programming's Atom Feed
A personal story about trauma, mental health, and how technology helped me survive long-term.
2ヶ月前

Terraform: From Zero to Hero
Playful Programming's Atom Feed
A guide to learning Terraform from scratch, including key concepts, setup, and workflow.
2ヶ月前

How I created a Cozy Workspace in VS Code
Playful Programming's Atom Feed
I love VS Code. It is fast, flexible, and works for almost any stack. But the default layout is not...
2ヶ月前

Confronting Career Inequalities
Playful Programming's Atom Feed
Reflecting on the disparities in pay and respect in the tech industry.
2ヶ月前

The Mood Mirror App - My Antigravity first experience
Playful Programming's Atom Feed
Just a week ago, Google launched Antigravity, and why not give it a try and share my experience? And...
2ヶ月前

Confronting Survivorship Bias
Playful Programming's Atom Feed
A cautionary tale about successes in my career and survivorship bias.
3ヶ月前

Negotiating for a VP Role
Playful Programming's Atom Feed
The story of how I negotiated my way into a VP role and the lessons learned along the way.
3ヶ月前

Automate UI Bug Fixing with Chrome MCP Server and Copilot
Playful Programming's Atom Feed
I recently had a look at the Chrome MCP server and it looks really cool. So, let me show you a quick...
3ヶ月前

Why I Built TaskDeck and How It Improves Your VS Code Workflow
Playful Programming's Atom Feed
VS Code tasks are powerful, but most developers barely use them. The problem is not the feature...
3ヶ月前

How GitHub Copilot Uses MCP Tools Behind the Scenes
Playful Programming's Atom Feed
Before we dive into the details, here is the video version of this article if you prefer to watch it...
3ヶ月前

Fractional Leadership in Practice
Playful Programming's Atom Feed
How taking on a short-term leadership contract can pave the way to long-term opportunities.
3ヶ月前

On-Device AI with the Google Chrome Prompt API
Playful Programming's Atom Feed
Unless you’ve been living under a rock, it’s hard to miss the rise of Generative AI. At the centre of...
3ヶ月前

Why I Use JetBrains Rider for .NET Development
Playful Programming's Atom Feed
Finding the ideal IDE for .NET work is rarely a straightforward journey. As .NET developers, I invest...
3ヶ月前

The Power of Showing Up
Playful Programming's Atom Feed
How being active in your local developer community can open unexpected career doors.
3ヶ月前

Prepping Your Ecommerce Site for the Agentic Apocalypse
Playful Programming's Atom Feed
A guide on how to prepare your e-commerce site for AI-driven search and shopping, covering on-site content, structured data, and off-site brand presence.
3ヶ月前

How I Chose The Tech Stack For Job Helper
Playful Programming's Atom Feed
Choosing a tech stack isn’t just about picking trendy tools, it’s about aligning architecture with real-world needs.
4ヶ月前

Codemotion Milan 2025: Why Large Tech Conferences Matter
Playful Programming's Atom Feed
I have wanted to write about tech conferences for a while, and last week I was at Codemotion in...
4ヶ月前

Navigating the Risks in Leadership
Playful Programming's Atom Feed
Understanding the challenges and rewards of stepping into leadership roles.
4ヶ月前

ReactJS Day 2025: TanStack Start & Real World Experiences
Playful Programming's Atom Feed
When I'm writing this I'm still on the train back from ReactJSDay, the largest conference on ReactJS...
4ヶ月前

Essential Angular SSR Config To Deploy On Vercel
Playful Programming's Atom Feed
The world of web development is constantly evolving, with a strong emphasis on performance, user...
4ヶ月前

Building My New Website with Astro, GitHub Copilot, and AWS Amplify
Playful Programming's Atom Feed
For me, in general, the best way to learn something new is to start from zero and hit...
4ヶ月前

Seamless Synergy: Hosting Your Angular App on Firebase
Playful Programming's Atom Feed
In the world of web development, building dynamic and engaging user interfaces often leads developers...
4ヶ月前

Improve Your Git Commit Messages with GitLens Tips
Playful Programming's Atom Feed
In the AI era, we can do many different things with LLM: generate code, images, videos or ask...
4ヶ月前

🌱 Introducing Green Software Indicator: a Browser Extension for a greener web
Playful Programming's Atom Feed
As developers, we obsess over performance, accessibility, and design — but how often do we think...
5ヶ月前

Deploying Your Angular App to Azure
Playful Programming's Atom Feed
Every business need for a reliable and scalable cloud infrastructure, this is precisely where Azure...
5ヶ月前

Let’s Be Specific: CSS Specificity Explained
Playful Programming's Atom Feed
Struggling with stubborn CSS rules? Learn how specificity works so you can write styles that apply the way you want, every time
5ヶ月前

Unleashing Creativity: Gemini Image Generation with Angular
Playful Programming's Atom Feed
In the ever-evolving landscape of web development, captivating visuals are no longer a luxury but a...
5ヶ月前

TanStack Router: Go to Previous page after Sign In
Playful Programming's Atom Feed
Welcome back to the TanStack Router series, today going double digits with chapter 10! Let's fix a...
5ヶ月前

Quick SEO Guidelines for Your Next.js App
Playful Programming's Atom Feed
A practical guide to optimizing SEO in your Next.js application.
5ヶ月前

4 Free Methods to use LLM APIs in Development
Playful Programming's Atom Feed
You might be in the situation I was the other day: I wanted to develop a small AI feature for...
5ヶ月前

✨ Advanced Tips and Tricks for GitHub Gists (Part 1: Unlocking the Power of Gists)
Playful Programming's Atom Feed
If you’ve been coding for a while, chances are you’ve stumbled across a GitHub Gist. Maybe you copied...
5ヶ月前

🚀 GitHub Copilot: A Persona-Based Approach to Real-World Development
Playful Programming's Atom Feed
If you’ve ever used GitHub Copilot for more than a quick boilerplate snippet, you’ve probably felt...
6ヶ月前

TanStack Start: light, dark, and system theme without flickers
Playful Programming's Atom Feed
Having multiple themes is a common request on (web) applications nowadays, at least having light,...
6ヶ月前

It takes 26 yottabytes of RAM to typecheck a union of Safe Integers
Playful Programming's Atom Feed
Sometimes `number` is good enough
6ヶ月前

Sharing Code Across Python Microservices with Poetry, Pip, and Docker
Playful Programming's Atom Feed
When working on multiple Python projects within a microservices architectured solution, it makes sense to reuse code.
6ヶ月前

Bring Your Angular App to Life with Anime.js
Playful Programming's Atom Feed
With recent updates to the Angular framework, it is now recommended to move away from the...
6ヶ月前

Writing Emails: Tips & Tricks (Especially for Developers)
Playful Programming's Atom Feed
You can write clean, efficient code. But can you write a clean, efficient email? As developers, we...
6ヶ月前

What would Monads in JavaScript look like?
Playful Programming's Atom Feed
Some languages support monads with first-class syntax support. But what does that even mean? How would we support monads, in, say, JavaScript?
6ヶ月前

How I Organize My Microsoft Teams Chats (Without Losing My Mind)
Playful Programming's Atom Feed
If you’re anything like me, your Microsoft Teams chat list can go from zen garden to dumpster fire in...
6ヶ月前

Monads explained in JavaScript
Playful Programming's Atom Feed
You may have heard of a "monad" in programming spheres, especially in regards to functional programming terminology. So what on earth even IS a monad?
6ヶ月前

Azure Foundry: Creating a Pay-As-You-Go LLM Service
Playful Programming's Atom Feed
Large Language Models (LLMs) offer incredible potential for businesses, but managing the costs...
6ヶ月前

Firebase Data Connect Introduces Enum Support for Enhanced Data Modeling
Playful Programming's Atom Feed
Enums allow you to quickly define a list of static, predefined values with a specific order, which...
7ヶ月前

Let's Write React Hooks From Scratch
Playful Programming's Atom Feed
Ever wondered how React's hooks function under-the-hood? Let's write our own implementation and find out together.
7ヶ月前

Secure Airtable Integration: Mastering OAuth 2.0 PKCE with Node.js 22 and Angular 20
Playful Programming's Atom Feed
Integrating third-party services into B2B and SaaS applications demands robust security. When...
7ヶ月前

Full-Text Search with Firebase Data Connect
Playful Programming's Atom Feed
In the previous article, you saw how to create a project from scratch with Firebase Data...
7ヶ月前

Power Your Innovation: LLM Model Selection within Azure's Ecosystem
Playful Programming's Atom Feed
The rise of Large Language Models (LLMs) has opened unprecedented possibilities for businesses, from...
7ヶ月前

You should be using unitless values for line-height
Playful Programming's Atom Feed
I've seen every value in the book used to set line-height values in CSS. This is why you should just use unitless.
7ヶ月前

Supercharge Your Firebase Projects: The Power of MCP Integration
Playful Programming's Atom Feed
Firebase Studio is rapidly evolving into a robust, agentic development environment that leverages...
7ヶ月前

I vibe coded an online visitors counter for my blog
Playful Programming's Atom Feed
You know that old-style "X users online" counter on a website? I've recently seen it on roe.dev's...
7ヶ月前

Firebase hybrid on-device with Angular
Playful Programming's Atom Feed
Some of you asked me to create an example of integration between Angular and one of Firebase's latest...
7ヶ月前

The History of React Through Code
Playful Programming's Atom Feed
Learn React's history using pragmatic code samples and deep dives. This journey reveals the consistent design in React's APIs stemming from the very beginning.
7ヶ月前

Create Raw Loader Plugin for NX Angular Application Executor
Playful Programming's Atom Feed
In this article I am going to share the plugin I created for Angular Material Blocks to preview code...
7ヶ月前

Firebase: Unleashing Hybrid On-Device Inference for Web Applications
Playful Programming's Atom Feed
The realm of Artificial Intelligence (AI) is rapidly evolving, bringing with it exciting new...
7ヶ月前

Next.js Promise Racing
Playful Programming's Atom Feed
Learn how you can use Next.js' and React's primitives to achieve a neat party trick: Conditionally show a loading spinner based on a given wait time.
8ヶ月前

Running External Commands in C# and Wait Until They Finish
Playful Programming's Atom Feed
Ever needed your C# application to run a PowerShell script, wait until it's done, and print the...
8ヶ月前

Firebase Data Connect: Rapid Development and Granular Control with GraphQL
Playful Programming's Atom Feed
Firebase Data Connect is simplifying the interaction between your applications and your databases. It...
8ヶ月前

Do you really need the Cloud to work with AI?
Playful Programming's Atom Feed
We are in the AI era. New models emerge daily, and many applications have already integrated AI into...
8ヶ月前

How we'll measure performance of our DevRel activities
Playful Programming's Atom Feed
▶️ This article is extracted from a video transcript, slightly tweaked for better readability. Watch...
8ヶ月前

TanStack Router: How to protect routes with an authentication guard
Playful Programming's Atom Feed
Some routes in your application require authentication or other conditions to be met before users can...
8ヶ月前

Firebase Data Connect: forget about boring repetitive tasks
Playful Programming's Atom Feed
For years, the Firebase platform has been synonymous with rapid, scalable application development,...
8ヶ月前

Firebase Data Connect: forget about boring repetitive tasks
Playful Programming's Atom Feed
For years, the Firebase platform has been synonymous with rapid, scalable application development,...
8ヶ月前

Bundling
Playful Programming's Atom Feed
Bundling is the process of taking your source code and transforming it into a format that can be run in the browser. Let's learn more about it and how to apply it.
8ヶ月前

Linters, Formatters, and Type-Checkers
Playful Programming's Atom Feed
Learn about the tools that help you write better code, including ESLint, Prettier, and TypeScript.
8ヶ月前

Styling
Playful Programming's Atom Feed
Styling your web application comes in many flavors. Let's explore the different approaches you can take in your projects.
8ヶ月前

I'm starting a Developer Relations program, somehow 🤷
Playful Programming's Atom Feed
▶️ Video version on YouTube: https://youtu.be/ERWzk5iOAiU Hey everybody, look at that! I finally had...
8ヶ月前

Structuring GitHub Enterprise: Best Practices from the Org Level Down
Playful Programming's Atom Feed
Ever joined a GitHub Enterprise and thought, “Who organized this… chaos?” I created this post...
8ヶ月前

Genkit Tool Calling: Give AI Models (LLMs) the Tools to Get Things Done
Playful Programming's Atom Feed
AI Models are taking over the world, and we are all looking for ways to use them to solve different...
8ヶ月前

How to Protect Your API with OpenFGA: From ReBAC Concepts to Practical Usage
Playful Programming's Atom Feed
Learn how to implement complex authorization patterns using OpenFGA and Relation-Based Access Control (ReBAC) through a practical example of a cat sitting app.
8ヶ月前

Tools I Use Every Day (June 2025 Edition)
Playful Programming's Atom Feed
As a developer and productivity geek, I’m always on the lookout for tools that actually make a...
8ヶ月前

Firebase ML: AI-Powered Apps Made Easy
Playful Programming's Atom Feed
How many times have you needed to translate your application, but didn't know where to start? One of...
8ヶ月前

Monitoring Firebase Genkit to Ensuring Performance and Reliability
Playful Programming's Atom Feed
As we increasingly integrate Large Language Models (LLMs) into our applications, understanding and...
8ヶ月前

Tips for Improving API Performance in ASP.NET Core
Playful Programming's Atom Feed
APIs are the backbone of modern applications, but even the cleanest code can drag if performance...
8ヶ月前

Contributing to Open Source is Easier Than You Think: My Journey with Firebase Genkit
Playful Programming's Atom Feed
I work full time as a software engineer and don't do open source to pay the bills, but I recently...
9ヶ月前

Git: Into the Weeds
Playful Programming's Atom Feed
In our second chapter, we expand on the topics we've discussed and talk about the bothersome and tricky portions of Git!
9ヶ月前

How to Configure YubiKey with GitHub
Playful Programming's Atom Feed
If you're anything like me, you’ve probably typed in authenticator codes a hundred times a day, just...
9ヶ月前

Firebase Studio: Your Perfect Full Stack Picky Companion
Playful Programming's Atom Feed
Okay, you've seen it all, built it all, and probably debugged it all (more than once). You recognise...
9ヶ月前

Increase Your Sales by 70% with Firebase Genkit AI
Playful Programming's Atom Feed
Imagine your online store as a giant warehouse. You've got tons of cool stuff, but customers are...
9ヶ月前

A special secret to prevent AI hallucinations with a practical Google genkit-ai example!
Playful Programming's Atom Feed
Generative AI models possess the remarkable ability to generate human-quality text, code, images, and...
9ヶ月前

The Art of Accessibility: Labels
Playful Programming's Atom Feed
Forms and how we label them make up a large part of our apps, let's take a cursory glance at how we can make them more accessible.
9ヶ月前

Level Up Your Testing Game with Jest Spies and Asymmetric Matchers
Playful Programming's Atom Feed
Over my long career as a software engineer, unit testing involving third-party APIS, such as database...
9ヶ月前

Semantic Markup
Playful Programming's Atom Feed
When talking about web accessibility, the story starts and ends with semantic markup. Let's learn what that means and how to leverage it in our apps.
10ヶ月前

The Art of Accessibility: Preface
Playful Programming's Atom Feed
When building a product, your users will come from many walks of life. How do you support them all? Answer: Accessibility. Let's dive in and learn more.
10ヶ月前

The Art of Accessibility: Text
Playful Programming's Atom Feed
Text makes up most of our apps. Lets make sure that our app's text is legible and able to be accessed through assistive technologies like screen readers.
10ヶ月前

Firebase Cloud Functions: Your Gateway to Serverless Backend Development
Playful Programming's Atom Feed
The digital landscape is evolving at an unprecedented pace. Demands for faster, more scalable, and...
10ヶ月前

Angular's proxyConfig: Unlock a senior-level technique used by only 10% of developers
Playful Programming's Atom Feed
In the world of modern web development, Angular has established itself as a leading framework for...
10ヶ月前

From Hello World to Hello Customers: Why Programs Aren’t Products
Playful Programming's Atom Feed
We’ve all been there. You knock out a script in an hour, it runs, it works, and you feel like a...
10ヶ月前

A Decade of SolidJS
Playful Programming's Atom Feed
As of today, it has been 7 years since I open-sourced SolidJS. It wasn't for noble reasons. I wasn't...
10ヶ月前

Firebase Genkit-AI: Level Up Your Skills with AI-Powered Flows
Playful Programming's Atom Feed
The rapid evolution of artificial intelligence is fundamentally transforming how we build and...
10ヶ月前

Git: The Basics
Playful Programming's Atom Feed
In our first chapter, we tackle the most common aspects of git and explain how they work in tandem with one another.
10ヶ月前

Firebase Studio: 6 tips only senior engineers know
Playful Programming's Atom Feed
Firebase, Google's comprehensive platform for building mobile and web applications, has continually...
10ヶ月前

Emulating the Cloud: why you should use Firebase Emulator Suite
Playful Programming's Atom Feed
In the fast-paced world of modern application development, iteration speed and robust testing are...
10ヶ月前

Scale Your Project with Layered React Structure
Playful Programming's Atom Feed
Learn how to scale your React project using Layered React Structure (LRS). Take your app from small-time to enterprise grade by organizing your code better.
10ヶ月前

3 Pillars Only Senior Developers Know About Firebase and Firestore Databases
Playful Programming's Atom Feed
Google offers robust, real-time NoSQL database solutions: the original Realtime Database and the...
10ヶ月前

Exploring Firebase Database Security Rules
Playful Programming's Atom Feed
Firebase Realtime Database offers incredible power and ease-of-use for building collaborative,...
1年前

IIFEs — a JavaScript Idiom of Yore
Playful Programming's Atom Feed
IIFEs were very useful back in the day, but modern JavaScript has made them irrelevant
1年前

Building Realtime Web Apps with Angular and Firebase Database
Playful Programming's Atom Feed
In today's web development world, building dynamic and real-time applications is more important than...
1年前

Git stashing: save and restore your code
Playful Programming's Atom Feed
Have you ever been in the middle of coding when suddenly you needed to switch branches, but your work...
1年前

Building Single Executable Applications with Node.js
Playful Programming's Atom Feed
Discover how to package your Node.js applications into single executable files, reducing deployment complexity and improving security.
1年前

C# to Typescript Cheatsheet
Playful Programming's Atom Feed
As a consultant, sometimes, I have to switch from a project to another. My main (and favorite)...
1年前

What’s in My Bag: The Essentials for a Productive Day at the Office [2025]
Playful Programming's Atom Feed
As a developer and cloud engineer (or Architect, they call me like that), my work isn't confined to a...
1年前

Angular and Firebase Remote Config: Your Secret Weapon for Personalized & Adaptable Apps
Playful Programming's Atom Feed
In today's rapidly evolving digital landscape, adaptability is key to success. Applications need to...
1年前

JavaScript Holes and Tolls (On Performance)
Playful Programming's Atom Feed
Compiler optimizations that you shouldn't worry about but are cool.
1年前

Building Dynamic Push Notifications with Firebase and Node.js
Playful Programming's Atom Feed
In the previous article we saw how Firebase Cloud Messaging (FCM) is a versatile solution for...
1年前

Node.js & Azure Blob: Unleashing Scalable Storage in the Cloud
Playful Programming's Atom Feed
Azure Blob Storage is a cost-effective and scalable cloud storage solution for storing unstructured...
1年前

Why Can't Angular Cast An Element to Another?
Playful Programming's Atom Feed
While I'm a huge fan of Angular at heart, I've often used React at my day jobs. While working with React component libraries - either internal or ...
1年前

Push Notifications in Angular 19 with Firebase Cloud Messaging
Playful Programming's Atom Feed
Push notifications are a powerful way to re-engage users, deliver timely updates, and drive traffic...
1年前

Setup Adobe ColdFusion in Docker
Playful Programming's Atom Feed
Adobe ColdFusion can feel daunting to set up. Luckily for us, there's an easy method of getting up and running using Docker. Let's explore that option!
1年前

Firebase Authentication with Angular 19
Playful Programming's Atom Feed
Firebase Authentication provides a robust and easy-to-implement backend service for user...
1年前

My First Year in Love with TanStack
Playful Programming's Atom Feed
I had no idea how much would have happened in 365 days 🤯 One year ago, on February 20th, 2024, I...
1年前

You don't need importProvidersFrom with Angular Material
Playful Programming's Atom Feed
Cover photo generated with Microsoft Designer. Traditionally, we had to import mixed Angular modules...
1年前

Vue "as" Prop using TypeScript
Playful Programming's Atom Feed
Vue can dynamically change a rendered HTML tag using a special syntax. Let's learn how to use it with TypeScript.
1年前

Firebase: deploy a React application with Firebase Hosting
Playful Programming's Atom Feed
Create the React application Once upon a time you had to struggle with a thousand...
1年前

React "as" Prop Using TypeScript
Playful Programming's Atom Feed
Learn how to type the "as" prop in React to dynamically change the rendered HTML tag.
1年前

Exploring Routes Rendering Modes in Angular
Playful Programming's Atom Feed
Over the last few years, Angular has grown through some significant and important changes. One of...
1年前

Is AI Stealing from You?
Playful Programming's Atom Feed
Artificial intelligence has access to information available on the internet, including people's work.
1年前

Announcing Playful Programming's Non-Profit Status
Playful Programming's Atom Feed
Playful Programming is becoming a formal non-profit! Let's talk about the who, the what, and the why behind the decision.
1年前

Intro to VeeValidate
Playful Programming's Atom Feed
Learn how to simplify form validation in Vue.js with this powerful library, featuring seamless integration and customizable rules.
1年前

Intro to Formik
Playful Programming's Atom Feed
Learn how to streamline form handling in React with this popular library, featuring easy validation, state management, and submission handling.
1年前

Intro to Angular Forms
Playful Programming's Atom Feed
Learn the basics of Angular Forms! Explore different approaches to build dynamic, user-friendly forms with ease.
1年前

How to Enhance the API Response with a Wrapper Class with Additional Information with .NET Minimal API
Playful Programming's Atom Feed
One of the challenges of using API (minimal or not) is how to customize the response format and...
1年前

My Favorite Tech Stack for Startup Success in 2025
Playful Programming's Atom Feed
In 2025, building a scalable and efficient tech stack is more critical than ever for startups aiming...
1年前

Mastering Angular Unit Testing: Best Practices and Tools
Playful Programming's Atom Feed
In this article, I’ll share the insights and experiences I’ve gained over the years with unit testing in Angular, along with the best practices I’ve adopted along the way.
1年前

How I Set Up an Awesome PowerShell Environment for Script Development
Playful Programming's Atom Feed
Over the past few years, I’ve had the opportunity to help colleagues write and refine PowerShell...
1年前

JavaScript Frameworks - Heading into 2025
Playful Programming's Atom Feed
I admit I wasn't sure I'd be writing this article this year. It's easy to write articles that excite...
1年前

What's gonna change in 2025
Playful Programming's Atom Feed
I just realized that I should probably open source my mind. I wrote this script and recorded a video,...
1年前

Angular Pipes: A Complete Guide
Playful Programming's Atom Feed
Angular Pipes are a core part of the framework. They allow you to derive state via a function called in the template. How does this work? Let's dive in!
1年前

Framework Comparison Table
Playful Programming's Atom Feed
Let's compare and contrast React, Angular, and Vue's APIs all in one place.
1年前

Accessing Children
Playful Programming's Atom Feed
Oftentimes, when passing children to a component, you want a way to programmatically access that passed data. Let's learn how to do that in React, Angular, and Vue.
1年前

Directives
Playful Programming's Atom Feed
If components are a way to share JS logic between multiple, composable DOM nodes; directives are a way to assign logic to any single DOM node.
1年前

Shared Component Logic
Playful Programming's Atom Feed
Components provide a great way to share layout, styling, and logic between multiple parts of your app. But what about times you only need to share logic in React, Angular, and Vue?
1年前

Portals
Playful Programming's Atom Feed
When building an app in React, Angular, or Vue, you'll often find that overlapping components can become a real problem. Rendering order can be confusing; let's fix that with portals.
1年前

Dependency Injection
Playful Programming's Atom Feed
Passing around props suck. They're repetitive, get out of sync, and are easy to forget to pass. What if there was a better way to pass data between different parts of your app?
1年前

Error Handling
Playful Programming's Atom Feed
Bug are a constant in development. How can we make error handling lead to a nicer user experience when they occur in React, Angular, and Vue?
1年前

Component Reference
Playful Programming's Atom Feed
While you usually want to pass data to child components, sometimes you need to access arbitrary data from the child without needing to explicitly pass the data.
1年前

Element Reference
Playful Programming's Atom Feed
React, Angular, and Vue provide powerful APIs that let you avoid DOM manipulations most of the time. But sometimes you need to access the underlying DOM. Here's how.
1年前

Passing Children
Playful Programming's Atom Feed
Just like HTML nodes have parents and children, so too do framework components. Let's learn how React, Angular, and Vue allow you to pass children to your components.
1年前

Transparent Elements
Playful Programming's Atom Feed
There are specific instances where you may want to have a wrapper element in a framework that renders to nothing in the DOM. This is how.
1年前

Derived Values
Playful Programming's Atom Feed
Often in application development, you'll want to base one variable's value off of another. There are a few ways of doing this - some easier than others.
1年前

Side Effects
Playful Programming's Atom Feed
Some call them "lifecycle methods", others "effect handlers". However you spin it, they both handle side effects in your apps. How can we leverage them better?
1年前

Dynamic HTML
Playful Programming's Atom Feed
One of the primary advantages of using a framework is the ability to quickly generate dynamic HTML from JavaScript logic. Let's walk through some examples.
1年前

Introduction to Components
Playful Programming's Atom Feed
Components are the core building block in which all applications written with React, Angular, and Vue are built. Let's explore what they are and how to build them.
1年前

Preface
Playful Programming's Atom Feed
Learning web development is a vital skill in a software engineer's toolbox. Let's talk about why you should learn it and what this book will cover.
1年前

Transforming Windows Terminal into a Productivity Powerhouse
Playful Programming's Atom Feed
Everything is started from this post on bluesky, by Thomas - ...
1年前

The Tree Shaking Journey in Angular: A Deep Dive
Playful Programming's Atom Feed
Hey friends, how are you doing? This year, I tried a new Angular version and wanted to experiment...
1年前

Using Git Maintenance in GitHub Actions: Optimize Your Repositories Automatically
Playful Programming's Atom Feed
Integrating the git maintenance command into your GitHub Actions workflow can help keep your...
1年前

Optimizing Your Repository for Speed and Efficiency
Playful Programming's Atom Feed
In the last few weeks one of my repository started to be very slow and bloated. I try to commit all...
1年前

The Secret Life of a Microsoft MVP
Playful Programming's Atom Feed
For over a decade now (11 years right now), I’ve carried the title of Microsoft Most Valuable...
1年前

Cracking the FAANG Code: My 2024 Google Interview Journey & Key Takeaways (with Actionable Tips!)
Playful Programming's Atom Feed
Earlier this year, I had the opportunity to interview for a role at Google. A recruiter reached out...
1年前

Writing Modern JavaScript without a Bundler
Playful Programming's Atom Feed
Let's explore how we can build a website using many of the conveniences of a Vite app while remaining buildless.
1年前

UUIDv6, UUIDv7, and UUIDv8; what are they?
Playful Programming's Atom Feed
There's new UUIDs on the block! Let's explore what's new with UUIDv6, v7, and v8.
1年前

Angular 19: linkedSignal & Resource API
Playful Programming's Atom Feed
Let's learn about Angular19's linkedSignal & Resource APIs!
1年前

Angular Internals: Lifecycle Methods and Effect Timings
Playful Programming's Atom Feed
Let's dive into the timings for Angular's lifecycle methods and effect APIs. We'll even be reading a fair amount of Angular source code to explain it all.
1年前

Quick Guide to Building a PWA with Next.js
Playful Programming's Atom Feed
Learn how to turn your Next.js app into a Progressive Web App (PWA).
1年前

Web Fundamentals: Manipulating the DOM with JavaScript
Playful Programming's Atom Feed
The ninth chapter of this series finally goes over the DOM, how to manipulate it, and how to make our components interactive!
1年前

Web Fundamentals: JavaScript Basics
Playful Programming's Atom Feed
The seventh chapter of this series contains the first look into JavaScript and its basic components.
1年前

GitHub Spark ✨ isn't even trying to steal your job - 3 Real Examples
Playful Programming's Atom Feed
Spark is the latest creation from the GitHub Next team, which was announced on stage at GitHub...
1年前

Web Fundamentals: Responsive Design
Playful Programming's Atom Feed
The sixth chapter tackles responsive design, breakpoints, media queries and more!
1年前

Web Fundamentals: CSS - Inheritance & Hierarchy
Playful Programming's Atom Feed
The third chapter of our series talks about the cascade hierarchy in CSS, including inheritance and specificity.
1年前

How does Zoneless Angular Work?
Playful Programming's Atom Feed
In the future Angular will not have Zone.js enabled by default and will not need it for change detection. But how will that work in a technical sense?
1年前

How we built our custom semantic search page
Playful Programming's Atom Feed
Let's learn how we managed to improve our search experience using semantic search, powered by Orama.
1年前

Angular 19 - 5 Game-Changing Features You Need to Know
Playful Programming's Atom Feed
Angular continues to evolve, bringing exciting features with each release. Angular 19 is no...
1年前

Codemotion 2024 Milan: Rediscovering My Voice and Passion as a Speaker
Playful Programming's Atom Feed
Codemotion 2024 in Milan was nothing short of spectacular. Imagine being in a place filled with over...
1年前

Angular 19 - Streamlining Data Retrieval with Experimental Resource and rxResource APIs
Playful Programming's Atom Feed
Angular 19 introduces two exciting experimental APIs, resource and rxResource, designed to simplify...
1年前

A forgotten C++ idiom revisited: pass-key
Playful Programming's Atom Feed
So you have a class, and you want to control who can create instancesof it? Easy, make constructors private, and make friends with thosewho can c...
1年前

Angular 19 - Introduction to linkedSignal
Playful Programming's Atom Feed
Angular 19 is on the horizon, and it’s bringing a host of exciting new features to the table. One of...
1年前

What are Signals?
Playful Programming's Atom Feed
Signals are seemingly everywhere today. So here's the question? What are they? Let's build an implementation ourselves to understand them better.
1年前

Mutable Derivations in Reactivity
Playful Programming's Atom Feed
All this exploration into scheduling and async made me realize how much we still don't understand...
1年前

Core Web Vitals — Now Built-n to Chrome
Playful Programming's Atom Feed
Have you wondered what these numbers in the DevTools are? Earlier this year, Google introduced an...
1年前

Dynamic NestJS Listeners: Discover the Power of Lazy Loading
Playful Programming's Atom Feed
Declare lazy-loaded routes in NestJS and in-depth review of the DiscoveryService
1年前

Impostor Syndrome: from A - Z
Playful Programming's Atom Feed
Impostor Syndrome is something many of us have faced at one point or another—a persistent, nagging...
1年前

Recap of Experts Live 2024 in Budapest: Three Days of Cloud, Code, and Connections
Playful Programming's Atom Feed
In a previous post I wrote why it's important to join events and especially, in this case, Experts...
1年前

Improving Core Web Vitals including LCP and CLS with Partial Hydration in Angular 18
Playful Programming's Atom Feed
Angular 18 introduced Partial Hydration in ng-conf 2024, a powerful technique that significantly...
1年前

Angular Change Detection from zone.js to Experimental Zoneless
Playful Programming's Atom Feed
Change detection is a fundamental aspect of Angular, responsible for identifying and updating parts...
1年前

Web Fundamentals: Grid
Playful Programming's Atom Feed
In the fifth chapter of our series, we're going to be introduced to CSS grid, a well-known feature to display content, and used in almost every website you visit.
1年前

Web Fundamentals: Flexbox
Playful Programming's Atom Feed
In the fourth chapter of our series, we'll look at flexbox, a powerful layout feature that allows you to create responsive designs with ease.
1年前

Monorepos with Nx: Why You Might Want a Single Home for All Your Code
Playful Programming's Atom Feed
Ever felt like your codebase is scattered across a million different repositories? That’s the life of...
1年前

The Impact of Not Turning Off Your PC for Three Weeks: A Deep Dive into Hibernate Mode and Application Performance
Playful Programming's Atom Feed
What happens when you rely solely on hibernate mode and don't turn off your PC for three weeks...
1年前

Web Fundamentals: CSS - The Basics
Playful Programming's Atom Feed
The second chapter in our front-end series. Let's delve right into the world of CSS, variables and selectors.
1年前

Web Fundamentals: HTML
Playful Programming's Atom Feed
The first chapter of this series offers an introductory dive into the box model, HTML defaults and semantic elements.
1年前

Leveraging Django 5.1.1 and PostgreSQL 16 for an Efficient Geo-Targeted Rating API
Playful Programming's Atom Feed
Last week, I had a chance to dive into a case study that involved developing an HTTP-based REST API....
1年前

Building and Serving Angular Applications Across Environments with environment.ts (Angular 15+)
Playful Programming's Atom Feed
As an Angular developer, deploying your application to different environments – development (dev),...
1年前

Why You Should Attend Experts Live Europe 2024 in Budapest: Unlocking Opportunities in the Heart of Innovation
Playful Programming's Atom Feed
The IT landscape is ever-evolving, and staying ahead of the curve is crucial for professionals...
1年前

Entity Component System: The Perfect Solution to Reusable Code?
Playful Programming's Atom Feed
The ECS pattern is used by many game engines to create stateless, reusable game logic. But how does it work?
1年前

Where should you start building your application
Playful Programming's Atom Feed
Talking about where you should start building your full stack application
1年前

Why Reading Official Documentation First Made Me a Better Developer
Playful Programming's Atom Feed
As a developer, the constant need for learning and adapting to new technologies is a given. However,...
1年前

Weekly 0074
Playful Programming's Atom Feed
Monday Dedicated time to meticulously outline the comprehensive roadmap for Cloud Glow, my...
1年前

Why is CSS-in-JS slow?
Playful Programming's Atom Feed
If you've worked with frameworks like React, Angular, or Vue in the past you'll likely have used (or heard of) a CSS-in-JS solution like Styled Com...
1年前

🎉 Celebrating 11 Years as a Microsoft MVP: A Journey of Perseverance and Gratitude 🌟
Playful Programming's Atom Feed
Introduction to the Microsoft MVP Program The Microsoft Most Valuable Professional (MVP)...
1年前

Angular 18.2: Enhanced Template Syntax and Streamlined Migrations
Playful Programming's Atom Feed
Angular 18.2 has arrived, and while it may be a minor release, it holds some valuable improvements...
1年前

Navigating Tech Debt in Early-Stage Startups: The Double-Edged Sword
Playful Programming's Atom Feed
Introduction Whether you're a coding ninja or a startup wizard, understanding tech debt,...
1年前

Async Derivations in Reactivity
Playful Programming's Atom Feed
Congratulations on making it through the series thus far. But this is where things start to go off...
2年前

Create a CI Workflow with Minimal Boilerplate Using Nx, Docker, and GitHub Actions
Playful Programming's Atom Feed
In this post, I share my blueprint for a hybrid CI workflow that neither forces you to adapt to a...
2年前

Cracking the LeetCode 122. Best Time to Buy and Sell Stock II
Playful Programming's Atom Feed
In my ongoing quest to sharpen my LeetCode skills, I tackled the "Best Time to Buy and Sell Stock II"...
2年前

Scheduling Derivations in Reactivity
Playful Programming's Atom Feed
Most developers think about Reactivity as an event system. You have some state. You update that state...
2年前

LeetCode Problem 121: Best Time to Buy and Sell Stock
Playful Programming's Atom Feed
I recently tackled a classic LeetCode problem: "Best Time to Buy and Sell Stock." This problem asks...
2年前

Two-way Binding is a Two-way Street
Playful Programming's Atom Feed
In some circles, two-way binding is seen as the scourge of modern frontends, while in others it is...
2年前

It's Time For A Change: Rebranding Our Platform
Playful Programming's Atom Feed
"Unicorn Utterances" is now "Playful Programming". Let's talk about why, what's different, what's the same, and what's next.
2年前

A Complete History of Unicorn Utterances
Playful Programming's Atom Feed
Now that "Unicorn Utterances" is called "Playful Programming", let's look at the history of the project.
2年前

Effortless Theme Toggling in Angular 17 Standalone Apps with PrimeNG
Playful Programming's Atom Feed
As I delved into PrimeNG and PrimeFlex for my recent Angular 17 standalone app with SSR, one aspect...
2年前

Safely Experiment with Angular 18: A Guide for Developers with Existing 16 & 17 Projects
Playful Programming's Atom Feed
Exploring Angular 18 Without Disrupting Existing Projects I was recently working on an...
2年前

Implementing i18n Internationalization in Next.js 14 with Next-Intl
Playful Programming's Atom Feed
As a full-stack developer, I strive to create applications that cater to a global audience. This...
2年前

Integrating Creative Data Visualization in My Developer Portfolio Using Next.js 14 and Recharts
Playful Programming's Atom Feed
As a full-stack developer, my portfolio is my digital handshake to potential employers. It showcases...
2年前

Testing Components In Angular: NO ERRORS SCHEMA, Stub Components, and NgMocks
Playful Programming's Atom Feed
When we need to write a test for components, it is not hard. The pain starts when our components...
2年前

The Missing Shadcn/ui Component 🪄
Playful Programming's Atom Feed
The beauty of shadcn/ui is that it's not a component library, but a set of components that you can...
2年前

TanStack Form Tutorial: Arrays & Dynamic Fields
Playful Programming's Atom Feed
Your form might not have a fixed number of fields, that's where arrays come in! Let's see today how...
2年前

🌈 2 Colors Extensions to make Visual Studio Code even better!
Playful Programming's Atom Feed
Colors 🌈 help us identify things in our surroundings, including Visual Studio Code instances and...
2年前

TanStack Form Tutorial: Advanced Validation
Playful Programming's Atom Feed
Validation is one of the core features of forms, probably the most important one. In the last...
2年前

Play 4 Multiplayer Games 🎮 on Github Profiles (README.md)
Playful Programming's Atom Feed
You can play online multiplayer games on Github profiles! 🎮 Setting up a profile on GitHub is easy,...
2年前

Building Real-Time Boards with Angular and NestJS Using Server-Sent Events
Playful Programming's Atom Feed
When I need to build real-time apps with Angular, most of the time I use SignalR, but a few days ago,...
2年前

Set up a React Native Web Project in a Monorepo
Playful Programming's Atom Feed
Setting up a React Native Web project in a monorepo is challenging. Let's do so and see what challenges we run into!
2年前

TanStack Form Tutorial: Setup and simple validation (with shadcn/ui)
Playful Programming's Atom Feed
Forms are not an easy business 🤯 Luckily there are many libraries helping out with that and today...
2年前

Making Generics Types Optional - Generics Fundamentals in Typescript
Playful Programming's Atom Feed
In the last two issues, we started exploring generics, where we looked at the fundamentals of...
2年前

Unlocking the Power of Out-GridView in PowerShell
Playful Programming's Atom Feed
Unlocking the Power of Out-GridView in PowerShell When it comes to PowerShell, every seasoned...
2年前

Copilot Workspace - GitHub's latest innovation
Playful Programming's Atom Feed
GitHub just announced Copilot Workspace a new integrated AI feature with Copilot being your companion...
2年前

What's in my bag when I go to the office [April 2024 Edition]
Playful Programming's Atom Feed
As a developer, my workdays are filled with coding, designing, and collaborating with colleagues both...
2年前

What I DON'T like about shadcn/ui
Playful Programming's Atom Feed
Shadcn/ui is great, components are good-looking, easy to setup and customize, and everyone likes it…...
2年前

Feeling overwhelmed by technical articles? Let's find a solution
Playful Programming's Atom Feed
Sometimes I feel that I'm reading a lot of technical articles and watching videos, but nothing really...
2年前

TanStack Router: Nesting & 404 pages
Playful Programming's Atom Feed
Welcome to the fifth article of a series where we will explore TanStack Router, the new typesafe...
2年前

Generic Constraints - A Gentle Introduction to Generics in Typescript
Playful Programming's Atom Feed
In a previous issue, we learned about the fundamentals of Generics in Typescript and how we can use...
2年前

Bun - The One Tool for All Your JavaScript/Typescript Project's Needs?
Playful Programming's Atom Feed
In most issues for this newsletter, I have focussed on Typescript and its type system, which I will...
2年前

A Gentle Introduction to Generics in Typescript
Playful Programming's Atom Feed
One of the more advanced topics in Typescript is Generics and understanding and adding them to your...
2年前

Navigating Open Spaces: Survival Guide for Neurodivergent Individuals
Playful Programming's Atom Feed
Navigating open spaces can be challenging for anyone, but for neurodivergent individuals, it can...
2年前

Explaining Promises, Async, and Await in JavaScript
Playful Programming's Atom Feed
Modern JavaScript is built on promises and callbacks. Let's learn what promises are and how we can make their usage easier using async functions.
2年前

A Deep Dive into the satisfies operator in Typescript
Playful Programming's Atom Feed
In Typescript version 4.9, Typescript introduced the satisfies operator. Over the last few months, I...
2年前

TanStack Router: Authenticated routes & Guards
Playful Programming's Atom Feed
Welcome to the fourth article of a series where we will explore TanStack Router, the new typesafe...
2年前

TanStack Router: Query Parameters & Validators
Playful Programming's Atom Feed
Welcome to the third article of a series where we will explore TanStack Router, the new typesafe...
2年前

Boost your productivity by mastering Oh My ZSH git aliases
Playful Programming's Atom Feed
Since I discovered Oh My Zsh a few years ago, it has been a god-sent gift to me. I believe it has...
2年前

Embedding Interfaces in Go
Playful Programming's Atom Feed
Creating tests can feel tedious, but doing it in Go can be, dare I say, *fun*. Let's take a look at how embedding interfaces clears some of that tedium for us.
2年前

TanStack Router: Path Parameters & Loader
Playful Programming's Atom Feed
Welcome to the second article of a series where we will explore TanStack Router, the new typesafe...
2年前

Build a Vite 5 Backend Integration with Flask
Playful Programming's Atom Feed
Learn how to build a lightweight backend Vite integration using a Flask Blueprint in ~50 lines of code.
2年前

TanStack Router: Setup & Routing in React
Playful Programming's Atom Feed
Welcome to the first article of a series where we will explore TanStack Router, a new router for...
2年前

How to Push All Branches from Command Line
Playful Programming's Atom Feed
Pushing all branches simultaneously streamlines the process of synchronizing your local repository...
2年前

Implicit Dependencies Management with Nx: A Practical Guide through Real-World Case Studies
Playful Programming's Atom Feed
In this article, I will present two concrete cases of implicit dependencies and show you how to...
2年前

The Dilemma of Perfection: Balancing Timeliness and Quality in Product Development
Playful Programming's Atom Feed
In the fast-paced world of technology and innovation, product development teams often face a critical...
2年前

Decoding Startup Jargon: A Comprehensive Guide for Entrepreneurs
Playful Programming's Atom Feed
In the fast-paced world of startups, communication is key. However, navigating through the sea of...
2年前

Conventional Comments: Stop Fighting in Code Reviews
Playful Programming's Atom Feed
I’m sure you’ve heard about conventional commits, but what about conventional comments? The...
2年前
Move manifest.json to the Output Directory's Parent in Vite 5
Playful Programming's Atom Feed
Move Vite's manifest.json file outside of the build directory.
2年前

Restore deleted/lost files with git
Playful Programming's Atom Feed
Remember that file you deleted last week? Too bad, now you need it. Let's see how git restore can...
2年前

A Promise is forever
Playful Programming's Atom Feed
In the ever-evolving world of web development, mastering asynchronous operations is a crucial skill...
2年前

How to Manage Variables Configuration in a PowerShell Project
Playful Programming's Atom Feed
One of the challenges of writing PowerShell scripts is how to handle variables configuration, such as...
2年前

15 Minutes of Documentation 📖 for 15 Days
Playful Programming's Atom Feed
I spent 15 minutes every single day reading documentation and here’s what I learnt. In the last two...
2年前

How Endel App Boosted My Productivity as a Developer and CTO
Playful Programming's Atom Feed
As a developer and CTO, I have to juggle multiple tasks and projects every day. I need to write code,...
2年前

Beginner-friendly Open Source projects to learn Web Development
Playful Programming's Atom Feed
I'm launching a GitHub organization to host community projects. The mission is to learn Web...
2年前

How To Add Controllers To A Blazor Server App
Playful Programming's Atom Feed
In this post, I will show you how to add controllers to a Blazor Server app and how to use them to...
2年前

Fuzzing an API with libfuzzer
Playful Programming's Atom Feed
[Edit] I was just told that libFuzzer is deprecated. I think the ideas presented are valid for any fuzzer, but thedetails will differ. When I ment...
2年前

My Wrap Up of 2023: A Year of Growth and Recognition
Playful Programming's Atom Feed
Hello everyone, this is my last blog post of the year and I want to share with you some of the...
2年前

Derivations in Reactivity
Playful Programming's Atom Feed
There is a reason why the first time you learn about a reactive system the example always looks...
2年前

Fantastic JSON Schemas and where to find them
Playful Programming's Atom Feed
Everytime you write a config for a common tool, for example you're writing a GitHub Action in Visual...
2年前

Web Framework Quickstart Guide
Playful Programming's Atom Feed
Here's the quickest ways you can get up-and-running with templates for React, Angular, and Vue; using official tools.
2年前

Keep Your Email out of Recipients’ Spam Folders
Playful Programming's Atom Feed
Spam is a common problem for email users and administrators. Spam messages can clutter your inbox,...
2年前

You shouldn't ignore warnings in the console
Playful Programming's Atom Feed
How often when you run your build command you see a bunch of warnings in the console? I mean, they've...
2年前

How to Speak the Language of the Internet: A Introduction to the Most Common Network Protocols
Playful Programming's Atom Feed
Network protocols are sets of rules and standards that enable communication between devices over a...
2年前

Angular Dynamic host Property Usage
Playful Programming's Atom Feed
In directives and components alike, it can be a pain to add attributes and bindings to the host element. Instead of using DI to change the host, try this instead.
2年前

2023 Retrospective
Playful Programming's Atom Feed
Here it is, the end of 2023. What a year it has been. I've been thinking about what I want to do in...
2年前

Angular's Templates Don't Work the Way You Think They Do
Playful Programming's Atom Feed
Angular templates are mission-critial for components. But how do they work? Using a compiler, yes, but how do they bind to the DOM itself? Read on to find out.
2年前

The Power of Atomic Commits in Git: How and Why to Do It
Playful Programming's Atom Feed
Using Git effectively requires some good practices and habits, such as making atomic commits. ...
2年前

JavaScript Frameworks - Heading into 2024
Playful Programming's Atom Feed
I won't be the first to say it, but I will say it nonetheless, 2023 was quite the year for JavaScript...
2年前

What is React's useActionState and useFormStatus?
Playful Programming's Atom Feed
React Server Actions are an awesome way to pass data to and from your React client and server. Like all functions, they need a way to return data.
2年前

What are React Server Actions?
Playful Programming's Atom Feed
While React Suspense APIs enable you to load data asynchronously from the server, Server Actions allow you to send data to the server from the client.
2年前

About time - how to unit test code that depends on time
Playful Programming's Atom Feed
Suppose that the logic of your program depends on time. That is, you need to keep track of when something in the pasthappened, and what time it is...
2年前

What is React Suspense and Async Rendering?
Playful Programming's Atom Feed
Handling async code in React code has historically been fairly challenging to get right. Let's see how React's official solutions for promises stack up!
2年前

Exploiting the Hype Cycle in Tech
Playful Programming's Atom Feed
Hold on a second, it's called Hype Cycle, but actually... it's not a cycle. I mean, there are 5...
2年前

Explaining React's cache Function
Playful Programming's Atom Feed
React's dipping its toes into data fetching! With this comes a big requirement to cache the results of a given function. Luckily, React's done that. Let's see how.
2年前

What are React Server Components (RSCs)?
Playful Programming's Atom Feed
React Server Components have been a topic of regular discussion in the WebDev space as-of late. What are they? How do they improve the SSR story for React? Let's take a look.
2年前

What is Reconciliation and the Virtual DOM (VDOM)?
Playful Programming's Atom Feed
How does React handle update the DOM? The answer? "The Virtual DOM and reconciliation." Let's explore what these are and how you can leverage them the best.
2年前

What is Reactivity?
Playful Programming's Atom Feed
When researching frontend frameworks, you're likely to hear about "reactivity". But what is it? Why does it matter? Let's explore this and more in this article.
2年前

Pains and solutions in localization for the web
Playful Programming's Atom Feed
There's nothing wrong in writing plain text in your HTML/JSX code, it renders nicely on the browser...
2年前

Add Router Animation Transitions for Navigation in Angular 17
Playful Programming's Atom Feed
I'm constantly exploring ways to improve user interaction on websites. Recently, while building a...
2年前

When private member function?
Playful Programming's Atom Feed
I've seen this a few times too many recently, and need to get it off my chest. Ponder a class that has a private member function. The function does...
2年前

How to retrieve sub properties in a PowerShell script with the Invoke-Expression method
Playful Programming's Atom Feed
Sometimes, you may want to access the sub properties of an object, which are the properties of the...
2年前

Testing routed components with RouterTestingHarness
Playful Programming's Atom Feed
RouterTestingHarness uses the actual Angular Router API in our routed component tests.
2年前

Fetching and Publishing Settings for Azure Functions with Azure Functions Core Tools Command Line
Playful Programming's Atom Feed
During my daily activities I develop a lot of Azure Functions. Every time I struggle to synchronize...
2年前

Level UP your RDBMS Productivity in GO
Playful Programming's Atom Feed
IMPORTANT: All the things in this article are highly opinionated, and they are not a standard. I'm...
2年前

Advent of Code Automation for Javascript/Typescript
Playful Programming's Atom Feed
December means Advent of Code for many of us 🎄 (or at least, the first few days of December) These...
2年前

The Most Upvoted Visual Studio Code Feature
Playful Programming's Atom Feed
Up until yesterday (technically, a few days ago), tabs were bound to the same vscode window, but...
2年前

Developers and Sherpas: A Mountainous Analogy
Playful Programming's Atom Feed
Have you ever wondered what it takes to be a successful software developer? Do you think you have the...
2年前

How to handle browser storage in Angular SSR?
Playful Programming's Atom Feed
In this quick tutorial, we will learn best way to handle browser storage with Angular SSR
2年前

Set up GitHub Codespaces for a .NET 8 application
Playful Programming's Atom Feed
A few days ago Microsoft released the new version of .NET: .NET 8. This is the stable version of the...
2年前

GitHub Codespaces: A Faster Way to Develop in the Cloud
Playful Programming's Atom Feed
It's been a long time in my mind to write a series of posts regarding Codespaces but now it occurred...
2年前

A deep dive into new control flow syntax for Angular (17)
Playful Programming's Atom Feed
With the release of Angular 17, I wanted to explore the control flow syntax in Angular and...
2年前

Debug a React app with Visual Studio Code
Playful Programming's Atom Feed
Debugging a React app is far from being an easy task... if you don't know the tools you already have,...
2年前

Why I love Monaspace font for coding
Playful Programming's Atom Feed
As a developer, I spend a lot of time writing and reading code. And one of the most important aspects...
2年前

The Reflect API: The Swiss Army Knife Every JavaScript Developer Needs
Playful Programming's Atom Feed
Ever wished for a magical toolkit that gives you superhero-like control over JavaScript objects? Say...
2年前

Figma to Compose: Line Height & Baseline Grids
Playful Programming's Atom Feed
A detailed guide on how to make text in Jetpack Compose match your mockups, and why baseline grids are not all that they're hyped up to be.
2年前

How to Build Original Projects
Playful Programming's Atom Feed
People often say that you should build your own projects to grow as a developer, without explaining how. Let's learn how to actually plan and build your own custom projects.
2年前

Cracking the JavaScript Code: Unveil the Magic of Object Property Descriptors
Playful Programming's Atom Feed
👋 Hey, JavaScript developers! Ever wondered what makes your objects tick? Or how to go all...
2年前

I Fixed Trello
Playful Programming's Atom Feed
Having a unique ID on each card is so important to efficiently communicate, but Trello does not show...
2年前

Recap Codemotion 2023
Playful Programming's Atom Feed
Last week, I had the opportunity to attend Codemotion 2023, one of the biggest tech conferences in...
2年前

How to Release a Side Project as a Real Product
Playful Programming's Atom Feed
Many developers have side projects that they work on for fun, learning, or solving a personal...
2年前

Securing Secrets in the Age of GitOps
Playful Programming's Atom Feed
Kubernetes and GitOps offer a powerful way to manage your infrastructure and applications. However,...
2年前

JavaScript FinalizationRegistry Unraveled: Memory Management Magic Explained!
Playful Programming's Atom Feed
Introduction JavaScript's memory management can be tricky, especially when it comes to...
2年前

How to NOT decide the next tech stack: 4 decision making anti-patterns
Playful Programming's Atom Feed
These are 4 really easy ways of making horrible decisions, but don't worry, being able to recognize...
2年前

Unlocking the Power of Proxies: JavaScript's Secret Superheroes
Playful Programming's Atom Feed
JavaScript's Proxy object is a powerful feature that enables you to intercept and customize...
2年前

GitHub Form Templates
Playful Programming's Atom Feed
When you, as a contributor, want to create a new issue on GitHub, you're presented with a blank page...
2年前

How To Handle Microsoft Graph Paging in PowerShell
Playful Programming's Atom Feed
When you query the Microsoft Graph API, you may encounter a limitation: the API only returns a...
2年前

Thinking Locally with Signals
Playful Programming's Atom Feed
As the creator of SolidJS, I was very influenced by React when designing the library. Despite what...
2年前

How to avoid Microsoft Graph API throttling and optimize network traffic
Playful Programming's Atom Feed
In the last few months I received a lot of requests from customers about avoiding Microsoft Graph API...
2年前

Contributing to HUGE Open Source Projects
Playful Programming's Atom Feed
Let's say you want to contribute to a large Open Source project like React or VSCode: are you...
2年前

JavaScript WeakRef Explained: Harnessing Memory Management Magic
Playful Programming's Atom Feed
Introduction to WeakRef WeakRef is a powerful feature in JavaScript that allows developers...
2年前

Azure Automation vs Azure Functions with Powershell
Playful Programming's Atom Feed
In my last recent talks and at work (I helped a lot of customers with Azure Automation and Azure...
2年前

Give credit to Open Source Contributors
Playful Programming's Atom Feed
Tables like this one are in a lot of repositories, giving well deserved credit to their...
2年前

Unlock the Power of JavaScript WeakSet: Mastering a Hidden Gem!
Playful Programming's Atom Feed
In the vast landscape of JavaScript, many powerful features often go unnoticed. One such hidden gem...
2年前

Experts Live 2023 - My Recap
Playful Programming's Atom Feed
I’m excited to share with you my experience at Experts Live Europe 2023, a premier conference for IT...
2年前

Discovering Odd Behavior with Angular Error Handling
Playful Programming's Atom Feed
Angular has fairly consistent error handling behavior... Until it doesn't. Here's one place where it's off and why.
2年前

Unlocking JavaScript's Secret Weapon: The Power of WeakMaps
Playful Programming's Atom Feed
Introduction JavaScript is a powerful and versatile programming language that has evolved...
2年前

Unveiling the Magic: Exploring JavaScript Symbols
Playful Programming's Atom Feed
Introduction to JavaScript Symbols JavaScript Symbols are a new primitive data type...
2年前

Creating your First Valid PR for Hacktoberfest 2023
Playful Programming's Atom Feed
Starting from September 26th you can register for the event. There will be a button on the official...
2年前

What's in my bag for Experts Live Europe
Playful Programming's Atom Feed
I am very excited to attend Experts Live Europe, a community-driven IT conference focused on...
2年前

JavaScript Async Generators Unleashed: Harnessing Asynchronous Power
Playful Programming's Atom Feed
In the dynamic realm of JavaScript, the ability to efficiently handle asynchronous operations is...
2年前

Islands & Server Components & Resumability, Oh My!
Playful Programming's Atom Feed
It is no secret that the past 2 years have seen the beginnings of a fairly dramatic change in...
2年前

GitHub Markdown Issue Templates
Playful Programming's Atom Feed
When you, as a contributor, want to create a new issue on GitHub, you're presented with a blank page...
2年前

Where's the Hacktoberfest 2023 T-Shirt?
Playful Programming's Atom Feed
Hacktoberfest 2023 will NOT have the usual tshirt and stickers as a reward. This has been announced...
2年前

Never forget where you come from
Playful Programming's Atom Feed
Photo by ROCCO STOPPOLONI on Unsplash Last week, I was traveling to speak at CityJs + HalfStack Conf...
2年前

Building a Contact Form with Microsoft Azure and Blazor
Playful Programming's Atom Feed
In this blog post, I will show you how to create a simple contact form for your website using Blazor...
2年前

Mastering JavaScript Async Iterators: Unlocking Asynchronous Magic
Playful Programming's Atom Feed
In the ever-evolving landscape of JavaScript, staying up-to-date with its latest features is crucial...
2年前

Unleashing the Power: Demystifying JavaScript Generators
Playful Programming's Atom Feed
Welcome to this blog post, where we're diving into the fascinating world of JavaScript generators. If...
2年前

Setting up VS Code for C# development
Playful Programming's Atom Feed
Visual Studio Code (VS Code) is a popular and versatile code editor that supports many languages and...
2年前

My Smart Working Experience: Pros and Cons
Playful Programming's Atom Feed
I’m doing smart working in a full remote company for a couple of years. These are the pros and cons...
2年前

PowerShell: Turn Your Custom Objects into CSV Files (and vice versa) with a Snap of Your Fingers
Playful Programming's Atom Feed
PowerShell is a powerful scripting language that can manipulate various types of data, such as...
2年前

Iterate Like a Pro: Mastering JavaScript Iterators for Effortless Code
Playful Programming's Atom Feed
Welcome to this blog post, where we're about to unravel the power and versatility of JavaScript...
2年前

Learning Web Development Together with a Real Project
Playful Programming's Atom Feed
Learning through tutorials alone is not enough, some hands-on practice is required in order to...
2年前

A sweet spot between signals and observables 🍬
Playful Programming's Atom Feed
In collaboration with Chau Tran. The migration wave to signals is real, state management libraries...
2年前

When Use Arrays, Tuples, Maps, and Sets In Typescript with Examples
Playful Programming's Atom Feed
A few days ago, a friend asked how to prevent duplicate keys in an array, and I told him there are...
3年前

Developer Shape Makes It All
Playful Programming's Atom Feed
Since a couple of days I’m seeing this screenshot everywhere on Twitter and Linkedin, and I’m sorry...
3年前

Create configurable Angular guards
Playful Programming's Atom Feed
When building web application, from time to time we have to protect routes from unauthorized access....
3年前

Chrome Debugger is easier to use than you might think
Playful Programming's Atom Feed
Please, don’t tell me you’re still using console.log to debug your application. Ok, everyone does...
3年前

One Year of Dev YouTube
Playful Programming's Atom Feed
Exactly one year ago I started consistently posting on YouTube, at least a video every single week,...
3年前

Custom scaffolding with Copilot - July 2023 Update
Playful Programming's Atom Feed
You got the idea for a new and fun side project which you will abandon after a few weeks, but that's...
3年前

A message from an Impostor
Playful Programming's Atom Feed
Impostor syndrome is quite popular in the tech industry. People around you seem to be super experts,...
3年前

How to prevent the screen turn off after a while in Blazor
Playful Programming's Atom Feed
One of the challenges of web development is to keep the screen awake when an application needs to...
3年前

Who pushed failing tests again? Git Hooks with Husky 🐶
Playful Programming's Atom Feed
Three things you do NOT want in your repository: Unformatted code Warnings/errors Failing...
3年前

Manage Nx library dependencies with the @nx/dependency-checks ESLint rule
Playful Programming's Atom Feed
The `@nx/dependency-checks` ESLint rule is an invaluable tool in managing peer dependencies of a buildable or publishable Nx library.
3年前

Backend development is more than writing endpoints for frontend
Playful Programming's Atom Feed
Backend development is a crucial part of web development that involves creating and maintaining the...
3年前

Secrets and Environment Variables in your GitHub Action
Playful Programming's Atom Feed
If you need to use some secret values in your pipeline, for example an API key to send a Slack...
3年前

Introduction to Hash Tables
Playful Programming's Atom Feed
A high-level overview of how hash tables work behind the scenes.
3年前

Porting a Next.js Site to Astro Step-by-Step
Playful Programming's Atom Feed
Let's port a site from Next.js to Astro, expanding on the official migration guide.
3年前

Using JavaScript classes without the `class` keyword
Playful Programming's Atom Feed
Classes are a core feature of JavaScript - but they weren't always that way. How did earlier JS devs write classes? Let's learn how together.
3年前

How to Setup a React Native Monorepo
Playful Programming's Atom Feed
React Native can be challenging to setup a monorepo for. Let's explore what an optimal monorepo setup looks like for it.
3年前

Qwik introduction from Misko and Giorgio
Playful Programming's Atom Feed
On June 14th I've been in Florence to attend an amazing workshop about Qwik, held by Misko Hevery,...
3年前

How To Debug Angular Applications Easy
Playful Programming's Atom Feed
As developers, we use a lot of our coding time to fix bugs. Debugging helps us find and remove errors...
3年前

How to Clean Up Your Local Repository with Git Commands
Playful Programming's Atom Feed
Git is a powerful and popular version control system that helps you manage your code history and...
3年前

Looking Up React Components Props Types
Playful Programming's Atom Feed
In an earlier post, in my All Things Typescript newsletter, we covered how we can look up types for...
3年前

Create and Publish a GitHub Action in Typescript
Playful Programming's Atom Feed
GitHub Actions are a powerful tool to automate your workflow. They can be used to run tests, deploy...
3年前

Architects Delight: Enforcing Layers and Project Boundaries with Nx
Playful Programming's Atom Feed
Introduction When I embarked on my journey as a software developer, I delved into the...
3年前

🏆 My journey to the MVP Award 🏆
Playful Programming's Atom Feed
This history started many years ago! I was a student, and I was going to the ITS in Pordenone. I...
3年前

Unraveling the Magic of the Virtual DOM
Playful Programming's Atom Feed
The VDOM is the secret sauce that empowers developers to create the captivating, dynamic web applications that we use every day.
3年前

How to Boost Your Web Performance with HTML5 Features
Playful Programming's Atom Feed
Performance is a crucial aspect of web development, as it affects the user experience, accessibility,...
3年前

React Query - Infinite Queries
Playful Programming's Atom Feed
Hey Folks, Today it's time to learn how you can build an infinite query with React Query. To build...
3年前

Safari 17 Beta: A Game Changer for PWAs on MacOS
Playful Programming's Atom Feed
Safari 17 Beta is the latest version of Apple's web browser, which was released on June 5, 2023. It...
3年前

Organize Your Firebase Functions For Easier Deployments and Maintenance
Playful Programming's Atom Feed
When developing Firebase functions, it's common to have everything in a single repository - all the...
3年前

Astro Coding Session: "Series" feature on my blog
Playful Programming's Atom Feed
Hello! If you read my articles often here on devto you probably noticed that I also publish them on...
3年前

Visual Studio 2022: A New Way to Work with HTTP Requests and Responses
Playful Programming's Atom Feed
One of the new features in Visual Studio 2022 is the support for HTTP files, which are text files...
3年前

React Query - Paginated List
Playful Programming's Atom Feed
Hey Folks, Today it's time to learn how you can paginate a list with ReactQuery. It's common to...
3年前

Enhancing your terminal experience: Warp or Fig?
Playful Programming's Atom Feed
After using Warp for over a couple of months (and collecting feedback from colleagues already using...
3年前

Stop using the defaultProject Nx CLI setting and start using NX_DEFAULT_PROJECT
Playful Programming's Atom Feed
The defaultProject Nx CLI setting is deprecated. However, there's a hidden alternative.
3年前

Understanding and Using ConfigureAwait in Asynchronous Programming
Playful Programming's Atom Feed
In this article, I will explain what ConfigureAwait is, why it is important to use it correctly, and...
3年前

The Top 5 Best Takeaways from Microsoft Build 2023
Playful Programming's Atom Feed
Microsoft Build 2023 was a three-day event that showcased the latest innovations and tools for...
3年前

How to Convince your Project Manager/Client to let you write Unit Tests
Playful Programming's Atom Feed
I recently shared a video where I showed how Copilot Chat can write tests for you, a funny demo, but...
3年前

How to Write Better PowerShell Scripts: Architecture and Best Practices
Playful Programming's Atom Feed
PowerShell is a powerful scripting language that can automate tasks, manage configuration, and...
3年前

Playing with Copilot CLI on top of Warp terminal
Playful Programming's Atom Feed
I recently got access to the new Copilot CLI, which basically gives you the full power of GitHub...
3年前

Copilot Chat writes Unit Tests for you!
Playful Programming's Atom Feed
We don't write tests because we don't have time. How many times have you heard that? Or maybe you...
3年前

React Query - Abort Request
Playful Programming's Atom Feed
Hey Folks, Today it's time to learn how you can abort an ongoing request with ReactQuery. Before...
3年前

How to Unleash the Power of Multithreading in JavaScript with Web Workers
Playful Programming's Atom Feed
As I mentioned in my two previous articles, JavaScript is a single-threaded language, which means it...
3年前

Improve user experience with optimistic update
Playful Programming's Atom Feed
Hey Folks, Sometimes to improve the user experience you can decide to bet on the success of your...
3年前

How to Use Visual Studio Like a Pro When Presenting Your Code
Playful Programming's Atom Feed
Visual Studio is great to write code and create something amazing, but sometimes, you may want to use...
3年前

How to Use Promise.all and Promise.race to Speed Up Your JavaScript Code
Playful Programming's Atom Feed
In my previous article I described how to use Async and Await in Vanilla JavaScript. ...
3年前

GitHub Copilot CLI is your new GIT assistant
Playful Programming's Atom Feed
GitHub Copilot CLI comes with three aliases: ??: Ask for a generic shell command git?: Ask for a...
3年前

Async and Await in Vanilla JavaScript
Playful Programming's Atom Feed
In the last couple of years I work a lot with Blazor WebAssembly for my personal projects and, first...
3年前

React Query - Keys & Prefetching
Playful Programming's Atom Feed
Hey Folks, Today I want to share two important things if you are using ReactQuery. The first is how...
3年前

Using Copilot: CLI to reorganize my blog
Playful Programming's Atom Feed
A few days ago I was working on my blog leonardomontini.dev as I'd like to give it a strong restyle...
3年前

Create an Azure Function with PowerShell and Visual Studio Code
Playful Programming's Atom Feed
In this post, I'm going to show you how to create Azure Functions with PowerShell and Visual Studio...
3年前

Lazy loading services in Angular. What?! Yes, we can.
Playful Programming's Atom Feed
We’re used to lazy loading modules or components in Angular. But what about lazy loading services?...
3年前

React Query - Enable Query
Playful Programming's Atom Feed
Hey folks, Do you know that you can enable or disable a query in react query? Noooo! Ok, it's time to...
3年前

Trying out a new terminal: Warp
Playful Programming's Atom Feed
When I moved from Windows to Mac a year ago I also developed the habit of using the terminal much...
3年前

A Crash Course to Two-Factor Authentication
Playful Programming's Atom Feed
Two-Factor Authentication is a security feature that adds an extra layer of protection to your online accounts.
3年前

10 more Javascript Challenges!
Playful Programming's Atom Feed
Do you know Javascript? After the success of the previous video, I've decided to make a second one...
3年前

How to Clean Up ASP.NET and Visual Studio Cache and Temp Files
Playful Programming's Atom Feed
ASP.NET and Visual Studio are powerful tools for web application development, but like any software,...
3年前

New way of passing data to dynamically created components (New Feature 🎉)
Playful Programming's Atom Feed
Topics covered in this article: How it works today How it can be done in Angular v16 How...
3年前

React Query - Filter Your Data
Playful Programming's Atom Feed
Hey folks, Did you know that you can filter your data in react query? Noooo! Ok, it's time to learn...
3年前

I QUIT from a TOXIC Software Development Workplace
Playful Programming's Atom Feed
I worked as a Full Stack Web Developer on what I realized it was to me a toxic workplace for software...
3年前

GitHub Slash Commands!
Playful Programming's Atom Feed
Wait, what? Slash commands are available on GitHub? I recorded a two minutes video to showcase how...
3年前

Why and When Use Ng-template, NgContent, and NgContainer in Angular
Playful Programming's Atom Feed
When I started to play with templates and dynamic content in angular, I get surprised by multiple...
3年前

React Query - Authentication Flow
Playful Programming's Atom Feed
Every application should handle an authentication flow; in this article, you'll learn how to build an...
3年前

Never Use the WRONG Package Manager Again!
Playful Programming's Atom Feed
npm or yarn, what does this project use? Or maybe it's pnpm? Or Bun? Well, let's just use ni! Is...
3年前

Angular: The Framework of Past, Present, and Future
Playful Programming's Atom Feed
Photo by Drew Beamer on Unsplash I started using Angular in 2017 when version 4 was released. And I...
3年前

Playwright - UI Mode
Playful Programming's Atom Feed
Hi folks, In release 1.32, Playwright released a new cool feature for us, the UI Mode! This feature...
3年前

Bind Route Info to Component Inputs (New Router feature)
Playful Programming's Atom Feed
Pass router info to routed component inputs Topics covered in this...
3年前

React Query - DevTools
Playful Programming's Atom Feed
Hey Folks, In this post, you'll learn how to debug and check whatever happens in your React Query...
3年前

Manage GitHub Issues from Visual Studio Code
Playful Programming's Atom Feed
Stop! 🛑 You no longer need to open GitHub and search 🔎 for that issue you were assigned to. You can...
3年前

OramaSearch, a full-text search in your React application
Playful Programming's Atom Feed
In some applications, you need to create a full-text search to improve the search of data. In some...
3年前

React Query - useIsFetching & useIsMutation
Playful Programming's Atom Feed
Hey folks, Today it is time to talk about two hooks exposed by react query: useIsFetching and...
3年前

Code Review on a GitHub Pull Request from Visual Studio Code
Playful Programming's Atom Feed
Doing Code Review 📖 on a GitHub Pull Request without leaving Visual Studio Code? Easy! 👇 Last week...
3年前

My LinkedIn Course "Learning GitHub" by numbers
Playful Programming's Atom Feed
Introduction A few months ago I started to talk about my journey as a Technical Instructor...
3年前

Advice for New Twitch Streamers
Playful Programming's Atom Feed
Twitch streaming can be fun and fulfilling, but has various roadblocks in the way for newcomers. Here's how you can overcome them and grow your Twitch channel.
3年前

What is Object Mutation in JavaScript?
Playful Programming's Atom Feed
When working with objects, you may hear the term "mutation". What is that? How does it work? How do let and const REALLY differ from each other? This and more:
3年前

Debugging Multiple .NET Projects in VS Code
Playful Programming's Atom Feed
It is quite common, especially in medium/large projects, to have to run multiple projects in debug...
3年前

Create a Pull Request from Visual Studio Code on GitHub
Playful Programming's Atom Feed
Did anyone say the word Productivity? We're all used to the GitHub User Interface so we usually...
3年前

React Query - useMutation
Playful Programming's Atom Feed
Hey Folks, It's time to talk about the second core concept in React Query, mutation. What is...
3年前

What the FORK are you doing?!
Playful Programming's Atom Feed
How to Fork a repository on GitHub is as easy as pressing a button, we take this for granted, but why...
3年前

Mastering JavaScript's `this` keyword using `bind`
Playful Programming's Atom Feed
JavaScript's `this` keyword is imperative when dealing with classes in JavaScript, but can introduce some headaches. Let's solve that using the `bind` method
3年前

React Query - useQuery
Playful Programming's Atom Feed
Hey Folks, It's time to take a journey on react query. Don't you know it? Perfect, you are in the...
3年前

Do you know JavaScript?
Playful Programming's Atom Feed
Do you know Javascript? The language we all love has some weird and sometimes unexpected...
3年前

The Awesome Side of GitHub - Awesome Lists
Playful Programming's Atom Feed
Free resources for developers, board games and chess... what do they have in common? You can find...
3年前

Deep Dive: Writing a Twitch Chat Bot in Bash
Playful Programming's Atom Feed
bash? You mean the terminal where I do my git commands?
3年前

Making the Case for Signals in JavaScript
Playful Programming's Atom Feed
Amidst all the conversation around Signals the recent weeks, I have forgotten to talk about arguably...
3年前

Functions Are Killing Your React App's Performance
Playful Programming's Atom Feed
If you've ever built a production React application, you've likely ran into various performance problems along the way. Here are the most common and how to fix them.
3年前

React vs Signals: 10 Years Later
Playful Programming's Atom Feed
How does the old Winston Churchill quote go? Those who fail to learn from history are doomed to...
3年前

Why I love GitLens in my VsCode - Interactive Rebase
Playful Programming's Atom Feed
One of the processes I typically do in my daily work is interactive rebase. I commit a lot, and then...
3年前

The Evolution of Signals in JavaScript
Playful Programming's Atom Feed
There has been some buzz recently in the frontend world around the term "Signals". In seemingly short...
3年前
How we built This is Learning Community
Playful Programming's Atom Feed
Photo by Clay Banks on Unsplash This is Learning was started in 2020 by @layzee. I presented how we...
3年前

Playwright - Parametrize tests
Playful Programming's Atom Feed
Hey folks, Today it's time to speak about how to parametrize tests with Playwright. There are cases...
3年前

Manage multiple Node.js versions with NVM
Playful Programming's Atom Feed
When you work on multiple projects, and this happens quite often if you're into Open Source, you will...
3年前

Why I love GitLens in my VsCode - Blame & Compare
Playful Programming's Atom Feed
When you work with git, you want to get info about commits and who changed the codebase...
3年前

Formik Works Great; Here's Why I Wrote My Own
Playful Programming's Atom Feed
Formik works incredibly, but I have some concerns with it. As a result, I ended up writing my own library called "HouseForm" to compete. Here's why.
3年前

Playwright - Not just for Frontend
Playful Programming's Atom Feed
In this path with Playwright we spent a lot of time speaking about e2e tests and component testing in...
3年前

Why I love GitLens in my VsCode - First Steps
Playful Programming's Atom Feed
In my daily routine, I work with git, and I suppose it's the same for you. I know all the standard...
3年前

Move Commits Between Branches in Git - 3 Different Methods 🍒
Playful Programming's Atom Feed
Why do you need to move commits between branches? Let's imagine this scenario: You're so happy, the...
3年前

100% Code Coverage is a Lie 🎯
Playful Programming's Atom Feed
On a project I finally hit 100% Code Coverage 🎯 what could go wrong now? I tested ALL lines of my...
3年前
Playwright - Parallelism and sharding
Playful Programming's Atom Feed
Hey Folks, Today I'll speak about parallelism and sharding with Playwright, so don't waste time and...
3年前

Testing Angular routing components with RouterTestingHarness, provideLocationMocks, and provideRouter
Playful Programming's Atom Feed
Learn how to implement integrated routing component tests with RouterTestingHarness, provideRouter, and provideLocationMocks.
3年前

Creating project templates for Android Studio
Playful Programming's Atom Feed
Showing how we can build a Android Studio plugin to provide our own project templates in the Android Studio new project wizard
3年前

Playwright - Visual Comparisons
Playful Programming's Atom Feed
Hi there, Today I want to speak about Visual comparisons with Playwright. In some projects is...
3年前

Autocomplete and Artificial Intelligence in your Terminal
Playful Programming's Atom Feed
I get asked on every single video what is this autocomplete I’ve got on my terminal, and the answer...
3年前

Common TestBed Pitfalls in Angular Component Testing
Playful Programming's Atom Feed
When talking about unit testing, the first definition that comes into our head is to test the minor...
3年前

Angular 15: what happened to environment.ts
Playful Programming's Atom Feed
TL;DR: Nothing! Angular 15 simply doesn't ship anymore environment files by default. You...
3年前

Playwright - Mock API
Playful Programming's Atom Feed
Hi there, Today I want to talk about how to mock API with Playwright. To do that, I add a new...
3年前

Nx Module Federation bad Angular routing
Playful Programming's Atom Feed
While puzzling around with Nx' Webpack Module Federation support, I stumbled upon an issue that...
3年前

Copilot Voice - You can now TALK with GitHub CopilotX!
Playful Programming's Atom Feed
I heard about "Hey, GitHub" (now called Copilot Voice) for the first time last November, in a very...
3年前

Playwright - CI
Playful Programming's Atom Feed
Hi there, Today I want to speak about integrating Playwright in your GitHub action CI. So don't waste...
3年前

Async pipe is not pure 🤯
Playful Programming's Atom Feed
Learn how angular's async pipe is not pure and how that's not a problem, by building async pipe from scratch.
3年前

Async pipe is not pure 🤯
Playful Programming's Atom Feed
Yes, that’s normal! Why? Because of how Angular does change detection under the hood! To better...
3年前

What Happened to UUIDv2?
Playful Programming's Atom Feed
You may have heard that "UUIDv2 is bad". Maybe you've never even heard of them and thought UUIDs went from v1 to v3. Why is that? What did UUIDv2 do wrong?
3年前

What are UUIDs?
Playful Programming's Atom Feed
When discussing ID generation in software, you may have heard of a UUID. What are they? Are they useful? What are the different versions? Let's explore that.
3年前

⏪ 4 Ways to Undo a Git Commit - Amend vs Reset
Playful Programming's Atom Feed
I'm quite sure all of these happened to you at least once: You committed a change with the wrong...
3年前

Material forms: mat-checkbox disabling controls
Playful Programming's Atom Feed
In previous article we analyzed a generic workflow for the creation of a directive capable of adding...
3年前

Playwright - Components testing
Playful Programming's Atom Feed
Hi there, Today I'll speak about a beta feature in Playwright: Components. The team is building a...
3年前

Manually Trigger a GitHub Action with workflow_dispatch
Playful Programming's Atom Feed
There's a plethora of triggers you can use to run a GitHub Action. You can run it on a schedule, on a...
3年前

Visual Studio Code - Tips & Tricks - Profile
Playful Programming's Atom Feed
Intro During my daily work, sometimes I have to switch between different projects: backend...
3年前

Angular forms: checkbox disabling controls
Playful Programming's Atom Feed
How to write a directive to add it. And why you shouldn't. If as a coder you...
3年前

AWS Amplify: Let's add some unit tests into our pipeline
Playful Programming's Atom Feed
In the previous article, we saw how to set up a pipeline with AWS Amplify, but as long as things are...
3年前

A Linux C++ programmers adventure in improving Windows CI on GitHub actions
Playful Programming's Atom Feed
TL;DR; Ninja is available directly in the windows images Use to set up the MSVC environment for buildingwith Ninja. You need nested quotes for CX...
3年前

My GitHub Contribution History (2014-2023)
Playful Programming's Atom Feed
Green squares on GitHub aren't just a mere activity indicator. Move a step back and look at the...
3年前

Playwright - Fixtures
Playful Programming's Atom Feed
Hey there, Today I want to speak about Fixtures, a vital friend if you're going to work with...
3年前

Running Automated Tests with GitHub Actions
Playful Programming's Atom Feed
GitHub Actions can bring your project to life, for real! If you never used them, this video tutorial...
3年前

Angular Internals: How Reactivity Works with Zone.js
Playful Programming's Atom Feed
Reactivity is core to JavaScript frameworks; changing data should cause a re-render. How does this work in Angular? Let's dive into the Angular source code to see.
3年前

AnimationRenderer: listening and playing
Playful Programming's Atom Feed
In the first two articles of this series we learned how AnimationRendererFactory generates its...
3年前

CI/CD pipelines with AWS Amplify
Playful Programming's Atom Feed
The company I work for is an AWS partner and it is natural that many of the applications we build are...
3年前

JavaScript Frameworks - Heading into 2023
Playful Programming's Atom Feed
The wonderful thing about glimpsing into the future is that the path is never completely clear. We...
3年前

Playwright - Generate tests' code
Playful Programming's Atom Feed
Hi there, today you will learn how to generate the code for your tests. First of all, you have to...
3年前

Supercharge your Firebase App Development using NX
Playful Programming's Atom Feed
One of the pain points that I am sure some of us have come across when using Firebase projects that...
3年前

Angular registering animation triggers
Playful Programming's Atom Feed
This post keeps digging into AnimationRendererFactory creation routine, with a focus on triggers...
3年前

Who is the GOAT? 🔮 Vercel Edge Config stores my answer
Playful Programming's Atom Feed
A few weeks ago Vercel released Edge Config, a new feature available to everyone so I tried it...
3年前

Playwright - debug your tests
Playful Programming's Atom Feed
Debug your tests One of the most popular things done by developers is to debug the code...
3年前

AnimationFactory: how Angular creates animation renderers
Playful Programming's Atom Feed
This article is intended to be the beginning of a short series about Angular transition animations...
3年前

How to run a GitHub Action in local - LIVE DEMO
Playful Programming's Atom Feed
GitHub Actions are so cool, you can automate your workflow for free and they’re really easy to set...
3年前

Fastify on Azure Web App is super straightforward
Playful Programming's Atom Feed
Today I'll show you step by step how easy it is to deploy a Fastify server on Azure Function. ...
3年前

My year in review
Playful Programming's Atom Feed
Photo by Mantas Hesthaven on Unsplash This is going to be challenging to write. This year felt like...
3年前

Playwright - How to write tests
Playful Programming's Atom Feed
What are you going to learn in this post? In this post, you will learn how to write tests...
3年前

How to Close a Pull Request - Merge Commit vs Squash vs Rebase on GitHub
Playful Programming's Atom Feed
When Merging a Pull Request on GitHub, you mainly have three options, with a merge commit, squash or...
3年前

VSCode & GitHub Codespaces for my Python playground
Playful Programming's Atom Feed
Today I did some experiments with Python, I decided to do this activity with GitHub Codespaces...
3年前

Chat GPT wrote THIS | The Power of Open Source: How Your Contributions Can Make a Difference
Playful Programming's Atom Feed
Everyone is going crazy for ChatGPT so I wanted to give it a try myself. I'm not the best person to...
3年前

Playwright - Let's start
Playful Programming's Atom Feed
In the last period, in the frontend ecosystem, a new e2e tool has come up and it has started to...
3年前

VSCode: my 5 vital extensions to be productive
Playful Programming's Atom Feed
Hi 👋 today I want to share with you 5 extensions that are vital in my daily job. I don't like too...
3年前

4 Beginner Friendly Open Source Projects
Playful Programming's Atom Feed
If you're familiar with my content, you know I often talk about how to find new Open Source projects...
3年前

How To Use Functional Router Guards in Angular
Playful Programming's Atom Feed
Today I was talking with my friend Leifer, and he asked me some about Functional Guards in Angular...
3年前

Be aware of your codebase with Nx
Playful Programming's Atom Feed
Preface Is your team aware of the relations between your modules? Is a team member able to...
3年前

Tidy up your machine with Visual Studio Code Dev Containers
Playful Programming's Atom Feed
I recently discovered the Visual Studio Code - Dev Containers feature and I thought to share with you...
3年前

Resolving Merge Conflicts with Visual Studio Code
Playful Programming's Atom Feed
Today I launched my Discord server to talk about Open Source and Web Development, feel free to join:...
3年前

YAML collections: Sequences and mappings
Playful Programming's Atom Feed
A quick overview of YAML sequences (arrays/lists) and mappings (hash maps/associative arrays).
3年前

Conferences = Good vibes
Playful Programming's Atom Feed
After two days of conference I'm waiting for the flight to go home and I thought to share with you my...
3年前

🔴 From being super shy, to my first LIVE Coding session
Playful Programming's Atom Feed
I'll share the link later, but let me spend a few words on how I got to this point first! This isn't...
3年前

Use GitHub Desktop to open your first Pull Request
Playful Programming's Atom Feed
Contributing to Open Source projects that are hosted on GitHub has a barrier: git. Some fresh...
3年前

Feature Flags with Azure and Angular
Playful Programming's Atom Feed
Recently I'm developing an Angular application, but with the increasing complexity and pressing...
3年前

Working with GitHub Actions from your best editor
Playful Programming's Atom Feed
Hi folks, today I'm going to speak about another cool VsCode Extension. In many projects, I love...
3年前

Client-side Routing without the JavaScript
Playful Programming's Atom Feed
It's been a while since I wrote a piece about a SolidJS technology innovation. It's been two years...
3年前

Let's keep it green ✅
Playful Programming's Atom Feed
Working as a consultant I often carry out refactoring activities. I want to talk about that in this...
3年前

Working with Github from your best editor
Playful Programming's Atom Feed
In my daily work routine, many times I have to switch from VsCode and Github to create a PR, review a...
3年前

Head Start With Standalone Components In Angular
Playful Programming's Atom Feed
Since version 14, we can play with Standalone Components as an easy way to build module-less...
3年前

Some cool GitHub features to enhance your development experience
Playful Programming's Atom Feed
Hello everyone, Leonardo here! Today we talk about GitHub and some cool features it offers to...
3年前

Validate your data with Zod
Playful Programming's Atom Feed
Preface Many developers don't know very well which is the line between Javascript and...
3年前

In which phase is your software?
Playful Programming's Atom Feed
I recently gave a talk on testing and I focused the speech on the life cycle of a successful...
3年前

Working With Lazy Loading Modules and Preload Routing Strategies In Angular
Playful Programming's Atom Feed
When we build an Angular application with multiple modules in a large app, the main script file...
3年前

🕵️♂️ Learn git alias and boost your productivity
Playful Programming's Atom Feed
Setting up an Alias Repeating the same git commands over and over again can be such a...
3年前

Open Visual Studio Code from the Terminal
Playful Programming's Atom Feed
Ok, it's not a super secret feature, but I noticed some of my colleagues and friends do not use it at...
3年前

How to contribute to Visual Studio Code on GitHub
Playful Programming's Atom Feed
Do you want to add a new feature on Visual Studio Code, or fix an existing bug? Here’s how to do...
3年前

The Power of Mentoring
Playful Programming's Atom Feed
It's been some time since I started my extra-work FREE mentoring path through the Mentorcruise...
3年前

How to find Code Smells - with examples
Playful Programming's Atom Feed
What is a Code Smell? Let me provide you with my personal definition and some examples to...
3年前

Why Z-Index Isn’t Working: CSS Stacking Contexts
Playful Programming's Atom Feed
z-index is a CSS property that helps control the z-axis height of an element, but it often doesn't seem to work. Why is that? How does it REALLY work?
3年前

Not feeling ready for Open Source?
Playful Programming's Atom Feed
One of the major blockers for newcomers to Open Source is that unpleasant impression of not feeling...
3年前

5+1 Basic GIT Commands you Need for Hacktoberfest 2022
Playful Programming's Atom Feed
Hacktoberfest is starting tomorrow!! Are you ready?? In case you're quite new to git, I will try to...
3年前

It’s ok to use function calls in Angular templates!
Playful Programming's Atom Feed
“You should never use function calls on Angular templates!” — That’s what you will see all over the...
3年前

How to find a repository for Hacktoberfest 2022
Playful Programming's Atom Feed
Hacktoberfest will start in a few days, are you ready?? Let me check my gear... git updated to the...
3年前

How to Build Compound Components in Angular
Playful Programming's Atom Feed
When we need to have different versions and use cases and make it flexible to the changes, however,...
3年前

Dynamic Island Animations with Popmotion in Angular
Playful Programming's Atom Feed
The introduction of dynamic islands in iPhone 14 piqued the interest of many designers and developers...
3年前

🧲 Sticky Scroll in vscode
Playful Programming's Atom Feed
Classes and methods might get really long, making you lose context of what the code is about. Visual...
3年前

Hacktoberfest 2022 is almost there! Get ready!
Playful Programming's Atom Feed
September is almost over and Hacktoberfest is to begin soon! But what is Hacktoberfest? It is not an...
3年前

Tutorials are Wrong
Playful Programming's Atom Feed
Is the title a clickbait? Nope, let me explain. Learning new stuff is amazing and courses and...
3年前

Introduction to Angular Language Service
Playful Programming's Atom Feed
Working with Angular has its gotchas, but what makes it really a joy to start off, is its language...
3年前

Qwik: web revolution by default
Playful Programming's Atom Feed
A few weeks ago I decided to create an e-commerce storefront based on real GraphQL APIs to sell...
3年前

💰 Get paid while contributing to Open Source
Playful Programming's Atom Feed
What if I tell you that you get paid in real money - with Open Source? Wait, that's not a scam or a...
3年前

Open Source is not only writing code 🙅♂️🧑💻
Playful Programming's Atom Feed
You can find a video version of this article on my YouTube channel. Did you know that you can...
3年前

The local component scope of standalone Angular components
Playful Programming's Atom Feed
The local component scope of a standalone Angular component is managed by listing declarable dependencies in the Component.imports metadata option.
3年前

Angular Revisited: Standalone Angular applications, the replacement for NgModules
Playful Programming's Atom Feed
The future is now, old man. Standalone Angular applications are now a viable alternative to classic NgModule-based Angular applications.
3年前

Resumability, WTF?
Playful Programming's Atom Feed
Maybe you've heard the term Resumability thrown around recently. Maybe someone gushing over Miško...
3年前

How to find 🔎 an Open Source project to contribute to
Playful Programming's Atom Feed
You can find a video version of this article on my YouTube Channel. Introduction Opensource...
3年前

Sharing Lifecycle Methods Between Angular Components
Playful Programming's Atom Feed
Sharing code between components in Angular is TOUGH. Here's one way you can do so by utilizing base components that you extend - and why you shouldn't use them.
3年前

Minecraft Data Pack Programming: Scoreboard Usage
Playful Programming's Atom Feed
Learn data pack development in Minecraft - using player scoreboards, variables, and operations!
3年前

Weighted 🏋️ Random generator in Typescript (with Test Driven Development 🧪)
Playful Programming's Atom Feed
You can find a video version of this article on my YouTube Channel. Intro Today we're...
3年前

Understanding Excess Property Checking in Typescript
Playful Programming's Atom Feed
This post was first posted in my newsletter All Things Typescript focused on teaching developers how...
3年前

⏰ How to create your First Pull Request on GitHub in less than 60 seconds!
Playful Programming's Atom Feed
Intro Let's see the steps you need from zero to creating your first Pull Request. If...
4年前

The JavaScript Paradox
Playful Programming's Atom Feed
I'm not sure if there's ever been a language more loathed, yet so widely used, as JavaScript. I'm...
4年前

♻️ Delete unused node_modules in a second and enjoy some free space!
Playful Programming's Atom Feed
Intro In this article I'll tell you about a cool tool I just found on npm, called npkill,...
4年前

⚙ This new GIT push config will save you lot of frustration!
Playful Programming's Atom Feed
If you have 59 seconds and in particular you're also on mobile, you might enjoy watching the YouTube...
4年前

[Video] How Open Source can change your life
Playful Programming's Atom Feed
Hello everyone! I recently posted an Article about benefits and advantages from contributing in Open...
4年前

Vue Composition API Inspector
Playful Programming's Atom Feed
A peek under the hood of Vue compilation. See how Vue interpretes TypeScript
4年前

JavaScript Fundamentals: Functions Are Values
Playful Programming's Atom Feed
JavaScript functions are widely used in web development... but do you KNOW them? Let's explore the fundamentals and how they can be used in unorthodox ways
4年前

🔢 Show trello numbers on cards!
Playful Programming's Atom Feed
TL;DR: The video was originally posted on YouTube, for a higher-quality version you can watch it...
4年前

Python None
Playful Programming's Atom Feed
Interpreted languages have various footguns. Let's explore one such footgun I ran into recently with Python and how I fixed it.
4年前

My Course on Angular Getting Started
Playful Programming's Atom Feed
Photo by Nick Morrison on Unsplash I had planned an Angular Course for the community for a very long...
4年前

Update your GitHub profile with your chess.com games with a GitHub Action
Playful Programming's Atom Feed
When navigating through GitHub you may land on awesome profiles with "live" content being updated...
4年前

Project Management for Individuals
Playful Programming's Atom Feed
Having the ability to structure your projects (and these don't exclusively have to be programming related) gives you a massive advantage when it comes to being organised, and keeping your life organised.
4年前

Why you should be using it Test Driven Development (TDD)
Playful Programming's Atom Feed
This post is an extract from my new newsletter The Pragmatic Dev focused on covering developer tools,...
4年前

How to ask better questions
Playful Programming's Atom Feed
We all ask questions from time to time, so here are some of my favourite tips when it comes to how to improve the quality of your questions.
4年前

Mutable vs Immutable Data Types
Playful Programming's Atom Feed
Using mutable data types can be dangerous in multi-threaded applications. To help that we can make sure of thread safer immutable data types
4年前

What is Primitive obsession and how to fix it
Playful Programming's Atom Feed
Primitive obsession is an extremely common code smell, and when identified and fix, it greatly helps to reduce the amount of bugs that you may find in your code.
4年前

I created a VS Code Extension - NPM Imported Packages Lens
Playful Programming's Atom Feed
When you read JavaScript/Typescript code, have you ever encountered an imported package and wanted to...
4年前

The Cost of Consistency in UI Frameworks
Playful Programming's Atom Feed
Sometimes there are problems that have no universally good solutions. There is some tradeoff to be...
4年前

When to use HashMap instead of Loop
Playful Programming's Atom Feed
Learn to use when to use HashMap instead of Loop
4年前

AngularJS vs Angular
Playful Programming's Atom Feed
NOTE As I write this blog post, the AngularJS has already reached EOL. It's been 10 months now. ...
4年前

Minecraft Data Pack Programming: Command Syntax
Playful Programming's Atom Feed
Learn the beginnings of data pack development in Minecraft - using positions, entity selectors, and conditional logic in commands!
4年前

Minecraft Data Pack Programming: Introduction
Playful Programming's Atom Feed
Learn the beginnings of data pack development in Minecraft - using commands and functions to add custom behavior from scratch!
4年前

A Guide to Python's Secret Superpower: Magic Methods
Playful Programming's Atom Feed
Python has a secret superpower with a similarly stupendous name: Magic Methods. These methods can fundamentally change the way you code with Python...
4年前

Patterns for Building JavaScript Websites in 2022
Playful Programming's Atom Feed
Deciding on the approaches and tools to use to build on web these days can be a challenging prospect....
4年前

Why I prefer Vue over Angular: DOM Pollution
Playful Programming's Atom Feed
Angular differs from Vue in some keys ways, including its "Incremental rendering". This shift introduces something I call "DOM Pollution"; its why I prefer Vue over Angular.
4年前

Windows Subsystem for Linux
Playful Programming's Atom Feed
Utilize the best of both worlds — Windows and Linux — without having to dual boot. Windows Subset for Linux (WSL) lets you run software designed for Linux in Windows.
4年前

Marko for Sites, Solid for Apps
Playful Programming's Atom Feed
I've been sitting on writing this article for 2 years. In my heart this was the article I was going...
4年前

Island Architecture
Playful Programming's Atom Feed
There are different ways to build a website. One of them was Multi-Page Applications (MPAs) which...
4年前

The Complete Guide to Regular Expressions (Regex)
Playful Programming's Atom Feed
A Regular Expression – or regex for short – is a syntax that allows you to match strings with specific patterns. Think of it as a suped-up text search
4年前

How GitHub is Improving Developer Experience
Playful Programming's Atom Feed
Photo by Annie Spratt on Unsplash In the last couple of years, the number of developers contributing...
4年前

Performance: Choosing The Right Tools...
Playful Programming's Atom Feed
Before I wrote this, I was in the middle of writing a Twitter thread about performance on the web and...
4年前

How Caching Data in Angular with Rxjs
Playful Programming's Atom Feed
When we build an app, some data like the menu and options don't change with frequency. The best...
4年前

Incremental Static Regeneration for Angular
Playful Programming's Atom Feed
If you are reading this, you've probably heard of SSR (Server-side rendering), SSG (Static site...
4年前

Using Pipes to Transform Data in Angular
Playful Programming's Atom Feed
Angular help us to convert values for display using Pipes; the pipes are a way to transform input...
4年前

Live Reloading in Golang using Air
Playful Programming's Atom Feed
Live reloading changes to our codebase is one of the core tenants of a great developer experience....
4年前

Conquering JavaScript Hydration
Playful Programming's Atom Feed
That is an ambitious title for an article. An ambitious goal in general. Hydration, the process of...
4年前

Visual Studio Code - Tips & Tricks - Snippets
Playful Programming's Atom Feed
If you used to adopt Visual Studio in the past probably you already know something about...
4年前

Why and How we migrated to Nx from Angular CLI
Playful Programming's Atom Feed
Photo by Luca Bravo on Unsplash Note: Due to NDA, we won't mention the client's name. We finished...
4年前

CSS Animation Events in Angular
Playful Programming's Atom Feed
CSS animations emit events that we can listen to using Javascript. There are slight differences in...
4年前

How to handle and catch errors in Rxjs
Playful Programming's Atom Feed
In Rxjs, when we work with observables handling the errors is a bit confusing for beginners because...
4年前

const assertions in Typescript
Playful Programming's Atom Feed
In Typescript 4.3, typescript introduced the const assertions. const assertions are used to tell the...
4年前

Rules of React's useEffect
Playful Programming's Atom Feed
useEffect is prolific in React apps. Here are four rules associated with the hook and in-depth explanations of why they're important.
4年前

The Tuple Type in Typescript
Playful Programming's Atom Feed
A tuple type is an array with a predefined length and predefined types in each index position in the...
4年前

Visual Studio Code - Tips & Tricks - Command Palette and its friends
Playful Programming's Atom Feed
Visual Studio Code is one of the best code editors in this moment. Its Palette has many features but...
4年前

Composition and inheritance in Angular
Playful Programming's Atom Feed
When we start to build the application and feel the code duplicated are in several places, our first...
4年前

Configure Prettier and ESLint with Angular
Playful Programming's Atom Feed
Everyone wants to write code in a fast bug-free way without thinking about its style most of the...
4年前

Resumable JavaScript with Qwik
Playful Programming's Atom Feed
When Misko Hevery (creator of AngularJS) approaches you to look at his new framework, well, you stop...
4年前

How to share data between components in Angular
Playful Programming's Atom Feed
When we build components in an application, we maybe need to share or send data from parent to child...
4年前

Typescript - (ReadOnly)NotEmptyArray
Playful Programming's Atom Feed
Arrays are already well described in typescript, but sometimes we need to be more strict with our...
4年前

Doomsday Rule
Playful Programming's Atom Feed
In this blog I talk about the Doomsday Rule, how it works, how to put it into code then how to make a program that tests you.
4年前

It's Prisma Time - Seeding
Playful Programming's Atom Feed
Hello Folks 👋 Today we'll see how to handle seed with Prisma. Seeding allows you to re-create...
4年前

Why Efficient Hydration in JavaScript Frameworks is so Challenging
Playful Programming's Atom Feed
Hydration is the name given to the process in JavaScript frameworks to initializing the page in the...
4年前

It's Prisma Time - Migrations
Playful Programming's Atom Feed
Hello Guys 👋, Today it's time to speak about migrations. Migrations in Prisma are managed by Prisma...
4年前

It's Prisma Time - Execute your own queries
Playful Programming's Atom Feed
Hello Folks 👋 Today it's time to see how we can execute our own queries. In prisma we can run two...
4年前

Why React 18 Broke Your App
Playful Programming's Atom Feed
React 18's internal changes improved a lot, but may have broken your app in the process. Here's why and how you can fix it
4年前

It's Prisma Time - Logging
Playful Programming's Atom Feed
Hi Guys 👋 Today we are going to see how to enable logging in Prisma, so don't waste time and let's...
4年前

The Return of Server Side Routing
Playful Programming's Atom Feed
Return? It never went away. Or at least that is what some smug "told you so" is going to say. But for...
4年前

It's Prisma Time - Transactions
Playful Programming's Atom Feed
Hello Guys 👋 Today it's time to speak about transactions. Transactions are a pillar of the database...
4年前

A Better Way To Code: Documentation Driven Development
Playful Programming's Atom Feed
Test Driven Development is often taught to improve a your workflow; I present Documentation Driven Development as an alternative approach.
4年前

How to get started with .NET
Playful Programming's Atom Feed
Did you know that 35% of developers are using .NET? This is a great article to read to get started with .NET.
4年前

It's Prisma Time - Aggregate and GroupBy
Playful Programming's Atom Feed
Welcome back Folks 👋 Today we are seeing how to aggregate and group data. Let's start from the...
4年前

It's Prisma Time - Pagination
Playful Programming's Atom Feed
Hi Guys 👋 Today we are going to see how to paginate our results. So don't waste time and let's...
4年前

How to Mock dependencies with Jest
Playful Programming's Atom Feed
When we want to test our code, some things have dependencies inside, and you don't want to call these...
4年前

It's Prisma Time - Select
Playful Programming's Atom Feed
Welcome back Guys, Today it's time to get our record using the select command. Let's start with a...
4年前

How to Upgrade to React 18
Playful Programming's Atom Feed
React 18 introduces some awesome features that I'm sure you can't wait to try! Here's how you can get started with React 18 today!
4年前

It's Prisma Time - Update
Playful Programming's Atom Feed
Hi Folks 👋 Today it's time to learn something about the update operation, so don't waste time and...
4年前

It's Prisma Time - Delete
Playful Programming's Atom Feed
Hi Guys 👋 today we are going to see the delete operation. Before moving to the delete operation, in...
4年前

Writing Tests for MongoDB using Dockertest in Go
Playful Programming's Atom Feed
Dockertest enables us to use Docker to create containers to run our tests against. With dockertest,...
4年前

Type Assertions in TypeScript - why not?
Playful Programming's Atom Feed
A while back, I had a look at why you should avoid using the any type and instead use the unknown...
4年前

It's Prisma Time - Insert
Playful Programming's Atom Feed
Welcome Guys, Today it's time to add some records to the database 😁 so don't waste time and get your...
4年前

It's Prisma Time - Create Relations
Playful Programming's Atom Feed
Hi Folks 👋 today I'll show you how to create relations among your entities. So don't waste time and...
4年前

How I made workplace toxic
Playful Programming's Atom Feed
Photo by Kyle Nieber on Unsplash It's been six years since I left my job at a startup where I worked...
4年前

Migrate from Jasmine to Jest and Testing Library in Angular
Playful Programming's Atom Feed
Angular, by default, comes with Jasmine; it is a great testing framework. I spent one year and a half...
4年前

It's Prisma Time - Create Db
Playful Programming's Atom Feed
Hi Guys 👋 welcome back. Finally, today it's time to create our database, so don't waste time, and get...
4年前

Web Components 101: History
Playful Programming's Atom Feed
Web components have had a long history to get where they are today. Let's look back to see where they came from & their immense growth!
4年前

It's Prisma Time - Create Table
Playful Programming's Atom Feed
Hello Folks 👋 and welcome back to this series, today it's time to create your first table with...
4年前

It's Prisma Time - Setup
Playful Programming's Atom Feed
Hi Guys, welcome to the second article of this series. Today I'll show you how to setup a project...
4年前

Why all the Suspense? Understanding Async Consistency in JavaScript Frameworks
Playful Programming's Atom Feed
I had someone recently reach out to me to ask "What is Suspense in the general sense?" They said all...
4年前

It's Prisma Time - Introduction
Playful Programming's Atom Feed
Hi Folks 👋 and welcome back, Today I want to start a new series about Prisma. But before starting I...
4年前

Web Components 101: Framework Comparison
Playful Programming's Atom Feed
While web components can be used standalone, they're paired best with a framework. With that in mind, which is the best and why?
4年前

From Docker to Docker compose way!
Playful Programming's Atom Feed
If you work with docker, typing for every action is not a good deal, and sometimes it can be a...
4年前

The Quest for ReactiveScript
Playful Programming's Atom Feed
This article isn't going to teach you about the latest trends in frontend development. Or look in...
4年前

Animate your Angular App using Motion One
Playful Programming's Atom Feed
Motion One is a new animation library built on the Web Animations API. If you have used Popmotion or...
4年前

Template String Types as Discriminants in Typescript 4.5
Playful Programming's Atom Feed
Typescript 4.5 was just released and one of the features that stood out to me is the Template String...
4年前

Docs, Where Can We Do Better?
Playful Programming's Atom Feed
My personal approach to writing docs, mainly aimed at frameworks and the like.
4年前

Understanding Transitional JavaScript Apps
Playful Programming's Atom Feed
Transitional JavaScript Apps? What? Well honestly I'm not sure I know completely myself. It is an...
4年前

Web Components 101: Lit Framework
Playful Programming's Atom Feed
Google pushed for web components, sure, but they didn't stop there. They also went on to make an amazing framework to help build them: Lit!
4年前

Docker from zero to survive
Playful Programming's Atom Feed
Be ready to deploy your apps with Docker is a one of higher-demand knowledge today, and this article...
4年前

Simplifying Angular testbed setup by converting to synchronous test hooks
Playful Programming's Atom Feed
Surprising to some, calling TestBed.compileComponents is unnecessary unless you're Google.
4年前

Moving Material Dialog Lifecycle Into NgRx Effects
Playful Programming's Atom Feed
Photo by John Bakator on Unsplash NgRx Effects Effects are a powerful model for handling...
4年前

How to simplify and organize imports in Typescript
Playful Programming's Atom Feed
Sometimes we have a long list of imports, with files that come from the same place, it makes our...
4年前

How to use Angular resolvers to prefetch beers to the party
Playful Programming's Atom Feed
When we go to a party, I love to have all beers ready to drink and take one, but sometimes take time...
4年前

My first year as Independent Consultant
Playful Programming's Atom Feed
Photo by Callum Shaw on Unsplash Last year around August 2020, I decided to leave my full-time job...
4年前

JavaScript Framework TodoMVC Size Comparison
Playful Programming's Atom Feed
Size in JavaScript Frameworks is actually a pretty tricky thing to estimate. Even nailing down the...
4年前

Animation Inspector: How DevTools can help when Creating Animations
Playful Programming's Atom Feed
Different browsers come with a different set of dev tools to help developers. When it comes to...
4年前

Improving Angular tests by enabling Angular testing module teardown
Playful Programming's Atom Feed
Introducing the ModuleTeardownOptions#destroyAfterEach option for the Angular testbed.
4年前

RxJS - Marble Testing
Playful Programming's Atom Feed
Hello Folks 👋! Today it's time to speak about testing and how to test the code when we use...
4年前

RxJS - Subjects
Playful Programming's Atom Feed
What's a Subject Luca? And why today do you want to speak about subjects? Is there a mistake in the...
4年前

How to control global objects in Angular.
Playful Programming's Atom Feed
When we use external libraries, it is very common to declare a global object and use it. But the...
4年前

GitHub Copilot: Helpful, But Not a Replacement
Playful Programming's Atom Feed
GitHub Copilot is an amazing tool that I think will drastically improve the way that I code. But it won't replace me. Here's why.
4年前

RxJS - Custom Operators
Playful Programming's Atom Feed
Hi Folks 👋 after many articles in which I have illustrated the different types of operators already...
4年前

RxJS - Multicast Operator
Playful Programming's Atom Feed
Hi Folk 👋, in the previous articles we've seen that when we subscribe to an observable, the...
4年前

RxJS - Error Handling Operators
Playful Programming's Atom Feed
One of the best practice in our work is handle the errors, so today I'll show you some operators in...
4年前

How to use Angular content projection to prepare a burger
Playful Programming's Atom Feed
One of the easiest things is a burger. The burger has the same base but changes its content, so let's...
4年前

Better Types using Discriminated Unions in TypeScript
Playful Programming's Atom Feed
How we define our types in Typescript impacts how effective typescript is at warning us when we make...
4年前

RxJS - Conditional & Mathematical Operators
Playful Programming's Atom Feed
Hi Guys and welcome back, today I'll illustrate you two simple types of the pipeable operators:...
4年前

RxJS - Utility Operators
Playful Programming's Atom Feed
Welcome back Guys, Today I'll show you some utility operators. Let's start :) tap Used to...
4年前

Animate your Angular App using Animate.css
Playful Programming's Atom Feed
Most of you probably have heard of Animate.css. It is an open-source CSS animation library with lots...
4年前

RxJS - Join Operators
Playful Programming's Atom Feed
Hi Guys and Welcome Back, Today I'll speak about the Join Operators. Some of these operators are...
4年前

RxJS - Transformation Operators
Playful Programming's Atom Feed
Welcome back, Today I'll speak about the Transformation Operators. These operators are used to modify...
4年前

My Lessons learned as Software Engineer
Playful Programming's Atom Feed
Photo by Christin Hume on Unsplash My friend Vinit Shahdeo asked me to share my experience as...
4年前

JavaScript vs JavaScript: Round 2. Fight!
Playful Programming's Atom Feed
After I finished the first article I wasn't sure how long it would be before we'd have enough topics...
4年前

RxJS - Filtering Operators
Playful Programming's Atom Feed
Welcome back Guys, Today we'll start with the Filtering Operators. As you can imagine these...
4年前

Custom Type Guards in Typescript
Playful Programming's Atom Feed
Previously, we covered various approaches that you can take to narrowing types in Typescript. Type...
4年前

RxJS - Creation Operators
Playful Programming's Atom Feed
Welcome back guys, today I'll start to show you the Creation operators in RxJS. The Creation...
4年前

3 Easy Ways to Add Animation to your Angular Applications
Playful Programming's Atom Feed
Animations add life to your application and can greatly increase your app's overall user experience....
4年前

RxJS - Marble Diagrams
Playful Programming's Atom Feed
Hi guy, before continuing with the operators, today I want to explain the Marble Diagrams. The Marble...
4年前

RxJS - Operators
Playful Programming's Atom Feed
Hi Guys and welcome back, today I introduce the concepts of Operators. Operators are functions. Isn't...
4年前

RxJS - Observer and Subscription
Playful Programming's Atom Feed
Welcome back guys, today the topics of the article are Observers and Subscriptions. ...
4年前

RxJS - Observable
Playful Programming's Atom Feed
Hi Guys, Today I want to start a little series about Reactive Programming with RxJS. I start from the...
4年前

Typescript: why you should use unknown instead of any
Playful Programming's Atom Feed
From time to time, we come across situations where the type isn't known beforehand, i.e. could be...
4年前

Taking Marko's Tags API for a Test Drive
Playful Programming's Atom Feed
Marko recently released a preview for its upcoming Tags API. This is pretty exciting as it adds a...
4年前

Reactive Forms in Angular
Playful Programming's Atom Feed
Photo by SIMON LEE on Unsplash Forms can be complicated Seriously. I feel like the days...
4年前

Type Narrowing in TypeScript
Playful Programming's Atom Feed
In the spirit of my last few articles, where we have looked into Template Literal Types and Types and...
4年前

Filtering Protractor end-to-end tests with Angular CLI
Playful Programming's Atom Feed
Demonstrating the "grep" and "invertGrep" test filtering options of Angular CLI's Protractor builder.
4年前

JavaScript vs JavaScript. Fight!
Playful Programming's Atom Feed
With software development, we are often presented with alternative choices for libraries and tools...
4年前

How to create theme relation between components in Angular
Playful Programming's Atom Feed
When we create a component, you can reuse it in some places, and his style should also relate to his...
5年前

How to theme components in Angular
Playful Programming's Atom Feed
When we build components it needs to be flexible, because they can be used in many places or...
5年前

GitHub Copilot Breaks Bad Interviews
Playful Programming's Atom Feed
GitHub Copilot is a huge step forward for tech. Luckily, it improves our lives. Unfortunately, it will break your interviews. Here's why.
5年前

3 Lessons from React that can make you a better Svelte Developer
Playful Programming's Atom Feed
Svelte is an amazing JavaScript framework that has been getting a lot of attention the last year....
5年前

My Impressions of Docker Development Containers
Playful Programming's Atom Feed
Docker development containers enable developers to set up development environment faster and...
5年前

Web Components 101: Vanilla JS
Playful Programming's Atom Feed
One of the ways web components differs from a framework is that it works right in the browser. Here's how to build them from scratch.
5年前

Building JavaScript Frameworks to Conquer eCommerce
Playful Programming's Atom Feed
There was a time that I would have never imagined the need to write an article like this. If you were...
5年前

JavaScript Frameworks and Metagaming
Playful Programming's Atom Feed
Last week we released SolidJS 1.0. A JavaScript framework built on a foundation of ideas long ago...
5年前

The Real Cost of UI Components Revisited
Playful Programming's Atom Feed
With my focus recently going back to look at optimization for the Solid 1.0 release, I thought I'd...
5年前

Template Literal Types in TypeScript
Playful Programming's Atom Feed
In this article, we will take a closer look at template literal types and how you can take advantage...
5年前

Building an RSS Scully Plugin - Angular
Playful Programming's Atom Feed
In this article, we will learn how to extend Scully functionality through plugins. We will do this by...
5年前

Types and Mocking - Typescript
Playful Programming's Atom Feed
In this article, we are going to learn how to create functions which are easy to test and mock using...
5年前

A Look at Compilation in JavaScript Frameworks
Playful Programming's Atom Feed
In 2017 Tom Dale, wrote Compilers are the New Frameworks. And he was right. In 2017 things were alrea...
5年前

My Developer Journey – How I Went from Making $1,000 to Better Salary
Playful Programming's Atom Feed
Cover photo by Ian Schneider on Unsplash. Hey everyone, my name is Santosh. In this article, I will...
5年前

Introduction to Web Accessibility (A11Y)
Playful Programming's Atom Feed
Accessibility allows as many people to use your product as possible. That, in turn, generates more profit. Here's how to improve it on web.
5年前

How to Interview Frontend Engineers
Playful Programming's Atom Feed
Interviewing for frontend engineering positions can be difficult. Let's walk through some things you should focus on while interviewing.
5年前

Setting up an Angular 12 workspace with Nx and GitHub Actions
Playful Programming's Atom Feed
Setting up an Angular 12 workspace with Nx. Also setting up a GitHub Actions CI workflow with Nx Cloud support.
5年前

Two Years of Writing about Designing JavaScript Frameworks (2018-2020)
Playful Programming's Atom Feed
I decided to do a quick tally and I realized I've written almost 70 articles in the last 2 and a half...
5年前

Components are Pure Overhead
Playful Programming's Atom Feed
A couple of years ago in the The Real Cost of UI Components, I explored the cost of components in Jav...
5年前

Python List Comprehension - The Comprehensive Guide
Playful Programming's Atom Feed
Python is a language with broad and powerful APIs. One such API is 'List Comprehensions'. Let's learn to use them to improve your code!
5年前

Setting up an Nx workspace with nx-dotnet
Playful Programming's Atom Feed
Setting up an Nx workspace for .NET development with nx-dotnet. Also setting up a GitHub Actions CI workflow.
5年前

Transforming Types in TypeScript with Utility Types
Playful Programming's Atom Feed
Every once in a while, you end up in a situation where you need some variation of a type. For instanc...
5年前

My Advice to Technical Interviewers
Playful Programming's Atom Feed
Interviewing candidates is tough. It just is. Here are just a few of my tips to make your tech recruiting go smoother.
5年前

Is 0kb of JavaScript in your Future?
Playful Programming's Atom Feed
Zero JavaScript has been the new buzz phrase around JavaScript libraries for the last little while....
5年前

Welcome to This is Learning—an invitation to our open tech authors community
Playful Programming's Atom Feed
This is Learning is the place to share what you learn. Welcome!
5年前

Master React Unidirectional Data Flow
Playful Programming's Atom Feed
Making sure your app's code is structured well is critical. Mastering React Unidirectionality is a huge part of that. Learn how to here.
5年前

Of Chickens and Pigs - The Dilemma of Creator Self Promotion
Playful Programming's Atom Feed
Have you ever created a new library? You saw a gap when creating a project at work. So you worked on...
5年前

Speeding Up Angular Scully Builds in GitHub Actions
Playful Programming's Atom Feed
In this article, we are going to learn how you can speed your Scully builds by re-using Angular build...
5年前

Rust Enums, Matching, & Options API
Playful Programming's Atom Feed
Rust allows you to build super-fast and flexible applications. Let's build one leveraging enums, pattern matching, and the Options API.
5年前
Plugin Architecture for Angular Libraries using Dependency Injection
Playful Programming's Atom Feed
The plugin architecture is a well-known software design pattern used for its flexibility, extensibili...
5年前

5 Places SolidJS is not the Best
Playful Programming's Atom Feed
In this article, I wish to finally address the question "What is Solid not as good at?" The list migh...
5年前

Semantic Grouping Folders with Nx
Playful Programming's Atom Feed
Photo by Barn Images on Unsplash This article is part of the Angular Architectural Patterns s...
5年前

WebDev 101: How to use npm and Yarn
Playful Programming's Atom Feed
You've heard a lot about Node, NPM, and Yarn - but aren't sure what they are. Let's introduce them in-depth and answer questions about them!
5年前

Typescript - Tips & Tricks - Rest Parameters & Rest Arguments
Playful Programming's Atom Feed
Hi guy and welcome back :) Today I'll talk about the Rest Parameters and the Rest...
5年前

Learning to Appreciate React Server Components
Playful Programming's Atom Feed
This is my personal journey, so if you are here hoping for the general "How To" guide you won't find...
5年前

How to set up an Nx-style monorepo workspace with the Angular CLI: Part 5
Playful Programming's Atom Feed
In the final part of this tutorial, we create the seatmap data access, seat listing feature, shared buttons UI, and shared formatting utilities library. Finally, we compare our approach with the full Nx toolchain.
5年前

How to set up an Nx-style monorepo workspace with the Angular CLI: Part 4
Playful Programming's Atom Feed
In Part 4 of this tutorial, we create the check-in data access and check-in feature shell libraries. We create the check-in desktop application, review and verify how much our tool automated and finally create the mobile check-in application.
5年前

How to set up an Nx-style monorepo workspace with the Angular CLI: Part 3
Playful Programming's Atom Feed
In Part 3 of this tutorial, we create the passenger info and flight search feature libraries. We use the generate project tool to create the mobile booking application and its test project. Finally, we create a mobile version of the flight search component template.
5年前

How to set up an Nx-style monorepo workspace with the Angular CLI: Part 2
Playful Programming's Atom Feed
In Part 2 of this tutorial, we'll set up our custom generate project tool and create the shared and booking data access libraries with NgRx. To honor the flow of dependencies, we extract a shared environments library.
5年前

How to set up an Nx-style monorepo workspace with the Angular CLI: Part 1
Playful Programming's Atom Feed
In this step-by-step tutorial, we set up an Nx-style monorepo workspace with the Angular CLI. In this first part, we create an application project, an end-to-end test project, and a feature shell library.
5年前

Typescript - Tips & Tricks - Advanced Types
Playful Programming's Atom Feed
Hi Guys, Today I'll show you some advanced utilities exposed by the typescript language. Let's...
5年前

GitHub Actions Trigger Via Webhooks
Playful Programming's Atom Feed
In this article, we are going to look at how we can build a webhook to trigger a GitHub action workfl...
5年前

Typescript - Tips & Tricks - Mapped Types
Playful Programming's Atom Feed
In some cases, we need to manipulate some types to create new types. In these cases, we have to use...
5年前

Typescript - Tips & Tricks - infer keyword
Playful Programming's Atom Feed
Today I talk about the infer keyword. Sometimes, we need to get the value type of an array or get the...
5年前

Create a component harness for your tests with Angular CDK
Playful Programming's Atom Feed
Learn how to create and consume a custom component harness using Angular CDK. With a step-by-step case study, we run it in unit tests and end-to-end tests.
5年前

Tiny Angular application projects in Nx workspaces
Playful Programming's Atom Feed
Extract workspace libraries to get tiny Angular application projects. We'll create assets, styles, and environments libraries for an Nx workspace. Step-by-step commands and instructions.
5年前

A look at major features in the Angular Ivy version 9 release
Playful Programming's Atom Feed
AOT everywhere, dynamic globalisation, strict mode, Bazel, and much more.
5年前

Next-level testing in Angular Ivy version 9
Playful Programming's Atom Feed
AOT, faster tests, stronger types, and component harnesses.
5年前

The Angular Ivy guide for library authors
Playful Programming's Atom Feed
How to respond to Angular Ivy in 2020/2021 if you're a library author.
5年前

Component features with Angular Ivy
Playful Programming's Atom Feed
The Angular Ivy runtime introduces a new concept called component features. Component features are mixins for components. They add, remove or modify traits at runtime.
5年前

Faking dependencies in Angular applications
Playful Programming's Atom Feed
Create components and directives for manual tests.
5年前

Testing and faking Angular dependencies
Playful Programming's Atom Feed
Learn the ins an outs of Angular dependency injection in automated tests.
5年前

Typescript - Tips & Tricks - Conditional Type
Playful Programming's Atom Feed
In some cases, we need to detect if an object/type has specific properties or characteristics. Let me...
5年前

What the hell is Reactive Programming anyway?
Playful Programming's Atom Feed
My recent article How React is not reactive, and why you shouldn't care opened up a much larger debat...
5年前

Presenters with Angular
Playful Programming's Atom Feed
Learn how to extract presenters from presentational components. We discuss stateful and stateless presenters, component-to-presenter ratios and when to use a component or a pipe instead of a presenter.
5年前

Presentational components with Angular
Playful Programming's Atom Feed
Presentational components encapsulate presentation and UI behaviour. They can be stateful or stateless and are connected to the application state through their data binding API.
5年前

Testing Angular container components
Playful Programming's Atom Feed
Learn tactics for testing RxJS observables and application state commands. Opt out of Angular testing modules for blazingly fast unit tests.
5年前

Typescript - Tips & Tricks - Type Guard
Playful Programming's Atom Feed
There are some cases, where we need to detect the type of the object to get the correct...
5年前

Typescript - Tips & Tricks - Assert Function
Playful Programming's Atom Feed
There are times that we need to create some assertions to be sure an object respects some rules. A...
5年前

How React isn't reactive, and why you shouldn't care
Playful Programming's Atom Feed
If the title agrees with you, you can stop reading right now. Move on to the next article. In technol...
5年前

Typescript - Tips & Tricks - Never type
Playful Programming's Atom Feed
Today I want to talk about the never type. As you can understand, this type identifies a piece of...
5年前

Typescript - Tips & Tricks - Non-null assertion operator
Playful Programming's Atom Feed
In some cases, you have a field that you initialize in a method, and if you follow the flow of the...
5年前

Typescript - Tips & Tricks - Tuple
Playful Programming's Atom Feed
Tuple types allow you to express an array with a fixed number of elements whose types are known, but...
5年前

How empathy from my manager changed my life
Playful Programming's Atom Feed
Cover photo by Helena Lopes on Unsplash. "You should always try to be a better person than you were...
5年前

Typescript - Tips & Tricks - Readonly Array
Playful Programming's Atom Feed
function sortAndReverse(list: number[]): number[] { return list.sort().reverse(); } const list =...
5年前

Angular CDK - Platform Module
Playful Programming's Atom Feed
In this article, we are going to take a look at the Platform Module from Angular CDK. The platform mo...
5年前

Typescript - Tips & Tricks - readonly modifier
Playful Programming's Atom Feed
How many times we expect an object property to have a value but it isn't? In these cases,...
5年前

Typescript - Tips & Tricks - Index Signature
Playful Programming's Atom Feed
Welcome back guys, today I'll speak about the "Index Signature". In some cases, we need to create...
5年前

Typescript - Tips & Tricks - Optional modifier
Playful Programming's Atom Feed
Hi guys and welcome back, Today I'll talk about the optional modifier. Sometimes we have objects that...
5年前

Typescript - Tips & Tricks - any vs. unknown
Playful Programming's Atom Feed
Hi guys, today I'll talk about the difference between any and unknown. Any Any type is a particular...
5年前

Typescript - Tips & Tricks - this parameter
Playful Programming's Atom Feed
Hello everybody and welcome back, today I'll talk about this parameter. Sometimes we need to create...
5年前

Typescript - Tips & Tricks - Overloaded Functions
Playful Programming's Atom Feed
Welcome back, guys! The topic of today is Overloaded Functions. All self-respecting programming...
5年前

Typescript - Tips & Tricks - Union and Intersection
Playful Programming's Atom Feed
Hi and welcome back! Today I talk about Union and Intersection. In some cases, we have to combine...
5年前

Typescript - Tips & Tricks - keyof
Playful Programming's Atom Feed
Welcome back! Today I'll talk about the keyof operator. This operator helps us to extract the...
5年前

Typescript - Tips & Tricks - Literal Types
Playful Programming's Atom Feed
Welcome back! Today I show you the Literal Types. This feature permits you to create a set of...
5年前

Typescript - Tips & Tricks - typeof
Playful Programming's Atom Feed
Today I want to start a series of tips and tricks about Typescript. I will try to publish two/three...
5年前

Living off the iPad as an Engineer
Playful Programming's Atom Feed
Tips on how to get yourself a proper development environment on the iPad to fully exploit its potential.
5年前

Container components with Angular
Playful Programming's Atom Feed
Container components are extracted from mixed Angular components to increase the maintainability, testability and scalability of our Angular apps.
5年前

The accidentally sliced CRTP base
Playful Programming's Atom Feed
Some time ago, I received a bug report that, in short, said "your class does not work with CRTP". I was very confused bythis statement. First a sh...
5年前

50 lines of code smoke test for any Angular application
Playful Programming's Atom Feed
Where there's smoke, there's fire. Use this top-level integrated test suite for any Angular application.
5年前

Incremental stylesheet linting with Stylelint and the Nx toolchain
Playful Programming's Atom Feed
Add and configure Stylelint. Then automate Stylelint workflows in your Nx workspace.
5年前

The ultimate migration guide to angular-eslint, ESLint and Nx 11
Playful Programming's Atom Feed
How to set up a new Nx workspace using angular-eslint or migrate an existing Nx workspace from ESLint or TSLint.
5年前

React Refs: The Complete Story
Playful Programming's Atom Feed
React Refs are an immensely powerful, yet often misunderstood API. Let's learn what they're capable of, and how they're usually misused.
5年前

Package Font Files on NPM for Angular Usage
Playful Programming's Atom Feed
Do you use custom fonts that you want to share with multiple apps? Learn how to distribute those fonts on NPM and consume them in Angular!
5年前

Model-View-Presenter with Angular
Playful Programming's Atom Feed
The MVP pattern increases separation of concerns, maintainability, testability and scalability in complex Angular apps by using container components, presentational components and presenters.
5年前

Tree-shakable dependencies in Angular projects
Playful Programming's Atom Feed
Since Angular version 6, we can create tree-shakable dependencies and even leave out Angular modules.
5年前

Emulating standalone components using single component Angular modules (SCAMs)
Playful Programming's Atom Feed
SCAMs are a safe, View Engine-compatible migration path towards standalone components.
5年前

Angular Revisited: Standalone components and optional NgModules
Playful Programming's Atom Feed
NgModule is arguably one of the most confusing Angular concepts.
5年前

A quick overview of the Deno CLI
Playful Programming's Atom Feed
A quick introduction to the Deno CLI. It's a batteries included executable with everything you need to develop, lint, test, and run Deno code.
5年前

The history of Model-View-Presenter
Playful Programming's Atom Feed
Dust off the history books and discover the origins of the MVP pattern.
5年前

How you can help Angular in 2020
Playful Programming's Atom Feed
2020 is the year you can help the Angular ecosystem thrive.
5年前

Testing Angular route guards with the RouterTestingModule
Playful Programming's Atom Feed
Learn how to test route guards in isolated unit tests. Also learn how to test route guards in practice with RouterTestingModule.
5年前

Testing routed Angular components with the RouterTestingModule
Playful Programming's Atom Feed
Learn how to stub the ActivatedRoute for shallow routed component tests. Also learn to use the RouterTestingModule for integrated routed component tests.
5年前

Testing Angular routing components with the RouterTestingModule
Playful Programming's Atom Feed
Learn how to implement shallow and integrated routing component tests with the RouterTestingModule. Explore the Location service and its dependencies.
5年前

My journey into Tech
Playful Programming's Atom Feed
Last week I tweeted on Twitter how I am moving from a Slum where I lived for 29 years to a multi-stor...
5年前

My Home Office Setup
Playful Programming's Atom Feed
Last year I started working on the home setup, which I never thought would become my home office one...
5年前

Adding Carthage Dependencies into React Native
Playful Programming's Atom Feed
CocoaPods is a great dependency manager, but some need Carthage still. Let's walk through how to integrate Carthage with React Native!
5年前

How Computers Speak: Assembly to AST
Playful Programming's Atom Feed
Have you wondered how programming languages are able to be ran on your hardware? This article explains how your code is processed and ran
5年前

No, I don't want to become an Angular GDE
Playful Programming's Atom Feed
An opinion piece on the Angular team and GDE program management.
6年前

Angular struggles in 2020
Playful Programming's Atom Feed
An opinion piece on the Angular team management.
6年前

What do file extensions do?
Playful Programming's Atom Feed
A file extension isn't the only way a file is identified, so what does it do?
6年前

Conventional Commits for Changelogs & Releases
Playful Programming's Atom Feed
Whether creating changelogs or just keeping track of git tags, releases matter. Learn how to automate your release process with conventional-commits!
6年前

Better Angular Forms with ngModel & formControl
Playful Programming's Atom Feed
Some components make controlling their state easier with 'formControl' and 'ngModel'. Let's see how we can build our own!
6年前

Pointers and References in C/C++
Playful Programming's Atom Feed
An overview of how pointers and references function in C/C++
6年前

Write Simpler Tests - 5 Suggestions for Better Tests
Playful Programming's Atom Feed
Writing tests is a big skill for any engineer, but we often over-complicate them. Let's simplify our tests for better testing overall!
6年前

Virtual Memory Overview
Playful Programming's Atom Feed
An overview of how operating systems give processes their own address space.
6年前

Writing better tests for Angular with Angular Testing Library
Playful Programming's Atom Feed
A simple explination of writing better tests for Angular applications and setting up Angular Testing Library
6年前

Setup Android Studio Emulator for AMD Ryzen CPUs
Playful Programming's Atom Feed
While the Android Emulator isn't confined to Intel CPUs anymore, it can be tricky to setup for AMD Ryzen CPUs. Let's explain how to do so.
6年前

Chess Knight Problem: A Quick & Dirty JS Solution
Playful Programming's Atom Feed
I present a quick and dirty solution to a common interview question where the solution is not nearly as complex as it may first appear.
6年前

Keeping API Keys Secret in React Apps
Playful Programming's Atom Feed
Save yourself money by hiding your API keys from prying eyes and nasty bots.
6年前

Draw under the Android NavBar Using React Native
Playful Programming's Atom Feed
Android allows you to draw content under the navigation bar. It's a neat effect! Let's add that to our React Native apps.
6年前

Data Storage Options for React Native
Playful Programming's Atom Feed
React Native contains multiple different ways you can persist data for your application. Let's look at the choices and their pros and cons.
6年前

The Ultimate Windows Development Environment Guide
Playful Programming's Atom Feed
Many developers like MacOS or Linux for development environments, but don't know that Windows has plenty to offer. Become a Windows pro!
6年前

Networking 101: UDP & TCP
Playful Programming's Atom Feed
If networking is analogous to physical mail, then let's take a look at the letters being sent themselves. Let's dive into UDP and TCP
6年前

What is Server Side Rendering (SSR) and Static Site Generation (SSG)?
Playful Programming's Atom Feed
An explanation of what server-side rendering is, what static site generation is, and how you can utilize them in React, Angular, or Vue!
6年前

Building an Angular Blog With Scully
Playful Programming's Atom Feed
NuxtJS and Gatsby allow you to make SSG-enabled blogs, but Angular doesn't have an equivalent... Until now. Let's build a blog with Scully!
6年前

Networking 101: A Basic Overview of Packets and OSI
Playful Programming's Atom Feed
You use networking every day - even to read this! Let's dive into explaining how we send data across a network and what the OSI model is.
6年前

How to Pick Tech Stacks For New Projects
Playful Programming's Atom Feed
I often get asked "How do you pick a tech stack for your projects?". The answer is: outline what questions you should be asking early on.
6年前

Making a Slack Bot using NodeJS and MongoDB
Playful Programming's Atom Feed
Join us as we teach you how to create a Slack bot from scratch using their Node SDK and MongoDB for persistence
6年前

The quantum duck debugging theory
Playful Programming's Atom Feed
Quantum-entangled rubber duck debugging using real-life subjects. A theory by Michael Hladky.
6年前

Time For Employers To Change Their Perspective On Open Source Contribution
Playful Programming's Atom Feed
Before you read this article, I want to make it very clear, I am not blaming anyone here. Keeping thi...
6年前

Debugging NodeJS Applications Using Chrome
Playful Programming's Atom Feed
Learn how to interactively debug your NodeJS applications using a GUI-based debugger built into Chrome.
6年前

Using in-memory-db With NestJS
Playful Programming's Atom Feed
Let’s see why we should and how we can use in-memory-db, you can access the source code on GitHub....
6年前

A Deep Dive Into the NestJS Injection Scope
Playful Programming's Atom Feed
In my previous piece, we discussed NestJS services. In this piece, we’ll look at the injection scope....
6年前

Introduction to NestJS Services
Playful Programming's Atom Feed
Service In enterprise applications, we follow the SOLID principle, where S stands for Sing...
6年前

NestJS Controllers Deep Dive
Playful Programming's Atom Feed
In this blog post, we will explore the controller which is the most important part of NestJS....
6年前

Integrating Native Android Code in Unity
Playful Programming's Atom Feed
Have you ever wanted to run native Java and Kotlin code from your mobile game written in Unity? Well, you can! Let's see how.
6年前

Getting Started With NestJS
Playful Programming's Atom Feed
This is the first part of the series of articles on the Node.js framework known as NestJS, in this ar...
6年前

Change the Host File of an Android Emulator
Playful Programming's Atom Feed
In order to test web applications with Android properly, you may need to edit the Android Emulator network host file. Here's how to do so.
6年前

Introduction to HTML, CSS, and JavaScript
Playful Programming's Atom Feed
Introduction to the underlying concepts of HTML, CSS, and JavaScript and how they work together.
6年前

Angular Dependency Injection Simplified for .Net and Java Developers
Playful Programming's Atom Feed
Recently one of the .Net developer asked me the question "why we use class rather than interfaces whi...
6年前

How to get up and running with Angular on Windows
Playful Programming's Atom Feed
Are you struggling with setting up an Angular development environment on Windows? Let us get you up and running in no time!
6年前

Sorry C# and Java developers, this is not how TypeScript works
Playful Programming's Atom Feed
JavaScript is a loosely typed programming language and TypeScript does not change that.
6年前

Web Fundamentals: Understanding the DOM
Playful Programming's Atom Feed
In our eight chapter, we learn how the browser internally handles HTML and CSS to show the user webpages on-screen.
6年前

Binary & Hexadecimal: Intro to Non-Decimal Systems
Playful Programming's Atom Feed
Learn how to convert decimal to binary and hexadecimal, how CSS colors are calculated, and how your computer interprets letters into binary.
6年前

Introduction to TypeScript — What is TypeScript?
Playful Programming's Atom Feed
An introduction and explanation of what TypeScript is, is not, and what it's used for
6年前

Hard Grids & Baselines: Achieving 1:1 Android Fidelity
Playful Programming's Atom Feed
Testing the limits of `firstBaselineToTopHeight` and `lastBaselineToBottomHeight` to deliver a perfect result.
6年前

TypeScript Intermediates - Type Generics
Playful Programming's Atom Feed
An introduction to the type generic functionality in TypeScript
6年前

Android Basics: Contexts, Intents & Lifecycle
Playful Programming's Atom Feed
A basic overview of the main components of an Android app and how they interact with each other and the Android system
6年前

Joining Freenode IRC: A Guide
Playful Programming's Atom Feed
Basic (but detailed) instructions for setting up a Freenode IRC account through various clients
6年前

Continuous Integration with Travis CI for Android
Playful Programming's Atom Feed
An in-depth tutorial explaining how to set up Travis CI to deploy signed builds to Google Play. Among other things
6年前

Why You Should Invest In Yourself?
Playful Programming's Atom Feed
Why You Should Invest In Yourself? If you like stories, then this is for you, and more...
6年前

My Open Source Journey
Playful Programming's Atom Feed
Photo by Markus Spiske on Unsplash Hello everyone, my name is Santosh Yadav and I want to share my O...
7年前

Angular Templates — From Start to Source
Playful Programming's Atom Feed
Learn how templates work in Angular. From the basics to being able to read Angular source code and write your own structural directives
7年前

Uttering Hello — The Site's First Post
Playful Programming's Atom Feed
An introduction to Unicorn Utterances, including a mission statement and general roadmap
7年前

When performance guarantees hurts performance - std::visit
Playful Programming's Atom Feed
The performance of came up in a discussion, andmyfirst thought was that from reading generated assembly code, it's a jump table, so it should be...
7年前

How to speak at a conference
Playful Programming's Atom Feed
A former colleague of mine recently described the steps to speak at a conference as: Write a proposal and (optionally) a talk outline. Get accepted...
7年前

DRY multicomparisons
Playful Programming's Atom Feed
Now and then, I find myself writing something like if (x == a || x == b || x == c) ... , and every time the repetitionof x == annoys me. A number ...
8年前

Angular Route Guards for Web & Mobile Auth
Playful Programming's Atom Feed
Learn how to use Angular route guards for authenticating & authorizing access to certain child and parent routes.
8年前

Performance of flat maps
Playful Programming's Atom Feed
A flat map is a data structure that maps a key to a value, and that stores the data in a compact flat memory structureto get better cache hit rate...
9年前

Using constexpr quick-sort in C++17
Playful Programming's Atom Feed
So I've written about compile time quick-sort twicebefore ( 2011 and 2015 ,) but now with C++17'supcoming support, I thought I'd try it again. Ge...
9年前
Higher order functions as an enabler for lazy evaluation
Playful Programming's Atom Feed
Yesterday's post about Generating lambdas for clarity and performance showed how to make use of higher order functions to improve clarity while giv...
9年前

Generate lambdas for clarity and performance
Playful Programming's Atom Feed
Higher order functions , functions that operate on other functionsor returns functions, are familiar to those who have had some experience with fu...
9年前

Serializing structs with C++17 structured bindings
Playful Programming's Atom Feed
Serializing data in C++ is a surprisingly difficult problem. There are many libraries for it with varying degrees offinesse, power and ease of use...
9年前

Expressing strings as types with C++17 constexpr lambdas
Playful Programming's Atom Feed
Recently I stumbled upon a question by @arne_mertz of Simplify C++ fame — if you don't read that blog, start now! — about using string literals as...
9年前

Succinct and helpful C++ template compilation errors
Playful Programming's Atom Feed
We've all experienced them, the long and unhelpful compilation errors from templates, usually referring to some internalheader you didn't even kno...
10年前

A flexible lexicographical comparator for C++ structs
Playful Programming's Atom Feed
We've all hand crafted comparison operators for structs with many members, and we've all cursed the tedium. It's allright for equality comparison,...
10年前

Cache optimizing a priority queue
Playful Programming's Atom Feed
I must begin by saying that, if you found this because you have a performance problem, you should almost certainly look elsewhere. It is highly unl...
11年前

Performance observations on a C++ vector of lambdas
Playful Programming's Atom Feed
Edit (June 2015):: The source code is now available on GitHub . When writing unit tests, you typically don't care much about execution speed, but c...
11年前

Compile time quick-sort in idiomatic modern C++
Playful Programming's Atom Feed
This article is outdated!: This article was written a very long time ago, and its contents no longer apply. Read the newer version by clicking here...
11年前

Sequence control with the Trompeloeil C++ mocking framework
Playful Programming's Atom Feed
As previously introduced ,the Trompeloeil C++ framework is a new mocking framework for C++14. If you'renot at all familiar with Trompeloeil , you...
11年前

Introducing the Trompeloeil C++ mocking framework
Playful Programming's Atom Feed
Trompeloeil is a new mocking framework for C++, aimed at ease of use withoutsacrificing expressive power. In arts, trompeloeil is intended to mock...
11年前

Asserting compilation errors in C++
Playful Programming's Atom Feed
Sometimes when crafting an interface, we want to ensure that some illegal constructs lead to compilation errors. Afterall, a good interface is eas...
11年前

Expressing strings as types
Playful Programming's Atom Feed
This article is outdated!: This article was written a very long time ago, and its contents no longer apply. Read the newer version by clicking here...
13年前

Compile time messages in C++
Playful Programming's Atom Feed
This article is outdated!: This article was written a very long time ago, and its contents no longer apply. Read the newer version by clicking here...
14年前

Exploring time keeping in ISO C++ 2011
Playful Programming's Atom Feed
A lot has been written about new features coming in the 2011 revision of ISO C++. One that has received surprisinglylittle attention is the <chron...
14年前

Compile time quick-sort using C++ variadic templates
Playful Programming's Atom Feed
This article is outdated!: This article was written a very long time ago, and its contents no longer apply. Read the newer version by clicking here...
14年前