Newslurp

<< Stories

Good dev habits 🧑‍💻️, comparing web frameworks 💻, exceptions over error values 💢`

TLDR Web Dev <dan@tldrnewsletter.com>

September 11, 11:21 am

TLDR WebDev
Exceptions are a superior error handling mechanism compared to returning error values. They offer a better user and developer experience 

TLDR

 TLDR Web Dev 2024-09-11

🧑‍💻

Articles & Tutorials

Building the Same App Using Various Web Frameworks (9 minute read)

This developer built the same web application using different web frameworks: FastAPI, FastHTML, Next.js, SvelteKit, and FastAPI combined with Svelte. They compared the developer experience and unique features of each framework by implementing CRUD operations in a simple "Look at Your Data" app. FastAPI and FastHTML were more concise in code, while Next.js and SvelteKit required more code but offered a more structured approach and better UI elements.
A good day to trie-hard: saving compute 1% at a time (12 minute read)

Cloudflare's "pingora-origin" service processes a massive amount of HTTP requests - a small function called "clear_internal_headers" was identified as consuming a significant portion of its CPU time. To optimize this function, Cloudflare explored different data structures, eventually settling on a trie-based approach, which resulted in a new open-source Rust crate called "trie-hard". The trie-hard implementation reduced the CPU utilization of the function, achieving a 1.28% decrease in compute time, which matters a lot at scale.
Features of your font you had no idea about (11 minute read)

High-quality fonts have hidden features like variable axes for customizing appearance, stylistic alternates for different letter variations, swashes for decorative accents, and multiple numeral styles. Each of these features can be accessed using CSS properties, as shown with examples throughout this article.
🧠

Opinions & Advice

Good software development habits (5 minute read)

This developer writes about a few software development habits that have helped him write better software faster. They focus on writing small commits frequently, refactoring continuously, and deploying often. They also often write tests first to define API structures early.
Why I Prefer Exceptions to Error Values (15 minute read)

Exceptions are a superior error handling mechanism compared to returning error values. This is because exceptions offer a better user and developer experience by providing more graceful error handling and leading to faster execution. The common practice of using error values in languages like Rust and Go leads to excessive boilerplate and has a higher potential for hidden system errors.
SQLite is not a toy database (10 minute read)

SQLite's serverless nature lets developers embed it directly within applications, with a user-friendly console to provide straightforward access. It also has data import and export, native JSON handling, and advanced SQL capabilities like Common Table Expressions and set operations.
🚀

Launches & Tools

The joys of conversational ticketing: turning Slack/Teams conversations into Jira tickets (Sponsor)

Conversational ticketing uses chatbots and virtual assistants to automate the way users create, update, and resolve IT service tickets. Conversational ticketing is a popular choice for dev teams as it allows users to submit Jira tickets without leaving the tools they're already on (like Slack or MS Teams). Read more on the Appfire blog
Debugging in the Multiverse (6 minute read)

Antithesis is a new debugging tool that allows software engineers to rewind time and examine their code in various states. It simulates a deterministic universe, allowing users to step back in time, replay events, and analyze the code's behavior leading up to a bug or crash. It also enables time-travel to the future, accelerating simulations for faster debugging of networked systems.
Vomitorium (Website)

Vomitorium is a command-line tool that recursively scans directories, processes files, and compiles their contents into a single output file. Its single output file is useful for working with LLMs, as you can pass in the entire file as context for the LLM to process.
Google Illuminate (Website)

Google's AI tool, Illuminate, turns books and papers into audio discussions.
🎁

Miscellaneous

How We Made Jupyter Notebooks Load 10 Times Faster (17 minute read)

SingleStore's Jupyter Notebook integration faced significant load time issues. To address this, its engineering team implemented a series of optimizations, including decoupling the Jupyter server from the UI, mocking static requests, and pre-rendering the extension/UI. These efforts resulted in improved load times, reducing the P90 from around 30 seconds to 4 seconds, an 87% improvement.
Going open-source as a VC-backed company (14 minute read)

Briefer is launching a free and open-source version of its software while also offering a premium cloud-hosted version with more features. It chose the AGPL license to make sure its software remains open-source, deter competitors from copying it, and protect its business model. It is doing this to build user trust and differentiate itself from competitors like Tableau and Power BI.

Quick Links

Don't defer Close() on writable files (7 minute read)

Deferring the `Close()` method for writable files in Go can be harmful because it ignores the potential error return value.
Look out, kids: PHP is the new JavaScript (9 minute read)

This former JavaScript developer explores Laravel, a PHP framework, and finds it surprisingly easy and enjoyable to use.
Google and Apple lose their court fights against the EU and owe billions in fines and taxes (10 minute read)

The European Union's top court has imposed antitrust penalties against Google and Apple, which means they now owe billions of dollars in fines and taxes.
Who uses Accept-Language header? (5 minute read)

The Accept-Language header is not always respected by websites, like Yelp.

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.