Ramtin Abadi
ramtinabadi.bsky.social
Ramtin Abadi
@ramtinabadi.bsky.social
Writing about business, tech, software, and anything in between
Python has changed, and nowadays, you need to add uv to the installation methods of your Python package.

And you what, I really like it. Using uv you clearly know if a package is meant for development and not for production.
December 18, 2025 at 1:57 PM
I wish more languages had Golang's defer concept
December 17, 2025 at 1:07 PM
Which one do you rely on more to test your flutter app?
- unit tests
- or integration tests

ReChive's integration testing is passing the 25 min mark, maybe I should focus more on unit tests
December 17, 2025 at 12:29 PM
The best way to improve the performance of your backend? Send as few requests from your frontend/app as you can
December 17, 2025 at 10:15 AM
Resume Driven Development
December 9, 2025 at 10:54 PM
Dart, if it can start enforcing developers to handle exceptions similar to Java, would be a much better choice for mission-critical code than Go
December 8, 2025 at 9:34 PM
Anthropic acquihiring Bun will tell you everything you need

If a major AI company has to pay millions to bring people with actual skills to move a software project forward, you'd be a fool to buy their hype and rely solely on their product (that they don't rely on themselves)
December 3, 2025 at 11:01 AM
Just created a new open-source package -> pervert

This pervert is innocent; it just lurks in the shadows and profiles your Python code (Django ORM's query at the moment)

github.com/Vieolo/pervert
GitHub - Vieolo/pervert: Analyzing and profiling python applications, innocently
Analyzing and profiling python applications, innocently - Vieolo/pervert
github.com
November 24, 2025 at 6:43 PM
Out of all the different software I've made over the past decade, nothing gives more joy that making terminal-based tools and CLIs
October 1, 2025 at 6:59 PM
What sort of new-age method of hacking is this?
September 29, 2025 at 8:19 AM
Is there a way to disable liquid glass on iOS 26?

Asking for a ... friend
September 27, 2025 at 10:15 AM
In my iPhone 17 simulator, for some reason, the shadow of the Wallet app's text is separated
September 25, 2025 at 9:08 PM
In the next update of ReChive, you're going to have a more granular control over how you search the communication entries
September 25, 2025 at 4:40 PM
Saw a post on LinkedIn that was made with ChatGPT, someone had commented on it using ChatGPT, and the op responded to that comment with ChatGPT. Basically, ChatGPT interacting with ChatGPT

You're doing AI wrong...
September 24, 2025 at 12:27 PM
I have started using the error-as-return-value on all Vieolo's throw-catch based codebases, i.e., Python, JS/TS, Dart

No more throwing exceptions without the caller knowing it. If a code inside a function is throwing an error, it should be caught and be returned as a value.
September 18, 2025 at 11:45 AM
Remember, SemVer is a guideline that many developers don't fully understand/honor

If you want a reliable code, always pin to a specific version, and when upgrading a dependency, read the changelog to make sure there are no breaking changes
September 13, 2025 at 7:40 AM
It's not a "skill issue" if most people make the same mistake; it's just a bad design
September 11, 2025 at 1:52 PM
Is it only me or do you also have a bunch of repos and tools you want to work on, but don't have time, and now your GitHub looks like a graveyard
September 10, 2025 at 7:26 PM
My ChatGPT can't count. How y'all are using it for important work?

To save 5 min and not write a piece of code, I gave ChatGPT two JSON files, one had 6 references in the second file.

ChatGPT insisted that there were only 5, then accepted there were 6, but used only 5 of them
September 8, 2025 at 6:55 PM
Java technical debt is much worse than C/C++

You can use the C/C++ code within other projects and build on top of them. For Java, you're pretty much stuck with a JVM-based language or a complete rewrite
September 7, 2025 at 12:43 PM
If you're hiring developers, interviewing based on LeetCode is useless. Instead, ask them to read someone else's code and review it.

The ability to fix the bad LLM-generated code is now more important than being able to code a linked list from scratch.
September 6, 2025 at 11:12 PM
People often forget how much of our infrastructure code is written in C/C++

It's a tempting idea to rewrite it in another language but in reality, you would need years to understand and rewrite these battle tested libraries

The only solution is a gradual file-by-file rewrite
September 5, 2025 at 7:48 AM
WhatsApp just sent a message promoting their new feature, helping users detect fraudulent groups

And their animation uses a Crypto group as an example

Just wanted to give you an update about all the "possibilities" that the crypto provided after so many years
August 26, 2025 at 1:16 PM
I love Golang, but it baffles me why they refuse to add enums to the language.

Look at the image, the "GET" is just a string. While calling the function, you should magically know the possible values.
August 22, 2025 at 11:41 PM
If you're a German business or freelancer, your record-keeping must follow the GoBD compliance.

Read more about it here 👇
vieolo.com/blog/gobd_fo...
If you're a German business, you need to know about GoBD compliance
GoBD is a mandatory legal compliance for German business to maintain an accurate and verifiable record of their financial activity
vieolo.com
August 18, 2025 at 8:02 PM