DPS909/OSD600 Winter 2018 Lab 2

From CDOT Wiki
Revision as of 00:00, 19 February 2018 by Akkabia (talk | contribs) (3. Blog)
Jump to: navigation, search

Working on Large Open Source Projects

Working on open source projects means working with large and often complex code-bases, custom build systems and test harnesses, using new technologies and tools, and using new workflows. The more you do this, the better you'll get at it.

We'll work with a variety of large open source projects in order to practice. Today we will begin with Microsoft's open source editor, Visual Studio Code

1. Install Visual Studio Code (as a user)

VSCode is one of the most popular editors in use today. It works on all platforms, and has an excellent set of extensions for solving common development problems. It's also free and open source.

Begin by installing VSCode and set it up as a user. Take a look at the docs and find some extensions to install, and get your settings configured.

Throughout this course, it is recommended that you use VSCode for your work.

2. Install Visual Studio Code (as a dev)

If you want to contribute to VSCode (fix bugs, add features), you have to build the code from source instead of only downloading it. Follow these steps to accomplish this:

  1. Read the contributing instructions at https://github.com/Microsoft/vscode/wiki/How-to-Contribute
  2. Fork https://github.com/Microsoft/vscode on GitHub, so you have a copy
  3. Clone your fork locally
  4. Add a remote for Microsoft's repo: git remote add upstream git@github.com:Microsoft/vscode.git
  5. Make sure you can build, run, test, debug VSCode on your local machine

As you follow these steps, keep track of any problems you encounter, steps you follow, and things you learn. We'll use those to blog about our experience later on.

3. Related Technologies

VSCode is a desktop application written using web technologies. It uses a number of popular open source projects, including:

  • TypeScript
  • Electron
  • node.js
  • eslint
  • tslint
  • gulp
  • mocha
  • sinon
  • yarn

Research each of the above, and make sure you are familiar with them. Make sure you have a general knowledge of what each one is about, where to find more information (docs), etc. We will be fixing bugs in this code starting next week, and it's important that you have a working build and general understanding of the technologies involved.

3. Blog

Write a blog post about your experience getting started with VSCode. Some things you could discuss in your post:

  • Which extensions did you install? Why did you choose them? What do they do?
  • Which settings did you change? Why?
  • Did you have an issues trying to get VSCode built from source?
  • What about running the tests?
  • How about live debugging?
  • What did you find out about the related technologies used by VSCode? For example: what are TypeScript and Electron?

Please add a line for your blog in the following table:

# Name GitHub Fork of VSCode (repo URL) Blog Post (URL)
1 Example Name https://github.com/humphd/vscode https://examplestudent.wordpress.com/2018/02/05/working-with-vscode/
2 Yalong Li https://github.com/yalooong/vscode https://yalongxyz.blogspot.ca/2018/02/building-vscode.html
3 Matthew Quan https://github.com/irrationalRock/vscode https://mattprogrammingblog.wordpress.com/2018/02/10/osd600-lab-2-building-vscode/
4 Bakytzhan Apetov https://github.com/apetov/vscode https://bapetov.wordpress.com/2018/02/12/installing-vs-code-from-source/
5 Alex Wang https://github.com/AlexWang-16/vscode
6 Woodson Delhia https://github.com/Woody88/vscode https://woodsondelhia.wordpress.com/2018/02/12/forking-installing-vscode-project/
7 Joseph Pham https://github.com/jpham14/vscode https://jpham14.wordpress.com/2018/02/14/lab-2-visual-studio-code/
8 Yuriy Kartuzov https://github.com/YuriyKartuzov/vscode https://yuriykartuzov.wordpress.com/the-world-of-big-code/
9 Patrick Godbout https://github.com/PatMB30/vscode https://mb30myopensourceblog.blogspot.ca/2018/02/introduction-with-vscode-extensions.html
10 Owen Mak https://github.com/Owen-Mak/vscode https://makowen.wordpress.com/2018/02/12/first-encounter-building-vscode/
11 Oleh Hodovaniuk https://github.com/ohodovaniuk1/vscode https://ohodovaniuk.wordpress.com/2018/02/12/osd600-lab-2-visual-studio-code/
12 Evan Marinzel https://github.com/ermarinz/vscode https://marinsdevspace.wordpress.com/2018/02/14/a-closer-look-at-microsoft-vscode/
13 Pranoy Santosh https://github.com/pranoy10/vscode http://pranoydps909.blogspot.ca/2018/02/working-is-vs-code-source.html
14 Soutrik Barua https://github.com/buttersnipps/vscode http://soutrikbarua.blogspot.ca/2018/02/my-journey-with-visual-studio-code.html
15 Qiliang Chen https://github.com/KignorChan/vscode https://qchen102.blogspot.ca/2018/02/visual-studio-code-developer-edition.html
16 Zukhruf Khan https://github.com/zeddkay/vscode https://zedsdps909blog.wordpress.com/2018/02/13/installing-visual-studio-code-again/
17 Hao Chen https://github.com/haoRchen/vscode https://medium.com/haorc/setting-up-vscode-for-future-contributions-cf579afd83f8
18 Aliaksandr Ushakou https://github.com/aushakou/vscode https://aushakou.wordpress.com/2018/02/15/getting-started-with-vs-code-as-a-developer/
19 Evan Davies https://github.com/EmdaviesSeneca/vscode http://openthoughtsopensource.blogspot.ca/2018/02/forking-and-installing-vscode.html
20 Leandro Navarro https://github.com/jlnavarro42/vscode https://wordpress.com/post/leandroosdblog.wordpress.com/13
21 Jafar Frotan https://github.com/a-one-d-one/vscode https://medium.com/@jaf.frotan/setting-up-visual-studio-code-2b7555c69862
22 Hongcheng Zhang https://github.com/StevenZhang123/vscode https://hongcheng1993.wordpress.com/2018/02/15/lab2-open-the-visual-studio-code-dev-and-install-extensions/
23 Zhihao Cai https://github.com/josechoy/vscode https://choyzhihao.wordpress.com/2018/02/14/get-to-know-vscode-as-a-developer/
24 Kelvin Cho https://github.com/TheKinshu/vscode https://klvincho.wordpress.com/2018/02/14/lab-2/
25 Abdul Kabia https://github.com/AbdulKabia/vscode https://akkabia.wordpress.com/2018/02/18/vscode-the-spaces/
26 Liam Newell https://github.com/hibyguy/vscode http://liamnewell.me/blog/editors/Lab-2-Vscode-submission/
27 Simon Inocencio https://github.com/simon-inoc/vscode https://haxbyte.wordpress.com/2018/02/15/my-first-experience-forking-an-open-source-project-visual-studio-code/
28 Kevin Pham https://github.com/kqpham/vscode
29 Lucas Verbeke https://github.com/Micluc/vscode https://thelucasexcerpt.wordpress.com/2018/02/15/osd600-lab-2-lucas-verbeke
30 Michael Kavidas https://github.com/mkavidas/vscode
31
32
33
34
35
36
37
38
39
40