Shadow
You are the Shadow to my light.
自己大概就是个程序员了.
我一直是学理科的, 语文, 政治这样的科目分数总是很低.
不过偏偏我又是个内心情感(戏)比较多的人, 对 "诗和远方" 保持着一抹憧憬.
可以算是个文理交叉生吧.
OI退役之前一直在CSDN上写博客. 很弱, 退役后也就荒凉了.
纠结了几天决定新开一个博客, 有时间了写写感受, 或者整理一下知识, 拾一拾.
所以就找了这么一个技术气息不是那么浓郁的平台.
大二下学期软件工程第一次作业内容
第一部分: 结缘计算机
毫不避讳地说, 我选择计算机, 做一个程序员, 缘于喜欢打游戏. 从小学到初中痴迷电子游戏, 甚至一度着了 "电子竞技" 的魔. 好在还算机灵, 学习成绩看得过去, 而初三时决定高中要走学科竞赛的道路. 河北省在当时是信息学竞赛的弱省, 所以一直到高中开学学科竞赛宣讲之前我完全不知道还有 "计算机竞赛" 这回事. 我一直很喜欢物理, 当时一直觉得自己以后是要搞物理的, 物理竞赛也提前学了一些. 但是发现有计算机竞赛时, 便果断选择了, 起初是两科一起学, 但是后来时间实在无法调解了, 放弃了自己坚持了很久的物理, 当时还在QQ空间发表了一篇日志(仅自己可见):
**物竞, 再见, 不再见 ** 2015.1.11
这两天本身内心就不宁静,原因其一是一直困扰我的,物理竞赛的问题。曾经那么多方面的催促,让我纠结了很长时间,到底选择哪个。
最终是下了决心,要坚定学OI,迫不得已就放弃物理。当然我也在这次月考前夕,感到自己因为纠结这个,状态很是不好。所以就说了一个借口(或者是让自己安心的东西)性的:如果进不了年级30,就放弃物理。按说我以为还会退步,当真是感觉到那段时间状态不好。不过貌似是我努力的改正,最后考了年级24,让自己一下子哭笑不得。
第二件让我心神不宁的事,就是听说要文理分班,可能面对一个省理被拆散的危险,或者是组建一个竞赛班。让我很是烦恼,不想这样子。但也没办法,为此而努力吧,但这终究是我自己想的,其他人不知道有没有这样的感情。
我知道,周六的这天,可能是我解开这忧虑的时候。到来了。
去找韩老师,我知道,找不找他都是一个结果,他会支持我的想法,我感觉这真的是一个好导师,就是自己,太喜欢电脑了。喜欢玩,所以喜欢OI,我不知道我的决定是不是对的,就这样,我跟物理竞赛saygoodbye了。
现在,内心确实很复杂,从今以后,就专心于OI了。另外,高考课还需要我的努力。毕竟,竞赛被改的不成样子,不确定性太大。但我就是不甘心,不甘心放弃物理,不甘心像如此之多的人一样沉沦于高考的知识中,尽管我不能在高考知识中拔尖。另外还有赤裸裸的现实利益的冲突,物理确实很“吃香”,OI,在中国,好像什么都不是,跟物理比起来。即是说,在国际上,OI是第一位的,但河北省的实力,二中南校区的实力,确实是一个问题。
从今,就要专注于高考和OI了,或许也是一件好事。既然已经放弃了物理,此时此刻。就不想那些了,坚坚定定的把OI学下去。OI,靠自己的要更多。而且对于我来说,我也不要只学OI的东西,我想赶紧找到自己理想的专业,现在就行动起来。
不过,在这无奈的教育体制下,一切的前提,都是文化课,知道它以后没什么用,只是好大学的入门券而已。还是要学,还是要努力地,牺牲健康地去学。
不想了,写了也不少了,该畅畅快快的,去进行新的生活了。
就这样我接触了编程, 学习C/C++, 学习算法, 学习数据结构, 参加NOIP. 最后还是因为爱玩的缘故, 没能打入NOI. 但是省赛的成绩已经足够让我顺利的进入武汉大学计算机系. 虽然OI之路我没完整走完, 但是也让我的代码能力走在很多同学之前. 不过看了灵感之源的这篇博客, 也只能自愧不如.
现在我仍然爱玩, 但是我也喜欢"乱搞". 其实在学OI的时候就是这样, 有时在同学们学算法的时候我会"走神"一段时间, 去配置个新软件, 或者是玩玩双系统, 搭建一下博客之类的. 也因此对Linux有一点点操作基础.
第二部分: 在计算机系里学习
或许是我进入大学之前太天真, 或者说是高中老师们描述的大学生活过于 "高尚" 和 "纯净", 真实的大学生活跟我进入大学之前设想的有一定差距. 但是这没什么不好的, 人的适应能力是很强的. 之前选择武汉大学也是有 "武汉大学计算机系很强" 的认知的一部分作用的, 但是来了之后发现好像并不如华科. 不过, 我本身也不是一个多么热爱学习的, 所以武大优雅的环境还是让它在我心中稳胜华科的.
至少在计算机专业 ---- 这样一个实践性很强的专业, 我觉得大学应该提供更多入门级实践的机会. 而且这个实践应该跟进时代节奏 ---- 这个专业的发展潮流也是很快的. 当然, "师傅领进门, 修行在个人". 至于国外的教学模式, 没有认真了解过, 无从比较, 也没有什么想法.
至今为止写过的代码总量有几万行, 之前用python统计了一下大学以来的代码总量(高中算法竞赛的代码都没有保存在本地), 共3万行, 不过大都也是算法竞赛的代码, 实际工程代码总量几乎为0. 所以只能说是有一点点编码基础, 但是对于工程的方法和实践的了解甚少.
上学期数据结构大作业写的114查号台, 用了C++的类, 模板, 指针, 也不过几百行. 并且没有太大的实际使用价值. 大学期间也接过一些外包, 但都是很简单的程序(比如大学生的课程作业), 代码量也都在千行以内.
总而言之, 工程能力很差, 也没有碰上合适的入门的项目练手. (当然, 自己也没有真正认真地去找, 一直忙一些零零散散的事情.)
第三部分 未来规划
到现在还没能明确方向. 服务器? 嵌入式? 桌面? iOS? 前端?
甚至对于未来有哪些方向, 哪些事情可以做都还没有很明确的概念. 很有可能是自己现在了解的还太少, 也没能选出一条道路认真走下去.
对于遥远的未来还没有规划, 但是眼前的还是比较明确的, 至少应该多涉猎一些, 然后知道自己有哪些选项, 最后再做出选择. 所以这一学期选了比较多的专业课, 而且都是软件平台的. 因为个人对于硬件兴趣不大, 所以诸如 EDA 这样的课程就没有选. Java, C#, 软件工程, 模式识别. 上学期也去了一个老师的实验室, CV方向的, 但是当时基础实在是差, 中途而费了. 这学期抓紧用这些课程催促自己学习, 以尽快做出抉择.
第四部分 课程期望
期望当然就是之前提到的 "入门级" 实践. 能够让我接触到工程开发领域, 并充实自己的实践经历, 同时能够对我有一定的催促作用.
除了上课时间之外, 课后每周愿意拿出至少3小时来进行开发实践, 自学等. 而如果是一个感兴趣的项目, 就上不封顶了.