惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
Lohrmann on Cybersecurity
Martin Fowler
Martin Fowler
Engineering at Meta
Engineering at Meta
腾讯CDC
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Microsoft Azure Blog
Microsoft Azure Blog
G
Google Developers Blog
TaoSecurity Blog
TaoSecurity Blog
博客园_首页
Vercel News
Vercel News
Hugging Face - Blog
Hugging Face - Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Last Week in AI
Last Week in AI
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
T
The Exploit Database - CXSecurity.com
量子位
Project Zero
Project Zero
A
Arctic Wolf
小众软件
小众软件
NISL@THU
NISL@THU
C
CERT Recently Published Vulnerability Notes
有赞技术团队
有赞技术团队
MongoDB | Blog
MongoDB | Blog
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
N
News and Events Feed by Topic
宝玉的分享
宝玉的分享
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Troy Hunt's Blog
P
Privacy & Cybersecurity Law Blog
Security Latest
Security Latest
B
Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
D
DataBreaches.Net
Schneier on Security
Schneier on Security
The Hacker News
The Hacker News
K
Kaspersky official blog
C
Check Point Blog
Hacker News: Ask HN
Hacker News: Ask HN
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Webroot Blog
Webroot Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
人人都是产品经理
人人都是产品经理
AI
AI
Cisco Talos Blog
Cisco Talos Blog
MyScale Blog
MyScale Blog
Cloudbric
Cloudbric
B
Blog RSS Feed
S
Schneier on Security
P
Palo Alto Networks Blog

KIRUPA | Designers and Developers Unite

Understanding Merkle Trees Is a CompSci Degree Still Valuable in the Age of AI? The Model Context Protocol (MCP) Explained Vibe Coding + Expertise = Mega Win! 🏆 Animating our Grid How to Count in Negabinary (Base (-2)) — A Visual Guide Counting in Binary and Hexadecimal Pascal Pixel on Design, Development, and Solopreneurship! Drawing Sharp Lines on the Canvas The KIRUPA Tech Stack : It Bloom Filter: A Deep Dive Hash Functions Deep Dive Advanced Glitch Effect with Sound AI Killed the Content Creator...Star 🤩 Measuring the Distance Between Two Points by using the Pythagorean Theorem Detecting Browser Zoom Changes in JavaScript Creating a Fullscreen Grid Drawing a Perfect Grid on the Canvas Preserving the Pixel Art Look in Web Content Ensuring our Canvas Looks Good on Retina/High-DPI Screens Finding Prime Numbers Using a Sieve of Eratosthenes Two-Dimensional (2D) Arrays in JavaScript Two-Dimensional (2D) Arrays in JavaScript Animations: From Biology to JavaScript! 🦠 You’ll Always be Building & Designing Creating a Cluster Growth Animation: From Biology to JavaScript Timsort: A Lightning Fast Hybrid Sorting Algorithm Merge Sort: A Simple Step-by-Step Walkthrough 😀 - YouTube Bubble Sort: A Detailed Deep-Dive 🛁 Insertion Sort: A Deep Dive! 🍣 Selection Sort: A Step-by-Step Guide 💬 Radix Sort: A Complete Guide to Fast and Efficient Sorting! ⚡️ Career Growth Secrets Counting Sort : A Friendly (yet Detailed!) Deep Dive! 🎯 Bogosort: Sorting in the Slow Lane! 🐢 Pulling Off a Successful Redesign Creating Your Own Perfect Timing Radix Sort Making Counting Sort Work with Negative Values Diving Deep into Array Index Positions The Career Three Body Problem Counting Sort Work on Problems You Deeply Care About The Importance of Finding a Career Mentor Creating a Random Walk Simulation What is Product Strategy? Thinking about an 8K Resolution Future! 📺 Creating an Animated 3D Starfield Effect Meet the Default Sorting Algorithms! Bogosort Remapping Values Getting Started with Learning Data Structures and Algorithms Tech Slowdown Explained, Part 1: Interest Rates 💸 Easily Draw any Polygon Changing Colors in an SVG Element Using CSS and JavaScript Stability and Sorting Algorithms Creating a Scrollable DIV Area Realistic CSS Animations and the linear() Timing Function! 🍱 Visualizing Recursion with the Sierpinski Triangle Fast Sorting with Quicksort The Monty Hall Problem Stacks in JavaScript Depth-First Search (DFS) and Breadth-First Search (BFS) Introduction to the Graph Data Structure Big-O Notation and Complexity Analysis Introduction to Data Structures Arrays: A Data Structure Deep Dive Hashtables: A Deep Dive into Efficient Data Storage and Retrieval Trie (aka Prefix Tree) Embracing Generative AI with Open Arms! 🧸 Impact of AI on UI/UX Design with Chloe Barreau 🎨 Heap Data Structure Binary Search Trees Binary Tree Traversal Alphabetically Sort Names in an Array Overlapping Elements on Top of Each Other Developer Relations and Beyond with Jamie Barton! 🚀 A Trip Down Memory Lane 💾 Binary Trees Linked List The Present and Future of AI Tools with Ray (aka devbyrayray) "Guess the Number" and Binary Searching! 🔍 Switching Web Hosts in 2023 😱 SVG: Converting Shape to Path The Versatility of SVGs 🌀 Spinning Circular Text Introduction to Trees Faster Searching with Binary Search Search Algorithms and Linear Search Fibonacci and Going Beyond Recursion Guess the Number Game
Do we really need to know how things work? 🧠
KIRUPA 🍊 · 2025-04-02 · via KIRUPA | Designers and Developers Unite

Hi everybody - in my latest technical-focused article, I wrote about the ubiquitous Bloom filter data structure. If you prefer watching (for a thrilling 33 minutes!) my explanation as opposed to reading, then I got you covered there as well:

The big takeaway about bloom filters is that they are used in most situations where we have a large amount of data and need to quickly know if something we are looking for exists in that large amount of data.

Taking a step back, this touches upon a bigger question that many of us are grappling with. In a world of AI, what is the point of learning about these technical concepts?

The chances of you and I having to implement a data structure like a Bloom filter have always been quite low. Outside of programming or system design interviews, the time we would spend even thinking about Bloom filters and how they work is close to zero. With the rise of AI assistants that handle a lot of this system design thinking for us, does it even make sense to know about Bloom filters at all?

From the earliest days, working with computers has always revolved around abstractions. Most of us do not write logic in 0’s and 1’s. We write in higher-order languages that make it easier to express ideas in casual English-like phrases:

The many years of optimizations used to make programs work at a low level are lost to us. Our assumption is that when our higher-level code is compiled/transpiled, those optimizations come along for free. Knowing about their existence or not is a moot point. For many of us, we don’t even know what we don’t know when we dig deeper down into the lower-levels of how computers work.

Just like we no longer need to think about how memory is managed behind the scenes when creating a loop in JavaScript, with AI assistants, we are fast reaching a moment where we no longer need to know how the overall system is built. We describe the idea using natural language (text, visuals, voice, etc.) and iterate at the level of results:

AI becomes yet another abstraction to the many layers of abstractions we have been adding over the decades since the first computers were invented. As abstractions go, it is natural for us to lose awareness of crucial details lower layers may provide. What makes AI a bit different is the depth of abstraction it provides. We could argue that each abstraction we added over the years was incremental, but the abstraction provided by AI is a giant leap. By relying on AI, more of us are becoming quite successful in building apps without knowing the computing fundamentals that we would have needed in the past. Forget about Bloom filters and all the other famous data structures and algorithms! Even programming basics may no longer be needed.

When learning to read and write, we don’t really learn Latin or Sanskrit or Greek or any of the more ancient languages first. Why should app building be any different? Today, relying exclusively on an AI assistant to help us build apps that are scalable, performant, and secure is still a bit iffy. It is still important for us to be able to spot potential trouble areas and guiding the AI assistant appropriately. This is a moment-in-time problem, though. As the underlying AI models get more sophisticated, their ability to do the right thing without any human guidance on the implementation will only increase. We can assume that in the near future when AI generates an app, the app will have implemented all the right details and safeguards that would be on par with the most experienced app developers.

When we get to that point, knowing the details of how underlying computing primitives work won’t really be needed. To take it further, there would be no need for a site like KIRUPA or a book like my Algorithms: Absolute Beginner's Guide to exist, at least not catering to a large audience as it aims to today.

What are your thoughts? Feel free to chime in on the forums, on Twitter / X, or in the comments below with your thoughts.

Cheers,
Kirupa 😅