我的程序人生——初识代码,从学好C语言开始
我正在参与CSDN《新程序员》有奖征文,本次活动的地址为:《新程序员》有奖征文
文章目录
- 从学好C语言开始
- 稀里糊涂就进入实验室
- 从烙铁杀手到主要程序员
- 竞赛中的坎坷
- 大学中我的建议
- 1. 绩点很重要
- 2. 从事本专业或许是你最容易的选择
聊聊我自己吧,这一路是怎么走来的。
如果你有兴趣,我讲给你听。
从学好C语言开始
2011年,刚上大学的时候,大家还是很迷茫的。特别是大一的时候,面对十几门课程的时候,完全没有想法。
也不知道哪个重要,哪个不重要。唯一的做法就是雨露均沾,学习时间平均分配。
其中有一门课程就是《C语言程序设计》
,刚开始学习的时候,也是一脸懵逼。
这是啥?这有啥用?这用来干啥?
一个班四十来号人,基本上都是这个状态,面对老师的提问,一脸懵逼。
唯一与众不同的是,我们的丁同学,面对老师的提问,对答如流。
我们都惊呆了。
后来,私下沟通后,再咨询班助、老乡等学长学姐后,才逐渐了解。
- 课程有主次,想要考研保研的,按学分排;
- 想要毕业找好工作的,专业课优先;
- 除了专业课之外,毕业工作的很多东西,课堂上是不会教的,那么就需要自学。
从此,学习有了目标。当时的我,因为自身和家庭等因素,并不想考研,只想毕业后找个好工作,高薪的工作。
所以,我就很务实,专业课学的非常认真,课前预习,课中学习,课后复习。
我是电子信息工程
专业,这里稍微写几个当时的专业课。
- C语言程序设计
- C++语言程序设计
- 线性电子线路
- 非线性电子线路
- 逻辑与数字电路
- 计算机原理
- 微机原理
- 单片机原理
- 信号系统
另外,别忘了数学基础
- 高等数学
- 线性代数
- 数字信号处理
- 数据结构
有些课程记得不太清了,按记忆简单写了一些。这些课程,明面上用的多的是C/C++
,顶多再加上一个单片机
吧。
但是,并不代表其他课程不重要。他们给你构建了软件设计的底层逻辑,让你有一个稳健扎实的基础。
这就是科班出身和非科班出身的具体差别所在。那些非科班出身的,经过培训出身的程序员,很难有这么长的一段时间给你打基础。
扯远了,回归正题。
当时认识到《C语言程序设计》
的重要性的时候,课余时间就开始花时间学习。世上无难事只怕有心人,很快就进入状态了。
课堂上面也不再是丁同学,一家独大了。我小康同学也能偶尔露把脸了。
一堂课,分两节。第一节讲理论(PPT),第二节实操,自己撸代码。
当时一个班级40个人,大约四分之一有10个人是女生。女生学号先排,男生再排。我学号14,比较靠前,所以在机房里面,我对面的电脑位置是女生。
可能是天赋不错,也可能确实有用心和花时间了,每次实操我都很快就做出来了。
但是,对面的女生就不行了。不一会就哀号连连,为什么编译报错,为什么运行不出来,老师快来帮我看看,康XX过来帮我看看。
来了来了来了,我帮你手把手看,我帮你一个一个看。我现在的女朋友就是其中一个,当时我也不晓得她啥时候看上我了,也许就是这时候吧。
咦,大家都说程序员,工科生,谈恋爱难,真的难吗?
稀里糊涂就进入实验室
当时大学期间的学习习惯和自律性,确实还不错,应该是高三的习惯顺延下去的,游戏也打的很少。
就这么学到大二的时候,几门专业课都学得比较拔尖。
然后就稀里糊涂的被当时教《电子线路》
的陈老师邀请加入他组建的实验室。
应该每个学校都有少数几个这样的老师,
- 他相对年轻,富有拼劲
- 他要求严格,教学风格独树一帜
- 他有目标和追求,下课不会马上回家,而是常呆实验室和或者教研室
当时被这个富有好评的老师认同,心里还是非常开心的。
也很果断答应了他几个要求:
- 加入实验室后,要经常来实验室
- 大学四年不能去其他实验室
- 实验室交代的任务要坚决完成
这一个答应,直接决定了我大学后面几年的道路。
从烙铁杀手到主要程序员
毕竟我的本专业是电子信息工程
,从嵌入式硬件开始,到嵌入式软件。最后软硬件通吃。
刚开始加入实验室,也是按照标准流程走
- 原理图设计
- PCB画板
- 印刷、腐蚀、打孔、焊接
- 代码编写和调试
一条龙到底,我很快就发现,我唯一的爽点在最后一步,代码编写和调试。
前面几步让我头疼万分,没有半点兴趣。
特别是焊接,老是焊不好,追求完美的我会跟它死磕到底。最后的结果,不仅是焊盘掉了,而且连烙铁都嗝屁了。
一度被陈老师戏称烙铁杀手,但因祸得福。
这也直接导致我后续工作重心的转移。直接到了最后一步,代码编写和调试。
从此我走上了人生的快车道。单片机、嵌入式、Android App等等,自学成才,逐渐成为实验室的主要程序员,一线码农。
这里又提到了一个关键词:自学。
不要以为加入一个靠谱的实验室,榜上一个靠谱的老师或大神,你就可以高枕无忧了。不,你错了。
大概率你都要靠自学;到哪你都要靠自学;不花钱的你基本都要靠自学。
原因很简单,老师和学长学姐大概率是不会的,就算会也没时间手把手教你,能偶尔帮你回答几个问题,就很不错了。
这时候或许就有童鞋发话了,那我为啥还要待在实验室,都是自学,在宿舍,或者去图书馆,不是更加自由,不受限制。
话是没错,但是实验室有两个好处
- 环境和氛围,近朱者赤
- 资源和眼界,项目资源丰富,见多识广
所以,总而言之,有利有弊。没有绝对的好,只有相对的好。
竞赛中的坎坷
大学期间完成了不少陈老师交代的任务和项目,项目数一只手数不过来。
还发表了一篇论文,在国内的核心期刊《信号处理》。
还算不错,那时候的学弟学妹都喊我师兄~
除此之外,自己也参加了不少竞赛,那时候我参加的竞赛的也是抱有功利心。
- 是因为竞赛拿奖,学院有钱拿,综合素质分能加分
- 以后毕业找工作,简历加上一条,某某比赛省一等奖/国一等奖,那可以增色不少
功利心没有错,使人发奋上进。功利心也有错,使人蒙蔽了双眼,不遵从本心。
这就使得我在竞赛的路上并不顺畅,走了弯路。
以大学生电子设计竞赛
为例,我第一次参赛选题的时候,不是问我自己喜欢哪类题目,而是问陈老师,哪类题目容易拿奖!
简直太功利!我至今想起来都懊恼不已。
当时,陈老师和实验室擅长“电源类”题目,对该类题目比较有经验。我也就从善如流,按照“电源类”题目进行准备。
但是其实“电源类”题型并不适合我,该题型偏硬件,只有简单软件辅助。难以发挥我的长处。
我适合的是“仪器类”和“控制类”。
如果我当时遵从本心,按照重在参与、玩的开心的想法参加比赛,选择“仪器类”或者“控制类”的题目,准备比赛的话。我可能会玩 的很开心,可能也会获得更好的名次。
还有一点是不要急,心态要稳。我第二次参赛的时候,选了仪器类,这次都很稳,很顺利,做的很快也很出彩。
但是,还是被坑了。
在校内老师筛选的时候,其他基本没毛病,就一个很简单的指标有问题:峰峰值,我的峰峰值只有仪器峰峰值的一半。
我当时就蒙了,怎么可能,马上就要提交封箱了,赶紧改个代码,结果*2,然后提交封箱。
最后到了福州测评的时候,一测,其他基本没毛病,就一个很简单的指标有问题:峰峰值,我的峰峰值是仪器峰峰值的两倍。
我认真一看,又生气又懊恼。什么原因呢?
原来是输入源的问题,学院老师输入的单极性,但是题目要求和福州测评是双极性。我自己自测也是双极性。
原因是学院老师搞错了,而我因为时间紧,心态没控制住,没有追根究底,病急乱投医,结果瞎*2。
当时的我坐在测评的位置上,呆若木鸡,堪称绝望。
顺带说几个,我认为含金量比较高,值得参加的比赛
- 大学生电子设计竞赛
- 大学生蓝桥杯程序设计大赛
- 大学生飞思卡尔智能车大赛
- 大学生ACM程序设计大赛
- 大学生数学建模竞赛
大学中我的建议
发现不知不觉,已经好几千字了。
夜已深,本博文就在这里收尾吧,最后再给几个建议,给如今的在校大学生。
1. 绩点很重要
简单的说,成绩还是很重要的。
不要因为竞赛和项目,耽误了你的成绩,至少别挂科。
别听别人说的,不挂科的大学不圆满,狗屁,自欺欺人。
原因很简单:
- 找工作的,大公司都会看你的大学成绩单
- 考研保研的,那绩点就更不用说了
2. 从事本专业或许是你最容易的选择
本专业,我是指理工科专业,从事研发类岗位,不限软件研发、硬件研发、机械结构研发等。
大学中很多同学一开始不愿意从事本专业的开发工作。大概有一半以上的人不愿意。
因为嫌开发工作单调、嫌开发工作辛苦、嫌开发工作天天对着电脑,嫌开发工作掉头发。
所以,大四毕业找工作的时候,不少的同学想着做销售、做管培、去考公等等。
但是这些工作真的好做吗,销售真的好做吗。大家都说销售赚钱,但赚到钱的终归是少数,大多数都是炮灰。
现实中是,很多非理工类专业的人想转行到IT行业做开发。
这真的是:围墙外的人想进来,围墙里面的人想出去。
有不少同学,毕业后找工作,绕了一大圈。
突然发现,从事本专业是他最容易的选择。特别是男生。
因为是科班出身,如果有不错的绩点,再稍微修饰一下的项目经验,五千起步的开发工作(厦门城市),并不是很难。
而且工作只要对着电脑敲代码,不用到处跑,不用到处碰壁,不用风餐露宿。(同学原话)
所以,毕业半年到一年多之间的时间里,陆陆续续又有不少同学转行到软件开发里来。
所以,我给这些类似同学的建议是:不要一开始就排斥,不要一开始就否定,既然到最后都要端着碗说真香,那还不如中间多做一点尝试,深入一些尝试,结局会更好呢
本博文就聊到这,下次有时间,我们接着聊。
后面的故事更精彩。
觉得好,就一键三连呗(点赞+收藏+关注)
我的程序人生——初识代码,从学好C语言开始相关推荐
- 程序人生 | 谁动了我的代码?
已经夜里十一点了,周锦峰仍端坐在办公桌前,盯着屏幕上的代码死命地挠头. 明天就要上线了,代码却依然没有完全通过.周锦峰很疑惑,明明上周五刚刚做了集中测试,当时全都没问题的,按理说这周代码的改动也不多啊 ...
- 20篇高质量程序人生文章分享,做开发不仅仅只有代码
我一直觉得,我们做开发,不应该只有代码,合上公司的电脑脱离了公司的产品需求就脱离了程序,而应该结合软件的程序思维去更多的思考我们所处的生活和空间,从而指导自己面对更多的未曾见过的人与事,这可能就是我理 ...
- 【程序人生】一个程序员不敲代码改写专栏了,三个月收入……
❤️欢迎订阅专栏<程序人生>,分享职业路线,职场干货.仅前50名免费❤️ 道阻且长,行则将至 前言 哈喽,大家好,我是一条. 2021-04-24,我发布了这篇<是的,我离职了!&g ...
- 程序人生 - 开发程序不写代码,而是靠拼图?
[导语]:Blockly 是 Google 开源的基于 web 的可视化程序编辑器,用户可以将一些定义好的图形块拼接在一起,用来构建应用程序. 简介 Blockly 是一个向 Web 和移动应用程序添 ...
- SegmentFault 技术周刊 Vol.21 - 程序人生(二):2016 这一年
在第 18 期社区周刊<程序人生>1 中,我们汇总图灵访谈.SegmentFault 内部程序员访谈.社区开发者的编程之路和工具利器等,分享 2016 这一年里,社区开发者们的日常.其中提 ...
- 一名中专生的坎坷程序人生
现在IT界流行写自传(不要嘲笑我,我是跟着潮流走.布什总统开始伊拉克战争的那句经典:Let's go).我也以我的程序人生写一写我的程序人生之路吧(各位前辈,不要扔鸡蛋),以作为自勉.虽然我还是一名c ...
- 程序人生路上的新阶段
引言 不知不觉中,大学时光已经过去了三分之二,我从大学才开始接触编程,刚接触的时候深感计算机语言的奇幻.对于Java语言的"万物皆对象",我更是十分喜欢.中国道家文化里就有&quo ...
- 程序人生:大学十年——林锐
程序人生:大学十年--林锐 作者简介:林锐,男,1973年2月出生,博士.1997年在浙江大学计算机系学习时获浙江省第五届青少年英才奖(少年.学生组)一等奖.现为上海贝尔有限公司项目经理.高级研发工程 ...
- 【程序人生】:程序员练级攻略
月光博客6月12日发表了< 写给新手程序员的一封信>,翻译自< An open letter to those who want to start programming>,我 ...
最新文章
- iovec结构体定义及使用
- java中的Queue队列的用法
- 漫步最优化二十七——二次插值法
- zoj 3629 Treasure Hunt IV
- matlab除法不对,matlab中除法的使用,错误使用 / 矩阵维度必须一致
- hp台式计算机u盘启动设置,hp惠普品牌机设置u盘启动教程
- 单模光纤最大传输距离为多少_单模光纤传输距离是多少?
- 新华三智慧计算联盟,集结!
- Excel数值函数(3):对“自动筛选”的结果求和、平均值、极值等
- Linux CentOS(常用命令)
- 安装包制作工具NSIS (NullSoft Scriptable Install System)
- 程序员把妹指南之电脑配置篇
- 昆明世博园装mysql_昆明世博园太美丽了
- C# 建一个Windows 服务 定时发邮件
- Swift基础入门知识学习(12)-枚举(列举)-讲给你懂
- linux服务器网卡重启后会还原,详解CentOS重启后resolv.conf被重置的解决方案
- 新浪微博iOS客户端架构与优化之路
- IBookReader初体验
- 债市、股市、汇市、利息四者之间有什么样的联系?
- 重建 nextcloud 索引,通过非 nextcloud 客户端(手机、PC、网页端)途径放入 nextcloud 目录的文件
热门文章
- 阿里开源新一代单元测试 Mock 工具!
- 关于《Robust outlier detection based on the changing rate of directed density ratio》的阅读笔记
- Web前端HTML+CSS全套(1~20)
- AWS 中文入门开发教学 28- 链接Rout53和freenom - 设置托管区(Hosted Zone)和名字服务器(NS)
- win10输入法频繁自动中英文切换的问题
- TI Sitara系列AM4376/AM4379 ARM Cortex-A9高性能低功耗处理器设计的工业级核心板
- 「快学springboot」SpringBoot多环境配置文件
- 中兴推“小兴看看”,诠释智能家电的真谛
- centos6.8经典实用大全、教程
- python视觉识别库_机器视觉、模式识别库汇总