BetterDev #237 - Challenging algorithms and data structures every programmer should try
Better Dev #237 Jan 2, 2023
Happy new year everyone. 2022 was a brutal year for me. A few app and idea I was working on wasnt turning out well and my start-up also shutdown. At the end of 2022, I got a terrible COVID but luckily thing turn out well and here am I sending out this issue. Hope 2023 will be a better year. I’ll keep building software, trying out new ideas again, and keep sending newsletter :-). If you like my newsletter, consider sponsor me on https://www.buymeacoffee.com/betterdev. Thank you so much for being audience all these years.
There are some really interesting algorithms and data structures out there. Not only have they come up during job interviews, but learning them changed how I think about problems. Plus they’re useful even if you don’t work on Google-scale problems. One of interesting data structures I learn from this is piece tables to represent text buffer of an editor. VScode use it too to implement their text buffer.
an uuid looks like this ff78ae6b-7176-46e9-81c6-4bee60ba81bb
? is uuid a string? how come it’s has 128 bit? At its core, UUID is just a byte array, we can re-present that byte array in whatever encoding we want, base10, base64, base36, or hex.
The CDN we’re going to design uses: nginx, lua, docker, docker-compose, Prometheus, grafana, and wrk.
To represent raw byte data, we cannot use ascii printable alone, there are many char cannot be print. So we need raw byte, but writing all 0 and 1 next to each other in a 8bit sequence gonna be long and hard to see. Hexadecimal solve that problem very nice because it has a unique feature, one hex character can re-present 4 bit, which mean we need only 2 char to represent a byte.
Thomas shows us how he use Raspberry Pi to build a DIY security alarm system, using a Raspberry Pi as the controller. His plan was to make a self-sustained system, using proper alarm hardware — like PIR sensors and sirens.
A very interesting aspect of SSH private key and. How their optimization allow the key to not require a certain part of the file.
We linked to this site in last issue about pipe. This week we learn about page cache, file operation, and mmap syscall. What happen when we read or write data? how does that generate a syscall and how kernel do it? We know that the kernel cache data when you read a file, but how does we check what is cache, how do we inspect it? how does that data is invalidate
Filippo is a security expert who design and implement age encryption. He’s probably most famous for his tool mkcert. So let’s learn how security use password manager to secure their password day to day. I belived for engineers, password manager shouldn’t be a cloud solution. we should self-hosted it and manage our own vault
Here are five rules of thumb you can apply to common UI design challenges when building web applications: Use defaults, Obvious settings, Show progress, Avoid interruptions, Flat hierarchy. Working on my second saas app(my first is mailwip, an email forwarding service), I like these kind of UI articles.
Today, I’ll take you through the process I came up with in regard to transforming an SVG path into a vector rope drawing. You will learn how to turn a path into a true svg image with texture around the path.
Code to read
a simple password manager. encryption via age, written in portable posix shell. In the recent incident of LastPass, it maybe wise to roll out own password manager to ensure 100% our data is fully encrypted
Basha complete open source authentication solution for Next.js applications. It is designed from the ground up to support Next.js and Serverless. The code is a monorepo of many small package so you may want to focus on next-auth package and the core
JavaScriptTools
Mailchimp Open Commerce is an API-first, headless commerce platform built using Node.js, React, GraphQL. Deployed via Docker and Kubernetes.
a tool for Linux file system snapshot management. Apart from the obvious creation and deletion of snapshots it can compare snapshots and revert differences between them. In simple terms, this allows root and non-root users to view older versions of files and revert changes.
an instant REST+GraphQL API and intuitive no-code data collaboration app for any SQL database.
You can view this issue in web browser.
If you have any suggestion/feedback, do tell me by replying to this email. I read them all.
No longer want to receive these emails? Unsubscribe
Older messages
BetterDev #236 - What every SRE should know about GNU/Linux shell related internals: file descriptors, pipes, terminals, user sessions, process groups and daemons
Monday, December 19, 2022
Better Dev #236 Dec 18, 2022 What every SRE should know about GNU/Linux shell related internals: file descriptors, pipes, terminals, user sessions, process groups and daemons Have you ever thought
BetterDev #235 - The architecture of Mastodon
Tuesday, December 6, 2022
Better Dev #235 Dec 5, 2022 This week there is a vulnerability in VS Code. If you used VS Code, make sure to upgrade your VS To latest version after v1.73.1. How Gitlab diagnosed and resolved Redis
BetterDev #234 - Who controls the internet
Monday, November 21, 2022
Better Dev #234 Nov 21, 2022 Happy thanks giving for anyone that celebrate this holiday. I take a week off next week for thanksgiving so there will be no issue next week. I recommend some get away time
BetterDev #233 - Let's write a chess engine
Monday, November 14, 2022
Better Dev #233 Nov 14, 2022 Let's write a tiny chess engine in go In this article we will try to understand how chess engines work by porting the sunfish chess engine to Go. Sunfish is notable for
BetterDev #232 - Reducing BigQuery Costs: How We Fixed A $1 Million Query
Monday, November 7, 2022
Better Dev #232 Nov 07, 2022 Hi everyone, welcome to first issue of November. This week, where I live, red leaves start to emerge and my family went outside, enjoy seeing the beautiful color of autumn.
You Might Also Like
Matrix Botnet Exploits IoT Devices in Widespread DDoS Botnet Campaign
Wednesday, November 27, 2024
THN Daily Updates Newsletter cover The AI Value Playbook ($35.99) FREE for a Limited Time Business leaders are challenged by the speed of AI innovation and how to navigate disruption and uncertainty.
The Sequence Chat: Why are Foundation Models so Hard to Explain and What are we Doing About it?
Wednesday, November 27, 2024
Addressing some of the interpretability challenges of foundation models and the emerging fields of mechanistic interpretability and behavioral probing. ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
Overcoming Perfectionism: How to Break Free from the Enemy of Progress
Wednesday, November 27, 2024
Discover how perfectionism hinders progress and learn practical strategies to overcome the fear of imperfection, boost productivity, and achieve your goals without getting stuck in the pursuit of
🖤 Laravel Black Friday Deals!
Wednesday, November 27, 2024
The biggest deals of the year Laravel Black Friday Deals View in browser Laravel News Editor Note: We are sending this outside the regular Sunday newsletter schedule because some of these specials end
BetterDev #271 - Memory: The Forgotten History and Why did Windows 95 setup use three operating systems?
Wednesday, November 27, 2024
Better Dev #271 Nov 26, 2024 Hi all, Welcome to thanksgiving issue of BetterDev. Hope everyone had a safe and warm thanksgiving. It's getting so cold these days. If you are in warzone such as
Mapped | Unemployment Rate By U.S. State in 2024 💼
Tuesday, November 26, 2024
As of October 2024, DC and Nevada tied for the highest unemployment rate in the US at 5.7%. Which states saw the lowest rates? View Online | Subscribe | Download Our App FINAL CHANCE - ENDS TONIGHT!
🔊 7 DIY Tips for Soundproofing a Room — Why I Switched to Xfce for Linux Mint
Tuesday, November 26, 2024
Also: Home Theater Sound Terms Explained, and More! How-To Geek Logo November 26, 2024 Did You Know The shiny layer of a CD doesn't contain the data; the plastic polycarbonate layer does. The shiny
JSK Daily for Nov 26, 2024
Tuesday, November 26, 2024
JSK Daily for Nov 26, 2024 View this email in your browser A community curated daily e-mail of JavaScript news JavaScript Certification Black Friday Offer – Up to 54% Off! Certificates.dev, the trusted
NumPy, Loop Targets, Vector Animation, and More
Tuesday, November 26, 2024
NumPy Practical Examples: Useful Techniques #657 – NOVEMBER 26, 2024 VIEW IN BROWSER The PyCoder's Weekly Logo NumPy Practical Examples: Useful Techniques In this tutorial, you'll learn how to
Your Games Quarterly newsletter has arrived
Tuesday, November 26, 2024
What's new for games in Google Play and Android Email not displaying correctly? View it online November 2024 The First Developer Preview of Android 16 The First Developer Preview of Android 16