Recommendations
What computer should I get?
This is one of the most frequently asked questions. It doesn't matter which computer you get for this course. As long as you get a computer that is recent enough (within 2-3 years), with sufficient memory and storage space, you should be good.
Why is this a FAQ?
Many students will be upgrading their JC/Poly laptops in time for Uni as their laptops are getting old, or just want something a bit faster to deal with the load of running 3 Chrome tabs at the same time. Whatever the reason might be, making the right choice might make or break your experience as a student trying to collaborate with your groupmates using git
, or trying to figure out why you're the only one that cannot run your latest million dollar app on your device.
Considerations
The most common considerations are Operating System, PC Specifications and Ability to run Applications. While it is difficult to find a good combination of all 3, making the right choice is important. I hope in the sections to come, I manage to explain in detail all the things you need to consider before buying your next shiny device.
Applications
Generally speaking, there will always be a substitute software available for you to be able to run your code/do your homework. This is especially true for Linux as it is not officially supported by Microsoft Office (thank you Bill Gates). Even for Mac, software like CodeBlocks (which is a required tool for Data Structures), can be substituted with XCode or good old VSCode when you're doing your own practice. You will need to know how the software works for the Lab assessment which is in person and you will not be able to use any other IDE.
Recommended specifications
Component | Min Spec |
---|---|
Storage | 256 GB (you can offload old files to a cloud/local drive at the end of the semester) |
RAM | 16 GB |
Dedicated GPU | Optional |
Screen Size | 13 inch (Small and portable is better in this case) |
Mac vs Windows vs Linux
All of these will work fine for all your use cases. Mac has Office software that you can use for free with your NTU email account but it does have some limitations like not being able to do Excel Macros and Signing documents (thank you Bill Gates) but should be ok for most day to day use. Linux has Libre Office which is a clone of Microsoft Office so you are covered on that front as well.
For development, Windows might need some finessing when it comes to getting certain software to work, i.e. Docker, which requires you to install Windows Subsystem for Linux and you have to be sure to set this up properly if you want to be able do use tools like git properly.
Linux on the other hand is something that only seasoned developers should use as it does have a bit of a learning curve and it is very easy to mess up your install. Also depending on the distro that you use, you could face issues with software compatibility. Generally any Debian/Ubuntu flavoured distro is ok. PopOS! is a beginner friendly distro to use. While generally easier to do dev work than Windows, do go down this route with caution.
Mac is by far the most easy platform to use. It is built on UNIX like Linux and thus most terminal software will work with it out of the box. Installing packages is easy with package managers like Homebrew (which is now also available on Linux) and there is no shortage of applications that will work with MacOS. The best part is that if you want to install Windows/Linux on your system, you can have all 3 operating systems on 1 machine for the best of all worlds. If you use an other iDevices like an iPad, syncing your notes across can be a breeze and your files can be available on all your devices with iCloud.
However, the biggest drawback here is price and Apple's recent development of their M series chips, which do not support Windows or Linux.
As of 1 May 2022, only Asahi ARM Alpha can be installed but is still nowhere close to full functionality.
Conclusion
Buy a Mac with the minimum specs and extra external storage space if you can, especially during their Back to School Sale on their Education website. If you don't like Apple due to their anti Right-to-Repair stance, or the pricey nature of their products is an issue, then get a Windows PC. If you're a Vim god and would like to install apps with sudo apt-get install
, get a Windows PC and install your favourite distro.
What is something you wished you knew before joining DSAI
Coming from JC, the biggest thing was the fact that you have full control of your time and you are responsible for your education. There really isn't going to be anyone to chase you for things like tutorials etc. If you miss the deadline means you miss the deadline. I guess in some sense it forces you to take responsibility and as an adult that is important.
Another thing is that the school is really supportive of our course and is very interested in introducing us to people from the industry so that they know that this course exists and that we can get hired straight out of school. They have also made an entire classroom for us with a dedicated server just so that we can train our ML models.
What is the most stressful part of the course and how do you overcome it?
I would say one of the hardest things is just the speed of learning that you have to get used to. 13 weeks is very short to teach the amount of content that you need to learn in a semester and the profs will teach you what you need to get started but you have to take yourself past the finishing line. There will be a lot of self-learning involved and immediate application of concepts that you have just learnt.
To overcome this, you will need to put in the effort yourself. You will have to take responsibility for your education and thus take any step necessary to ensure that you have learnt the content you need to in order to do well for the assessments (which also involves doing better than your peers as we are graded on a bell curve). That is not to say that you are alone in this. DSAI students are very helpful to one another, especially Seniors (We made this site to help you so you're already better off than most other courses).
Profs are also very helpful if you approach them during their office hours and consult them on concepts that you are unsure of. Everyone wants you to succeed, do you?
Is University more taxing or JC?
I would say it's a different type of taxing. JC is more content heavy and requires alot of practice but in Uni, it's more about projects and learning is mostly self driven. If you are involved in hall activities or other school commitments, then time management is very important. It ultimately depends on what you want to get out of your university life.
Do the Seniors enjoy joining DSAI or does anyone have any regrets?
After collating answers from some seniors, we all enjoy our course and do not regret joining DSAI. Of course no course is perfect and some qualms that were raised were, a steeper bell curve due to our small cohort size, difficulty in planning exchange due to our course being new and some difficulties for those new to coding.
Most of these issues are due to the fact that the course is new. I expect with more batches, issues will be smoothened out. Some of the reasons why this course was rewarding is that despite it being a little bit more difficult than CS/MS, everything that we learn has direct and immediate connections to what we will be doing in the future.
In the words of some of your seniors, “it is super rewarding once you understand the concepts that you have to learn”, and “as someone with some interest in math and no experience in coding, I have no regrets joining DSAI”.
The original answer mentioned the inability of our students to take a second major. While this is still true, there is now a DSAI and Accountancy Double Degree programme. We hope that in years to come, we can take up a second Major as well in something like Business, which is a perfect complement to any degree. We can, in fact, take a Minor and you can check out more details here.
Do we need to learn how to use Excel?
No, you do not need to learn Excel, but it is a good skill to have nonetheless! Most of the graphs and pie charts being used in the area of Data Science are not done through Excel but rather through code. For example, in Python you can use libraries like matplotlib
, seaborn
and plotly
to plot your graphs that are similar to the ones done through Excel. But having an understanding of how Excel works can give you some understanding as to how Pandas DataFrames in python work, which is something similar to Excel spreadsheets and is one of the most commonly used tools in Data Science. But again, learning Excel is not necessary.