当前位置: 首页 > 编程日记 > 正文

2017高级软件工程第1次作业

第一部分:结缘计算机

1.你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢?

说起来也是阴差阳错,高考填志愿的时候考虑的是当时最火的3个专业:机械、土木、电气。只知道哎呀这个专业好,有前途但却丝毫没有考虑自己是否喜欢这个专业。然后前三个志愿都没录上,第四个就是计算机,当时填的时候完全是瞎填的,因为我根本没想到前三个都录不上这种情况。其实说瞎填只是说我当时对计算机专业的认识有着严重的误区,以为搞计算机就跟电脑城里配电脑的一样或者跟黑客一样,熟悉各种硬件配置什么的。结果完全跟自己想的不一样……
  当时入学的时候,我还是对计算机有着浓厚的兴趣,因为感觉当黑客好厉害啊。我要学如何去黑别人电脑,这就是我当时的目标吧。至少,我入门的时候还是有目标的。当然和这些博主比,我觉得我还是有差距的。他们都是有着惊人的意志力,以及自己对自己职业规划的独立思考能力。我认为决定一个人能走多远的是一个人的品质、心态、性格这些从小到大潜移默化形成的东西而不是能力。所以,这些博主们的经验都很值得我们学习。博客G[1]的作者这句话我很喜欢:

人是这个世界最伟大的动物,原因在于,从生理上,我们其实相差不大,每个人都大同小异。但是,精神上,性格上千差万别,每一个人都生来具有无限的潜能。每一个希望不断改善自己,希望不断前进的灵魂都是伟大的。

2.计算机是你喜欢的领域吗?是你擅长的领域吗?

喜欢,确实喜欢。我这个人喜欢学以致用,用自己学到的东西,来解决自己生活中遇到的问题,这种感觉我很享受。擅长?我觉得兴趣是最好的老师,有了兴趣自然会努力去学,而这个世界上大部分的事情还没到拼智商的地步,所以努力了自然有回报,然后慢慢的积累就变成了擅长。所以我觉得我有兴趣,就一定会变得擅长。

3.你热爱这一专业吗?你对计算机的热爱是怎样的?仅仅是口头的吗?

我觉得我热爱这个专业,我的热爱可能跟我的性格有关系,我心里存不下事,我不喜欢问题,所以遇到问题我肯定第一时间解决,这也是跟计算机行业的特性相契合的。比如说,我改不完这个BUG是不会睡觉的。还有就是,我愿意为代码牺牲休息时间,包括节假日。我现在打开电脑,唯二的娱乐活动就是看视频、听歌。在我眼里,电脑是我的工具,而不是我的玩具。以上就是我的计算机的热爱。

第二部分:在计算机系学习

1.你对你的大学生活有什么想要吐槽的地方吗?你理想的大学教育应该是什么样子的?跟学校给你的有什么区别?比较你在中国大学的经历,你的老师和学校能做到和国外那样吗?如果不能,请分析一下为什么。

槽点还是蛮多的,说一个我最不能忍受的地方。很多同学,连基础的电脑硬件知识都不知道,买电脑经常被奸商坑。虽然,我们很多人都不是搞硬件的,但是连如何选择自己使用的工具都不知道,这要是放在别的工科行业真的是很荒唐的一件事。买个电脑回来马上装360、腾讯、百度全家桶,打开电脑后盖,连里面的元件连显卡都认不出来。虽然说可能学校也没开相应的课程,讲组成原理还停留在386的时代。但是作为一个科班的学生,连一点想了解自己工具的意识都没有,我觉得这是需要我们反思的。
  我理想的大学教育应该是紧跟着技术、理论的发展,少一些考试,多一些实践类型的大作业,我指的不是那种学生成绩管理系统这样的大作业……而是能解决自己生活中的问题、有自己的创意这样的大作业。并且能经常安排高年级的同学来解答同学们学习中的问题。学校给的就是什么考试都是笔试、天天做学生成绩管理系统这样的大作业、让外面的培训机构来给我们讲10年前的技术,然后鼓励去上培训班。我觉得想做到国外会很难。因为我们的学生才来大学都会觉得,终于可以放松了,并且缺乏自主学习的能力。

2.迄今为止,你写了多少代码,描述你做的最复杂的软件项目/作业。

到目前为止,大概有个2W行左右。做过的最复杂的项目,我现在觉得做过的项目在技术上都不复杂。大二的时候做过一个卖小龙虾的微信公众平台,这个项目复杂在开发这个项目的师兄做到一半就去实习了,老师就让我接手,但是当时什么都不会就直接硬着头皮做了,真的是什么都不会。。。。php、html、js、mysql、微信平台的API这些都不会,大概花了2个星期做了最简单的入门。然后就开始看项目代码,那个师兄的用的不是mvc的设计思想而是那种Php嵌入html的方式,会web开发的同学知道这意味着什么……真的是噩梦,看代码非常痛苦,改起来也很痛苦。印象最深的是当时为了修复微信支付的bug熬了2个通宵,看了鹅厂的代码、文档让我见识到了什么是规范吧。也算是为我打开了新世界的大门。结果这个项目正好赶上饿了么、美团抢市场的时候,最后甲方做不下去了,项目也就停止维护了,本来用mvc都已经重写了一半了,后来老师又让我去武大遥感的一位老师那里帮忙写js做数据可视化,就不了了之了。

3.科班出身和北大青鸟有什么区别?

我觉得最根本的在于基本功,虽然说我当时并没有意识到数据结构这种课有什么用,但是随着代码数量的上升,总会遇到一些问题需要数据结构来解决的,这个是躲不过的。而科班的学生说句难听的话,没吃过猪肉也见过猪跑,就算大学四年学的都还给老师了,最起码也还能记得概念的名称,知道怎么解决问题,我可以谷歌、看书来把知识补回来。而北大青鸟不会教这些基础课,更注重实践经验,但一味的追求实践经验也不是好事。这跟练功一样,你想练绝世武功,没有扎实的基本功很容易走火入魔。

4.速成的培训班和打基础的大学教育还有mooc之间有区别吗?

有些东西需要积累,无法速成。我当时想做web全栈,但是发现东西太多怎么办?着急没有用,着急只会搞的什么都学不精。有些经验,需要你自己经历了你才懂为什么要这么做,才能真正的理解精髓。而别人告诉你的经验却还是别人的。比如我当时看学长的php混合html的写法,我后来才真真切切的体会到了mvc的好处。而本科和mooc却是一个脚印一个脚印的走,短时间内看似培训班效率高,但从长远来说,培训班还是有相当大的短板,而这些短板都是要用时间来补上的。特别是现在很多培训机构看着深度学习很火就开设这类课程,但是我个人觉得,这个方向的门槛之高,别说数学基础,没有扎实的英文阅读水平连门都入不了。所以我很赞同博客E[2]的作者说的那样:

我觉得一个正常的程序员,是不应该去参加培训的。更何况,培训真的没有什么用。 多半都是想走捷径,不劳而获。 而若要好好走好职业道路。 在走出大学校门的那一刻,应该学会自我成长,自我完善。

5.学线性代数和概率论的时候,你是否有过这样的疑问“我们为什么要学这么多数学,这和我们的计算机有关系吗”,你现在是否还有这样的疑问?对这个问题,你有自己的解答了吗?那么其他学科呢?

当然有,我觉得很正常。因为人总是需要去撞墙才会成长。我记得当时老师不停的强调有多重要,可是呢以当时的视野根本不知道有多重要,唯一对这两门课的重要性的认识就是老师说考研要考这门课。确实,当时的计算机对我来说就是win32应用程序,黑框框,写个计算器。那时候确实用不到线代和概率,但是我现在不后悔,因为我以现在的视角能看到自己成长的轨迹我觉得这是一件很有意思的事情。因为我现在从事计算机视觉/深度学习方面的工作,线代是我天天都在打交道的东西,好在去年考研一年我把知识都补回来了。其他学科,我目前从事的工作暂时没用上,但是我知道有些东西是躲不过的必将是我成长路上必须攻克的难关,而这一切都是还之前欠的债。出来混,迟早是要还的。

第三部分:未来规划

1.对于你未来在IT行业的发展,你有什么样的梦想或者未来想从事什么样的工作?你准备怎样来规划你技术道路,职业道路和社会道路?

我的梦想就是进BAT,这真是梦想。就是因为这我才选择考研,因为一个双非学校的本科学历想进BAT太难了。我目前从事的方向很难,天天跟数学英语打交道。这也是我一直以来想干的事情,因为我本科从事的是web开发,门槛低,可替代性强,想成长成很难替代的角色需要太长的周期并且这个行业天花板比较矮。这是我的拙见,大家不要见笑。目前就是踏踏实实学知识,同时注重综合能力的培养,多尝试之前没尝试的东西。都说计算机这个行业吃青春饭,说实话我对自己35岁以后要干嘛也很迷茫,不知道什么适合自己。但是看了博客L[3]的大佬给的建议:

把自己对待遇和职位的那个目标放在心里,踏踏实实做好今天的事,炼好自己的内功,注重经验的积累和总结,等待一个能让你量变引发质变的机会,用你的能力抓住它不要放手,你会发现你的路就在前方,通往这条路的门不知不觉已经开了。功到自然成,水到渠成。

还是脚踏实地吧,想那么遥远的事情没有什么用。

2.实习经验究竟有多重要?你准备如何积累实习经验?你希望在企业内实习还是在实验室做项目?

实习经验能丰富自己的简历,开阔自己的视野,让自己见识到业界的工作环境,也能为自己找到喜欢的工作方式。听说我们实验室不让实习,所以这个问题我还不知道怎么办,如果可能的话肯定是想到企业内实习的。

第四部分:课程期望

1.你对这门课的期望是什么?你打算平均每周拿出多少个小时用在这门课上?你愿意为了一个你感兴趣的项目、或得到实战锻炼而付出更多时间和精力(包括熬夜)吗?

因为我本科就是软工的,所以我这门课程的重点在于实践而不是长篇累牍的经验式的知识。我希望能多一点新的东西,就像这个markdown一样,之前想学但是觉得没有学以致用的机会所以就索性没学。我比较喜欢这种在课堂上学到新技术,一边学一边用。熬夜是肯定愿意的,程序员是一种把咖啡转化成代码的神奇动物。

[1][https://news.cnblogs.com/n/531362/](https://news.cnblogs.com/n/531362/)
[2][ https://www.cnblogs.com/geniusalex/p/4928713.html]( https://www.cnblogs.com/geniusalex/p/4928713.html)
[3][ http://coolshell.cn/articles/4561.html]( http://coolshell.cn/articles/4561.html)


分析软件

Games(游戏)

游戏这个东西我觉得是刚需,因为中国学生的娱乐活动太少,而确实大部分游戏用户都是学生。现在基本上没有不付费的游戏,虽然有的宣称免费,但是往往比付费更花钱。现在游戏的生命周期往往取决于游戏模式,比如LOL这类的生命周期往往很长,因为你想在游戏中取得成就感需要花费很多努力,且开黑能带来很强烈的快感。但是像星际争霸2这种需要花费的努力太长,门槛太高对新手不友好。从事游戏开发的薪水确实很高,但是往往伴随着疯狂的加班,不停的迭代,维护。收获往往伴随着巨大的付出。

Mobile App (手机应用)

说起第一款使用的那肯定是QQ了,QQ可以说伴随着我们这一代人的成长。应用的盈利方式就是以友好的交互方式、新颖的创意来让用户产生依赖。比如QQ可以充值各种服务,微信这种虽然不赚钱,但是他相当于一个平台,有了大量的用户是绝对不愁盈利的。从事这类开发也很辛苦,但是比游戏行业要强,因为游戏会随时突然死亡,而一个让用户依赖的APP就算不火也是百足之虫死而不僵。
  现在APP市场需要的不是技术而是能解决市场痛点的创意,比如共享单车。这个东西确实解决了广大学生群体在面积巨大的校园里出行的困难。以及庞大的资本注入来抢占市场,还是那句话让用户产生依赖,同样的共享单车,那用户选的肯定是优惠力度最大、使用体验更好的。

Operating System(操作系统)

操作系统带来的影响是潜移默化的,你使用之初可能感觉不到它的好处,但是你换另外一款的时候你就各种不适应,比如很多人买mac第一件事就是装win。我觉得操作系统目前不存在竞争,因为有能力做操作系统的公司这个世界上就3家,微软苹果谷歌。就算是谷歌苹果想撼动win在工业界的地位估计也不大可能,因为代价太大也没有必要。这个世界可以没有谷歌苹果但是不能没有微软,否则,举个极端的例子,如果win明天消失,大家可能连钱都取不了。有人说win是旁门左道,正统应该是继承了unix血统的mac os x。确实从这个角度来说,win确实是旁门左道,因为win放弃了计算机最初的形态,用图形化界面的方式降低了学习计算机的成本,让全世界人民以很低的学习门槛使用计算机,给计算机界带来了一场革命,微软绝对比苹果谷歌都要伟大。而mac本来就是生产力工具,注意是工具而不是玩具。我承认在mac下写代码很舒服,效率很高,用户体验更好,但是苹果太贵了……谷歌在手机界混的风生水起,安卓确实也是一款伟大的操作系统。所以,这三家的用户市场基本上没有什么太大的交集,也不存在你死我活的竞争。

转载于:https://www.cnblogs.com/zkself/p/7533500.html

相关文章:

微软图表控件MsChart

转自:http://tech.ddvip.com/2008-11/122640479791375.html 昨天在网上看到了微软发布了.NET 3.5框架下的图表控件,第一时间抓下来看了一下,发觉功能很强劲,基本上能想到的图表都可以使用它绘制出来,给图形统计和报表图…

方案里最常用的集群拓扑图(包含:多机集群、负载均衡、双机)

1、san.JPG2、SAN集群.JPG3、不同楼层双机热备.JPG4、纯软双机.JPG5、纯软双机热备备份恢复2.jpg6、多机集群与备份.jpg7、负载均衡.jpg8、负载均衡之数据库均衡.JPG9、工控.JPG10、监控.bmp11、监控应用(SCSI).JPG12、容灾.JPG13、双机热备备份恢复1.jp…

基于最短路方法的生物序列比对问题研究

概述 作为生物信息学中的基本组成和重要基础,生物序列比对旨在找出两个或多个生物序列之间的相似性,发现生物序列中的功能、结构和进化信息。 生物序列比对在现实生活中有广泛的应用价值。从核酸和蛋白质序列出发,分析序列中表达结构和功能的生物信息&am…

NOI2003文本编辑器

problem 传送门 Solution 块状链表板子题…… 码了一下午,调了一晚上,代码重构了3遍,在终于过了。 还是太菜了。 移动光标的操作直接模拟即可。 插入操作,先将光标所在块分裂成两块,然后直接插入。 删除操作直接将边角…

spark编程基础--2.4函数式编程基础

foreach遍历操作 映射操作map,flatmap 过滤操作filter 规约操作 reduce,fold方法 拆分操作partition,groupedBy,grouped,sliding Scala入门:函数式编程实例WordCount import java.io.File import scala.io.Source import collection.mutable.Map object WordCount …

开始一点点写博客

今天被老樊问了几个基础的问题,都没回答上来!惭愧啊!所以决定用博客的方式来记录在学习中的问题以便好复习,增强记忆!转载于:https://www.cnblogs.com/MoShin/archive/2008/11/29/1343593.html

无人值守安装win2003+sp2的补丁

1. 无人值守安装win2003sp2的补丁<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />2. 思路&#xff1a; l 第一我们做把sp2的补丁集成到win2003的光盘中l 创建生成无人值守并加载到光盘中l …

构建安全的 ASP.NET 网页和控件

本页内容 本模块内容目标适用范围如何使用本模块威胁和对策设计注意事项输入验证跨站点脚本身份验证授权模拟敏感数据会话管理参数处理异常管理审核和日志记录小结其他资源本模块内容 Web 页和控件位于应用程序的防御前线&#xff0c;它们很容易受到蓄意破坏应用程序安全的攻击…

IDEA新建一个多maven模块工程(有图)

对于一些大型的项目来说&#xff0c;将项目的各个模块理清并进行管理&#xff0c;便于后续项目的维护&#xff0c;使用maven管理是很方便的&#xff0c;它可以很好的构建模块来设计项目的整体结构&#xff0c;对一些小型的项目不建议使用 1、新建父maven模块&#xff08;idea版…

windows10上使用一个tomcat部署2个项目

前言&#xff1a;目前想在本机部署2个项目&#xff0c;网上查了之后&#xff0c;写下本篇随笔 1、准备工作 2、操作方法 3、运行2个项目 1、准备工作 2个war包&#xff08;一个jprss.war和一个jenkins.war&#xff09; 1个tomcat环境 2、操作方法 第一步&#xff1a;复制tomcat…

spark编程基础--4.2在spark-shell中运行代码

启动spark-shell Spark2.1.0入门&#xff1a;Spark的安装和使用 通过spark-submit运行程序

不经历风雨,怎么能见彩虹!马克斯与我的不解之缘!

从***到站长总结经验&#xff08;让你IP飞速飙升的秘诀&#xff09;<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />第一章&#xff1a;站长的梦想&#xff01;&#xff01;&#xff01;接触网络比较早&#xff0c;但是真正学到…

centos安装pg以及pg配置ssl

https://blog.csdn.net/iteye_21194/article/details/82645389 https://blog.csdn.net/rudy5348/article/details/79299162 https://yq.aliyun.com/articles/187转载于:https://www.cnblogs.com/diyunpeng/p/10398642.html

使用sbt编译打包,spark-submit命令提交的详细步骤

Spark2.1.0入门&#xff1a;Spark的安装和使用 使用sbt打包Scala程序 该程序依赖 Spark API&#xff0c;因此我们需要通过 sbt 进行编译打包。 请在./sparkapp 中新建文件 simple.sbt&#xff08;vim ./sparkapp/simple.sbt&#xff09;&#xff0c;添加内容如下&#xff0c;…

Tomcat异常退出

tomcat正常运行期间&#xff0c;会出现这样的报错&#xff0c;于是在网上搜了一下&#xff0c;发现有前辈&#xff0c;已找到解决办法&#xff0c;碎不甚明白其中缘由&#xff0c;但先记下&#xff0c;日后深研究&#xff1a; 我的机器的报错内容&#xff1a; SEVERE: Error pr…

[转载]前端工程师应该关注什么

克军发的一张图&#xff0c;汗死我了。http://farm4.static.flickr.com/3025/3114605967_248a0da171_o.png 转载于:https://www.cnblogs.com/cly84920/archive/2008/12/17/4427051.html

组策略分发软件全攻略

组策略分发软件全攻略 在规模比较大的网络环境里面&#xff0c;为了对服务器和客户机上的软件、系统补丁进行集中统一的管理&#xff0c;我们可能会用到SUS、WSUS、SMS等。SUS、WSUS管理系统更新&#xff0c;不在本文讨论&#xff0c;请参考其它相关技术文档。虽然SMS功能较强大…

Saiku二次开发获取源代码在本地编译(五)

关于Saiku的二次开发&#xff0c;在本地编译然后启动自己编译好的Saiku服务 Saiku是开源的&#xff0c;从github上能下载源代码&#xff0c;本例中的saiku源码也是从github上找的&#xff0c;然后自己改了一些pom.xml&#xff0c;以及其它调整。 当前提供的saiku版本为 3.9 一、…

As3.0 一些好书连接

优秀RIA书籍教程推荐与交流平台 http://www.riabook.cn/ 这里有很多不错的书。希望你们有帮助 转载于:https://www.cnblogs.com/guoyiqi/archive/2008/12/19/2069462.html

spark编程基础--5.1RDD编程基础

RDD创建 1.从文件系统中加载数据创建RDD 2.从分布式文件系统HDFS中加载数据 3.通过并行集合&#xff08;数组&#xff09;创建RDD RDD操作 1.转换操作 filter(func) map(func) flatmap(func) groupByKey() reduceByKey(func) 2.行动操作 3.惰性机制 所谓的“惰性机制”是指&…

JMeter的安装和使用

开始学习JMeter&#xff0c;网上资源虽多&#xff0c;不如自己总结的更有意义。 1. JMeter 的安装&#xff1a; 首先要安装java&#xff0c;这个直接去官网下载安装然后添加环境变量即可https://mirrors.tuna.tsinghua.edu.cn/apache//jmeter/binaries/ &#xff0c;下载JMeter…

C# 3.0 —— 扩展方法

扩展方法是C# 3.0新加入的特性&#xff0c;允许我们在不改变源代码的情况下扩展&#xff08;即填加&#xff09;现有类型中的实例方法&#xff0c;也给我们提供了另外一种扩展类型行为的方法(其它的方法为继承、组合、反射)。 下面我们来看一个代码示例&#xff1a; classProgr…

Melkman's Algorithm

http://cgm.cs.mcgill.ca/~athens/cs601/Melkman.html https://maxgoldste.in/melkman/ 转载于:https://www.cnblogs.com/noryes/p/10406873.html

HDU1051Wooden Sticks

Wooden Sticks http://acm.hdu.edu.cn/showproblem.php?pid1051 #include<stdio.h> struct stick{ int w ; int l; int flag;}wood[5000],temp,r[]; int n ; //排序// int partition(struct stick r[],int first,int end){ int ifirst,jend; while(i<j){ while(i<…

spark编程基础--5.2键值对RDD

键值对RDD的创建 常用的键值对转换操作 reduceByKey(func) groupByKey() keys values sortByKey() mapValues(func) join combineByKey reduceByKey(func) reduceByKey(func)的功能是&#xff0c;使用func函数合并具有相同键的值 groupByKey() 上面得到的wordCountsWithReduce…

禁止选中文本事件

由于经常会些写错&#xff0c;为了以后节约时间&#xff0c;记录下&#xff1a; obj.on(click,.arrow,function(ev){console.log(click);ev.stopPropagation();ev.preventDefault();var rel $(this).attr(rel);if( rel && rel < totalPage && rel>0 ){g…

一套外企的数据库设计面试题

最近发现园子里面关于数据库方面的文章比较多&#xff0c;正好我也是一个喜欢凑热闹的家伙&#xff0c;那就跟着烧一把火吧。^_^ 这是前阵子一个朋友面试外企的一套关于数据库设计的试题&#xff0c;有兴趣的朋友不妨一试。 Part I 工厂在定义一个新产品的流程如下&#x…

持续集成(一)为什么我们迫切需要持续集成

摘录自&#xff1a;http://blog.csdn.net/kkkloveyou/article/details/53875987 为什么我们迫切需要持续集成&#xff08;Continuous Integration&#xff09; 持续集成&#xff08;Continuous Integration&#xff09;&#xff0c;也就是我们经常说的 CI&#xff0c;是现代软…

spark编程基础--5.3数据读写

文件数据读写 1.本地文件系统的数据读写 1&#xff09;从文件中读取数据创建RDD 2&#xff09;把RDD写入到文本文件中 2.分布式文件系统HDFS的数据读写 3. JSON文件的读取 JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。它基于ECMAScript规范的…

试用最新版本的live writer发一篇日志看看

之前装Vs2008想弄WPF的时候&#xff0c;根据网上的说明&#xff0c;找VS2008的SP1&#xff0c;windows SDK的时候颇费周折&#xff0c;虽然说微软上面可以直接下&#xff0c;但是我找了半天才找到&#xff0c;总是觉得麻烦。现在就把一些WPF的相关前期准备软件的地址发出来&…