DEV Community

Cover image for Week 1: My First Project Build Since Bootcamp
Sarah
Sarah

Posted on

3 1

Week 1: My First Project Build Since Bootcamp

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

  1. Initial meeting
  2. The Set-up
  3. [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.

Pineappler Logo

Naming an app

[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:

  1. 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.
  2. 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.
  3. 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.
  4. 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)

Heroku

Build apps, not infrastructure.

Dealing with servers, hardware, and infrastructure can take up your valuable time. Discover the benefits of Heroku, the PaaS of choice for developers since 2007.

Visit Site

Top comments (1)

Collapse
 
apstone profile image
Aaron Stone

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.

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more