Hussein Nasser Profile picture
Apr 23 2 tweets 1 min read Twitter logo Read on Twitter
DNS is beautiful

Despite its drawbacks, DNS is brilliantly designed for scale. We can learn few lessons from this protocol especially when designing our own apps. Heard of partitioning? DNS is one of the first protocols that implemented it successfully.

To understand this… twitter.com/i/web/status/1… Image
DNS is beautiful

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Hussein Nasser

Hussein Nasser Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @hnasr

Dec 26, 2022
Database Indexing and Hotel rooms
(a thread)

If you’ve been to a hotel often you would see a sign looking something like this on the way to your room. This helps finding rooms convenient and fast especially if the hotel has many rooms.
Take a hotel with 9 floors. Your room number is 917. The first step is to find which floor your room is at, usually the first digit represents the floor. This means your room is on the 9th floor
You just went immediately to your floor. without this knowledge you would have searched every single floor in the hotel to find your room.
Read 10 tweets
Dec 24, 2022
Memory Management and Fragmentation (a thread)
When allocating items like arrays, strings or integers, they usually go to random places in the process memory. This leaves small gaps of unused memory scattered across the physical memory, a problem referred to as fragmentation.
Fragmentation occurs when gaps between allocated items continue to increase. This makes it difficult to find a contiguous block of memory large enough to hold new items. Technically there might be enough memory for the item but the memory is scattered all over the physical space
Read 7 tweets
Dec 21, 2022
The brilliance of @ShopifyEng database engineering (a thread)
Shopify’s idempotency token is time based ULID, because these are unique which provide the idempotency) and also ordered by time requests can be quickly looked up in index and guess what! chances that you are querying requests that are next to each other temporally
which means the B+Tree leaf page is hot and cached in the buffer pool. The next request query will most probably hit the page cache in db because it is ordered by time. Most queries are for requests that are temporly next to each other.
Read 9 tweets
Nov 3, 2022
I like debugging connection problems to backend applications and databases. I ran into an interesting one with SQL Server on aws and thought I’ll share it here (thread)
Had two security groups one has the database replicas (sgDB) and the other has the backend applications (sgBK) added a rule so Port 1433 is allowed from sgBK to sgDB.
But I still could not connect! From the same SS DB machine I could connect just fine using ipv4 loopback localhost and also I can connect using the hostname.
Read 11 tweets
Dec 16, 2020
My approach for designing and architecting software. I thought might help some of you guys.
I block 2-3 hours of uninterrupted time slots. No meetings, emails or any notification. I use a note app that is clutter free (I use write-monkey for Windows & Focus for Mac) full screen dark mode. This way its only me and what I type.
I first start writing the workflow of how the software will be used in detailed length. I leave nothing out. There is a magical thing of stating the obvious that helps the ideas and creativity freely roam. This step produces many questions to the project's stakeholders
Read 12 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(