What I've Been Working On: Flask, REST APIs, Testing, and Projects.
Tags: python, flask, testing, webdev
Published: 2021-11-13 04:22:47

#What I've Been Up To
I have been trying to grow and solidify my knowledge by watching videos/completing tutorials and then making my own projects using the knowledge I gained as practice. I have a list of skills I want to learn so I started working with a few of them simultaneously.  

I watched a video on LinkedIn Learning about creating a college course website using Flask, REST APIs, and MongoDB.  I started coding along with the instructor but soon realized that I already knew or understood the concepts he was teaching.

After all the work I've put into my portfolio website I have become quite accustomed with Django's syntax and how it works.  When it came to learning Flask it was a breeze.  I was able to translate the concepts I'd learned with Django and create a working app way quicker than before.  


##My Project
I finally found an interesting small project to work on.  I am creating a Python/Flask web application that makes small, unimportant decisions for you.  Like where to eat tonight? or What movie should I watch?  It isn't anything even remotely revolutionary but it's getting me valuable experience in Flask, Python, and using APIs.

####First Steps
It started off being an app to choose where to eat, but I decided I wanted more depth.  Right now, I only have the restaurant chooser app completed.  I plan to implement more soon.

####APIs Used
Creating this app I got a lot of experience using Google APIs.  Mainly geocoding, places, and Google map embed.  I also learned that some companies charge to use APIs and that is why I am not hosting my web app.  

####HTML and CSS
I love the concept of having templates being extended to generate pages.  It makes setting up new HTML pages for your project fast and simple.  This time around I decided not to go with Bootstrap and try my hand at CSS myself.  I don't think it went badly I just don't know how to make my website's pretty yet.

####Virtual Environments
One thing the video did teach me was how to setup and use a virtual environment in Visual Code.  I had never used a virtual environment before despite having heard quite a bit about them.  It was surprisingly easy and non-painful.  I can't believe I was using the command prompt so much before.

####Unit Testing
Another concept I've been wanting to get into.  It wasn't covered in the video and my current project isn't a great one to implement tests into.  I currently have one test in my app and it is to make sure the restaurant chooser class functions properly.  I can't make the test 100% accurate because the API sometimes returns Subway and other silly things when you are searching for pizza.

##Thanks for reading.
I have been working hard on learning and building up to a career in Software Development.  This is my third project I feel will be worthy of showcasing and I'll hopefully have more to show off before the year is over. Also, in about a month I'll have my Associates Degree in Software Development and officially be halfway done with school! Maybe then I can finally get an Internship.

The project can be found [here](https://github.com/Bixxith/Random-Chooser-App) if you are interested in viewing it.