上一次在博客园发贴还是在上一次(2021年),那个时候博客园就遇到了危机(被罚款)。彼时在疫情期间,我个人生活也受到了影响,先后去了多个城市,最终在上海找到了 .NET Web开发的岗位,还是比较幸运的,因为这就是我感兴趣的。

TypingLearn解决了我在学习英语中的一大痛点

一些背景

我是一个开发者(俗称码农),在一系列的机缘巧合下,我开发了一个在线学习英语的网站,以此来提升自己的英语能力,在此分享给大家,希望跟大家共同进步。

英语是非常通用的技能,对于我个人来说,它至少有几个方面的作用:

  • 获取更多原始有效的信息
  • 提升在职业上的优势
  • 提供更多的机会(职业和人脉)

在我工作两三年后,我就把英语学习作为一个主要的目标之一,当然我对自己的规划一共有三个方面:身体/英语/职业技能

在将近十年的从业生涯中,我发现只有职业技能我得到了增强,身体几乎是越来越差,英语几乎是原地踏步。要说分个优先级的话,那一定是 身体>英语>职业技能。

我不再把提升职业技能当成目标,因为对于编程,我从小就开始接触,本身就是喜爱,有足够的内驱力去了解和学习新的知识。

开发的契机

现在,我把提升英语能力作为主要的实现目标。

我曾经尝试过很多种方式去进一步提升英语能力,包括使用各种APP,甚至是付费一对一的外教课程。最后我得出一个结论:

对于大部分人来说,学习英语最大的痛点不是使用什么工具,而是坚持。或者我们可以用以下公式来表示:

基数(学习时间) * 系数(学习效率)=成果

尽管不同的方式方法有差异,但这只是其中一个因素,也就是学习效率。如果不投入足够的时间来积累基数,那么一切都是徒劳的。

很多事情 ,本身并不难,但坚持很难。这同样适用于身体锻炼。所以在这样的需求和背景的驱动下,我经过很多观察和总结,动手实现了Typinglearn.cn 这个英语学习的网站(通过自定义词典也可以学习其他语言)。

我首先要解决的是坚持的问题,这是最大的痛点。我发现对于我个人来说,使用APP学习,或单纯的听音频、看视频 ,很快就失去了注意力和兴趣,难以坚持。但是通过键盘录入的方式,我可以在比较专注的状态,坚持超过1个小时去学习英语。

动手开发

作为一个有丰富开发经验的码农,有了实际的需求,又找不到现成可用的工具,为什么不自己开发呢?

大概经过三个月的时间,我开发出第一个可上线的版本,同时处理一些关于网站备案和支付认证相关的事宜。

我使用的开发技术是.NETAngular,目前也已经升级到最新的NET8Angular17。关于UI,是花钱找人设计的。

从需求到产品原型,然后制定开发规划,到实施前后端开发和上线,几乎都是我一个人完成的(还有一个做前端的小伙伴,但由于工作过于忙碌,很少参与)。

用户使用和反馈

现在网站已经上线和运行超过一个月了,我只是在很小范围内的目标用户进行试用,同时也在思考学习效率上的问题。这里分享几个案例:

  1. 目前我个人主要使用的网站功能是目标管理,我设定要学习的词典和日期,系统会生成每天学习和复习的单词,我照着这个进度来就可以了。同时我添加了类似于“记忆卡片”的方式,正面英文,反面翻译,我发现,在我学习新单词之前看一遍,以及在学习之后,再看上三遍,确实有不错的效果。
  2. 我遇到一个用户,他的需求是学习法语,为此我还专门为该用户对法语键盘(加拿大)进行了录入优化;通过自定义词典功能,用户可以自己构建学习内容。
  3. 还有一个用户把网站功能作为一个辅助记忆词汇的工具,他也是使用自定义词典功能,他的场景是对上百个单词进行默写背诵,并能够反复练习错误的词汇。跟该用户的互动和反馈,我优化了平板和移动设备相关的支持,以及很多其他体验上的细节。

后续计划

当我把网站定位成以英语学习为目标的时候,这就决定了走入深水区。但总的来说就是两个方面,一个是能够让用户坚持,或者说让坚持变得有趣,这是解决基数问题。另一个是不断的发掘和完善更有效的方式,这个是解决效率上的问题。

目前网站的主要功能是单词记忆,这还是处于基础阶段,还有听力阅读以及写作,之后我会通过跟行业内的人交流以及跟用户的反馈,再经过自身的实践,推出一些方式来加强这三部分的练习。

在其他方面,我还会加强用户之间的互动性,让大家能够共同学习,共同进步!

TypingLearn解决了我在学习英语中的一大痛点的更多相关文章

  1. Android学习开发中如何保持API的兼容

    Android学习开发中如何保持API的兼容: 1,采用良好的设计思路 在设计过程中,如果能按照下面的方式来进行设计,会让这个API生命更长久 面向用例的设计,收集用户建议,把自己模拟成用户,保证AP ...

  2. 学习Spring中遇到关于BeanFactory及测试类的问题

    最近在学习Spring,使用的是Spring 5.0.1 学习书本中使用的是4.0 学习书本中使用以下来加载配置文件及设置 Resource resource = new ClassPathResou ...

  3. Flink 从0到1学习 —— Flink 中如何管理配置?

    前言 如果你了解 Apache Flink 的话,那么你应该熟悉该如何像 Flink 发送数据或者如何从 Flink 获取数据.但是在某些情况下,我们需要将配置数据发送到 Flink 集群并从中接收一 ...

  4. Zookeeper学习笔记(中)

    Zookeeper学习笔记(中) Zookeeper的基本原理和基本实现 深入了解ZK的基本原理 ZK的一致性: ZAB 协议: Zookeeper 原子消息广播协议 ZK通过选举保证 leader ...

  5. 深入学习PHP中的JSON相关函数

    在我们当年刚刚上班的那个年代,还全是 XML 的天下,但现在 JSON 数据格式已经是各种应用传输的事实标准了.最近几年开始学习编程开发的同学可能都完全没有接触过使用 XML 来进行数据传输.当然,时 ...

  6. 学习PHP中的国际化日期格式化操作

    对于国际化功能来说,日期相关的格式化操作也是一块重头戏,毕竟不同的时区,不同的国家对于日期的表示方式都会有些不同.今天我们主要来学习的就是国际化地表示日期相关的信息内容. 日期格式化 首先就是最直接的 ...

  7. 学习PHP中Fileinfo扩展的使用

    今天来学习的这个扩展其实现在也已经是标配的一个扩展了,为什么呢?因为 Laravel 框架在安装的时候它就是必须的一个扩展,没有打开它的话,连 Laravel 框架都是无法使用的. Fileinfo ...

  8. 学习PHP中的国际化功能来查看货币及日期信息

    做为一门在世界范围内广泛使用的编程语言,国际化能力往往是衡量一个编程语言是否能够大范围流行的重要内容.特别是对于 PHP 这种以 Web 页面编程为主战场的语言来说,国际化能力更是重中之重.在 PHP ...

  9. 编写Java程序,模拟教练员和运动员出国比赛场景,其中运动员包括乒乓球运动员和篮球运动员。教练员包括乒乓球教练和篮球教练。为了方便出国交流,根乒乓球相关的人员都需要学习英语。

    需求说明: 模拟教练员和运动员出国比赛场景,其中运动员包括乒乓球运动员和篮球运动员.教练员包括乒乓球教练和篮球教练.为了方便出国交流,根乒乓球相关的人员都需要学习英语.具体分析如下: (1)共同的属性 ...

  10. 学习sql中的排列组合,在园子里搜着看于是。。。

    学习sql中的排列组合,在园子里搜着看,看到篇文章,于是自己(新手)用了最最原始的sql去写出来: --需求----B, C, F, M and S住在一座房子的不同楼层.--B 不住顶层.C 不住底 ...

随机推荐

  1. 实战:如何优雅的从 Skywalking 切换到 OpenTelemetry

    背景 最近公司将我们之前使用的链路工具切换为了 OpenTelemetry. 我们的技术栈是: OTLP Client──────────►Collect────────►StartRocks (Ag ...

  2. openGauss Sqlines 使用指导

    openGauss Sqlines 使用指导 Sqlines 简介 Sqlines 是一款开源软件,支持多种数据库之间的 SQL 语句语法的的转换,openGauss 将此工具修改适配,新增了 ope ...

  3. Centos 8.0 minimal命令行安装图形化界面(超详细)

    Centos 8.0 安装图形化界面(超详细) 开始之前呢,请先查看您的Centos版本和是否有root账户权限. 一.安装Centos 图形化界面并重启 下载安装图形化界面 执行命令 yum gro ...

  4. RestfulApi 学习笔记——内容协商(三)

    前言 什么是内容协商呢?是这样的,我们在请求的时候都有两个属性,一个是Content-Type,另一个是accept,这两个什么意思呢? content-type 这个是表示自己传输的是什么内容,就像 ...

  5. 关于<property name="hibernate.hbm2ddl.auto"></property>中的参数填写

    hibernate的数据库表自动生成参数 关于<property name="hibernate.hbm2ddl.auto"></property>中的参数 ...

  6. 力扣34(java)-在排序数组中查找元素的第一个和最后一个位置(中等)

    题目: 给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target.请你找出给定目标值在数组中的开始位置和结束位置. 如果数组中不存在目标值 target,返回 [-1, -1]. 你 ...

  7. word文档怎么让封面没有页码,页码从正文开始(word 2019)

    1.打开需要插入页码的文档,光标放在正文处的开头,然后点击word窗口中的 [布局]  ---> 选择[分隔符] -->选择 [分节符] 下面的   [连续]; 2.然后选择word功能区 ...

  8. 云钉一体:EventBridge 联合钉钉连接器打通云钉生态

    ​简介:今天,EventBridge 联合钉钉连接器,打通了钉钉生态和阿里云生态,钉钉的生态伙伴可以通过通道的能力驱动阿里云上海量的计算力. 作者:尘央 背景 "以事件集成阿里云,从 Eve ...

  9. 如何使用 Serverless Devs 部署静态网站到函数计算(上)

    简介:部署个静态网站到函数计算~ ​ 前言 公司经常有一些网站需要发布上线,对比了几款不同的产品后,决定使用阿里云的函数计算(FC)来托管构建出来的静态网站. FC 弹性实例自带的500 Mb 存储空 ...

  10. iofsstat:帮你轻松定位 IO 突高,前因后果一目了然 | 龙蜥技术

    ​简介:磁盘被打满到底是真实的业务需求量上来了呢?还是有什么野进程在占用 IO? iofsstat 帮你精准定位. 编者按:sysAK(system analyse kit),是龙蜥社区系统运维 SI ...