跟帖-我怎样走上程序员这条不归路

56次阅读

共计 2399 个字符,预计需要花费 6 分钟才能阅读完成。

题目是从别人的文章沿用的, 同类文章:
https://weibo.com/ttarticle/p…

编程之前的经历

我第一次碰电脑是在三年级, 大约 2000 年, 学校机房,
因为有台商捐助学校的原因, 有了个新机房, 班主任带着我们体验了一下.
Windows 电脑, 纯色的桌面, 印象深就是就演示了一下绘图板之类的.
别的地方, 好像老家看到过一次年纪大的回来玩游戏, 电脑, 但是还不懂.
后来转学到县城, 在老爸单位碰过几次, 画图板, 知道了可以打印.
五年级, 大约 02 年, 学校课程有 Flash, 上了, 学了基础操作, 后来几乎忘光.

第一次知道百度是初中, 大概初二, 04 年左右, 在老师办公室,
忘了什么课代表, 跟外地回来的同学去交作业啥啥, 有事借用了一下,
当时看过第一推动那本弦论书, 很好奇但没消息, 结果在百度上搜到很多,
第一次遇到这样科技, 感觉还是极为奇妙的, 但是初中基本没有相关的课程.
初中学业重, 要说学校上过, 大概也是一些办公软件相关的.
中考结束以后同学带 MP3 到学校, 那是我第一次亲眼看人戴 MP3.

第一次碰代码是高中教的 VB, 大约是 07 年, 一两个学期的课程,
基本的控制结构似乎都上过, 至于界面, 是拖出来的.
难度不怎么样. 但要说记忆最多的, 还是同学折腾班级电脑的事情,
玩极品飞车, 被熊猫烧香感染, 魂斗罗, 谷歌地球, 还有各种小视频,
因为没有多少操作电脑的经验, 那台电脑我也极少碰, 特别是游戏.
后面因为同学买电脑报的杂志, 总是接过来看, 虽然不懂, 但是意识到有多强大.
我的 QQ 号是有次去同学家然后帮我注册, 当时我也是不懂.
最初那些基础知识是回家在我爸单位训练出来的, 看各种东西, 认识了浏览器.
因为在外地上学, 这种经历上的差距很让人受刺激的, 算是恶补的情况.
因为这些事情, 我妈还抱怨我回家就知道电脑, 明明回家都很少.
后来因为一些不愉快的经历, 我高三时候终于家里买电脑了, 对我妈是负担.
高考以后心态就差, 所以暑假折腾了几个月电脑, 常用的软件终于熟悉了, 19 岁.

这些经历大部分跟编程本身无关, 到大学前也没自己写过程序的.
但是这些决定了后来的我, 玩游戏最初对我来说是极为奢侈的,
现在环境当然改变了很多, 但是也让我对于游戏的兴趣点的阈值极高.
更重要的是面对计算机无穷的知识量和算力, 感到自己多么无能.
后来我很迫切需要做的就是学会更深入使用计算机的能力, 不论叫做什么.

第一段程序

“ 如何成为黑客 ” 的文档对我的影响很大, 文章鲜明指出要学 Linux, Python, HTML,
https://translations.readthed…
学校大一不让带电脑, 我都是在学校图书馆机房上网, 每天有限额,
因为机器会自动格式化, 所以我还得用 U 盘保存很多个人配置,
当时试着在 U 盘上装过 Ubuntu, 绿色版 Chrome, 各种繁琐的东西,
借助搜索引擎看了很多东西, 以前没看过, 也对国外有些了解, 英文内容还没接触.
从那时候开始试着用 Ubuntu, HTML 也开始学了.

大二开始带电脑了, 装了双系统, 不过 Linux 由于学校网络问题, 长期斗争,
dr.com 会自动断开的问题, 导致我的上网体验极为不佳,
直到后来我加入社团很多时间呆在社团办公室, 才算是解决了 Linux 上网问题.
说起来, 当时社团还有人买比特币, 2013 左右, 当时对钱不懂完全没注意到.
我最开始学的是 HTML, 慢慢发现不够又学了 CSS, 当然还是不够的.

学 Python 主要就是数学运算的事情, 后来的 Octive 也是类似的.
前面折腾过双平衡三进制这个东西, 就需要程序来实现计算功能,
学校课程里面, 那几年有 C, Matlab, R, 基本上对我来说用不上,
而 Python 提供了很简单丰富的数据结构和计算功能, 正好可以用.
我用 Python 断断续续实现了一个简单版本的四则运算, 当时很有成就感. 21 岁.
https://github.com/dual-balan…

学 JavaScript 本来是为了动效的, 当时由于 Node.js 兴起, 有一些想法,
而且对于聊天室这种东西很着迷, 所以当时用原始的手法写了一个聊天室,
https://github.com/jiyinyiyon…
当时在论坛上跟阿里 NAE 的人聊上了, 就用了他们的平台跑起来,
结果上线没几分钟被刷屏, 没多久把应用整个弄崩了, 后面再没有好好用起来.

中间是通过社区接触了 CoffeeScript, Node.js 这些东西, 慢慢在学,
加上用了几年 Linux, 到大三快结束的时候认识了学校技术社团的人,
跟社团的同学混在一起以后, 接触到的东西也越来越多了, 网上的东西也越来越多.
所以那几年攒了最初编程从业的相关技能和知识面, 当然还有 Git.
前端来说, 当时只是 jQuery 的水平, 复杂度完全不够, Backbone 学了没学会.
其他的一些, 在 Hacker News 是接触到的有很多了,
Haskell, Clojure 虽然不会写, 看是看过不少别人扯淡和评价的.
后来被室友拉去学校招聘会, 遇到有人招我就去了, 程序员不归路开始了.

回顾

最近看到社区里一些朋友的经历, 时不时感到感慨, 现在真太快了,
抛开家境来说, 现在这代人赶上了国家强大向外辐射影响力的时候,
社区跟国外科技巨头的互动越来越多的, 想象和发挥的空间也是非常大.
而且我的将近成年的时候才开始学编程, 中间经历不少的思维的转换,
但是更年轻的人来说, IT 这些东西, 就是生活当中自然而然存在的东西,
无论是设备, 教程, 还是帮助的渠道, 甚至队友, 都多得多得多.
更让人羡慕的当然还是在人生在有创造力的年纪, 已经具备了大量的技能了.

当然我在同龄当中已经很幸运了, 我参与了早期的 Node.js 中文论坛,
以及后来的 React 中文社区在线上的工作, 还有现在的 Clojure 中文等等.
能力有限, 只是做各种边角的推动工作, 后来逐渐认识这么多人.
现在生活和心态上的负担逐年增加了, 参与社区的深度基本上就会减少.
还是希望自己投入了精力的那些技术栈和工具以后能发扬光大吧.

正文完
 0