Full Stack Open - Reflections of the Course
Tags: fullstackopen, react, node, course
Published: 2020-01-05 06:48:00

[Full stack open](https://fullstackopen.com/en) is a free online course organized by University of Helsinki and some top-notch Finnish companies. Stack is very up-to-date: single-page-app development using latest React, Redux, Node.js and MongoDB and course contains also GraphQL tutorial. I attended to the 2019's course and completed 7 ETCS credits (this corresponds to 189 hours of work - it is also very close to what I actually used!). 

**What I enjoyed the most in the course:**

- _**Course was very practical**_ - it introduced many npm packages, browser extensions and Node scripts, VSCode editor plugins and programming practices that ease the development.
- Sometimes when doing the first exercises of a topic I felt like "oh-no, this coding style hurts my soul", but then in the end, same exercises were revisited and refactored according to the current best practices. So course really _**promoted understanding of the stack.**_
- Course included lots of well curated links about the topics, so it was easy to find extra information. Students were also encouraged to make pull request to the material, if they felt that something could be included.
- Exercises covered _**unit testing**_ using [Jest](https://jestjs.io/)/[React Testing Library](https://testing-library.com/docs/react-testing-library/intro) and _**E2E testing**_ using [Cypress](https://www.cypress.io/). I am especially happy for the Cypress part! In addition, this is the first time when I really got a grab of a _**functional programming**_ (this is definitely something that'll be needed when writing more Cypress tests).
- Discussion in the course Telegram community was _**supporting and friendly**_ and course lecturer [Matti Luukkainen](https://github.com/mluukkai) was very active there. So if you get stuck, there is knowing, that help is available. Tone of the voice in the course material was encouraging and often hilarious (example below):

![A large part of a typical developer's time is spent on debugging and reading existing code. Every now and then we do get to write a line or two of new code, but a large part of our time is spent on trying to figure out why something is broken or how something works. Good practices and tools for debugging are extremely important for this reason.](https://thepracticaldev.s3.amazonaws.com/i/k4ma7je1qxy1lzpacpsg.jpg)

**To whom I would recommended the course:**
- Someone, who has gained solid programming knowledge but is stuck to tutorials and tiny projects - after this course you will know how to create full stack web applications and host those online. Problem solving skills promoted in this course make it even possible to obtain new stack (such as [React Native](https://facebook.github.io/react-native/)).
- Someone, who is already working in the industry and wants to get working knowledge about latest [React](https://reactjs.org/)/[Redux](https://redux.js.org/)/[Node.js](https://nodejs.org/en/) and shape their Javascript ([ES6](http://es6-features.org/)) skills and the ways of working. 

[There will be new course on 2020](https://fullstackopen.com/en/faq/) (it starts on 15th of March). Revised course contains new section about TypeScript. In the meanwhile, current course is still [online](https://fullstackopen.com/en#course-contents).

I would love to hear your experiences of the Full Stack Open! Have you benefit from it professionally? Or are you planning to take it and would like to ask for something?