2020年秋第二周-博客作业
此作业的要求参见[https://edu.cnblogs.com/campus/nenu/2020Fall/homework/11183]
自我阐述
1、回想一下你曾经对计算机专业的畅想
当初你是如何做出选择计算机专业的决定的?
你认为过去接触到的课程是否符合你对计算机专业的期待,为什么?
你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗?
(注:不可以回答 "不是","是"。请把这当成以后工作时面试题,需要回答足够长度,提供足够信息,让对方了解你。比如,给出为什么。)
答:首先,我想先讲一件很好笑的事情就是,高考报志愿的时候为了不学数学,所以报考专业是信息与计算科学专业。后来得知大部分专业课是数学课🤣🤣🤣
但是呢,计算机专业的专业课已经学习过一部分,如:《数据结构》、《c语言程序设计》和《计算机网络》等。此外,我还自学《计算机组成原理》和《操作系统》等。虽然我并不是“纯血”计算机方向,但是我积极向这边靠拢(主动选择)。到目前为止,我认为我的选择是正确的。我所学习过的课程和掌握的知识为我以后的发展打下了坚实的基础,我认为一名合格的工程师要有一定的编程能力、数学基础以及逻辑思维能力(当然,这只是我目前的认识)。
我对两种方向感兴趣,一是编程,二是机械(一方面我并不能因为喜欢机械就转到机械制造或者自动化专业,另一方面编程就足以我穷尽一生)。所以我可以说计算机是我喜欢的领域,也是我目前较为擅长的领域。在大学期间,因为对编程方面感兴趣,所以组队参加创新实践项目,编写软件,先后申请软著两份。
2、考取研究生,对照前人们走过的路和描述未来发展,现在的你自我感觉你已经具备的专业知识、技能、能力有哪些?
离成为一个合格的计算机学生,在专业知识、技能、能力上还差距哪些?
答:考取研究生是我规划中的一部分,我认为只有学历和能力上的双重提高才能达到更高的成就。就目前我有一些编程方面的经验,以及会使用一些主流的编程语言,掌握一些网络知识。我认为我距离一名合格的研究生还有很大差距,在某些专业领域上的知识和技能,如:软件 = 程序 + 软件工程
3、每天都是一个人生选择的十字路口,学术研究、工程项目、社会实践 (?) ,不同的选择有不同的努力方向。
对照以上你阅读的前人们的经历,你的选择是什么?
在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?
针对你的选择,你给自己的本学期的规划是什么?
答:就目前而言,我觉得我更适合于实践或者说是工程项目,并不适合也不想做学术。
相对来说我的优势是有一点儿编程经验,但这也是劣势,我并没有很正规的经历过一个项目、在企业里工作,或者说是并没有按照《构建之法》里面所讲的那样来进行一个完整的项目。
4、你对这门课的期待是什么?
你打算平均每周拿出多少个小时用在这门课上?
答:像杨贵福老师所说,每周拿20个小时,平均每天3个小时花在这门课上并不多。所以,我打算每周20小时在这门课上。因为我自己的基础较差,本学期课程较多我需要花费比别人较多的时间在其他的课程里面。
阅读《构建之法》
通读《构建之法》,发布随笔1篇,要求列出5个问题,可以是读后不理解的,或者读后反对的。要有观点、有证据或分析。字数不是直接的考核标准,但是要求长到能把观点表述清楚。
答:我并没有经历过大型的、按照软件工程的理念设计的软件项目,所以我并不没有对作者书中所写提出反对或质疑,但是有如下疑问:
(1)、软件开发从“需求分析”到最后“交付维护”八大步骤,如何分配每阶段的时间占比,以及如何保证每阶段所用时间不超出预期时间?
(2)、通过阅读本书第12章用户体验和第13章软件测试,如果在这期间发现一个问题是由软件的底层框架引起的应如何处理?如:当年的12306网上购票系统春运宕机奔溃的情况,有没有在不更改底层框架的情况下彻底解决问题的方案。
(3)、书中第15章稳定和发布阶段,其中15.1.4节提到了ZBB招数即解决所有Bug。我想问在现实的软件发布过程中真的能够做到零Bug吗?之前我看过一篇文章(文章出处已经忘记找不到了,请原谅)说的是,软件可能会保留某些微小的、影响不大的Bug以避免修复之后带来更多的Bug。
(4)、书中第16章IT行业的创新,究竟是技术重要还是创新(想法或者灵光一闪)重要,还是说只有技术达到一定水平才能出现好的创新?
(5)、如果团队的PM(项目经理)接受了本不该出现的需求或是实现不了的需求,应当如何解决?PM没有领导能力或者领导能力差,应当如何解决?网络上经常流传程序员和项目经理的恩怨情仇。
特长和技能树
1、很多人有不为大家所知的本事,而这个能力可以超过周围90%的人。比如课堂中教师提到,如果表现得不像高度近视,如何伪装得不像脸盲,能做40个俯卧撑。当然,也可能是篮球、足球、钢琴、ACM、演讲。
请给出你超出朋侪的特殊技能,并告诉我们,你如何通过何种努力、花了多久获得这样的成就。
与你的特殊技术类似的,你还有一棵计算机专业以外的同学不具备的技术树。如果跨专业,请不要借口自己原本是某某专业的,因此基础不好,你是计算机系的研究生。
答:在我读完这道问题之后我思索了许久,并没有发现自己有那些本事是超过周围90%的人的,突然感觉自己一无是处。如果非要说一项的话,我认为应该是编程能力(但我并不认为能够超过90%)。
2017年秋,我大二开始着手准备参加一款《云教育平台》(基于.NET开发的网站)的开发,白天上课学习晚上从七点到十点半工作,大概持续半年(周末有休息)。
2018年进行网站的修改和维护,申请软著。
2018年末,着手开始研发一款软件(基于modbus协议,与变频器交互的软件)。
2019年春,进行简单的修改和维护,申请软著。
2、请给出你当前的技能树与技术偏好,列举目前你已经具备了哪些专业知识和能力。请参照邹欣老师给出的工程师水平要求列表https://www.cnblogs.com/xinz/p/3852177.html,包括不限于这些,逐点给出自己具备的能力,这些能力将帮助你在接下来课程中的小组项目里做出贡献(并得到分数)。请提供具体的数据来辅助证明掌握的技能, 例如“学了 C语言”是不够的,还应提供“交过8次实验作业,最长的代码达到200多行,最难的是多线程那个实验……”。确保技能是具体的且可衡量的,请搜索 SMART - Specific Measurable Achievable Realistic
答:最拿手的前端语言HTML5代码量在200行;
最拿手的编程语言(偏后端)C#代码量在2000行
最拿手的数据库语言T-SQL语言代码量在200行
使用C/C++语言完成毕业设计,代码量在1000行。其中让我印象最深的是字节对齐问题
采访学长
采访本课程往届同学(含外校和毕业生,以《构建之法》作为教材的。不含刚好你熟悉的一位软件工程专家)。 现代软件工程这门课已经上了好几年了,以前有很多学生做过团队项目(说不定包括本校的学生),请你们找一个以前的团队采访一下:
- 当时的项目有多少用户,给用户多少价值? 现在还有人用吗?
- 这个项目能否给我们团队继续开发,源代码/文档还有么?
- 项目开发有什么经验和教训
- 对学好软件工程有什么建议
答:我采访的是19级的孙xy,他的团队开发的项目是“all for eating”。下面是学长对于以上四个问题的回答:
(1)、当时项目大概有130人左右。用户通过小程序解决了选择的难题,并且简洁有趣,得到了广泛的好评。目前仍有一部分活跃用户。
(2)、项目的源码都有,欢迎借鉴研究。
(3)、项目的经验和教训,项目成员任务分配要明确,一定要有项目小组长来领导大家、指导方向。
(4)、对于学好软件工程,紧跟杨老师的步伐,会有很大进步。
最后,感谢感谢学长以及他的团队提供的帮助,万分感谢。
代码量
以下统计精确到一百行。
你目前的代码量是多少?
你认为优秀的和一般的计算机专业学生,(根据你的理想选择以下两问中的一个)为了有资格入职软件公司/互联网公司,需要多少代码量?从事高校教学科研工作呢?
你计划在本课程结束时,完成多少代码量?这些代码量分布在整个学期中,每周应完成多少代码量?
答:目前我的代码量大概在3400行左右。
我认为一名优秀的计算机学生进入到软件公司需要拥有1W行代码量。
我计划在本课程结束时完成1k行代码,分配到每周需要完成100行代码。
阅读博客心得
以下两篇博客必读,并务必写一些心得:
(1)你为何要来上课并且认真参与 [http://www.scalerstalk.com/816-attention]
(2)你在大学中体验到了哪种师生关系 [http://www.cnblogs.com/xinz/archive/2011/05/16/2048044.html]
答:通过第一篇博客我觉得当下的学生应当具备一下能力:
① 打好专业基础
② 能够安静下来做学问,或者做技术
③ 能够跟上老师的脚步,一部一脚印的学习
④ 课程没有无用的课程。举个我自身的例子:以前我一直感觉学了高数、现代没什么用处,直到后来学习了机器学习才明白
通过第二篇博客我来谈一谈我和我本科期间带我的老师(邓老师和王老师)的关系(仅仅只是从我的角度):
上课的时候我们是师生关系。老师真诚的传授知识和技能,我们渴望学习
工作(做东西、做项目)的时候我们是上下级的关系(但不是金钱关系,不是严格意义上的上下级)。邓老师和王老师给予我技术和知识上的帮助,我们也相互讨论问题的解决方案。
其他时间我们都是朋友关系。私下里也谈论生活上的问题,开开玩笑、一起吃饭。
其实我也逃过王老师的课(一次),王老师知到,但没有说开。(我不是提倡逃课,也不是提倡老师的包庇,只是老师的理解。我仅仅逃过一次)
最后,我也特别期望和杨贵福老师成为好朋友。
第一次以博客的形式写作业,中间有很多不解和错误,希望杨老师指出。万分感谢!