https://mediawiki.middlebury.edu/CS/api.php?action=feedcontributions&user=Christopher+Andrews&feedformat=atomComputer Science - User contributions [en]2024-03-29T14:41:33ZUser contributionsMediaWiki 1.35.14https://mediawiki.middlebury.edu/CS/index.php?title=Basin:VSCode&diff=560Basin:VSCode2023-04-23T22:11:57Z<p>Christopher Andrews: /* Remote access to Basin from VSCode */</p>
<hr />
<div>=Remote access to Basin from VSCode=<br />
<br />
== Installation ==<br />
<br />
Open up the Extensions pane in VSCode.<br />
<br />
[[File:Vscode-extensions.png|thumb]]<br />
<br />
<br />
Search for 'Remote - SSH' and click install.<br />
<br />
<br />
<br />
== Connecting ==<br />
Once the extension is installed, you should have a little blue tab in the lower left hand corner. <br />
<br />
[[File:Vscode-connection-corner.png|thumb]]<br />
<br />
<br />
When you click it, a menu will open at the top of the window.<br />
<br />
<br />
[[File:Vscode-connection-menu.png|thumb]]<br />
<br />
Select 'Connect to host' or 'Connect current window to host...'. The first will open a new window for your connection, the other will use the current window. <br />
<br />
Once you select one, you will be asked to enter in a hostname. <br />
<br />
[[File:Vscode-add-host.png|thumb]]<br />
<br />
'''Option 1''': You can just type in username@basin.cs.middlebury.edu (where ''username'' is your Middlebury username) and connect directly. ''The username@ portion can be left off if the username on your local computer matches your Middlebury username.''<br />
<br />
'''Option 2''': You can configure basin as a host making it easy to return to later. Select "Configure SSH Hosts..." from the menu. It will ask which configuration file you want to edit. Look for one that looks like it is stored in ".ssh/config". If you don't have this file, it will bring up a template. <br />
<br />
<br />
[[File:Vscode-ssh-template.png|thumb]]<br />
<br />
I suggest using <br />
* Host "basin"<br />
* HostName "basin.cs.middlebury.edu"<br />
* User your Middlebury username<br />
<br />
''If you already had a file, you can add this same information in anywhere''<br />
<br />
You will need to try to connect again, but this time you will see "basin" in the list of options. Select that and enter your password as necessary (if you set up SSH keys, then you won't need to use your password).<br />
<br />
If you were successful, the lower corner should now indicate that you are connected. <br />
<br />
<br />
[[File:Vscode-connceted.png|thumb]]<br />
<br />
== Working on basin ==<br />
<br />
Once you are connected, you can open file or folders in the remote folder. I suggest opening a folder. You can use the file pane on the left to add new files or folders, etc. Note that to open a folder you need to select one form the drop down and then click the "Ok" button. <br />
<br />
If you type C-~ (that is the control key and the tilda character) or choose "New Terminal" from the the "Terminal" menu, you will open a new shell session on basin. This will allow you to, for example, compile your code and run it (provided it doesn't have a visual interface). <br />
<br />
<br />
<br />
== Disconnecting ==<br />
To disconnect, click the lower left corner again and then choose "Close Remote Connection" from the drop down menu.</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=File:Vscode-connceted.png&diff=559File:Vscode-connceted.png2023-04-23T22:11:19Z<p>Christopher Andrews: </p>
<hr />
<div>Screenshot showing that the window has been connected to basin</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=File:Vscode-ssh-template.png&diff=558File:Vscode-ssh-template.png2023-04-23T22:10:38Z<p>Christopher Andrews: </p>
<hr />
<div>The template for the .ssh config file.</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=File:Vscode-add-host.png&diff=557File:Vscode-add-host.png2023-04-23T22:10:06Z<p>Christopher Andrews: </p>
<hr />
<div>The menu for adding hosts</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=File:Vscode-connection-menu.png&diff=556File:Vscode-connection-menu.png2023-04-23T22:09:24Z<p>Christopher Andrews: </p>
<hr />
<div>A screenshot of the remote connection menu in vscode</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=File:Vscode-connection-corner.png&diff=555File:Vscode-connection-corner.png2023-04-23T22:08:40Z<p>Christopher Andrews: </p>
<hr />
<div>A screenshot of the blue corner indicating the remote extension has been installed in vscode.</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=File:Vscode-extensions.png&diff=554File:Vscode-extensions.png2023-04-23T22:05:30Z<p>Christopher Andrews: </p>
<hr />
<div>A picture of the button in VSCode for opening the extensions panel</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=Basin:VSCode&diff=553Basin:VSCode2023-04-21T21:23:02Z<p>Christopher Andrews: Created page with "=Remote access to Basin from VSCode="</p>
<hr />
<div>=Remote access to Basin from VSCode=</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=Basin&diff=552Basin2023-04-21T21:18:39Z<p>Christopher Andrews: </p>
<hr />
<div><span style="color:green;">Basin</span> is the CS departmental general-use server. Every CS student has an account generated for them on enrollment in a course. The files and resources on basin can be accessed from any computer on or off-campus, following the proper instructions. The login credentials are the same as your Middlebury credentials. <br />
(instructions below are adapted from Daniel Scharstein)<br />
=Accessing your files on Basin=<br />
If you are connecting to the campus network via wireless, choose the <span style="color:green;">MiddleburyCollege</span> network. (See the [https://mediawiki.middlebury.edu/LIS/Get_Started_with_Wireless| LIS documentation] for more detail.) If you need to access your files from off-campus, you'll need to use a [https://mediawiki.middlebury.edu/LIS/VPN_Setup_Instructions VPN connection]. VPN setup requires you to start a helpdesk ticket with ITS, excluding special circumstances.<br />
==Windows Users==<br />
To access your basin files, open <span style="color:green;">My Computer</span>. In the address bar, type <span style="color:green;">\\basin\username</span> with your username filled in. When asked for your username and password, use <span style="color:green;">MIDD\username</span> (with your username filled in), and your home directory should be shown. You can then access the files as if they are on your computer.<br />
<br />
To map basin as a network drive (like tigercat and classes), right click on <span style="color:green;">My Computer</span> and select <span style="color:green;">Map Network Drive.</span> Choose a drive letter, and type <span style="color:green;">\\basin\username</span> into the location field. Use <span style="color:green;">MIDD\username</span> for your username. Check the Reconnect at login box if you want it to automatically connect every time you start your computer. Click OK, and your basin folder will show up as the assigned drive letter in <span style="color:green;">My Computer</span>.<br />
<br />
==Mac Users==<br />
Go to the finder, and select <span style="color:green;">Connect to Server</span> from the <span style="color:green;">Go</span> menu. Type <span style="color:green;">cifs://basin</span> in the <span style="color:green;">Server Address</span> box, and click <span style="color:green;">Connect</span>. When it asks you, provide your basin username and password. Click <span style="color:green;">OK</span>, and a new Finder window will open containing your files.<br />
<br />
==Linux Users==<br />
If you have <span style="color:green;">Konqueror</span>, type <span style="color:green;">cifs://basin/username</span> into the location bar, and enter your username and password when prompted. If you have <span style="color:green;">Nautilus</span>, select <span style="color:green;">Connect to Server</span> from the file menu. Select <span style="color:green;">Windows Share</span> for <span style="color:green;">Service Type</span>, and enter <span style="color:green;">/username</span> under share. Click <span style="color:green;">Connect</span>, and enter your username and password when prompted. The domain doesn't matter.<br />
<br />
=Shell Access Via SSH=<br />
SSH provides command line access to basin. This works on-campus, and off-campus as long as you are using the college VPN.<br />
<br />
If you are interested in learning more about using SSH see these instructions: [[Useful Tools#SSH| Useful Tools: SSH]]<br />
<br />
If you need to move files across an SSH connection into basin, see here: [[Useful Tools#SCP| Useful Tools: SCP]]<br />
<br />
<br />
<br />
==Windows Users==<br />
The easiest way to connect through SSH is to use [[Useful_Tools#PuTTY | PuTTY]], which is a free download. Go to the [https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html PuTTY download site]and select the download link called <span style="color:green;">putty.exe</span>. Download and run putty.exe. Select the SSH option, type <span style="color:green;">basin.cs.middlebury.edu</span> for the host, and click <span style="color:green;">Open</span>. Type in your username and password when prompted, and you are connected.<br />
<br />
==Mac Users==<br />
Open a terminal, and type <span style="color:green;">ssh username@basin.cs.middlebury.edu</span>, substituting your username. Type in your password when prompted. Typing <span style="color:green;">ssh basin</span> will also work if you are already logged in with your Middlebury credentials on a departmental or school computer.<br />
<br />
==Linux Users==<br />
Open a terminal, and type <span style="color:green;">ssh username@basin.cs.middlebury.edu</span>, substituting your username. Type in your password when prompted. Typing <span style="color:green;">ssh basin</span> will also work if you are already logged in with your Middlebury credentials on a departmental or school computer.<br />
<br />
=Remote Editing=<br />
<br />
Many programming text editors have extensions that support remote editing over SSH. This allows you to edit the files locally using the tools you are used to, with all of the changes actually being made on remote machine. The 'Remote - SSH' extension for VSCode is particularly nice as you can open a remote directory and the terminal will connect as well so you can compile and run code right in the editor. More detailed instructions are available in the links below:<br />
<br />
* Instructions for setting up the 'Remote - SSH` extension for [[Basin:VSCode | VSCode]]<br />
* Instructions for setting up the ftp-remote-edit extension for [https://mediawiki.middlebury.edu/CS/Basin/atomftp Atom]</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=Basin&diff=551Basin2023-04-21T21:16:11Z<p>Christopher Andrews: </p>
<hr />
<div><span style="color:green;">Basin</span> is the CS departmental general-use server. Every CS student has an account generated for them on enrollment in a course. The files and resources on basin can be accessed from any computer on or off-campus, following the proper instructions. The login credentials are the same as your Middlebury credentials. <br />
(instructions below are adapted from Daniel Scharstein)<br />
=Accessing your files on Basin=<br />
If you are connecting to the campus network via wireless, choose the <span style="color:green;">MiddleburyCollege</span> network. (See the [https://mediawiki.middlebury.edu/LIS/Get_Started_with_Wireless| LIS documentation] for more detail.) If you need to access your files from off-campus, you'll need to use a [https://mediawiki.middlebury.edu/LIS/VPN_Setup_Instructions VPN connection]. VPN setup requires you to start a helpdesk ticket with ITS, excluding special circumstances.<br />
==Windows Users==<br />
To access your basin files, open <span style="color:green;">My Computer</span>. In the address bar, type <span style="color:green;">\\basin\username</span> with your username filled in. When asked for your username and password, use <span style="color:green;">MIDD\username</span> (with your username filled in), and your home directory should be shown. You can then access the files as if they are on your computer.<br />
<br />
To map basin as a network drive (like tigercat and classes), right click on <span style="color:green;">My Computer</span> and select <span style="color:green;">Map Network Drive.</span> Choose a drive letter, and type <span style="color:green;">\\basin\username</span> into the location field. Use <span style="color:green;">MIDD\username</span> for your username. Check the Reconnect at login box if you want it to automatically connect every time you start your computer. Click OK, and your basin folder will show up as the assigned drive letter in <span style="color:green;">My Computer</span>.<br />
<br />
==Mac Users==<br />
Go to the finder, and select <span style="color:green;">Connect to Server</span> from the <span style="color:green;">Go</span> menu. Type <span style="color:green;">cifs://basin</span> in the <span style="color:green;">Server Address</span> box, and click <span style="color:green;">Connect</span>. When it asks you, provide your basin username and password. Click <span style="color:green;">OK</span>, and a new Finder window will open containing your files.<br />
<br />
==Linux Users==<br />
If you have <span style="color:green;">Konqueror</span>, type <span style="color:green;">cifs://basin/username</span> into the location bar, and enter your username and password when prompted. If you have <span style="color:green;">Nautilus</span>, select <span style="color:green;">Connect to Server</span> from the file menu. Select <span style="color:green;">Windows Share</span> for <span style="color:green;">Service Type</span>, and enter <span style="color:green;">/username</span> under share. Click <span style="color:green;">Connect</span>, and enter your username and password when prompted. The domain doesn't matter.<br />
<br />
=Shell Access Via SSH=<br />
SSH provides command line access to basin. This works on-campus, and off-campus as long as you are using the college VPN.<br />
<br />
If you are interested in learning more about using SSH see these instructions: [[Useful Tools#SSH| Useful Tools: SSH]]<br />
<br />
If you need to move files across an SSH connection into basin, see here: [[Useful Tools#SCP| Useful Tools: SCP]]<br />
<br />
<br />
<br />
==Windows Users==<br />
The easiest way to connect through SSH is to use [[Useful_Tools#PuTTY | PuTTY]], which is a free download. Go to the [https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html PuTTY download site]and select the download link called <span style="color:green;">putty.exe</span>. Download and run putty.exe. Select the SSH option, type <span style="color:green;">basin.cs.middlebury.edu</span> for the host, and click <span style="color:green;">Open</span>. Type in your username and password when prompted, and you are connected.<br />
<br />
==Mac Users==<br />
Open a terminal, and type <span style="color:green;">ssh username@basin.cs.middlebury.edu</span>, substituting your username. Type in your password when prompted. Typing <span style="color:green;">ssh basin</span> will also work if you are already logged in with your Middlebury credentials on a departmental or school computer.<br />
<br />
==Linux Users==<br />
Open a terminal, and type <span style="color:green;">ssh username@basin.cs.middlebury.edu</span>, substituting your username. Type in your password when prompted. Typing <span style="color:green;">ssh basin</span> will also work if you are already logged in with your Middlebury credentials on a departmental or school computer.<br />
<br />
=Remote Editing=<br />
<br />
Many programming text editors have extensions that support remote editing over SSH. This allows you to edit the files locally using the tools you are used to, with all of the changes actually being made on remote machine. The 'Remote - SSH' extension for VSCode is particularly nice as you can open a remote directory and the terminal will connect as well so you can compile and run code right in the editor. More detailed instructions are available in the links below:<br />
<br />
- Instructions for setting up the 'Remote - SSH` extension for [[Basin:VSCode | VSCode]]<br />
- Instructions for setting up the ftp-remote-edit extension for [https://mediawiki.middlebury.edu/CS/Basin/atomftp Atom]</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=Basin&diff=550Basin2023-04-21T21:12:05Z<p>Christopher Andrews: </p>
<hr />
<div><span style="color:green;">Basin</span> is the CS departmental general-use server. Every CS student has an account generated for them on enrollment in a course. The files and resources on basin can be accessed from any computer on or off-campus, following the proper instructions. The login credentials are the same as your Middlebury credentials. <br />
(instructions below are adapted from Daniel Scharstein)<br />
=Accessing your files on Basin=<br />
If you are connecting to the campus network via wireless, choose the <span style="color:green;">MiddleburyCollege</span> network. (See the [https://mediawiki.middlebury.edu/LIS/Get_Started_with_Wireless| LIS documentation] for more detail.) If you need to access your files from off-campus, you'll need to use a [https://mediawiki.middlebury.edu/LIS/VPN_Setup_Instructions VPN connection]. VPN setup requires you to start a helpdesk ticket with ITS, excluding special circumstances.<br />
==Windows Users==<br />
To access your basin files, open <span style="color:green;">My Computer</span>. In the address bar, type <span style="color:green;">\\basin\username</span> with your username filled in. When asked for your username and password, use <span style="color:green;">MIDD\username</span> (with your username filled in), and your home directory should be shown. You can then access the files as if they are on your computer.<br />
<br />
To map basin as a network drive (like tigercat and classes), right click on <span style="color:green;">My Computer</span> and select <span style="color:green;">Map Network Drive.</span> Choose a drive letter, and type <span style="color:green;">\\basin\username</span> into the location field. Use <span style="color:green;">MIDD\username</span> for your username. Check the Reconnect at login box if you want it to automatically connect every time you start your computer. Click OK, and your basin folder will show up as the assigned drive letter in <span style="color:green;">My Computer</span>.<br />
<br />
==Mac Users==<br />
Go to the finder, and select <span style="color:green;">Connect to Server</span> from the <span style="color:green;">Go</span> menu. Type <span style="color:green;">cifs://basin</span> in the <span style="color:green;">Server Address</span> box, and click <span style="color:green;">Connect</span>. When it asks you, provide your basin username and password. Click <span style="color:green;">OK</span>, and a new Finder window will open containing your files.<br />
<br />
==Linux Users==<br />
If you have <span style="color:green;">Konqueror</span>, type <span style="color:green;">cifs://basin/username</span> into the location bar, and enter your username and password when prompted. If you have <span style="color:green;">Nautilus</span>, select <span style="color:green;">Connect to Server</span> from the file menu. Select <span style="color:green;">Windows Share</span> for <span style="color:green;">Service Type</span>, and enter <span style="color:green;">/username</span> under share. Click <span style="color:green;">Connect</span>, and enter your username and password when prompted. The domain doesn't matter.<br />
<br />
=Shell Access Via SSH=<br />
SSH provides command line access to basin. This works on-campus, and off-campus as long as you are using the college VPN.<br />
<br />
If you are interested in learning more about using SSH see these instructions: [[Useful Tools#SSH| Useful Tools: SSH]]<br />
<br />
If you need to move files across an SSH connection into basin, see here: [[Useful Tools#SCP| Useful Tools: SCP]]<br />
<br />
<br />
<br />
==Windows Users==<br />
The easiest way to connect through SSH is to use [[Useful_Tools#PuTTY | PuTTY]], which is a free download. Go to the [https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html PuTTY download site]and select the download link called <span style="color:green;">putty.exe</span>. Download and run putty.exe. Select the SSH option, type <span style="color:green;">basin.cs.middlebury.edu</span> for the host, and click <span style="color:green;">Open</span>. Type in your username and password when prompted, and you are connected.<br />
<br />
==Mac Users==<br />
Open a terminal, and type <span style="color:green;">ssh username@basin.cs.middlebury.edu</span>, substituting your username. Type in your password when prompted. Typing <span style="color:green;">ssh basin</span> will also work if you are already logged in with your Middlebury credentials on a departmental or school computer.<br />
<br />
==Linux Users==<br />
Open a terminal, and type <span style="color:green;">ssh username@basin.cs.middlebury.edu</span>, substituting your username. Type in your password when prompted. Typing <span style="color:green;">ssh basin</span> will also work if you are already logged in with your Middlebury credentials on a departmental or school computer.<br />
<br />
=Remote Editing=<br />
<br />
Many programming text editors have extensions that support remote editing over SSH. This allows you to edit the files locally using the tools you are used to, with all of the changes actually being made on remote machine. The 'Remote - SSH' extension for VSCode is particularly nice as you can open a remote directory and the terminal will connect as well so you can compile and run code right in the editor. More detailed instructions are available in the links below:<br />
<br />
- Instructions for setting up [https://mediawiki.middlebury.edu/CS/Basin/atomftp Atom]<br />
<br />
<br />
<br />
The ftp-remote-edit extension for the Atom text editor works well for editing files over SSH. See [https://mediawiki.middlebury.edu/CS/Basin/atomftp here] for step-by-step instructions.</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=WhichIntroCourse&diff=513WhichIntroCourse2022-02-13T22:29:04Z<p>Christopher Andrews: Fixing bolding</p>
<hr />
<div>So you're convinced these computer things will probably be around for a while and it might be helpful to learn you some computer science. Great! But then you check out the course catalog and there are four different introductory courses and it's difficult to tell which one suits you best. If that is your boggle, read on.<br />
<br />
To review, the catalog lists four different 100-level courses:<br />
<br />
- CSCI 0105: Algorithmic World<br />
<br />
- CSCI 0110: Programming through Simulation<br />
<br />
- CSCI 0145: Introduction to Computing (formerly CSCI 0101, which is still listed in some places)<br />
<br />
- CSCI 0150: Computing for the Sciences (offered every semester)<br />
<br />
<br />
'''Non-major classes'''<br />
<br />
CSCI 0105 and CSCI 0110 are ''non-major'' courses. They are intended for students who have no prior computer science experience and just want a taste of what computer science is. The '''do not''' count for either the major or the minor. What if you get excited about CS and want to actually pursue a major or a minor? That's great! We hope some of you will catch the bug. The next step would then be 145 or 150. <br />
<br />
105 and 110 have quite different focuses. 105 is intended to be a very broad computer science taster. We learn some basic programming and apply it to all sorts of things like drawing, image editing, sound manipulation, data processing, simulation, and visualization, and games. We also spend a good portion of the class talking about how algorithms are impacting our lives. <br />
<br />
110 is also a good starting place, but it is focused specifically on simulation. This is great for students interesting in domains that do a lot of modeling, like environmental studies, biology, economics, or the social sciences. <br />
<br />
'''Major Classes'''<br />
<br />
CSCI 0145 and CSCI 0150 are both entry points to the major (or minor). The very short answer to "which should I take?" is: ''it usually doesn't matter''. Both of these courses will:<br />
<br />
- challenge you similarly (none are "easier" or "harder" than the others);<br />
<br />
- give you a broad introduction to the field of computer science;<br />
<br />
- prepare you to take further courses within the department; and<br />
<br />
- serve as a solid foundation for a CS major, a CS minor, or an interested cross-disciplinarian.<br />
<br />
With that said, why might one consider preferring one course over another? Before pursuing that question, it should be emphasized that the differences are not so profound that you should decline taking a course different than the one you feel suits you best. Therefore, you should ask yourself the following questions, in this order:<br />
<br />
'''Which course fits my schedule?''' Take that one. If that presents multiple options, then ask yourself...<br />
<br />
'''Which course has (more) open seats?''' Take that one. If that presents multiple options, then ask yourself...<br />
<br />
'''Am I looking to apply computer science to ''other'' scientific fields?''' Consider 150. While, as previously mentioned, both courses provide a broad introduction, CSCI 0150 also includes material that prepares students to process the kinds of data gathered in scientific experiments in such fields as physics, chemistry, psychology, etc...<br />
<br />
'''What's different about 145?''' It's intended to be the broadest of the already-broad introductions, and therefore provides a bit more technical context to the general lessons rather than the depth of data analysis (150). If your goals don't specifically align with either 150, 145 is a great choice. If 145 is full, 150 will scratch your CS itch. But...<br />
<br />
'''What if I still can't decide?''' Come discuss with any of the CS faculty and we will gladly help you figure things out!</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=WhichIntroCourse&diff=512WhichIntroCourse2022-02-13T22:28:31Z<p>Christopher Andrews: Updated to include non-major courses and to remove 190</p>
<hr />
<div>So you're convinced these computer things will probably be around for a while and it might be helpful to learn you some computer science. Great! But then you check out the course catalog and there are four different introductory courses and it's difficult to tell which one suits you best. If that is your boggle, read on.<br />
<br />
To review, the catalog lists four different 100-level courses:<br />
<br />
- CSCI 0105: Algorithmic World<br />
<br />
- CSCI 0110: Programming through Simulation<br />
<br />
- CSCI 0145: Introduction to Computing (formerly CSCI 0101, which is still listed in some places)<br />
<br />
- CSCI 0150: Computing for the Sciences (offered every semester)<br />
<br />
<br />
'''<br />
Non-major classes<br />
'''<br />
<br />
CSCI 0105 and CSCI 0110 are ''non-major'' courses. They are intended for students who have no prior computer science experience and just want a taste of what computer science is. The '''do not''' count for either the major or the minor. What if you get excited about CS and want to actually pursue a major or a minor? That's great! We hope some of you will catch the bug. The next step would then be 145 or 150. <br />
<br />
105 and 110 have quite different focuses. 105 is intended to be a very broad computer science taster. We learn some basic programming and apply it to all sorts of things like drawing, image editing, sound manipulation, data processing, simulation, and visualization, and games. We also spend a good portion of the class talking about how algorithms are impacting our lives. <br />
<br />
110 is also a good starting place, but it is focused specifically on simulation. This is great for students interesting in domains that do a lot of modeling, like environmental studies, biology, economics, or the social sciences. <br />
<br />
'''Major Classes'''<br />
<br />
CSCI 0145 and CSCI 0150 are both entry points to the major (or minor). The very short answer to "which should I take?" is: ''it usually doesn't matter''. Both of these courses will:<br />
<br />
- challenge you similarly (none are "easier" or "harder" than the others);<br />
<br />
- give you a broad introduction to the field of computer science;<br />
<br />
- prepare you to take further courses within the department; and<br />
<br />
- serve as a solid foundation for a CS major, a CS minor, or an interested cross-disciplinarian.<br />
<br />
With that said, why might one consider preferring one course over another? Before pursuing that question, it should be emphasized that the differences are not so profound that you should decline taking a course different than the one you feel suits you best. Therefore, you should ask yourself the following questions, in this order:<br />
<br />
'''Which course fits my schedule?''' Take that one. If that presents multiple options, then ask yourself...<br />
<br />
'''Which course has (more) open seats?''' Take that one. If that presents multiple options, then ask yourself...<br />
<br />
'''Am I looking to apply computer science to ''other'' scientific fields?''' Consider 150. While, as previously mentioned, both courses provide a broad introduction, CSCI 0150 also includes material that prepares students to process the kinds of data gathered in scientific experiments in such fields as physics, chemistry, psychology, etc...<br />
<br />
'''What's different about 145?''' It's intended to be the broadest of the already-broad introductions, and therefore provides a bit more technical context to the general lessons rather than the depth of data analysis (150). If your goals don't specifically align with either 150, 145 is a great choice. If 145 is full, 150 will scratch your CS itch. But...<br />
<br />
'''What if I still can't decide?''' Come discuss with any of the CS faculty and we will gladly help you figure things out!</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=Main_Page&diff=229Main Page2018-09-08T14:48:36Z<p>Christopher Andrews: /* Community Stuff */</p>
<hr />
<div>== Technical Stuff ==<br />
<br />
1. [[Useful Tools]]<br />
<br />
2. [[Guides]]<br />
<br />
3. [[Glossary]]<br />
<br />
<br />
== Community Stuff ==<br />
<br />
1. [http://go.middlebury.edu/middleendian/ MiddleEndian], the Middlebury College Computer Science Club<br />
<br />
2. [http://go.middlebury.edu/wics/ WICS++], Middlebury's Women in Computer Science Club<br />
<br />
== Procedural Stuff Related to the Major ==<br />
<br />
1. [[MajorAdvising|Advice on picking an advisor and duties relative to advising]]<br />
<br />
2. [[WhichIntroCourse|Which introductory course should you take? CS 101? CS 150? CS 190?]]<br />
<br />
3. [[TutoringAndGrading|How to tutor or grade for the department]]<br />
<br />
4. [[NavigatingTheMajor|Navigating the Computer Science Major at Middlebury]]<br />
<br />
5. [[StudyAbroad|Studying abroad as a Computer Science Major]]<br />
<br />
6. [[IndependentStudy|Independent study in computer science]]<br />
<br />
7. [[SummerResearch|Summer research in computer science]]<br />
<br />
8. [[GradSchoolInCS|Almost everything you ever wanted to know about grad school in computer science]]<br />
<br />
9. [http://140.233.2.62/cdm/search/collection/scholarship/searchterm/computer%20science Past computer science theses]<br />
<br />
<br />
== Miscellaneous ==<br />
<br />
Information on using MediaWiki (eg, editing, configuration) can be found [[MediaWikiInfo|here]].</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=Main_Page&diff=228Main Page2018-09-07T03:34:27Z<p>Christopher Andrews: /* Community Stuff */</p>
<hr />
<div>== Technical Stuff ==<br />
<br />
1. [[Useful Tools]]<br />
<br />
2. [[Guides]]<br />
<br />
3. [[Glossary]]<br />
<br />
<br />
== Community Stuff ==<br />
<br />
1. [http://sites.middlebury.edu/middleendian/ MiddleEndian], the Middlebury College Computer Science Club<br />
<br />
2. [http://middleburywics.weebly.com/ WICS++], Middlebury's Women in Computer Science Club<br />
<br />
== Procedural Stuff Related to the Major ==<br />
<br />
1. [[MajorAdvising|Advice on picking an advisor and duties relative to advising]]<br />
<br />
2. [[WhichIntroCourse|Which introductory course should you take? CS 101? CS 150? CS 190?]]<br />
<br />
3. [[TutoringAndGrading|How to tutor or grade for the department]]<br />
<br />
4. [[NavigatingTheMajor|Navigating the Computer Science Major at Middlebury]]<br />
<br />
5. [[StudyAbroad|Studying abroad as a Computer Science Major]]<br />
<br />
6. [[IndependentStudy|Independent study in computer science]]<br />
<br />
7. [[SummerResearch|Summer research in computer science]]<br />
<br />
8. [[GradSchoolInCS|Almost everything you ever wanted to know about grad school in computer science]]<br />
<br />
9. [http://140.233.2.62/cdm/search/collection/scholarship/searchterm/computer%20science Past computer science theses]<br />
<br />
<br />
== Miscellaneous ==<br />
<br />
Information on using MediaWiki (eg, editing, configuration) can be found [[MediaWikiInfo|here]].</div>Christopher Andrewshttps://mediawiki.middlebury.edu/CS/index.php?title=Main_Page&diff=227Main Page2018-09-07T03:34:03Z<p>Christopher Andrews: /* Community Stuff */</p>
<hr />
<div>== Technical Stuff ==<br />
<br />
1. [[Useful Tools]]<br />
<br />
2. [[Guides]]<br />
<br />
3. [[Glossary]]<br />
<br />
<br />
== Community Stuff ==<br />
<br />
1. [http://sites.middlebury.edu/middleendian/ MiddleEndian], the Middlebury College Computer Science Club<br />
2. [http://middleburywics.weebly.com/ WICS++], Middlebury's Women in Computer Science Club<br />
<br />
== Procedural Stuff Related to the Major ==<br />
<br />
1. [[MajorAdvising|Advice on picking an advisor and duties relative to advising]]<br />
<br />
2. [[WhichIntroCourse|Which introductory course should you take? CS 101? CS 150? CS 190?]]<br />
<br />
3. [[TutoringAndGrading|How to tutor or grade for the department]]<br />
<br />
4. [[NavigatingTheMajor|Navigating the Computer Science Major at Middlebury]]<br />
<br />
5. [[StudyAbroad|Studying abroad as a Computer Science Major]]<br />
<br />
6. [[IndependentStudy|Independent study in computer science]]<br />
<br />
7. [[SummerResearch|Summer research in computer science]]<br />
<br />
8. [[GradSchoolInCS|Almost everything you ever wanted to know about grad school in computer science]]<br />
<br />
9. [http://140.233.2.62/cdm/search/collection/scholarship/searchterm/computer%20science Past computer science theses]<br />
<br />
<br />
== Miscellaneous ==<br />
<br />
Information on using MediaWiki (eg, editing, configuration) can be found [[MediaWikiInfo|here]].</div>Christopher Andrews