【工程与计算机】编程X艺术:听歌识曲

近年来,美国大学的计算机(Computer Science, CS)和电子工程(Electrical Engineering, EE)专业录取要求随着申请人数的增加逐渐水涨船高。但另一方面,国内的相关工程教育却基本是缺位的。为了弥补这种差距,陈欣老师在过去的几年里,通过我们的规划项目辅导了一批学员。通过身体力行的学习利用专业知识解决生活中的问题,他们走出了自己的舒适区。事实证明,学校对这份努力也是相当认可的。

为了帮助到更多的人,陈欣老师在此整理一些往年的成功项目经验,并同简化过的项目源代码一道与大家分享。希望能够抛砖引玉,给同学们一些思路和帮助,为之后的申请助一臂之力。毕竟短期看,CS/EE是在美国本土就业的捷径,能够较为迅速的收回教育投资;长远看,CS/EE的相关技能也能在诸多行业里起到点石成金之效。

问题

AADPS的一位学员恰巧正在同时自学吉他和编程。作为一名初学者,他遇到的一个很大的困难就是很多网上的视频教程没有对应的曲谱。在一番思索之后,他觉得可以利用编程知识,为自己开发一个趁手的专业工具,通过分析音乐音频的方式自动生成对应的曲谱。

工具

Java

Java是一种基于类的面向对象通用编程语言。藉由虚拟机技术,编译好的Java程序可以直接在不同的计算机平台上运行。目前Java是最流行的编程语言,是几乎所有类型的网络应用程序的基础,也是开发和提供嵌入式和移动应用程序、游戏、基于Web的内容和企业软件的全球标准。

TarsosDSP

TarsosDSP是一个用于音频处理的Java库,其目标是为实用的音频处理算法提供一个易于使用的纯Java接口并免去对第三方包的依赖。在设计上,TarsosDSP力图在有能力完成实际工作和足够简明以演示数字信号处理(digital signal processing, DSP)算法之间达到一个平衡。内置的算法包括打击乐音符起始检测器(percussion onset detector)、一系列音高分析算法、Goertzel双音多频解码算法(Goertzel DTMF decoding algorithm)、时域拉伸算法(time stretch algorithm)、重采样、滤波器、简单合成器、音效和变调算法。

JFreeChart

JFreeChart是一个纯Java绘图库,让程序员可以在他们的应用中嵌入专业级的图形。绘图库有一致且被充分说明的接口,支持数十种不同的图表类型,以及输出到应用程序界面、图形文件和矢量图文件的能力。

Eclipse


Eclipse是日前最流行的Java集成开发环境(integrated development environment),由一个基本的工作空间和一个发达的可定制插件系统组成。Eclipse本身也由Java编写,其前身由IBM公司的团队开发,但很快就成为了一个完全开源的项目,由非营利的Eclipse基金会主导。对于本项目,可以使用Eclipse标准版

原理

线程

线程(thread)是操作系统能够进行运算调度的最小单位。通俗的说,我们在计算机上执行的每一个程序,称为一个进程(process),而进程的实际执行则会派生出至少一个线程。同一进程中的多条线程将共享该进程中的全部系统资源,但线程会有自己的调用栈、寄存器环境和本地存储。

对于目的比较简单的程序,单线程模型是完全没有任何问题的。但是对于进行实时多媒体处理的程序,或是需要与用户进行直接且复杂交互的程序,多线程的设计模式就极有必要了。举一个最简单的例子,如果把在屏幕上不断刷新数据的操作和从文件系统里读取数据的操作放到一个循环里,一旦文件系统由于负载较大或者文件被占用的情况而无法及时完成读取,数据的更新也会一并中断。因此较为合理的思路是把这两类操作放在各自的线程里,在正确设计的前提下,它们就能并行不悖的完成各自既定的使命,不让用户有程序失灵的感觉。对于早些年单CPU的情形,不同的线程将轮流分配到CPU的计算时间。但对于现在基本已经普及的多核CPU或者实现复数逻辑处理器的Intel超线程(hyper-threading)技术,不同的线程是可以同时并行运行的。这也是单个程序能充分利用多核CPU计算资源的主要途径。

Java线程


上图展示了一个Java线程的生命周期(life cycle)。在我们自己的程序里,用UpdatePlot这个子类实现了Runnable这个接口。具体而言,唯一需要重写实现的函数是public void run(),即是线程所实际执行的内容。之后在程序实际运行时,则用UpdatePlot的一个实例myPlot来启动线程new Thread(myPlot).start()。注意在设计中非常重要的一点是,对于线程中持续不断的循环或者耗时较长的操作,一般需要定期调用Thread.sleep(time)来将本线程暂时中断。此时操作系统即能将线程挂起,把CPU资源释放给其他需要执行的线程。如果没有加入中断操作或在此处有一些不理想的设计,很容易造成线程占用全部CPU核的情况,但这在大部分时候是没有必要的。

对于Java本身来说,设计上是不推荐直接从外部终止线程,而会希望run()函数执行完既定工作并自己正常结束。示例代码里通过myPlot来派生线程进行图表数据的定期更新。但事实上所使用的TarsosDSP库同样会内部派生用于音频处理和回放的线程,下面提到的Java图形界面库还会派生用于处理GUI事件的线程。

图形用户界面

顾名思义,图形用户界面(Graphical User Interface, GUI)是相对于早期终端命令行界面(Command Line Interface, CLI)而言更加友善的人机交互模式,也是现在个人电脑普及的最重要因素。图形用户界面可以让用户直观的通过鼠标甚至触屏与屏幕上的可视化元素互动。当然为实现这一目标,无论是在硬件上还是软件上都提出了更高的要求。

Swing

Swing是目前Java最主要的图形组件库(GUI widget toolkit),基于更早的awt(abstract window toolkit)之上、但纯粹由Java实现而非利用本地操作系统所提供的图形组件。这些特性让采用Swing的程序可以更加方便的跨平台运行,且系统里还内置了一些主题,让组件的风格可以与本地系统大致保持一致。

相对于其他一些采用标记语言的GUI解决方案(比如微软早年的MFC和新的WPF乃至UAP,以及安卓和苹果应用开发),Swing则采取了相对而言比较抽象、但不引入额外成本的基于组件嵌套的设计模式。一般来说,程序员不会精确设定每个组件的实际坐标,而是将这一任务托付给系统的布局管理器(layout manager)。以下是我们用到的一些重要Swing组件:

  • JFrame:通俗的说就是我们运行程序时见到的窗口。注意窗口本身其实是和程序的执行没有关联的,但在setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)以后,关闭该窗口也意味着终止程序。
  • JPane:是加载图形组件的容器,也可以嵌套子容器。对于复杂的布局,我们需要利用容器的组合来实现所期待的效果。其他还有JScrollPane、JSplitPane、JTabbedPane等来实现滚动条、分屏、标签页等效果。
  • BorderLayout:因为我们的窗口相对简单,所以只用到了这个最基本的布局管理器。可以把组件/容器安插到布局管理器预制的各个槽位里。在程序运行时,布局管理器将会根据窗口的实际大小来调整各组件/容器的大小。其他的布局管理器还有BoxLayout、GridLayout、FlowLayout等,下图展示了它们的效果。
  • JRadioButton:单选按钮。在程序里组合起来用于选择输入音源。
  • JCheckBox:复选框。在程序里用于确认是否回放。

当然,我们的图表本身也会生成ChartPanel来插入到上级的JPane里。

事件与监听器

之前已经大致说明了如何用图形组件组合成为应用的用户界面。不过用户界面的最重要一点就是响应用户输入的能力。事实上,相当大一部分Swing组件是可以接受事件(event),并注册动作监听器(ActionListener)来进行对应的处理。事实上awt本身就是一直在执行一个不间断的循环,不断获取用户的交互事件并执行对应的监听器。

对于组件内嵌在主类里的简单程序,直接用监听器一般就能执行期望的操作。但我们的应用里是把音源选择的部分单独封装成一个类。这个类和主类的组件间通讯是通过firePropertyChange和对应的PropertyChangeListener来实现的。

主音高检测

主音高检测其实是一个相对复杂的数学问题,在这边仅做一些定性的、概念上的说明。对于一般乐器实际的发音过程,是由和所演奏音符一致的基频以及一系列以基频为整数倍的倍频所组合而成。基频和倍频的独特组合比例从人的主观感受上来看就是乐器的音色。获取音乐的主音高,就是要在排除倍频和音乐中其他干扰的前提下,把这个基频的频率确认出来。

获取基频的主要方式有两大途径。对于频域(frequency domain)途径主要的思路是将波形进行傅里叶变换(Fourier transformation),直接分解成由不同频率简谐波所组成的频谱,再通过基频倍频之间的比例关系推算出基频。对于时域(temporal domain)途径主要的思路是利用自相关函数(autocorrelation function)提取出声音波形里有效的周期性信息作为基频。两类方法各自适用于不同的情形,在实际应用中也有将它们组合起来的做法。

我们当前采用了基于时域的McLeod法(McLeod Pitch Method, MPM)。比较有意思的地方在于归一化方差函数最大值阈值k的设定,以及方差函数计算的优化,有兴趣可以细读这篇论文

示例


上图展示了项目源码实际执行的场景。在选择对应的音源输入后,分析器就自动开始工作。对于笔记本一般可以选择内置的麦克风,而台式机可能需要外接麦克风或者带麦克风的摄像头。下面可以勾选是否回放麦克风的输入,如果只有外放而没有耳机的话,建议关闭这一选项。

窗口中部和底端的两张实时绘制的折线图分别展示音强(loudness)和主音高(pitch)随时间的变化,单位是分贝(dB)和赫兹(Hertz)。

思考

  1. 如何根据音强和主音高的数据生成曲谱?
  2. 在实际分析音乐时,数据会因为各方面的干扰和音乐本身的特性有一定的波动。如何在硬件和软件层面排除这些波动?
  3. 如何处理并正确分解和弦?
  4. 如何在分析一段音频后能迅速在一个曲库中找出对应的乐曲?

以上就是我们今天分享的案例,欢迎大家登陆网站后下载项目源码,通过实践来加深理解。简单的疑问可以评论在文章下,陈欣老师将会在有空时予以解答。如果对我们的服务项目感兴趣,希望获取陈欣老师一对一指导的,可以加上老师的私人微信zipspeed。

重要通知

本文为AADPS原创,原始发布地址是https://aadps.net/2019/11671.html。我们每年夏季会更新最新美国大学本科申请文书题目和权威院校指南,欢迎把网站加入浏览器收藏夹。

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的公众号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

学在范德堡是怎样一种体验

大一时觉得所在大学不甚合意,于是决定转学。申请过程中选择了约翰霍普金斯PhD的陈兄,因为相信一个作为本就在顶尖学府中学习生活过多年的人,能有更深入的了解和切身体验。后考入范德堡。不得不提一句,两个学校名次相差二十名,其学生以及教学水准的本质差距还是很大的。范德堡呢,人人都是学霸 。某也见过许多转学生,一转来就询问:纳什维尔有什么好玩的,有什么好看的,那么范德堡真的不适合你。第一,纳什维尔真的没有什么好玩的,第二,范德堡学习很忙,很累,并没有那么多时间玩。

关于申请问题,这里闲话几句。对于钢琴小提琴这种人人都会的技能,能够让你standout的只有恒心以及性格,e.g. 钢琴十二年,时常在各种大小场合表演等等。中国学生通常觉得个人比赛中,尤其是学术竞赛中,获得奖项是很令人印象深刻的经历,但前十五学校不会这样认为。除非是国际奥林匹克数学竞赛一等奖这种例外,否则他们想看到的只有你是如何与队友合作帮助你的“团队”获得第一。成绩不是非常重要,或者说:如果你成绩很好但除了学术方面的成就外没有拿得出手的经历,那么你一定进不了前十五。如果你的成绩不算非常好但除此以外有很独特(并把独特发挥到杰出)的能力,那么前十五可以有。

对于范德堡,它的地域很独特,属于乡村小镇,有些人喜欢,有些人不喜欢。当然作为大部分从中国北京上海这种熙熙攘攘的大城市出来的学生,许多人都会表示不喜欢。对此我的评价是范德堡很安静,可以陶冶性情。而这种陶冶可以在之后的人生中有很大帮助。你能从这里得到的,和从纽约市中心的哥伦比亚得到的,是两种不一样的四年。范德堡和很多其他前十五学校不一样的,比如免申请费,四年住校,学费问题(一会细述),以及不管是单人间,双人间,三人间或者套间,房费都是一样的(和免申请费一样,为了平等,让贫困学生也能住和富有学生一样的宿舍)。这其中的种种让我在申请中和申请后都感受到了最大的善意,使得我最后选择了范德堡。范德堡要求学生有广博的学识,最主要的文理学院要求学生必须要上至少七个系的课程,除了自己本身的专业之外,必修数学,科学,人文,美国文化,世界文化等才可毕业。同时,为了鼓励学生多学多看,上4~6节课的学费是一样的,不像其他学校,多上一个学分就要多交一个学分的学费。因此导致,抱着不上白不上的占便宜心态,很多学生(包括我)都会选择每学期上6节课,导致课业很重,学习很累,学习完了很满足(finger crossed)。范德堡近年对中国学生有扩招的趋势,我们这届只有二十左右的中国学生,然现在的大一约有九十多人。当然还是不要忘了看去年的录取率。范德堡的教育学院,医学院,全美都名列前茅。所有本科学生中一半乃至更多的学生都会double教育学院的HOD专业,类似于人力资源,很多金融巨擘都会专门点名招收此专业的学生。对于想学商的学生,范德堡有金融硕士(你会发现很多藤校并没有)。好像透露了太多内幕,该回归沉默了。

当年在陈兄的帮助下来到了范德堡,今年申请研究生过程中,陈兄作为朋友身份也多有建议。经过多番考虑,明年会去康奈尔读商。同学们出路大多不错。希望明年看到你出现在范德堡~

重要通知

本文著作权归原作者所有。了解更多AADPS学员的第一手感想。本文的原始发布地址是https://aadps.net/2019/10905.html

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的机构号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

康奈尔申请心得

能够被康奈尔大学的文理学院录取,对我而言,绝对是个惊喜,因为我的标化考试成绩并不占优势。好运气加上在文书中表现出的和学校理念的契合,帮了我很大的忙。

整个申请对我来说就是一个不断了解自我,不断了解学校,最后选择一个最适合的切点的过程。在我刚刚开始通过网络,找到AADPS并加入他们的美本申请服务的时候,我是很茫然的。自己无非是一个普通的中国女孩,容易沉默,有点小兴趣,有些小活动,在课内表现还不错。但如何定位自己,如何将自己充分地在文书中展现出来,都是我十分困惑的地方。

AADPS的老师帮助了我很多。在两次的brainstorm中,陈欣老师很耐心地从多个方面帮我发散思维,从兴趣爱好,到所遇到最尴尬的事,最有成就感的事……慢慢地,我可以把我内心真正的想法讲述出来。我的common主文书讲述的就是我自己生活中的困惑,在文书修改的同时,我也对自己进行不断的反思和改变。当文书最终定稿的时候,我的困惑也找到了合适的解决方法。

在Why major 和Why college文书的写作上,陈欣老师更是给了我大力的帮助,不仅是在遣词造句上,更是在与学校主旨的契合上。如何让生物专业的主题突出又不失新颖,如何能够在表达自己的同时展现出对文理学院多元化知识的渴望?陈欣老师敏锐的洞察力还有广博的学识发挥了作用~根据我的家庭背景,陈老师找到了中药这个很适合而且很新颖的切入点,还建议我加入屠呦呦研究员获得诺贝尔奖的元素,使得专业文书从一个独特的角度表现了我对于植物、人类和自然相互关系的思考,既符合一个高中生对于周围世界的真实感知,又不失科学性和严谨性。文书中,陈欣老师还引用了圣经故事,令我十分惊艳,感觉文章妥妥地上了一个高度。

我还参加了康奈尔的校友面试。记得北京那一天下了很大的雪,陈欣老师依旧早早地到了约定的地点,为我做模拟面试。也正是在那次模拟面试中,陈欣老师指出了我许多专业名词的漏洞,并帮我分析了回答问题的结构。在他的提醒下,我做了充分的准备,并和康奈尔的校友共度了快乐的40分钟。面试给我最深刻的感受是,互相的交流是最重要的,不是自说自话,而是认真倾听,思考,讨论。只要真诚、乐观、对学校热爱,就可以留下不错的印象。

再回顾我的康奈尔申请,我想收获的远不止于一个心仪学校的offer。

重要通知

本文著作权归原作者所有。了解更多AADPS学员的第一手感想。本文的原始发布地址是https://aadps.net/2019/8806.html

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的机构号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

记一次成功的留学文书指导

Hi,大家好,我是Jason,坐标美东康村某教会学校。UChi Class of  2023,专业political science。非常感激这段时间陈老师和AADPS提供的鼎力支持。没有他们,很难想象在标化上略有欠缺的我能被梦校梦专业顺风顺水录取。正因如此,我主动请缨,用这篇文章分享一些我在之前申请中和AADPS的愉快合作体验。

因为之前和父母商量,在申请过程中希望自己主导整个过程,作为一生一次的锻炼,因而并没有选择传统大包大揽的中介服务。对于不足的部分,学校counselor这边也给到了相对给力的帮助。

在网络搜索时中发现了AADPS这个权威专业的美本留学文书指南,很惊叹在这个浮躁且商业化的社会,还会有这么一帮人坚守着把一件看似不起眼的小事做到极致。阅读了AADPS往届学员的分享之后,我已经深信不疑这里就是最适合我的机构,于是通过互联网,我和陈老师以及小助理他们就相识、相知了。虽然没有使用完整的申请服务并成为陈老师亲传弟子是一桩憾事,但是在不算太长的指导交往过程中,我自觉已然是成长了不少的。

当初看到陈老师网站上的个人简介,最吸引我的(也同时是让我有小小担心的)地方,是他的理工科背景。事实上,我很快发现这完全是一个意外之喜。因为在之前几篇主文初稿的笔谈交流中,我已经完全被陈老师的人文情怀和哲思所折服。每每当我对着空白的电脑屏幕一筹莫展,任凭几个小时哗哗流逝时,陈老师的一封邮件就能一语道破天机,在让我茅塞顿开的同时又不过多干扰我自己的思路。理工男的缜密逻辑和对细节的追求,加上罕见的十余年一线留学指导经验,助我在留学文书中自由自在的展现真我,赋予文字一种独特且独到的风韵。

期间还有一个小插曲,面对期中考试和申请的双重重压,我的宗教科论文一直拖到了due的前两天。本身对耶稣救世并不感冒的我,也不得不认真起来了。怀着病急乱投医的想法,我向陈老师求援,却没想到得到了异常详实耐心、远超一家正常留学机构职责范围的指导。经此一役,我对老师确实心生敬佩。

关于芝大的文书,也可以稍微说说,这也是我很过意不去的地方。最初我和陈老师经过反复讨论,定的是写floccu这道题,用法语和中文造词体现我的跨文化背景。经过反复修改,篇幅达八百词的文书已经基本成型,看过的学校老师和父母的密友也都十分认可,但作为一个完美主义的处女座,我还是觉得哪里缺了一点什么。终于,在临近10月底学校组织的一场参观中,我受到了Barbara Kruger的富有政治意味的设计作品启发,觉得自己也可以把艺术和未来大学专业结合起来,以多元化的形式做一回第一次吃螃蟹的人(这道题目是芝大历年来首次可以提交艺术作品作为文书)。当我惴惴不安地为给陈老师在高峰期带来额外工作量而表示歉意时,他微信语音中传来的爽朗笑声完全打消了我的疑虑。在他的鼓励、启发和协作下,我采用了中国传统的国画技法体现了一个当代有争议性的主题,并在陈老师的悉心指导下完成了creator's statement的部分。毫无疑问,这件作品最终成为了我整个申请的climax和highlight。

回首自己的申请历程乃至将近十八年的人生,感觉是被一位位良师益友推向了正确的轨道。心有猛虎,细嗅蔷薇,愿我们在美丽的芝大校园中相遇。

重要通知

本文著作权归原作者所有。了解更多AADPS学员的第一手感想。本文的原始发布地址是https://aadps.net/2018/14383.html

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的机构号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

四年,从威斯康星到哥大

AADPS的陈欣老师早在2010年曾有幸辅导这位优秀的学员进入威斯康星麦迪逊大学文理学院的荣誉课程项目。四年之后,又有缘再度指导她的金融和经济方向的研究生申请。以下全文转载她的邮件,无删改。


至今,我的研究生申请已经收到来自哥大,约翰霍普金斯,纽约,南加州等大学的offers以及杜克大学的waitlist (Duke因个人原因申请的比较晚,2月初才提交申请)。 回顾这不到半年的申请经历,成绩中上,经历一般但不出彩的我能有今天的丰收离不开陈欣老师对我的帮助。在我看来,用这几个词来形容陈欣老师的写作特色再恰当不过了:角度独特,用词精炼,底蕴深厚,深谙文书之道。

角度独特

每篇ps基本都由学术、实习和课外经历组成,如何在结构上摆脱千篇一律,在内容上出尘脱俗,成为很重要但较难突破的问题。在写作初期,我首先将自己本科的各种经历比较详细的叙述出来。在了解我的背景后,陈欣老师发现我在联合国参观学习访问一周的经历会是一个很好的首段切入。首先学校希望学生能够将来学以致用,奉献社会。其次,这个切入会很自然的联系到我的长短期目标及申请原因。就这样,和大多数以实习或学术经历开头亦或描述申请学校、专业特色,家庭影响的ps相比,我的首段自然的凸显了个人特色,摆脱了大众模式。 另外,意识到我的三个专业和三个实习存在一定的联系,在文章结构上,陈欣老师用“相映”的结构将实习,课程和专业联系在一起,避免了仅仅分别描述各部分然后“堆砌”在一起的状况,从而使文章充满内在逻辑感。

不仅如此,对于一些学校的essay,陈欣老师也有他的独到见解。例如:南加州大学要求列举数据分析的例子并进行利弊分析。面对这样的题目,多数情况下,我们会采取节选改编ps中,自己分析解决问题的例子的方式,来回答题目。但陈欣老师提出利用前沿的智能手表,人工智能这一思路,结合我所学的风险管理及精算保险领域的应用进行分析。陈欣老师的角度让我豁然开朗。以这样具有前瞻性的方式进行回答,不仅巧妙的结合了我的学术背景,更提升我的经历和问题分析的高度。在申请纽约大学时,陈欣老师提议的对于“微观金融”的构思设想,也让我避开了大众思路,另辟蹊径。

常言道,站在巨人的肩膀上,你能看的更远。 通过陈欣老师的帮助,使得我的文书写作思路开阔,写作内容独到深刻。

用词精炼,底蕴深厚

好的文书不仅需要好的结构、内容,完美自然的美式用词及表述方式也是至关重要的。因为我是美本的学生,所以自己也有尝试着写些申请文书让陈欣老师帮忙修改。我常常发现一些我需要两三行才能表述清楚地事情。陈欣老师能够精简到一行甚至用几个词就能精炼的表述。不仅如此,我曾经把陈欣老师帮忙写的文书拿给我的美国教授们看,他们不约而同都赞叹文章的用词和语言的表达非常地道。

在申请和平时学习过程中,不论哪一领域我需要陈欣老师的指导,他都了解,能够给出切实可行的策略并且迅速把相关可参考的文献资料或网页链接等提供给我。在申请纽约大学的时候,需要提交1分钟的视频,从没接触过这一领域的我顿时抓狂。没想到,陈欣老师不仅帮我写出演讲稿,更指导我如何拍摄视频,甚至能够帮我对视频做最后的剪辑。除此以外,在文书学术经历部分,对于我描述的精算,金融,统计或风控的理论知识,陈欣老师能够把他们恰当的结合并加入到现实的例子中作为我的学术应用,这大大的弥补了我没有研究经历这一缺陷。同时,通过陈欣老师对我实习经历的拓展和补充,使得我的经历不仅能够充分展现我对所学专业知识的应用,更体现出我做事的风格和个人能力。在陈欣老师笔下,那些在我看来曾经“平淡”的经历都立体和生动起来。经历不再仅仅是经历,而是一个“鲜活”的我。


俗话说,授之以鱼,不如授之以渔。在陈欣老师的引导下,我在这个申请季,收获的不仅仅是offers,更学会了如何去写独到的,具有个人特色的并且内容丰富深刻的文书。前些日子,我用陈欣老师传授的思考方式帮助朋友修改文书,最终她如愿的拿到UW-Madison的offer。

我的研究生申请,在陈欣老师的用心付出下,这样圆满结束了。 感谢缘分,让我结识了,亦师亦友的陈欣老师;感谢申请经历,让我有机会借助陈欣老师的学识和视野去学习、眺望;感谢陈欣老师,让我从一个追梦者变成自己梦想的实现者!

重要通知

本文著作权归原作者所有。了解更多AADPS学员的第一手感想。本文的原始发布地址是https://aadps.net/2018/8754.html

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的机构号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

金融海归的职场经

作为一名金融海归,我也曾经和你们一样:pk过托福、GMAT,体验过一天不消停的各种team meet,追赶过汹涌而来的花式project deadline,也经历过考试周扎堆扑来的presentation、quiz和exam……

祝贺你们即将或者已经学成归国,相信你们的付出和所学在今后总会带给你们各种好的收获。不过,人生总是挑战不断,马上你们又面临接踵而至的就业压力。作为一名金融海归求职的过来人,我在此同大家分享下关于求职和职业发展的一点小看法,供大家参考。

关于求职,我相信很多朋友跟我起初找工作时一样,对一些岗位会有先入为主的看法, 比如“我觉得XX工作很热门,我一定要做这个”或者“我感觉XX岗位好low,我才不会做”。对于这类想法,我想说——职位没有绝对的优劣贵贱,只有适合或不适合,而求职应该少一点主观臆断的想法,多围绕“我能做什么”和“我想做什么”这个理性的维度来做思考。

首先解决能不能做的问题。在求职的时候,我们先要静下心来仔细研读下职位的具体工作职责和技能要求,简要认识下职位的日常工作内容,并粗略分析下个人技能在现阶段能否同职位相匹配。在此初步分析的基础上,可以进一步发散思考下,自己未来在这份工作上有没有持续学习的能力,具不具备比较大的发展潜力。之后可以更进一步想一下,做这份工作可能会帮助塑造你具体哪些能力、带给你哪些方面的知识,这些能力和知识对你日后在金融行业会有怎样的帮助,还有跟这份工作相关联的一些职位日后可能会带给你哪些新的选择和发展机会等等。这里我想补充下,持续学习真的很重要,如果你有一个能力方面的优势,也别太得意忘形,请记住继续虚心学习,不要停下你的脚步,否则很快会优势不再,如果你发现自己有能力盲点,更要赶紧去学。活到老学到老真的不只是一个谚语,如果想consistently outstanding,一定要比常人做出更多努力来持续学习、不断提高自己。我身边每一位在职场上十分优秀的人毫无例外都是对新事物接受能力极高、能积极汲取知识并且闲不下来的一类人。

其次是解决想不想做的问题。虽然说兴趣是最好的老师,但兴趣一是可能源于主观幻觉而不准,二是因为可以后天再培养所以参考价值会打折扣。我们刚毕业缺乏工作实践经验,对于很多岗位的看法其实还停留在简单想象的阶段,特别容易有误区。书本和现实世界还是有很大差距的,我们源于学校的很多经验其实并不太适合直接运用到实践中,你以为你擅长的或者喜爱的东西在现实中可能并不那么尽如人意,你以为你很拙劣的一些方面也可能因为现实客观环境的一些因素激起了你的热情要你有了改观。所以我觉得入职初期,不能把兴趣当成一个一成不变的原则去遵循,不要太早就放弃其他可能,而要用心去体验,慢慢调整路线、找准方向,切忌心急。海归相对于国内研究生比较缺乏社会实践的机会,国内研究生可能第二年基本上就没有什么实质上的课程安排了,同学们有时间去自由地去找实习或参加各种校招,海归从在学校学习到求职之间缺乏类似国内研究生这种充裕的社会实践阶段。但是我觉得海归们如果对自己的职业选择还比较迷惘,不用着急定下来去正式入职,可以考虑毕业后多花几个月或者一年左右的时间去尽可能多体验下不同的工作实习机会,宁愿慢点做选择也不要着急地做出错误的选择,现阶段多体验多改变选择的代价是相对较低的,随着年龄的增长,换工作甚至换行业的机会成本会越来越大。

关于职业发展,我觉得是一个不断试错、纠错和适应的过程,很难去提前设定一个所谓的长期目标或规划。社会和行业是瞬息万变的,没有人可以知道自己三年后甚至哪怕一年后会从事什么岗位、做出什么新的选择,长期规划基本就是没法规划。与执着于做所谓长期职业发展计划相比我更推崇大家做短期的小计划,制定短期的小目标,并且尽可能具体一些,比如:今天我有什么to do list需要完成、这个星期我有什么事情具体进度需要去执行。这样既能够很好的提高时间利用效率,又方便根据具体情况灵活做出调整、目标清晰。

希望以上我的感悟能给大家带来一丝帮助,也很感谢陈老师一直作为良师益友伴我前行。职场之路漫长而充满挑战,我们一直在路上,加油!

重要通知

本文著作权归原作者所有。了解更多AADPS学员的第一手感想。本文的原始发布地址是https://aadps.net/2018/12370.html

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的机构号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

普高党临时决定出国,谈谈留学备考的那些教训

我是高三临时决定出国的,整个过程比较波折,所幸结果还算圆满,现在已经获得了加州戴维斯和加州圣地亚哥的录取,正在等待梦校布兰戴斯。现在回头再看,在时间上规划的不算理想,把那些自己做的不够好的写下来,希望能对一些同样有留学计划的高三学生有所帮助。

以201x年的9月开学为界限,在这之后的高三学生,如果决定出国的打算,那么他面临的是201(x+2)学年的春季入学或者夏季入学。

以2015年9月开学,10月左右离开学校的高三学生为例,他需要准备的是2016年的SAT/ACT考试,来申请2017年的入学。2015年9月离开学校,因为有2016年一年的gap year,所以准备sat 2或者 ap来抵消gap year带来的负面影响会比较有利。2016年1月左右会有sat 2考试,5月左右会有ap考试,这两个考试的准备时间因人而异。不过不论是sat2 还是ap 都很建议买一本真题集,因为教材和真题的差异比较大。当然,托福,sat 1 的准备也需要同时进行。托福需要我们提前半年左右开始报名,所以安排好时间后可以先行进行托福的报名;sat考位的情况视地区而定,但因为时间相对固定(5,6,10,11,12 今年sat进行了改革,时间未更新),也可以先行报名。

每个人都可能会听过一句,“留学要趁早”。开始许多人会不理解,但回过头看,这句话确实很有道理。不过我想更通俗的说是“规划要趁早”。出国和高考注定是阳关路和独木桥,鱼和熊掌不可兼得,一旦明确自己的方向,就应该尽早的做出规划。以此来看,突然的决定是不可取的,但另一方面,也更加凸显了留学顾问的重要性。尽早的确定留学机构,尽早的联系留学顾问老师,绝对是一件事半功倍的事情。作为AADPS的学子,我肯定非常推荐AADPS。我想留学机构的老师在一定程度上都承担了沟通,交流的角色,但其实每一篇文书的每一个字,才是老师们真正的心血。在这两方面,我想AADPS都无与伦比。

谈谈自己,这一路走来,有班主任对我的决定的理解,也有父母对我的支持,以及AADPS老师们给予的莫大的帮助。也许一些人会认为出国路是一条自己的道路,我们自己选择,自己行走,跨过万难然后成功走到了大洋彼岸。这么想,站在自己的角度也许没错,但如果有一天,能回头看看,其实我们的每一步都有身边人的支持。每一个出国的学子都有自己出国的理由,追梦,求学,亦或是其他,这条路终归是艰辛的,走在这条路上,我们不自觉的会沉浸其中,认为自己是主角。我写的这些,只是希望能做出一点努力,让那些准备出国的,或者是已经完成梦想的学子,能想到其实,我们身边的人,也尽了他们最大的努力。

重要通知

本文著作权归原作者所有。了解更多AADPS学员的第一手感想。本文的原始发布地址是https://aadps.net/2018/10662.html

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的机构号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

【工程与计算机】团队版微信智能秘书的制作

近年来,美国大学的计算机(Computer Science, CS)和电子工程(Electrical Engineering, EE)专业录取要求随着申请人数的增加逐渐水涨船高。但另一方面,国内的相关工程教育却基本是缺位的。为了弥补这种差距,陈欣老师在过去的几年里,通过我们的规划项目辅导了一批学员。通过身体力行的学习利用专业知识解决生活中的问题,他们走出了自己的舒适区。事实证明,学校对这份努力也是相当认可的。

为了帮助到更多的人,陈欣老师在此整理一些往年的成功项目经验,并同简化过的项目源代码一道与大家分享。希望能够抛砖引玉,给同学们一些思路和帮助,为之后的申请助一臂之力。毕竟短期看,CS/EE是在美国本土就业的捷径,能够较为迅速的收回教育投资;长远看,CS/EE的相关技能也能在诸多行业里起到点石成金之效。

问题

AADPS的一位学员家长在银行担任领导职务,负责的领域较为繁杂琐碎。之前,团队采用比较原始的白板、便条等方式分配工作并统筹时间安排,但是经常有遇到组员在外公干而不能得到及时通知的情况出现。在校完成了AP Computer Science的学习之后,学员对这个问题主动进行了一系列调查研究,希望能够利用自己新掌握的知识与技能让家长领导的团队可以更便利的规划日程安排。

工具

Java EE

企业版Java是一个开发部署基于网络服务的企业软件的计算平台,采用面向对象的Java编程语言。企业版Java是对标准Java的一个扩展,额外提供了在对象关系映射、分布式与多层级架构和网络服务等方面的接口。平台的设计原则主要基于应用服务的模块化组件模式。

微信企业号


微信企业号是微信为企业客户提供的移动服务,旨在提供企业移动应用入口。它可以帮助企业建立员工、上下游供应链与企业IT系统间的连接。利用企业号,企业或第三方服务商可以快速、低成本的实现高质量的企业移动轻应用,实现生产、管理、协作、运营的移动化。企业号作为企业IT移动化解决方案,相比企业自己开发APP具有明显的优势,具体为快速移动化办公、开发成本较低、零门槛使用。

Eclipse


Eclipse是日前最流行的Java集成开发环境(integrated development environment),由一个基本的工作空间和一个发达的可定制插件系统组成。Eclipse本身也由Java编写,其前身由IBM公司的团队开发,但很快就成为了一个完全开源的项目,由非营利的Eclipse基金会主导。对于本项目,需要下载用于Java EE开发的版本或在其他版本的Eclipse菜单里安装对应的软件功能包。

原理

主动调用与回调模式

微信企业号应用的基本原理是需要我们自己的应用服务器与微信服务器进行通讯。对于最基础的功能而言,微信服务器将能作为中介把我们的消息主动推送给用户,也可以转发用户发送的消息内容,适用的通信模式亦有两种。

当我们的企业号应用服务器需要主动给用户发送消息时,可以通过主动模式联络微信的服务器。主动模式是一个相对简单的两步操作:第一步,我们的服务器将访问gettoken接口,用corpid和corpsecret换取用于下一步操作的验证令牌access_token;第二步,服务器继续访问message/send接口,将消息封装到一个JSON数据结构里,使用HTML POST方法提交。如果令牌传递无误,且递交的数据没有任何问题的话,用户将能立刻在对应的企业号应用里收到新发送的消息。为了便利起见,我们用专门的Wechat类封装了这一整个过程,只需要调用sendMsg方法即可一次把消息发给对应的用户。

当然,因为我们的服务器无法预判用户会在什么时机与应用交互。因此在用户这方发送消息时,会需要微信的服务器通过回调模式进行中转。为安全起见,微信服务器使用AES算法对所有消息进行加密。我们的程序里面首先要按照微信的规范,正确的处理echostr解密,这样才能在企业号后台提交回调url并正确通过验证。通过回调模式,服务器端可以获得用户名以及消息正文,以供后续处理。如果我们的服务在回调模式时发生错误并返回错误代码,微信服务器将自动重试三次。

状态机


有限状态机(finite-state machine)是用来描述一个事物多个状态之间相互切换关系的数学模型,可以用图表或者图形来描述一个状态机。

虽然无状态(stateless)的模型在很多时候能极大的简化编程并降低出错的可能性。但是在实际操作中,熟练掌握状态机并用它来描述所期待的应用行为是非常有必要的。就我们自己的微信智能秘书而言,会需要根据与用户对话的上下文来进行状态的切换,并处理对应的关键字。具体而言,一开始是没有特定状态的,用户可以输入“用户名”确认自己的内部用户名,也可以输入“添加事件”(状态1)或“查找事件”(状态2)得到对应后续操作的提示并进入相应的状态。对于添加事件,用户可以逐一按格式增加新事件,回复e的话则会退出模式并将状态清除。查找事件也大同小异,重点是在查找以后又有选项可以进入状态代码为3的编辑/删除模式。

在服务端的程序中,我们使用Java的哈希映射(HashMap)来在内存中存储每个用户自己的状态,这样可以兼顾储存空间的大小和访问效率。这一块没有做下面提到的持久化是因为用户的微信应用状态不是一个非常关键的量。比如在进入查找模式以后,隔着一两天不再访问,再次使用应用的话,是否还在查找模式相对就不很重要了。

持久化

对于我们实现的用于响应来自微信回调模式的Java EE Servlet,相关信息本身在Servlet的生命周期里都是直接以Java对象的形式存储在内存里。但是考虑到以下因素:

  • Tomcat在Servlet有一段时间不活跃以后,会自动终止应用以节省服务器资源
  • 服务器端可能需要不定期升级Tomcat和Java,在这种情况下Servlet也必须暂时中断
  • 服务器整体可能因维护而需要重启

另一方面,很多网络服务本身都必须定期重启,以防止出现内存泄漏(memory leak)等一系列最终会导致服务器无法正常工作的状况。

由此我们明白,一直将企业诸如日程安排之类的重要数据存储在内存里不是长久之计。需要通过一些方法,将数据保存到硬盘等持久存储介质(persistent storage),待需要使用时再读取回来。在我们的EventList这个数据类里,简单实现了将日程列表转化为字符串的方法。而在另一个Event数据类里,也实现了从字符串到日程的构造函数(constructor)。那么在实现Servlet的Receiver类里,我们就在日程有变化时做一次保存操作,将字符串写入到磁盘文件里。而在初始化的init函数里,我们又可以读取该文件的最新内容,恢复原本的EventList。

示例


上图展示了项目开发环境和服务器端管理界面。注意为让示例代码可以正常工作,需要正确配置自己的服务器以及微信企业号,并将相关参数填写到代码的相应位置。在服务端和本地开发机上均需要安装Tomcat 7。示例项目已经关联了所需的微信消息解密库。

在完成开发后,项目上点击右键,即可在菜单中选择导出到WAR文件,然后就能在服务器端管理界面上传部署。

思考

  1. 对于示例程序,目前只提供了日程查询和管理功能。那么是否有可能让使用者在日程活动即将开始前得到来自服务器端的主动提醒?这一功能该如何设计?(提示:cron)
  2. 当前我们使用简单的文本文件读取和写入来将日程持久化,但这一方式在使用人数和频度急剧增加以后,会在效率和可靠性上带来一系列的问题。当前使用一种数据库管理系统来储存网络应用的数据是一个很通用的做法,如何在此应用里实现这一点?
  3. 对于管理员,如何更加方便的将企业员工导入到应用里并随后进行管理?
  4. 标准Java在编程时很容易在本地开发机器上进行调试。但企业版Java的代码在某些情况下由于种种限制(比如微信企业号只许可预先设定的回调地址),必须运行在服务器上。在这个前提下,怎样提高开发效率并迅速定位可能出现的编程错误?

以上就是我们今天分享的案例,欢迎大家登陆网站后下载项目源码,通过实践来加深理解。简单的疑问可以评论在文章下,陈欣老师将会在有空时予以解答。如果对我们的服务项目感兴趣,希望获取陈欣老师一对一指导的,可以加上老师的私人微信zipspeed。

重要通知

本文为AADPS原创,原始发布地址是https://aadps.net/2018/11667.html。我们每年夏季会更新最新美国大学本科申请文书题目和权威院校指南,欢迎把网站加入浏览器收藏夹。

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的公众号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

如何拿下对出国党套路最深的美国大学

之前在朋友圈广为传播的微信文章里面有看到这样的论述。

G村录不了

但是我们正有一位学员在“不认识AO的情况下RD阶段直接拿到了Grinnell的offer(而不是off waitlist)”。以下是她的分享。


在2015到2016的申请季里,我经历了一段特别紧张而又难忘的时光,而我在AADPS更是有了一段与其他人都不太一样的经历。在申请季里我从前途茫茫无望到最终被心仪的学校(Grinnell College)录取,仿佛经历了一场如过山车般的旅途,也颇有点“起死回生”的味道。而在这里,我也要尤其感谢AADPS的陈欣老师给予我的巨大而专业的帮助。

比起大多数人早早就成为了AADPS的学员,我与AADPS的缘分却来的晚了些,是在12月,嗯对,你没看错,就是在RD截止日期不到半个月的时候。其实我在高一的时候就有出国的打算,各项考试也安排的井井有条,唯独在选择中介上面不太慎重,导致了后面我申请材料出现一系列问题,受到很大打击。今天毕竟不是来扒中介的哈,所以这里提到这一点只是提醒大家申请季每一步都要走的慎重,要仔细审视自己需要什么,自己的目标是什么,不要盲目做决定。就是由于这个原因,我在12月份的ED、EA阶段连续失利,目标校保底校纷纷跪掉,终于发觉了自己的申请材料可能出现了很大的漏洞。而这时,我有一位非常善良又优秀的同学给我介绍了她的机构AADPS,今天也要特别感谢这位同学。所以我就带着一堆零零散散的材料和一颗有点崩溃的心来到了AADPS开始了我的“起死回生”之路。在看了我的之前申请材料后,陈老师给出的意见是太过单调,有的地方甚至存在“硬伤”,自己的优势没有体现,小错误却不少,更别提选校也不太符合实际也不科学,这样错上加错导致了之前的失利。下面就让我分几块说说吧。

首先想说说我这一路以来体会到的关于到底如何让学校喜欢上我的这个问题,其实就是,我怎样才能被录取?申请中包括的无非是标化成绩,高中表现,申请材料(包括文书、活动、教师推荐等等)和时不时出现的面试机会。申请季前期,我一直都在纠结于我自己如何变得足够优秀以让学校看上我,可后来才发现,这里面少了一个同样重要的条件就是我如何能与学校更匹配。有时候不是因为你不够优秀学校不爱你,只是你们真的不合适啊!所以,假如想有一个好的录取结果,我自己看来要最注重的两点就是:你与学校的匹配程度与你个人的优秀程度(两点我觉得是不分前后的)。

其实想找个“门登户对”的学校比起如何完美你的申请要简单多啦,就是如何选校嘛。可能我们在申请时还没有太多的专业倾向,但是至少有大概的偏向,是文科还是理科?是偏向于用思辨的方式还是偏向于用数字和公式的方式解决问题?我在选校时就注意到我自己还是偏向于文科的,且偏向于文理学院的整体氛围,比起大U的热闹环境我更喜欢细致化、个人化的教育体验,而且我很喜欢文理学院里自由又精致的气氛。而且就我自己的经历与性格,我觉得文理学院会对我是更好的选择。这里绝无优劣比较的意思,每一个类型里优秀的学校都数不胜数,适合自己的才是最重要的。关于如何判断学校是不是适合自己可以多看看学校的网站和关于学校的资料,慢慢找感觉。

找到了适合的学校,下面要做的就是如何让也学校觉得我们适合它,觉得我们足够优秀去匹配它。这大概就是通过文书、活动、推荐信等体现了。关于文书,我描述了自己一段比较难忘的经历,在来AADPS前我的文书只是描写了这件事情是怎么发生的,可在陈欣老师的指点下我才意识到这件事情带给我的反思才是最重要的,没有反思文章就显得比较肤浅。所以在短短的半个月里,我以以前的文章为框架,加入了结合当代社会现象产生的看法甚至一小部分由历史得来的想法,而且其中的一些看法可能也与文理学院总体思想的方向比较一致,最终得到了不错的效果。关于活动,我的感受是要“完整”。我们可能在某个方面有特长,但是我们同时也要在其他方面也有涉足(毕竟无论是在哪里的学校,都会喜欢德智体美劳全面发展的学生嘛)。我之前的活动放眼望去大多是关于志愿活动,不免显得有些乏味。而在老师的帮助下,我才发现,其实我还有很多的事情可以计入到活动栏中,甚至是一些平时做的锻炼,参加的运动团队。在陈欣老师的帮助下我一个平时电脑程序一窍不通的girl甚至当起了“程序猿”。在对自己不断地挖掘下,我的活动栏渐渐变得“丰满起来”,感觉仿佛从一个2D的图片变成了一个3D的影像,展现了一个完完整整的申请者的形象。关于我们是否够优秀还有一个硬拼硬的条件就是标化考试啦,人人都躲不过去的东西,其实也是最实实在在完全客观的项目。标化考试固然重要,毕竟是学科能力的体现,可是以我的经历,标化考试一般不是我们是否被录取的决定因素(注意是一般,分控的学校也不是没有啦),学校看重的还是你最完整的形象是否够优秀,或者是否符合他们所需要学生的标准。对于SAT 1考试,我能说的最大忠告是拉长战线,“背好单词”!!!这是来自一个用考试前最后一周时间背下来巴朗3500的人的最好建议。我最后的考试成绩是2100多,虽然不算很高的分数,但是和我申请学校的分数段也比较匹配,所以还是前面说的,合适最重要!申请季里我也遇到了面试,虽然不多,但是却遇到了突击的电话面试,而且问了一些不是很常见的问题,比如“这个世界上你最想和谁对话、家庭对你的意义等等”,对于一个完全没有预告的突击面试来说,这些问题还确实是不简单,所以一定要做好万全的准备。

我的申请季是一段紧张、独特而又充满了惊喜的经历,在这个阶段中我也遇到了很多帮助我、见证我成长的人,其实每个人的申请季都是这样,我们会在这个过程发现自己身上其实不乏闪光点,这大概也是申请季的魅力之处。在这里也希望即将进入申请季的学弟学妹们可以在即将到来的申请季里遇到心仪的学校,遇到更好的自己。

重要通知

本文著作权归原作者所有。了解更多AADPS学员的第一手感想。本文的原始发布地址是https://aadps.net/2018/8486.html

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的机构号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。

这才是正宗的“极客范儿”

回想起2015年的那个夏天,小X会说他度过了一个“实在不怎么酷”的夏天。大部分的时间他都拿着个乒乓球,在自己电脑的摄像镜头面前左右移动,或者上窜下跳,看那个乒乓球在他正在制作的动态捕捉软件“虚拟教练”里的运动轨迹。看着那一个小红点在屏幕上紧紧咬着小球不放,他说自己的心情也跟那个小球似的蹦来蹦去。后来在自己的美国大学申请文书里,他是这样生动地描述这个过程的:“我像个鸵鸟一样,蹲在自己的凳子上,举着个乒乓球看它从屏幕前滑过,或者像个呆子一样,发出阵阵莫名其妙的欢呼声。我的妈妈说,你不是在学编程吗,怎么玩起了乒乓球呢?”

小X的这个动态捕捉软件制作的项目,正是我们AADPS为学员量身打造的众多计算机科学和工程的项目之一。这个项目的起源,说来还相当有趣,我们另一个学员小D在游泳队做教练助理的时候,发现游泳运动员的成绩测量都需要靠人工来进行,在泳池边安个摄像机后,还得人工按秒表,再依靠教练或者助理的经验来判断运动员什么时候增速,什么时候减速。如果是缺乏经验的人,就很难判断出来运动员到底应该什么时候加速,加速到什么程度,是否合理。于是她跟我们AADPS的老师提出了自己的这个疑惑:有没有这样一个app,能够准确地测量出游泳运动员的运动轨迹和速率,然后对加速和减速提出科学合理的建议?

这个建议让我们的老师有了新的灵感,如果采用OpenCV提供的开放数据源,制作一个能够捕捉游泳运动员的动作的软件,应该就能解决这个问题。对软件编程很有兴趣,并且以后希望申请计算机科学专业的小X,迅速地相应了我们的号召,加入到了动态软件编程的项目组中,并且成为了项目的中坚力量。如何捕捉运动员的动作?怎样计算他们的运动效率?如何针对他们的运动效率提出最优化的建议?这几个问题着实让我们项目组里的老师和同学们费了一番脑筋。提出“虚拟教练”这个概念的同学,扛着摄像机在游泳队里拍了一个又一个的视频,好让负责编程的同学更好地理解运动员训练的规律。而编程的小X,则在思考怎样让软件能够更好地锁定运动员的帽子,测量出更精准的游动的速度。于是便出现了本文开头的一幕:小X拿着乒乓球来模拟泳帽,让乒乓球上下移动,看软件是否能够跟得上目标的移动,看测量出来的数值是否准确。

编程的时候总会出现各种各样的岔子,不断地修理bug,完善软件,然后继续修理bug,然后继续完善软件,小X的“鸵鸟蹲”也持续了一个暑假,直到申请季开始前的九月份,才算大功告成。虽然做出来的只是Beta版本的“虚拟教练”,但是装到手机上,带到泳池边测试一番后,那种如释重负的感觉还是非常畅快的。这个虚拟的“教练”能够在运动员游完一圈后给出精准的数值,比手动按秒的更准确,还能记录下来运动员在整个过程后加速和减速的时段,这个单靠人眼很难判断得出来。“虚拟教练”为小X赢得了一个软件著作权专利以及最终威斯康星大学麦迪逊计算机科学的录取,也让小D得到了一个更好的游泳训练工具。

在AADPS规划项目里的学员,能够得到许多像小X和小D这样的机会,用科学技术来解决人工无法解决的问题,让生活变得更加便利。这就是我们说的“极客范儿”。技术的真正意义,在于改变身边的世界,这也是美国大学所要发掘的珍贵品质。你是否也有这样的“极客范儿”?是否想要做一些事情,无论是编写一个你自己的软件也好,还是做一个独有的公益项目也好?那么就试着行动起来吧,让你的夏天变得更“酷”一些。

重要通知

本文著作权归原作者所有。了解更多AADPS学员的第一手感想。本文的原始发布地址是https://aadps.net/2018/8922.html

因屡次出现我们学员家长将盗用我方的推文发到我们自己的服务群里,严重影响了AADPS的正常经营秩序。AADPS决定禁止对我们专业资讯的一切形式转载或再利用(包括但不限于同行或留学生家长在任何媒体平台的机构号、资讯号、私人号中非法利用我方内容)。一经发现,我方将可能采用一切合法手段维权,恕不另行通知,创业不易,望谅解。