当前位置: 首页 > news >正文

我的十年编程路 序

算起来,从决定并从事编程开始,已十年有余了。

这十年是怎么算的呢?

我的本科是从2009年至2013年,现在回想起来,应该是从2012年下半年,也就是大四还未正式开始的时候决定从事Android开发。参加了培训班,就是很流行的那种可以先贷款参加培训。先是培训上课,然后工作“包分配”,其实就是辅助修改+投简历,工作后再慢慢还款的过程。

但实际上呢,我参加培训确实也走了贷款过程,但最终的工作仍然留在那家培训公司,做助教。所以也算是找到了一份工作,再后面就是还款的正常流程了。

我记得那是在12年的夏天,开始参加实训。到差不多年底的时候,就做起了助教。所以到今天为止,总的工作年限可以算是有十年了。

这也是“我的十年编程路”系列文章的缘起。回想自己过去的十年,虽小有所成,但也走过一些弯路。相信做为“过来人”,都不希望看到年轻人走自己的弯路,反正我是这样想的。所以写下一些文字,这些文字就是我这十年来的经历以及复盘。回看自己哪里做得不足,想想现在的自己有没有从过去的经历里走出来,学到点什么。再就是给所有读到这些文字的人一个启发,如果有可能,避开我失误的部分。也就是取我的精华,去我的糟粕。

如果哪里的文字有触动到你,那将是我十分荣幸的事。

接下来,我将以年份为单位总结每一年的工作。第一年,也就是2013年,就是下一篇文章要详细纪录的年份。但是,毕竟2012年我也做了一些事,助教的工作也做了一小段时间。恰好,这篇序言到此为止还略显单薄,索性现在就和各位看官说说那些发生在2012年的往事。

2012年,我在上大三。那一年的上半年尾声,总有一些培训机构来学校做宣讲。说白了就是忽悠学生去参加培训班,赚钱。一开始是打着Oracle旗号培训Java的,再后来有哪家我就记不清了,反正是直到来了一家培训Android开发的,我最终选定了这家。

如果不参加培训班,我会去做什么呢?我依稀记得那个时候我一心想做视频/图像设计,毕竟我拿过两次相关奖项;要么就是去做网络工程师,毕竟我买了全套的Cisco培训教材。但最终选择了Android开发,究其原因,一方面是宣讲的内容蛮吸引我的,另一方面就是22岁的我认为Android开发很有前景。现在看来,当初的选择还是挺正确的。

那个时候交通不如现在方便,地铁只有1号线,虽然家门口就有地铁站,但它却并不通往我的目的地,所以只能选择公交车。

早上8:30(好像是)开始上课,我最迟6:30从家里出发,步行大概10-15分钟的路,坐上公交车。大概过1个钟头,下车,再转另一辆公交车。由于另一条公交线路是城郊线路,不仅车次少,而且人多。所以单程2小时,时间还蛮紧张的。当然,下午课程结束,我还要花2个小时回家。算起来,每天有4个小时左右都要浪费在路上。那个时候,心里别提多羡慕那些工作地点离家近的人们了。

培训内容是半天 - 半天进行的,半天讲课,半天练习。内容上就先是Java基础,学到能做出个推箱子小游戏就算可以了。接下来就是Android开发,就是Android API的使用。最后呢,就是项目阶段,会选定一个App作为实战,体会团队协作编程,顺便学习SVN(对,不是Git)。

说到底还是年轻,虽然起得早,睡得晚,但每天精力都很充沛,深受那些培训老师的喜爱。再加上我自己的个性,编程能力真的突飞猛进,成为了培训班的“小大哥”。为什么是“小大哥”,因为真正的大哥是培训老师。除了常规上课和练习之外,中午的订饭工作有时也是我来做。管纪律的老师知道我离家远,考勤也不怎么追究,甚至教我说:“迟到了别说起晚了/看错表/表没电了之类的,可以说是堵车了,这样就不算迟到了。”

所以总的来说,在培训机构的小世界里,承蒙老师们的照顾,我过得很舒服,也学到了更多。

再到后来,我就成为了……助教。每天半天的学生答疑时间都是我来负责,那段时间过得比参加培训还要充实。培训老师跟我讲,培训出来基本都是赶鸭子上架,Java基础是很薄弱的,也就是停留在会调用API的阶段,再往深就不行了。而且也并不是所有常用API都会讲到,还得自己学习。

所以我利用当助教的时光啃下了《Java语言程序设计》基础篇和进阶篇两个大部头,也是我第一次感受到:当注意力投入足够的时候,是真的会错过身边的事物。有一天我在研究书中的知识,有个培训老师喊我,我是真的没听到,直到他走到我面前叫我,我才意识到他的存在。他当时很惊讶地跟我讲:“你是真的吗?”我也很无语,说“是”怕他不信,“不是”又显得我故意,不过最后还是坦率地讲了事实。

这种“投入”的状态,无论是当时的学习,还是后来的编码。直到前几年我才明白:这就是所谓的“心流”状态。在这种状态下,会感觉时间、空间仿佛都不存在了。专注于投入的事情,会感觉时间如飞一般。刚刚看时间,还是早上9点,怎么一下子就到了午饭时间?对,就是这种感觉。

内容上则既不是低水平的重复,也不是难到完全无法处理。而是游离在舒适圈稍稍远一点的位置,像登山一样,虽有难度,但可挑战。正是这种状态,是最能提升我的编程水平的状态。

另一方面,地铁线路修通了,我可以坐地铁上下班了。地铁和公交相比,时效和舒适度都上了一个台阶。我从原来的往返4小时通勤,缩短到了仅需要2小时。恰好赶上冬天,能晚起一个小时,早回家一个小时,真的挺舒服。而且面对那些初学者的问题,我终于也能够处理地游刃有余,对答如流。

但是,那种“心流”的状态渐渐的离我远去了,我觉得工作越来越没有什么挑战性,没有难度,尽是些重复性地劳动。不过,毕竟年轻,不懂得“天花板”的概念,在舒适圈里确实很舒适。

就这样,2012年便结束了。我记得冬天的时候,下了雪,公司门口和地铁站出站口的瓷砖很滑。我们戏称它为“夺命黑瓷砖”,一个不小心,就要摔一个跟头。到公司后,大家打招呼都是:“你摔了吗?”大家谈论工作的内容越来越少,闲聊神侃的时间越来越多。虽然招生仍在继续,但似乎资金出现了些问题,但具体我不知道。教学内容居然由不懂技术,也没实际教过的人来定。现在看来,公司显然需要进ICU急救一下。

面对个人舒适圈和公司的状况,我走完了2012年。如果说这一年有何得失,那就是“心流”的状态,以及对“舒适圈”的认知。

“心流”是高效工作/学习的最佳状态,突破舒适圈,在其周围“登山”,是突破自己的最佳方式。

现在的我,如何确定一件事值不值得做呢?就要看这件事本身是否处于舒适圈外,不然就是低水平的重复,做来无味。想要让自己投入做一件事,如果周围环境比较嘈杂,就戴个降噪耳机,却不放任何内容,或放白噪音。目的就是不受打扰,让自己处于“心流”状态。

如果你也像快速成长,高效应对工作和学习,不妨试试我的方法,希望这些技巧能真的帮到你。

相关文章:

我的十年编程路 序

算起来,从决定并从事编程开始,已十年有余了。 这十年是怎么算的呢? 我的本科是从2009年至2013年,现在回想起来,应该是从2012年下半年,也就是大四还未正式开始的时候决定从事Android开发。参加了培训班&am…...

xs 180

选择题(共180题,合计180.0分) 1. 你被任命为某项目的敏捷教练,为了更好的交付产品,你与团队召开会议,讨论项目过程中团队应该如何做到有效沟通。最有可能确定项目过程中主要以下列哪种方式沟通? A 团队成员在各自的办公室自行办公&#…...

时间序列分析 | BiLSTM双向长短期记忆神经网络时间序列预测(Matlab完整程序)

时间序列分析 | BiLSTM双向长短期记忆神经网络时间序列预测(Matlab完整程序) 目录 时间序列分析 | BiLSTM双向长短期记忆神经网络时间序列预测(Matlab完整程序)预测结果评价指标基本介绍完整程序参考资料预测结果 评价指标 训练集数据的R2为:0.99302 测试集数据的R2为&…...

0101基础-认证授权-springsecurity

文章目录1 基础概念1.1 认证1.2 会话1.3 jwt1.4 授权2 授权的数据模型3 RBAC3.1 基于角色的访问控制3.2 基于资源的访问控制4 名词解析4.1 SSO4.2 CAS4.3 联合登陆4.4 多端登录:同一账号不同终端登录4.5 OAuth1 基础概念 1.1 认证 认证是为了保护系统的隐私数据和…...

一文简单了解THD布局要求

一、什么是THD? THD指总谐波失真。谐波失真是指输出信号比输入信号多出的谐波成分。谐波失真是系统不完全线性造成的。所有附加谐波电平之和称为总谐波失真。总谐波失真与频率有关。一般说来,1000Hz频率处的总谐波失真最小,因此不少产品均以…...

[C++]多态

🥁作者: 华丞臧 📕​​​​专栏:【C】 各位读者老爷如果觉得博主写的不错,请诸位多多支持(点赞收藏关注)。如果有错误的地方,欢迎在评论区指出。 推荐一款刷题网站 👉LeetCode 文章目录一、多态…...

中国版ChatGPT高潮即将到来,解密ChatGPT底层网络架构

2022年11月30日人工智能研究实验室OpenAI发布全新聊天机器人ChatGPT,在中国用户无法访问的前提下,上线仅两个月月活用户就突破了1亿。ChatGPT如同重磅炸弹,一时间火遍全球。面对这一万亿级市场机遇,在国内,无论是资本方…...

PingCAP 唐刘:一个咨询顾问对 TiDB Chat2Query Demo 提出的脑洞

导读 近日,TiDB Cloud 发布了 Chat2Query 功能,在 TiDB Cloud 上通过自然语言提问,即可生成相应的 SQL,通过 TiDB Cloud 对上传的任意数据集进行分析。Gartner 也在一份有关 ChatGPT 对数据分析影响研究的报告中提及了 PingCAP 的…...

力扣-销售分析III

大家好,我是空空star,本篇带大家了解一道简单的力扣sql练习题。 文章目录前言一、题目:1084. 销售分析III二、解题1.正确示范①提交SQL运行结果2.正确示范②提交SQL运行结果3.正确示范③提交SQL运行结果4.正确示范④提交SQL运行结果5.其他总结…...

U-Boot 之七 详解 Driver Model 架构、配置、命令、初始化流程

U-Boot 在 2014 年 4 月参考 Linux Kernel 的驱动模型设计并引入了自己的 Driver Model(官方简称 DM) 驱动架构。这个驱动模型(DM)为驱动的定义和访问接口提供了统一的方法,提高了驱动之间的兼容性以及访问的标准性。 …...

大数据算法重点

1 大数据亚线性空间算法 场景:用二进制存储一个数字N,需要log(N)的空间 问题:如果N特别大而且这样的N又特别的多,该怎么办呢? 思路:减少一些准确性,从而节省更多的空间。 解决办法:使…...

【Eclipse】The import xxxx cannot be resolved 问题解决

在Eclipse使用过程中,某一个类明明存在,但是使用import导入时,却总是提示The import xxxx cannot be resolved的错误,解决办法如下: 点击Project->Clean......

LinkWeChat系统Docker版部署注意事项

具体部署手册:https://www.yuque.com/linkwechat/help/ffi7bu注意事项:启动类配置文件路径需要修改,各个模块启动类原配置如下:.properties("spring.config.name:bootstrap", "config/run/bootstrap.yml")各个…...

【高数】不定积分之有理函数的积分

文章目录前言有理函数积分的通用解法有理函数的特殊解法前言 这个专栏开始更新高等数学的解题方法,本专栏没有特别强调概念,主要是让大家熟悉考研中的一些题型以及如何求解 关键步骤用蓝色高亮提示 总结方法用红色高亮提示 注意事项用绿色高亮提示 希望…...

Java——数组

目录 前言 一、数组的定义 二、数组声明和创建 三、三种初始化及内存分析 Java内存分析 三种初始化 静态初始化 动态初始化 数组的默认初始化 数组的四个基本特点 四、下标越界及小结 五、数组的使用 For-Each循环 数组作方法入参 数组作返回值 六、二维数组 七…...

产品分析|虎扑APP

不同于传统的体育新闻门户网站,虎扑以篮球社区起家,在经历了从体育论坛到体育新闻网站的发展后,又逐渐回归社区发展。 目前,虎扑汇聚了大量的男性用户,俨然成为了“互联网直男的自留地”。特立独行的发展方向使得虎扑不断发展壮大,同时也使得虎扑逐渐触碰到了行业天花板。…...

有限差分法-二维泊松方程及其Matlab程序实现

2.2 偏微分方程的差分解法 2.2.1 二维泊松方程 考虑区域 Ω \Omega Ω 上的二维泊松问题: { − ( ∂ 2...

【设计模式】6.代理模式

概述 代理模式:为一个对象提供一个替身,以控制对这个对象的访问。即通过代理访问目标对象 这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能。 被代理的对象可以是:远程对象、创建开销大的对象或需要安全…...

SRC挖掘之Access验证校验的漏洞挖掘

漏洞已修复,感谢某大佬的知识分享。 任意用户密码重置->可获取全校师生个人mingan信息 开局就是信息收集。 对于挖掘edu的信息收集 1.可尝试谷歌搜索语法,获取学号信息 2. 旁站的渗透获取 3. 学校的贴吧获取(大部分都是本校学生) 当然我就是闲&a…...

GG-21 100V 5A逆功率继电器

1 用途 GG-21逆功率继电器在出现逆功率时,从电网中断开交流发电机。 2 概述 逆功率继电器是基于感应式原理(具有旋转磁场)而工作。 继电器导磁体由两个磁路系统组成:上磁路系统和下磁路系统。电流线圈安装在上磁路系统中,它由接在发电机某相的…...

手游刚开服就被攻击怎么办?如何防御DDoS?

开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...

在rocky linux 9.5上在线安装 docker

前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

LeetCode - 394. 字符串解码

题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?

论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...

【2025年】解决Burpsuite抓不到https包的问题

环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)

上一章用到了V2 的概念,其实 Fiori当中还有 V4,咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务),代理中间件(ui5-middleware-simpleproxy)-CSDN博客…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...