Jonathan_Hung - Full Stack (Level 2) Pathway

Week 1

Overview

  • Technical Area: Learned about basics of command line (traverse through files, create directories, delete/create files, understand the shell), Git version control, how to use GitHub, Ruby syntax and basic information of Ember JS.
  • Tools: Command line, Git, GitHub, Atom, Youtube, STEM-Away platform.
  • Soft Skills: Learned how to communicate using the STEM-Away platform, and develop skills of coordination and time management with a team.

Achievement highlights

  • Learned basics of command line
  • Learned basics of Git and the idea of version control
  • Learned basics of Ruby and JavaScript syntax
  • Learned about the uses of Ember JS

Goals for upcoming week

  • Complete readings/videos of module 2, FS level 2
  • Install Discourse locally
  • Get a better understanding of Ember JS
  • Get a better understanding of Ruby and Rails

Tasks done

  • Communicated and coordinated work with a team
  • Got better understanding of Ruby and Rails
  • Started to learn about the concepts of the project with the modules
1 Like

Week 2

Overview

  • Technical Area: Learned about installing Discourse in local machine, basics of Ruby on Rails, Model-View-Controller architecture, basics of SCSS, basics of Bootstrap, the Discourse codebase and how it is composed and developed.
  • Tools: Youtube tutorials, STEM-Away, technical support forums (Stack Overflow, etc.), documentation of Ruby on Rails, SCSS guides.
  • Soft Skills: Learned to communicate with developer communities in platforms such as Stack Overflow and Github, and to work in my time management studying the resources from the module 2.

Achievement highlights

  • Installed Discourse in local machine, and got a better understanding of the libraries required by it.
  • Got a better understanding of debugging practices when installing libraries using the command line.
  • Learned about MVC architecture, and the basics of Ruby on Rails.
  • Learned about the Discourse codebase and its tech stack.

Goals for upcoming week

  • Start working and complete the module 3.
  • Get a better understanding and start learning about developing Discourse themes.
  • Use the knowledge from previous weeks to understand more the Discourse platform (for example, knowledge from the Ruby on Rails, Ember.js material).

Tasks done

  • Installed Discourse in local machine. Faced some errors of missing libraries in the Discourse installation, and solved them by investigating (using forums like Stack Overflow) the missing libraries and installing them. Also, I faced some problems in my installation due to my Ruby version, and I solved them by changing it for an older Ruby version.
  • Got a better understanding of the Discourse codebase, and the tools used to develop in it (Ember.js, Ruby on Rails, etc.).

Week 3

Overview

  • Technical Area: Learned about installing/creating Discourse themes and components both in local machine and in Theme Creator (which is a Discourse platform to preview themes). Learned about trouble shooting installations.
  • Tools: Command line, GitHub, Youtube, STEM-Away platform, Slack, Discourse forums.
  • Soft Skills: Learned to communicate through the STEM-Away Discourse, and get support from mentors in that platform.

Achievement highlights

  • Learned to install Discourse themes in different ways (installing the ones suggested, from a GitHub repository, etc.).
  • Created theme in local machine using the Admin Settings UI in Discourse, and adding some HTML/CSS/JavaScript to customize it.
  • Created a remote theme in GitHub, and imported it to my local machine. Got a better understanding of the required files and the required structure for a remote theme.
  • Got introduced to browser developer tools, and starting learning about it

Goals for upcoming week

  • Learn more about creating themes in Discourse
  • Get introduced to handlebars syntax
  • Learn more about APIs and their uses on Discourse

Tasks done

  • Installed and created my first themes in Discourse using different methods (direct installation, installation from remote repository, etc.)
  • Troubleshooted problem of installing themes in my local machine. When trying to install themes, I got a “500 Internal Server Error.” Solved this problem by following Discourse installation again, and trouble shooting (by adding some commands in command line) the failures from the bundle exec rake autospec command in the Discourse installation.

Week 4

Overview

  • Technical Area: Learned about using developer tools to modify Discourse themes, use handlebars templates and pluginAPIs in Discourse.
  • Tools: GitHub, Youtube, Atom, STEM-Away platform, Discourse forums.
  • Soft Skills: Learned to figure out unknown or complex material from the module 4.

Achievement highlights

  • Used developer tools to find different classes for elements in Discourse website, and used those classes for theme development.
  • Got introduced to handlebars syntax and plugins in Discourse.
  • Started learning more about DOM (JavaScript) and AJAX requests.

Goals for upcoming week

  • Keep learning about handlebars templates and plugins in Discourse
  • Learn to use font awesome icons in Discourse
  • Read and try to implement virtual DOM

Tasks done

  • Created a Discourse theme with help of developer tools.
  • Started working with handlebars templates.
  • Read and studied some material from the module 4

Week 5

Overview

  • Technical Area: Learned to create themes using plugin API, use plugin outlet locations, add settings and localized strings to Discourse themes, use Font Awesome icons and make AJAX requests.
  • Tools: GitHub, Visual Studio, Youtube, STEM-Away platform, Discourse forums, Slack channel, documentation pages.
  • Soft Skills: Worked on figuring out and learning unfamiliar syntax by myself.

Achievement highlights

  • Created a theme component using a plugin outlet in Discourse
  • Added settings, localized strings and Font Awesome icons to that theme
  • Made API requests with theme and learned about API endpoints in Discourse
  • Got introduced to create plugins in Discourse

Goals for upcoming week

  • Start to create Discourse plugins
  • Work on material of module 5 and 6
  • Get a better understanding of making AJAX requests, and developing theme components and plugins

Tasks done

  • Created a theme component using different elements from Discourse, mentioned in module 4
  • Learned more about handlebars syntax and templates, SCSS, JavaScript and AJAX requests with themes. Got challenged trying to understand ideas from the module 4, and started working on them by watching YouTube videos and reading documentation of syntax that I’m not very familiar with

Week 6

Overview

  • Technical Area: Learned to create plugins in Discourse, use plugin generator to setup, add settings to plugin and create an admin interface.
  • Tools: GitHub, Visual Studio, Youtube, STEM-Away platform, Discourse forums, Slack channel, documentation pages.
  • Soft Skills: Worked on time management and started generating ideas for final project.

Achievement highlights

  • Created a plugin in Discourse in local machine and in remote repository
  • Added custom settings and admin interface to plugin
  • Started brainstorming process for final project
  • Got more familiar with ember.js and ruby on rails.

Goals for upcoming week

  • Start working with team in final project, creating a plugin for Discourse
  • Wrap up and combine all the things learned in previous weeks
  • Attend office hours for clarification of problems related to understanding the material of the internship or the final project

Tasks done

  • Created a plugin in Discourse using different elements and tools
  • Started teem coordination for final project, considering the knowledge gained from previous weeks