#248 — January 8, 2020 |
This Page is Designed to Last: A Manifesto for Preserving Content on the Web — A list of ‘unconventional guidelines’ (though if you were building Web pages in the 90s, they’ll seem very familiar!) for making web content that lasts. This one saw plenty of heated discussion over on Hacker News. Let's make plain, reliable HTML more of a 'thing' this decade? :-) Jeff Huang |
SHA-1 is a Shambles — Three years after the first collision was found, the first chosen-prefix collision for SHA-1 has been computed. Ars Technica has a more complete writeup on what this means and what the implications are. Gaëtan Leurent and Thomas Peyrin |
On-Demand Webinar: How to Prepare Your Data Pipeline for Machine Learning and AI — Training-based session on transforming your data to power machine learning and AI projects. Use AWS Data Pipeline to automate data movement and transformation and explore software solutions in AWS Marketplace that make your data analytics-ready. Amazon Web Services (AWS) sponsor |
AWS Fargate Spot: Serverless Containers.. When They're Cheap To Run — Fargate lets you run containers under a ‘serverless’-style model, and Fargate Spot takes things a step further by offering up-to a 70% discount by running on spare capacity (a la EC2 ‘spot instances’). Your tasks better be tolerant of interruptions, however. Amazon Web Services |
The Front-End Performance Checklist 2020 — This detailed, front-end performance checklist that has been updated for 2020 — filled with everything worth knowing about creating fast experiences on the web. Smashing Magazine |
Only 15% of Basecamp's Ops Budget is Spent on Ruby — Basecamp (formerly 37signals) is a popular SaaS product (indeed, a pioneer in the space) and was built using Ruby on Rails. Despite facing criticism, Rails’ creator and Basecamp founder David Heinemeier Hansson explains how it’s still the best choice for them. David Heinemeier Hansson |
Adopting A New Approach to HTTP Prioritization — HTTP prioritization is important for web performance. This is the story behind a new approach recently adopted for further work in the IETF. As the author says, “I expect the standardization process to refine the design and for things to go stale quickly” but it’s good to see where things are headed. Lucas Pardue |
|
💻 Jobs |
DevOps Engineer at X-Team (Remote) — Work with the world's leading brands, from anywhere. Travel the world while being part of the most energizing community of developers. X-Team |
Find a Job Through Vettery — Vettery is completely free for job seekers. Make a profile, name your salary, and connect with hiring managers from top employers. Vettery |
📕 Tutorials |
Best Practices for Designing a Pragmatic RESTful API — This topic is unavoidably opinionated, but there’s a lot of good pointers to digest here. Vinay Sahni |
Building a System to Do IPv4 to Host Lookups Quickly — I imagine the number of people who need to do this is relatively small, but it’s an interesting problem and solution. Mark Litwintschik |
Building a BitTorrent Client From The Ground Up in Go — If you’re a Go developer, don’t forget we have a Go newsletter too! :-) Jesse Li |
Shape The Trends: Take the Survey and Win Amazing Prizes & Gear — What are the biggest dev trends in 2020? Help us find out. Take the new DevEconomics survey, for a chance to win cool prizes. Developer Economics Survey sponsor |
Making S3 More Resilient using Lambda@Edge — Contentful (a popular CMS-as-a-service) had big problems when S3 had an outage back in 2017 so set out to make things more resilient. How? Here’s their story. Julia Biro |
How to Reduce Costs of an HTTP(S) API on AWS — An engineer at a gaming analytics tracking company shares some insights on running a large scale HTTP API on AWS and squeezing down the bytes used. Magnus Henoch |
Good Comments Read Well and Are to The Point — Some guidance on writing better comments in your code. Martin Tournoij |
From Zero to main(): Bare Metal Rust — Bringing an embedded Rust application from zero to main. James Munns |
5 Steps From Monolith to Microservices Jasdeep Khalsa |
💡 Stories and Opinions |
Go + Services = One Goliath Project — Khan Academy’s journey from a monolithic Python 2 to a distributed, service-based Go platform, including the rationale and progress made to date. Khan Academy |
▶ Why GitHub Actions Is This Developer's New Favorite Programming Tool — While Github Actions is commonly associated with deployment and pipelines, it’s ultimately an engine for running JavaScript in the cloud, and that opens up some neat use cases as demonstrated here. 17 minutes. Kristian Freeman |
What I've Learned Over 10 Years on Stack Overflow — If you’re a developer, you’ll have spent some time on Stack Overflow even if you’ve not realized it. Matt Bierner |
How I Once Saved Half A Million Dollars with a Single Character Code Change — Or four one liners every Java programmer should know. Henry Coles |
RDS's Price Premium over EC2 Can Be More Than You'd Expect — RDS is Amazon’s Relational Database Service which can provide a fully managed Postgres (or MySQL, Oracle, and others) service on AWS. The increasing price premium of RDS over EC2, however, surprised this developer. Rick Branson |
Oracle Copied Amazon’s API — Was That Copyright Infringement? — Is copying APIs essential to competition in the software industry? Ars Technica |
How Blazor Is Going to Change Web Development — Blazor is a framework from Microsoft that can be used to develop interactive client-side web UIs with C#. Jeremy Morgan |
Ask HN: Is CS Likely To Still Be A Good Career in 3-5 Years? — A Hacker News discussion about the long-term value of a computer science education. Count me in with the bullish outlook. Hacker News |
Building a New Windows 3.1 App in 2019 — I admire people who indulge in these sorts of weird projects :-) Yeo Kheng Meng |
🛠 Code and Tools |
Bash-my-AWS: A Set of CLI Commands for Working with AWS — Sure, there are already tools for working with AWS from the command line, but this aims to make things even simpler. Mike Bailey |
Track Down Performance Issues FAST with Scout APM. Try It for Free Today ScoutAPM sponsor |
Docuum: LRU Eviction of Docker Images — Performs least recently used (rather than least recently created) eviction of Docker images to keep disk usage below a given threshold. Stephan Boyer |
'We Are Giving Every IPv6 Address A Name' — There are limited use cases for this (also consider all the points raised on Hacker News), but if you want to have a hostname that resolves to any IPv6 address.. here you go. ungleich glarus ag |
httpserver.h: Single Header Library for Writing Non-Blocking HTTP Servers in C Jeremy Williams |
😂 A tip and a pun, all in one |