6.102 — Software Construction
Spring 2024

Technical Tips and Troubleshooting

6.102 web apps

I can’t log in to one of the 6.102 web apps.

There are several potential fixes that you should try in the following order:

  1. Ensure that you are not using the MIT GUEST Wi-Fi network on campus since its internet access is very limited. Remove MIT GUEST from your laptop’s list of approved networks, and prefer MIT SECURE instead.

  2. Make sure you are using a secure https:// URL instead of http://.

  3. Try restarting your browser; if that doesn’t work, try a different web browser: Chrome, Firefox, Safari.

  4. Try deleting your browser’s cookies associated with the site you’re trying to log into.

  5. 6.102 systems use Touchstone to log you in, which allows you to either use a browser certificate (the most convenient method) or type your Kerberos password. Try using your Kerberos password instead of a browser certificate. If the password works and the certificate does not, you probably need fresh certificates.

  6. Are you using Windows with an antivirus checker turned on? Sometimes antivirus interferes with SSL connections and causes SSL_PROTOCOL_ERROR in every browser. Try turning off your antivirus checking temporarily to see if it fixes the problem. If so, then look for a way to add the web server to the “allowed” list in your antivirus configuration.

If all else fails, please post on Piazza and include the URL you tried to visit, whether you were able to log in with 2-factor authentication, and any error information.

Building and running

I can’t compile or run tests on my problem set.

Make sure you have run npm install in the problem set folder.

npm test or npm run or other npm commands produce strange errors.

This is sometimes due to a corrupted node_modules folder, which is created and maintained by npm install.

To see if this is the cause, go to your problem set folder, find and delete the node_modules folder, and then run npm install again.

npm test or npm run ... produces the error sh: ... command not found.

Use pwd to look at the full path to your problem set folder. If any of the folders in the path have any unusual characters (e.g., spaces, punctuation other than underscores or dashes, non-English characters), try moving your problem set folder to a path that uses only letters, numbers, dashes, and underscores.

Using Git

I’m using Windows, and I’m getting “permission denied” when I run git, or I’m unable to run go.sh when I do gitstream exercises.

Make sure you are using Git Bash as your terminal, not the Windows Command Prompt or Windows Subsystem for Linux.

When I git push origin main, I get error: failed to push some refs ...

You may need to update to the latest version of git. Use git --version and make sure your version is 2.34 or later. If necessary, update or reinstall Git.

But this warning is harmless. As long as your commit still shows up on Didit, then this error is fine to ignore.

Using VS Code

I can’t use VS Code from the command line.

If you are typing code (or codium) in your terminal, but VS Code (resp. VSCodium) is not popping up, then start VS Code or VSCodium using your graphical user interface instead, configure it to launch from the command line, close and reopen your terminal, and try running code or codium again.

When I see the name of a variable or method or class in VS Code, how can I jump straight to its definition?

Command+Click (Mac) or Control+Click (Windows & Linux) on the name to jump to its definition. Right-clicking and choosing Go to Definition does the same thing.

How can I easily comment and uncomment parts of my code?

Use Edit → Toggle Line Comment to quickly toggle on or off some lines of code. The keyboard shortcut is Command+/ (Mac) or Control+/ (Windows & Linux).

How can I easily pull up the Command Palette in VS Code?

Click Command+Shift+P (Mac) or Control+Shift+P (Windows & Linux) to bring up the command palette. From there, you can search for any VS Code command. For example, try typing “focus” to find commands that open a particular view and put the keyboard focus on it. Then type “tutor” to find the command that brings the Tutor view into focus (e.g. something like “Explorer: Focus on Praxis Tutor View”).

Please post on Piazza to suggest more resources or tips and tricks we might include.

Have fun in 6.102!