自我介绍

大家好我是scallion,从初中开始我的外号就叫大葱,渐渐地scallion成为了我最常用的昵称或者是非正式的英文名字。

和比较常见的兴趣爱好不同,我从5岁开始学围棋,11岁成为国家二级运动员(其实也只是业余水平,离职业道路还有很远)。一直到初中毕业才停止上围棋课,围棋也变就成了我的一门爱好。但是现在的我其实很少下棋,很偶尔才会跟朋友手谈一局。我虽然围棋水平退步严重,但是对它还是保持了几分价值判断力。很多时候下棋会有一种“我怎么下的这么差”的感觉,每一步棋都不怎么下的出手,却又想不出更好的走法,结果就下的越来越少。不过我一直觉得我的这种心理现象很有趣。

高中以后长跑和骑行成为了我的主要爱好,我高二的时候参加了杭州国际马拉松,但是年龄不足20只能跑半程。去年的时候和同学两天沿着巢湖骑了一圈。到了大学作息没有高中那么规律,体能反倒是有些不复当年。来了帝都之后准备把锻炼拾起来。这里不仅有“最美马拉松”--北京百里山水画廊森林马拉松,骑个单车还可以考虑去天津看海。要是有一样喜欢长跑和骑行的小伙伴欢迎在评论区留言~

现状、经验和计划

现状

我来自中科大物理学院,2016年3月,deepmind的Alphago在五番棋比赛以4:1的比分中击败李世石。在比赛结束之前,我从未想过人工智能能够在围棋这个task上达到媲美人类的水平。在那时的我看来,深蓝击败卡斯帕罗夫只能说明电脑算力的强大,而围棋的精髓不仅在于计算,还在于感觉,这种不能显式的写出来的特征是很难被计算机所学到的。最终结果深深震撼了我,让整个围棋界回忆起已故去的日本著名棋手藤泽秀行先生的那句名言:棋道一百,我只知七。以此同时,一种“ML一百,我只知七”的感觉在我心中油然而生,促使我从大二开始修读了计算机双学位,并最终选择在计算机方向读博。

查阅了软件工程师自我评价表后,我认为以下技能对我特别重要:

  • 程序理解
  • 代码质量
  • python
  • 处理大数据
  • 个人源码管理

就现阶段而言,前三项的水平可能是2-3,后两项的水平可能是1-2。希望在课后5项技能都能达到4-5的水平。本科前三年课余的大部分精力还是放在了物理上,双学位为了精简课时基本上删掉了所有大作业和算法课。导致现在计算机编程基础较薄弱。具体的方法就是多读代码,多花时间实践,向身边的人请教。除此之外,我也计划在这一年啃下一两本大部头英文书,补充下自己的理论基础。以及系统性的了解Machine Translation的历史。

师生关系

对于师生关系,我认为邹老师总结的健身教练和学员的关系很精辟,也覆盖了大多数情况,但是就我的个人经验,我认为师生关系应该是以健身教练和学员为主,其他关系也可以存在。由于个人专业知识和表达能力所限,我无法很精简的总结我的观点,我选择将我遇到过的最有特点的师生关系罗列如下:

  • 力学是中科大物理学院大一上学期的课程,由于物理学科的特殊性,导致物理学院大一新生的物理水平参差不齐。物理竞赛大神高中就学完理论力学和量子力学了,而纯高考进入中科大的同学可能大一上力学期中考试还不会使用微积分解题。在这种极端情况下,要求老师照顾到每一个学生是不可能的。而老师的教学目标只能是照顾那些基础较差的同学,教授那些力学的入门知识,而这些知识搞物理竞赛的同学可能早已烂熟于心。在这种情况下,老师和物理竞赛的学生已经不再是健身教练与学员的关系,而是健身教练和毕业学员的关系,虽然老师很博学,但是他的博学无法体现在他讲授的课程中间,那么物理竞赛出身的学生就完全可以不听讲,选择自学更高层次的物理知识,在课下和老师单独交流,这样才是取得最大收获的方式。事实上,在物理学院保持领先优势的竞赛学生中,很多同学上基础课的时候都在自学更高深的教材。在这种情况下,大学生为什么要听讲,这篇文章中的理由也就不成立了。此外,我认为这篇文章中很多措辞都很奇怪,这篇文章指的不听讲似乎就是不学习,我觉得有些狭义了,这么比较得出的是正确而无用的结论。比如:

    你在上课的时候,是认真听讲,还是在聊天说话玩手机?-- 难道不认真听讲就只能玩手机了么?
    课程讲的不好不能成为不听讲的理由。 --老师讲的都会也可能成为不听讲的理由。
    课程有用无用不是一个大学生的格局能判定的。 --我认为一个优秀的大学生应该在大学生涯中找到自己的方向和兴趣,因为最终是为自己而学习,学生需要能自主决定那一门课对他更有用

  • 由于某些原因,我在两所学校(A,B)都修读过机器学习方面的课程。课程的上课学生均为本科生,且之前没有学过人工智能有关的课程。但这两所学校的授课内容完全不同。A学校从logistic回归开始,讲SVM,NN,但是讲的更多的是具体算法,冗长的数学推导全部放在ppt上,一页一页向下翻,学生跟不上老师的推导方式,课下自己推导有感觉有些费力。到结课的时候,学生学会了各种各样的机器学习方法,但理论基础稍微欠缺。B学校开场就介绍机器学习理论,从chernoff bound开始,接着讲vc-dimension理论和优化中的duality,全程在黑板上从头推到尾,很少涉及到具体算法的内容,而是给学生推荐了一些讲具体算法的书籍。到结课的时候,一些同学证明了ML theory 中state-of-art的结果,发表在COLT上。评判AB两个学校那个好是一件见仁见智的事情,可能与我的物理背景有关,我会更喜欢B学校的上课方式。我也很欣赏B学校老师说过的一句话:

    “我给你们讲的东西,都是我认为我讲给你要比你自己学学的快的东西”

综上,此我希望的师生关系是在健身教练和学员,但教练应该能让学员在同样时间能达到优于学员自己健身的效果,如若不然,我认为学员自己健身也不失为一个可行的方法。
最后,关于抄袭,我觉得就课程来言,一切不阻碍教学目标实现的引用都不是抄袭。

宏观未来规划

现在看起来我会选择做学术研究,我不是很喜欢做唯performance的工作,所以做太偏应用的工作可能会不是很开心。而且做学术研究一些物理思维可能会有帮助,起码让我乐意看一些很理论的推导。但我总归从事的是CS方向的研究,代码能力薄弱是我迟早要克服的短板。这学期的计划就是现状部分结束的那5点。

这门课的计划

我现在代码量自己也没有估计过,可能11000行左右。C语言可能写了5000行,C++写了3000行,python写了3000行。虽然前面没说过前两年浪费了很多时间,但我还是想奋发向上,我计划每周课下拿出10小时完成这门课。完成代码量我现在实在没有什么概念。希望每周都能码几百行代码吧。

博客阅读

我阅读了“不要轻易在简历上写我热爱编程,热爱学习”。首先声明本人并没有在简历上写我热爱编程,热爱学习。读这篇博客主要是想看看大牛的热爱是怎样的。和自己对比了下发现他说的那些成就,现在的我的确没有那个毅力做下来。感觉以后还是要对自己狠一点,寻找兴趣,争取在毕业的时候能说自己热爱编程。

构建之法提问

Ch04, P79, 每人在各自独立设计、实现软件的过程中不免要犯这样那样的错误。在结对编程中,因为有随时的复审和交流,程序各方面质量取决于一对程序员中各方面水平较高的那位。这样程序的错误就会少得多,程序的初始质量会高很多

问题:我们在第一次结对编程的debug阶段中采用了这个方法,但是发现两个人的交流有时候会掩盖问题,来自代码创作者的解释会隐藏那些不易察觉的小bug,很多隐藏的比较深的bug还是在一个人独立阅读代码的时候发现的,是因为结对编程不适用于debug阶段吗?

Ch6, P112, 另一个改进是,要在每一个任务中记载我们完成这个任务还需要多少时间。
Ch6, P115, 我们感觉好像项目完成了80%,殊不知后面的20%往往要花费80%的时间。

问题:敏捷流程的核心是基于能够估计出任务的剩余时间的。但文中又说很多时候并估计不准时间。我感觉这里似乎有一些矛盾。如果预计完成时间估的不准,那么敏捷流程跟尽全力向前推进似乎没有什么区别?还是说一般工程项目都能估计的大差不差?

Ch8, P156, 用户在各种菜单中幽幽暗暗的反反复复的寻找某个功能,我们在单向玻璃后面替他着急……我们的界面距离“平平淡淡从从容容才是真”差太远了

问题:想问一个和书关系不是那么大的问题。就是现在产品的菜单和图标设计(比如word)依然很复杂,用户很难知道自己要干什么事,就能根据菜单名称大致找到地方。UI换了一版又一版,菜单设计却没有大的更新,是因为尾大不掉么?就是说为了和老版本兼容从而不能大面积修改菜单?

Ch16, P353, 但是绝大多数用户都不会告诉公司颠覆性的需求,就像马车夫那样,他们会希望马更快一些就好了。

问题:我认为这个例子并不能说明问题,马车的出现和汽车的出现相差很远,起码远超一个公司产品的周期。而且马车直接变成汽车这个请求未免太颠覆性了。就像手机屏幕从按键变成触控笔再变成手指直接触控一样,是因为用户不断反映体验不好才促进了产品的升级的。用户是很难知道未来的发展趋势的,成功的公司重视用户,应该推理出公司自身会去想颠覆性的方法满足用户的需求。而不是把没做出颠覆性进展归因于用户没有提出来,这可能对用户提了过高的要求。

Ch16, P359 技术成熟度曲线
建议:除了标准的一升一降,老师是否可以分析下AI的三次上升和两次泡沫破裂,这样可能更加形象生动。

转载于:https://www.cnblogs.com/ustcscallion/p/9802420.html

现代软件工程第一周博客作业相关推荐

  1. 现代软件工程 第一周博客记录

    前言: 这是我真正意义上的第一篇博客,希望以后我能时刻谨记自己的这一篇博客对自己的分析,并且能及时认识到自己的错误和在学习上的放松,一直奋斗下去. 1.自我介绍 大家好,我叫罗博伦,来自西南石油大学软 ...

  2. 第一周博客作业(补)

    此作业的要求参见[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2101]. 2.博客作业 (1)回想一下你曾经对计算机专业的畅想 大学本 ...

  3. 现代软件工程 作业 第一周博客作业

    第一周作业 1. 介绍自己,建博客 我是一名大三的学生,平时爱好看看书,感觉没啥特长. 要说有什么优势技能,就是文笔还可以吧. 从初三开始写日记,基本上上学的日子每天都写,一直到大一结束. 2. 现状 ...

  4. 软件工程 in MSRA 第一周博客作业

    1. 自我介绍 大家好-我是陈海峰,哈尔滨工业大学计算机学院的一名大四学生,大四开始在 MSRA 的 KC 组进行实习.作为一个标准的"肥宅",对运动没什么兴趣的我,主要的兴趣点就 ...

  5. 第一周博客作业(计算机网络基本知识、Linux操作系统Java基本知识)

    计算机网络 信号传输可以通过电流.电磁波,主要是通过电流来传输 电压传输 某一时刻只能传输一个bit信号 网线是导线,电脑电脑之间,计算机组件之间都是靠高低压传输 想要传导速度快可以加线的条数,采取并 ...

  6. BUAA-2023软件工程第二次博客作业

    BUAA-2023软件工程第二次博客作业 项目 这个作业属于哪个课程 2023北航敏捷软件工程 这个作业的要求在哪里 个人作业-软件案例分析 我在这个课程的目标是 学习并实践软件工程开发的方法论.在把 ...

  7. 关于软件工程第一个博客

    关于软件工程第一个博客 这是我人生中所发的第一个博客,心里既激动又紧张.我是石家庄铁道大学 信息科学与技术学院 计算机科学与技术专业的一名大三的学生,我叫李俏.虽然学的是计算机专业,但是由于自己不积极 ...

  8. 2022北航敏捷软件工程 第二次博客作业

    2022北航敏捷软件工程 第二次博客作业 项目 内容 这个作业属于哪个课程 2022年北航敏捷软件工程 这个作业的要求在哪里 个人作业-软件案例分析 我在这个课程的目标是 了解软件工程的方法论.在实践 ...

  9. 马哥教育linux面授班37期第一周博客

    马哥教育linux面授班37期第一周博客   2019年5月5号晚,我怀着忐忑和激动的心情坐上了开往了北京的列车,我忐忑自己此行的目的地,马哥教育Linux第37期北京面授班,是因为我接下来五个月的时 ...

最新文章

  1. linux禁止路由器,FCC 新规可能禁止在 WiFi 路由器安装 OpenWRT
  2. linux基础命令学习
  3. 企业命令linux下处理实时日志生成另一个实时日志
  4. django学习(1)-----项目组成
  5. java 构造 super_Java中的构造方法this、super的用法详解
  6. Tensorflow2.0数据和部署(四)——Tensorflow高级模型部署
  7. 基于Matpower的电力系统潮流计算原理及仿真设计(详细)
  8. 认识VBA------------------VBA基础
  9. 西门子g120变频器接线图_【直播】S71200与SINAMICS G120变频器的profinet通信
  10. 服务器开机硬盘raid连接错误,服务器磁盘阵列常见问题及解决方法
  11. 集线器、交换机、路由器功能原理入门总结
  12. Win10 /11 开热点无法上网问题
  13. PaaS平台应用的原则
  14. linux脚本echo off,echo什么意思_@echo off的作用 - 编程语言及工具 - 电子发烧友网
  15. Matplotlib Pyplot
  16. 刚安装完成的Jmeter5打开之后没有工作台
  17. html5页面打不开原因,部分网页打不开是什么原因,详细教您网页打不开怎么解决...
  18. 利用Excel进行相关、回归分析
  19. 哈尔滨工业大学考研 网络与空间安全 837 资料库
  20. Cesium空间数据的加载

热门文章

  1. MapGuide应用开发系列(五)---- Autodesk MapGuide Studio应用简介
  2. ScriptManager控件声明的各个部分
  3. Leetcode 25.K个一组翻转链表
  4. 42.存储器管理应具有的功能?
  5. AI眼中的世界是什么样子?谷歌新研究找到了机器的视觉概念
  6. 程序员应该学习C语言的十个理由
  7. CreateThread创建线程函数详细讲解
  8. java根据日期判断星座_根据日期计算星座
  9. 包区别 版本_详解Linux下二进制包、源代码包、rpm包区别与联系
  10. python强制可读吗_python 中的强制类型转换