AI 资讯
Day 71 of Learning MERN Stack
Hello Dev Community! 👋 It is officially Day 71 of my unbroken 100-day full-stack engineering run! After mastering polymorphic multi-part storage configurations yesterday, today I successfully crossed into core transactional operations: Engineering a High-Fidelity "Confirm and Pay" Checkout View and Wiring Database Inbound Array Modifications! In real-world booking platforms, processing a successful transaction requires more than updating an absolute view; you have to link documents relationally across collections. Today, I wired that entire execution pipeline together! 🧠 What I Handled on Day 71 (Checkout Engineering & Target Mutations) As displayed across my latest system files in "Screenshot (164).png" and "Screenshot (165).jpg" , handling payments runs through structured backend steps: 1. High-Fidelity Checkout Component ( /reserve ) I built out the detailed split-pane verification interface visible in "Screenshot (164).png" . The layout captures target trip date selections, total guests parameter caps, card input structures, and computes subtotal ledgers dynamically: Base Compute: $9000 x 5 nights = $45000 . Transactional Upgrades: Appending structured service charges ( $85 ) and local tax calculations ( $42 ) to update the final sum directly to $45127 . 2. Live Document Array Mutators (MongoDB User List Insertion) The most crucial logic happens when the user clicks the primary validation trigger labeled Confirm and pay : The inbound route controller extracts the targeted property identity token ( home._id ) via an embedded hidden input container. Instead of running isolation updates, it issues an atomized update operation straight into our MongoDB user records array (e.g., using Mongoose operators like $push or tracking active profiles inside our custom data state loops). This appends the exact property listing target ID directly into the user's booking history array database matrix! 🛠️ View Markup Code Integration View As showcased in my VS Code script structu
AI 资讯
I Copied a Google AI Studio Session by Hand. 68% of the Data Was Gone.
I had a long Google AI Studio (Gemini) session that I wanted to keep. I selected the conversation in the browser, copied it, and pasted it into a text file. File size: a few hundred KB. "OK, that's safe." Later, I exported the same session as JSON. File size: a few MB. More than half of the data had silently disappeared. What was missing I checked what the manual copy had dropped. The system prompt The instruction I had originally given the model — the system prompt — was completely gone. Manual copy captures only the user/assistant turns visible in the conversation pane. The instruction context that shaped the entire session does not get copied. The tail of long responses When a Gemini response is long, the browser shows a "Show more" button. If you copy without expanding it, the response gets cut mid-sentence. Out of 8 sessions I checked, 3 had responses truncated this way. Newlines inside code blocks Newlines inside code blocks got mangled in several places. Responses containing JSON or YAML had indentation that no longer parsed. The reasoning trace For some models, the model's reasoning trace is stored separately from the visible response. Manual copy doesn't capture it at all. How to export as JSON Google AI Studio has a session export feature. In the session view, click the ... menu at the top right Select "Export" Choose JSON format and download The JSON contains the full data, including the system prompt. Measured: manual copy vs. JSON export I compared 8 sessions. Session Manual copy JSON Loss rate A tens of KB ~150 KB ~70% B ~90 KB ~200 KB 50-60% C ~30 KB ~100 KB 60-70% D ~50 KB ~180 KB ~70% E ~60 KB ~240 KB ~70% F ~20 KB ~70 KB ~60% G ~20 KB ~50 KB 50-60% H ~10 KB ~30 KB ~60% Total a few hundred KB ~1 MB 60-70% Average loss rate, 60-70%. The manual copy was, on every session, missing most of what was in the actual session state. Why I didn't notice If you open the manually-copied file, the conversation reads fine. As long as the start and end connect, a m
AI 资讯
Three things to watch amid Anthropic’s latest feud with the government
This story originally appeared in The Algorithm, our weekly newsletter on AI. To get stories like this in your inbox first, sign up here. For those of you enjoying your summer unaware of Anthropic’s latest feud with the US government, here’s a recap: In April the company said it had built an AI model called Mythos…
AI 资讯
Google invests in A24 to build AI movie tools
Google's DeepMind AI lab is teaming up with A24 to develop new movie production technologies that aim to help future filmmakers "expand their storytelling possibilities." As part of this new research and development collaboration, The Wall Street Journal reports that Google is investing "around $75 million" into A24, marking the first time the search giant […]
AI 资讯
From Feature Delivery to Platform Engineering.
The Problem: Feature Velocity Was Creating Structural Debt The system originally started as a simple feature delivery backend: A Django API powering agricultural insights Celery workers handling asynchronous processing Independent endpoints for each new capability A growing set of Earth Observation computations (NDVI, NDWI, etc.) At first, it worked. But as more features were added, a pattern emerged: Each feature introduced its own pipeline logic Observability was inconsistent across services API contracts drifted between frontend and backend Debugging required tracing multiple disconnected systems We weren’t scaling functionality. We were scaling fragmentation. The Turning Point: Features vs Platforms The key realization was simple: Features solve user problems. Platforms solve system problems. We were repeatedly rebuilding: Authentication flows Data ingestion logic Processing pipelines API validation layers Monitoring hooks Each feature was solving its own version of these concerns. That is where platform engineering became necessary. The Shift: Introducing a Platform Layer We introduced a platform layer between feature delivery and infrastructure. Instead of building isolated pipelines, we standardized: 1. Unified API Surface All Earth Observation workflows (NDVI, NDWI, and future indices) were normalized into a consistent API contract. Shared request/response structure Versioned endpoints Schema validation through serializers Central routing logic This eliminated endpoint fragmentation. 2. Standardized Processing Pipeline Celery tasks were refactored into a reusable pipeline pattern: Ingestion Validation Computation Storage Publishing Instead of feature-specific workers, we moved toward composable tasks. This allowed new indices or processing logic to plug into the same execution flow. 3. Observability as a First-Class Layer One of the biggest failures in the original system was visibility. We introduced: Structured logging across all services Traceable job IDs
开发者
Professional Athletes and Wearables
I haven’t thought about the privacy issues surrounding professional athletes and wearables. Wearables present serious privacy issues for “Average Joe” consumers, who are entrusting tech companies to safely store and protect their biometric data. Imagine the stakes for a professional athlete, whose entire livelihood could be affected by a single biometric data point. To give one of many realistic hypotheticals: a basketball player has a terrible game, and the coach wonders if they showed up to the gym hungover. The coach has access to the player’s wearable data, and checks to see when they went to sleep, as well as what their heart rate looked like during the night. Should the player have been out partying before a game? No. Should the coach be able to surveil them? Definitely not...
AI 资讯
Hours-of-Service Break Planning, Right on the Route
A consumer nav app tells the driver where to turn. It will not tell the dispatcher where the 11-hour driving clock runs out — and, more importantly, whether there is legal parking when it does. That second question is the one that strands a truck at 11 PM on the shoulder of an off-ramp with every nearby lot already full. Road511’s routing endpoint now answers it. Send the driver’s Hours-of-Service clock along with the route, and the response carries an hos[] array: every point on the corridor where the driver must take a break or stop driving under the selected regime, the projected time they reach it, the legal deadline, and — the part that matters operationally — the truck parking and rest areas actually reachable before that deadline. How It Works It rides the same call as everything else routing does: POST /api/v1/routing/route . You already send an origin, a destination, and a truck profile. To get the HOS projection, add an hos block inside the truck object describing the driver’s clock at departure. curl -X POST "https://api.road511.com/api/v1/routing/route" \ -H "X-API-Key: your_key" \ -H "Content-Type: application/json" \ -d '{ "origin": { "lat": 41.8781, "lng": -87.6298 }, "destination": { "lat": 39.7392, "lng": -104.9903 }, "departure_time": "2026-06-08T06:00:00Z", "truck": { "profile": "tractor", "weight_t": 36.0, "height_m": 4.2, "axles": 5, "hos": { "ruleset": "us", "drive_remaining_s": 39600, "duty_remaining_s": 50400, "since_break_s": 0 } }, "enrichment": { "include_features": ["truck_parking", "rest_areas"] } }' That’s a Chicago→Denver run for a fresh driver on US rules: 11 hours of driving left ( 39600 s), a 14-hour duty window ( 50400 s), and zero driving time since the last break. Every counter is “seconds remaining” against the named ruleset’s limit. The HOS Clock The hos object is the driver’s state, not a fixed policy. Store only the ruleset on a reusable truck profile — the per-trip counters are supplied inline on each request and merge on to
AI 资讯
Imagen 3 & 4 Shut Down June 24: Migrate to Gemini Image (2026)
June 24, 2026. That is the shutdown date for every Imagen model on Firebase AI Logic — imagen-3.0-generate-002 , imagen-4.0-generate-001 , imagen-4.0-ultra-generate-001 , imagen-4.0-fast-generate-001 . All of them. If you have been putting off this migration, you have run out of runway. The replacement is Google's Gemini Image models — internally called "Nano Banana," publicly named gemini-2.5-flash-image . The migration is mostly a one-function rename and a response structure update, around 90 minutes of work for most codebases. The catch: one Imagen capability, mask-based editing, has no replacement at all. That separate deadline hits June 30. What Goes Dark and When Firebase AI Logic's migration documentation confirms these shutdown dates: imagen-3.0-generate-002 — June 24, 2026 imagen-4.0-generate-001 — June 24, 2026 imagen-4.0-ultra-generate-001 — June 24, 2026 imagen-4.0-fast-generate-001 — June 24, 2026 imagen-3.0-capability-001 (mask editing: inpainting, outpainting, object removal) — June 30, 2026 Vertex AI runs on a slightly different clock — Google recommends migrating before June 30, with a hard shutdown date of August 17 for Vertex AI users on legacy Imagen endpoints. Firebase AI Logic is the shorter deadline. Don't assume extra time if your app uses the Firebase SDK. The Core Migration: Python Three things change simultaneously: the method name, the model identifier, and the response structure. All three break if you miss any one of them. Before (Imagen): import google.generativeai as genai client = genai . Client ( api_key = " YOUR_KEY " ) response = client . models . generate_images ( model = " imagen-4.0-generate-001 " , prompt = " A red fox running through snow " , config = { " number_of_images " : 1 , " output_mime_type " : " image/jpeg " } ) image_bytes = response . generated_images [ 0 ]. image . image_bytes After (Gemini Image): import google.generativeai as genai client = genai . Client ( api_key = " YOUR_KEY " ) response = client . models . g
开发者
Лёгкая панель для управления личным VPN-сервером на Xray
У большинства self-hosted VPN-панелей одна и та же боль: Docker-стек, внешняя БД, реверс-прокси и куча конфигов, которые надо связать между собой, прежде чем хоть что-то заработает. Мне хотелось наоборот — что-то, что можно закинуть на свежий VPS и поднять меньше чем за минуту. Так появилась РосПанель : self-hosted панель для администрирования личного VPN-сервера на Xray-core , который поставляется одним статическим бинарником . React-фронтенд вшит через go:embed , база — встроенный SQLite, отдельного веб-сервера нет. Поставил, открыл, добавил юзера. Главная идея: один бинарник, ничего лишнего Цель, которая определила всё остальное, — радикальная простота. В отличие от Marzban и 3x-ui, у РосПанели нет Docker-обвязки, нет внешней БД и нет отдельного веб-сервера, который надо настраивать. Всё живёт в одном исполняемом файле: Веб-интерфейс собирается в web/dist и вшивается в Go-бинарник на этапе сборки. Состояние хранится в SQLite (чистый Go-драйвер modernc , то есть без CGO ). Конфиг Xray всегда генерируется из базы и применяется супервизором — SQLite это единственный источник правды, а не JSON, который правят руками. В итоге деплой — это просто положить бинарник и systemd-юнит. Никакой оркестрации, ничего не надо держать в синхроне. Что она на самом деле делает РосПанель — это панель управления (control plane), а не VPN-клиент. Она настраивает и обслуживает ваш собственный сервер: генерирует конфиг Xray, выдаёт ссылки на подписки и показывает статистику. Протоколы из коробки — один конфиг Xray, один набор учёток: VLESS-Vision (TCP/443 + uTLS-fingerprint) Trojan-WS (через fallback на 443) Hysteria2 (UDP с port-hopping) VLESS-gRPC-REALITY (отдельный порт, маскировка под чужой TLS) Маскировка — панель спрятана за секретным путём. Любой другой путь отдаёт сайт-заглушку (11 готовых шаблонов), так что сервер неотличим от обычного хостинга. Без знания /<secret>/ форму логина не найти. TLS, который просто работает — ACME через Let's Encrypt или ZeroSSL, авто-продление и self
AI 资讯
Anthropic Reports Claude Now Handles 95% of Internal Analytics Queries
Anthropic recently reported that Claude now handles around 95% of its internal analytics requests, letting employees query business data independently instead of relying on data teams. The company attributes this result less to advances in models and more to data governance, semantic definitions, and operational discipline. By Renato Losio
AI 资讯
When the Trump administration cracks down on Anthropic, who benefits?
On the new episode of Equity, we discussed what actually prompted the administration's latest moves against Anthropic, and what this might mean for the AI ecosystem.
AI 资讯
The Hidden Machinery of Quantum Reality
Why Bohmian Mechanics, Go Programs, AI, and EBP 2.1 Could Help Reopen the Deepest Questions in Physics There is a quiet crisis in theoretical physics, and it has nothing to do with the equations. The equations are fine. Quantum mechanics predicts with staggering accuracy. General relativity bends light exactly as calculated. The Standard Model matches experiment after experiment. The mathematics is not the problem. The problem is what happens between the equations and the claims. A researcher writes a beautiful paper. The math is correct. The toy model works. A suggestive ratio appears. An analogy crystallizes. And then, in the discussion section, a modest result becomes a bold narrative: classical cosmology is recovered , the problem of time is resolved , spacetime emerges from the quantum . This is not fraud. It is not even intentional. It is the natural gravity of theoretical work — ideas fall toward overclaiming the way matter falls toward mass. Two small codebases, written in Go and governed by an epistemic protocol called Elephant Bridge Protocol v2.1 , are trying to build a tool against that gravity. They are not trying to solve quantum gravity. They are trying to make it harder to pretend you have solved quantum gravity when you haven't. One is called Bell–MIPT . It builds toy models connecting Bohmian mechanics to measurement-induced phase transitions in many-body quantum systems. The other is called BMC — Bohmian Minisuperspace Cosmology. It builds toy models of quantum cosmology using Bohmian guidance in Wheeler–DeWitt minisuperspace. They share the same philosophy. They share the same protocol. And they share the same radical commitment: no claim may be promoted until its debts are paid . What Is BMC? BMC stands for Bohmian Minisuperspace Cosmology . The name is deliberately modest. It is not "Bohmian Quantum Gravity." It is not "The Theory of Everything in Go." It is a cosmology toy model — a wind tunnel, not an airplane. The physics idea behind it is o
AI 资讯
Error Handling — Learning to Love `if err != nil`
Error Handling — Learning to Love if err != nil In part 3 I covered goroutines and channels, and how Go's concurrency model sidesteps a lot of the ceremony I was used to from the JVM. This time I'm tackling the thing I complained about in part 1 of this series before I'd even really tried it: error handling. I called if err != nil repetitive back then. A few weeks and a lot of real code later, I owe Go a partial apology. No Exceptions, On Purpose Coming from Java, the absence of try / catch is the first thing that feels like a missing feature. It isn't — it's a deliberate design choice. In Go, errors are just values. A function that can fail returns an error as its last return value, and the caller decides what to do with it, right there, inline: func divide ( a , b float64 ) ( float64 , error ) { if b == 0 { return 0 , errors . New ( "division by zero" ) } return a / b , nil } func main () { result , err := divide ( 10 , 0 ) if err != nil { fmt . Println ( "error:" , err ) return } fmt . Println ( "result:" , result ) } That's the pattern you'll write hundreds of times in Go: call a function, check err , handle it or bail out, move on. No hidden control flow jumping up the call stack to whichever catch block happens to match. No checked-exception signatures cluttering method declarations. No RuntimeException quietly skipping past five layers of code that had no idea it could happen. Whatever can fail is sitting right there in the function signature, and you're forced to look at it. Why the Repetition Is the Point My part 1 complaint was that if err != nil everywhere feels manual. It is manual — and that's exactly the trade Go is making. In Java, an exception thrown deep in a call stack can silently propagate through layers of code that never declared they might fail, and you only find out where things actually break by reading a stack trace after the fact. In Go, every single point where something can go wrong is visible in the source, in order, as you read top to
AI 资讯
How to Get a New Site Indexed by Google in 2026 (What Works, What's a Waste)
Originally published on MRTD.NET — fast, sourced news on crypto security, cyber & SEO. The uncomfortable first lesson You built a clean site, submitted a sitemap, maybe pinged IndexNow — and Google still shows nothing. Here's the part most guides skip: getting indexed by Google and getting indexed by everything else are two different problems , and conflating them wastes weeks. We separate what actually moves Google in 2026 from the folklore that just feels productive. Bing, Yandex and ChatGPT are the easy half If you've set up IndexNow , you've largely solved discovery for Bing, Yandex, Naver, Seznam and Yep — you POST your new/changed URLs to one endpoint and they get notified instantly. And because ChatGPT Search retrieves from Bing's index , confirmed Bing indexing effectively gates your visibility in ChatGPT's web results. That's a big chunk of the modern search surface handled with one integration. The catch: Google does not use IndexNow. It has said so repeatedly. So every "instant indexing" claim that leans on IndexNow is talking about Bing's world, not Google's. For Google, you need different levers. What actually gets you into Google There are really only two fast paths, plus one slow one. 1. Google Search Console — the only direct lever. Verify your domain (a private DNS TXT record; it does not trigger penalties or "re-evaluation," a common fear), submit your sitemap.xml , then use URL Inspection → Request Indexing on your key pages. There's a soft daily cap (~10–12 URLs), so spread a new site's pages over a few days. GSC is also the only place you can see whether a domain carries an inherited problem — essential if you bought an aged or expired domain. 2. Links on pages Google already re-crawls hourly. Googlebot's crawl budget for a brand-new, zero-authority domain is tiny. The fastest way to get a new URL discovered is a link to it from a page Google visits constantly — Reddit, Hacker News, Medium, established communities. These links are usually nofoll
开发者
Nobel laureate John Jumper is leaving DeepMind for rival Anthropic
Jumper isn't the only big name leaving Google DeepMind.
AI 资讯
Gemini 3.5 Pro: 2M Context, Deep Think, and the Post-Fable-5 Frontier
Gemini 3.5 Pro goes general-availability in late June 2026 with a 2-million-token context window and a Deep Think reasoning mode that positions it against the most capable frontier models currently live — at a moment when the field is unusually thin. Claude Fable 5 was disabled globally on June 12 under a U.S. export control directive. GPT-5.6 remains a release candidate in Codex backend logs under the codename kindle-alpha . As of June 19, 2026, Gemini 3.5 Pro is the next major frontier model with a confirmed launch window, and it’s already live for select enterprise customers on Vertex AI. This is what’s confirmed, what’s still unknown, and what developers should do before GA drops. The Timing Isn’t an Accident Google announced Gemini 3.5 Pro at I/O on May 19 with a June general-availability target. At the time, that framing put it in direct competition with Claude Fable 5 (released June 9 before the shutdown) and the anticipated GPT-5.6. That competitive calculus shifted on June 12 when Anthropic disabled Fable 5 for all customers worldwide following an export control order. Claude Opus 4.8 is still live — it hits 88.6% on SWE-Bench and is a legitimate coding workhorse — but its 200K context ceiling blocks the entire category of codebase-scale and multi-document workloads that Fable 5 had been handling at 200K. The gap Gemini 3.5 Pro steps into isn’t hypothetical. Teams that built agent pipelines around Fable 5’s coding accuracy have been on Opus 4.8 stopgaps or migrating to GPT-5.5 since June 12. Neither alternative offers 2M context. Neither has a Deep Think mode native to the same model. Gemini 3.5 Pro is arriving into the most favorable competitive opening Google has had at the frontier in 18 months. The 2M Token Context: Where the Ceiling Disappears Gemini 3.5 Flash shipped with a 1M-token context window, doubling Gemini 3.1 Pro’s 500K limit. Pro doubles Flash again. At 2 million tokens, a single API call can hold: A 2,000-file TypeScript monorepo at 200 lin
AI 资讯
Go eyes robotaxis and acquisitions after Japan’s biggest IPO of 2026. Here’s why it matters
Go’s IPO — Japan’s biggest so far this year — has done more than provide a much-needed boost to the country’s languishing listing season. It has also supplied the taxi-hailing app with the capital required to address an existential issue: Japan’s shortage of drivers. Go, which went public Tuesday, plans to use the ¥88.6 billion […]
产品设计
Friday Squid Blogging: Victims of Unregulated Squid Fishing
Dolphins, sharks, turtles, and human workers are all victims of unregulated squid fishing fleets. Another news article . As usual, you can also use this squid post to talk about the security stories in the news that I haven’t covered. Blog moderation policy.
AI 资讯
When automation meets simplicity over Python or Ansible
We constantly hear that Ansible and Python are apparently the only ways to automate networks, today I even listen in a conversation "Python is the industry standard" probably I missed the RFC document or probably the guy was referring to a sales standard, but back to us what happens when the framework, the platform or the software we are using becomes heavier than the problem to solve? There is a moment where automation becomes necessary, not because we want to look modern, not because every task deserves a framework and not simply because adding automation automatically means we are doing things better. It becomes necessary because repeating the same command collection manually across many devices is slow, risky, boring and almost impossible to diff and validate properly especially under pressure. For this reason I built the Cisco Go Collector during a real migration activity with a very practical goal: collect configuration and command outputs from Cisco devices in an easily repeatable way, without forcing every colleague involved in the process to become developers or to install an automation stack just to run a super simple flow. The idea was simple: define the devices in a CSV which is the comfort zone for everyone define the commands in the same CSV file, super simple and organized to manage one row per device run a portable Go binary against that CSV file collect the outputs in organized text files archive the result as operational evidence that can be easily diff That is it! super lightweight to run no Python virtual environment no Ansible playbook structure no inventory hierarchy no framework onboarding no additional runtime or software on corporate managed workstations just a CSV file and a compiled binary The automation and AI trap when the solution is heavier than the problem to solve I love automation and I fully support AI if used the proper way, but we have to find a balance and recognize when to choose one tool over the other and specially one progra
AI 资讯
Bletchley's Longest Day: a wartime cipher escape game for the June Solstice Game Jam
This is a submission for the June Solstice Game Jam . What I Built Bletchley's Longest Day is a browser-based cipher escape game set inside a fictional Bletchley Park night shift. The player has to stop a U-boat convoy attack before dawn by clearing five rooms. Each room contains three escalating locks, so the full escape requires 15 solved puzzles . The game combines Caesar shifts, A1Z26 number decoding, Morse, anagrams, fragment ordering, a visible countdown timer, mistake penalties, hint penalties, account-based score saving, and a best-score leaderboard. The solstice theme became the core dramatic clock: night is running out, first light is coming, and the player has to decode the final signal before dawn. Video Demo The demo shows the opening briefing, the three-lock room flow, the Gemini hint penalty, and the final victory state that only appears after all 15 locks are cleared. Live game: https://bletchleys-longest-day.onrender.com Code Repository: https://github.com/himanshu748/bletchleys-longest-day How I Built It The game is a lightweight Node-served browser app. The front end is a hand-built HTML/CSS/JavaScript game surface, while server.js serves static files and protects the Gemini API key behind a server-side /api/hint endpoint. The main design goal was to make the game feel like a tense intelligence desk rather than a generic puzzle page. Every room has atmosphere, evidence props, lock-specific copy, feedback states, and a timer that is always part of the pressure. The puzzle structure was tuned around three ideas: Three locks per room : each room has to be solved in stages, so the player earns the escape instead of clicking through one answer. Time as score pressure : wrong answers and hints cost time, while clean solving preserves the best leaderboard run. Guest mode vs signed-in mode : guests can play the full game, but Gemini-powered hints and saved leaderboard scores belong to authenticated players. Google Gemini is used as a server-side hint offi