The Backend Engineering Show with Hussein Nasser

Hussein Nasser
undefined
Jun 17, 2020 • 7min

Multicast DNS

In this video I discuss multicast DNS. Wikipedia defines multicast dns In computer networking, the multicast DNS (mDNS) protocol resolves hostnames to IP addresses within small networks that do not include a local name server.    0:00 Intro 0:30 DNS Explained in LAN 4:00 Multicast DNS
undefined
Jun 17, 2020 • 19min

Overengineering in Software

In this video, I explain the different cases where we overengineer software especially in two pieces, software code, and system design and architecture.  Chapters 0:00 Intro 1:45 OverEngineering in Software Development 7:15 OverEngineering System Design
undefined
Jun 7, 2020 • 12min

Can your ISP block you from Watching A Single YouTube Video?

We know ISP can block you from going to YouTube all together but can they block you from watching a single youtube video? I discuss that in this video  Stay Awesome, Hussein
undefined
Jun 2, 2020 • 9min

What Caused Stripe and Ruku to stop working on May 30th 2020? Expired Root Certificate Bug Explained

In this video I explain what happened to services such as stripe & roku which failed to establish TLS sessions because the ROOT certificate AddTrust External CA Root has expired. This is a bug in openSSL and other software the perform this kind of validation.   I explain what happened in details..   Resources https://twitter.com/sleevi_/status/1266647545675210753 https://tools.ietf.org/html/rfc4158 https://ohdear.app/blog/resolving-the-addtrust-external-ca-root-certificate-expiration
undefined
May 31, 2020 • 9min

MultiThreading and MultiProcessing over a Single TCP Connection, Good Idea?

Sharing a Single TCP Connection whether this is HTTP, WebSockets or just RAW TCP protocol between multi-threading or multi-processes application is bound to cause bad undesirable effects. I explain this in this video and give example of how QUIC & HTTP/2 have solved this problem.   Pooling 5:00 QUICK Database 6:30 HTTP/2 Playlist 7:00
undefined
7 snips
May 30, 2020 • 19min

How Does Database Store Tables on Disk? Explained both SSD & HDD

This podcast explores how databases store tables on disk, discussing the allocation of bytes, unique identifiers, and retrieval of multiple rows. It also compares solid-state drives (SSDs) and hard disk drives (HDDs) in terms of performance and lifespan. The challenges of inserting and updating data in SSDs are addressed, along with the introduction of LSM trees as a solution for rebalancing B-trees on SSDs.
undefined
May 26, 2020 • 5min

Understand Fundamentals not Tools (e.g. WebSockets vs Socket.io, Javascript vs React, Python vs Django)

This podcast discusses the lack of fundamentals in engineering and the confusion between core technologies and tools. It emphasizes the importance of understanding how WebSockets work and the inner workings of tools and frameworks in backend and frontend development. It also explores the debate between Socket.IO and WebSockets and highlights the value of deep knowledge in one's specialization.
undefined
May 25, 2020 • 12min

How to Spot Good Software Documentations from Really Bad one?

In this video I discuss all about software documentation.Good doc from bad doc and how to differentiate and is documentation the only source of learning about a particular tech?
undefined
May 24, 2020 • 8min

7 Tips To Optimize Your Backend API (Without Caching)

In this podcast I discuss 7 Tips To Optimize Your Backend API (Without Caching)  1) The serialization representation (XML/JSON, pbf) 0:40 2) Preheating connections 3) H1 vs H2 4)TCP meltdown (big distance) 5) Proxies 6) large payload (select * ) 7) Client side processing (transfomring the work)
undefined
May 20, 2020 • 15min

10 FrontEnd Performance Tips To Improve Your Application (Any Programming Language)

In this video, I would like to discuss 10 performance tweaks and tips that you can apply to your frontend application to improve its performance and efficiency. These tips are applicable to any programming language on Web, mobile, or desktop application.  Chapters 0:00 Intro 0:40 Optimistic queries 1:57 Paging 3:00 Lazy Loading 4:00 Request what you Need 6:53 Connection State 10:00 LRU Cache 11:10 Group Notifications 12:30 Avoid Expensive Queries Even At Expense of Bad UX 14:00 Design your UX So you Minimize Requests

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app