软工第一次作业:阅读与准备作业
-
这个作业属于哪个课程:<课程链接>
-
这个作业要求在哪里:<作业要求链接>
-
我在这个课程的目标是:希望能多了解一些软件相关的知识,拓展自己的知识领域,为以后发展做更充分的准备
-
这个作业在哪个具体方面帮助我实现目标:我想自己能通过这次作业,对自己一些缺点,不足有更清楚的认识吧。
1.自我介绍
我的博客地址:https://home.cnblogs.com/u/xiaonannanbuchengxian/
我叫罗火胜,一名来自计算机科学与技术专业的学生,相信从名字也看得出来,小时候因为被算出缺火,就在名字里添了一个‘火’字。当然了,由于火胜,朋友们都喜欢喊我‘火神’。
要说作业中提到的‘本事’,额~美食、睡觉、玩王者很厉害这些不知道算不算。哈,当然了,前面是一些开玩笑的话拿不上台。其实吧,挺热爱运动的我这个人。比如军训吧,我就觉得很好玩。爱运动这是自己的天赋一种吧,从小到大都喜欢。而且运动的时候有着音乐的陪伴那是再好不过了,喜欢听一些古风,电音之类的歌曲。
2.阅读与思考
(1)回想一下你初入大学时对你所在专业的畅想
当初你是如何做出选择你所在专业的决定的?
我当初就是简单的想学编代码、做软件、黑客啥的,看这个计算机科学与技术挺像具有我所需要学的知识,并且想着现代IT不是挺符合时代的吗,就直接选了这个专业咯。
你认为过去一(两)年中接触到的课程是否符合你对你自己所在专业的期待,为什么?
我认为五五开吧,因为有编程,只要入了门自学也能差不多可以,但是课程还多出来了什么高数、大物、形政、近代史,额~这是些什么东西。,但没办法呀,只有加紧努力的学了。
你觉得你所在的专业是你喜欢的领域吗,它是你擅长的领域吗?
入学之后才知道自己专业是朝嵌入式方向发展的,说实话,不太喜欢。但是老师也说了其实以后工作软工和计科没太大区别,那我也就安心的学习专业知识了。擅长肯定是不擅长的了,大学之前我就没怎么用过电脑,额~敲代码速度还是一个问题呢。说到这了我就不得不感叹一句,感谢陈老师的这门课,他让我学习到更多专业知识、社会知识,作业也让自己的敲代码速度提升了。
将来你会选择从事和你专业相关的工作吗?是的话给出你想去的城市、公司和岗位,否的话给出原因
从事和专业相关的工作那是肯定的呀,深圳成都都可以,华为腾讯特别想去,做软件研发。
(2)对照前人们走过的路和描述未来发展,现在的你
自我感觉你已经具备的专业知识、技能、能力有哪些?已经写过的代码量是多少?描述你做的最复杂的项目/作业。
自我剖析感觉现在自己真的挺废、烂的,大一基本上是水过去了,只是仅仅初步了解了一些专业知识,该如何写代码,感觉还没什么技能。写过的代码顶多才400行吧。嗯~上学期的程序设计做了‘一个打飞机游戏’,几百行代码,感觉非常难。我太难了。
离成为一个合格的本科毕业生,在专业知识、技能、能力上还差距哪些?
专业知识:才学完大一的知识,感觉仅仅接触了皮毛,连嵌入式的概念都还不清楚呢。
技能,能力:还需要大量啃技能书,提高代码量,毕竟实践是检验真理的唯一标准。
(3)目前是一个人生选择的十字路口,考研、工作、考公、出国,不同的选择在大三就有不同的努力方向。而无论考研还是工作的每条路径,也有许多不同的分支。
对照以上你阅读的前人们的经历,你的选择是什么?
从科班大佬的博客中我发现了自己的一些问题——大一浑浑噩噩的过了、基础专业知识薄弱、无自学方法。所以首先我选择考研,增加自己的专业竞争力。
在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
优势就是能更加深入了解专业,到了社会能更快就业。劣势也显而易见,别人多出你三年工作社会经验,可能在人情世故方面领先你一步。但是我相信以及材料中也提到的自身能力更为重要。
针对你的选择,你给自己的大三设定的规划安排是什么?
大三开始就需要为考研做准备了,曾听了一次考研讲座,曾提到一些人在要考研之前的半学期才开始慌忙准备,那你为何不在大三甚至大二都开始为考研做准备了呢。
你对于实现自己的梦想已经做了或者计划做什么样的准备?
现在只有计划,就是大二把专业基础打好,大三就开始为考研做准备,这就有点像"高中要高考,大学还是要考,但这是比高考还要严肃的考研"。
3.有质量的问题
鉴于自己的编程经验不多,于是问题就是16章的问题。
一、作者说“不但大众不喜欢创新,甚至连创新者自己也不例外”,还说”一般民众不喜欢创新”。甚至举例——假设你发明了电报,创办了电报公司,并花费毕生精力建起了覆盖全国的电报网。这个时候有个年轻的发明家上门推销他的创新电话。我认为这个说法不对。
我认为大众应该是喜欢创新的,如果大众不喜欢创新,如今提倡鼓励创新干嘛,创新不就是为了提升民众的体验吗?(参考<改革创新 奋发有为><创新科技+群众喜爱><创新讲政策 群众喜欢听>)创新者如果不喜欢创新,为什么还叫‘创新’。再说举的例子,你想一个发明了电报,创办了电报公司,并花费毕生精力建起了覆盖全国的电报网的人,他是什么样的人。他做了这么多的事,实现这么多的成就,如果他是热爱创新,那当他看见一个更好的并更能使时代进步的创新出现的时候,他那时候是不是该欣慰,高兴,而不是作者所说不喜欢。当然,退一步说,如果他是为了赚钱而做了这么多事,那当他看见一个似乎更赚钱的途径(电话)后,他是直接抹灭还是顺便接受并充分利用而赚更多的钱,这不是显而易见的吗。因此作者的例子是不成立的。(16.1.2)
二、我对书上作者所说“70%的创新者说他们最成功的创新是在他们的拿手领域之外发现的”这个70%的比例有些怀疑,的确是有一些创新不是专业领域的人发现的,但是有70%这么多吗,在网上仍然没有答案。我相信大部分创新正如作者所说“要成为领域的专家,才能创新”。(16.1.5)
三、不太理解作者所写‘现实生活中,好的主意不一定会赢’这个观点,书中提到‘那怎么样才能让别人喜欢(至少不痛恨)你的创新呢?’,我就想,自己创新出来的东西肯定是有优点的啊,能提升用户体验,不然怎么能称之为‘创新’?既然你的主意是好主意,那能称之为好主意的也必须是有价值的。所以好主意应该就是能让人接受的主意。(16.1.3)
四、书中“迷思之六:技术的创新是关键”这个说法难道不对吗?为什么还要是‘迷思’之一呢?技术的创新是关键这个说法没错啊。这只是说了技术的创新是关键,并没有说是全部,创新只是关键的一部分。(参考<技术创新成关键><2019 SNEC光伏技术趋势:技术创新仍是关键>)(16.1.6)
五、我对书中”创新的时机“仍有疑惑,为什么创新还要看时机呢,我查了资料,有这些说法(机会是留给会创新的人,只有创新才能把握机会)(详情参考机会是留给会创新的人,只有创新才能把握机会),因此我理解为“创新创造机会”,而书中为什么还要说创新还要看时机呢?(16.2)
4.了解和调查源程序版本管理工具
1.GitHub
优点:
1.在协作上,GitHub 是开源协作方面的首当其冲的选择。
2.GitHub 拥有全世界最大数量的公共开源项目。
缺点:
1.需要对编程有一定的熟悉,入门需要一定时间和耐心。
2.GitHub 的 Free Plans 允许托管无限的公有代码仓库,随时进行clone, fork 和 contribute,对磁盘使用没有限制。但是,项目不能超过 1 GB和单个文件不能超过 100 MB。
2.Bitbucket
优点:
1.支持Hg,最易学易用(但不是最强大的)的分布式版本管理工具,同时也支持Git。
2.完全免费的闭源项目,还支持5人以内的合作开发。
3.支持中文。
4.官方的git工具SourceTree比GitHub for windows好用。
缺点:
1.相比GitHub来说,开源项目少。
-- 引用自 <GitHub、Bitbucket、Google Code 各有哪些优缺点? - 东方孤思子的回答 - 知乎>
3.Mercurial
优点:
1.命令行简单、容易上手
缺点:
1.在不同平台上(尤其 Windows 与 Linux 之间)有档名编码的问题,如果你的版本库可能使用到中文档名,最好不要使用 Mercurial,那会造成跨平台的交流障碍。