In addition to learning programming, learning the tools of the trade are equally important. Below are a couple of websites, pieces of software, and other things that a new developer should know about
- Git/Github: Git is a version management system. While Github is an online storage platform for projects that use Git. Learn more about this here
- Linter: Being able to write code that other people can read easily is equally as important as being able to code in the first place. Linters ensure that the formatting of your code is consistent. For example, Linters ensure that you're using tabs over spaces, or that you name your variables using the same pattern (
myVariable
vsmy_variable
). - Google: Google is your friend. It is okay to not understand something and to be lost at times. If you need an explanation of something, google can help. If you need help with a problem, google is your friend.
- Stackoverflow: Stackoverflow is the biggest help forum for new programmers, many google searches about programming issues will come up with results from Stackoverflow.
- IDE: Integrated Development Environment, or a piece of software that you use to program offline. It's essentially a fancy text editor. A list of popular IDEs can be found here.
- The Command Line/CLI: The Command Line is a tool for interacting with a computer in a text based format. Being comfortable using it is essential to programming. In windows, you can access the command line by going to the start menu and searching for
cmd
- The Github Student Developer Pack: Github (The website, not the CLI tool) has tons of free resources available to anyone who is a student and has a student email. Creating a Github account, adding your
@micds.org
email (it can be a secondary email), and applying for the student pack will give you access to tons of resources, many of which are used in MyMICDS. Some of which include:
- Access to Mongo DB University; MongoDB is the DB system MyMICDS uses.
- The use of Travis CI on private projects. Travis CI helps with automatic deployment, or whenever a new update is completed, Travis allows us to immediately roll it out to the website.
- Sentry for error tracking.
If you've done basic web dev before, and are feeling inclined to skip the last set of tracks for the sake of time. There are a couple courses on Treehouse that are pretty important for MyMICDS development: