This is the first blog post of a series of posts as I document my first project build since graduating from bootcamp. I'm also considering creating a YouTube channel as a secondary platform for documenting my experience - so stay tuned for that!
Week 1
- Initial meeting
- The Set-up
- [STUCK] Workflow
Initial Meeting
My first meeting with my mentor went great! We chatted a bit before on LinkedIn, so it was a pretty comfortable conversation. He introduced himself a bit more, as did I - then we discussed my goals and created a plan. He set up a shared workspace in Notion to track our workflow, the foundations of a real world developer, and my career path. So far, so good!
The Set-up
This caught me off guard, but in a good way - in our first meeting we started the project set-up! This included creating a new Rails app, naming the app (Pineappler! See image below for how the name was chosen), designing a logo, setting up the repo as well as the initial schema. He also created some issues as the first set of tasks I would need to complete before our next meeting (which I unfortunately didn't complete, but I'm working on it for week 2's post!). This included installing Devise, setting up Postgres, and the functionality for users to create a task.
[STUCK] Workflow
This is where I had issues, and you'd think it would be easy to understand but I found it very confusing. May it be my lack of experience working with an app build (that isn't a school project), feeling overwhelmed, or imposter syndrome paying yet another unwanted visit - the workflow blocked my progress.
GitHub Issues - for some reason it made sense to me to complete issues in order (#1, #2, #3 etc.) which is what caused the bulk of confusion because one issue would be dependant on another. I never had to deal with this before, since with my school projects I would build one feature at a time / one branch at a time. Now that I think about it, I think being overwhelmed was a huge factor to this.
Lesson: Take a minute to draw out your thought process, what logically makes sense to you is probably the right way to go. When all fails, remember - It's okay to ask for help! I reached out to a few dev friends and my mentor who quickly clarified everything.
Learnings
To keep this short and sweet, these were my key takeaways after my first week working on this app:
- Add the issue number (#1, #2 etc.) to your commits related to that issue - this creates a link to the issue, so it's easy for contributors to locate.
- Don't be afraid of mistakes - I accidentally merged a pull request I didn't mean to. It happens! Know that making mistakes is part of the learning process, and anything (hopefully) can be fixed.
- No question is a stupid question - but with that being said, take notes! Keep track of the questions you're asking to prevent re-asking the same things, and to have a go-to manual of your "what the hell?!" moments.
- Branch -> Pull Request -> Merge (Always!)
Week 2 goals
I'll be starting off with these 2 goals, but more will be defined in my next meeting with my mentor:
- Complete the existing issues (install devise, define schema, users to create tasks)
- Deploy (AWS Elastic Beanstalk)
Top comments (1)
Thatβs pretty awesome to have a mentor! Sounds like it will be a great learning experience, and a good way to build strong connections.