Top 3 in Tech: Commenting Code, GitHub Copilot stats, Optimistic UI with Remix

What's the deal with code comments? Should you even use them - and if yes, how much commenting is too much?  ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

​Hey there,

I hope you're having a great week. If you are, it's about to get even better! And if you aren't, well, hopefully a few minutes of my rambling can lighten your mood 🙌

Let's go:

1. Commenting Code

Since the beginning of time (or, like, the beginning of programming languages at least) we've been able to comment our code.

Comments are a pretty simple idea: Just a way to write "normal" language inside your source code. I think most people would agree that this can be useful at times - but there's also groups of people that are completely against code comments all together. So let's talk about it!

As with everything in programming, "best practices" is a balance. There's never a definitive answer, no "silver bullet" that applies to every single situation. There are good comments, and there are bad comments. And bad comments are often worse than no comments.

Here's an example (simplified, but you get the idea):

​This is what I would consider a "bad" comment: it doesn't tell us anything the code doesn't already tell us. And, at worst, the comment is lying if we later change the code but forget to change the comment!

Another example of a bad comment could be to explain something that could be explained by simply making the code more descriptive:

In this scenario it would be better to make the code more self-explanatory, to eliminate the need for a comment:

But of course these few examples doesn't mean you shouldn't ever use comments to document your code (like some people might have you believe that all comments are bad 😱)

In practice, there's plenty of cases where you simply can't make the code explain itself. Or where you have to implement some complex logic that is much easier to reason about with 1-2 lines of normal language to explain the context.

In any case, you'll always have to use your best judgement - just remember that it's not black and white. So if you encounter someone saying "comments are a code smell" or, on the contrary, if you notice yourself overcommenting stuff that really should be refactored, try to take a step back and evaluate the individual case by itself.

Yes, in an ideal world we all write perfect code that is crystal clear to anyone reading it and doesn't require comments. But that's just not how reality works.

My own personal take is that comments should always be helpful rather than distracting. So if you can save someone (or your future self) time by documenting a function or line with a quick note - you should do that. Comments aren't inherently bad as long as you use them effectively ✌️

2. GitHub Copilot stats

In case you haven't heard: AI is all the rage right now, especially in programming. With tools like ChatGPT and GitHub Copilot, developers can focus on more interesting problems and less on memorizing correct syntax. But just how big is GitHub Copilot actually?

Well, in a recent blogpost (by GitHub), they quoted the following numbers:

​Which is just bananas. It's unclear exactly how they came to these numbers, but it's likely measured from people who actively use Copilot (and of course not 46% of all code written globally is by Copilot). It's also worth noting that these numbers are from an article that pitches Copilot for Business - so it's obviously part of a marketing effort as well.

Regardless of the exact figures, I can confidently say that Copilot has helped me in my day-to-day coding tasks. Especially with more repetitive tasks like generating mock data or scaffolding out the starting point for a component.

How about you? Have you tried Copilot yet, and what do you think of these numbers?

Read the full article for context

3. Optimistic UI with Remix

Switching gears: a common problem in front-end development is to keep your server state (that is, the data that is saved in a database) equal with your UI state (the HTML/CSS/JS parts of a website). For example, if a user clicks a button to create a blog post, you don't want them to wait until that data hits the server and the server responds saying the blog post was successfully created.

Most of the time you *know* that the operation will go well. And in order for the UI to feel snappy and avoid that latency while the server does its thing and responds, we can implement something called "optimistic UI". Basically it's a way to update our UI instantly - while still dealing with errors later if the operation doesn't go as we expected.

Ryan Florence, one of the creators of the React framework Remix, breaks it down really well in this video - including how to handle these optimistic UI updates with Remix specifically:

Did you enjoy today's newsletter?

👍 Yes, it was amazing!

😐 Eh, I guess it was ok

👎 Not really at all

If you did, I would really appreciate if you could share the newsletter with your friends! Either by forwarding this email, or by posting about it on Twitter, LinkedIn, or Facebook. You can also simply copy/paste the link mads.fyi/top3 on other platforms. It really helps to keep me motivated and let the newsletter grow

— Mads Brodt

Older messages

Top 3 in Tech: Most demanded frontend frameworks, Astro 2.0, Roadmaps for learning code in 2023

Wednesday, January 25, 2023

What are the different front-end frameworks, and which one should you learn first? ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Top 3 in Tech: Narrow your focus, Microsoft planning to invest $10 billion in OpenAI, Beyond Fireship

Friday, January 20, 2023

There's so much stuff to learn as a developer - so how do you decide which areas to focus on to build your skills effectively? ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Top 3 in Tech: Tech interview tips, SvelteKit 1.0, Hyperplexed

Wednesday, December 28, 2022

How can you stand out of the crowd when applying for highly contested tech jobs in 2023? Here's 10 simple tips to land a development job. ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Top 3 in Tech: ChatGPT and what AI means for developers, NextJS 13, Advent of Code

Friday, December 16, 2022

There's been some amazing progress in AI tools this year, with ChatGPT being the most recent. But what does that mean for the future of developers? ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Top 3 in Tech: Web architectures, The T3 Stack, Interactive guide to Flexbox

Wednesday, November 30, 2022

There's many different ways to build a modern web application - but what different architectures exist, and how can you pick the right one for you? ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

You Might Also Like

🔎 How to Search Reddit Like a Pro — 9 Reasons to Always Use Windows With a VPN

Tuesday, November 12, 2024

Also: Tips for Setting Up a Mobile VR Office, and More! How-To Geek Logo November 12, 2024 Did You Know In the 2016 film Doctor Strange, the characters of both Doctor Strange and the villain Dormammu (

Web Scraping Tips, Python 3.13 Performance Boosts, Writing Interpreters & More

Tuesday, November 12, 2024

Introduction to Web Scraping With Python #655 – NOVEMBER 12, 2024 VIEW IN BROWSER The PyCoder's Weekly Logo Introduction to Web Scraping With Python In this video course, you'll learn all about

Daily Coding Problem: Problem #1606 [Easy]

Tuesday, November 12, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by PayPal. Given a binary tree, determine whether or not it is height-balanced. A height-

Charted | Breaking Down the U.S. Government's 2024 Fiscal Year 💰

Tuesday, November 12, 2024

Net interest payments cost the US government $882 billion in fiscal year 2024, the third-largest outlay in the final budget. View Online | Subscribe | Download Our App Presented by Hinrich Foundation

Spyglass Dispatch: AI's Independence Race • EU's Bad Meta Ads • AI Chip Shenanigans • Netflix Ads Religion

Tuesday, November 12, 2024

AI's Independence Race • EU's Bad Meta Ads • AI Chip Shenanigans • Netflix Ads Religion The Spyglass Dispatch is a free newsletter sent out daily on weekdays. Feel free to forward it on to

The Big T

Tuesday, November 12, 2024

Top Tech Content sent at Noon! How the world collects web data Read this email in your browser How are you, @newsletterest1? 🪐 What's happening in tech today, November 12, 2024? The HackerNoon

Deadline Extended: 2 Weeks Left to Compete for Over $7000 in the AI-chatbot Writing Contest🔥

Tuesday, November 12, 2024

Great news, newsletterest1 ! The submission deadline for the #ai-chatbot writing contest has been extended! You now have until November 21, 2024, to submit your unique AI chatbot ideas for a chance to

A very demure, very mindful issue

Tuesday, November 12, 2024

Plus a look at memory regions, Go's birthday, and we invent a brand new word. | #​531 — November 12, 2024 Unsub | Web Version Together with Frontend Masters logo Go Weekly Happy Birthday, Go! Go

Visual Capitalist is revealing all of its biggest secrets... 📊

Tuesday, November 12, 2024

You can get in on our newest project if you act now. View Online | Subscribe | Download Our App We're revealing our biggest secrets... The question we get asked the most is: "How does Visual

🔓🐍 Unlock Your Python Potential with Instructor-Led Courses

Tuesday, November 12, 2024

Hey there, If you've been looking for a way to go beyond on-demand tutorials and really master Python, we've got something special for you... For the first time, Real Python is launching an