programming-languages
Blog no. 05 In this blog, we will explore how to link a zig library statically and dynamically. First lets create a library that contains a function my_add that adds two numbers. Note that instead of pub keyword which we used in previous blog, we will be using export keyword to decorate the my_add function. // libraries__add.zig export fn my_add ( num1 : i32 , num2 : i32 ) i32 { return num1 + num…
Angular components communicate using specific patterns based on their relationship (parent-to-child, sibling, or unrelated). The most common methods are @Input() and @Output() decorators , but newer features like Signals and Model Inputs offer modern alternatives. Classic approach with Decorators Before Angular v17, we used to pass information from the parent to the child component and vice versa…
Any modern languages should have its REPL, Erlang, Elixir, Haskell, Clojure, Ocaml, Python... All of them got one shell-like feature to interact with the application in conception phase. That's kinda mandatory to me, it permits to test functions before adding them in the final commit, it can be used to draft quick ideas and so on. When I started learning Dart, I was a bit sad it was not integrate…
If you're building web scrapers, API integrations, or automation tools in PHP, you've probably encountered cURL timeout errors. One common mistake is assuming that CURLOPT_TIMEOUT alone is enough. In reality, PHP provides two different timeout settings that serve different purposes. Understanding the Difference CURLOPT_CONNECTTIMEOUT Controls how long cURL waits to establish a connection with the…

The Million-Row Challenge in Modern Web Apps When dealing with massive enterprise datasets—like Amazon SKU multi-account performance metrics or high-frequency logistics tracking—standard DOM rendering breaks down. Even with standard Vue 3 virtual scrolling components, having tens of thousands of complex cells with custom tooltips can cause noticeable micro-stutters due to the sheer volume of DOM …
Most developers find this API by accident — usually while chasing a bug where the user logged out in one tab and the other three still show the dashboard. Embarrassing in dev, security issue in prod. The fix is built into every modern browser. It's called BroadcastChannel . Most people skip it because they didn't know it was there. What even is it? You know how your browser can have the same webs…
The googleapis npm package is the default answer for calling Google APIs from Node.js. It works, but it installs around 380KB and brings in over 450 transitive dependencies. For a single API used in a CI script — the Search Console URL Inspection API — the underlying auth flow is simple enough to handle directly. I built scripts/gsc-inspect.mjs to check index status for published URLs. It's about…
Learn what the @Autowired annotation in Spring Boot is, how dependency injection works, practical examples, best practices, and common mistakes to avoid. What is the Purpose of the @Autowired Annotation in Spring Boot? Spring Boot simplifies Java application development by handling much of the configuration and object management for you. One of the most commonly used annotations in Spring Boot is…
TLDR tsconfig.json is the config file for every TypeScript project. It tells the TypeScript compiler what to check and how to build your code. Run tsc --init to create one. The key options you need to know are target , module , strict , outDir , and rootDir . Always turn on strict mode. It saves you from many bugs. What is tsconfig.json? tsconfig.json is a file that lives at the root of your Type…
All tests run on an 8-year-old MacBook Air. All results from shipping 7 Mac apps as a solo developer. No sponsored opinion. Rust's ownership system is the right idea. It's also the biggest learning curve. After 7 shipped apps, here are the patterns I actually use daily. Clone When It's Cheap, Reference When It Matters The beginner mistake: fighting the borrow checker by cloning everything. The in…

Classes, Enums, and Records Look Like Simple Language Features — Until You Realize They Define Your Entire Domain Model Why Senior .NET Engineers Spend More Time Designing Data Than Writing Business Logic Most developers begin learning C## by creating variables. string name = "Laptop" ; decimal price = 999.99M ; int quantity = 5 ; At first, this feels perfectly reasonable. The application works. …
The Problem I Kept Running Into Every day, I was typing the same things over and over: Email signatures Support responses Code snippets URLs and links Copy. Paste. Copy. Paste. It felt like a massive waste of time, but I didn't think there was a better way. Then I discovered tools like TextExpander. $6/month. Mac-only. No cloud sync. No browser support. So I built something better. What I Built: …
NVIDIA's cuda-python , the official Python bindings for the CUDA toolkit, recently added automatically-generated .pyi stub files using stubgen-pyx . Their description of why: "This allows IDE auto-completion to work (which is also used by IDE-integrated coding agents). This has also found 2 real bugs in our code already. The ability to catch a certain class of bugs with this will be really helpfu…
TypeScript: The Practical Guide for JavaScript Developers (2026) TypeScript isn't just "JavaScript with types" — it's a superpower that catches bugs before they happen. Here's the practical guide to going from JS to TS. Why TypeScript Matters // JavaScript: The bug that only shows in production function calculateDiscount ( price , isMember ) { return price * ( isMember ? 0.9 : 0.8 ); // What if p…
Plan and prompt It’s easy to generate thousands of lines of code. Then the real work begins. The agentic coding environment for people who care about quality. If AIs can write code 100× faster, why aren't teams shipping 100× faster? Plan and prompt It’s easy to generate thousands of lines of code. Then the real work begins. Juggle or wait Get distracted. Or juggle coding agent tabs. Run it and re…
SDK 56 makes JavaScript to native calls significantly faster on iOS by letting Swift talk to JSI directly. We eliminated the Objective-C++ layer and saw 1.6-2.3x performance improvements across our benchmarks. Before this change, every native module call went through three languages. Now it's just Swift making a direct C++ call. Here's how we did it and what the performance gains look like. The t…
Most of the "fast data pipeline" folklore in the JVM world ends at the same place: go reactive, or go home . Netty, event loops, backpressure operators, the works. I wanted to find out whether Java 25's virtual threads let you write the boring, blocking, one-thread-per-connection version — and still move hundreds of thousands of messages a second. So I built jBMP , a collector for the BGP Monitor…

1. Introduction Stack corruption crashes are among the most destructive failures in C++ systems. They break the assumptions that make debugging possible: the backtrace becomes invalid, the crash location becomes meaningless, and the unwinder walks garbage because the metadata it depends on has been overwritten. Crash Pattern S3 is defined by one sentence: S3 — The crash location cannot be trusted…
Most developers never implement a hash map, a heap, or a binary search tree. They reach for std::unordered_map , std::priority_queue , std::map , and move on. That is correct for shipping code. But it leaves a gap. When you have only ever used a heap, "k-th largest in O(n log k)" is a magic phrase. When you have built one, it is obvious: a size-k heap, push, pop when it overflows, done. The trick…
research.ioSign up to keep scrolling
Create your feed subscriptions, save articles, keep scrolling.












