Latest

6/recent/ticker-posts

Header Ads Widget

Advent of Code 2024 🧑‍💻️, GitHub Octoverse 2024 📄, lessons from indie app dev ✍️

Advent of Code is a yearly Advent calendar that features daily programming puzzles suitable for various skill levels, solvable in any language. ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌  ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ 

TLDR

 TLDR Web Dev 2024-12-02

🧑‍💻

Articles & Tutorials

Nightmares on npm: How Two Malicious Packages Facilitate Data Theft and Destruction (4 minute read)

Two malicious npm packages, transferwise-iconfont and protect-api, were recently discovered. The former exfiltrates sensitive data, while the latter obfuscates destructive code to delete system files. Malicious open-source packages use tactics like namespace mimicry, obfuscation, and delayed execution for attacks.
Building a distributed log using S3 (under 150 lines of Go) (7 minute read)

This blog post describes building a distributed log using Amazon S3 in Go by using S3's scalability and durability to avoid managing a distributed storage system. The log uses a simple append-only design, where each record is stored as a unique S3 object with a sequentially increasing offset, preventing duplicate entries via conditional writes. SHA-256 checksums are incorporated into each record for data integrity, while crash recovery is implemented by iterating through S3 objects to find the last written offset.
Kubernetes on Hetzner (17 minute read)

This developer migrated a self-managed Kubernetes cluster from DigitalOcean to Hetzner for a 75% reduction in infrastructure costs and a doubling of compute resources. The migration involved using Terraform and Puppet for infrastructure management, Tailscale for secure node access, and Hetzner's managed firewall and load balancer.
🧠

Opinions & Advice

15 Lessons From 15 Years of Indie App Development (14 minute read)

This indie iOS app developer has been able to keep up his 15-year indie app career by enjoying the development process, understanding personal motivations (beyond solely financial gain), and accepting the high-risk, high-reward nature of indie app development. Success is a marathon, not a sprint, and it requires perseverance to not give up too early.
Rails is better low code than low code (7 minute read)

This author compares building a simple CRUD application using a low-code platform versus Ruby on Rails. Initially, the low-code platform is faster for creating a basic prototype, but adding features becomes increasingly difficult due to limitations and a lack of flexibility. Conversely, Rails, while initially slower, makes it much easier to accommodate unexpected feature requests and complex functionalities.
If Not React, Then What? (31 minute read)

React and similar frontend frameworks, used incorrectly, can lead to performance and accessibility issues. It's important for devs to use performance metrics and user testing to guide their tech choices. This means that sometimes just pure HTML and CSS can do the job compared to needing JavaScript for something.
🚀

Launches & Tools

Advent of Code 2024 (Website)

Advent of Code is a yearly Advent calendar that features daily programming puzzles suitable for various skill levels, solvable in any language. Devs can use it for practice, learning, or competition. No prior computer science background is required.
Steel (GitHub Repo)

Steel-browser is an open-source, containerized browser sandbox that provides a REST API for building AI agents and apps that interact with the web. It offers features like session management, proxy support, and integration with automation frameworks such as Puppeteer, Playwright, and Selenium.
🎁

Miscellaneous

Headless, boneless, skinless, & lifeless UI (6 minute read)

There are four categories of UI abstractions: Headless UI, Boneless UI, Skinless UI, and Lifeless UI. Headless UI is a common term where the abstractions often have underlying functionality and structure. Boneless refers to UI libraries that provide composable styles but no markup. Skinless UIs provide functioning markup with no styling. Lifeless UI abstractions, like TanStack, offer typesafe hooks and logic without rendering actual UI elements, leaving the developer responsible for applying those functions to elements and styles.
Octoverse: AI leads Python to top language as the number of global developers surges (32 minute read)

GitHub's Octoverse 2024 report reveals a surge in global developer activity fueled in part by the rise of AI. Python surpassed JavaScript as the most popular programming language due to increased interest in data science and ML (thanks to AI). Regions like India, Africa, and Latin America have grown a lot. AI-powered tools are being used more often during development.

Quick Links

Ask HN: How can I grow as an engineer without good seniors to learn from? (Hacker News Thread)

A recent data engineering graduate, working independently at a non-tech company, seeks advice on professional development without senior devs to learn from - the answers recommend open-source contributions, online resources, and switching companies.
Why Golang slices still surprise me (5 minute read)

Go slices are confusing because they behave as either dynamically sized arrays or fat pointers depending on context, leading to mutability and ownership issues and surprising behaviors like reslicing beyond the length and modifying the capacity.
Slow Deployment Causes Meetings (3 minute read)

Slow code deployment, rather than causing meetings, is more likely the reason for them, as organizations increase meeting overhead to compensate for their inability to deploy code frequently enough.

Love TLDR? Tell your friends and get rewards!

Share your referral link below with friends to get free TLDR swag!
Track your referrals here.

Want to advertise in TLDR? 📰

If your company is interested in reaching an audience of web developers and engineering decision makers, you may want to advertise with us.

If you have any comments or feedback, just respond to this email!

Thanks for reading,
Priyam Mohanty, Jenny Xu & Ceora Ford


If you don't want to receive future editions of TLDR Web Dev, please unsubscribe from TLDR Web Dev or manage all of your TLDR newsletter subscriptions.

Post a Comment

0 Comments