BetterDev #238 - Avoiding Double Payments in a Distributed Payments System
Better Dev #238 Jan 9, 2023
Hi everyone, this week is security week. First, if you used CircleCI, make sure to rotate any secret since they suffered a breach. Second, Slack private repository got hacked too, and there is no customer data there but regardless, if your company use Slack, best to be rotate as well. Third, Pytorch got a supply chain attack and compromise too, luckily only for nightly build, so if you don’t use nightly build, you’re fine
How we built a generic idempotency framework to achieve eventual consistency and correctness across our payments micro-service architecture.
Managing your business’s Apple devices can be a headache if you don’t have a robust IT team—but you’re savvier than that. With Jamf Now, you bypass the confusion and head straight to streamlining Apple mobile device management. This integration makes it easy for biz leaders to deploy, oversee, and secure employees’ devices, while staff enjoys a simple and smooth user experience. Sign up for a free account now with the capabilities to manage three devices, and add more for just $2 per device each month.
This isn’t quite a technical post but I think it’s amazing that when we walk to ATM and withdrawal our money, it just works and very reliable too.
Mercri ecently moved databases from local files in the codebase to an online Database. It took longer than expected but with good reason. The project started as POC and turn into a success, so they live with data in local files until traffic spike 10x and data is added at the 10x rate too
Soft delete is a technique where instead of removing data, we flag it as deleted by using a column like “deleted: true” or “deleted_at: time”. It seemed smart, cool, and very convenience since the data is there to refer back. However, it is easy to lead to mistake and complex our query. Every query has to check for it, index need to be built around, whoever join data need to check for it and so on. It adds up quickly and everytime I used it, I regret in the end, and just delete data for real. Here is another middle approach: use a completely new table with jsonb to store the whole record.
Working with CSS layout is like just tweaking thing unil it works, exmaple the margin collasible I found is very confusing. The author share with us the mental model shift that makes CSS more intuitive
A tutorial to walk through understanding why docker is slow in term of OS on mac and a few solution. In short, Mutagen is what I plan to look into for my work too. We linked to Mutagen before and it’s a great tool. I heard good feedback
Encryption is transforming messages into random-looking texts to ensure confidentiality between two parties. What is our objective here? We want to generate proof allowing us to verify an encryption algorithm, ensuring it does what it was designed for.
Code to read
Reddit UI is very slow to load, constantly nagge us to use mobile app. Luckily they have a very openapi and people build UI on top of it. librreddit is built on rust, focus on content and run very fast. Part of my routine is source content from Reddit and IO found libreddit is a much easiser way to navigate reddit nowadays.
Rusta VM and compiler for Lua in Go. A good tool to add scriptable feature to your app. Another I approach I used is Otto
GoThe simplest, fastest repository for training/finetuning medium-sized GPTs. I like these small codebase to help me understanding more about these GPT and AI concept.
Pythonosv.dev is a vulnerability database and triage infrastructure for open source projects aimed at helping both open source maintainers and consumers of open source.
PythonRonin is a free and Open Source Ruby toolkit for security research and development. Ronin also allows for the rapid development and distribution of code, exploits, payloads, etc, via 3rd party git repositories. It’s quite a big codebase but we can learn how thing is structure in these kind of tool.
RubyTools
A MongoDB compatible server but use Postgres to persist data behind the scene. Most MongoDB users do not require any advanced features offered by MongoDB; however, they need an easy-to-use open-source database solution. Recognizing this, FerretDB is here to fill that gap.
This probably should be in “Read code” but I think it could be a very valuable tools to design SSH-based tool. One of my use case is I have a very expensive build server which maynot being used often, let them run around is costly, so I setup a smaller node, and forward TCP traffic to the bigger node. When there is no connection, it shutdown the expensive node, and when the first request come in, it boot up the expensive server.
Tools for synching and streaming files from Windows to Linux extract from Google Stadia project.
Open source on-call scheduling, automated escalations, and notifications so you never miss a critical alert
Learning to speak a new language goes beyond just vocabulary: it’s about being able to hold a real-life conversation with a local, and understanding the culture and the people of each place. Consider Babbel your expert-led passport to learning, with 10-minute lessons that are so effective, many users feel confident speaking a new language in just three weeks. Supplement those with the podcasts, games, articles and live online classes for a well-rounded education in weeks. Start learning a new language (and culture) today for up to 55% off.
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 #237 - Challenging algorithms and data structures every programmer should try
Monday, January 2, 2023
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
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
You Might Also Like
Import AI 399: 1,000 samples to make a reasoning model; DeepSeek proliferation; Apple's self-driving car simulator
Friday, February 14, 2025
What came before the golem? ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
Defining Your Paranoia Level: Navigating Change Without the Overkill
Friday, February 14, 2025
We've all been there: trying to learn something new, only to find our old habits holding us back. We discussed today how our gut feelings about solving problems can sometimes be our own worst enemy
5 ways AI can help with taxes 🪄
Friday, February 14, 2025
Remotely control an iPhone; 💸 50+ early Presidents' Day deals -- ZDNET ZDNET Tech Today - US February 10, 2025 5 ways AI can help you with your taxes (and what not to use it for) 5 ways AI can help
Recurring Automations + Secret Updates
Friday, February 14, 2025
Smarter automations, better templates, and hidden updates to explore 👀 ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏
The First Provable AI-Proof Game: Introducing Butterfly Wings 4
Friday, February 14, 2025
Top Tech Content sent at Noon! Boost Your Article on HackerNoon for $159.99! Read this email in your browser How are you, @newsletterest1? undefined The Market Today #01 Instagram (Meta) 714.52 -0.32%
GCP Newsletter #437
Friday, February 14, 2025
Welcome to issue #437 February 10th, 2025 News BigQuery Cloud Marketplace Official Blog Partners BigQuery datasets now available on Google Cloud Marketplace - Google Cloud Marketplace now offers
Charted | The 1%'s Share of U.S. Wealth Over Time (1989-2024) 💰
Friday, February 14, 2025
Discover how the share of US wealth held by the top 1% has evolved from 1989 to 2024 in this infographic. View Online | Subscribe | Download Our App Download our app to see thousands of new charts from
The Great Social Media Diaspora & Tapestry is here
Friday, February 14, 2025
Apple introduces new app called 'Apple Invites', The Iconfactory launches Tapestry, beyond the traditional portfolio, and more in this week's issue of Creativerly. Creativerly The Great
Daily Coding Problem: Problem #1689 [Medium]
Friday, February 14, 2025
Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Google. Given a linked list, sort it in O(n log n) time and constant space. For example,
📧 Stop Conflating CQRS and MediatR
Friday, February 14, 2025
Stop Conflating CQRS and MediatR Read on: my website / Read time: 4 minutes The .NET Weekly is brought to you by: Step right up to the Generative AI Use Cases Repository! See how MongoDB powers your