SShortSingh.

Programming

0
ProgrammingDEV Community ·

MCP Reference Servers: What 90,000 Stars and 16 Language SDKs Reveal About Agent Tool Boundaries

The Model Context Protocol repository sits at 90,950 stars with 16 language SDKs and a collection of reference servers that expose how agent-tool boundaries actually work. These are not production systems. They are educational implementations that reveal transport layer choices, security boundaries, and SDK design patterns across C#, Go, Java, Kotlin, PHP, Python, Ruby, Rust, Swift, and TypeScript. The plumbing matters because every agent framework needs to solve the same problem: how do you let an LLM call tools without leaking credentials, crashing on malformed input, or creating a maintenan

0
ProgrammingDEV Community ·

Building a Student Marks Dashboard: From Data to Live Web App

Most pandas tutorials teach you syntax. They show you .mean(), .groupby(), .apply(). But they don't show you how the pieces connect — how a CSV becomes a chart, how a chart becomes a web app, how a web app ends up live on the internet. I wanted to see that full pipeline for myself. So I built a small project: a student marks dashboard that reads a CSV, calculates results, plots a chart, and runs as a live web app.

0
ProgrammingDEV Community ·

Inside Apple Containers: Architectural Deep Dive, CLI Parity, and Benchmarking against Podman

Benchmarking Apple Containers vs. Podman With the release of macOS 26 (Tahoe), Apple introduced a native container orchestration model powered by Virtualization.framework and managed by the com.apple.container.apiserver launchd service. Rather than relying on shared-kernel Linux namespaces inside a single monolithic virtual machine (VM), Apple Container creates a lightweight virtual machine—backed by a guest Kata Containers kernel (version 3.32.0-debug)—for every individual container process. For macOS developers accustomed to Red Hat's daemonless, rootless container engine, Podman, this archi

0
ProgrammingDEV Community ·

I Built the Platform That Judges Hackathons in 72 Hours. The Hardest Bugs Were About Evidence, Not Features.

A hackathon platform has one job that actually matters. When it says "this project came 14th, and here is why," that sentence has to still be true next week. That sounds obvious. It is not. I built Verdict Ledger for DOGFOOD 2026, the Hackathon Raptors event where everyone builds the same submission-and-judging portal and the organisers plan to self-host the winner.

0
ProgrammingDEV Community ·

Screenshot feedback as one HTML file: a small browser tool for website handoffs

We're testing ViewportReceipt Handoff, a small tool for freelancers who need to turn website screenshots into a change list they can send to a client or developer. The workflow is deliberately short: Import your PNG, JPEG or WebP screenshots. Draw a numbered rectangle and write the requested change. Export one HTML report with the screenshots and notes embedded. The recipient opens the file without an account.

0
ProgrammingDEV Community ·

How to See Any Company's LinkedIn Ads with Python (Ad Text, Impressions and Targeting)

If you sell to businesses, your competitors are almost certainly advertising on LinkedIn: webinars, whitepapers, demo offers, "thought leader" posts from their executives. LinkedIn lets you see all of it. The LinkedIn Ad Library lists every ad that ran on LinkedIn in the past year, and for ads shown in the EU it even adds run dates, impressions, the country split and the targeting the advertiser chose (the EU's Digital Services Act requires it). The catch: it's a search page for humans. No export, no API, 24 ads at a time, and a name search that's fuzzy.

0
ProgrammingDEV Community ·

Our Permissions-Policy denies geolocation, and the pricing page still knows what country you are in

curl -sI https://pub-trivia.app/ permissions-policy: camera=(), microphone=(), geolocation=() referrer-policy: origin-when-cross-origin strict-transport-security: max-age=63072000; includeSubDomains; preload x-content-type-options: nosniff x-dns-prefetch-control: on x-frame-options: SAMEORIGIN No x-powered-by. Six headers, declared once in next.config.mjs for /:path*, and each one is a decision rather than a default. The two most interesting are the ones that look like they contradict the product. The pricing page shows you a price in your own currency. It knows roughly where you are.

0
ProgrammingDEV Community ·

Getting to Know Yourself: Understanding self in Ruby

self is one of those Ruby keywords that looks easy until you meet it in real code. You see it in a setter: self.name = normalized_name Then in a class method: def self.from_cents(...) Then somewhere inside a DSL or instance_eval, and suddenly the question isn't really: What does self mean? The better question is: Who is self right here? That small change makes Ruby's object model much easier to follow. Consider a model-like object: class Customer attr_accessor :name, :email def initialize(name:, email:) @name = name @email = email end def normalize self.name = name.strip.downcase self.email =

0
ProgrammingDEV Community ·

robots.txt matching is a literal prefix, and one trailing slash would have left our dashboard crawlable

Our robots.txt is generated from one array: export const CRAWLER_DISALLOW = [ '/dashboard', '/play', '/api', '/auth', '/subscribe', '/webhook', '/too-many-requests', ] as const Not one of those has a trailing slash, and that is the first thing I would check in anybody else's robots.txt. Disallow is a literal prefix match against the path. Disallow: /dashboard/ blocks /dashboard/settings and /dashboard/billing, and leaves the bare /dashboard perfectly crawlable, because /dashboard does not begin with /dashboard/. In our case that is not a hypothetical: /dashboard is linked from the footer of th

0
ProgrammingDEV Community ·

Not Every File Needs a Server: Building File Tools with a Local-First Approach

Not Every File Needs a Server: Building File Tools with a Local-First Approach When we think about online file tools, the architecture often looks Choose a file ↓ Upload it to a server ↓ Process it ↓ Download the result It works. But while building file utilities, I kept coming back to a simple Does every file really need to leave the user's device? For many common operations, the answer is no. Modern browsers are capable of doing much more than simply uploading At the same time, trying to make everything client-side introduces its That led me toward a fairly simple principle: Process locally

0
ProgrammingDEV Community ·

Our header ships three links and a dropdown that is not in the HTML, so the footer is the whole site map

Run this against our homepage: curl -s https://pub-trivia.app/ \ | python3 -c "import sys,re;h=re.search(r' ',sys.stdin.read(),re.S).group(0);print(re.findall(r'href=.([^\"]+).',h))" You get six links. The logo, three cluster links, and the two auth buttons. The site has around seventy public pages organised into six content clusters, and four of those six hubs do not appear in that header at all. They are in a dropdown. The dropdown is a Radix menu, so its items are mounted when it opens and do not exist in the server rendered HTML.

0
ProgrammingDEV Community ·

Four of our apps share no audience, and one hand-copied TypeScript file is what tells Google they share a publisher

Our company ships four apps. A live quiz night for pubs, a practice tool for psychometric hiring tests, a barcode scanner for people with gut conditions, and a watcher for rental listings. If you were handed that list cold you would assume four unrelated indie projects that happened to be built by the same person. A crawler assumes the same thing, and the assumption is worse than neutral. Four small domains that link to each other, with nothing declaring why, is the shape of a link scheme.

0
ProgrammingDEV Community ·

I compared 24 booking sites on 47 hotels. Booking.com, Expedia and Hotels.com were ~26% above the cheapest.

TL;DR: 47 hotels in 5 cities, 24 booking sites per hotel on average, same dates for all (12–15 Nov 2026, 3 nights, 2 adults, USD). The big names were a median 26–27% more expensive than the cheapest site for the same hotel: Booking.com +27%, Priceline +27%, Expedia +26%, Hotels.com +26%. The cheapest offer usually came from smaller sites: Super.com, Vio.com and Traveluro were cheapest on 9 hotels each. Checking Expedia, Hotels.com, Orbitz, Travelocity and CheapTickets is one check, not five. They showed the exact same price on 37 of 45 hotels (all Expedia Group).

0
ProgrammingDEV Community ·

Hacktoberfest Is Coming to Nadiad, Gujarat 🚀 Official MLH Meetup at DDU, 15 Oct

Most students hear about hackathons, open source and developer communities in their third or fourth year. By then, a lot of the best chances to use them are gone. I'm a final-year student at Dharmsinh Desai University in Nadiad, and this October I'm doing something about that. 🎟️ Register for free 🪞 Why I'm doing this I spent my entire first year doing what I thought I was supposed to do: attending lectures, reading theory, giving exams, and scoring a 9+ CPI. I had never heard of MLH, DEV or Hacktoberfest.

0
ProgrammingDEV Community ·

We let Stripe be the merchant of record for 27 countries, and leaving our own out is the whole decision

Selling software across borders is a tax problem wearing a billing problem's clothes. We are a UK company selling an automated digital service to pubs and bars. The rules that follow from that one sentence are not symmetrical, and the asymmetry is the entire design. Sell to a business in Germany and VAT is due in Germany, from the first sale. There is no threshold to hide under.

0
ProgrammingDEV Community ·

Satori will not read the font our site uses, so the repo carries four .ttf copies of it

A link preview card is the one piece of a site most people see before they see the site. It shows up in Slack, in a WhatsApp group, on a search results page, in the embed under a tweet. For most projects it is a PNG somebody exported from a design tool once, dropped in public/, and never looked at again. That PNG is wrong within a month. The logo changes, the palette changes, the tagline changes, and the card keeps advertising the version of the product that existed on the afternoon it was exported.

0
ProgrammingDEV Community ·

Espacenet Ops: A Scalable Global Patent Search Model

A scalable Espacenet ops framework runs on four sequential stages: Retrieve, Align, Invalidate-check, and Ledger. It is measured by auditable recall per jurisdiction per dollar, not by the number of databases a tool claims to touch. One variable separates a defensible search operation from an expensive one: time-to-defensible-output, not feature count. Everything below maps that principle to concrete workflow architecture, quantitative scoring, failure-mode reconciliation, and a procurement-grade comparison matrix. This is written for people who already run multi-jurisdiction searches: Head of

← NewerPage 721 of 3158Older →