HuichanC - Full Stack (Level 2) Pathway

Module 1

  1. Overview
    • Technical area:
      • Command line basics.
      • Basic Ruby syntax.
      • Git & GitHub Basics.
      • Basic HTML and CSS.
    • Tools:
      • Git
      • GitHub
      • Visual Studio Code
      • FreeCodeCamp
      • YouTube
    • Soft skills:
      • Team building.
      • Build collaboration channels.
      • Learn to use products such as Slack, Google Meet and Group for communication
      • Levy on experience of other teams and motors' suggestions
  2. Achievement Highlights
    • Successfully built collaboration channels for team and launched the orientation meeting.
    • Built the framework of how we run the team and organized the issues we need to discuss with other members.
    • Enhanced my knowledge on command lines, HTML, and CSS. I think it will help me to read the database of Discourse in the following week.
  3. Tasks Completed
    • In the beginning, I didn't know how to initialize and felt stressful since it likes the team is waiting you to get started. I navigated other teams' channel to find out what I should do at that moment. And I actively contacted other leads to share my initial ideas. Under the co-work of all leads, we had a successful start.
    • HTML, CSS, and JS are totally new to new. I didn't know how basic stuff I should know. The websites provided include many details. If I want to figure out all of them, it will take me lots of time. So I found other learning websites to build my basic knowledge.
    • I spent more time to write codes rather than just read, so I can understand the coding languages we will use more.
  4. Goals for the upcoming week
    • Set up Trello and get familiar with its functions.
    • Know more about Discourse database.
    • Help team members more familiar with the way we work, and encourage more people to involve.
1 Like

Module 2

  1. Overview
    • Technical area:
      • Basic Ember.js
      • Basic SCSS
      • Basic JavaScript
      • Discourse Tech Stack and codebase
    • Tools:
      • Ember.js website
      • SCSS website
      • Visual Studio Code
      • FreeCodeCamp
      • GitHub
    • Soft skills:
      • How to start to learn a new language or software.
      • How to use Trello and its functions.
      • Being responsive to teammates' questions and building more interaction.
  2. Achievement Highlights
    • Successfully setup the frame of Trello and invited members to our board.
    • Learned ember.js, CSS, and JavaScript languages which are all new to me.
    • Took a glance of Discourse codebase and learned how it works generally.
  3. Tasks Completed
    • Because I have zero basis of ember.js, SCSS, and JavaScript, I don't know how basic stuff I should know is enough for the need of the following weeks and final project. When I watched this week's record of kick-off meeting, I had a hard time to understand the codebase. So I spent much time of this week learning these languages, and it helps me a lot to read the codebase of Discourse.
    • The codebase is so big and complex and looks intimidating at first. After learning the languages it used, I can understand more how it works even though there're still a tons of details I can't understand.
    • I spent some time to study the functions provided by Trello by following BJ's video. There are some functions used by BJ but I can't install in mine. I guess it is the problem of account level.
  4. Goals for the upcoming week
    • Get started to discuss initial ideas toward final project.
    • Practice more theme components.
    • Make sure each member is on the right track.

Module 3

  1. Overview
    • Technical area:
      • Theme and theme components
      • Create a local theme and a remote theme
      • Use Discourse Theme Cli
      • Use developer tool and DOM inspector
      • Leverage the styleguide to create theme
    • Tools:
      • Discourse
      • Ruby
      • WSL
      • DOM inspector
      • GitHub
    • Soft skills:
      • Being patient to troubleshooting when installing new software.
      • Keeping reading and learning even though encountering some concepts I didn't understand.
      • Writing down notes for fast check later.
  2. Achievement Highlights
    • Successfully built a local theme and a remote theme.
    • Learned how to use Discourse Theme Cli to build a local theme and edit through it.
    • Learned how to leverage the DOM inspector and styleguide to design a theme.
  3. Tasks Completed
    • There were much new information to learn this week. Sometimes I couldn't remember all the stuff such that I needed to read the materials again and again when I did the tasks. But every time I read the documentations, I felt like I understood the content more. but I found it was still hard for me to make complex changes of a theme since I am not that familiar with JavaScript.
    • When I tried to use the watch function of Theme Cli, I found that it didn't react to my changes of code, and my local theme didn't either. Also, if I wanted to resume the edit on the existing theme I created earlier, I didn't know how to start the watch function on the existing theme rather than creating a new one. I will ask tutor for these problems.
  4. Goals for the upcoming week
    • Plan the timeframe of final project.
    • Try to do more than one module so that I can think about the project.
    • Learn more coding knowledge of JavaScript.

Module 4

  1. Overview
    • Technical area:
      • handlebar
      • pluginAPI (component, controller, widget)
      • add settings to Theme
      • add localizable strings to Theme
      • Font Awesome Icon
      • AJAX
      • more interactive JavaScript
    • Tools:
      • Discourse
      • Discourse Theme Cli
      • WSL
      • meta.discourse
      • Zoom
    • Soft skills:
      • Sharing the obstacles I confronted as learning with team members.
      • Keeping reading and learning even though encountering some concepts I didn't understand.
      • Seeking help from teammates or mentors.
  2. Achievement Highlights
    • Successfully added a new component shared in meta.discourse to my Theme that shows all the positions of handlebars.
    • Followed Keegan's example to go through the topics of this module.
    • Learned how to adjust theme through handlebars.
    • Learned more syntax of JavaScript that make interactive html page.
  3. Tasks Completed
    • When I learned the part of handlebar through the assigned reading, I don't understand how to assign the data-template-name. But in the kick-off meeting, Keegan taught us another way to use handlebars. That one is much easier to understand.
    • After the first time reading, I still couldn't fully understand the topics covered this module. After the kick-off meeting and following Keegan's suggestion of the more efficient way to learn it, I've understood more but still have hard time using the pluginAPI.
  4. Goals for the upcoming week
    • Read more examples in the meta.discourse to get familiar with the skills we've learned so far.
    • Try to complete two modules in order to have more time on the project.
    • Enhance overall full stack knowledge.

Module 5

  1. Overview
    • Technical area:
      • fix problem of ember cli
      • fix problem of Discourse Theme Cli
      • review module 4 topics
      • create a new plugin by plugin generator
      • use plugin outlets in plugin
    • Tools:
      • GitHub
      • Discourse Theme Cli
      • WSL
      • ember cli
      • Ubuntu
    • Soft skills:
      • troubleshooting skills when I found that I can't run ember cli and Discourse Theme Cli.
      • searching for possible reasons and solution from websites.
      • Seeking help and advice from teammates or mentors.
  2. Achievement Highlights
    • Successfully fixed the problems about ember cli and discourse theme cli on my local machine.
    • Reviewed module 4 again after fixing my ember cli and discourse theme cli.
    • Successfully create a plugin and tried to use plugin outlets.
  3. Tasks Completed
    • I found that I only can connect to localhost:3000 instead of :4200. After lots of trying, I found that I didn't track the right Discourse codebase. Let's why I still could connect to :3000 even though I updated the codebase to the latest. After I reinstalled Discourse, problem was solved.
    • I am using Windows OS. Initially, I stored my created theme under Windows rather than Ubuntu system, so my discourse theme cli couldn't work regularly, my instance didn't react to my changes of codebase.
  4. Goals for the upcoming week
    • Look more examples of theme, theme components, and plugins published on meta.discourse.
    • Brainstorm some ideas about the project.
    • Encourage members to discuss the project actively.

Module 6

  1. Overview
    • Technical area:
      • add settings to a plugin
      • good practice to setup git
      • create an admin interface
    • Tools:
      • Github
      • Discourse Theme Cli
      • WSL
      • Github Cli
      • Ember Cli
      • Ubuntu
    • Soft skills:
      • trying different coding ways to test if it can work.
      • searching for published plugin for reference when learning a new concept.
      • searching for ideas about the project.
  2. Achievement Highlights
    • Successfully executed the git setup as recommended.
    • Successfully create an admin interface by following the steps in the assigned reading.
    • Successfully add settings to plugin.
  3. Tasks Completed
    • My PC is using Windows system, I had a hard time installing Github Cli. I decided to skip it temporarily since I still can use general way to achieve my work, and focused on the plugin stuff first.
    • When I read the reading about admin interface, I actually didn't understand the purpose of creating an admin interface until Keegan showed some specific examples in the kick-off meeting.
  4. Goals for the upcoming week
    • Decide the topic of the project and its main functions.
    • Divide the project into sub-tasks.
    • Conduct a poll to know members' preference of working in frontend or backend.

Module 7

  1. Overview
    • Technical area:
      • review the topics required in the project
      • refer to the codebase of existing plugin
    • Tools:
      • Github
      • Discourse Theme Cli
      • WSL
      • Github Cli
      • Ember Cli
      • Ubuntu
    • Soft skills:
      • thinking ideas of project and trying to figure out how to execute.
      • team communication to decide the topic of project.
      • How to group teammates to sub-teams in charge of different tasks.
  2. Achievement Highlights
    • Successfully executed a survey among teammates to know their availability, willingness, and preferred position about the project.
    • Successfully decided the topic of the project after discussing with teammates and Keegan.
  3. Tasks Completed
    • As a PM, I tried to push the progress of our project, especially we were a little behind. It takes lots of time to make a group decision if everyone's opinion is needed. So I recommended other leads to talk with mentors about our ideas while waiting for teammates' responses.
    • At first, we decided one topic, but after speaking with members, it will need lots of rails skill and most our teammates are new for full stack. So we needed to pick another idea. What I learned is don't spend too much time before talking with mentors with your ideas, and bring more the one ideas to mentors in case of some of them might not suitable.
  4. Goals for the upcoming week
    • Decide the tasks and groups.
    • Schedule the timeline of project progress.
    • working on personal task