ColumbiaJS / js-course

Columbia Computer Science Course in Advanced Javascript as Taught By Lev Brie
23 stars 4 forks source link

"Mac OS" like developer environment for Windows/Unix Users #1

Closed ghost closed 9 years ago

ghost commented 9 years ago

Is anybody interested on a step by step instruction on how to create a Virtual Machine that runs similar to Mac OS X as a test/developer environment for Javascript? It would just be a matter of installing FreeBSD as a VM on your Windows or (L)unix workstation. Please let me know and I will compile some instructions.

jzf2101 commented 9 years ago

I'd be interested!

On Jan 21, 2015, at 17:00, "Chris V." notifications@github.com wrote:

Is anybody interested on a step by step instruction on how to create a Virtual Machine that runs similar to Mac OS X as a test/developer environment for Javascript? It would just be a matter of installing FreeBSD as a VM on your Windows or (L)unix workstation. Please let me know and I will compile some instructions.

— Reply to this email directly or view it on GitHub https://github.com/ColumbiaJS/js-course/issues/1.

ghost commented 9 years ago

Mac OS X is based on the Berkeley Software Distribution (BSD). Legality has made virtualization of Mac Os X difficult. In order to provide a similar Mac experience, I will run down the process for installing FreeBSD, a direct decedent of BSD and an integral part of Apple's OS X.

There are two virtualization technologies that I favor in Windows. 1) Oracle's VirtualBox: https://www.virtualbox.org/ 2) VMWare Player: https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_player/6_0|PLAYER-604|product_downloads

I recommend version 6.04 of VMWare Player just because the kinks have been worked out better than in 7.0.

After choosing virtualization software, you will need the ISO (optical disk file) of FreeBSD. You can do so using the following link: ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/10.1/FreeBSD-10.1-RELEASE-amd64-dvd1.iso

Both VirtualBox and VMWare Player are pretty straight forward when it comes to installation. Most of the developer tools you'll need come with FreeBSD. However, you will need to follow instructions on the class Git page to make your system "Javascript" ready. You may want to install Apache web server. You can follow those instructions here: https://www.freebsd.org/doc/handbook/network-apache.html

I know there may be some details that are missing. Please don't hesitate to ask. I can also host a video tutorial if anybody is interested.

levbrie commented 9 years ago

This is all good advice, and if you would like to set up some kind of virtualization environment, please feel free to do so, but please also note, setting up Node.js on windows should be quite straightforward, and Github has very good documentation about getting set up on Windows as well. If you prefer working in Windows directly, you really should not have much difficulty using your Windows environment directly for the material in this course. WebStorm is a great IDE on both Mac and Windows.

This course on Pluralsight, which is all about Mongo and Node, is done entirely on a Windows machine, and the second section, "Setting Up the Demo Application", goes through how to set up your machine in detail:

http://www.pluralsight.com/courses/mongoose-for-nodejs-mongodb

This course about WebStorm is also for Windows (although applies to Mac as well) and details the installation process on Windows.

http://www.pluralsight.com/courses/webstorm-fundamentals

Closing this issue for now, but if you have any additional questions about Windows setup, or would like @cev2107 to host a video tutorial, please feel free to open it back up.

levbrie commented 9 years ago

Also, @cev2107, if you do add a hosted video tutorial, please add a link to it here. If you want to add documentation and know Markdown (if you don't it's very easy to learn - https://help.github.com/articles/markdown-basics/ or https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) and create a pull request to add it to the repo. Let me know if you have questions about this.