Peter Perez's Fab Academy Portfolio

Week 1: Project Management

This Week's Goals:

  • Plan and sketch a potential final project
  • Work through a git tutorial
  • Build a personal site in the class archive describing you and your final project
  • Sketch Book images of idea

    Final Project Concept: Desktop Companion Robot

    When I was told that I would be able to build anything in this project, I knew exactly what I wanted to do. For a while I had been exploring the idea of making an astromech droid for the lab. However, making a full sized 4 foot tall droid could be a bit of a daunting task. That is where my ideas led to companion robots.

    There has been some exploration into the idea of companion robots to assist people with loneliness as well as household tasks. And this also throws me back to childhood when companies would release little robotic dogs. This robot will be a similar device, but let us call him a desktop robot. He will sit and move around your desk and interact with you and anyone around you. The goal of this is not to truly create a companion, but to possible create an educational platform that has the psychological effect of a tamogatchi, but lives fully in the physical realm.

    My Experience of Git

    Git and Version Control

    I have used GitHub before, but I did not know a lot of the details for it. Most of it was the pulling of repos for my student to work in FIRST Tech Challenge and thats about it. Or pulling code for one project or another. Then I linked that up with my Github program and that is about it.

    Sketch Book images of idea

    This time, we could not just use the convenient Git App so Instead what I did was at first, try to pull using cmd prompt. That was not too difficult. I used the correct commands. I used git init, git commit, git pull, and git push to get things back and forth on the site while using jekyll. This did not work well. The site I made compiled locally but did not do well on GitLab

    Instead I pulled the site using ssh onto VScode and luckily it pulled over to my local machine.

    The long process of getting to this website

    Building a Website

    In this commiting is easy, you just push your commits in all of the different changes through the handy dandy commit button on the right. You have to add a comment to your commit. To which I usually do which version I am on and make it good to go.

    The long process of getting to this website

    Building a Website

    This process has been a journey to say the least. Last year I taught a class called Computer Science Discoveries which teaches students the basics of code using HTML, CSS, and JavaScript. I came in pretty cocky to this process because of that. "I taught this, so I know this..." I couldn't have been more wrong.

    I started the process using VSCode and attempting to do a website using the static site generator called Jekyll. This was not a wise choice in the long run. I did not know what I was doing and even though I ran through a couple of hours of YouTube tutorials from the Giraffe Academy. I could not get the site to upload to Gitlab properly. I would push the site, but he yml files did not work for me and it kept compiling without the good formatting I wanted.

    Luckily I spoke to Tom while he was working on his website and he reminded me of a key tool that we all have to our disposal now: Artificial Intelligence. I managed to use ChatGPT to help me format this site using HTML and CSS. The first Git Push was scary, but after the server had a moment to process it, I managed to get the site to work!

    This was definitely not a one upload job though. The amount of times I have saved, refreshed, checked w3schools for css and html tags, had to take a rage break to get to this point are too many to count.

    In doing this I also had another problem. The fact that I do not have good graphic design skills. But, AI came in handy with that too. Using GPT for base ideas and photoshop or canva to edit my images and compile them together I have been able to create the website you see before you. It may not be beautiful but I am very proud of it.

    What I learned this week:

  • Html and CSS are more finicky than I remember. But try and try again when you are setting something new up.
  • Styling your site is very important and trying new things inside is interesting.
  • font-variant:small-caps makes for the coolest look and is actually like my normal handwriting.
  • display: command on CSS really helps with organizing your information. For example:
  • Display: inline-flex is how my blocks can change order
  • Display: block, allows the paragraph parts of this to be vertical instead of horizontal.
  • ChatGPT is an excellent tool to build off of but you cannot trust it to do everything.