tech/webdev magazine

March 29, 2023

The Best Handoff Is No Handoff

Wednesday, March 29, 2023 Teklinks

Design handoffs are inefficient and painful. They cause frustration, friction and a lot of back and forth. Can we avoid them altogether? Of course we can! Let’s see how to do just that. Many companies organize their workflows around projects and departments. Especially in large companies, work often travels from one place to another, often getting stuck between emails and Slack messages, and often “refined” on its never-ending journey between design and engineering teams.

Full article

Why We Added package.json Support to Deno

Wednesday, March 29, 2023 Teklinks

The latest release of Deno introduced a significant change: providing enhanced Node and NPM compatibility through package.json support. This update led to questions regarding whether our priorities have shifted, as Deno has long been associated with forging a path distinct from Node.

Full article

The interactive way to master modern React

Wednesday, March 29, 2023 Teklinks

We’re obsessed with helping you reach your aha! moments. Our text sections help you master the “why” behind React concepts and include fun, interactive visuals you can play with.

Full article

March 28, 2023

How to start a React Project in 2023

Tuesday, March 28, 2023 Teklinks

Here I want to give you a brief overview of starter kits for a new React project. I want to reflect on advantages and disadvantages, on the skill-level needed as a developer, and on what features each starter project has to offer for you as a React developer.

Full article

Using Nx Workspace generators to scaffold new blog posts

Tuesday, March 28, 2023 Teklinks

In the previous article we talked about how to leverage Nx capabilities to create a custom Next server that allows us to perform a fast refresh not only when our React components change, but also whenever we change something in our MDX files.

Full article

Everything Breaks

Tuesday, March 28, 2023 Teklinks

We’re going to play a really simple and really dumb game. I’ll explain the setup and the rules: The goal of this stupid and dumb game is to earn points.

Full article

March 27, 2023

Microservice Architecture and its 10 Most Important Design Patterns

Monday, March 27, 2023 Teklinks

Tackling complexity in large Software Systems was always a daunting task since the early days of Software development (1960's). Over the years, Software Engineers and Architects made many attempts to tackle the complexities of Software Systems: Modularity and Information Hiding by David Parnas (1972), Separation of Concern by Edsger W. Dijkstra (1974), Service Oriented Architecture (1998).

Full article

Create a CLI Chatbot with the ChatGPT API and Node.js

Monday, March 27, 2023 Teklinks

ChatGPT has taken the world by storm and this week OpenAI released the ChatGPT API. I’ve spent some time playing with ChatGPT in the browser, but the best way to really get on board with these new capabilities is to try building something with it. With the API available, now is that time.

Full article

Your Git Commit History Should Read Like a History Book. Here’s How.

Monday, March 27, 2023 Teklinks

We can learn from history. History tells us which events in the past shaped the present. The Boston Tea Party lead to the Independence War. The Battle of Waterloo led to the defeat of Napoleon. Can you tell which decision, and which commit lead to the current state of your software? Maybe not.

Full article

March 24, 2023

Automatic npm publishing, with GitHub Actions & npm granular tokens

Friday, March 24, 2023 Teklinks

This week, at long last, GitHub announced granular access tokens for npm. This is a big deal! It's great for security generally, but also particularly useful if you maintain any npm packages, as it removes the main downside of automating npm publishing, by allowing you to give CI jobs only a very limited token instead of full 2FA-free access to your account.

Full article

Lazy Loading Routes in React Router 6.4+

Friday, March 24, 2023 Teklinks

React Router 6.4 introduced the concept of a "Data Router" with the primary focus of separating data fetching from rendering to eliminate render + fetch chains and the spinners that come along with them.

Full article

I don’t understand micro-frontends.

Friday, March 24, 2023 Teklinks

If you are following me, you know I’m very passionate about micro-frontends and I’m working with them for a while, I’m also keeping an open mind analysing different approaches and understanding their PROs and CONs.

Full article

March 22, 2023

Do You Need a BFF? The Backend for Frontend Pattern

Wednesday, March 22, 2023 Teklinks

In a simpler world, a web application will only ever have one client interacting with one server. For many years, this was the case. Data surfaced from the server through an API could be closely tied to the client’s specific needs. There was little need for any additional complexity.

Full article

Migrating from ts-node to Bun

Wednesday, March 22, 2023 Teklinks

I've wanted to take a look at some of the alternative JavaScript runtimes for a while. The thing that has held me back is npm compatibility. I want to be able to run my code in a runtime that isn't Node.js and still be able to use npm packages.

Full article

March 21, 2023

Why you need to know your site's performance poverty line (and how to find it)

Tuesday, March 21, 2023 Teklinks

If you've ever asked yourself any of these questions, then you could find the answers in identifying and understanding the performance poverty line for your site. The performance plateau is the point at which changes to your website’s rendering metrics (such as Start Render and Largest Contentful Paint) cease to matter because you’ve bottomed out in terms of business and user engagement metrics.

Full article

Writing Your Own Reactive Signal Library

Tuesday, March 21, 2023 Teklinks

Lately, the frontend space has been exploding with a newfound admiration for fine-grained reactivity, a style of building reactive user interfaces by using three primary primitives: signals, effects, and memos.

Full article

A Framework for Prioritizing Tech Debt

Tuesday, March 21, 2023 Teklinks

Having spent over a decade building tech startups, I've come across my fair share of tech debt: The gnarly Ember.js code no one wants to touch, the bespoke cloud infrastructure maintained entirely by hand, or the solitary Elixir service left behind by a long-gone former teammate.

Full article

March 19, 2023

How AI Technology Will Transform Design

Sunday, March 19, 2023 Teklinks

The rise of AI-generated art makes design practitioners wonder if AI will replace designers. In this article, Nick and Gleb shed light on the current state of design, answer common questions designers have about AI tools, and share practical tips on how designers can make the most of using AI tools.

Full article

How to Build Momentum During Project Onboarding

Sunday, March 19, 2023 Teklinks

At Atomic, many project teams function under a hybrid model of work-from-home and in-office attendance. Because of this, communication is key to not only project onboarding but also to maintaining a healthy work environment. With project onboarding, I like to use the analogy of a relay race.

Full article

March 16, 2023

React’s Upcoming Compiler Only Solves Part Of The Problem

Thursday, March 16, 2023 Teklinks

I spoke about how I think signals are the future of web frameworks. Since then, I am excited to welcome Angular to the Signals club. What took me by surprise is this tweet where Andrew Clark wrote that he thinks that React Forget is a better approach than Signals.

Full article

Scrape Contributor Emails From Any Git Repository

Thursday, March 16, 2023 Teklinks

In a I wrote about how it’s possible to scrape emails from GitHub repositories using their API. I even wrote up a Ruby script to do this. I now realize that is a very complicated way to go about it after discovering the git shortlog command.

Full article

March 15, 2023

Running your engineering onboarding program.

Wednesday, March 15, 2023 Teklinks

Most companies say that it takes three to six months for newly hired engineers to fully ramp up. Engineering leaders know it’s impolitic to admit that it takes their team longer than three to six months to onboard new engineers, so that’s what they say out loud, but they generally believe it takes longer for a new engineer to become fully productive.

Full article

3 Essential React Testing Library Tips for Flawless Tests

Wednesday, March 15, 2023 Teklinks

Writing tests is an important part of any software development project. React Testing Library is a popular testing tool for React applications. However, even with its automatic logging, it can be difficult to identify why a test has failed.

Full article

Why Turborepo is migrating from Go to Rust

Wednesday, March 15, 2023 Teklinks

Turborepo is a high-performance build system for JavaScript and TypeScript codebases. We're reimagining build systems, taking inspiration from tools like Buck and Bazel, to make them accessible for everyone. At the heart of Turborepo is a very simple idea: never do the same work twice.

Full article

March 13, 2023

Modularizing React Applications with Established UI Patterns

Monday, March 13, 2023 Teklinks

Established UI patterns are often underutilized in the frontend development world, despite their proven effectiveness in solving complex problems in UI design. This article explores the application of established UI building patterns to the React world, with a refactoring journey code example to showcase the benefits.

Full article

All JavaScript and TypeScript Features From the Last 3 Years

Monday, March 13, 2023 Teklinks

This article goes through almost all of the changes of the last 3 years (and some from earlier) in JavaScript / ECMAScript and TypeScript. Not all of the following features will be relevant to you or even practical, but they should instead serve to show what’s possible and to deepen your understanding of these languages. Established UI patterns are often underutilized in the frontend development world, despite their proven effectiveness in solving complex problems in UI design. This article explores the application of established UI building patterns to the React world, with a refactoring journey code example to showcase the benefits.

Full article

An Epic Saga in Distributed Transactions

Monday, March 13, 2023 Teklinks

This is the second article highlighting key ideas from the book “Software Architecture: The Hards Parts”. If you like it, consider reading Making Sure Microservices Doesn’t Turn into a Cyberpunk Dystopia which covers how to right-size your services.

Full article

March 10, 2023

Sentry’s Frontend Tests: Migrating from Enzyme to React Testing Library

Friday, March 10, 2023 Teklinks

At Sentry, we practice continuous delivery, which means that code can be released as soon as it’s merged into the main branch. This allows us to iterate quickly on our product, making new features, bug fixes, configuration changes, and experiments available in production as frequently as possible. We merge over 700 pull requests a month.

Full article

WTF Is Code Extraction

Friday, March 10, 2023 Teklinks

We are full-stack developers! That means we write both client and server code. But where should we place the server and client code? Conventional wisdom says that we should put them in different files. Except, it is not so simple; we also have code that runs both on the server and client.

Full article

Stop saying “technical debt”

Friday, March 10, 2023 Teklinks

We were supposed to release this feature three weeks ago. One developer got caught in a framework update. Another got stuck reorganizing the feature flags. A third needed to spelunk a long-abandoned repository to initiate the database changes. The team is underwater.

Full article

March 9, 2023

What is the Secret Behind Increasing Salesforce’s Developer Velocity?

Thursday, March 09, 2023 Teklinks

From retail to healthcare to IT and beyond, countless industries rely on software development to enhance business performance. However, to optimize software innovation and performance, companies must create enhanced environments that remove productivity blockers and deliver great experiences for developers.

Full article

Is software getting worse?

Thursday, March 09, 2023 Teklinks

I recently stumbled upon “Software disenchantment,” a post by Nikita Propokov. It called to mind Maciej CegÅ‚owski’s post “The Website Obesity Crisis” and several others in the same vein.

Full article

March 7, 2023

How to contribute to a project you have no idea about

Tuesday, March 07, 2023 Teklinks

Recently I got really excited about Bun. It’s a new JavaScript / TypeScript runtime similar to Deno / Node. It has one advantage over other runtimes that Is very interesting for me. It’s the super quick (at least in JS world) startup time.

Full article

Full-Stack TypeScript with tRPC and React

Tuesday, March 07, 2023 Teklinks

tRPC allows developers to create fully type safe APIs with TypeScript in full-stack applications. While the server application produces a type safe router with type safe functions (e.g.

Full article

Focus Time and Other Tips for Avoiding Meeting Fatigue

Tuesday, March 07, 2023 Teklinks

Building software requires a lot of meetings. We meet to collaborate with our teams, plan sprints, run retros, and workshop or review work with clients. Then there are ad-hoc meetings when something comes up and we need to meet urgently.

Full article

March 6, 2023

useSignal() is the Future of Web Frameworks

Monday, March 06, 2023 Teklinks

The key difference between Signals and State is that Signals return a getter and a setter, whereas non-reactive systems return a value (and a setter). Note: some reactive systems return a getter/setter together, and some as two separate references, but the idea is the same.

Full article

March 5, 2023

Module Extraction: The Silent Web Revolution

Sunday, March 05, 2023 Teklinks

Module Extraction is the new silent revolution of the web happening right now. Bundling tooling in JS, like Webpack, Rollup and Vite do one thing very well: merge modules and remove what's not used (tree-shaking), but they have no clue how to split code automatically.

Full article

Platform Engineering Teams Done Right…

Sunday, March 05, 2023 Teklinks

There’s been a lot of discussion about platforms recently, I talked about why I think it’s a current hot meme on the WTF Podcast with Charles Humble recently, and Sam Newman just wrote a blog post “Don’t call it a platform”.

Full article

March 3, 2023

React Is Holding Me Hostage

Friday, March 03, 2023 Teklinks

It feels like this article would have been sacrilege only a few years ago. Under protection of this new found trendiness in React displeasure, I’d like to finally say my piece. I don’t much care for React. And frankly I’d say the same is true for most.

Full article

The 25 Percent Rule for Tackling Technical Debt

Friday, March 03, 2023 Teklinks

Let’s talk about technical debt. Let’s talk about practical usable approaches for actually paying it down on a daily, weekly, monthly, and yearly basis. Let’s talk about what debt needs to be fixed now versus what can wait for better planning.

Full article

March 2, 2023

React vs Signals: 10 Years Later

Thursday, March 02, 2023 Teklinks

How does the old Winston Churchill quote go? Those who fail to learn from history are doomed to repeat it. Although a more ironic addendum might add. Those who study history are doomed to stand by while everyone else repeats it. In the past few weeks, we've seen the culmination of a build of excitement around the revival of fine-grained reactivity, being referred to as Signals, across the front-end world.

Full article

Experimental Performance Insights Panel in Chrome DevTools

Thursday, March 02, 2023 Teklinks

Have you tried Chrome DevTool’s Experimental Performance Insights panel? If not, let's explore some of its many slick features together. While the existing Performance panel you may be familiar with has many (many) capabilities, it’s also quite overwhelming at the same time.

Full article