---
title: "英语学习工具做到一半，我决定用现成的"
author: "Shawn Jiang"
lang: zh
date: 2026-09-25
canonical: https://tplog.dev/zh/essay/stopping-halfway-through-an-english-learning-tool/
translations:
  en: https://tplog.dev/en/essay/stopping-halfway-through-an-english-learning-tool/
  ja: https://tplog.dev/ja/essay/stopping-halfway-through-an-english-learning-tool/
---

# 英语学习工具做到一半，我决定用现成的

一开始，我只是想学英语。

看 YouTube 视频时，遇到听不清的句子，我想退回去再听几遍。如果能对着字幕，用键盘跳到上一句、下一句，不用一直拿鼠标拖进度条，应该会方便很多。

于是，我给自己做了一个工具：导入视频，在下面显示字幕，再加上暂停、逐句跳转的快捷键。需求很具体，也确实是我想用的东西。把脑子里的想法做成一个能操作的界面，那种满足感很直接。我觉得自己做得挺棒。

做的过程中，一些想法也变了。最初，页面上有一组预先挑好的“金句跟读”卡片，点一下就能播放对应的句子，句尾自动暂停。后来我觉得，哪句话值得练，应该由我在听的时候自己判断。既然已经能用键盘逐句跳转，就没必要再维护一组专门的精选卡片。我把这个功能删掉了。

这样的取舍，光在脑子里想时未必能想清楚。等东西出现在面前，可以操作了，我才更容易判断自己需要什么。

但另一些问题，比预想中麻烦得多：怎么稳定拿到 YouTube 字幕，怎么让服务器导入视频时不被当成机器人。

构想这个项目时，我默认视频和字幕已经在那里，拿过来就好了。我把注意力放在拿到之后——怎么展示、怎么跳句、怎么让反复听更方便。直到真的接上 YouTube，那个被我一笔带过的“导入”，才展开成了一个需要单独解决的问题。字幕拿不到，后面的交互再顺手也没机会发挥。

工具构建到一半时，我发现了 [PlayLingo](https://playlingo.app)。双语字幕、逐句跳转、重播当前句，这些我正在做的功能，它已经有了，还支持跟读和保存句子复习。它很好地满足了我的需求。

那就没必要继续造一遍了。

我的目标是学英语，自己做工具只是当时选的一种办法。既然已经有合适的产品，我可以直接用，不必先把字幕获取和服务器限制都解决，才允许自己开始学习。

停下来之后，我仍然觉得这段构建过程很好。我做出了自己想要的交互，也亲手删掉了看起来不错、实际却不需要的功能。我还发现，一个简单的“导入视频”，背后有多少原先没考虑过的依赖。这些认识，都来自具体动手的过程。

有了现成的工具，足以让我放弃继续开发；已经做过的这一段，也确实让我学到了东西。我不需要为了证明它有价值，再把整个项目做完。

最后，英语可以用 PlayLingo 继续学。这次构建的经历，也让我有了这篇文章可写。
