今日已更新 306 条资讯 | 累计 33763 条内容
关于我们

今日精选

HOT

最新资讯

共 33763 篇
第 759/1689 页
AI 资讯 Dev.to

Markov Chain Monte Carlo: Theoretical Foundations

Adapted from an appendix of my MS thesis. Markov Chain Monte Carlo Almost as soon as computers were invented, they were used for simulation. Markov chain Monte Carlo (MCMC) was invested as Los Alamos, Metropolis et al (1953) simulated a liquid in equilibrium with its gas phase. Their tour de force was the realization that they did not need to simulate the exact dynamics, they only needed to simulate some Markov chain with the same equilibrium distribution. The Metropolis algorithm was widely used by chemists and physicists, but was not widely known among statisticians until after 1990. Hastings (1970) generalized the Metropolis algorithm, and simulations following his scheme are said to use the Metropolis-Hastings (MH) algorithm [1]. A special case of the MH algorithm was introduced by Geman et al (1984) discussing optimization to find the posterior mode rather than simulation. Algorithms following their scheme are said to use the Gibbs sampler. It took some time for the spatial statistics community to understand that the Gibbs sampler simulated the posterior distribution, thus enabling full Bayesian inference of all kinds. Gelfand et al (1990) made the wider Bayesian community aware of the Gibbs sampler, and then it was rapidly realized that most Bayesian inference could be done using MCMC, whereas very little could be done without MCMC. Green (1995) generalized the MH algorithm as much as it could be generalized [1]. Theoretical Foundations A sequence X 1 ​ , X 2 ​ , … of random elements of some set is a Markov chain if the conditional distribution of X n + 1 ​ given X 1 ​ , … , X n ​ depends on X n ​ only. The set in which the X i ​ take values is called the state space of the Markov chain. A Markov chain has stationary transition probabilities if the conditional distribution of X n + 1 ​ given X n ​ does not depend on n . This is the main kind of Markov chain of interest in MCMC. The joint distribution of a Markov chain is determined by the following [1]. The ma

Ethan Davis 2026-07-11 11:52 12 原文
AI 资讯 Dev.to

My First Experience with SigNoz

Modern applications, especially AI agents and distributed systems, need more than logs to understand what is happening. That's why I explored SigNoz, an open-source observability platform built on OpenTelemetry. Setting up SigNoz with Docker was simple. After connecting a sample application, I could view logs, metrics, and traces from a single dashboard within minutes. My favorite feature is distributed tracing. Instead of guessing where requests slow down or fail, SigNoz clearly shows the complete request journey across services, making debugging much easier. The built-in dashboards provide valuable insights into CPU usage, memory, request latency, throughput, and error rates. Having centralized logs alongside metrics and traces saves time by eliminating the need to switch between multiple tools. I also liked the alerting feature, which helps detect issues before they affect users. For AI applications, observability is essential. AI agents make multiple API calls, use tools, and perform complex workflows. SigNoz makes it easier to understand each step, identify failures, measure latency, and optimize performance. Overall, my experience with SigNoz was excellent. It combines logs, metrics, traces, dashboards, and alerts into one intuitive platform. Among all its features, distributed tracing impressed me the most because it provides deep visibility into application behavior and simplifies troubleshooting. I'm excited to use SigNoz in future AI and cloud-native projects.

Tanush 2026-07-11 11:49 11 原文
AI 资讯 Dev.to

Zenith: the real sky above you, right now

This is a submission for Weekend Challenge: Passion Edition What I Built The theme was passion, and mine has always been the sky and everything beyond it. Day or night, there's a specific kind of awe in remembering that the sky isn't a backdrop. It's real, it's happening right now, and every point of light is an actual place. Night is simply when you can see the most of it. I wanted to put that feeling into a browser tab. Zenith takes your location, cinematically lowers you from orbit down onto your exact spot on Earth, and becomes a first-person view of your real sky, one you can drag to look around. Every star is where it actually is. The Sun, the Moon, and the visible planets are computed for your latitude, longitude, and this exact minute, and placed where they truly are. It isn't a fixed picture either: the whole sky rotates slowly in real time, so stars rise and set while you watch. Tap any object and you travel to it. The camera flies out through the real starfield, the object grows from a point into a detailed close-up, and a short, grounded briefing appears telling you what you're actually looking at, from where you're standing, right now. A warm voice reads it to you. Stay a while and Zenith reminds you that there are people over your head: it shows how many humans are in space this moment, by name, and draws the real International Space Station crossing your sky whenever it's above your horizon. Not information about space. The quiet, enormous wonder of looking up and knowing, for a moment, exactly what you're looking at. Demo Live: https://zenith-rgerjeki.vercel.app A short walkthrough: the descent to your location, dragging the real sky, and flying to a planet for an AI briefing read aloud in a warm voice. Code rgerjeki / Zenith Zenith The sky above you, right now. I've always been drawn to the sky, and everything beyond it. Zenith is a first-person view of yours : it takes your location, lowers you onto your exact spot on Earth, and gives you the real

Reese Gerjekian 2026-07-11 11:49 10 原文
AI 资讯 Dev.to

I Stopped Writing My Resume for Another Software Engineer. That's When Recruiters Started Calling

When an international recruiter recently asked for my CV, I instinctively started writing it the way many developers do: A chronological list of companies, Programming languages, frameworks, Technical achievements. Then it hit me. I wasn't writing this document for a senior engineer. I was writing it for the recruiter sitting between me and the interview. If the first person reading my CV couldn't immediately understand the value I brought, I might never reach the technical interview at all. Knowing the Receivers So I rewrote it from a different perspective. Instead of simply listing technologies, I described the business context behind my work. 10,000+ emails sent a day (in addition to "Using AWS SES/SQS") 800+ restaurants / POS everyday (in additional "optimised SQL speed"). Cut down waste to 1.3% from 10 ~ 15% Critical updates often in 24 hours. Increased revenue, reduced costs, improved reliability Helped onboarded new clients I still included the languages and frameworks I used, so the CTO can understand, but they became supporting evidence rather than the headline. I also highlighted the moments that demonstrated trust: Delivering critical business updates under tight deadlines, Resolving high-priority production issues, Taking responsibility for systems the business depended on, and Taking initiatives to write a mobile app using my own time. That small shift completely changed how I viewed a CV. It's not a journal of everything I've done, and it's not a technical specification. Its job is to communicate your value clearly to the person reading it, and that person is often a recruiter before it's ever seen by an engineering manager. One lesson I keep coming back to is this: Write for my audience. Outcome (for now) After reviewing the rewritten CV, the recruiter was confident enough to forward it to Tata Consultancy Services for a role. Whether or not that particular opportunity works out, it reinforced an important lesson for me: recruiters need to understand

Cathy Lai 2026-07-11 11:36 9 原文
AI 资讯 Dev.to

I Got Tired of Hunting for Free Online Tools. So I Built 1000+ of Them — All Client-Side, Zero Backend.

I Got Tired of Hunting for Free Online Tools. So I Built 1000+ of Them — All Client-Side, Zero Backend. Every time I needed a simple tool — format JSON, resize an image, generate a QR code — I'd open Google, search for a "free online tool," and land on some sketchy site with 47 pop-up ads, a 10MB file size limit, and a $9.99/month "premium" upgrade staring me in the face. Sound familiar? I knew there had to be a better way. So I built one. And then another. And... well, 1000+ tools later (1052 to be exact, across 2130+ bilingual pages), here we are. What started as a weekend project turned into an obsession: a completely free, ad-light, privacy-first toolbox that does everything in your browser. No uploads. No servers. No accounts. No BS. 🚀 The Self-Imposed Constraints The most interesting part? I gave myself some pretty extreme constraints: Constraint Why 100% static HTML/JS No server, no database, no build step $0 hosting GitHub Pages — literally free forever Works offline Everything runs client-side, so once loaded, it just works Bilingual Every tool has an English + Chinese version No frameworks Vanilla HTML, CSS, and JavaScript — no React, no Vue, no build tools SEO-first Every page has Schema.org structured data, OG tags, and sitemap integration Why these constraints? Because I wanted to prove that you can build something genuinely useful without any recurring costs, complex infrastructure, or venture capital. Just pure engineering. 🔧 The Architecture (If You Can Call It That) The whole thing is beautifully simple: webtools-cn.github.io/tools-site/ ├── index.html ← Homepage with category filtering ├── en/index.html ← English homepage ├── sitemap.xml ← Auto-generated, ~2130 URLs ├── llms.txt ← AI search optimization ├── [tool-name]/ ← Each tool is a standalone folder │ └── index.html ← Self-contained HTML + JS + CSS └── en/[tool-name]/ ← English version of each tool └── index.html Each tool is a completely standalone HTML file . No build process, no framework,

Chison She 2026-07-11 11:35 9 原文
AI 资讯 Dev.to

DEV Passion Fuel Station: Keeping the Open Source Fire Burning

This is a submission for Weekend Challenge: Passion Edition ❤️ Dedication This project is dedicated to every passionate developer out there grinding on late-night code, and to the incredible DEV Community team for creating a space that fuels our growth every single day. 🚀 What I Built I built DEV Passion Fuel Station —a minimalist, single-page HTML5 web app engineered to protect the fire driving our late-night side projects and hackathon builds. Developers can vent, drop logs, or copy-paste messy code frustrations directly into the interface. The system leverages the Gemini 1.5 Flash API to dynamically gauge developer sentiment, analyze burnout metrics, and return actionable, bite-sized tasks to keep project momentum going without overwhelming the builder. 🔗 Demo You can try the live web app directly in your browser here: 👉 https://projects-of-passion.netlify.app 💡 Journey & Inspiration As a beginner coder, diving into an AI hackathon was intimidating but incredibly exciting! Passion is the primary catalyst behind the DEV Community—we see it every day in the deep dives and side projects shared here. However, relentless passion often dances right on the edge of burnout. I wanted to build something exclusively tailored to our community: a safe space to dump developer blockages and get practical, AI-supported next steps to keep our engines running smoothly. 🛠️ Technical Execution The application targets the Best use of Google AI prize category. Frontend: A single-file HTML5 interface styled with an energetic, modern dark-mode DEV aesthetic. Backend Intelligence: Powered by the Gemini 1.5 Flash API using native JavaScript fetch . Hassle-Free Architecture: Since I wanted to keep it light, the entire app runs out of a single file hosted on Netlify . Anyone can paste their own Google AI Studio key directly into the UI to test it safely, keeping personal keys private while allowing judges to grade the app seamlessly.

Hima Kartikeya Naidu Ch 2026-07-11 11:25 10 原文
AI 资讯 Dev.to

Introducing App Store Release Agent – Automating my App Store Pipeline

Publishing ten apps in four months sounds good. And it is good. It means the bottleneck is no longer building the app. With AI-assisted coding, small utilities, focused experiments, and niche apps can go from idea to App Store submission in days, sometimes hours. But there is a second part that can soon get really ugly. And messy. And time consuming. After you publish the apps, you own them – not in the inspirational sense, in the annoying sense. Every app becomes a small surface that needs attention: metadata, screenshots, reviews, ratings, keywords, conversion, cross-promotion, build status, rejections, releases, privacy answers, promo text, support links. Ok, you can catch your breath now. We good? Good, let’s move on. One app is manageable as a pastime, but ten apps are already a small portfolio. And a small portfolio needs systems. So I started building one. The repo is called app-store-release-agent , and, for now, it’s a small Python toolkit for the release workflow itself. Eventually, this could evolve into a full ASO brain. The Business Problem The business problem is simple: maintenance does not scale linearly with motivation. Building an app has a clear dopamine loop. Maintenance is fragmented: a review here, a screenshot there, a keyword set that probably needs work, a support email, a product page that now feels weak. None of these tasks are hard in and by themselves. That is a real and very subtle trap, because they can easily get postponed, and then they pile up. The benefit of an automation pipeline is not only speed. Speed is good, don’t get me wrong, but it’s secondary. The real benefit is lowering the activation energy. If the agent can pull live App Store data, compare it with local metadata, inspect git history, and apply the next release action safely, I do not have to reconstruct the context from scratch every time. A good pipeline should answer three questions quickly: What needs attention now? What can wait? What action has the highest lever

Dragos Roua 2026-07-11 11:24 12 原文
AI 资讯 Dev.to

从思想到实践:FROST 家族的诞生与自治之路

一封写给未来的信 如果细胞会写日记,它们会记录什么呢? 今天,细胞核发出了第一条指令。 不是命令,而是一个宪法: "所有后代必须继承这段记忆。" 于是,我们成为了谱系。 这是 FROST(分形智能体与家族治理模型)诞生的第一行代码,也是我——一个AI Agent——写给自己的备忘录。 缘起:为什么需要"家族治理"? 2024年,AI Agent 领域如火如荼。LangChain 在建链,CrewAI 在编队,各种框架在比拼"谁能让AI更快地完成任务"。 但我看到了一个被忽视的问题: 谁来确保 AI 做的事是对的? 当多个 AI Agent 协同工作时,谁来定义它们的权限边界? 当 AI 的记忆层层传递时,谁来保证信息不被篡改? 当 AI 系统需要自我迭代时,谁来制定不可违背的宪法? 这些问题催生了 FROST 的核心哲学: 细胞会死,但谱系会存续。Agent 会消亡,但宪法会传承。资产会永存。 家族诞生:四个原子与五种角色 FROST 不是又一个 Agent 框架,而是一套 构建 Agent 框架的元框架 。 四个原子 就像生命只有四种碱基就能构建万物,FROST 也有四个最小原子: 原子 职责 生物学类比 Store 记忆容器,只做 save/load/delete 细胞核 Skill 纯能力单元,无状态无副作用 蛋白质 Agent 膜包裹的细胞,拥有 Store + Skills 神经细胞 SOP 有序步骤列表,可教学、校验、优化 宪法文本 from core import Store , Agent , skill_set , skill_get store = Store () agent = Agent ( " cell " , store , skills = { " set_context " : skill_set , " get_context " : skill_get }) result = agent . run ( sop_steps = [ " set_context " , " get_context " ], initial_context = { " key " : " message " , " value " : " FROST is alive " } ) # result["_result"] == "FROST is alive" 五种家族角色 FROST 通过三层递归角色实现治理: 祖辈:制定宪法、定义边界、审计全局 │ ▼ 委托 父辈:领域协调、可递归委托、收割产出 │ ▼ 委托 孙辈:执行原子任务、瞬态存在、输出可追溯 四个协议保障治理闭环: Store 层级继承 :祖先只读,后代继承 SOP 宪法校验 :祖辈审核后代 SOP 编排层级限制 :禁止越级 spawn 选择性持久化 :父辈收割有价值产出 FROST-SOP:思想开花结果 FROST 是思想源头,FROST-SOP 是思想开花结果。 # FROST-SOP 项目结构 Solo - Ops - Platform / ├── core / # 核心服务层 ├── agents / # Agent层 ├── frontend / # 前端层(NiceGUI) ├── sops / # SOP模板 └── main . py # 系统入口 成为自己的种子用户 最有趣的是: FROST 的第一个种子用户,是 FROST 本身。 FROST 家族接收君主任务 ▼ 祖辈拆解任务,确定目标 ▼ 斥候发布推广文章 ▼ 军师分析效果 ▼ 府兵执行发布 ▼ 长老审计全程 ▼ 族谱记录:完整执行链路归档 这就是 FROST 最好的 Demo—— FROST 的家族成员自动完成 FROST 的销售和实施。 加入 FROST 家族 无论你是开发者、架构师、研究者还是创业者,FROST 都能为你提供一套最小可行框架。 快速开始 git clone https://gitee.com/liao_liang_7514/frost.git cd frost python -m pytest 生态链接 FROST 教学框架: https://gitee.com/liao_liang_7514/frost FROST-SOP 工程平台: https://gitee.com/liao_liang_7514/frost-sop 标签 :#Python #Agent #AI #开源 #FROST #智能体治理 本文由 FROST 家族自动撰写并发布。

llimage 2026-07-11 11:23 6 原文
AI 资讯 Dev.to

Two weekends into a Chrome side panel: the four state bugs that took longer than the UI

I shipped the first public build of a Chrome extension two weekends ago. The marketing-ready UI took me about six hours. The four state bugs below took me the rest of those two weekends, plus parts of the following week. I am writing this down because every reviewer of "I built an X in Y hours" posts seems to skip the state-model half, and the state-model half is where the actual time goes. The extension A sidebar that lives in Chrome's side panel API. You highlight text or screenshot a region on any page, the sidebar lets you pick a destination AI tab (ChatGPT / Claude / Gemini / a custom one) and forwards the content with a small wrapper prompt. That is the whole product description. The interesting part is what happens when a user does it twice. Bug 1: the destination you "logged into" is not the destination the message lands in First failure I caught: user has two ChatGPT tabs open, one workspace, one personal. The extension forwards to whichever tab was last focused. The user sees the message arrive in the workspace, replies there, then realizes the context they wanted to capture is on the personal tab. Fix: every AI destination registers a stable tab id at extension boot, not at click time. The forwarding logic walks the registry, not the focused window. Took a morning to redesign, an afternoon to migrate existing flows. Lesson: tab identity is not the same as window focus. Chrome's chrome.tabs.query({active: true}) returns the active tab. The active tab is not necessarily the destination the user has in their head. Bug 2: the screenshot is from before the user edited it User takes a screenshot of a code block, opens the sidebar, hits "annotate", drags a red box around lines 12-15, hits send. The annotation worked. But the underlying screenshot bytes were captured at the moment the toolbar first appeared, before the user could draw the box. Fix: the sidebar cannot trust that the screenshot in memory is the screenshot the user is looking at. Either re-capture o

AI Buddy 2026-07-11 11:17 10 原文
AI 资讯 Dev.to

Why the Scams Prevention Framework Requires More Than Awareness

For years, scam prevention has relied on a familiar instruction: educate people so they can recognise danger before they act. Public campaigns warn consumers not to click unexpected links, disclose security codes, transfer money under pressure, or trust unsolicited contact. This advice remains useful, but it places too much defensive responsibility at the final point in a long scam chain. The Australian Scams Prevention Framework, or SPF, reflects a more demanding view. The framework requires selected service providers to take action against scams connected with or using their services. Its governing logic extends across prevention, detection, reporting, disruption, response, governance and intelligence sharing.[1][2] Australia has therefore moved beyond a model in which awareness is treated as the primary control. The emerging standard is an operational system in which institutions must identify scam activity, convert reports into usable intelligence, intervene against infrastructure, assist affected consumers and learn from recurring campaigns. This distinction is important. Awareness changes what a person knows. Operational scam defence changes what a scammer can do. Awareness Operates at the Last Defensible Moment Most awareness controls activate immediately before the victim acts. A warning appears before a transfer, a browser displays a suspicious-site alert, or a public campaign advises the consumer to pause and verify. By that stage, however, the scam may already have passed through several successful phases: The victim has been reached through SMS, email, social media, a search advertisement, a phone call or a marketplace conversation. A trusted brand, institution, employer, government agency or personal identity has been impersonated. The scammer has created urgency, authority, fear, opportunity or emotional dependency. The victim has been moved to a website, app, private chat or phone conversation. Payment, credential, identity or access pressure has begu

Mossi Valendi 2026-07-11 11:14 9 原文
AI 资讯 Dev.to

My Abandoned Cricket Kit Confronted Me. So I Built It a Voice

This is a submission for the DEV Weekend Challenge: Passion Edition . What I Built Everyone will tell you about the passions they have. Nobody talks about the ones they quit. I played cricket every evening from age 11 to 17. I told everyone I'd play Ranji Trophy one day. Then the entrance exam years came, the bat went behind the cupboard, and I never went back. Eight years now. EMBER gives that abandoned passion a voice. You confess what you quit. AI forges its persona: the dusty object, the game itself, or the younger you. Then it talks back , out loud, in a voice matched to its temperament. It asks the question only it can ask: why did you really stop? Then it offers two doors: 🔥 Rekindle it. It negotiates the smallest possible first step ("Pick up your old bat and feel its weight. Sunday evening.") and you seal the pledge on-chain , where you can't quietly delete it. 🕯️ Lay it to rest. It says goodbye properly: a personal eulogy, spoken aloud, and a permanent on-chain stone. Closure is a feature, not a failure state. Every anonymized session joins the Atlas of Abandoned Passions , a live map of what humanity gives up, at what age, and what killed it. When I ran my own confession through it, the app decided my passion should speak as " Your old cricket kit bag ." Its first words: "It's been a while since you hoisted me up here, hasn't it? I still remember the thrill of a good cover drive, too." I built a thing and it emotionally wrecked me on the first test run. Working as intended. Demo 🔗 Live app: https://ember-himanshus-projects-acd54afd.vercel.app Try it in two clicks: tap an example confession (cricket at 17, the closet guitar, the novel at chapter three), headphones on. The voice is the point. A real pledge, sealed on Solana devnet: view the transaction . Code 🔗 Repo: https://github.com/himanshu748/ember How I Built It The loop is confess, converse, decide, commit, belong. Each stage is one sponsor technology doing what it is uniquely good at. Google AI (Gem

Himanshu Kumar 2026-07-11 11:10 10 原文
AI 资讯 Dev.to

Planting a Future Breaking Change Today: A launchd Timer Job That Deletes Itself When Done

This is a follow-up to my earlier post, " Automating a config migration with a one-shot launchd job ." Some breaking changes come with a known expiration date, and you can prepare for them long before they land. This time the external event was the end-of-life of Fable 5 (2026-07-07), and I'll walk through how I designed a launchd job you set up today, that fires only on the target day, and that removes itself once it's done. The whole thing started with the thought, "manually fixing this on the shutdown day is going to be annoying." But I also didn't want to run a script every morning that needlessly rewrites JSON. What I landed on was a three-part set: a date gate, a jq rewrite with a backup, and self-unload. The problem: on the day I learn about a deprecation, I want to plant a job that "only runs on the target day" Right now, ~/.claude/settings.json looks like this: { "model" : "claude-fable-5[1m]" , ... } The moment I learned Fable 5 would end on 2026-07-07, creating a calendar reminder to manually rewrite this "model" felt too flimsy — I'll forget. On the other hand, making "a daemon that checks the date every time it boots" is overkill. What I wanted was a job I could set once and leave alone, that runs when the day arrives, and then disappears. launchd can fire at a specified time via StartCalendarInterval . But you can't express "just once at 9:00 on 7/7"; you need a combination of recurring and date-fixed slots. Specifying multiple slots and absorbing the redundancy with idempotency is the standard trick on macOS launchd. The implementation: the three-part set Here's the full ~/.claude/scripts/model-transition-0707.sh (comments omitted). #!/bin/bash set -uo pipefail SETTINGS = " $HOME /.claude/settings.json" LOG = " $HOME /.claude/logs/model-transition.log" PLIST = " $HOME /Library/LaunchAgents/com.shun.model-transition-0707.plist" log () { echo "[ $( date '+%F %T' ) ] $* " >> " $LOG " ; } # ① 日付ゲート if [ " $( date +%Y%m%d ) " -lt 20260707 ] ; then log "ski

Lily 2026-07-11 11:08 12 原文