-
Notifications
You must be signed in to change notification settings - Fork 80
GSoC 2020 Maya Treacy
I will be working on backend and frontend of Bridge-In-Tech application. My mentors are Foong Min Wong, Ramit Sawhney, Meenakshi Dhanani, and Isabel Costa. Isabel is also the project manager of this project.
Days | Hours (AEST = UTC+10) | Meetings | Tools |
---|---|---|---|
Monday | 08:00AM - 04:00PM | Scrum Check-in (08:00AM) | Zulip |
Tuesday | 08:00AM - 04:00PM | ---- | Zulip |
Wednesday | 08:00AM - 04:00PM | Scrum Check-In (08:00AM), Weekly BIT Project Meeting (11:00PM) | Zulip, Hangout |
Thursday | 08:00AM - 04:00PM | ---- | Zulip |
Friday | 08:00AM - 04:00PM | Scrum Check-In (08:00AM) | Zulip, Hangout |
Saturday | 08:00AM - 04:00PM | Weekly GSoC Happy Hour (12:30AM), Weekly 1:1 with Isabel (08:00PM), Weekly 1:1 with Meenakshi (10:30PM) | Zulip, Hangout |
Sunday | 08:00AM - 04:00PM | Weekly 2:1 Meeting with Foong and Ramit (11:00PM) | Zulip, Hangout |
I'm a final year student of Master of Information Technology at Monash University, Melbourne, Australia. I'm a newcomer to the IT field with previous experiences in Accounting and Teaching fields. My interests are on Web and mobile applications as well as Internet of things. My hobbies are listening to music, watching action movies and recently found a new hobby: contributing to open source projects ;).
Gmail | Intro to GSoC - A Medium Blog | Github | LinkedIn | My Resume | GSoC2020 Proposal Link
(The next section is going to be updated weekly)
- Split Medium blog post Week 3 into 2
- Attended 1:1 meeting with Isabel and office hour, Foong office hour, 3:1 meeting with Mentors, BIT Weekly meeting
- Successfully troubleshoot bug on PR#67 and pushed the changes
- Maintained and synced integrity of git histories across 4 interdependent backend PRs (#59, #60, #65, #67)
- Posted week 4 medium blog
- Learned about persisting token in localStorage vs cookies, protected page, create and use React Context, withRouter React (and more...)
- Participated in discussion on CORS Allow-Control-Allow-Origin wildcard PR#645 Mentorship System backend
- Completed frontend protected page, storing logged-in user details using cookies, toggle Register-Login/Logout Navbar, pushed code changes to PR#34 frontend and responded to mentor's feedback.
- Finding resources that matches the project needs. Too many things to learn at once but was not sure where to start from.
- Yes, by breaking down task to mini tasks and approached them systematically one step at a time.
- Nope.
- Move on to the next task, User's profile functionality
- Not too bad
- Completed Register UI Mocking API tests PR#24 and responded to mentor's feedback
- Completed Login frontend UI and test cases (PR#26) and responded to mentor's feedback
- Completed Login backend PR#60 and responded to mentors' feedback
- Successfully resolved Travis CI backend failed build related to postgresql with the help of Meena mentor
- Modified PR#59 Register test cases as per mentors' feedback
- Attended Meena’s office hour and catch-up sessions, 1:1 meeting with Isabel, 1:1 meeting with Meena, BIT weekly meeting.
- Pushed namedtuple decorator PR#65 and modified register tests.
- Pushed WIP PR#67 User Login API test cases.
- Masking http response errors from MS API
- Learning protected page and persistence JWT token on React frontend
- Masking some Http error code from MS API - gradually. Some PRs got approved and merged, some still outstanding.
- Not at the moment
- Protected pages and persistence JWT on React UI
- GET /user API endpoint backend
- Better then last week
Blog post for Week 8: Week 4 Medium blog
- attended 1:1 meeting with Isabel, 1:1 meeting with Meena, 1:1 with Foong, 3:1 meeting with mentors, BIT weekly meeting and dropped by at Isabel’s office hour.
- CompletedPR#18 Register UI and functionality, also closed/replaced PR#15
- Updated BIT Backend Development Setup Instructions WIKI and posted on Zulip
- Opened
First timers only
issues on BIT backend: - Posted Week 2 GSoC journey on Medium
- Started learning React testing library to help write test cases for Register UI.
- Reviewed PR#16 BIT frontend on removing .vscode from BIT repo
- Pushed PR#22 frontend on travis ci
- Opened issue#20 frontend and start working on Register UI test cases
- Opened issue#54 and completed PR#59 backend for Register user test cases
- Opened issue#57 and pushed PR#58 to add BIT backend setup env .md into .github folder
- Reviewed PR#56 backend on adding link to Wiki BIT setup instructions on README
- Reviewed PR#645 Mentorship System backend on CORS related issue
- Troubleshoot Travis-build related to postgres second schema
- Troubleshoot Travis build caused by second schema bitschema in postgre database
- Learning Mocking API call using unittest.mock for the first time
- Mocking API is solved. PR#59 submitted
- Travis fail build is wip.
- I have discussed and applied potential solution advised by Ramit mentor which were adding environment credentials to travis environment and adding
set search_path to...
command to travis script, but still unable to resolve the issue.
- Need mentor to help with alternative troubleshoot or approval to change database structure from having 2 different schemas (BIT - bitschema and MS - public schema) to just using one schema for BIT and MS which is public schema.
- Login background and UI functionality with API consumption.
- still catching up
Blog post for Week 7: Week 3 Medium Blog
- combined tasks for issue#19 (that is now closed) into issue#24 as suggested by Isabel
- wrote test cases for basic setup and add travis config file (PR#26)
- added pylint and pylint-flask as dependencies and .pylintrc for linting test code quality (PR#26)
- attended 1:1 meeting with Isabel, 1:1 meeting with Meena, 3:1 meeting with mentors, Student onboarding session, BIT weekly meeting and catch-up session with Meena.
- fix bug POST /register error handling on BIT side (PR#26)
- pushed updates (wip) on Register UI PR#15. Have achieved the followings:
- form fields look and feel/interaction plus client-side validation (matched to MS backend server validation)
- Refactored form from withFormik() to useFormikContext() as requested by Meena
- Troubleshoot CORS issue when sending POST/register request running all servers locally and shared the fix with others on Zulip
- successfully registered new user through BIT API using only needed data on UI Register form using Formik (useFormikContext) and Yup libraries.
- helped mentors setting up and troubleshoot backend dev environment (started on zulip)
- participated in discussion on db design (zulip)
- Helped Meena Mentor locate new user on MS database on Catch-up session
- Reviewed and shared feedback on the need for issue#714 mentorship-android as requested by contributor (Priyansh Kedia).
- Worked on refactoring code base to not use Formik and Yup libraries.
- Participated in discussion on Heroku pipeline in MS production
- Always trying different approaches on React (Class vs functional components, React hooks, libraries vs no libraries, etc). Need to find the one fit for the project
- No. Still looking for relevant links that can help with the required tasks (sending partial data as payload for Http API request and error handlings with react hook/functional components without using any other libraries)
- As mentioned above. Steps taken so far: Successfully register new user using the workaround:
- using libraries (Formik and Yup)
- placing only needed attributes on UI form
- Mentors support on finding relevant guidelines to the required task
- Sending partial data as payload so UI can have extra required features (toggle password visibility, confirm password field and
Both
radio button) without adding them to payload. - refactor code base to not use any libraries as suggested by Meena mentor
- deal with error handling to show responses to user on UI.
- Login functionality (backend and frontend)
Not looking good
Blog post for Week 6: Week 2 blog
- Posted daily zulip and tri-weekly scrum checkins
- Updated issue#11 by adding Mentorship_Relations service
- Attended 2:1 meeting with Foong and Ramit, May 31st, BIT weekly meeting, Jun 3rd
- Discussed rules for password validation on zulip and mentorship android issue#710
- Completed issue#24 and have achieved the followings:
- Added necessary files for dao, models and resources for Users Registration.
- Successfully registered user from BIT backend to MS API using Postman and BIT Swagger UI.
- Added Travis CI and test cases for basic setups
- Updated wiki with Weekly report week 4
- Completed PR#10 (on issue#9) on Frontend Setup
- Modified REST API endpoints and errors handling and created issues #623-#636 on mentorship-backend repo to report bug http error response codes.
- Created and helped contributor on PR#620
- helped Meena mentor troubleshoot Zenhub Epics issue
- created 2 Epics for Backend Dev Setup and Frontend Dev Setup and place it of roadmap
- updated Technical Discussion and Proposal Review docs with new technical issues and removed duplicates
- Unclear requirement on test cases and Travis CI
- Yes, through discussions with mentors
- Creating test database on Travis build with multiple schema
- Mentors approval on PR#26 backend.
- Support/guidance on how to create multiple schema during travis build or using 3rd party tools
- Login functionality (backend and frontend)
Slightly behind but catching up
Blog post for Week 5: Week 1 Blog
- Posted daily Zulip checkins: May 26th, 27th, 28th, 29th, 30th, 31st, June 1st
- Worked on High-fidelity mockups: Homepage, User Profile, Organization Profile and their potential reusable components
- Participated in discussion on PR#687 mentorship-android, issue#710 & zulip
- Attended weekly meeting: BIT - May 27th, 1:1 with Isabel - May 30th, 1:1 with Meena, 2:1 with Foong and Ramit - May 31st
- Worked on API endpoints and error handling for Users, Organizations, Programs and Mentorship Relations services
- Worked on PR#25 - creating and populating db schemas
- Updated Project Requirements
Nothing
N/A
N/A
N/A
- Register functionality (backend and frontend)
Ok
- Posted daily Zulip checkins: May 19th, 20th, 21st, 22nd, 23rd, 24th, 25th
- Attended Isabel’s office hour, Tue, May 19th
- Created test-schema branch on forked repo and posted update on issue#19
- Helped QA with testing on datetime.utcnow() issue#556 mentorship-backend
- Attended BIT Team Weekly Meeting May 20th AEST
- Updated issue#10 on App Flow and issue#13 on Entity Association Model as per discussion on BIT Team Weekly meeting above
- Started test-alembic branch on forked repo bridge-in-tech-backend to support flask migration
- Participated in Zulip discussion on PR review workflow
- Participated in Zulip discussion on PR needs testing
- Attended 1:1 Meeting with Isabel, Saturday, May 23rd AEST
- Attended 2:1 meeting with Foong and Ramit, May 24th AEST
- Tested Project architecture for bit schema with options on 2APIs+2DBs and 2APIs and 1DB (posted update on issue#19)
- Created flask-migration alembic script (posted on issue#19)
- Updated Register (issue#2) and Login (issue#3) mockups on bridge-in-tech-web repo
- Setting up backup workstation on Windows facing issues because of Windows 10 update (version 1903). It kills the audio (speaker/mic) and ethernet network adapter. Currently put on hold until a more steady version comes out.
- Not applicable. Status: On hold
- Mentorship System schema needs to be updated to accommodate BridgeInTech schema to achieve project architecture 2 APIs (MS + BIT APIs) with 1 database (postgresql).
- on going discussion with mentors to decide the direction of the project architecture, plus support to handle database migration from Mentorship System side.
- Start backend dev
- This week need to finalize MVP, project requirements and prototype for front end; API endpoints (including errors handling) and project architecture (including database migration) for backend. 🤔 🤔 🤔
- Posted daily Zulip checkins: May 12th, 13th, 14th, 15th, 16th, 17th, 18th
- Created Epics for Coding Phases: First, Second, Final Coding Phases
- Created and pushed test-dev1 on existing Mentorship System code to test idea on ERD issue#12
- Attended Isabel’s Office Hour, Tue, 12th
- Attended BridgeInTech Team weekly meeting, Wed, 13th AEST, with mentors
- Worked on issue#10 (App Flow) with option 5 as the latest update
- Updated ERD and responded to mentors questions on issue#12 as discussed in the meeting above
- Created high-fidelity mockup for Register page issue#2 bridge-in-tech-web
- Helped troubleshoot Android/Flutter Travis-build apks on Zulip #mentorship-system > Android
- Attended Happy Hour Sat, 16th
- Drafted and Posted API endpoints and CRUD operation draft on issue#15 bridge-in-tech-backend to get mentors' feedback.
- Created test-schema branch on forked repo bridge-in-tech-backend and started working on db models and flask server
- Attended 1:1 meeting with Isabel, May 16th AEST
- Attended Weekly Team Building, May 16th AEST
- Helped QA tester with test steps to test PR#556 on Zulip
- Attended 2:1 meeting with Foong and Ramit, May 17th AEST
- Set up working environment on Windows machine with Foong’s help on her office hour May 17th AEST because Macbook screen had crashed
- Posted suggestions on Zulip on OS Team workflow between Coding and QA teams
- My Macbook screen crashed on May 17th morning
- Yes, dropped it at service center with estimated service time 5 business days
- Yes as per May 18th. Use Windows laptop as backup workstation
Only one week left to finalize project and backend overviews before moving to frontend overview.... Not looking good? 🤔
- Completed Wiki student profile page for anitab-org/bridge-in-tech-backend
- Started and added the followings to wiki sidebar and content:
- Created and shared link to Intro to Google Summer of Code 2020 with AnitaB.org Open Source
- Reflected on the initial proposal. Noted some potential changes to the proposal in the Technical Discussions doc
- 1:1 with Isabel on Thursday, May 7th AEST
- Pushed test-dev to remote repo at https://github.com/mtreacy002/mentorship-backend to test multiple schemas and db migrations
- Completed and added to wiki BIT MS-test-dev setup instructions
- Version Control - Repository (got write access) and Zenhub setup
- Created Weekly Report Template
- Created Weekly Scrum Progress Template
- Helped a new contributor to troubleshoot bridge-in-tech-backend PR#2.
- 1:1 with Isabel, Saturday, May 9th AEST
- Posted Zulip checkins: May 9th(1st), 10th, 11th
- Set a new target for finalising Tech stack, App flow & architecture, and MVP. Not feasible to do them within one week. New target 2-3 weeks.
- Created 3 Epics (Project, Backend and Frontend Overviews) on Zenhub to track discussions on proposal review
- Participated in Mentorship Flutter DevEnv Setup session, May 10th AEST
- Created issue#7 and issue#8 for Project Overview epic.
- 2:1 meeting with Ramit and Foong, May 10th AEST
- Created issue#9, issue#10, issue#11 for Project Overview epic.
- Created issue#12, issue#13, issue#14, for Backend Overview epic.
- Updated Wiki Weekly report with Week 1 Report
- Continued supporting the new contributor and helped her finalized issue on PR#2.
- Reviewed PR#3
- Started working on issue#12 Planning: ERD - Backend Overview
Getting familiar with routines (scrum checkins, daily zulip checkins) and repository wiki.
Yes, by asking for advice from mentors and observing other's (May admin's) checkins
Trialling BIT+MS schemas without MS alteration only can be done after issue#10 is finalized or at least drafted
Ongoing discussions and getting advice from mentors.
- Keep updating wiki with necessary pages
- attend scheduled meetings
- post daily Zulip checkins
- revisit (review) proposal on tech stack, app flow and architecture, project requirements
- Set Zenhub as Project Management Board
I've made some adjustment to project schedule on the proposal as explained in the blocker section above.
Blog post for Week 1 Intro post:
- Development
- Work-In-Progress
- Meeting minutes
- Outreach/Research topics
- Project ideas
- 2020 - Maya Treacy