灵光一闪

灵感: Agora RTC/RTM 调试工具

我最近在写一些 Agora 的 RTC/ RTM 应用的教程,在开发 Demo 过程中,发现调试 Agora 的应用比较复杂,其实可以有一些辅助工具来帮助开发者更好的开发这些应用。 核心诉求 可以更加简单的调试 Agora SDK 当中的 Event 形态 独立的 Vue Componet / React Component 基于浏览器的 DevTools 基本功能 支持触发事件(应该是一列 按钮,用户点击后,就会触发对应的事件) 支持发送信息(应该是一个文本框 +…

christopher gower m HRfLhgABo unsplash scaled 1

如何免费为你的组织项目配置 Vercel

前言 Vercel 是我自己非常喜欢的平台,我自己的一些项目都会选择使用 Vercel 来部署。比如 Logoly、EasyWPBook 等等。 主要是其在中国大陆的访问速度是比 Netlify 和 Github Pages 更快。但不得不说的是,Vercel 提供了 Production 环境和 Development 环境,对于项目开发时是非常有用的,当你提交一个 commit 或者是一个 PR 时, Vercel 会自动帮你部署,并将相应的 URL comment 到你的 commit 或 PR…

d2b5ca33bd970f64a6301fa75ae2eb22 1

《黑客与画家》重读书摘

…阮一峰 2 平装版译者序 黑客行为必须包含三个特点:好玩、高智商、探索精神。只有其行为同时满足这三个标准,才能被称为“黑客”。 《黑客:计算机革命的英雄》(Hackers: Heroes of the Computer Revolution) 在该书中,他进一步将黑客的价值观总结为六条“黑客伦理”(hacker ethic),直到今天这几条伦理都被视为这方面的最佳论述。 (1) 使用计算机以及所有有助于了解这个世界本质的事物都不应受到任何限制。任何事情都应该亲手尝试。 (Access to computers—and anything that might teach you something about the way the world works—should be…

WordPress 使用 Caddy 完成静态化缓存

…就会自动帮你去生成不同的页面了。 配置 Caddy 路由转发 首先,你应该在你的 php_fastcgi unix//run/php/php-fpm.sock 前面加入缓存的代码并重启 Caddy,具体如下 缓存配置如下 @cache { not header_regexp Cookie “comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_logged_in” not path_regexp “(/wp-admin/|/xmlrpc.php|/wp-(app|cron|login|register|mail).php|wp-.*.php|/feed/|index.php|wp-comments-popup.php|wp-links-opml.php|wp-locations.php|sitemap(index)?.xml|[a-z0-9-]+-sitemap([0-9]+)?.xml)” not method POST not expression {query} != ” } route @cache…

乐在其中,才会无限精彩:记 COSCUP 2019 台湾行

…Skywalking 如何从一个个人项目进入 Apache 基金会的项目孵化器、成为 Apache 顶级项目的历程。 马全一老师分享了他在阿里巴巴、腾讯、华为等多家企业从业看到的大陆的企业的开源的现状,因为他说他的议程不能拍照不能录像,所以这里没有图片。 李辉老师则以自己的个人经历,为大家介绍了一个普通程序员如果变成一个全栈工程师、如何成为一个项目的 Core Maintainer 等等的一些信息。 水歌则分享了其在 Web Components 中的实践,帮助大家了解了 Web Components 的前世今生,并介绍了他自己基于 Web Components 实现的框架, WebCell。 其他几位老师的议程,因为时间的缘故,没有能去参加。 除了听议程以外,第一天我还去参加了 LPI 在 COSCUP 举办的考试,毕竟作为 Linux 中国的一员我还真没有正经的参加过…

black and white penguin toy

如何通过 Github 找到一个人?

…改为你需要查询的人的名字,然后点击执行按钮。 右侧会出现你的执行结果,你会发现,其中出现我们想要的“邮箱”地址。 你会发现,这里其实有两种类型的邮箱,一种是我们常见的,自己用的各种免费邮箱,比如 @qq.com、@gmail.com、@foxmail.com 之类的;另一种是形如 27856297+dependabot-preview[bot]@users.noreply.github.com 这样的邮箱。 这两种邮箱的区别是,前者是我们自己通过 git 设置的邮箱,而后者则是我们通过 Github 网页、 API 操作产生的 commit 。你在查询的时候,要记得去找第一类邮箱来作为参考。 当然,不排除有开发者在看了本篇文章后,去用 private 邮箱修改自己本地的 Git ,那就没办法了。 找到这个邮箱以后怎么办呢? 直接发邮件联系 如果是 QQ 邮箱、 Foxmail ,可以试着直接用邮箱,或者邮箱里的 QQ 号加好友。…

风变科技面试总结 – 2020 年 6 月 15 日

…的区别是什么 我的回答: squash merge 的最大区别是可以将多个 commit 合并为一个commit ,我会在整个 pr 中的 commit 无意义的时候,使用 squash merge。 当 commit 有意义时,就使用 merge。 面后研究 这里还有一个问题,我没有回答上来,就是 cherry-pick 能干嘛? 这里可以看看阮一峰老师的博客:http://www.ruanyifeng.com/blog/2020/04/git-cherry-pick.html 13. Node.js 的流(Stream) 这部分我只说出了自己用过 fs 的流 面后研究…

black and silver laptop computer

macOS 重装记

…的 vendor 这里我会使用这样的命令来进行删除 下面这段代码执行时不会确认,因此,如果修改,请再三确认再执行,避免酿成大错。 find . -name “node_modules” -exec rm -rf ‘{}’ + Code language: JavaScript (javascript) 具体可以参考 https://www.ixiqin.com/2019/05/tool-command-delete-the-current-directory-node_modules-command/ 清理完成后,项目目录会从 21G 瘦身至 7.6 G。 备份重要文件 备份 SSH 信息 一个很重要的需要备份的文件,就是我的 SSH…

灵光一闪

如何将一个commit 变成一系列宣传资源

作为技术人,对于做 Branding 的事情其实不那么上心,也因为不上心,导致在实际做事情的时候,难免做的不好。 我因为从事过运营,所以有一些经验,这里,分享一下我自己的思路。 以这个 Commit 为例: 这个 Commit 制作了一件事,就是在 GitHub 项目的目录下创建了一个 funding.yml ,从而实现开启 GitHub 的 Sponsor 功能。 第一层思考 那如果我们要将其转换为宣传资源,我们可以这样思考: 内容形态:这个内容我能不能做成文字类型的,或者是能不能做成视频类型的? 如果可以做成文字类型的,那么可以针对这个 commit 写一篇文章,比如就叫做 如何开启 GitHub 的 Sponsors 功能 如果可以做成视频内容,就可以做成…

f30a202d97fcb737a80ade314ebdb8e0 1

自定义 Bootstrap 5 的风格,实现自定义风格页面开发

…引入我们刚刚创建好的 scss 文件,从而确保应用在启动的时候可以自动构建 Bootstrap ,并引入至项目中。 import ‘../styles/globals.css’ import ‘../styles/globals.scss’ // 这一行是新增的 function MyApp({ Component, pageProps }) { return <Component {…pageProps} /> } export default MyApp Code language: JavaScript (javascript) 4.