把时间沉淀下来 | Kagol 的 2022 年终总结
现代管理学之父德鲁克在其经典著作《卓有成效的管理者》中对时间有一段精妙的论述,其要点如下:
- 时间是一项限制因素,任何生产程序的产出量,都会受到最稀有资源的制约,而时间就是其中
最稀有
的资源。 - 时间也是
最特殊
的一项资源,资金可以筹集,人力也总可以雇到,只有时间是我们租不到、借不到,也买不到,更不能以其他手段来获得的。 - 时间的供给,丝毫没有弹性,不管时间的需求有多大,供给
绝不可能增加
。 - 时间稍纵即逝,根本无法贮存,时间永远是
最短缺
的。 - 时间也完全
没有替代品
,我们可以增加知识,也可以增加人力,但没有任何东西可以替代已失去的时间。 - 做任何事情都少不了时间,时间是
必须具备
的一个条件,任何工作都是在时间中进行的,都需要耗用时间。
1 如何将时间沉淀下来
虽然时间是无形的,看不见、摸不着,也无法贮存,但却可以通过有形的东西沉淀下来。
- 当你花时间写完一篇文章,时间就沉淀到文字中
- 当你录制了一个有趣的视频,时间就沉淀到视频里
- 当你花了一整天的时间整理房间,时间就沉淀到你每天的起居环境里
- 当你去健身房撸铁,时间就沉淀到每一块结实的肌肉里
- 当你种了一盆花,时间就沉淀到绽放的每一朵鲜花中
如果你创建了一个开源项目,时间就:
- 沉淀到你写的每一行代码里
- 沉淀到你为项目编写的每一篇文档里
- 沉淀到你提交或解决的每条 Issue / PR 里
- 沉淀到你的每一次代码检视意见和讨论里(图1)
- 沉淀到你组织的每一次会议中(图2)
- 沉淀到你与社区成员的每一次互动中
图1:代码检视
图2:开源社区会议
2 开源:将时间沉淀到代码里
2022年大部分时间都投入到了 Vue DevUI 开源项目的建设中,并于今年9月1日发布了1.0版本。
2.1 过程
从过程上来看,我个人的贡献主要如下:
- 贡献
5000
多行代码(除去pnpm-lock.yaml
等无效代码提交) - 提交
200
多个PR - 报告
90
多个Issue - 提出
200
多条代码检视意见 - 发布
40
多个版本 - 撰写
8
篇推广文章 - 组织
10
多场线上沟通会 - 参加
1
场线下开源会议分享
图3:Commits
图4:PR
Vue DevUI 推广文章:
:点赞
:阅读
- 29534526 Vue DevUI 1.0 正式发布
- 17333991 Vue DevUI:100多位贡献者持续530多天,写了近60000行代码,这个新鲜出炉的 Vue3 组件库你不想尝试下吗?
- 4210162 20行代码,给你的项目增加 DevUI 主题切换能力
- 251612 探索开源社区开发模式:vue-devui 组件库 1.0 版本公开测试
- 10987 请收下这份《Vue DevUI 公开测试参考指南》
- 11889 DevUI 开源社区 Issue / PR 周报第2期:本周迎来贡献的超级大爆发,共10位贡献者提交26个PR
- 91028 DevUI 开源社区 Issue / PR 周报第1期
- 81094 如何在1分钟之内创建一个符合规范的DevUI组件
2.2 成果
从结果上来看,通过积极的社区运营:
- 增加
35
位贡献者 - 增加
476
颗Star - 增加
1057
个PR - 增加
223
个Issue - 微信社群增加
150
多名成员 - 掘金增加
800
多关注者 - 掘金增加近
30万
阅读 - 掘金增加
2465
个点赞
图5:Star trends
图6:GitHub card
图7:掘金数据
以下是我个人2022年的 GitHub 贡献图:
图8:Contributions
以下是我在中国开源年会现场的分享:
图9:Kagol 在中国开源年会现场的分享
2.3 社区 > 代码
Vue DevUI 取得的小小成绩主要依赖于社区的朋友们,我只是起到一个将大家团结在一起的角色,通过 Vue DevUI 这个开源项目,我认识了很多社区的优秀开发者,并跟他们建立了很好的关系。
我觉得这应该就是开源社区应有的样子:
一群来自全国各地(甚至全球各地)的开发者,因为有着同样的兴趣和志向聚集在一起,一起开发一个有价值的开源项目,大家真诚地相互交流、分享和协作,一起集思广益解决问题,一起享受成功的喜悦,也一起分担失败的痛苦。
以前我觉得自己做的开源项目一定要要有很多 Star,要有很多下载量,这样才有意义、才有价值,现在我觉得做开源本身就是意义,通过做开源项目收获的友谊、获得的成长,这本身就是价值。
旅行并不是达到目的地才是旅行,从你出门的那一刻起,风景就已经出现!
图10:Contributors
3 写作:将时间沉淀到文字中
除了做开源项目可以将时间沉淀下来,写文章也可以。
写技术文章是一个很好的自我总结
和自我展示
的方式,我很喜欢写作,当初有机会负责开源运营,可能也是领导看我写作能力还可以,当时在自己的个人公众号(Kagol
)上发布了几篇解析 Quill 原理的文章。
今年写的技术文章比较少,技术文章写了10篇,推广文章写了10多篇,开源运营的文章也写了3篇(以前没怎么写过,现在慢慢积累了一些开源社区运营的经验,所以慢慢地也会给大家进行分享)。
技术文章主要写了一个迷你的组件设计系列,给大家分享了我自己的组件设计观:
- 726297 前端开发的积木理论——像搭积木一样做前端开发
- 493934 用积木理论设计一个灵活好用的Carousel走马灯组件
- 132706 CarouseIndicator 组件应用:0行JS代码实现好看的手风琴式折叠卡片效果
- 212003 用积木理论设计的Carousel组件都有哪些有趣的玩法?
另外也写了几篇零散的文章:
- 111560 从 CDK Tree 源码学习如何开发一个UI无关的 Tree 组件
- 28823484 前端Vuer,请收下这份《Vue3中使用JSX简明语法》
- 814043 前端Vuer,请给你的项目加上 ESLint
- 191711 DEVUI蓝掘金主题上线啦
还有三篇分享我对开源运营的一些思考:
- 201314 DevUI 开源经验:从启动开源项目到运营开源社区
- 83083 从0到1开始运营你的开源项目——华为云DevUI成长经验分享
- 281325 运营一个开源社区究竟意味着什么?
有三篇发在我个人的掘金账号(因为是刚刚开始运营的个人掘金账号,数据非常惨淡就不贴出来),大家多多支持下我的个人掘金账号呀,后续我也会持续分享一些前端和开源方面的经验。
写作方面今年做得不够,明年加油吧!
除了我自己写的文章,DevUI团队账号中有不少是社区朋友们的投稿,非常感谢朋友们对DevUI和我的大力支持,尤其是ErKeLost同学,给我们投稿了三篇高质量技术文章,以下是他们的投稿文章:
- 581381 手把手教你开发一个快速、高性能、高质量压缩图片的 Vite 插件 - ErKeLost
- 24911787 Turborepo:发布当月就激增 3.8k Star,这款超神的新兴 Monorepo 方案,你不打算尝试下吗? - ErKeLost
- 532655 Ripple:这个广受好评的水波纹组件,你不打算了解下怎么实现的吗? - ErKeLost
- 313053 骨架屏优化——细粒度模式的实现 - ivestszheng
- 473406 手把手教你实现 Tree 组件搜索过滤功能,干货满满! - daviForevel
另外也要感谢我们团队成员的大力支持,特别是汤汤Tang
和rhlin
同学,以下是他们的投稿文章:
- 252157 Angular依赖注入模式的应用和玩法案例 - rhlin
- 925695 如何使用 Monaco Editor 做一个在线的网页代码编辑器 - 汤汤Tang
- 151413 Angular PWA 渐进式 Web 应用 - 汤汤Tang
- 161156 TypeScript AST (抽象语法树) 结合 Angular Schematics 的应用 - 汤汤Tang
4 2023 年展望:将时间沉淀到自己的热爱里
2023年我依然会将主要精力投入开源和写作上,另外也会尝试:
- 运营自己的个人公众号(欢迎关注我:
Kagol
)和掘金账号,分享自己在前端和开源两个方向上的经验,欢迎大家关注我 - 参加一些内外部的分享,锻炼自己的演讲能力,增加个人影响力
- 尝试写一本掘金小册(惭愧,2021年立的 flag 到现在还没实现)
--- END ---
我是 Kagol,如果你喜欢我的文章,可以给我点个赞,关注我的公众号 Kagol
,一起交流前端技术、一起做开源!
把时间沉淀下来 | Kagol 的 2022 年终总结的更多相关文章
- 经受时间沉淀的15 个 Android 通用流行框架大全
1. 缓存 名称描述 DiskLruCache: Java实现基于LRU的磁盘缓存 2.图片加载 名称描述 Android Universal Image Loader 一个强大的加载,缓存,展 ...
- 基于C/S架构的3D对战网络游戏C++框架_【不定期更新通知】
由于笔者最近有比赛项目要赶,这个基于C/S架构的3D对战网络游戏C++框架也遇到了一点瓶颈需要点时间沉淀,所以近一段时间不能保证每天更新了,会保持不定期更新.同时近期笔者也会多分享一些已经做过学过的C ...
- 基于C/S架构的3D对战网络游戏C++框架_06搭建C/S架构的基本通信框架(尚未写完会重新编辑后再发出)
本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): ...
- 如何学习JavaScript
Javascript是我大学里面做网站兴趣,加上进一年维护公司javascript相关的框架. 顺便回顾一下自己学习 javascript 的相关方法和技巧,分享给需要的朋友. 1.base 基础.兼 ...
- 那些年一起用过的iOS开发利器之Parse
阅读此文章需要对Objective-C和iOS有一定的了解,完全没有基础的朋友请先阅读<让不懂编程的人爱上iPhone开发>系列教程. 什么是后台服务(back-end service)? ...
- 最全的运营推广方案,教你如何从零开始运营APP
转载自:最全的运营推广方案,教你如何从零开始运营APP(http://www.kusocial.com/9319 ) 最全的运营推广方案,教你如何从零开始运营APP 2014-10-07 • 运营 • ...
- Zerojudge解题心得
我进入娄山中学已经有1年多了,也就是说我学习编程也有1年多了,在这一年多的时间中,我已经对编程有了初步的了解.其实只要抓住平时的空闲时间加以利用,哪怕每个星期就做那么三四题,经过了一段时间沉淀,也会有 ...
- APP运营干货分享
从移动互联网市场总监岗位出发,从几个方面来阐述移动互联网部门如何制定一份运营推广策划案,至于关于移动互联网,移动电商是大趋势这些虚的.空泛的文字,不展开说了. 一.竞品分析 1.选择竞品,做好定位(选 ...
- 2015版App推广全攻略(完整版)
线上渠道 1.基础上线 各大手机厂商市场.第三方应用商店.大平台.PC下载站.手机WAP站.收录站.移动互联网应用推荐媒体等等基本可以覆盖Android版本发布渠 道:推广的第一步是要上线,这是最基础 ...
- Android性能优化——之防止内存泄露
又是好久没有写博客了,一直都比较忙,最近终于有时间沉淀和整理一下最近学到和解决的一些问题. 最近进行技术支持的时候,遇到了几个崩溃的问题,都是OOM异常,一般OOM异常给人的感觉应该是加载大图片造成的 ...
随机推荐
- TypeScript(一)基本使用
一:导入TypeScript npm i typescript 或者 npm i typescript -g(全局导入) 二:编译Ts文件为Js(道理跟Sass转Css一样) 在当前文件目录终端中输入 ...
- jq修改多个css样式
$("#xxx").css({"属性名称": "属性值", "属性名称": "属性值" });
- 微信小程序第三方授权登录
登录流程时序图: 1.调用uni.getProvider()获取服务供应商,参数service确定是选择对应的什么操作,此处选择授权登录oauth 代码如下: 2.调用登录接口uni.login(), ...
- vulnhub靶场之JANGOW: 1.0.1
准备: 攻击机:虚拟机kali.本机win10. 靶机:JANGOW: 1.0.1,地址我这里设置的桥接,,下载地址:https://download.vulnhub.com/jangow/jango ...
- .NET 采用 SkiaSharp 生成二维码和图形验证码及图片进行指定区域截取方法实现
在最新版的 .NET 平台中,微软在逐步放弃 System.Drawing.Imaging ,给出的理由如下: System.Drawing命名空间对某些操作系统和应用程序类型有一些限制. 在Wind ...
- Python全栈工程师之从网页搭建入门到Flask全栈项目实战(1) - ES6标准入门和Flex布局
1.简述 1.什么是ES6?ES6, 全称 ECMAScript 6.0,是 JavaScript 的下一个版本标准,2015年6月份发版.ES6的主要目的是为了解决 ES5 的先天不足. 2.了解E ...
- C/S、B/S、Web的介绍(Web应用开发)
文章目录 1.C/S结构介绍 2.B/S结构介绍 3.Web介绍 3.1 .什么是web? 3.2 .Web的工作原理 3.3 客户端应用技术 3.4 服务端应用技术 1.C/S结构介绍 Client ...
- C语言/python实现定时关机
1.python def shutdown(): print('(1)定时关机\n(2)取消定时关机\n(3)立即关机\n(4)关机重启') b = eval(input('请选择:\n')) if( ...
- JAVA系列之JVM内存调优
一.前提 JVM性能调优牵扯到各方面的取舍与平衡,往往是牵一发而动全身,需要全盘考虑各方面的影响.在优化时候,切勿凭感觉或经验主义进行调整,而是需要通过系统运行的客观数据指标,不断找到最优解.同时,在 ...
- 多项式回归 & pipeline & 学习曲线 & 交叉验证
多项式回归就是数据的分布不满足线性关系,而是二次曲线或者更高维度的曲线.此时只能使用多项式回归来拟合曲线.比如如下数据,使用线性函数来拟合就明显不合适了. 接下来要做的就是升维,上面的真实函数是:$ ...