标签归档:工具

阻止 GitHub Desktop 自动更新

我的 Mac 笔记本比较老,服役已经超过了 10 年,越来越多的软件在更新后就不再支持 Big Sur 了,碰到了好几例更新后不能用的情况,有的可以设置不要自动更新,有的则无法设置,GitHub Desktop 便是其中无法设置自动更新的。

GitHub 桌面版 GitHub Desktop 使用的是 Electron 框架开发,它的自动更新机制 Squirrel 非常「顽固」,软件设置中没有提供关闭自动更新的选项。

如果当前使用的操作系统不再被新版本的 GitHub 支持,更新后就无法使用,然后就得去寻找最后一个支持的版本,重新安装,这样反反复复比较麻烦,能阻止它自动更新就不用这样反反复复了。

在 Windows 系统中,GitHub Desktop 是使用 Update.exe 「如下图」这个文件来完成更新的,把这个文件删除或者随便找一个文件改成 Update.exe 这个文件名替换掉它,这样更新就找不到这个更新程序了。

mac 中最简单的就是将 GitHub Desktop 这个应用程序锁定,这样就不会覆盖这个应用程序了。在访达中打开「应用程序」文件夹,找到 GitHub Desktop,右键点击它,在弹出菜单中选择「显示简介」,在弹出的窗口中,勾选「已锁定」即可。

Windows 系统中好像也可以通过设定为「只读+关闭执行和写入权限」来解决。

另外更新要连接更新服务器检查,可以在 Hosts 文件中修改来阻止其连接更新服务器,操作 Hosts 文件需要系统管理员身份,Windows 的 Hosts 文件在 C:\Windows\System32\drivers\etc\hosts , macOS 的 Hosts 文件在 /etc/hosts

在文件的末尾添加下面这一行:

127.0.0.1 central.github.com

这样设置后,Github Desktop 认为当前没有网络连接或没有新版本。

最后在本地的硬盘上保留一份最后支持的版本,这样有问题就不用上网再去寻找了。

整理完这份文档后,发现 Visual Studio Code 也是出现了同样的问题,这主要都集中在我的 Mac 上,太老了,好在 Visual Studio Code 在设置中有关闭自动更新的选项,终归还是电脑太老了,虽然我看了网络上有跳过 Apple 限制升级到新系统的方法,还是先不要冲动。

比较崩溃的是 Notion 没有留存老版本,结果更新后直接不能用了,我寻找了半天,最后只寻得 2.1.2 版本,我决定直接在浏览器上先凑合用一下,平常由于慢和手机上操作不太方便,现在在 Notion 上记录的内容也少了很多,就记录一下我读书的记录,实在不行先在 Windows 本上用用。


最后,我还是把经常用的软件都加了个锁,看看今年苹果新发布的本,也是时候换一个新的开始投入战斗了。

PT 体验小记

什么是 PT ?PT 是 Private Tracker 的首字母缩写,它是一种基于 BitTorrent 的 P2P 下载的一种方式,它与 BT 最大的不同是它是在私密范围内进行下载,并且记录每一个用户的详细信息。

由于它具有私密性,所以一般提供 PT 服务的平台或者社区(在下文中统称为 PT 站)是非公开的,可以把这个平台理解成一个私密的种子市场。在这个市场中,想成为它的用户,通常情况下有两种方式,一种是获得邀请,另一种是通过捐献,当然 PT 站偶尔也会在特定的时间段做做活动,搞个开放注册。成为用户后,会得到一个 passkey ,PT 站使用 passkey 来辨识每个用户,用户从某 PT 站下载种子后,这个种子带有用户的 passkey ,同时也通过 passkey 来计算用户的账户流量。

PT 站通过 passkey 统计用户的上传及下载,大多数 PT 站会以上下载比例(分享率)规定用户需上传多少后才可下载多少,有些站甚至会以用户上传及下载的内容等做积分值,分享率过低者会被系统取消使用 PT 的资格。由于需有足够的分享率方可下载,因此有些使用者会租用网路上有大频宽的种子盒子以提高自己的上传率。

通俗来讲,PT 站可以理解为是一个提供 BT 下载中「人人为我,我为人人」的这么一个地方。

搭建 PT 站有现成的产品,比较常用的 PT 站的服务器端系统有 Gazelle、NexusPHP 等,要做 PT 站需要首先在服务器上架设好服务器端系统,然后设置自己的规则体系,接下来就是运营这个私密的社区,种子的丰富和高质量是吸引人来参与的基础。用户下载种子内容的客户端工具同样也不少,比如 qBittorrent,Transmission 等。

在如今各种资源满天飞的互联网上, PT 站一方面是私密的,另一方面又有严格的规则,在使用中会统计考察一系列指标,为什么还有相当一部分人在玩这个,它有什么优势呢?

在我简单的体验之下,其优势大概可以归结为三个方面:

  • 下载速度快
  • 资源更新快
  • 资源质量高「蓝光高清片源的首选之地」

正是由于其私密性的门槛和设计的规则,使得大家在一边下载资源的同时,一边贡献上传量,真正体现了 P2P 这个对等网络的最大效用,在这里人人为我,我为人人。在 PT 站下载资源,每个人既想很快地完成资源的下载,又想让自己多上传一些(让更多人从自己这里多下载),在自己下载完后为了便于别人从自己这里依旧能下载,会一直保留着做种。这样就会使得在下载的时候速度很快,速度的瓶颈主要取决于自己的网络。

这跟传统的 BT 下载不太一样,传统的 BT 下载大部分人会在下载的时候设置下载的速度最大,上传的速度给一个很小的值,甚至有人会直接设置上传速度为 0 ,下载完后通常会第一时间关闭退出,也不做种。所以我们在使用 BT 下载的时候,很多时候速度并不是很快,而且总是下载着下载着就没有种子了,于是就停留在 99.9% 这样的状况。

另一个优点是其资源更新是很快的,尤其是越大的站,其资源更新的越快,资源更新快意味着能够早先一步获取资源。

第三个优势是资源的质量高,是蓝光高清片源的首选之地,这个就不多说了。

在优点的另一面是它也有其不方便的地方。首先每个 PT 站规则的学习有一定的成本「各站规则多少有些不同」,这些规则首先要弄清楚,要不说不定玩两天账号就被禁了。其次,它有一定的进入门槛「土豪捐赠进入不在此列」,你要等待其开放期间才能注册获得账号,或者就是通过其他人获得邀请码这样的方式进入。再次,如果更好的玩 PT 站,可能需要搭建一套系统,这需要额外一笔费用支出。

一个新手应该从小站点开始先玩玩看,那么怎么玩呢?

首先要有 PT 站的账号,获得账号的途径有三个:别人发的邀请码(俗称求药);自费捐赠加入(捐一个月or 捐永久vip);PT 站点开放注册时,自己注册加入。

一般被邀请入站和自己注册入站的用户,会有新手考核。考核按照规定的要求完成即可,每个站点的新手考核可能略有不同,但大概会有三个维度的考核:上传、下载、经验值,需要在规定的时间内完成这些指标。

下载这个是第一容易完成的,挑几个对应大小的的种子,注意要找有下载统计的也就是非 Free 的种子,完成下载即可。经验值可以通过多挂几个小种子,下载完成以后持续保留做种子,再辅以站内针对经验值的活动,完成活动即可,这个是第二容易完成考核的。比较麻烦的是上传,这个要找不统计下载量的 Free 种子,这样让下载量不被计算在内,下载完后继续做种,别人从你分享的这里获得数据,你的上传量就有了,这里应该选择热门、不太大的 Free 种子,然后一直挂着就行。

具体还要看各站的具体要求,然后读一下具体的规则,一般都能完成考核的各项指标。要注意的是一定要不要做规则中不被允许的事,否则轻则账号不保,如果你是通过邀请码获得的账号,可能还会连累上家。

我自己是从 HD Time 开始玩的,刚好在其开放注册的时候注册了一个账号,我没有搭建系统来玩,用的是自己的电脑。

注册完毕后,会提示新人考核任务,如下图所示,其中有考核时间,这里是一个月的时间,在这段时间内,有 4 个考核指标,分别是上传增量、平均做种时间、下载增量和魔力增量。

新手任务中除了魔力增量之外,其他的指标完成在上面都讲了,只要每天在开机的时候挂着 PT 客户端就基本能够在给定的时间内完成任务,这里我使用的客户端是 qBittorrent 。魔力值通过做种和日常的签到也可以轻松达到指标,如下图就是每日签到给的魔力值。

在 PT 站中有一个个人信息的展示区域,如下图所示,这里显示个人的一些相关数据,需要特别注意的是图中 可连接:否 ,这其实是不太正常的,会大大减小你这个节点被发现的概率,会很大程度上影响上传量,正常情况这里应该显示为才对,这需要两个条件:其一是你需要在外网有一个固定的 IP 地址。第二对自己的路由做端口映射。我查了一下我的 IP 地址并不是固定的,要向宽带运营商提出申请才行,至于端口映射相对比较容易,登录路由器在找到端口映射部分的设置,映射到你用作 PT 的机器的 IP 地址即可。我主要是小玩试试 PT,所以也就没有申请进一步操作。

本来想做个一些 PT 站点的列表,后来想了想还是不具体给出了,如果需要可自行搜索或私信我获得,由于 PT 站的私密性,所以仅仅获得地址用处不大,可以搜索一些介绍 PT 的相关社区,他们会有一些邀请码什么的,具体都有哪些社区,这里也不推荐了,很容易就能搜到。

在我看来喜欢玩 PT 的只要有一个大站的账号就足够了,但也不妨有很多专业玩家会有很多个 PT 站的账号,随着这种情况的出现,自然辅助的衍生产品也就出现了,这里主要说两个,一个是面对 PT 站本身的,另外一个是针对这些 PT 下载的内容管理的。

PT 助手 Plus 是一个浏览器插件,支持 Chrome、Firefox 和 Edge ,是一个能够提升 PT 站点使用效率的工具。正如其名,它是一个助手,能够辅助管理多个 PT 站点的账号以及搜索并显示这些 PT 站点的资源。这个工具是开源的,可以在 GitHub 上获得它,包括如何使用。在目前我查看的时候,这个工具针对 Chrome 和 Firefox 的版本已经下架。

另一类的衍生产品就是针对用 PT 下载下来的内容进行管理的产品,比如如果你对影视感兴趣,可能针对内容建立一套家庭影视系统。如果你对音乐感兴趣,可以打造一个音乐中心。也就是你可以建立自己的媒体库,这方面也有不少的系统可供选择和使用,比如搜索 Emby 能找到媒体管理的方案。

单的一圈尝试下来,真要玩好这个也是需要不少银子的,你得经常在线,我看了一圈这个比较适合搭建有群晖或类似群晖系统的用户,或者有常在线服务器的用户,普通用户玩玩即可,毕竟在现在除了 PT 之外有不少网盘资源在各种渠道流转,这已经满足大部分人的日常所需。

最后来一点畅想,PT 统计流量的上传和下载,这中间各个分布于各点的设备是参与了劳动的,那么这些劳动是否能够结合一下区块链?可能更小类别垂直的 PT 站,结合私有 Web 内容管理平台给家庭提供服务(比如家庭教育)的产品也是一个可以探索的点。唯一不好的就是这些内容可能并不怎么合规。


本文首发于我的微信公众账号「时间易逝」,欢迎订阅我的微信公众账号
在微信中搜索「doevents」或用微信扫描页面右上方二维码可订阅我的微信公众账号

npm 学习笔记

npm[1] 是 JavaScript 包管理工具,它类似 Java 中的 Maven , Gradle , Python 中的 pip 。

npm 随着 Node.js 一起发布,在安装 Node.js 的时候,npm 也会随着 Node.js 的安装一起安装到电脑上。 npm 作为一个包管理工具,其自身更新比较频繁,它的最新版本也可以独立进行更新。

# 在终端执行下面的命令即可更新到 npm 的最新版本
npm install npm@latest -g

npm 安装一个包都命令是 npm install package_name , 执行此命令后,会在当前目录安装 package_name 包,并创建一个 node_modules 的目录,下载要安装的包到这个目录中。

npm 是通过 package.json 这个文件管理包到,通过这个文件对包的信息进行定义,以便在团队协作的时候对包的使用上统一一致。使用 npm install 命令安装的是包的最新版本,我们日常在进行的项目实际上不一定总是使用最新的版本,这时候同样可以通过对 package.json 文件进行配置获取指定版本的包。

一个 package.json 至少要包括包名和版本信息。

{
    "name" : "package_name",
    "version" : "1.0.0"
}

如何创建一个 package.json 文件呢? 答案是使用 npm init 命令,然后逐一回答问题即可完成创建。如果不想回答问题,可以使用 npm init –yes 命令创建默认的 package.json ,然后再修改之。

{
    "name" : "npm",
    "version" : "1.0.0",
    "description" : "",
    "main" : "index.js",
    "scripts" : {
        "test" : "echo \\"Error: no test specified\\" && exit 1"
    },
    "keywords" : [],
    "author" : "",
    "license" : "ISC"
}

以上就是默认创建的文件。要安装包,就要有下载的地址,同样也可以在 package.json 中用字段 repository 指定。

{
    "type" : "git",
    "url" : "https://github.com/example/package_name.git"
}

还有一些其他的字段可供设置,比如主页地址,作者邮件等等。一个包的 name 命名有一定的规范,包名需要使用小写字母,不允许有空格,可以使用下划线和横线。对于常用不太变化的字段值,可进行初始化设置,这样就不用每次都输入这些信息了。

# 初始化设定作者 email
npm set init.author.email "author@example.com"
# 初始化设定作者姓名
npm set init.author.name "Eric"
# 初始化设定许可协议
npm set init.license "MIT"

在使用 npm install 命令安装包的时候,会读取 package.json 文件来安装模块。模块在有时候有两种类型,一种是面向生产环境的,另一种是面向开发环境的,这时候可通过在命令后面添加 --save--save-dev 参数指定安装。

如果要更新包,使用 npm update 命令,卸载包用 npm uninstall package_name ,如果卸载的同时想要一并删除 package.json 文件,添加参数 --save

# 卸载 package_name 包,并删除 package.json 文件
npm uninstall --save package_name

上面说了,在默认情况下,包安装命令会将包安装在当前目录下,这只能在当前目录下使用。如果要使用一些全局的包,在安装的时候可以添加 -g 参数来安装,同理更新也是如此,卸载一个全局包也是如此。

# 安装 package_name 包为全局包
npm install -g package_name
# 更新全局包
npm update -g
# 卸载全局包
npm uninstall -g package_name

如果想知道当前都有哪些包需要更新,可以使用下面的命令查看。

# 查看哪些全局包需要更新
npm outdated -g --depth=0

包(package)是一个被 package.json 文件描述的文件或目录。模块(modules)是可以被 Node.js 引用的文件或目录。一个 Node.js 模块就是一个可以发布到 npm ,供其他开发者使用的模块。

如何创建一个 Node.js 模块呢?

  • 创建一个 package.json 文件,将模块信息添加到文件中;
  • 创建一个模块被引入就加载的文件,即 main 字段中指定的文件,默认为 index.js ,在此文件中将一个函数值赋给 exports 模块。
exports.printMsg = function() {
    console.log("This is a message from the first package.")
}

npm 的配置文件是 npmrc,项目级别的在项目所在目录下 .npmrc , 用户级别的在 ~/.npmrc , 全局的在 /etc/npmrc , 内置的配置文件在 npm 安装目录下。配置信息的优先级别为命令行参数级别最高,其次是环境变量 PATH ,再次是这些配置文件,要查看 npm 的配置信息,执行如下命令即可。

npm config list -l

默认下载包的源来自 npm 官网,如果感觉下载速度不理想,我们可以配置一些国内的镜像站点来加快下载速度。

我们可以在安装包的时候指定镜像源,也可以写到配置文件中。

# 在安装的时候指定「淘宝镜像」
npm install express --registr=https://registry.npmmirror.com
# 写到配置文件中
npm config set registry <https://registry.npmmirror.com>

# 查看配置是否成功
npm config get registry # npm info express 也可以

对于 npm 的学习暂时先告一段落,可能很长一段时间只是处于使用 npm 的阶段,了解以上的内容基本上应该可以开始使用了,使用中遇到问题随时查阅帮助解决即可。我看还涉及到发布自己的包等内容,这就是 long long after 以后的事情了。


本文中引用的资源
1:npm 的官方网站是:https://www.npmjs.com/

阅读时眼睛疲劳怎么办,或许可以让设备朗读给我们听

随着年龄的增长,眼睛在阅读东西的时候可能就有些费劲,这时候对于电子屏幕上要读的文字可能就有通过听来获取的需要。前阵子一个朋友向我询问,问这种情况有没有好的解决方法,在大概聊了一下他的使用场景之后,我给他提供了一个解决办法,基本上解决了他的日常使用。

后来我又想了想,这就是在某种场景下,有将文字转成语音作为输入的需求。也就是将信息获取的方式由视觉系统转变为听觉系统,除了视障者之外,视觉正常的人在日常很多场景下也是有这个需求的,比如在通勤的路上、在开车的途中、在家务劳作的时候等等。

对于这方面的需求,目前一方面有专门做音频内容的产品,另一方面是很早就有的将文字转换成语音进行朗读的产品,它基于文字转语音(Text-To-Speech)这个系统,属于语音合成这个范畴,我最早接触的是微软开发的,如果没记错的话在 Windows 95 系统上就有,记忆中当时听来那是相当的生硬,早期的开发中在语音播报的场景中有一些应用。

专门基于音频内容的产品其音频内容是固定的,取决于音频内容本身和你的选择,如收音机、播客或使用 U 盘拷贝的音频内容,而这些音频内容一般由真人操作,实时或提前制作好供使用者选择。而文字转语音就比较个性化了,取决于你想让它读什么文字材料,然后针对这个文字材料进行实时的语音合成,通过声音设备输出,这就像直播中的主持人,只不过真人换成了机器设备。

早些年听机器朗读特别的生硬,基本上丝毫感受不到感情,近几年倒是没有尝试,趁着这次朋友的询问机会,最近断断续续的在各个地方再次做了一番尝试,针对它们提供的服务及其效果,在此做个记录。

我尝试的设备主要有手机和电脑,这也是目前大部分人日常使用的设备。手机两部,分别是 iPhone 和华为荣耀,两台笔记本电脑,分别是 Macbook Pro 和 Windows 笔记本,这也是我自己日常使用的设备。

1. 手机

1.1 利用手机自带功能
iPhone

在 iPhone 中,如要进行语音阅读屏幕文字,可通过 设置 – 辅助功能 – 朗读内容 进行设置,有两个选择,操作如图简洁明了,如下图所示。

当打开朗读所选项和朗读屏幕这两项功能后,如下图所示,即可按照其下方的提示操作进行内容的朗读,比如在选择文本时,会出现「朗读」按钮,双指从屏幕顶部向下轻扫就开始屏幕内容朗读了,我分别进行了尝试,比以前好很多,可能还有不小的提升空间,但听起来已经可以接受了。打开这两项功能后,进一步会出现「语音控制器」和「高亮显示内容」两个选项,打开前者会在屏幕上浮动一个小按钮,可在任何想要朗读的地方使用这个按钮来操作。高亮显示内容打开后则在朗读的时候以高亮的方式告诉你当前读到哪里了。

整体来讲 iPhone 上的朗读操作起来还是比较容易的。特别提一句,在声音中可以选择不同的语言和当下语言中的声音,在这里我选择的是中文下的「Siri 声音 2(中国大陆)」,可供选择的声音还有「婷婷、语舒和 Siri 声音1」。屏幕中间的工具条是「语音控制器」浮动按钮展开后的内容,可进行翻页和调整朗读语速。

总体来说,利用 iPhone 手机系统提供的功能,还是能够很容易地操作,并朗读屏幕上的内容,听起来也还算可以,如果你有这方面的需要,可以试着把玩一番。

Android 系列

这个就比较遗憾了,我在我的手机中找到了系统提供的功能,但我在我的手机上并没有试出来我所期待的功能,我通过「设置」->「智能辅助」->「无障碍」->「随选朗读」进行设置,但是我设置完后始终就是不能让它能够朗读起来,遂作罢。

虽然没能体验成功,我还是浏览了一番它使用的引擎,用的是讯飞语音引擎,坊间一直有说讯飞家的语音出类拔萃,可惜未能在此体验一番。

1.2 利用手机上的 App

系统提供的是全局的功能,但在我们平常使用的时候更多的是基于一些少量的场景,对于将文字转换成语音输出的这个需求,更多的是对应一个想要朗读的文档,比如 Word、PDF 文档,或者是电子书,这时候可以通过日常使用的 App 来解决这个问题,这里我推荐微信读书这个 App,微信读书支持导入文档,支持 txt,pdf,epub,doc,docx,mobi,azw3 等格式,将这些文档导入微信读书后,在阅读的时候,手指单点屏幕中央,在弹出的功能按钮中,选择听按钮就可以开启朗读功能。

这比较适合要朗读的文档篇幅比较长,因为在导入文档到手机中时大概率要在电脑上完成,这需要额外花费一些时间,但完成后使用就比较简单了。

在手机上还有其他的 App 也提供这个功能,比如在微信中,可以通过设置「关怀模式」,然后开启「听文字消息」功能,也可以听消息。

在系统提供的屏幕朗读和微信读书的结合下,我想基本上就可以解决将文字朗读出来的需要了,当然如果有更好的 App ,如果恰巧看到这篇记录,也请留言告诉我。

2. 电脑

电脑的操作系统同样也提供朗读的系统功能,比如在 MacBook Pro 中,可以通过「系统偏好设置」->「辅助功能」->「朗读内容」 来设置。而在 Windows 系统的电脑中,比如 Windows 10 提供系统自带有屏幕朗读功能,可通过 「Windows 设置 – 轻松使用 – 讲述人」 打开讲述人即可。

对于电脑这个强大的生产力工具来说,系统提供的功能我们可能用不到就解决了我们的问题,比如我们常用的浏览器(Chrome、Safari、Edge)基本上能打开大部分格式的文本文件,而这些浏览器本身或借助系统提供朗读的功能,就能完成我们需要的朗读功能。所以在电脑上大部分的将文档朗读出来都可以采用用浏览器打开文档,然后朗读即可。

这里面最为推荐的就是 Microsoft Edge 这个浏览器,右键鼠标单击,在弹出的菜单中选择「大声朗读」,就可以听到当前打开文档的文字朗读了,这个是我听的效果最好的(如下图中我打开了鲁迅先生的《呐喊》这个 txt 文件进行大声朗读,效果不错)。在 Mac 中我用浏览器(不论是其自带的 Safari 还是 Chrome)体验的效果都不理想,在这里的体验应该是借助了系统的功能,在 Chrome 中可以通过安装朗读服务插件来提高体验,这部分我没有尝试。

另外一些专用的软件本身也提供朗读功能,比如通常用的 Word 里面就有朗读功能。

一圈体验下来,除了 Android 手机上这个用讯飞语音引擎的我没体验到之外,体验最佳的就是用 Edge 进行的朗读,这也印证了我从旁听来的评价「微软的引擎好」,我觉得也理所应当,毕竟对于一个在 20 多年前就推出了这方面产品的企业,这么多年下来的积累与沉淀,理应提供不错的体验。

对于现有的工具或产品来说,如果要在手机上想把文字朗读出来,目前我比较推荐的是将文档导入到微信读书中,然后用微信读书中的听功能来听。如果是在 Windows 电脑上,我比较推荐直接使用 Edge 浏览器打开文档,使用其提供的大声朗读功能来听。

还有没有其他的方式呢,答案是有的,如果懂得编程,动手能力又强,可以使用微软提供的文字转语音应用程序编程接口(TTS API)[1] 用程序来实现自己的需求。不过对于大部分人来说,以上提供的方法已经足够自己使用,虽然跟真人还有些差距,但在眼睛疲劳又想听一听文档时,不妨一试。


[1]: https://azure.microsoft.com/en-us/services/cognitive-services/text-to-speech/#overview


本文首发于我的微信公众账号「时间易逝」,欢迎订阅我的微信公众账号
在微信中搜索「doevents」或用微信扫描页面右上方二维码可订阅我的微信公众账号

Trello 从使用到放弃

我比较喜欢尝试通过各种途径发现的各种软件工具,这也算是计算机软件使用这个范畴中「差生文具多」的一种表现,Trello 就是其中一个软件工具。我在维基百科上查了一下,Trello 初始版本在 2011 年 9 月 13 日发布,在 2014 年 7 月将 Trello 独立为单独的公司,2017 年 1 月被 Atlassian 收购。

从现在的记忆中回顾,最初我对它的了解是它是一款看板软件,是由比较有名的「Joel Spolsky」创建的,就是写了《软件随想录》 这本书的那个被称为「程序员部落酋长 Joel 」的那位,当然他也写博客,而且开设博客的时间还相当的早,他还是在程序员中被广为使用的 Stack Overflow 这个问答 「拷贝粘贴代码库」 社区的创建者之一,更多的关于他的信息可以去他的网站 Joel On Software 上寻找。

我很早就注册了 Trello 这个工具的账号,应该在 2015 年或更早些时候,但真的开始用的时候就比较晚了,大概在 2020 年初的时候,我准备尝试用一下,一边摸索一边将数据迁移到 Trello 中,一直用到 2021 年 10 月份,就放弃了,现在来看,放弃主要有如下的几个原因。

  • 在其自身账号跟 Atlassian 整合后使用它越来越慢了,常常在正常情况下打不开;
  • 几个移动设备上的 App 在升级后就不太能好好用了;
  • 整合账号后在需要重新验证身份的时候需要输入两次密码;
  • 有新的在尝试的工具,比如 Notion.

截张图,做个纪念,并简单记录一下自己的日常使用。

尽管对它的最初认识是一款看板软件,但我在尝试的过程中却打算用它把自己的内容也管理起来,然后针对一部分内容建立行动过程,也即看板,再然后还可以试试协作。

当时为什么想要试试 Trello ,现在实在是想不起来,很大可能是当时看到了某些有关它的信息,然后想着自己也有账号,接下来由于喜欢尝试的毛病发作,就试起来了,官方和使用者多把这个软件产品定位为项目协作与目标管理工具,我用它主要想试试看能否将内容管理起来,在此基础上对于手头上要做的项目进行一些任务分解与跟踪。

我是通过具体的看板进行分类,有了类别之后,在此基础上进行按类别的管理,这种想法根植于从小到大的经验与不断的练习,在日常中我们总是用类别来归纳一些事,以便简化我们应对和认知事物。

而对应到 Trello 中,不同的看板可以看作不同的类别,而看板中的卡片可以看作不同内容的承载容器,可以进一步在卡片上记录对应的内容,在看板和卡片之间可以建立列表进行进一步的分类,以「阅读」看板为例,如下图。

这里在「阅读」看板中建立了 4 个列表,分别是书库、待读、阅读中以及读完,而列表下的每张卡片则代表了每本书以及每本书在不同状态下的不同内容。

在书库这个列表中,每张卡片代表一本书,我在每张卡片中记录了书的一些概要信息,并使用标签来标注书的介质和来源,比如电子书的微信读书,Kindle , PDF , iBook 以及纸质书。然后将计划阅读的放到待读这个列表中,在阅读中列表中放入当前正在读的书,并伴随阅读记录阅读笔记,最后读完一本书整理到读完列表中。

其实 Trello 提供的看板及其卡片还是蛮不错的,卡片的内容支持 MarkDown 以及待办清单,可以通过建立不同的标签进行标注,进一步的分类与组织内容。在卡片的每次操作,都会以讨论的方式进行记录,这样也就留下了针对这张卡片的历史操作记录,当然作为一个协作工具,还可以邀请朋友来共建内容「将看板设置为公开的,并邀请朋友共同参与」,总体下来用的过程中还是比较简单的,而且使用也挺流畅。唯一美中不足的是每个卡片在不同的状态下基本上是基于状态隔离的,但实际上这些卡片中的内容存在一定的连接性,这就需要进一步的整理加工,然后增加新的卡片或者归档到另外一个工具中,当然在 Trello 中也可以通过附件来做到卡片之间的链接,这算是在内容上一层级的链接,略微有些欠缺,不知道现在的版本是否有新的改变,从软件的出发点及整体架构上来说,这样的变更比较困难。

由于其协作性,在进行项目管理时,有关这些看板和卡片都可以通过 关注和 @某人 连接相关的参与者,以得以使得成员协作开展工作,我在这部分没有使用多人模式,仅仅是把我自己独立完成的项目管理了起来,包括任务分解、描述以及人员的指派等都是我自己,由于没有多人的实际尝试,这部分就不多说了,但这部分内容是团队使用 Trello 的精髓所在,毕竟它是一款团队协作工具。特别要注意的是如果团队本来在使用看板,比如在很显眼的地方放一大块白板,上面贴满一个项目各个成员的任务进度,那么可以试试这个工具,而如果你的团队没有使用过这种管理方式,那么这个工具实际上并不一定就能让你的团队适应看板这种项目管理方式,当然可以尝试。

以上大概就是我使用 Trello 的一些回顾,有两个计划,其一是打算丰富一下书库的内容,然后邀请朋友共同探索一下内容的共建与协作;其二是在我自己做的项目中,准备把甲方相关人员拉进来,试试项目过程中的协作,包括项目的整体进度、需求讨论、原型及反馈等,但随着使用越来越慢而且几番更新后手机上经常无法使用,这个想法也就不了了之了,最终就彻底放弃。

最后说说对 Trello 的理解。

基本上 Trello 可以整理生活与工作中的任何资料,可以把它看作是一大块白板,使用它的人可以在这块白板上建立无数个列表,要整理什么资料或者要开展某项工作,都可以在这块白板上创建,当然可以对这块白板进行升级,比如变成好多块白板。在这些白板上使用者可以自由书画,拖拽排序,列表可以按照阶段建立,可以按照流程建立,也可以按照使用者的分类建立,当然自由建立也是完全可以的。

承载内容的是列表中的一个个卡片,卡片同样可以是一个任务,一本书,一份资料,一个想法,一个问题与讨论或一个投票等等,这些卡片可以是动态的(比如按照阶段划分的任务随着任务完成的状态游走在列表中),也可以是静态的(它就是一份资料)。一眼望去是你自己熟悉的分类,展现种种的内容,一览无余。卡片为不同的内容提供多样性的属性,链接、文字图片、待办清单、附件、起始日期、标签、颜色等等,不但丰富卡片的内容,而且提供了进一步的管理。

整体操作比较简单,大量的拖拽操作就跟在板板上移动便利签一样,这大大减低了团队使用的门槛,支持多端多系统,即时同步,多人协作,在多人协作时,每个进入到能进入的看板时,能一眼就看出每个人都在做什么,做的怎么样,以及我该做什么。

搜索功能也还算可以,能够检索到你搜索的内容,Trello 还提供了一些类似于插件的功能,比如投票、日历等等。

整体上来看,Trello 对于本身就使用看板的团队开展工作还是不错的,而且免费的功能足以应付日常大部分的工作,当然其还提供付费的版本,比如对于附件大于 10M 的支持就需要付费。当然对于个人来说,如果把自己的日常生活的琐事用它管理起来也能让事情井然有序,如果感兴趣可以试试。不太理想的地方是随着它被收购越来越重了,而且越来越慢了,慢这个事情也不太好说,Notion 也存在慢的问题,这既跟网络相关,也跟内容存储主体与服务所在地有关,这部分不可言说。类似这样慢的或者访问不友好的产品或服务,要看它们提供的价值是否要大于解决网络访问的成本以及你的兴趣。

本文首发于我的微信公众账号「时间易逝」,欢迎订阅我的微信公众账号
在微信中搜索「doevents」或用微信扫描页面右上方二维码可订阅我的微信公众账号