AI 资讯
I Kept Losing the "Why" Behind My Code Every Time I Closed an AI Chat, So I Built a Tiny Tool to Save It
Last Tuesday I was deep in a session with an AI assistant, rewriting a caching layer that had been quietly leaking memory in production. We tried Redis first. It worked. Then I looked at the actual data volume (about 50MB, tops) and killed the idea, because spinning up a whole service to cache 50MB felt absurd. We landed on sqlite instead. Good call, I still think. Two days later a teammate opened the branch, saw cache_sqlite.py sitting next to a deleted cache_memory.py , and asked why we weren't just using Redis like the rest of our stack. I didn't have a good answer ready. The reasoning had lived entirely inside a chat session that was long gone by then. I remembered making the decision. I could not reconstruct it convincingly, and "trust me, we talked about it" is not a great answer to give a teammate, or future me, three months from now. That's the part most tooling misses with AI-assisted coding. The code survives. The diff survives. A wave of AI memory tools is racing to store more of what the code does , and a few (Selvedge, presence) are starting to chase the why too, which tells me the pain is real. But almost all of them are MCP servers you have to wire into a specific agent, with a database sitting beside your repo. What I wanted was dumber and more portable: the reasoning, and the approaches I tried and threw out, written in plain text I can read, next to the code, no matter which editor or agent produced it. Because that reasoning lives in a chat window, and chat windows end. You switch from Claude Code to Cursor, or you just close the laptop, and it's gone. The facts stay. The judgment behind them evaporates. This didn't feel like a hard problem, so I built a small thing called Alpheon to fix it for myself, the simplest possible version: one Python file, no server, no database , works off git so it doesn't care what editor or agent you use. Facts vs. reasoning Here's the distinction that clicked for me. A fact is "cache.py was modified, cache_sqlite.py
AI 资讯
Wanted: Beginners-Friendly Open Source Projects
Hey friends! It's been a while since I tried to find open source projects to contribute to as I've been swamped with some projects myself. Someone approached me. They want to learn and start to contribute to open source. They're familiar with GitHub for their own projects, but never contribute to any open source project. They tried looking for beginners friendly issues on GitHub with no luck. Well, I immediately tried this myself and got overwhelmed with millions of issues only for JavaScript! So, I understand the struggle. 😅 If you're maintaining an open source project or know beginners-friendly open source projects that open to new contributors (preferably JavaScript, TypeScript, React, or NextJS), please send them my way in the comments below! 😊
AI 资讯
Show HN: Be the ChatBOT
I made this experimental art project/game that's an LLM chat assistant, but where you're the AI. I wanted people to get a visceral sense of what it's like to answer the kinds of things that people prompt their chatbots day in and day out. If you're interested, I wrote up some more info on how I made it, including how the "user" prompts are generated with an eye for realism: https://bethechatbot.com/about Hope you enjoy it! I'd love to hear people's takeaways.
AI 资讯
The AMD Ryzen 7 7700X3D chip is now available for $329
Reasonable specs for a reasonable price.
AI 资讯
Kalshi says it caught Trump’s teleprompter operator insider trading
Kalshi users betting on what President Donald Trump would say during his speeches were reportedly up against tough competition: the president's teleprompter operator. ABC News reports that federal investigators believe Gabriel Perez - Trump's teleprompter operator since 2016 - used inside information to make bets on Kalshi, a major prediction market platform that allows users […]
AI 资讯
The Jedi Way to Talk Through Code in Interviews
The Quest Begins (The "Why") I still remember the first time I walked out of a coding interview feeling like I’d just lost a lightsaber duel. The problem was a simple array‑rotation task, but I dove straight into typing, eyes glued to the screen, and barely said a word. When the interviewer asked, “What are you thinking right now?” I froze, mumbled something about “just trying to get it done,” and watched the seconds tick away. The feedback later? “Great coding skills, but we couldn’t follow your thought process.” That moment stung because I knew I could solve the problem—I just hadn’t learned how to show my thinking. After a few more silent attempts, I realized the interview isn’t a solo boss fight; it’s a co‑op mission where the interviewer wants to see how you navigate the terrain. If they can’t hear your internal monologue, they have no way to gauge your problem‑solving instincts, communication style, or ability to catch mistakes early. I went on a quest for a repeatable, low‑effort way to narrate my thinking without turning the interview into a monologue. What I found was a three‑step verbal framework that felt like unlocking a new Force power—simple, repeatable, and surprisingly effective. The Revelation (The Insight) The technique I now swear by is State → Plan → Execute . At each stage you say out loud exactly what you’re doing, using a tight, repeatable script. It’s not about over‑explaining; it’s about giving the interviewer a clear map of your mind. Here’s the exact wording I use, broken down by phase: State – Clarify the problem, assumptions, and constraints. “Okay, so we need to rotate an array to the right by k steps. I’m assuming k can be larger than the array length, so I’ll use modulo to normalize it. The array can contain any integers, and we should aim for O(n) time and O(1) extra space.” Plan – Outline the high‑level approach before writing a line of code. “My plan is to use the three‑step reversal algorithm: reverse the whole array, then reverse
科技前沿
Everyone Thinks They Have the Diarrhea Parasite
Cyclosporiasis isn’t the only thing spreading across the US. So is anxiety about getting hit with it.
AI 资讯
I built a job board that scores how 'real' each listing is (A–F)
Most remote job listings are ghosts — already filled, never opened, or posted just to farm résumés. As a developer, that annoyed me enough to solve it with code instead of complaining about it on X . So I built Remoty.work , which grades every listing A–F on how likely it is to be real . Here's how the detection actually works under the hood. The problem, from an engineering angle Job boards are an endless scrape loop. Board A scrapes Board B, which scraped Board C. The same dead listing propagates across a dozen sites, and none of them verify anything. There's no signal for "is this real," so the noise compounds until every board looks identical. I didn't want to build board number thirteen in that loop. I wanted a layer on top that answers one question every listing should have to: is anyone actually going to read my application? The architecture Everything runs on a single VPS — Postgres, scrapers, and the scoring jobs, supervised on a schedule. Deliberately boring. High level: Ingestion: scheduled scrapers pull from source boards and company ATS feeds into Postgres. Each raw listing is deduplicated by a fingerprint (title + company + normalized URL) so the same job reposted across five boards collapses into one row with a repost_count . Scoring engine: every listing gets a ghost-risk score from a handful of signals, then mapped to an A–F grade so it's human-readable, not a black-box number. The "rant" signal: I cross-reference what people say about companies in places like r/recruitinghell and hiring threads. That's where the truth about a company's hiring leaks out, and it turns out to be a strong predictor. Agents: I use DeepSeek to classify and summarize the messy text job descriptions, company chatter. DeepSeek because running this over thousands of listings every night on GPT-4-class models would have killed the unit economics before I had a single user. One infra detail I didn't expect to spend a weekend on: the frontend is on Cloudflare's edge, but the ed
AI 资讯
Here’s Why Anthropic Is Pushing States to Regulate AI Faster
The company endorsed landmark AI transparency laws in California and New York last year, but its head of US state and local policy says they may already be outdated.
AI 资讯
Left of the Loop: The Metron
Metron was the Greek word for a measure: the standard you judge a thing against. It gives us metric, and metronome. Pick the wrong metron and everything you count against it comes out wrong, no matter how carefully you count. Ask most teams how they know AI adoption is working, and the answer is some version of: we’re shipping more. More PRs, more tickets closed, more velocity on the board. None of those numbers were ever measuring what people thought they were measuring. They were proxies, and bad ones, for whether the team was creating value. AI didn’t break that. It just made the proxies lie louder. An agent can produce PRs faster than any team can review them. It can close tickets all day. None of that tells you whether the thing built was worth building, or whether it fixed the actual problem, or whether anyone downstream is better off. Burning tokens isn’t the same thing as creating value. It just looks the same on a dashboard built to reward the first thing. The same DORA numbers I pointed at earlier are blunt about it: individual output climbs while delivery throughput and stability drop. Same bottleneck, counted at the wrong end . This is Theory of Constraints in one sentence: speeding up a step that wasn’t the bottleneck doesn’t speed up the system. It just piles more work in front of whatever the real bottleneck is. Implementation used to be the constraint. Now it isn’t. Review is. Coordination is. Making sure everyone agrees on what “done” even means is. Agents made the fast part faster and left the slow part exactly where it was, except now it’s buried under more output arriving to be reviewed by fewer people who understand any of it. Measuring individual speed after that shift is measuring the wrong clock. The team can be faster and worse off in the same quarter. The instinct, when this gets noticed, is to add another skill to the agent. Automate the review step too. Automate the coordination. Whatever’s slow, throw a capability at it. That doesn’t fix
开发者
AttoChess, a complete, playable chess program for 16-bit x86 DOS in 278 bytes
AI 资讯
Commit Cron: A Simple Daily Commit Bot with GitHub Actions
I built Commit Cron , a small GitHub Actions experiment that creates one automated commit every day. The project updates a text file with the latest execution time, commits the change using the github-actions[bot] account, and pushes it back to the repository. View the project on GitHub: Commit Cron How It Works The workflow runs every day at 10:00 AM Asia/Manila time. on : schedule : - cron : " 0 10 * * *" timezone : " Asia/Manila" workflow_dispatch : The workflow_dispatch trigger also lets me run the workflow manually from the GitHub Actions tab. The workflow checks out the repository, creates the bot directory when needed, and updates bot/last-run.txt : mkdir -p bot printf "Last automatic update: %s \n " \ " $( TZ = Asia/Manila date '+%Y-%m-%d %H:%M:%S %:z (Asia/Manila)' ) " \ > bot/last-run.txt The file contains a timestamp similar to: Last automatic update: 2026-07-17 10:03:24 +08:00 (Asia/Manila) After updating the file, the workflow configures the GitHub Actions bot identity and creates the commit: git config user.name "github-actions[bot]" git config user.email \ "41898282+github-actions[bot]@users.noreply.github.com" git add bot/last-run.txt git commit -m "chore: daily automated update" Before pushing, it pulls the latest branch changes with rebase: git pull --rebase origin " ${ GITHUB_REF_NAME } " git push origin "HEAD: ${ GITHUB_REF_NAME } " This helps prevent the push from failing when another commit is added while the workflow is running. Repository Structure . ├── .github/ │ └── workflows/ │ └── daily-commit.yml ├── bot/ │ └── last-run.txt ├── LICENSE └── README.md Why I Built It Commit Cron is a small demonstration of: Scheduled GitHub Actions workflows Manual workflow triggers Automated file updates Bot-generated Git commits Repository write permissions using GITHUB_TOKEN The workflow uses: permissions : contents : write This allows the built-in GitHub token to push the generated commit. Important Note The automated commits only confirm that the work
开源项目
Don't lose sleep over reports of 260 Starlink satellites deorbiting
SpaceX deorbiting satellites isn't a cause for worry, but scientists are still looking into the environmental impacts of frequent satellite deorbits.
AI 资讯
I rewrote my AI-agent tool from Bash to Python. That was the easy doubt.
There are, conservatively, nine thousand tools for running AI agents across your projects. This is number nine thousand and one. I know. Stay a second anyway. Eighteen years of backend work, most of it PHP, most of it through agencies — which is a polite way of saying I've spent my career as a line item in someone else's staffing spreadsheet. Several projects at once, different clients, different timezones, "resource" being the official word for what I am on a good invoicing day. So when AI agents got good enough to do real work, I didn't wonder whether one could write code. I wondered how I'd wrangle a whole fleet of them across projects — which, I eventually noticed, is me trying to become the manager of a little spreadsheet of resources, after eighteen years of being one. The snake found its tail. I built it anyway. Docket, then: a control plane for running OpenClaw agents across projects, made with heavy AI assistance on purpose — the point was to close my own gaps, not to prove I could type from memory. It started as a Bash CLI; it's now a tested Python package. On GitHub, beta, link at the bottom. This is me thinking out loud in public, not selling you anything. And somewhere in that rewrite, the doubt everyone expected me to have — is Bash the right language? — died, and a worse one took its place. That worse one is what this piece is actually about. Let me get there honestly. What I aimed for, not what I mastered I want to say this before the vocabulary makes me sound like I know more than I do. I did not sit down understanding context isolation, or git worktrees per agent, or anti-corruption layers. I sat down wanting clean, stable, maintainable, tested code — and I steered an AI toward that shape until it held together. The shape is real. My grip on every part of it is not the same. What the shape does, plainly: OpenClaw is a local-first agent daemon, great at running one agent. Run a fleet and you hit problems it doesn't solve. Docket runs pods — a Lead t
AI 资讯
Building a Real SIEM Lab on a Mac Mini Fleet — What Actually Broke, and What I Learned Fixing It
Most "I built a home SOC" posts show you the pretty dashboard and stop there. This one is about what happened after the dashboard loaded — because that's where the real learning was. 🖥️ The setup Three Mac Minis, one control machine, all Ubuntu. Mac Mini 1 runs the Wazuh manager, indexer, and dashboard — the security monitoring core. Mac Mini 2 handles AWS IAM permission scanning (Cloudsplaining, ScoutSuite). Mac Mini 3 is a documentation hub plus a custom vulnerability-intelligence pipeline pulling from the NVD API and NIST's CPRT compliance framework data. A fourth machine, my daily driver, orchestrates all three over SSH. Today's goal: get every machine reporting into Wazuh, so I'd have real, fleet-wide visibility — not just a single monitored box. 🐛 Bug #1: the silent feed stall After installing the Wazuh agent on Mac Mini 3, vulnerability scanning just... sat there. The log showed Initiating update feed process and then nothing. No error, no timeout, no progress. I ruled things out methodically: DNS resolved fine, curl could reach Wazuh's CTI feed endpoint and complete a full TLS handshake, disk space was nowhere close to full, and there were no stale lock files sitting around. Every individual piece of the pipeline worked in isolation — but the feed download itself never completed. The actual fix: upgrade Wazuh from 4.14.5 to 4.14.6. A newer point release fixed whatever was silently stalling the content-updater module. Once upgraded, the feed downloaded, decompressed, and the scanner came alive within minutes. Lesson: when every individual network/system check passes but a specific module still won't progress, check for a version-specific bug before going deeper down the debugging rabbit hole. 🔒 Bug #2: locking myself out with fail2ban Mid-troubleshooting, my control machine's SSH connection to Mac Mini 3 started getting flatly refused — no prompt, no error, just Connection refused. Ping worked fine. Every other port responded. Just port 22, silently dead. fai
AI 资讯
Google Gemini Launch Delayed as Tech Falls Short of Internal Goals
开发者
California authorizes its DMV to join a national ID database
开发者
SPCX is now Wall Street's most shorted new stock
科技前沿
We've seen helium baked off a rocky exoplanet's atmosphere
If the large, rocky planet is losing helium, then we can infer what is left behind.
AI 资讯
New York governor says she’s using AI to analyze ‘every single rule’ in the state
New York Governor Kathy Hochul might have just signed a moratorium on new AI data centers in the state, but she's not against using the technology herself. During an interview with Bloomberg's Odd Lots podcast, Hochul said that her team is using "AI to analyze every single rule, regulation, [and] policy" to check for outdated […]