
周末了,写篇水文,来看看我从毕业到现在,三年多的时间里,都接触过哪些编程语言,当然最后也有自己的一些思考和看法,Enjoy !
之前发过一个朋友圈,简单罗列了一下自己之前写过的语言,感觉主流的编程语言自己都接触过了,今天就来详细谈一谈。
一些读者都知道,我是在大学期间自学编程,我的专业是国际经济与贸易,然后看到本校的计算机专业课程,他们最开始学习的语言就是 C ,于是便开始接触到了 C 语言。
但那时候我根本没有任何计算机的底子,C 又偏偏是一个很难的语言,对计算机基础的要求比较高,所以是浅尝辄止,只是把《 C Primer Plus 》这本书简单学习了一遍,也没有任何的项目实践和深入学习。
然后到了大三的时候,迫于找实习和工作的压力,从那时起开始系统性的学习 Java 了。
至于为什么选择 Java ,稍微工作几年的同学都知道,Java 当时还是挺火的,语法容易学,对计算机基础的要求并不是特别高,然后培训班铺天盖地的都是 Java 的课程,网上的 Java 教学视频、学习资源等也有很多。
当时学 Java ,人手一个电商 /博客项目,有点像现在,学习数据库的,都得学习 CMU-15445 、MIT-6824 ,然后还要自己参与或者手撸一个数据库项目一样(只能说越来越卷了。。。)
当时写一些商城项目,前端页面也是自己写,所以学习了一些 Html/CSS 和 Javascript 基础,搭配 Java 的 JSP ,简单的页面就能自己撸出来了,当然现在估计都没人用 JSP 了。
大学毕业参加工作,第一份工作便顺理成章的找了 Java ,毕竟其他的咱也不会。
工作有时候会遇到一些重复机械的活,于是当时就想能不能通过一些脚本,帮助自己提升工作效率。于是简单学习了 Python ,写了一些小工具,例如自动生成 SQL 定义,提取数据库的数据转成 Excel ,等等。
到了 2020 年中,大概毕业后一年的样子,业余的时间开始学 Go ,Go 的语法还是挺简单的,上手很快,rosedb 就是从那个时候开始的。
后来换了工作,找到的职位刚好是用 Go 的,所以便完成了从 Java 到 Go 的跨越,至此 Java 便不怎么接触了。用 Go 最开始也是写业务,然后转到了基础架构方向,用 Go 写了一段时间的数据库中间件。
然后就是接触到了分布式 KV 存储,公司的这个存储项目是用 C++ 写的,于是便开始学习了一些 C++,当然这个项目我参与并不是很多,然后就离职了,所以我对 C++只是很浅显的了解。
后来到了数据库行业做内核开发,开始用 C ,于是便重操旧业,开始复习大学期间最开始接触的 C 语言。
最近,又因为工作的一些要求,开始学习 Rust ,刚接触 Rust 的确不太适应,但是也能够感受到这门语言的强大和灵活。
于是总结一下,从最开始接触编程到现在,我已经写过 Html/CSS 、Javascript 、Java 、Python 、Go 、C++、C 、Rust 。
工作之后才发现,完全有可能根据工作的改变,而去学习并且切换到新的语言,这是无法避免的,所以还在学校的同学,不用去纠结自己到底应该学哪门编程语言,能够深入任何一门语言,以后再学习新的语言,都会非常的快。
这也是一些大厂面试,并不怎么看重语言的原因之一。
而对于工作之余,想要学习新的语言的同学,可以想想自己学习的目的是什么,例如你想要做什么样的产品,然后再据此去选择一门新的语言。
我之前也在 V2EX 上发表过类似的看法:
接触到多个语言,能够让自己不会成为一个语言控,能够比较清晰的认识到每个语言诞生的背景,以及它的适用场景,总之会更加包容的看待一些问题。
对于语言学习的经验,简单分享一下,如果你有明确的目标,这样学习肯定是最好的。比如你学一门新的语言,就是为了看懂公司的项目,那么可以一边看一边学,并且能够接一些小的需求,逐渐深入。
如果学一门语言并没有太明确的目的,只是为了兴趣,或者说给以后的自己多一个选择,那么可以找一个基础的教程,跟着敲代码,然后自己参与到项目中去。可以是自己折腾的项目,也可以是别人的开源项目,总之,实践起来才是最快的学习方法。
当然工作的这几年,接触了比较多的语言,有一个非常不好的方面,就是对大多数语言的认知都是浮于表面,没有更加深入的去学习。
最好的状态还是能够精通一两门,所以我后续希望能够在 Go 和 Rust 方向有更深入的理解。
最后再说一句,PHP 是世界上最好的语言[Doge][Doge][Doge]
1 Aloento 2022 年 10 月 30 日 C / C++ / Go / Rust / C# / Java / JS / TS / HTML / CSS / Java / Python / Powershell / Shell / ASM |
2 hsfzxjy 2022 年 10 月 30 日 via Android C / C++ / Go / Rust / Kotlin / JS / TS / HTML / CSS / Python / Pascal / Shell / ASM / Dart / Haskell |
3 learningman 2022 年 10 月 30 日 C / C++/ Go / TS / JS / Python / Kotlin / Java / C# 楼上连 HTML 都整进来了多少有点凑数了 |
4 yougg 2022 年 10 月 30 日 via Android C, C++, VB, Java, HTML, Javascript, CSS, SQL, Shell, Bat, VBS, Python, Go, Dart, Lua, Rust |
5 AmosAlbert 2022 年 10 月 30 日 C/C++/Python/Java/Go |
6 none 2022 年 10 月 30 日 卷到天荒地老 |
7 ijrou 2022 年 10 月 30 日 C# Java HTML Javascript Jquery Vue Linux Go Rust CSS SQL Python Git Android |
8 yzbythesea 2022 年 10 月 30 日 工作中用过的:C++ / Java / Python / Ruby / Go / TS,JS / Clojure / Shell 读书时用过的:Logo / Pascal / C / Fortran / ASM / R / Verilog,VHDL |
9 48y1951r9G8k7Zou 2022 年 10 月 30 日 仔细想了想,还真没有我没学过的主流编程语言 但学过不表明写得好 |
10 iwh718 2022 年 10 月 30 日 via Android |
11 pocarisweat 2022 年 10 月 30 日 工作里用过的: C++,虽然很复杂,但还是很值得学的语言,其他很多语言的理念和想解决的问题在这里都有源头。 Ruby ,动态语言里最舒服的那个,Rails 更是实打实的生产力。 Python ,相比 Ruby 比较中规中矩,作为胶水和运维 CI 等脚本用到的场合更多。 Perl ,正则强归强,要不是某些环境没 Ruby 解释器我真不想用这玩意,write-only 的语言,过段时间自己都不知道代码是干啥的。 Shell ,语法极其鬼畜,但习惯了之后能做很多事情,因为能调用一切命令。但复杂一点就得和 sed/awk/find/grep 甚至 ruby/perl 一起用。 自己玩过的: Javascript/TypeScript/CoffeeScript ,JS 社区喜欢函数式,可能除了 JS 本身确实有函数式特性之外,还因为 JS 前面那个 Java 的部分用起来太难受了,动态弱类型是真难受。TS 之于 JS 有点像 C++之于 C ,我喜欢这种渐进式的语言改进。TS 的类型系统已经很强了,恭喜前端又找到了整活场景。CoffeeScript 估计入行新点的前端都不知道了吧,我觉得纯粹是一部分用 Python/Ruby 的程序员觉得和 JS 语法反差太大搞出来的玩意。 PHP ,同样是动态弱类型,但是因为最基本的应用场景是生成 HTML 的脚本而不是写逻辑,所以弱类型在这里体验没有 JS 那么奇怪。玩过就知道为什么说 PHP 是最好的语言了,直接.php 一把梭,不要什么维护性,什么 CodeIgniter 、Laravel 没那味了。 Swift ,像是个天赋很好但不努力的学生。并发那一套做得很好,一些类型上的设计也算是恰到好处,对 Unicode 字符串的处理可能也是这些语言里最完备的,不过代价就是苹果花了 4 年每年都大改一遍语法。因为语言里所有对象都是原子引用计数,所以性能比 C++和 Rust 差了一大截。虽然名义上可以跨平台,但很少看到有人在苹果之外的平台真正用它。 Objective-C ,乍看是很落后的语言,但因为语言特性很简单,且奇怪的语法和 C++不冲突,导致其可以和 C++代码写在同一个文件里。OC 实质上还是动态语言,非常适合写 GUI 然后底层调 C++逻辑的场景,乔布斯确实有眼光。 Rust ,内存管理的理念很先进,工具链很完备,丰富的函数式特性( Rust 之父就是函数式粉丝)。但是语言里符号真的多,代码写起来也难看。而且目前没有特别强的 IDE. C#/Java/Scheme/OCaml 这几个都是浅尝辄止,不发表评论了,但都是值得学习的语言。Java 虽然古板,但真能干活。 |
12 churchill 2022 年 10 月 30 日 10 楼了,还没有 MATLAB 我不认可,手动狗头。 |
13 ih8es9OIzne0959p 2022 年 10 月 30 日 C/C++、Java 、Python 、html 、vue 、Javascript 、PHP 、shell 、CSS 、kotlin 、SQL 、JSP |
14 lisongeee 2022 年 10 月 30 日 python 不是有类型注释吗?写类型注释之后就好很多了,python 最大的问题是没有块级作用域 python 是 `弱类型` 吗?我现在不用 强 /弱 /动 /静 去描述一个语言 我用 `编译期类型是否确定`/`运行时类型可变` 和 `是否可隐式转换` 来描述,显然 python 是 `编译期类型不确定+不可隐式转换` |
15 cyersvet 2022 年 10 月 30 日 via Android 看来都是年轻人呀,没看到学过 vb 的 |
16 sokach 2022 年 10 月 30 日 从入门到入门,想学却又一直没有开始过 XD |
17 996bujiaban 2022 年 10 月 30 日 现在薪资多少... |
18 TWorldIsNButThis 2022 年 10 月 30 日 其实现在我比较推荐 kotlin 入门 越早接触 immutable ,declarative ,high order function 越好 imperative 和 mutable 只是 escape hatch |
19 yolee599 2022 年 10 月 30 日 via Android C/C++,VB6.0 ,ASM ,java ,shell ,Lua ,C#,Python ,SQL |
20 swsh007 2022 年 10 月 30 日 via Android 一个 pascal 都没看见 |
21 Akitora 2022 年 10 月 30 日 有实际写过点啥的 Java Kotlin Go Rust Python TS JS |
22 Cola98 2022 年 10 月 30 日 Rust/C/C++/Go/Java |
23 drainlin 2022 年 10 月 30 日 易语言、C 、Python 、Swift 、Dart 、Java 、kotlin |
24 LindsayZhou C / C++ / JS / PHP / Java / Python / Go / Matlab / Hare ,完全忘了的也拿来凑数了。elisp 可以算吗 Python 的 type hints ,可以用 mypy 来做校验。最近我自己在写公共包,用 mypy 改好类型提示,用 tox 在支持的版本下都过一遍 pytest ,过两天准备再把 coverage 加上。开源包做这些应该够了吧,当然 autopep8 之类的,在写代码的时候就弄好了。 |
25 feiffy 2022 年 10 月 30 日 |
26 likai 2022 年 10 月 30 日 qbase, pascal, vb,c,java,php,python,c#,lua,js,css,dart,kotlin |
27 chrisia 2022 年 10 月 30 日 C / Java / JS / TS / Kotlin / Go / Dart / Swift |
28 chrisia 2022 年 10 月 30 日 最喜欢的是 Kotlin |
29 wangkun025 2022 年 10 月 30 日 ruby |
30 midsolo 2022 年 10 月 30 日 C 、C++、Java 、Scala |
31 hankli 2022 年 10 月 30 日 易语言 |
32 moen 2022 年 10 月 30 日 我应该是比较少的有用过 Solidity 的 |
33 hez2010 2022 年 10 月 30 日 via iPad Intel x86 和 MIPS 汇编 C C++ C# F# Rust Haskell Python TypeScript Java Kotlin Go Objective-C Verilog Batch PowerShell 易语言,都写过项目 |
34 junyee 2022 年 10 月 30 日 C/C++ Java php JS asm/smali Python lua autoit aardio html css sql powershell shell batch 越到后面越是凑数。 |
35 pengtdyd 2022 年 10 月 30 日 java python dart c rust scala html css js ts sql shell lua 学了这么多才会发现,近几年新出的编程语言都是多范式编程语言,不再拘泥于单一的编程语言思想。 |
36 datadump 2022 年 10 月 30 日 Basic / Pascal / C / C++ / Go / Rust / C# /Java / PHP / Python /ASM /OC /Ruby /Lua JS / TS / HTML / CSS / Shell / Perl/ TCL / VHDL |
37 Mintonmu 2022 年 10 月 30 日 C / C++ / Go / Rust /Java / PHP / Python /ASM /Ruby /Lua /JS / TS / HTML / CSS / Shell / Scala / Haskell / Elixir |
38 nomagick 2022 年 10 月 30 日 个人觉得如果你接触了足够多的语言却没有产生一个明确的偏好,说明你对所有的语言都是浅尝辄止,一直在最大公约数里面。 很多语言里独特成分是不可替代的,那些高阶玩法放在其他语言里面或者水土不服,或者根本就没法实现,而这恰恰才是每个语言的精华和立命之本。 语言虽然多元,但语言的表述力却可以横向对比,越是成体系的语言高阶表达方式就越多越复杂,它们代表了编程语言未来的进化方向。 有些厂子对语言包容,换句话说就是用得浅,都是 CRUD ,谁都一样,要的是 Labor ,无关技术,出苦力的地方,建议躲远点 |
39 iSecret 2022 年 10 月 31 日 确实,通常我的个人介绍都是后台开发,而不是特定某种语言。 公司项目通常是 Java ,脚本用 Shell 和 Python 写,快速建站使用 PHP ,目前已经学习完 Go 的基础语法应该也可以用来写脚本。 |
40 LiYechao 2022 年 10 月 31 日 C / C++ / C# / Javascript / CoffeScript / Typescript / ActionScript / Golang / Rust / Java / Scala / Kotlin / Swift / Lua / Python / Shell / Sql |
41 rocododd 2022 年 10 月 31 日 易语言 / C / C# / Py / Java / Kotlin / Go / C++ |
42 sinnosong1 2022 年 10 月 31 日 C/C#/Java/Javascript/Kotlin/Go/PowerShell |
43 x1aoYao 2022 年 10 月 31 日 工作中实际用的多的: Java / Go / Javascript / Python 个人项目中习惯用的: Kotlin / Swift / Rust 曾学习过但已不熟的: VB / C / Scala 还有一堆浅尝辄止的... |
44 threee333 2022 年 10 月 31 日 Python 是强类型语言 |
45 chinagxwei 2022 年 10 月 31 日 Rust / Java / JS/ TS / PHP |
46 dog82 2022 年 10 月 31 日 java go perl js |
47 superkeke 2022 年 10 月 31 日 C/C++/Objective-C/Python/Swift/Javascript/Dart/Java/Kotlin |
48 hustlibraco 2022 年 10 月 31 日 @nomagick 我同意你说的,语言本身是有差别的,不同设计代表了作者对不同编程范式的抽象思考,作为技术人员有自己的偏好是对的,这样也能指引自己写出更好的 code 或者开发更好的 language 。但是商业业务编程语言确实没那么重要, |
49 hustlibraco 2022 年 10 月 31 日 @nomagick 我同意你说的,语言本身是有差别的,不同设计代表了作者对不同编程范式的抽象思考,作为技术人员有自己的偏好是对的,这样也能指引自己写出更好的 code 或者开发更好的 language 。 但在从商业角度考虑,除了少数开发中间件、数据库产品的公司外,语言并不重要,并不能说对语言包容的厂就是不好的厂。技术人员理解业务需求,能够根据业务需求寻求合适的语言和解决方案比写优雅的这件事可能更为重要。 |
50 mizuBai 2022 年 10 月 31 日 via iPhone Objective-C / Swift / Python / Perl / Fortran / Julia 理论与计算化学研究生,做算法和炼丹,iOS 开发是兴趣 |
51 masquerader 2022 年 10 月 31 日 C / C++ / Java / Clojure / Scheme / Python / Typescript / F# / C# |
52 GGMM 2022 年 10 月 31 日 用得比较多的:Python / Java (Android Development) / C++ 看得懂,但是写得生疏的:Javascript / Kotlin / Bash |
53 yxisenx 2022 年 10 月 31 日 C / C++ / Pythone / Java / Php / Dart / R |
55 sadfQED2 2022 年 10 月 31 日 via Android C/C++/php/Java/Python/go/js/shell/VB/LUA |
56 Renormalization 2022 年 10 月 31 日 @yzbythesea @mizuBai 看到 Fortran 老伙计,我感到很开心 |
57 huiwang520 2022 年 10 月 31 日 @pocarisweat 牛哇 |
58 ukeso 2022 年 10 月 31 日 工作: Java / SQL / Shell / Python / Javascript 学习:C / Golang / Rust / Haskell / Schema / Scala 其他浅尝: C# / Kotlin |
59 a33291 2022 年 10 月 31 日 除 c# javac js 略懂,其他的都能熟练拼写 |
60 zhangqilin 2022 年 10 月 31 日 只要未来不需要维护,Python 开发挺好的 |
61 tt67wq 2022 年 10 月 31 日 工作:go/python/elixir 爱好:c/zig |
62 adimn 2022 年 10 月 31 日 大学的时候,学单片机的时候用的是汇编, 后来学了 c 语言,考了二级, 然后大三自己学了 java ,js , 再到后来 python , 写了这么多,最喜欢的还是 java , 写业务代码写起来很少会出错 |
63 xFrye 2022 年 10 月 31 日 python 是弱类型语言? |
64 ufan0 2022 年 10 月 31 日 C / C++ / Java / Kotlin / Python / Rust / Lisp / JS / TS / Dart / C# / Shell / 部分汇编语言 |
65 wenzhoou 2022 年 10 月 31 日 有没有人用过 apple II 上面的 basic ?写代码前面都得要加行号的那种? 估计只有 8 楼的年龄有可能吧。 我也来算一算,初中 bacic ,logo 大学 bat ,quick basic ,tuobo pascal ,c ,c++,mfc ,vb ,asm ,foxpro ,visual foxpro ,html, 对了大学时候去我哥他们学校,他们学校连 386 都没有,上机写程序用纸带,遂放弃 fortran 。我们学校高档,上来就是 3 寸软盘。 毕业后 delpi ,powerbuilder ,shell ,java ,sql, Javascript ,groovy ,php, perl, python, go, LPC, lua ,vba |
66 QER123 2022 年 10 月 31 日 @learningman html 多少也算 |
67 learningman 2022 年 10 月 31 日 @QER123 #65 那 yaml, toml, properties 也得写上了 |
68 gaifanking 2022 年 10 月 31 日 C / C++ / Java / Kotlin / Golang / Javascript / Python / R / VB / Dephi 以及自创语言;) |
70 kuviki 2022 年 10 月 31 日 易语言 / VB / Processing (Java) / Shell / SQL / ASM / C / C++ / Java / Python / Lua / C# / JS (Vue2) / TS (Vue3) / CSS (SASS 、LESS) / Powershell / Go / Rust |
71 XQUX9al72490iGLh 2022 年 10 月 31 日 嗯,我就不补充了,感觉就没有没学过的 |
72 go522000 2022 年 10 月 31 日 vb / PHP |
73 ElmerZhang 2022 年 10 月 31 日 BASIC(2000), Pascal(2002), ASP(2004), Javascript(2004), SQL(2004), PHP(2005), C#(2007), Perl(2010), C++(2010), Bash(2010), awk(2010), Node.js(2011), Python(2012), Ruby(2013), Java(2016), Scalar(2016), TypeScript(2020), Golang(2020) 以上都是考试或工作中实际用过的,其他只研究了点皮毛没实际使用过的就不写了 |
74 AmericanExpress 2022 年 10 月 31 日 via iPhone C -> Python -> Java / Go 写过一点:Javascript / Matlab / Lua 用过的最诡异的语言可能是 AppleScript 写到现在我依旧觉得 Java 是非常好的语言 另外,python 不大弱类型语言,python 是强类型动态语言 |
75 macha 2022 年 10 月 31 日 C++,主力语言,其实如果公司里面 C++积累丰富的话,C++写起来非常爽,不过出问题的话,那头发是一把一把的掉啊。 Python ,次主力语言,其实我不喜欢 Python ,当时让我放弃他的原因是没有花括号和分号。代码打多了花括号和分号像肌肉记忆一样。现在我还是不喜欢,主要原因是没有块级作用域,从 C++切换到 Python 的头几天真心很痛苦。 最近在写 lua ,经常把 python 和 lua 搞混。一会儿冒号换行一会儿 then 换行。太吐血了。 |
76 murmur 2022 年 10 月 31 日 想当年读本科的时候还搞过 matlab 和 verilog |
77 yvescheung 2022 年 10 月 31 日 从上大学开始算,最开始写 C ,感觉 C 挺好玩的,面向过程,按部就班,可以写出很多好玩的小工具,后来写 Java ,感叹这玩意适用范围是真的大,再后来学 JS 写 Node ,感觉前后端统一语言也挺不错的,期间用 python 写各种脚本,还自学了 Go 作为后端语言的首选,当我在纠结未来该选哪个语言作为主力时,我进了金融行业,写起了我最痛恨的 C++。 |
78 ethusdt 2022 年 10 月 31 日 c / oc / swift / Javascript / python / clojure / html css |
79 WytheHuang 2022 年 10 月 31 日 C / Javascript(HTML & CSS) / Java / PHP / Python / Go |
80 qzwmjv 2022 年 10 月 31 日 ASM/C/C++/Java/Scala/SQL/Python/R/Matlab/Shell |
81 yl20181003 2022 年 10 月 31 日 C / C++ / Rust / Java / Kotlin / Go / TS / Python / Lisp 都有认真学过 |
82 mengzhuo 2022 年 10 月 31 日 接触顺序是 C 、asm 、PHP 、JS 、Python 、Shell 、Node 、CommonLisp 、Perl 、Go 、Rust Go 、C 、Python 赛高,最讨厌那些抽象出来贼复杂的逻辑 |
83 simo 2022 年 10 月 31 日 vb delphi Javascript c c++ java go python ruby nodejs dart 基本用什么自学什么,喜欢什么学什么 |
84 CitizenR 2022 年 10 月 31 日 C/FORTRAN/C#/JAVA/php/JS/Python 面向应用编程 |
85 keepfun 2022 年 10 月 31 日 php lua golang 过去式 java 进行时 |
86 ainon 2022 年 10 月 31 日 C/C++/C#/JAVA/PHP/PYTHON/JS/GO/RUST |
87 springwarm 2022 年 10 月 31 日 via iPhone 工作用主力语言:C#/JS(Node.js)/Java/Python/Ruby 项目中短暂用过:PHP/VBA/Scala/OC/Groovy/Shell/TS 浅尝辄止:Kotlin/Swift/Go 学生时代:Basic/C/C++/VB/Delphi ( C#和 Java 留了下来) 目前兴趣较大:Julia/Clojure/Matlab “战略性”放弃(就是不会,还不想学):ASM/VHDL/Verilog/Prolog/Lua/R/Erlang/Elixir/Crystal/V/Dart/Rust/Lisp/Scheme/OCaml/F#/Zig ,包括前面提到过的:C/C++/Basic/VB/Delphi/Perl/PHP/Scala |
88 derekchan 2022 年 10 月 31 日 C/C++/Java/Go/Objective-C/Swift/Javascript/TypeScript/Python |
89 zhangfeiwudi 2022 年 10 月 31 日 c / java / golang / nodejs / php / c# / Javascript / python |
90 springwarm 2022 年 10 月 31 日 via iPhone |
91 shawndev 2022 年 10 月 31 日 C / Objective-C / Swift / Python / Ruby / Lua / Go / Rust / Java / Kotlin / Java / Python / Lisp / Shell / ASM |
92 shawndev 2022 年 10 月 31 日 更喜欢静态强类型的原生语言。C / Rust / Swift , 脚本语言 Python / Ruby 也挺喜欢。 |
93 lyq1996 2022 年 10 月 31 日 via Android C/C++/Objective-C/Python/Rust/Shell/ASM |
94 asuraa 2022 年 11 月 1 日 c/c++/python/php/c#/java/shell/js/lua/asm |
95 s524256521 2022 年 11 月 1 日 via iPhone Json, Yaml 嘻嘻 |
96 QER123 2022 年 11 月 1 日 @learningman 没毛病 |
97 passon 2022 年 11 月 1 日 Java/Python/Swift/JS/TS/Dart |
98 Test22 2022 年 11 月 1 日 请问一下楼主从 Java 到 Go 的时候,框架是学哪些内容,最近有转 Go 的意向 |
99 shm7 2022 年 11 月 1 日 C/C++/Java/Js/Python/np/tf/torch/paddle ;) |