有少量编程基础转CS,这两个课程表哪个比较好些?

avatar 43261
smilingsoul
5447
15
lz的背景是本科学过“大学计算机信息技术”、“C语言”、“Fortran语言”,后来在科研里经常用C和MATLAB处理数据。没有上过CS的先修课,coursera上跟完了S大的Machine Learning没什么压力,目前自己在看Algorithm和Java的课本。

都说转cs需要打好基础+好好刷题才能找到不错的工作,刷题lz会好好努力,但是在课程方面,lz还是想请问一下cs界的前辈,以下两个项目的课表,哪一个对打基础和找工作更好一些?

项目1:
必修6门:Intro to Software Development, Mathematical Foundations of Computer Science, Intro to Computer Systems, Data Structures & Software Design, Computer Systems Programming (C++), Algorithms & Computation.
选修4门:Programming for the Web, Software Engineering, Internet & Web Systems, Database and Information System。以上是项目官网建议的选修课,根据自己的兴趣也可以选网络安全、多核编程与架构、人工智能等等其他课。

项目2:
必修5门:Software Engineering, Introduction to Database Systems, Data Mining and Machine Learning, Human-Computer Interaction Design, Foundations of Artificial Intelligence. 此外还有其他的可以用来做必修的,主要是info system方向的课程,但是lz感兴趣的大概是以上这些。
选修5门:Operating Systems, Introduction to Analysis of Algorithms, Mathematical Foundations for the Information Age, User-Interface Design & Evaluation, Machine Learning for Intelligent Systems (or for Data Science)。此外也还有一些6开头的课比如Advanced programming什么的可以选(但我担心对于ms会不会难度过高?)

lz自己的感觉是,项目1的课程更像一个正常cs的软件类工作,而项目2的课比较偏向data science和前端开发。两个项目的课程基本是都是4-5开头(或者说ms初级课程),所以难度上好像也没有明显哪个更水。这两个项目在课程安排合理的情况下,算法、数据结构、离散数学、os这些cs类基础课也都涵盖了,所以lz纠结了。

大道理lz懂,“看你想找哪个方向的工作”。但lz目前还没有一个很明确的“想找哪个方向”的认识,因为lz目前仅有的对cs的认识还没有能够明确地区分开software developer/engineer、front-end developer等等不同的职业(因为我目前只是理解为都在写代码...)。

这两个项目都算是我申请时的dream项目。。。其中一个已经拿到,另一个可能希望在五六成。由于那个还没出结果的项目的预计放榜日期(根据往年日期推测)跟已经拿到的那个项目要做决定的日期接近,所以到时可能没有足够的时间用来咨询,因此想提前请教一下。。。

谢谢各位!
  • 13
15条回复