Everything I am doing and learning right now. Updated weekly.
- At the beginning of this week, we worked on a group project to make an app with given teams. My team worked on the backend of the project through Ruby on Rails which was more continued practice. It was fun and felt realistic to work in a team environment with a project.
- Something I am struggled with this week was getting back into Vue.js. It has been a few weeks since I have worked in Vue, so diving back into that framework was an adjustment.
- Some specific strategies I use to get unstuck are referencing code I have written before through Vue, then as I continued working, I take that option away to start remembering the syntax for the new language.
- I feel like I have learned alot about third party API's throughout this process and really enjoy parsing through an API to show certain data on the front end. This whole process is fun and fulfilling to me.
- At the beginning of the week we dove into basic CSS components. This led us into looking at the popular CSS framework, Bootstrap. We learned the power of Bootstrap with incorporating components into a web page.
- We dove into automated testing using RSpec and also took a look at TDD (Test Driven Development).
- I struggled with a particular problem with a few of my routes on my capstone project.
- If I could go back on this week I would tell myself to stop being stubborn and ask when I am hung up. The problem I was encountering could have been fixed quickly if I would have asked quicker.
- Work/life balance has been good, but it is easy to work hard when you don't have much going on. When events start coming up, it seems harder to find the time for discovery and coding, but it is necessary. Right now I am working on finding the balance between my time spent coding and my time spent networking/job searching. I tend to do something full steam for a little bit and then move on, but I need to learn how to split my time more effectively.
- We also learned about scaffolding in a Rails app to show that Rails can be a full-stack web application. This was fun to see the full circle of what rails is capable of.
- We learned authentication on the front end through vue.js to let users only see certain elements on a web page based on their authentication status.
- Something I am struggling this week is getting my third-party API to connect to my backend on Rails for my capstone project. This seems like it should be an easier process, but just like many things in coding, it's not as simple as it seems.
- Something I have gotten better at this week is understanding how the elements of Vue.js all work together to present information to the user on the front end.
- Some specific strategies I use to get unstuck is looking at an example for a good amount of time, and then attempting to work on the code by myself without looking straight at the example.
- My dad is in the tech industry, and I was able to have a great conversation with him pertaining to day to day life in the industry. It was eye opening and exciting to see what life looks like with a job.
- Axios seems like a powerful tool to be able to perform web requests to incorporate your back end with your front end.
- Starting this past week, we began our work on capstone projects which requires us to incorporate everything we've learned so far in one project.
- This week I was suggested to check out the Spoonaculur API for my capstone project, and it opened my eyes to how good and organized an API can really be.
- This week we wrapped up our curriculum on backend programming through rails. I have learned about authentication methods to access API's. We discussed different methods to access public API's through tokens and OAuth API keys.
- Something I struggled with this week is encrypting an API key in rails when publicly uploading your code to an opensource website like Github. I struggled with this concept, but learned the steps necessary to use this process in a rails application. I also learned the importance of keeping your API keys safe by not sharing them on an opensource website like Github.
- Advice I would give to my past self learning this material is to practice more. Practicing functions seems mundane in the moment, but when I get to certain problems that I have practiced before, it seems I have a deeper level of understanding for that problem. Then, in turn, it is a lot easier to work with someone and reason through a problem with a team.
- During a third-party API exercise I did this week, I was able to look at a few open API's and it helps me start to realize where data on the internet can be used and stored.
- Still working on reading Dune. Definitely a harder read, but is quite interesting so far.
- So far this week I have learned about database associations using foreign keys. This seems like an extremely applicable tool that can be used practically in the future.
- Learned authentication using password hashing with bcrypt. Also learned how to implement JSON web tokens into a rails applicaiton.
- I began to learn the difference between authorization and authentification in a RESTful application.
- Currently I'm struggling to determine when I can and can't use certain methods in Rails. I am also learning that certain processes, like model methods, can be used, but might not be the fastest way to solve a problem you are facing.
- I have begun reading Dune, a popular science fiction novel.
- While researching for my capstone project, I ran across multiple open API's and it opened my eyes to how many API's are out in the web to look at. Very cool
- Something I struggled with in the last week that has gotten easier is validations along with happy/sad paths.
- I practiced validations making example apps through rails. Happy and sad paths make sense to me, but the syntax is very new.
- I learned the power of serializers when sifting through unwanted information or creating new information in an API.
- This week I learned how to use migrations in a database to change information. This process makes interactions in a database more forgiving.
- This week I was really excited to learn RESTful URL's. This concept made sense to me, and it tied up questions I was forming in my head about URL's. I still feel like the process must be streamlined somewhere down the road, but it is nice to know the roots of RESTful URL's.
- Near the end of the week I began learning about SQL and the language involved with finding information in a database. I struggled with connecting the language in SQL into running these commands in the console, but I feel like comfort with this language will come with time..as with many methods in coding.
- Some more skills I was exposed to for the first time were database types nand model methods in an API.
- A resource I have used outside of class to learn more about gems is mainly Github. Thus far gems have been provided as a resource in class, but knowing what gems to use and when to use them seems like it could be a useful skill in the future.
Current Learnings and Thoughts
- This week we began to explore the web framework through Ruby on Rails. In Rails we focused on routes and controllers, and began to explore how to CRUD (Create, Read, Understand, and Destroy) data in the console and through the seeds.rb file.
- Began to familarize myself with the postgreSQL Database Viewer, Postico.
- Began to learn about URL Segment, Query, and Form Body Parameters. This included basic knowledge as to what each parameter can do, and why they are all different from eachother.
- Commands and window management feels more fluid as the weeks go by. This week I tried to focus on switching between windows without clicking into a new tab.
What I Struggled With This Week
- I feel as if I struggle with getting used to some of the shorthand for certain commands in Ruby. Knowing there is a shorter syntax for a lot of the commands I know at this point is daunting, but exciting at the same time.
- Rails ffaker gem: https://github.com/ffaker/ffaker
- Rails tty-table gem: https://github.com/piotrmurach/tty-table
- Current book I'm reading for fun: "Next" by Michael Crichton
Current Learnings and Thoughts
- I feel as if I have begun to realize what decomposition looks like in coding. Breaking down each individual step in a problem helps lead to your end goal tremendously.
- Introduced to API and was shown an example of its ability to obtain and present data.
- Created a Github account this week and am beginning to learn how to use the website for cloud storage
- Ruby Techniques including Classes, Methods, and OOP
- Terminal Commands
- Git Commands in the Terminal
- Ruby gsub Method: https://www.rubyguides.com/2019/07/ruby-gsub-method/
- The current book I'm reading for fun: "Prey" by Michael Crichton