FullStack Bulletin

Subscribe
Archives
June 10, 2024

🤓 #376: Engineering for Slow Internet

Fine-tuning text inputs, Software engineers are always grumpy, TypeScriptToLua, Zig in JavaScript, Popover drama, Idempotency

View this email in your browser

Logo

Hello,

Welcome to issue #376,
OK, I'll start by admitting that this issue came out a little bit weirder than usual! Somehow, I ended up selecting a few cool resources that are not necessarily strictly related to the world of full-stack web development. They are still cool engineering topics and I still think that they can teach you a lot, but do let me know what you think! 🙏
In other news, if you like serverless and multi-tenancy, my talk about Building Secure & Efficient SaaS Platforms on AWS Serverless from ServerlessDays Belfast is finally available on YouTube!
— Your editor, Luciano

“The real problem is not whether machines think but whether men do.“

— B.F. Skinner , Author

Engineering for Slow Internet – brr

☃️ Engineering for Slow Internet — Your website is probably not going to have many visitors from Antarctica, but this is not the only place in the World where internet connectivity might not be great. So, if you care about being inclusive and making sure that ALL your users can have a great experience on your website, here's an interesting story and a few ideas that you can (and should) borrow! Not all ideas are website specifics, but this is still worth a read! Read article

🔧 Fine-tuning Text Inputs — Web forms and inputs support a variety of additional attributes that can provide hints to the browser and improve the user experience of filling out forms online. With the tiniest bit of extra effort, we can make sure our forms help rather than hinder. For example, did you know you can enable or disable spell-check or auto-correct on an <input> element? Read article

😡 Why software engineers are always grumpy? — This article is a bit of a fun one. Not strictly related to full-stack web development, but I am sure you can recognise some of the laws of software complexity laws being stated here. Don't take it too seriously, but there's certainly some bittersweet truth to it. Read article

🌝 TypeScriptToLua — Lua is one of these brilliant languages that you either love or hate. Small and efficient, it appears often in plugin systems. For instance, I recently had to use it to create some special NGINX extensions. It was fun to learn it, but also a bit painful at times. With TypeScriptToLua, you can bring your TypeScript experience when you need to write Lua code. It's effectively a transpiler from TypeScript to Lua. Your mileage might vary, but probably still worth a look if you are afraid of Lua. Read article

⚡️ zigar: Enable the use of Zig code in JavaScript projects —  Zigar in an open-source software tool set that lets you utilize Zig code in your JavaScript project. Zig is still a relatively new language, but it really shines when you need extreme performance but you are looking for something a bit more modern and friendly than pure C. This can be the case if you are writing some low-level component and now you want to wrap it in a nice JavaScript API so you can use it from your Node.js projects. I haven't tried it yet, but I am really curious to give this a shot! View Repository

😢 The popover drama — The popover drama started with a tweet about how a HEY Calendar popover loaded slowly on a throttled internet connection. Then, a heated discussion followed in the best social media way, including nuance-free hot takes and professional trolls. This is a great starting point to understand the underlying tech that powers HEY: Hotwire, a ruby server-side rendered approach to reactive UIs in the browser. Read article

🤔 What does idempotent mean in software systems? —  If you ever attended a talk about good RESTful APIs I am sure you heard the term idempotency once or twice. But what does it really mean and why is it important to ensure consistency? Read article

Modern JavaScript for the Impatient

by Cay Horstmann

Modern JavaScript for the Impatient

Exploit the Power of Modern JavaScript and Avoid the PitfallsJavaScript was originally designed for small-scale programming in web browsers, but modern JavaScript is radically different. Nowadays, JavaScript programmers actively embrace functional, object-oriented, and asynchronous programming, while deprecating error-prone concepts from the past. Modern JavaScript for the Impatient is a complete yet concise guide to JavaScript E6 and beyond. Rather than first requiring you to learn and transition from older versions, it helps you quickly get productive with today's far more powerful versions and rapidly move from languages such as Java, C#, C, or C++.

Buy on Amazon.com

Buy on Amazon.co.uk

Extra content please! 🙏

  • Mastering date formatting using Intl.DateTimeFormat in JavaScript
  • The Cost Of Shutting Down The Internet
  • The (CSS) Gap
  • 10 modern Node.js runtime features to start using in 2024
  • How to build your first Web Component
  • Node.js Test Runner: A Beginner's Guide
  • What is Serverless in 2024 & Why You Should Care? (video)
  • The mathematics of lasagna (funny video for math nerds)

👋 That’s all for this week. See you next Monday!

Greetings from your full stack friends Luciano & Andrea

🙌 Support us

If you enjoy FullStack Bulletin, consider sharing this newsletter with your friends and colleagues.


If there's something we can improve, let us know!


You can also sponsor the next issue!

Website iconTwitter iconInstagram icon

Copyright (C) 2024 FullStack Bulletin. All rights reserved.
*|IFNOT:ARCHIVE_PAGE|*

FullStack Bulletin is a FREE weekly curated newsletter for ambitious full stack developers. We sift the internet for builders, covering frontend, backend, databases, DevOps, and architecture to find what truly matters. Expect practical picks, clear takeaways, and fresh ideas that cut the noise, sharpen your skills, and fuel your creativity so you can put them to work right away.

*|END:IF|*

Our mailing address is:
*|IFNOT:ARCHIVE_PAGE|**|HTML:LIST_ADDRESS|**|END:IF|*

Want to change how you receive these emails?

You can update your preferences or unsubscribe

Don't miss what's next. Subscribe to FullStack Bulletin:
Powered by Buttondown, the easiest way to start and grow your newsletter.