Ken_Ho - Full Stack (Level 2) Pathway

Module 1 - Self Assessment

[1] Overview

  • Technical Areas

    • Investigated what Discourse is, what services it provides, the development community behind, and how they serve their clients.
    • Improved understanding of Bash and Windows terminal commands to navigate around file structures, verifying dependency versions, and writing small scripts to automate setup commands.
    • Reinforced understanding of Git and GitHub.
    • Studied about the basic syntax of Ruby from suggested YouTube videos.
  • Tools

    • Bash terminal, Windows PowerShell, Command Prompt
    • STEM-AWAY forum
    • Git, GitHub
    • Ruby
  • Soft Skills

    • Developed calm and rational debugging skills.
    • Continuous communication with team lead and members.

[2] Achievements

  • General understanding of Discourse
  • Finished Ruby tutorial
  • Finished Git/GitHub tutorial

[3] Goals for Week 2

  • Install Discourse locally
  • Install Ember-cli locally
  • Install WSL for Windows 10

Module 2 - Self Assessment

[1] Overview

  • Technical Areas
    • Command line, Ember, Discourse codebase, SCSS
  • Tools
  • Soft Skills
    • Improved communication with team member and activity in Discord.
    • Improved time management skills.

[2] Achievements

  • Installed WSL for Windows 10
  • Installed Discourse locally.
  • Installed Ember-CLI locally.

[3] Challenges

  • Struggled to get Discourse installation to work with Ember due to different port forwarding and unauthorized access.

[4] Goals for Week 3

  • Finish up Discourse developer guide article
  • Attempt discourse theme development locally, remotely, and via admin page
  • Implement learned SCSS

Module 3 - Self Assessment

[1] Overview

  • Technical Areas

    • Command line, Ember-CLI, Discourse
    • HTML, CSS, SCSS, JavaScript
    • Discourse theme creator
  • Tools

  • Soft Skills

    • Improved communication with team member and activity in Discord.
    • Improved time management skills.
    • Improved rapport with team members

[2] Achievements

  • Developed simple Discourse theme locally and remotely
  • Tried different themes from meta.discourse.org
  • Implement SCSS syntax in discourse theme
  • Learned JavaScript syntax from other sources

[3] Challenges

  • Still learning how to use developer tool from browser.
  • Have to pick up the pace when learning new information

[4] Goals for Week 4

  • Finish up advanced Discourse developer guide article
  • Attempt discourse theme development locally, remotely, and via admin page w/ advanced implementation.

Module 4 - Self Assessment

[1] Overview

  • Technical Areas

    • Bash terminal
    • HTML, CSS, SCSS, JavaScript
    • DOM Inspector
  • Tools

    • Git, Github
    • STEM-AWAY forum
  • Soft Skills

    • Improved confidence in pitching an idea to my group
    • Brainstorm session with group

[2] Achievements

  • Learned about handlebars.
  • Assigned to work on the plugin development team.

[3] Challenges

  • Struggling with JavaScript concepts

[4] Goals for Week 5

  • Finish up advanced Discourse developer guide article
  • Develop Toggle button plugin for team

Module 5 - Self Assessment

[1] Overview

  • Technical Areas

    • HTML, CSS, SCSS, JavaScript, Ember.js, Ruby
  • Tools

    • Bash terminal
    • Git, Github
    • Discourse Meta
    • Youtube
  • Soft Skills

    • Improved time management skills due to tight deadlines.
    • Participated in virtual collaboration frequently to stay up to date.

[2] Achievements

  • Learned about handlebars.
  • Learned how to create simple Discourse Plugins.

[3] Challenges

  • Struggled a lot with Ruby concepts such as how to call endpoint API.
  • Difficulty balancing workload and available time.

[4] Goals for Week 6

  • Continue to stay updated with team communications via scrum meeting and Discourse communication.

Module 6 - Self Assessment

[1] Overview

  • Technical Areas

    • Discourse codebase
    • Ruby
    • Ruby on Rails
    • JavaScript
    • Webpage routes
  • Tools

    • Git, GitHub
    • STEM-AWAY forum
    • Discourse Admin
    • VS Code
  • Soft Skills

    • Improved time management and prioritization.
    • Learned to take on different roles in a team project and deliver.
    • Reading open-source project codebase.

[2] Achievements

  • Implemented best practices when collaborating with GitHub such as pull requests and creating separate development branches before committing to the main branch.
  • Contributed to a Notepad plugin initiated by team leads by creating show/hide panel option via JS DOM selector.
  • Affinity with the front end has led to a switch to the front end team to develop style sheets and add feature for the note pad.

[3] Challenges

  • Struggled with the reading task due to weak foundations and mediocre time management skills.
  • Struggled to communicate with teammates and resulted in multiple commit conflicts via GitHub.
  • Backend API endpoints and request handling are still really confusing.

[4] Goals for Week 7

  • Continue to work on the final project voted by team members.
  • Continue to improve JS skills.

Module 7 - Self Assessment for Final Project pt.1

[1] Overview

  • Technical Areas

    • Discourse codebase
    • Discourse Plugin API
    • Port forwarding
  • Tools

    • Git, GitHub
    • STEM-AWAY forum
    • Discourse Admin
    • VS Code
  • Soft Skills

    • Improved time management and prioritization.
    • Learning actively while doing the project alongside.
    • Participate and communicate constantly with teammates to keep myself updated on what we’re working on.

[2] Achievements

  • Perform bug fixes to the javascript code for some of the notepad’s features such as show/hide panel by removing the extra space after clicking “hide”.
  • Finally being able to contribute Javascript code which I have no experience with when the project started.

[3] Challenges

  • 90% of the time is just reading the codebase and trying to understand what my teammates are doing since I have very little experience in Javascript.
  • Difficulty contributing at times due to lack of understanding of the javascript syntax.

[4] Goals for Week 8

  • Continue to work on the final project voted by team members.

Module 8 - Self Assessment for Final Project pt.2

[1] Overview

  • Technical Areas

    • Discourse codebase
    • Discourse Plugin API
    • HTML, CSS, JS
  • Tools

    • Git, GitHub
    • STEM-AWAY forum
    • Discourse Admin
    • VS Code
  • Soft Skills

    • Improved time management and prioritization.
    • Learning actively while doing the project alongside.
    • Participate and communicate constantly with teammates.
    • Patience when debugging.
    • Fundamentals take time to master and understand.

[2] Achievements

  • Continue to perform quick bug fixes to the javascript code and simplifying the codebase with SCSS property.
  • Ensure contribution doesn’t cause merge conflict with members who are more active in the development process by constantly checking for new commits.
  • Implemented a fully functional hide/show panel for Discourse’s notepad style feature to save space and be less intrusive.

[3] Challenges

  • Unfortunately, I wasn’t able to contribute to the back end team as I find the learning curve for the implementation was too hard for me so I decided to put all my energy into the front end before the deadline comes.
  • Some bugs took longer than expected and have caused delays in team expectations.

[4] Verdict

  • A lot of work, but it’s all worth it. I feel like I have become a better teammate and developer from this internship. I have better time management skills, faster pick up for new languages and most importantly a better communicator. Despite multiple unexpected circumstances that happened along my internship, I was able to communicate with my teammates to stay on track.