此作业的要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/5522
一.建博客
博客地址:https://www.cnblogs.com/sunxiaoyu/
二.博客作业
1.回忆当初对计算机专业的畅想
(1)当初你是如何做出选择计算机专业的决定的?
答:2015年随着高考以及报考院校的结束,我被调剂到了计算机科学与技术专业,其实这并不在我的预期范围之内,不过看到调剂专业时感觉也还不错,因为从以后发展和找工作角度来说,计算机专业还是很热门的,并且想到敲代码一定是一件很酷的事情。
(2)你认为过去接触到的课程是否符合你对计算机专业的期待,为什么?
答:不符合对专业的期待,并且与预期差距很大。大学的第一节专业课就是C语言。由于之前没有任何的基础,因此上课期间对于老师讲的内容很迷茫,即使简单的小程序也不能理解,但是还是跟着老师的步伐“硬”学。之后接触的课程包括数据结构、计算机网络、计算机组成原理等,大都是些枯燥无味的课程,与当初所期待东西背道而驰。
(3)你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗?
答:现在看来,计算机专业既不是我喜欢的领域,也不是我擅长的领域。但计算机专业却是我现在仍然学习从事的领域,学习对我来说是一种磨练与成长,没有哪一种成长是不痛苦的,没有谁的人生是不经历痛苦的,这对我而言就是成长的过程,我享受着这个过程,并且努力着将计算机专业变成我喜欢的领域。
2.考取研究生,对照前人们走过的路和描述未来发展,现在的你自我感觉你已经具备的专业知识、技能、能力有哪些?离成为一个合格的计算机学生,在专业知识、技能、能力上还差距哪些?
答:在本科期间并没有培养出很出色的专业知识技能,但是通过考研期间对专业课程的学习,已经基本掌握了学习专业课的方法,希望日后能根据自己的学习方法在自己的领域深入研究学习下去;在专业知识技能上可能和同学们相比差距较大,如编程能力,理论基础等都比较薄弱,但是一定会跟着课程老师和导师一步一个脚印的学习下去,争取早日成为一个合格的计算机学生。
3.面对人生的十字路口
(1)面对人生的十字路口,选择是什么?
答:研究生阶段,学习上的目标首先是将专业能力提高上去,将所学课程掌握,争取能完成导师的论文任务,并且多多参与工程项目。在工作中,身为班长承担起当班长的责任,保证班级工作顺利进行,了解同学们的心理状态,适时疏导。生活上,变得更加独立,不在依靠家里,独立承担生活压力。
(2)在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
答:优势方面来说的话,我相信我会有更全面的成长;劣势可能是不会有其他同学这么多的科研与学习时间。
4.对这门课的期待?打算每周拿出多少小时在这门课上?
答:对这门课的期待是能通过这学期的课程学懂什么是软件工程,一名出色的软件工程师具备什么样的条件,另外就是自我编程能力和水平提高;打算每周拿出15小时在这门课上。
三、博客作业
通读《构建之法》,发布随笔1篇,要求列出5个问题,可以是读后不理解的,或者读后反对的。要有观点、有证据或分析。字数不是直接的考核标准,但是要求长到能把观点表述清楚。
问题一:
通过阅读《构建之法》中的第二章,对软件工程师个人技术的介绍,作为一个软件工程师需要有代码能力。还读了第八章,关于需求分析的重要性,团队中很大一部分工作是做需求分析。因此产生了一个问题,没有编程能力的人在一个软件项目中是否有生存空间?去网上搜了一下这个问题,并没有相关解答,希望根据之后的实践经验能够解答自己这个问题。
问题二:
阅读《构建之法》中的第五章团队和流程,书中只写了团队的流程,团队的类型,开发流程等,并没有实际问题的实际分析,由此想知道具体的团队分工应该怎样实现?网上搜集了一下关于这个问题的答案,答案大都过于泛泛,都是写的团队协作的重要性与团队分工(不包含模块划分)等,还是没有具体的方案,可能这个问题需要具体问题具体解答,因此希望在以后的项目实践中具体遇到这个问题时能想出好的解决方法。
问题三:
通读《构建之法》后,明白了团队合作重要性,这时在想一个问题,倘若团队中的顶梁柱突然中途离开项目该怎么办,尤其像书中第二章P25页中写道”单元测试必须由最熟悉代码的人来写“,如果最熟悉代码的人中途离开了,单元测试怎样做呢?杨老师在课上也提出了这个活动,项目中途会有一个人离场,具体的解决方案也是希望通过项目实践的时候来解决。
问题四:
读《构建之法》十六章IT行业的创新,在P357页讲到颠覆性技术,从前面两页讲技术创新所带来的不受欢迎、不被接受的风险可知,颠覆性技术的确有着经济效益不稳定的特点,但是为什么P358页讲到市场营销的目的是发现新的机会,而不是赚回投资呢?发现的是什么机会呢?是技术稳定的机会,用户认可的机会还是技术走入市场的机会呢?通过常识也知道市场营销的核心是定义价值和传递价值,本应该是个主动的过程,在文中却是有点被动的过程。
问题五:
读《构建之法》十六章IT行业的创新,在P367页,讲到PC桌面软件版与移动端软件收入方面所带来的差异,书中介绍到好比动量与加速度的关系,PC桌面软件相当于加速度为负值但动能大,移动端软件相当于当前动量小,但是加速度会很大。我们根据这个类比分析得知,PC桌面版虽然仍带来很大收益,但他的前景不容乐观,移动端虽然收益小,但是随着客户量的大量上升,他的前景十分广阔。但回归到实际问题,假如我们拥有一个PC端的软件,一个移动端的软件,要不要把所有的资源都投资给移动端而放弃PC端呢?通过查阅资料可得知,PC端软件不会被取代但会被基本取代。那么到底是继续给PC端软件投放资源带来的收益大,还是直接放弃PC端来减少之后可能会有的损失所带来的收益大呢?
四.博客作业
很多人有不为大家所知的本事,而这个能力可以超过周围90%的人。比如课堂中教师提到,如果表现得不像高度近视,如何伪装得不像脸盲,能做40个俯卧撑。当然,也可能是篮球、足球、钢琴、ACM、演讲。请给出你超出朋侪的特殊技能,并告诉我们,你如何通过何种努力、花了多久获得这样的成就。
我并没有什么特殊的超出朋侪的特殊技能,相对而言自身比较突出的可能是承担力和忍耐力。自我成年以后的观念就是,既然成年了,自己成长中所经历的磨难应该自己去消化,不需要让父母再去操心,办自己能力之内的事情,出了事情无论在大压力也要自己承担下来,界限之外的事情需要忍耐就要忍耐,但不会忍耐到卑微。
五.博客作业
采访本课程往届同学(含外校和毕业生,以《构建之法》作为教材的。不含刚好你熟悉的一位软件工程专家)。 现代软件工程这门课已经上了好几年了,以前有很多学生做过团队项目(说不定包括本校的学生),请你们找一个以前的团队采访一下:
- 当时的项目有多少用户,给用户多少价值? 现在还有人用吗?
- 这个项目能否给我们团队继续开发,源代码/文档还有么?
- 项目开发有什么经验和教训
- 对学好软件工程有什么建议
答:以上问题我采访了一名研二的学姐,学姐耐心的将问题们一一解答,以下就是我们的采访过程。
通过阅读学姐在博客中的最后一次总结中得知,团队合作是十分重要的,并且一定要选好组长,组长要具有领导力和执行力,这样才可以带领组员将软件开发的任务更好的完成。对于专业方面,还是要熟练的使用一门编程语言,只有真正的进入到项目中,认真的去编写代码,这样在会在实践中不断进步。
(以下统计精确到一百行)你目前的代码量是多少?你认为优秀的和一般的计算机专业学生,(根据你的理想选择以下两问中的一个)为了有资格入职软件公司/互联网公司,需要多少代码量?从事高校教学科研工作呢?你计划在本课程结束时,完成多少代码量?这些代码量分布在整个学期中,每周应完成多少代码量?
答:目前的代码量为300行;
一个优秀的和一般的计算机专业学生有资格进入软件或互联网公司至少需要两万行代码量;
计划在本课程结束时完成6000行代码,将代码分布在整个学期中,每周应至少完成360行代码。
七.阅读材料,写心得。以下两篇博客必读,并务必写一些心得:
(1)你为何要来上课并且认真参与 [http://www.scalerstalk.com/816-attention]
(2)你在大学中体验到了哪种师生关系 [http://www.cnblogs.com/xinz/archive/2011/05/16/2048044.html]
答:第一篇博文主要讲的是学生对于课程应该抱有的态度的相关问题。博文中写到的大学生对于课程的心理状态很完美的命中了我之前的想法,并且击碎了它。其实,大学生毕竟还是学生,很多方面都不成熟,很多决定都是不正确的,因此要跟着学校的课程设置走,也以此培养自己的能力,这里说的能力是在校园中也是走入社会中很重要的能力:认真听讲的能力和学习能力。这种能力需要通过认真听课不断打磨培养而成,我们需要培养自己课上集中注意力的能力,使自己能在最短的时间内获得最有效的知识。
第二篇博文很有意思,它将老师和学生的关系类比成为很多种关系,例如:园丁和树苗,蜡烛燃烧,餐厅吃饭的顾客和老板,企业中的老板和员工,保姆和娃娃式关系等等。似乎每一种关系都会揭露出师生关系存在的问题,指出了学生老师各自可能会出现的问题。最终给出了一个最合适的关系:健身教练和学员关系。这很好的诠释了师生关系的理想状态,老师和学生各自都有一个界限,这个关系就很好的划清了这个界限。