Using brew
is highly recommended. It is a package manager for macOS and Linux that makes search and installation a breeze.
Some software for Windows 10/11 is available through winget
, a Microsoft-developed package manager.
GitHub and JetBrains offer licenses for various tools used by us. Check them out at:
Java is required for those interested in AWS/backend development and testing. It is recommended to have a Java 11 JDK available, regardless of wether you already have a newer version installed. If you already have a Java 11 JDK available, we still recommend to use a build from Eclipse Temurin (previously AdoptOpenJDK.)
brew tap homebrew/cask-versions
thenbrew install temurin11
winget install EclipseAdoptium.Temurin.11
- https://adoptium.net/?variant=openjdk11&jvmVariant=hotspot
Tomcat is a server software that hosts our backend, which is also used by AWS. This will allow you to test your server code on your computer.
brew install tomcat@8
- https://tomcat.apache.org/download-80.cgi
Node.js is a Javascript runtime, meaning it enables the user to run Javascript outside the context of a web browser. It is particularly important for developing reactive web pages. If you want to do Web/frontend, this is required.
brew install node
- https://nodejs.org/en/
IntelliJ is a popular alternative to some IDEs listed below. It is growing in use in the industry, so is worth using in our group. Two versions are available, Ultimate and Communitiy, which are paid and free respectively. You may aquire a license with your student email.
brew install intellij-ultimate
orbrew install intellij-community
winget install JetBrains.IntelliJIDEA.Ultimate
orwinget install JetBrains.IntelliJIDEA.Community
- https://www.jetbrains.com/idea/
Eclipse is widely used by professionals in many industries. While it may not be super fancy, it is rich with features and, most amazingly, is open sourced! We will mostly use Eclipse for backend development in conjuction with AWS.
brew install eclipse-java
- https://www.eclipse.org/downloads/packages/release/2021-09/r/eclipse-ide-enterprise-java-and-web-developers
The Eclipse Tomcat and AWS Toolkit plug-ins will provide some tools to run the project locally and remotely. Follow the instructions on the links to install them.
The AWS plug-in depends on a library that has been removed from Java after Java 11. Download the library here, then save it to your preferred location.
Navigate into the Eclipse root, where you will find a file called eclipse.ini
.
- macOS users will find it under
/Applications/Eclipse\ JEE.app/Contents/Eclipse/
- Windows users will find it in their Eclipse installation directory
Modify eclipse.ini
to include the following lines at the very top:
-dev
<path-to-library>/jaxb-api-2.3.1.jar
Note that this is a dependency on part of the IDE, so importing the library into your project will not fix this issue.
MPLAB is an IDE developed by Microchip, owner of the PIC arcitecture, and is required to develop firmware for their family of PIC microprocessors.
Instructions are a tiny bit more involved than most. You must install the IDE provided through this link: https://www.microchip.com/en-us/development-tools-tools-and-software/mplab-x-ide#
You will also need to install the MPLAB XC C Compiler for PIC24 devices. You may follow this link for a download, or install via the IDE.
VSCode is particularly useful for developing on Arduino.
brew install visual-studio-code
winget install Microsoft.VisualStudioCode
- https://visualstudio.microsoft.com/
We use the PlatformIO IDE extension to assist with Arduino development.
WebStorm is suited well for Web/frontend design, developed by JetBrains. You will need a license for this, obtainable with student email.
brew install webstorm
winget install JetBrains.WebStorm
- https://www.jetbrains.com/webstorm/
Unfortunately, instructions for (Li/U)nix are not so clear cut. You will need to find packages through your package manager or through the developer.
You can use brew
on some Linux distributions better than others, and so you might be able to use brew
instructions.
Usually, anything availble through brew
is available for installation through other common package managers.