2022.10-12--第10期

一、刊首图

水上大楼

荷兰阿姆斯特丹是一个低洼的海边城市,为了解决淹水问题,该市最近建了一座水上大楼,不再跟海水争地。这栋楼有440套公寓,从码头开始向水面伸出去。就像一个巨大的水上大门。由于全球变暖,海平面上涨,这样的水上建筑对于低洼地区很有实际意义。

二、时事新闻

1、Google关停自家游戏平台Stadia

9月30日,谷歌无预警地宣布,关闭自家的游戏平台 Stadia。

“早上七点,Stadia 负责人给全体员工发邮件,告知八点半将有一个重要会议,希望大家调开其他事情,务必参加。

会议只开了十分钟,负责人说,这项业务将在明年一月完全关闭,说完就宣布散会。然后,他立即在谷歌官方博客上发表文章,对外宣布了这个消息。”

这就是说,员工也是当天早上才知道的,只比外界早了一个小时。谷歌这种突然关闭自己产品的做法,已经不是第一次了,这么做伤害了很多人。一夜之间,员工的工作没了,玩家购买的游戏软件和硬件没用了。虽然谷歌承诺退款,但是你好不容易获得的游戏道具和存档,肯定要消失了。

这一次跟以前还不一样,Stadia 是一个平台,上面的游戏都来自外部游戏公司和工作室。随着平台关闭,这些外部机构投入的时间、金钱和人力全部白费了],谷歌会不会补偿还很难说。

2、墙壁透视

一家以色列公司推出了“墙壁透视”装置,可以透视墙后的物体和人员。它的原理是使用微波雷达穿墙,接收墙后物体的雷达波反射成像。这个装置可用来检测房间内是否存在生命、房内人数、空间的总体布局等等,甚至能够判断一个人是坐着、站着还是躺着。它主要供军队、警察、情报部门、搜救队使用。

墙壁透视

3、打印代码

马斯克入主推特的第一天上午,工程师突然收到通知,让他们打印过去30天~60天中自己写的代码。马斯克会跟他们座谈,现场可能会看他们的代码。一时之间,整个公司的打印机都在排队,A4 纸也不够了。到了中午,工程师又收到通知,立即停止打印代码,已经打印的要放进碎纸机,只要在电脑上准备好代码就可以了。于是,公司的碎纸机前又排起了队……

4、马斯克收购推特后大批裁员

美国亿万富翁埃隆·马斯克近期完成了对推特的收购交易,此前有媒体曝光,他计划裁员50%。

马斯克在推特中写道:“关于推特公司裁员,不幸的是,当公司每天亏损超过400万美元时,这别无选择。每个离开的人都得到了3个月的遣散费,这比法律要求的高出50%。”

综合英国路透社、美国全国广播公司(NBC)最新报道,推特公司当地时间3日晚间向员工发布电子邮件通告,公司方将从4日早上开始通过电子邮件方式告知员工是否被裁员。据彭博社4日最新报道,部分推特员工在旧金山联邦法院提起了一项集体诉讼,起诉推特公司。提起起诉的员工认为,推特公司在没有充分提前通知的情况下实施裁员,这违反了美国联邦和加利福尼亚州法律。

5、陨石上的碱基

美国科学家证实,组成 DNA 和 RNA 的5种碱基,全部在1969年坠落在澳大利亚的一颗陨石上发现了。

陨石上的碱基

DNA 和 RNA 是生命的组成单位,它们由5种碱基组成:腺嘌呤、鸟嘌呤、胞嘧啶、胸腺嘧啶、尿嘧啶。这些碱基就是生命的最基本单位。

陨石上发现所有碱基,为生命的“陨石起源说”增添了说服力。这种假说认为,地球生命来自于落到地面的陨石,它为地球带来了有机物。

6、iPhone 卫星电话的背后

iPhone 14 的卫星电话功能,最近投入使用。苹果官网披露了一些背后的细节。为了这个功能,苹果向卫星通信公司 Globalstar 投资了4.5亿美元,更新了卫星和地面站。目前,一共有24颗低轨卫星,负责接收 iPhone 信号,再把信号传回地面站。考虑到用户可能比较多,地面站的卫星天线都是特别加大的。目前一共有300多人,负责维护世界各地的地面站。

7、测试 Windows Dev Kit 2023

微软发布了一款 ARM 主机,叫做 Windows Dev Kit 2023,配置很有吸引力,售价599美元,专门供开发者测试 Windows 的 ARM 版本。另有一篇 中文评测

Windows Dev Kit 2023

8、摆脱噩梦的手表

苹果手表有一款软件 NightWare,可以帮你摆脱噩梦。它使用心率传感器、加速度计和陀螺仪的数据,实时监控身体数据,并且结合你的睡眠模式,判断你是否在做噩梦。一旦确认,手表就发出逐渐增强的脉冲,柔和地震动手腕,直到你退出噩梦,同时又没有完全醒来时停止。它是目前唯一一个美国食药局 FDA 批准的噩梦数字疗法。

9、宠物机器猫

松下公司正式开始发售一款宠物机器猫。那是一个直径20厘米的毛茸茸小球,带有一根尾巴,需要充电。它没有脚和轮子,不能移动,只会简短会话。只要抚摸它,跟它说话,或者抱在怀里,它就会轻轻摇尾巴,并发出咕咕声。有时,它一个人待着,闷闷不乐,就会转过身希望引起你的注意。它喜欢日光浴,放在太阳下会露出很舒服的表情。它的售价约为2000元人民币,去年众筹的第一批产品被抢购一空。

宠物机器猫

10、SkyWater SKY130 PDK

谷歌发起的一个项目,任何人都可以提交芯片设计,由代工厂以130纳米制程做出来。它的主要目的是建立开源的芯片设计生态,取代目前的封闭生态。

11、ChatGPT

OpenAI公司在 11月底正式推出 ChatGPT,这是一种基于对话的人工智能聊天机器人模型,它能够理解自然语言并以自然语言的方式做出回应。ChatGPT 基于 GPT-3.5 模型微调而成,以语言服务模型 InstructGPT 为基础,通过人类回馈增强学习训练模型 RLHF,不过数据设置略有不同。它以对话方式进行交互,既能够做到回答问题,也能承认错误、质疑不正确的前提以及拒绝不恰当的请求,能以更贴近一般人的对话方式与使用者互动。

ChatGPT

12、大气二氧化碳浓度

11月27日,世界最大的活火山夏威夷的茂纳洛亚火山爆发,造成附近的莫纳罗亚天文台停电。天文台里有一个很重要的仪器,从1958年开始一直在统计大气二氧化碳浓度。由于停电,不得不停止统计。预计修复电力设备,至少要几个月,这段时间将没有监测数据。

大气二氧化碳浓度

13、广告拦截费

欧洲廉价航空公司 Wizz Air 的官网,被发现会检查用户是否安装了广告拦截器。如果安装了广告拦截器,显示的票价会增加10英镑。公司的解释是,广告拦截器造成了公司的损失,针对这部分用户,需要增加票价弥补。

广告拦截费

三、技术文章

1、为 Chromium 实现 HEVC 硬解(中文)

字节跳动工程师和 Intel 工程师合作,为 Chrome 浏览器加上 HEVC 支持,也就是支持 H.265 视频编码,该功能已经发布在最新的 Chrome 107。Chrome 之所以一直不加这个功能,是因为 H.265 解码器需要付费。这次的实现很聪明,调用了系统的解码能力,不涉及付费问题。

Chromium解码流程

2、MacOS 开启 sudo 的指纹认证(英文)

sudo 命令需要输入root用户的密码,MacOS 支持用指纹替代 sudo 密码。

3、容器编排器介绍(英文)

容器编排器(container orchestrator)是管理多个容器的工具,目前主要是 Swarm、Kubernetes 和 Nomad 这三家。本文介绍容器编排的基本知识,以及这三个软件的差异。

4、分布式系统的8个错误观念(英文)

初学者对于分布式系统,往往有一些错误观念,忽视了这种系统的复杂性。本文总结了8个常见的错误观念,比如网络是可靠的、延迟为零、系统间通信没有成本等等,看完你就会了解分布式系统的难度在哪里。

分布式系统的8个错误观念

5、开源云原生平台 KubeSphere 与 Rainbond 对比(中文)

作者需要找一个功能完善的云原生应用平台,经过自己筛选和朋友推荐,剩下 KubeSphere 和 Rainbond 这两个产品,本文进行了对比。

四、开源组件

1、vits

Conditional Variational Autoencoder with Adversarial Learning for End-to-End Text-to-Speech 论文 的实现,可用于语音合成。VITS-Paimon 项目是它的一个使用实例。

VITS

2、solon

一款 Java 轻量级应用开发框架。可用来快速开发 Java Web 项目,主框架仅 0.1 MB。类似 Python Flask 的微型框架,提倡按需组合插件。

3、caffeine

Java 的高性能缓存库。借鉴了 Guava 和 ConcurrentLinkedHashMap 的设计经验,拥有更高的缓存命中率和更快的读写速度。

caffeine

4、pendulum

让 Python 处理时间更简单的库。该项目不仅提供了更加简单易用的 API,而且还兼容 datetime 标准库,可以直接替代码中的 datetime 对象。它提供了很多人性化的时间处理方式,比如时间加减、多长时间的描述以及时区的处理等等。

5、schedule

简单友好的 Python 任务调度库,让开发者仅用几行代码就能轻松实现定时任务。它不依赖任何第三方库,全部代码也就一个文件 800 多行,拥有丰富的注释和单元测试,源码阅读起来十分轻松。

6、flasgger

Flask API 的简单 OpenAPI 规范和 Swagger UI。

7、style2paints

一款给线稿上色的 AI 辅助工具。能够帮助用户给没有上色的图片,快速完成上色的 AI 工具,上色效果广受好评,完全免费开箱即用。

8、ng-zorro-antd

基于 Ant Design 的 Angular UI 组件库。

ng-zorro-antd

9、AITemplate

AITemplate (AIT) 是一个 Python 框架,可将深度神经网络转换为 CUDA (NVIDIA GPU) / HIP (AMD GPU) C++ 代码,以提供闪电般的推理服务。

10、dragonfly

Dragonfly 是一种现代内存数据存储,与 Redis 和 Memcached API 完全兼容。Dragonfly 在多线程、无共享架构之上实现了新颖的算法和数据结构。因此,与 Redis 相比,Dragonfly 的性能号称达到了 x25,并且在单个实例上支持数百万 QPS。

11、bun

一个 JS/TS 的服务器运行环境,兼容 Node.js 的所有 API,完全是从头实现的,运行速度大大快于 Node.js。

bun

12、rod

Go 语言的网页自动化和爬虫库。该项目是 Go 语言封装的 DevTools 协议库,实现用 Go 语言操作浏览器,自动化之前需要手动完成的操作,比如:爬取客户端渲染的页面、端到端测试、自动填写表单、模拟点击等操作。项目包含丰富的示例代码,改改就能上手使用。

13、rally

ES 官方开源的压力测试工具。基于 Python3 的 ES 压力测试命令行工具,功能丰富支持自动创建、运行、销毁 ES 集群,以及不同数据集的测试结果比较。

14、bitsail

BitSail是字节跳动开源的基于分布式架构的高性能数据集成引擎。支持多个异构数据源之间的数据同步,提供批量、流式、增量场景下的全局数据集成解决方案。目前,它服务于字节跳动的几乎所有业务线,如抖音、今日头条等,每天同步数百万亿数据。

BitSail的架构

15、rocketry

更加人性化的 Python 调度库。可通过 Python 装饰器语法,进行任务调度的 Python 库。它简单、优雅、高效,支持定时、并发(异步、多线程、多进程)、条件触发等功能。

16、CustomTkinter

CustomTkinter 是一个基于 Tkinter 的 python UI 库,它提供了新的、现代的和完全可定制的小部件。它们像普通的 Tkinter 小部件一样创建和使用,也可以与普通的 Tkinter 元素结合使用。小部件和窗口颜色适应系统外观或手动设置的模式('light','dark'),并且所有 CustomTkinter 小部件和窗口都支持 HighDPI 缩放。使用 CustomTkinter,您将在所有桌面平台(Windows、macOS、Linux)上获得一致且现代的外观。

CustomTkinter

17、quicklink

Chrome 浏览器团队推出的一个 JS 库,可以加快打开链接的速度,它的仓库主页有详细的原理解释。

18、ml-stable-diffusion

在 Apple Silicon 上使用 Core ML 进行稳定扩散。

19、ChatGPT

用于通过 OpenAI 与 ChatGPT 的 API 交互的轻量级包。使用反向工程的官方 API。

20、PyChatGPT

非官方 ChatGPT API 的 Python 客户端,具有自动令牌重新生成、对话跟踪、代理支持等功能。

PyChatGPT

21、chatgpt-api

非官方 ChatGPT API 的 Node.js 客户端。

22、Go Captcha

一个 Go 库,用于生成用户验证测试,无需键盘手动输入,支持 PC 端及移动端,效果参见demo

go-captcha

23、fairseq

Facebook开源的Python人工智能研究序列工具包。

24、riffusion-app

实时音乐生成的稳定扩散。

25、MiniSearch

一个 JS 的全文搜索库,支持模糊搜索等很多功能。

26、raft

Raft 算法的 Go 语言实现。Raft 是一种分布式一致性算法(共识算法),常用于分布式集群内的任意节点,在某种状态转换上保持一致。

五、工具软件

1、HackBrowserData(开源)

一款浏览器数据导出工具。能够导出本地浏览器的密码、历史记录、Cookie、书签、下载记录、localStorage 等数据,支持多平台下的多种主流浏览器。

2、jsoncrack.com(开源)

优雅的 JSON 数据可视化工具。该项目不是简单的展示 JSON 数据,而是将其转化为类似脑图的形式,支持放大/缩小、展开/收缩、搜索节点、导出图片等操作,还可以快速部署成服务。

jsoncrack.com

3、ghidra(开源)

一款免费开源的软件逆向分析工具。该项目由美国国安局开源,可用于分析编译后的代码。

4、OCRmyPDF(开源)

可以把 PDF 文件变成可搜索文件的工具。它使用 Tesseract OCR 引擎,将 PDF 的内容识别成文本,然后给 PDF 文件增加 OCR 文本层。从而实现可搜索和复制 PDF 的内容,已支持 100 多种语言。

5、redis-shake(开源)

阿里巴巴开源的工具,用于 Redis 实例间数据迁移与清洗。

redis-shake

6、TinyPNG4Mac(开源)

TinyPNG 是一个提供免费图像压缩服务的网站,该项目是其第三方 MacOS 客户端。

7、ctop(开源)

一个docker容器的终端监控界面,监控容器的运行状况,类似于 docker 容器的 top 命令。

ctop

8、footprint(开源)

一个可定制的足迹应用,根据是否到过以及熟悉程度提供4个等级着色,已支持世界地图、中国地图、美国地图,中国所有省、市地图,支持地图下钻上钻,支持一键存图。

footprint

10、alist(开源)

一个支持多存储的文件列表程序。在线预览

alist

11、novelai-bot(开源)

基于 NovelAI 的画图机器人,由 koishi 跨平台聊天机器人框架实现,适用于QQ、Discord、Telegram等平台。

12、Microsoft-Activation-Scripts(开源)

使用 HWID / KMS38 / Online KMS 激活方法的 Windows 和 Office 激活器,专注于开源代码和更少的防病毒检测。

13、Pagefind(开源)

一个静态全文搜索工具,专供静态网站使用,不需要服务器就能完成全站搜索,参见 介绍文章

14、Fleet(免费)

JetBrains 公司的下一代 IDE,号称具有 IntelliJ 的代码处理引擎,但是架构和 UI 进行了重新设计,目前免费使用。

JetBrains Fleet

15、Lyra(开源)

一个 TypeScript 写的全文搜索引擎,所有数据都放在内存里面。

16、android-emulator-m1-preview(开源)

Android 模拟器 M1 预览版。

17、nessus(破解)

docker部署的破解版nessus,密码作者留了个彩蛋,并未公开,不会破解的话可以进行重置。

Nessus-Scanner

18、Domain Admin(开源)

开源的域名 SSL 证书监测平台,可以自己搭建,监控 SSL 证书,到期自动邮件提醒。

Domain Admin

17、falcon-plus(开源)

一个开源的企业级监控系统。

18、jellyfin(开源)

优秀的本地媒体库管理工具。这是一个完全免费、支持中文、安装简单、跨平台、功能强大的媒体库管理系统。它能把原本躺在文件夹里的视频文件,变成包含封面、描述、评分、演员表等信息的“影碟”,让视频整整齐齐、赏心悦目,还支持视频续播、订阅更新、多端可看,让你可以远离广告优雅地追剧。

jellyfin

19、srs(开源)

一款简单、高效的实时视频服务器。高性能的流媒体服务器,支持 RTMP、WebRTC、HLS 和 HTTP-FLV 等协议,常用来构建直播和视频会议的后端服务。

SRS

20、mizu(开源)

强大的 Kubernetes API 流量查看工具。如果把 k8s 比作操作系统,那它就是 k8s 上的 tcpdump,使用起来就像 Chrome 开发者工具一样简单直接,能够让 k8s 上微服务之间的网络通信一览无遗。

mizu

21、PPTist(开源)

基于 Vue3.x + TypeScript 的在线演示文稿应用,还原了大部分 Office PowerPoint 常用功能,实现在线PPT的编辑、演示。支持导出PPT文件。在线体验

22、latexify_py(开源)

用于生成 LaTeX 数学公式的 Python 库。LaTeX 是一种基于 ΤΕΧ 的排版系统,对于展示复杂的数学公式表现极为出色。该项目可以用 Python 函数,轻松生成复杂的 LaTeX 数学公式描述。

latexify_py

23、carefree-creator(开源)

为 Stable Diffusion 模型提供一个好用的 WebUI,各种参数都可以调整。

carefree-creator

24、Colorize Pictures(免费)

使用 AI 模型为黑白照片上色,有多种风格可以选择,类似于DeOldify。

25、lama-cleaner(开源)

图片处理工具,可快速删除你图片中任何不想要的物体、缺陷、人,也可以替换指定物体。lama-cleaner 基于 cv2 经典图像嵌入算法,支持多种 SOTA AI 模型。

26、Sonic(开源)

一个 Go 语言开发的博客平台,支持 Linux/Windows/MacOS,系统资源占用小,自带管理后台。

sonic

27、Netease Recent Profile(开源)

这个开源工具可以将你的网易云音乐的听歌记录生成一张 SVG 图片。

28、VOCALOID 6(付费)

雅马哈公司发布的一个 AI 工具,会根据配乐和歌词自动演唱,也就是说,不需要歌手了。官方目前支持日文和英文,但是国内的公司已经开发出了中文声库,比如“星尘 infinity”声库。下面就是这个软件演唱的中文歌曲(B 站Youtube),根本听不出是软件在唱歌。

VOCALOID 6

29、sapling(开源)

Facebook(现在叫 Meta)内部使用的版本管理工具,最近开源了。它兼容 Git 协议,可以替代 Git 的命令行客户端,用起来更简单和合理。官方文档

30、Aurora(开源)

一个开源的博客系统,后端基于 Spring Boot,前端基于 Vue,自带管理后台。

Aurora

31、cadvisor(开源)

一款由 Google 开源的容器监控工具。它可以实时统计容器运行时占用的资源,包括 CPU 利用率、内存使用量、网络传输等信息。提供了 Web 可视化页面,能方便用户分析和监控容器运行状态,支持包括 Docker 在内的几乎所有类型的容器。

32、notesnook(开源)

一个开源的端对端加密的笔记服务,保证内容完全私密,即使泄漏也无法破解。它有 Web 端、桌面端、手机端。你可以用官方服务器,也可以自己架设服务器。

Notesnook

33、Stable Diffusion 2.0(开源)

这是眼下最热门的 AI 作图模型,近期发布了2.0版。图片质量得到了提高,性能进行了优化。更重要的是,它只需要一个 GPU,家用 PC 就能运行。

34、Tipi(开源)

一个家庭服务器的管理界面,集成了许多服务(比如流媒体、代码托管、BT 下载等等)。只要点击一个服务,就会启动一个容器来运行它。

runtipi

35、Ebook Reader(开源)

一个开源的网页阅读器,用来阅读 EPUB 电子书。在线体验

36、ContainerSSH(开源)

一个 SSH 服务器。用户使用 ssh 登录时,它会自动启动一个容器,让用户登录到这个容器里面,而不是登录到底层机器,用户不会觉察。它的工作流程如下:

  • 用户打开到 ContainerSSH 的 SSH 连接。
  • ContainerSSH 使用用户的用户名和密码/pubkey 调用身份验证服务器来检查其是否有效。
  • ContainerSSH 调用配置服务器以获取后端位置和配置(如果已配置)
  • ContainerSSH 调用容器后端来启动具有指定配置的容器。来自用户的所有输入都直接发送到后端,容器的输出发送给用户。

ContainerSSH

37、wtf(开源)

一个 Python 命令行脚本,用来处理文本文件各种多余的空行空格,提供多种配置项。

38、dsq(开源)

可直接用 SQL 查询数据文件的命令行工具。通过该项目无需将数据导入数据库,就能用 SQL 查询文件内的数据,可执行模糊查询、计数、排序等命令,支持 JSON、CSV、Excel、Parquet、YAML 等类型的文件。

39、wvp-GB28181-pro(开源)

开箱即用的网络视频平台。基于 GB28181 标准实现的网络视频平台,能够接入摄像机、平台、NVR 等设备、支持视频预览、云台控制、录像查询和回放、无人观看自动断流等功能。

wvp-GB28181-pro

40、reloadium(开源)

Python 热重载调试工具。在不重启程序的前提下,通过这个项目可以查看改动后、最新的 Python 代码运行效果,以及每行代码的耗时。有了它可以更高效地调试 Python 代码。

41、changedetection.io(开源)

简单好用的网站变更检测、监控和通知服务。基于 Flask+Selenium 构建的 Web 服务,可以在目标网站发生变化时发出通知,可用于监控商品降价、工作机会、版本发布、最新内容等,支持 Docker 的安装方式。

changedetection.io

42、hackingtool(开源)

黑客工具全家桶。该项目收录了各种黑客工具,包括破解密码、SQL 注入、钓鱼攻击、XSS、DDos 等。

43、memos(开源)

具备知识管理能力的备忘中心,可多人协作。

memos

44、sniffnet(开源)

一个跨平台的网络流量监控工具,可快速、直观查看流量变化。

45、buzz(开源)

转换音频为文本的工具,支持麦克风实时录入转文字,也支持导入已有音频文件。文本可以导出为 TXT、SRT、 VTT 格式。

buzz

46、GitNoter(开源)

一个开源的 Web 笔记应用,用户的笔记保存在自己的 GitHub 仓库。

47、skywalking(开源)

SkyWalking是一个开源的APM系统,包括对Cloud Native架构分布式系统的监控、追踪、诊断能力。

skywalking

48、vault(开源)

Vault 是一种用于安全访问机密的工具。秘密是您想要严格控制访问的任何内容,例如 API 密钥、密码、证书等。Vault 为任何秘密提供统一接口,同时提供严格的访问控制并记录详细的审计日志。

49、appsmith(开源)

用于构建管理面板、内部工具和仪表板的低代码平台,与超过 15 个数据库和任何 API 集成。

appsmith

50、kafka-map(开源)

一个美观简洁且强大的kafka web管理工具。

kafka-map

51、halo(开源)

一款好用强大的开源建站工具,基于 Springboot,最近发布了2.0版,此处可查看 Demo

52、chat-gpt-google-extension(开源)

显示 ChatGPT 响应和 Google 搜索结果的浏览器扩展。Google插件商店地址

chat-gpt-google-extension

53、vuepress-theme-reco(开源)

一个由VuePress构建的主题,它可以轻松地为博客提供一个漂亮和优雅的外观。该主题提供了许多有用的功能,如可定制的导航栏、侧边栏、图片懒加载和搜索功能,可以更好地组织和展示内容。

vuepress-theme-reco

54、物联网开发板模拟器(免费)

这个网站模拟各种物联网开发板,比如树莓派 Pico、Arduino、ESP32等。你在网页上输入项目代码,可以看到硬件的模拟执行结果。

物联网开发板模拟器

55、vue-pure-admin(开源)

Vue3+Vite4+Element-Plus+TypeScript编写的一款后台管理系统,兼容移动端。在线体验

vue-pure-admin

56、JdBuyer(开源)

京东抢购自动下单助手,GUI 支持 Windows 和 macOS。

57、Green-Wall(开源)

GitHub贡献图生成器。

Green-Wall

58、ecapture(开源)

一款无需 CA 证书即可抓取 HTTPS 明文的工具。该项目基于 eBPF 技术实现了 TLS 加密的明文捕获,可用于 MySQL 数据库的查询审计、bash 命令捕获等场景,仅支持 Linux 和 Android 系统。

eCapture工作原理

59、kafka-ui(开源)

一款开源的 Kafka 管理平台。可方便地查看 Kafka Brokers、Topics、消息、Consumer 等情况,支持多集群管理、性能监控、访问控制等功能。

60、Bottles(开源)

一款可轻松实现 Linux 上运行 Windows 软件的工具。该项目提供了清爽易用的 GUI 界面,用户就算不懂任何编程技巧,也可以轻而易举地在 Linux 系统上,运行 Windows 的游戏和软件。

Bottles

六、学习资源

1、nginx-tutorial(中文)

这是一套简单的 Nginx 教程,包含 Nginx 的安装、常用命令、反向代理、负载均衡等知识点,能够帮助新手快速入门 Nginx。

nginx-tutorial

2、Crash-Course-Computer-Science-Chinese(中文)

计算机科学速成课[40集全/精校] 。YouTube上的计算机科学速成课(Crash Course Computer Science)中文字幕翻译版,视频从晶体管讲到了操作系统和人工智能,但并不会教你如何编程属于科普类视频。

3、missing-semester(英文)

大学计算机教育中缺失的一课。大学里的计算机课程往往只专注于讲授数据结构、操作系统这些知识,对于编程开发中常用的工具则留给学生自行学习。在 MIT 这个课程中,你可以了解和掌握命令行(shell)、文本编辑器(Vim)、版本控制系统(Git)等强大的工具,越早接触越能更加熟练地使用它们,有助于未来的职业生涯。

4、The-Art-of-Linear-Algebra(英文)

图解线性代数。《Linear Algebra for Everyone》是一门广受好评的线性代数公开课,该项目是基于这门公开课,编写整理而成的图文并茂的学习笔记。

The-Art-of-Linear-Algebra

5、Cookbook(英文)

《数据工程师 Cookbook》。这本书会告诉你,如果想要成为一名出色的数据工程师,到底需要学习哪些知识。

6、patterns-of-distributed-systems(中文)

《分布式系统模式》中文版。该书尝试将副本同步、可靠性、网络延迟等分布式系统共性问题归纳总结,并参考像 Kafka、Zookeeper 等分布式系统的实现过程,给出分布式系统中同类问题的通用解决方法/模式。

7、be-a-professional-programmer(中文)

成为专业程序员路上用到的各种优秀资料、神器及框架。

8、500-AI-Machine-learning-Deep-learning-Computer-vision-NLP-Projects-with-code(英文)

收集性质仓库,包含 AI 机器学习、深度学习、计算机视觉、NLP 项目和代码。

9、Practical Deep Learning for Coders(英文)

fast.ai 推出的最新线上公开课,向程序员介绍如何做一个深度学习项目,有视频和详细的课程资料,另有 该课程的Github仓库

Practical Deep Learning for Coders

10、java-design-patterns(中文)

用 Java 实现的设计模式,支持多语言阅读。

11、识典古籍(中文)

北京大学和抖音公益合作的古籍数字化平台。目前可免费搜索390部经典古籍,共计3000多万字。未来三年将陆续完成一万种古籍的智能化整理工作。

识典古籍

12、Make-A-Video(英文)

Meta 公司发布的工具,可以根据输入的文本,自动生成一段视频,比如“奔跑的一群马”。类似的工具还有 Phenaki

13、pytorch-deep-learning(英文)

从零到精通的PyTorch深度学习课程资料。

14、AI 绘画资料(中文)

这个中文仓库收集 AI 图片生成引擎的各种资料。

15、k8s-tutorials(中文)

一个 Kubernetes 教程,该教程侧重于实战引导,用 Go 写的项目作为演示对象,从最基础的容器定义开始,逐一讲述 pod、deployment、service、ingress 等资源,直到用 helm 打包部署一套完整服务。

k8s-tutorials

16、LeetCode-Go(英文)

用 Go 解决 LeetCode,100% 的测试覆盖率。

17、Flask 超级教程(英文)

免费阅读的英文电子书,帮助读者学习如何使用 Python 和 Flask 框架创建 Web 应用程序。

18、Lexica(英文)

Stable Diffusion 模型的搜索引擎,可以搜索这个 AI 作图模型所生成的各种图片。

Lexica

19、Windows 11 加固指南(英文)

这个英文仓库收集各种提高 Windows 11 安全性的措施。

20、DevOps-Roadmap(英文)

2022 年 DevOps 路线图,包含学习资源。

DevOps-Roadmap

21、best_AI_papers_2022(英文)

按发布日期列出的 AI 最新突破(2022 年)的精选列表,带有清晰的视频说明、指向更深入文章和代码的链接。

22、awesome-cto(英文)

一份针对CTO的资源清单,重点放在初创公司和高速增长的公司。

23、security-research(英文)

该项目包含安全建议及其随附的概念验证,这些建议与在 Google 进行的影响非 Google 拥有的代码的研究有关。

24、cs-self-learning(中文)

计算机自学指南,里面包含很多技术方向的顶级课程资源及简介。在线阅读

cs-self-learning

25、PayloadsAllTheThings(英文)

Web 应用程序安全和 Pentest/CTF 的有用负载和绕过列表。

26、security-study-plan(英文)

成为 Pentest、AppSec、云安全、DevSecOps 等角色的网络安全工程师学习指南。

27、The Algorithms(中文)

这个网站收集 GitHub 上面的各种算法实现,按照种类和语言进行分类。

The Algorithms

28、awesome-chatgpt(英文)

ChatGPT 和 GPT-3 的精选工具、演示和文档列表。

29、技术文章摘抄(中文)

一个体系化的分布式课程,总结了面试常见的一些问题。

技术文章摘抄

30、chinese-independent-blogs(中文)

中文个人独立博客网站合集。如果说中文独立博客的时代已经过去,那么至少还有这么一块地方,属于热爱自由的博主们。

七、生活经验

1、中国运营商为什么不推广eSIM

eSIM 取消了实体 SIM 卡,是一种方便消费者的技术。目前主要是手机厂商在推动,国内的通信运营商并不积极,这篇新闻报道分析原因。

2、付费颜色

Pantone 是一家美国公司,最早生产油墨,后来发明了一套配色系统,给每一种颜色编号,保证同一种色彩不管用在什么地方,都是一致的。它的这套配色逐渐成为行业标准,也申请了专利。

Pantone付费颜色

Adobe 公司长期与 Pantone 合作,PhotoShop 内置了 Pantone 配色,用户可以免费使用。后来,Adobe 不愿意再付钱给 Pantone 了,两家公司去年宣布停止合作。今年10月,PhotoShop 正式移除了 Pantone 配色。后果就是,如果你以前的图片文件(psd 文件)使用了 Pantone 配色,这个颜色在新版 PhotoShop 将变为黑色。如果你想还原颜色,就必须向 Pantone 公司购买专门的插件,价格是每月15美元。这件事情引起了热议,刷新了大家的认识,颜色原来也要付费使用。

3、Heroku 的替代品

Heroku 原来是一个免费服务,可以托管网站。最近它关掉了免费服务,要求用户付费。本文介绍一些替代品,包括免费的部署服务和免费的数据库服务两部分。

4、为什么电池只有1、5、7号

本文介绍一些干电池的知识,以及它们的编号是怎么来的。

5、橡皮擦

日本有一种橡皮擦,造型是一个有头发的和尚,擦着擦着就变成了光头了。

橡皮擦

6、GitHub 2022 开发者大会

1)GitHub Universe 大会

下面提到的新功能,需要手动申请后才可以使用。申请地址:https://github.com/features/preview

The latest GitHub previews

[1] 嘿,GitHub

GitHub Copilot 是去年的 GitHub 开发者大会上,发布的一款人工智能的编程辅助工具,它可以通过描述揣测开发者的意图自动编写代码,支持多种编程语言。不管是因为 Copilot 令人眼前一亮的便捷性,还是其存在的代码版权问题和舆论声讨,不可否认的是 GitHub Copilot 是一个划时代的产品。今年 GitHub 又为 Copilot 增加了新的功能:语音对话编程。你可以通过”hi,GitHub”唤醒服务,然后用对话的方式告诉它,要写什么代码或者做什么操作,Copilot 就会自动编写代码或者运行程序。

[2] 免费的 Codespaces

GitHub Codespaces 是一个云开发环境服务,可以让开发者在几秒钟内,构建好所需要的开发环境,极大地简化了部署环境的步骤。现在,开发人员可以在 Codespaces 上选择使用 JetBrains 或 JupyterLab(支持 GPU) 的 IDE。重点是 Codespaces 将向 GitHub 上的所有用户免费开放(60 小时/月)。

[3] 用 Markdown 管理项目

GitHub Projects 是 GitHub 提供的在线项目管理工具,这一年 GitHub 为它增加了 100 多项功能。GitHub issues 作为 Projects 的重要一部分,它目前已支持 Markdown 的 task 语法,然后 task 可以是关联 Issues 或者 Project view,实现了状态的变化实时+双向同步。

[4] 让开发者填饱肚子

GitHub 希望通过 GitHub Accelerator、GitHub Fund 和 GitHub Sponsors 三个计划,让开源爱好者可以通过开源获得收入,甚至全职做开源。

  • GitHub Accelerator:GitHub 加速器将为 20 名维护人员和团队提供 2 万美元的津贴和指导,帮助他们开启全职的开源职业生涯。
  • GitHub Fund:GitHub 基金与微软的风险投资部门 M12 合作,成了 1000 万美元的开源基金。投资重点将是处于种子阶段的开源的开发者工具,CodeSee 是他们的第一笔投资。
  • GitHub Sponsors:打赏

2)Octoverse 报告

Octoverse 是 GitHub 分析数百万的开源项目和开发者得出的数据报告。从 2012 年开始 GitHub 每年都会发布一份报告,今年正好是 10 周年。今年的话题是:开源对企业有什么影响?企业对开源有什么影响?

GitHub 上有 9400 万的开发者。90% 的公司使用了开源代码。财富 100 强公司的 90% 以上都使用 GitHub。2022 年有 4.13 亿次开源贡献。

[1] HCL 是 GitHub 上增长最快的语言

  • 报告中指出开发者在 2022 年大量使用 HCL、Shell、Go 编程语言,这说明 GitHub 上的项目越来越多地采用基础设施即代码(IaC)的做法,即 IaC 越来越流行。这也说明了运营社区开始在开源世界中崭露头角,而开源历史上更多地是以开发者为中心。

  • 补充解释:HCL 全称 Hashicorp Configuration Language 是 Terraform 的配置语言,它是 HashiCorp 发明的一种声明式语言,能够以更加简短和人性化的方式来描述资源。IaC 是 Infrastructure as Code 基础设施即代码的缩写,一种通过代码而非手动流程管理基础设施的方法。

[2] 财富 100 强公司中 30% 设立了 OSPO

  • 2022 年,GitHub 上一些最大的开源项目得到了商业支持。这说明,资本开始对开源进行投资,鼓励越来越多的人加入开源,而且大型科技公司也在建立开源社区。

  • 补充解释:OSPO 是 Open Source Program Office 的缩写,即开源规划办公室。

[3] 50% 的 OSS 贡献者,首选有商业支持的项目

  • 贡献者更青睐有商业支持的项目,这强调了有商业支持的开源项目,在发展更广泛的生态和品牌认知方面的重要性。从 Flutter 到 Next.js,从 React 到 VS Code,由公司主导的开源项目,在 GitHub 上已经成为普遍现象。

  • 补充解释:OSS 是 Open-source software 的缩写,即开源软件又称开放源代码软件。

GitHub 今年新增了 2050 万开发者,其印度的开发者人数增长最快。JavaScript 是最常用的编程语言,第 2 名是 Python,后面依次是 Java、TypeScript,去年第 6 名的 PHP 下降至第 7名。贡献者最多的开源项目,前三名分别是:microsoft/vscode、home-assistant/core、flutter/flutter。

7、蓝牙仍然令人痛苦

蓝牙协议诞生已经20年了,从智能手机到冰箱再到灯泡,越来越多的产品通过它进行无线连接。但是,这个协议依然有着各种令人头痛的问题,对于消费者来说,并不好用。

蓝牙的最大优点是低功耗,缺点就是随之而来的一些物理限制:连接距离短,带宽小,容易受干扰,不安全。蓝牙信号使用非专有的无线频段进行通信,这有利于它的开发和推广,但也意味着必须与大量使用同样频段的其他电子产品共享和竞争信号。这会产生干扰,从而破坏通信。蓝牙的安全性也是一个问题。当你安装一个蓝牙扬声器,半径15米以内的任何人都能看到并连接它。这可能会带来安全风险。

蓝牙仍然令人痛苦

但是,由于物联网和智能设备的广泛采用,不同设备的近距离通信越来越重要。蓝牙可以作为粘合剂,将所有设备连接在一起,依然是目前的最佳选择。消费者未来一方面不得不忍受蓝牙的各种缺点,另一方面又不得不依赖它,每天在日常生活中使用它。

八、闲情逸趣

提问的智慧-中国版

Eric S. Raymond 在2004年发表过一篇 How To Ask Questions The Smart Way 文章。 原文过于冗长,有很多信息也已经过时,且文章是站在国外程序员的视角写的,与中国特色社会主义程序员不符。为了更好的宣扬提问的智慧,这里对原文做了大量的删减和本土化改造,更贴近中国程序员的实际情况。

做提问前的准备

在你向社区或者其他非亲非故的同行咨询技术问题之前,你应该先做以下事情:

  • 在社区的 issue 或者 FAQ 中尝试寻找答案 。
  • 尝试使用 google 搜索,不推荐使用 baidu, 应使用关键词搜索,而不是口语化表述。如果使用的是国外的技术或框架,优先用英文关键词搜索。
  • 查看官方文档、使用手册。
  • 先自己思考或通过试验的方式尝试解决。即便解决不了,你也可以获得更多有用的信息。
  • 先找自己团队或者认识的发量较少的朋友咨询。
  • 如果你是程序员,尝试阅读源代码以找到答案。如果你不是或者你认为自己不是,请忽略此条。

如果你做了上述事情,你就获得了向他人提问的资格。提问时,先说明你做了上述尝试,以及你从中发现了哪些关键信息,这会给对方留下一个好的印象。他们会觉得你是同道中人,也是一个努力上进的好青年。

审问之,慎思之。好的答案不是免费的,要么你付费咨询,要么请用一个好的问题来做交换。轻率的提问只能得到轻率的回答,或者如石沉大海。

如何提问

[1] 仔细挑选提问的论坛

在合适的地方提问,和提出一个好的问题同样重要,永远不要到肯德基里询问麦当劳怎么走。 Github issue 和 Stack Overflow 通常是很合适的编程问题的论坛。

  • Github issue:如果你用到 github 上的开源项目,那你可以先到 github 的项目官网中去搜索 issue,看是否有类似的问题。如果没有的话,你可以提一个新的 issue。 在提 issue 时,需要遵守官方对 issue 定义的格式和内容要求,否则你很难得到回复。国内的开源项目,你被回复的可能性是比较低的。毕竟国内程序员的压力都比较大,开源生态环境也有待改进。这不是某一个作者或者组织的责任,开源兴亡,匹夫有责,提出一个好的问题,就是一个好的开端。

  • Stack Overflow:它是 Stack Exchange 旗下的一个子站,谷歌对 Stack Exchange 的页面信息是实时索引的,如果你在谷歌中用英文关键词搜索的话,通常首页就会有 Stack Overflow 的搜索结果,如果没有的话,说明这个问题过于生僻或者关键词没用对。

[2] 官方组织的聊天群通常响应最快

很多商业和开源项目都提供了聊天群,在这些群里提问的话,通常会很快得到响应,而且群里都会有官方的技术支持人员解答问题。

[3] 使用有意义且明确的标题

在提问时,请使用简洁、清晰、一针见血的标题,自觉抵制那些无意义的口水话。『请问有没有人能帮帮我!!』基本上与 『在吗?』同义。不要妄想用卑微、痛苦的语言去打动别人,技术社区不相信眼泪。

[4] 用清晰、条理化、拼写正确的语句书写

一个粗心与草率的提问者,通常也是一个粗心和草率的程序员,工作如此,生活亦如此。自己不认真对待遇到的问题,又岂能期望他人会认真对待。 用词正确简洁、条理清楚、详略得当,这样的问题更容易得到他人回复。 所有的技术社区都支持 markdown语法,恰当的使用 markdown 语法,如高亮、加粗、列表等,能让你的问题更容易被他人理解。如果你需要在英文技术社区提问,你可以借助 google 翻译将你的中文提问转成英文后进行提问。

[5] 描述问题应准确且有内容

尽最大努力预测别人会提到的问题,并提前备好答案,这样可以提高沟通的效率。

  • 仔细、清楚地描述问题的症状
  • 描述问题发生的环境(主机、操作系统、应用程序等)
  • 描述提问前做过的研究及其理解
  • 描述提问前为确定问题而采取的诊断步骤
  • 描述最近对计算机或软件配置的任何相关改变
  • 如果可能,提供在可控环境下重现问题的方法

如果你认为是代码有问题,则应该提供可复现的测试代码和样例,这会让你得到回复的几率大幅增加。

[6] 别急于宣称找到Bug

当你在一个软件或开源项目中遇到问题,除非你非常、非常的有把握,否则不要大声嚷嚷找到了Bug, 轻则被打脸,重则被社区拉入黑名单。

程序员听到别人声称找到 Bug 的第一反应是 “这不可能” ,第二反应是 “你用错了吧”。 就算你真的找到 Bug 了,也应礼貌友好的指出。 大声嚷嚷:“你这写的啥呀,是不是没测试就发出来了呀” 对于解决问题没有帮助,只会得到“你行你上”的回复。

[7] 有节制的提出请求

直接要求他人帮你解决问题是愚蠢且自私的。在你遇到问题,寻求他人帮助时,你应抱着一定要自己解决的信念,别人只是给你提供解决思路和纠正错误。没有人有帮你解决问题的义务,合理有节制的提出请求,你才有可能得到他人的回复。

[8] 礼多人不怪

礼貌一点,使用『你好』、『请』、『谢谢』,让别人明白你感谢他们无偿的帮助。

[9] 问题解决后有回复

有些人在他人帮助下解决了问题就销声匿迹,远走高飞。别人花费大量时间提供帮助,而他却在问题解决后不愿向帮助的人说明一下结果。问题解决后向所有帮助过的人回一条消息,让他们知道问题是如何解决的并再次感谢。有来有往,来日方长。如果问题比较复杂,可以梳理总结一篇文章发出来,一来可以自己巩固,二来可以帮助他人。前车之鉴,后事之师。

如何理解别人的回复

[1] RTFM 和 STFW 意思是你的问题很傻很天真

如果你收到这样的回复,那这就是你能收到的最好的答案,你应该照做,去网上查一下,或者看一下手册。这样的回复虽然有些难以接受,但你不应该觉得被冒犯,因为别人已经给了你正确的答案。如果你还觉得难以接受,你应该时刻提醒自己,别再提这么傻的问题了。

[2] 对待无礼

国内的评论区已基本被杠精占领,技术社区这一片净土也难以独善其身,肆意的谩骂、互相 diss 已是司空见惯。评论区的提示信息不是请遵守法律,就是善意的提醒“善语结善缘,恶言伤人心”。

如果面对的是毫无意义的谩骂、轻视,这种纯粹的恶意仅仅是对方的一种发泄,目的就是引起你的愤怒。如果你愤怒了,那正中其下怀。如果对方只是无礼的给出了有用的信息,那就说明他是一个刀子嘴豆腐心的人,嘴上说着不要,但想要帮助别人的心还是很诚实的。如果你愤怒了,反倒显的小气了。

别像失败者那样反应

技术上的争论应该是君子之争,就事论事,理越辩越明。 谩骂、诋毁,或者是如祥林嫂般去知乎上宣称自己遭遇的不公正待遇,这样的回应只会让自己变成自己讨厌的那个人。君子量不极,胸吞百川流。不要做意气之争,不要把有限的精力放在无谓的争执上。

如何更好的回答他人

前面都在说如何更好的提问,下面说说做为被提问的一方,如何更好的回答他人的问题。

  • 态度和善一点。 遇到难题时的压力可能会让人显得无礼或愚蠢,但你要知道,这并不是真实的他。他只是遇到难处了,宽容善待他人,也是体现自己的良好修养。良言一句三冬暖,恶语伤人六月寒。
  • 对初犯者私下回复。 对那些无心之失没有必要当众羞辱。闻道有先后,术业有专攻,如是而已。人非生而知之者,大家都是从麻瓜做起的,一个真正的新手也许连怎么搜索或在哪找 FAQ 都不知道。回复别人 STFW 合理但不合情。
  • 没有十足把握,就别信誓旦旦。一个听起来权威的斩钉截铁的错误回复比没有回复还要糟,不要随意许诺,信誓旦旦地说“就是这的问题”。时刻记住,谦受益,满招损。
  • 可以不帮忙,但别瞎闹。 不要在具体步骤上开玩笑,有些可怜的麻瓜真的会把 sudo rm -rf /* 当成重启指令。
  • 探索性的反问以启发提问者打开思路。 授人以鱼,不如授人以渔。探索性的反问、讨论比直接给出答案更难能可贵。
  • 从中发现自己软件的不足。当回复一个好问题时,问问自己 『如何修改程序或 FAQ 文档以免再次解答同样的问题?』。
  • 过程比结果更重要。如果你自己也是研究了很久之后才得到答案,那在回复他人时,不仅回复其然,最好是能回复其所以然。这个过程才是真正的价值所在。

九、数字与言论

1、你需要在互联网表达你自己。如果你在互联网上表达了你真正的兴趣,有一股神奇的力量会将你推给志同道合的人,让你们靠近。这些人会成为你最好的朋友、同事,有时甚至是伴侣。——《建立朋友捕手》

2、打开网站或 App,首页永远是最近发生的事情。互联网引导我们关注过去24小时内发生的事情,将时效性置于重要性和深度之上,使我们远离了很多深刻的想法。结果,我们陷入了一个永无止境的现在时。——David Perell

3、域名正在消亡,很少有人手动在地址栏输入域名,大部分用户都只通过搜索引擎访问。就算那些需要输入域名的场合,也正在慢慢被二维码取代。——Hacker News

4、不要强迫自己做任何内心讨厌的事情。因为一旦你习惯了做这些事情,就很难下决心退出了。——《模仿他人是人生陷阱》

5、一件事情的直接后果,称为一阶结果;直接后果引发的其他后果,称为二阶结果。如果一个人可以预见到直接结果,他就具有一阶思维。真正的聪明人拥有二阶思维,甚至三阶思维。——《二阶思维》

6、汽车正变成一部带轮子的智能手机。——《福特电动卡车 F-150 评测》

7、你的每一个行动,都是对你想成为怎样的人的投票。——詹姆斯•克利尔(James Clear),美国习惯研究专家

8、人与人有冲突,就会去法院。国与国有冲突,最终是看谁的力量大。——Ray Dalio,世界最大对冲基金桥水投资创始人

9、一个人很难擅长整个技术堆栈。我建议初学者专注于堆栈的一个部分:前端,或后端,或底层架构。随着你不断深入自己的领域,你将获得涉足所有领域的信心。—— Hacker News

10、USB2.0、USB3.0、USB4.0 这种混乱的命名应该改掉,改成 USB 0.5Gbps、USB 5Gbps、USB 80Gbps。——Hacker News

11、提高房价的最简单方法,就是将穷人赶出社区,并且人为限制住房供应。这就是为什么美国的富裕社区非常排斥在社区新建公共设施。——Noah Smith

12、我认识的那些不知道自己热衷什么的人,都努力得不够,他们只是坐在那里,等待事业的灵感来袭。他们不应该等待,应该去创造,然后就会知道自己的激情在哪里。——David Perell

13、我做了几十年编程工作,职业生涯都被敏捷开发破坏了。没错,你始终是机器的一个齿轮,但敏捷开发让你每时每刻都感觉到这一点。—— Hacker News

14、软件工程师和项目主管每周都必须发布代码,否则就要走人。项目分析、开发文档、帮助队友……这些都是工作的基础部分,但不能替代编写代码。——马斯克发给推特员工的邮件

15、20年后,你后悔的是那些没做过的事情。所以解开缆绳吧,从避风港启航,让信风推着你的帆。探索,梦想,发现。——Minecraft游戏的结束语

16、我原以为,进入太空会感到欢欣鼓舞。但是实际上,看到的宇宙是一片寒冷、黑暗的空虚。我们唯一的家园地球显得那么渺小,而我正在远离它。我感到了强烈的悲伤。——威廉·沙特纳 谈2021年乘坐"蓝色起源"观光飞船进入太空的感受

Copyright © yoyo all right reserved,powered by Gitbook该文件修订时间: 2023-04-03 21:57:18

results matching ""

    No results matching ""