惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LangChain Blog
Security Latest
Security Latest
P
Proofpoint News Feed
GbyAI
GbyAI
PCI Perspectives
PCI Perspectives
博客园 - Franky
N
Netflix TechBlog - Medium
博客园_首页
WordPress大学
WordPress大学
K
Kaspersky official blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Vercel News
Vercel News
T
Threatpost
The Hacker News
The Hacker News
H
Help Net Security
S
Securelist
Recent Announcements
Recent Announcements
腾讯CDC
T
Tailwind CSS Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Engineering at Meta
Engineering at Meta
C
Cisco Blogs
V
V2EX
C
Check Point Blog
S
Schneier on Security
Cyberwarzone
Cyberwarzone
C
Cybersecurity and Infrastructure Security Agency CISA
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog RSS Feed
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Jina AI
Jina AI
M
MIT News - Artificial intelligence
T
Threat Research - Cisco Blogs
博客园 - 叶小钗
A
Arctic Wolf
AWS News Blog
AWS News Blog
Latest news
Latest news
Martin Fowler
Martin Fowler
Recorded Future
Recorded Future
Last Week in AI
Last Week in AI
The GitHub Blog
The GitHub Blog
小众软件
小众软件
B
Blog
aimingoo的专栏
aimingoo的专栏
C
Cyber Attacks, Cyber Crime and Cyber Security
V
Visual Studio Blog
P
Palo Alto Networks Blog
Spread Privacy
Spread Privacy

阮一峰的网络日志

科技爱好者周刊(第 396 期):互联网通信的替代方案 科技爱好者周刊(第 396 期):互联网通信的替代方案 - 阮一峰的网络日志 科技爱好者周刊(第 395 期):软件开发的第三种方式 科技爱好者周刊(第 395 期):软件开发的第三种方式 - 阮一峰的网络日志 科技爱好者周刊(第 393 期):脑腐状态 科技爱好者周刊(第 392 期):axios 投毒与好莱坞式骗术 科技爱好者周刊(第 391 期):AI 的贫富分化 科技爱好者周刊(第 390 期):没有语料,大模型就是智障 套壳中国大模型撑起500亿美元估值?扒一扒 Cursor 的"套壳"疑云 科技爱好者周刊(第 389 期):未来如何招聘程序员 科技爱好者周刊(第 388 期):测试是新的护城河 零安装的"云养虾":ArkClaw 使用指南 科技爱好者周刊(第 387 期):你是领先的 科技爱好者周刊(第 386 期):当外卖员接入 AI 字节全家桶 Seed 2.0 + TRAE 玩转 Skill 科技爱好者周刊(第 385 期):马斯克害怕中国车企吗? 智谱旗舰 GLM-5 实测:对比 Opus 4.6 和 GPT-5.3-Codex 科技爱好者周刊(第 384 期):为什么软件股下跌 科技爱好者周刊(第 383 期):你是第几级 AI 编程 Kimi 的一体化,Manus 的分层 科技爱好者周刊(第 382 期):独立软件的黄昏 AI native Workspace 也许是智能体的下一阶段 科技爱好者周刊(第 381 期):中国 AI 大模型领导者在想什么 科技爱好者周刊(第 380 期):为什么人们拥抱"不对称收益" 科技爱好者周刊(第 379 期):《硅谷钢铁侠》摘录 我如何用 AI 处理历史遗留代码:MiniMax M2.1 升级体验 科技爱好者周刊(第 378 期):预测是新的互联网热点 科技爱好者周刊(第 377 期):14万美元的贫困线 科技爱好者周刊(第 376 期):太空数据中心的争议 科技爱好者周刊(第 375 期):一扇门的 Bug 终于有人做了 Subagent,TRAE 国内版 SOLO 模式来了 科技爱好者周刊(第 374 期):6GHz 的问题 VS Code 使用国产大模型 MiniMax M2 教程 科技爱好者周刊(第 373 期):数据模型是新产品的核心 国产大模型接入 Claude Code 教程:以 Doubao-Seed-Code 为例 科技爱好者周刊(第 372 期):软件界面如何设计 大模型比拼:MiniMax M2 vs GLM 4.6 vs Claude Sonnet 4.5 科技爱好者周刊(第 371 期):一个乐观主义者的专访 科技爱好者周刊(第 370 期):正确的代码高亮 错误处理:异常好于状态码 科技爱好者周刊(第 369 期):Tim 与罗永浩的对谈 科技爱好者周刊(第 368 期):不要这样管理软件团队 一天之内,智谱和 Anthropic 都发了最强编程模型 科技爱好者周刊(第 367 期):Nano Banana 的几个妙用 科技爱好者周刊(第 366 期):旧金山疯狂的 AI 广告 科技爱好者周刊(第 365 期):流量变现正在崩塌 科技爱好者周刊(第 364 期):最难还原的魔方 科技爱好者周刊(第 363 期):最好懂的神经网络解释 科技爱好者周刊(第 362 期):GitHub 工程师谈系统设计 科技爱好者周刊(第 361 期):暗网 Tor 安全吗? 科技爱好者周刊(第 360 期):Dan Wang 的新书 科技爱好者周刊(第 359 期):Palantir 值得关注 科技爱好者周刊(第 358 期):如何拯救一家濒临倒闭的创业公司 扣子空间网页设计,是在挑战 V0 吗? 《唐纵日记》摘录 科技爱好者周刊(第 357 期):稳定币的博弈 科技爱好者周刊(第 356 期):公司强推 AI 编程,我该怎么办 科技爱好者周刊(第 355 期):两本《芯片战争》 科技爱好者周刊(第 354 期):8000mAh 手机电池,说明了什么? 国产 AI 网页开发工具:豆包 AI 编程简单测评 科技爱好者周刊(第 353 期):苹果的"液态玻璃"是为了 AR 科技爱好者周刊(第 352 期):Bug 追踪系统的正确样子 科技爱好者周刊(第 351 期):GitHub Issues(几乎)是最好的笔记应用 科技爱好者周刊(第 350 期):Java 三十周年 科技爱好者周刊(第 349 期):神经网络算法的发明者 科技爱好者周刊(第 348 期):李飞飞,从移民到 AI 明星 科技爱好者周刊(第 347 期):冷启动的破解之道 谷歌的 NotebookLM 能生成中文播客了 科技爱好者周刊(第 346 期):未来就是永恒感的丧失 巨头的新战场:AI 编程 IDE(暨 字节 Trae 调用 MCP 教程) 办公类 AI 初探:扣子空间 科技爱好者周刊(第 345 期):HDMI 2.2 影音可能到头了 科技爱好者周刊(第 344 期):制造业正在"零工化" 科技爱好者周刊(第 343 期):如何阻止 AI 爬虫 科技爱好者周刊(第 342 期):面试的 AI 作弊----用数字人去面试 科技爱好者周刊(第 341 期):低代码编程,恐怕不会成功 科技爱好者周刊(第 340 期):技术炒作三十年 Trae 国内版出来了,真的好用吗? 科技爱好者周刊(第 339 期):代币是什么 科技爱好者周刊(第 338 期):重新思考 6G 科技爱好者周刊(第 337 期):互联网创业几乎没了 科技爱好者周刊(第 336 期):面对 AI,互联网正在衰落 科技爱好者周刊(第 335 期):年底的未来已来 科技爱好者周刊(第 334 期):年终笔记四则 AI 搞定微信小程序 科技爱好者周刊(第 333 期):一切都要支付两次 科技爱好者周刊(第 332 期):西蒙·威利森的年终总结,梁文锋的访谈 科技爱好者周刊(第 331 期):你可能是一个 NPC 科技爱好者周刊(第 330 期):李开复梳理人工智能 科技爱好者周刊(第 329 期):示意图利器 D2 科技爱好者周刊(第 328 期):AI 模型不是一门好生意 AI 应用无代码开发教程:工作流模式详解 科技爱好者周刊(第 327 期):没有链接的互联网 科技爱好者周刊(第 326 期):世界没有那么多财富 科技爱好者周刊(第 325 期):VS Code 编辑器的下一站是 Zed? 科技爱好者周刊(第 324 期):人类已知的最大质数 科技爱好者周刊(第 323 期):技术公司的口号比拼 AI 开发的捷径:工作流模式 科技爱好者周刊(第 322 期):内容行业的内幕 科技爱好者周刊(第 321 期):傅盛回忆录
科技爱好者周刊(第 305 期):随机数,这是一个问题
阮一峰 · 2024-06-21 · via 阮一峰的网络日志

这里记录每周值得分享的科技内容,周五发布。

本杂志开源,欢迎投稿。另有《谁在招人》服务,发布程序员招聘信息。合作请邮件联系[email protected])。

封面图

重庆"悦来江湾"公交车站,由几块巨石组成,象征当地江边的鹅卵石。(via

随机数,这是一个问题

今天谈谈,怎么生成真正的随机数。

这个问题超难,但有一些很有趣的内容。

首先,编程语言提供的随机数,是伪随机数。

V8 引擎的官网有一篇文章(下图),特别提醒大家这一点。它内置的随机数不是真随机数,而是伪随机数。

所谓伪随机数,并非真的随机,而是算法得到的。只要初始的种子值相同,算法会给出一样的结果。

JavaScript 和许多其他语言,都有这个问题。所以,遇到特别强调随机的场合,都不应该使用语言内置的随机数生成器。

真随机数需要满足三个条件。

(1)无法预测。 随机数不能被猜到,所以必须非常大,否则会被暴力破解。

(2)不能重复。 每次生成的随机数,不能是一样的。

(3)均匀分布。 随机数必须平均散布在所有区间,不能集中在某些区间。

一般来说,只有通过硬件,才能得到真随机数,单纯的软件算法做不到。

科学家绞尽脑汁,想出各种办法,通过硬件生成随机数。

著名的 Random.org 就是专门生成一个随机数的网站。

它在全世界部署了多个无线电接收器,专门监听大气无线电波(即大气噪音,可以理解成大气的布朗运动),通过随机的无线电信号来生成随机数。下图是它的早期硬件设备。

因为有硬件支出,使用它的随机数,需要付费。所以,大家可以看到,真随机数是有成本的,不是跑一下程序就可以了。

世界最大的 CDN 服务商 Cloudflare ,为了得到真随机数,做得更绝。

它的三个办公室,每个都有不一样的随机数生成装置。

(1)旧金山总部。一进门就有一堵墙,放满了几十盏熔岩灯。

熔岩灯内部是融化的蜡,每时每刻都在变化着形状。

需要随机数的时候,就对着这堵墙拍一张照片。每张照片都是不一样的,然后计算照片的哈希,将其作为种子值,计算得到一个随机数。

(2)伦敦办公室。 那里有一面"单摆墙",放满了各种单摆装置。

单摆和它们的影子,每时每刻都在摆动。每次照片的哈希也是不一样的,可以作为随机数的种子值。

(3)奥斯汀办公室。 那里的天花板,挂了很多彩色的反光片。

这些反光片对空气流动十分敏感,开门、关门、空调、温度、湿度,都会让其转动,反射出不同颜色的光。因此,也可以用来当作随机数的种子值。

下周五,稀土开发者大会

过去一个月,周刊一直在预热今年的"稀土开发者大会"。

它的开幕时间就是下周五(6月28日)。

作为今年的大活动,所有日程安排现在都出来了。下图就是主论坛和10个分论坛的 70 多场演讲题目

点击看大图,都是技术热点和前沿领域。演讲者是来自全球的技术专家和第一线的主力工程师。

另外,大会还有外场的 AI 活动,一共4个特色展区,可以接触众多国内头部 AI 公司的展台,参与各种互动小游戏,赢取纪念品。这部分是免费的。

活动详情可以点击这个链接,或者扫描上方海报的二维码,购买内场演讲票,或者领取免费的外场票,以及预约现场直播。

科技动态

1、Starliner 飞船

美国宇航局最近遇到了一件尴尬的事情。

波音公司的 Starliner 飞船(下图),将两名宇航员送入国际空间站以后,却回不来了。

飞船发射后,出现了氦气泄漏和推进器故障。迟迟没有找到原因,美国宇航局就不敢用它把宇航员送回来。

本次任务原定8天,现在已经20天了。目前暂定6月26日返航,但可能再次推迟。

好在国际空间站有4个月的食物储备,不至于有物资问题。

本次飞行是 Starliner 飞船首次执行任务,就搞成这样。实在不行的话,只能再派一艘飞船去把人接回来。

2、澳大利亚巨型鹅

澳大利亚与其他大陆隔绝,存在着许多奇特动物。

科学家很早就知道,澳大利亚有过一种巨型鹅(下图最右侧),大小跟鸵鸟相仿,身高超过2米,体重240公斤,但是已经在45000年前灭绝了。

那时正好是第一批人类来到澳大利亚,所以科学家猜测,它的灭绝与人类有关。人类可能大规模捕杀这种鹅,毕竟它不会飞,又跑得慢。

以前,这种鹅只出土过零星的化石,最近终于出土了第一个完整头骨。

科学家画出它的还原像,大家看看,这种地球已经不存在的巨型鹅长什么样。

3、眼球监控

一位国外网友,在推特上贴出一张图片。

他在手机上看 Youtube 视频,结果跳出了这个提示。

意思是,系统发现,他的眼球没有注视广告,所以重新播放一次广告。

这张图应该是伪造的,不过技术上很简单。只要播放广告时,启动摄像头,就能识别镜头前有没有人,眼球看哪里。

我怀疑,这种场景会变成现实。以后,付费用户正常使用,免费用户必须通过眼球监控,确保正在注视广告。

4、上网篮

加沙地区由于战争原因,互联网服务已经完全中断了。

一个国际组织为了帮助那里的人民上网,想出了一个解决办法。

他们先在其他国家购买了一批 eSIM 卡,将参数传给当地人。因为 eSIM 是虚拟卡,只要填入参数,就能开通,相对容易。

然后,当地人把手机连上充电宝,放在一个篮子里,带到边境地区,挂在高处。

通过 eSIM 卡,手机可以连上领国的 4G 网络,这时打开手机热点,那么在篮子下面的人,就都能上网了。

文章

1、AI 芯片的未来,未必是 GPU(中文)

本文认为,加速计算未必只能通过 GPU 实现,FPGA 或 ASIC 或许是更优的底层计算设备。

2、我编写自己的博客引擎的10年(英文)

作者为自己写了一个博客引擎,坚持了10年,他讲述在这个过程中学到的东西和体会。

3、CSS 的 3D 折叠效果(英文)

本文介绍如何使用 CSS 实现 3D 的页面折叠动画效果(上图)。

4、随机歌单的算法(英文)

本文介绍 Spotify 生成随机歌单的算法,要求是同一个歌手的歌曲不能连续播放。

5、ASML 总部访问记(英文)

作者访问荷兰光刻机公司 ASML 总部,在埃因霍温市的郊区,这里是他的见闻。

6、200行 JavaScript 代码实现虚拟 DOM(英文)

虚拟 DOM 是很多 JS 框架的底层基础,本文演示怎么自己从头实现它。

工具

1、Postgres.js

Node.js 和 Deno 的 PostgreSQL 客户端,类似软件还有 Zapatos

2、OpenccLint

一个基于 OpenCC 的繁简体中文转换工具,支持编辑器和命令行界面。(@hddhyq 投稿)

3、BiliVideoDown

一款基于 Flutter 的桌面端 B 站视频下载器,代码开源。(@kangpeiqin 投稿)

4、AQChat

一款匿名的在线聊天软件,用户可以自由登录、创建房间、会话和传输文件,体验 demo。链接是后端代码,另有 Web 端移动端。(@howcodes 投稿)

5、Voicer

一个 Chrome 浏览器插件,用来语音朗读网页文本。(@wang-jianliang 投稿)

6、易条形

一个在线的条形码生成器。(@FZliweiliang 投稿)

7、ScienHub

LaTex 在线编辑器,提供很多实用的模板。(@tc1989tc 投稿)

8、trash.sh

rm 命令的简单替代品,提供一个删除文件的回收站。(@qqAys 投稿)

9、我的字体

一个制作个人手写字体的在线工具。(@harbor2009 投稿)

10、lingo link

一个开源的浏览器插件,支持划词翻译、AI 翻译、生词标记。(@chengfengfengwang 投稿)

AI 相关

1、Luma AI Video Generator

Luma AI 视频生成器免费在线使用。(@sunnyjingliu 投稿)

2、Stable Diffusion 3 AI 图像生成器

免费使用 Stable Diffusion 3,通过文本生成图像,无需注册。(@ddewfrefref 投稿)

3、Generative Voice AI

一个文字转语音的服务,支持中文,免费账户每月可以转10000字(约10分钟音频)。

4、BrainyAI

一个开源的 Chrome 插件,在侧边栏加载 AI 模型,是类似产品 Sider AI, Monica, Merlin, 和 MaxAI 的免费替代品。(@luyu0279 投稿)

5、Rock AI

该网站托管了一些开源 AI 模型,可以免费调用。(@hellokidder 投稿)

6、Chrome AI

使用 chrome 内置 AI 模型搭建的本地聊天工具。(@zengkan0703 投稿)

7、mac 电脑的本地文本总结(英文)

本文介绍如何在 mac 电脑上,架设本地的 Ollama 模型,用它建立一个快捷方式,自动对打开的网页进行内容总结。

资源

1、开发者必须了解的 Unicode 知识(2023版)

这篇长文介绍最新的 Unicode 知识。

2、loadership

该网站可以定制纯 CSS 的页面加载动画(loader)。

3、现代 C++ 编程(Modern C++ Programming)

一个开源的 C++ 英文教程。

图片

1、奇怪的环岛

英国有一个奇怪的环岛,分成内圈和外圈,它们之间还分布着5个小环岛。

它的内圈是逆时针方向,外圈是顺时针方向。

从外圈进入内圈,或者从内圈进入外圈,都必须通过5个小环岛。

下图是当地的交通指示牌。

这个环岛建于1972年,多年没有发生过重大的交通事故。

2、易北河隧道)

易北河流经德国汉堡市中心。

1911年,汉堡市政府在河底挖了一条426米的隧道,方便两岸的交通。

这条隧道的奇特之处,就是没有引道。行人和车辆必须使用升降机,进入和离开隧道。下图两侧的黄色垂直通道,就是升降机。

下图是车辆升降机的入口。

这个隧道直到今天还在使用,甚至还在里面开过音乐会。下图是在升降机底部仰望出口。

文摘

1、编程语言应该多大?

编程语言有小有大。

一些语言只提供最核心的功能,另一些语言无所不包。

还有一些语言,开始时很小,后来不断添加功能,变得越来越大,甚至庞大到难以使用。

Python 语言的初始版本很小,前几个版本故意保持这种特色,添加功能的建议都被明确拒绝,理由是它们会使语言太大。

某个时刻(也许是在 Python 1.6 和 Python 2.0 之间),事情发生了变化:功能建议不会因为使语言变大而被拒绝,只会因为没有解决重要问题而被拒绝。

从此以后,Python 就走向了庞大语言的道路。

在我看来,一旦语言的设计者不再担心语言的大小,这种语言的无限制增长是不可避免的。

很多语言都是如此。尽管 Java 从来都不是小型语言,但在泛型添加到 Java 1.5 之前,它的变化相当小。泛型似乎是 Java 大型语言之旅的起点。

JavaScript 本来是一个周末设计出来的小型语言,现在变成了一种相当庞大的语言。

Rust 是一种已经很大的语言,但它正在考虑添加更多功能,变得更大。

为什么那么多语言都走上了变大的道路?

我的看法是,因为没有一种编程语言是完美的,总有不能很好支持的用例。许多情况下,添加新功能有助于更好地支持这些用例。

由于潜在用例是无限的,因此我们总是加入新的设计,让语言变得"更好",副作用就是每次都让语言变得更大一点。

言论

1、

拉斯维加斯正在举行一年一度的电子表格 Excel 世界锦标赛,它有一个其他比赛都没有的特点,那就是毫无趣味。

-- 《Excel 世界锦标赛》

2、

哈勃望远镜确定,宇宙的准确年龄是138亿年。那就是我们这个世界的起源,在这之前是什么,没人知道。

--《韦伯望远镜提供的新线索》

3、

农活忙不过来。

-- @dylanaraps,Kiss Linux 的创始人,他的 GitHub 主页上只留了这一句话,项目已经两年多不更新了

4、

我不记得读过的书,就像不记得吃过的饭一样;即便如此,它们还是造就了我。

-- 爱默生

5、

早期,民航客机的驾驶舱最多有五名成员。由于导航和通信的自动化,导航员和无线电操作员率先被淘汰。然后,飞行工程师也被淘汰了,只剩下两名飞行员。

随着飞行员成本的飙升,航空公司开始要求,只有一个飞行员的窄体飞机,副驾驶员被淘汰只是时间问题。

最终,仅剩的一个飞行员也会被淘汰,以后的飞机主要靠自动驾驶,再配上一名能够有限控制飞机的地面操作员。

-- 《最后的飞行员》

往年回顾

2023:卡马克的猫

2022:晋升制度的问题

2021:内容渠道的贬值

2020:阵地战与奇袭战

(完)