It has been ten weeks after I came to Chicago to study programming from Flatiron School. It was long and short. It was a continuous shift between depression and happiness. The courses are intensive and they always place me in the stretch zone. Most of the time, I felt that I am stupid because of some intense labs. However, I enjoyed every small victory after I accomplish to solve those intense labs. Finally, I can afford to stop and look back at what I’ve achieved so far. I made a lot of progress within these few weeks. It sounds weird to consider ten weeks as few but comparison to progress I made, I think anyone can accept to consider ten weeks were few. Now, let me explain what I’ve learned within ten weeks.
First three weeks, I’ve learned Ruby, SQL, and ActiveRecord to understand, unseen side of web application and mobile application which is backend. How models are connected to each other, how information is stored into a database, and how you pull information from the database. Based on that knowledge, I’ve learned, I made the first solo command-line interface project with Ruby, SQL, and ActiveRecord. As a user can make their account with a username and login with username. If a username exists, it login with the username they entered. Also, the user can find a list of movies and they can sort movies by genres. They can add the favorite movie into their favorite list which can be accessed from the profile page. Also, the user can change their username to a unique username. This CLI was made within four days. It was huge progress that I made from not knowing any concept of programming languages.
After I completed the first project on my own, my confidence rose up and at the weekend, before move on to the next module, I made mini-game adventure with assigning cohort name into game characters. The game syntax was simple. First, the user needs to pick one character to start playing with which selection won’t affect the game progress rather than showing name within the game. There are a total of five bosses, the user and boss receives a random number from one to a hundred and only you can see the number boss received, based on the number you decide to proceed with the fight or not. who has a higher number wins the fight. If the user loses fight then game over. It was made within three hours and I believe it was a good opportunity to reconfirm that I like to code.
From the fourth to the seventh week, I’ve learned Sinatra and Ruby on Rails which I’ve enjoyed most. I’ve started to understand how the backend and frontend are connected at this point because I started to check the changes from the localhost website rather than only checking errors or changes from the terminal. I believe I enjoyed most because it started to make sense and connect with I’ve learned before. This time, I was assigned to a group of five people to work together. The basic minimum requirements were CRUD. As a user, the user can create something(ex. post, account, comment, etc), read, update, and delete. So, what we decided to make was the website that the user can interact with others and share the information about how to grow plants by considering all the conditions such as soil, water, sunlight, temperature, humidity, climate, and pot-size. Also, they can attach an image to it. Some users may not post a credible source of plant posts so, this webpage has the functionality of liking plant posts thus, based on a number of likes, plant posts will be sorted automatically from up to down. A user only can like one time on each post, if they already liked, then button changes to unlike. Also, if the information provided may not correct or a user may have some questions about the specific post so, each plant post has a comment section.
Each comment has upvote and downvote functionality so, based on a count of votes, it also sorted from up to down. Also, the user can create an account with a name, username, and password. The user can log in with the account and it won’t log you out unless user clear cookies or press logout button. Users can add plant posts into their profile page with pressing the favorite button and they can press the unfavorite button to unfavorite. Lastly, we have an activity log which is similar to facebook activity log, user can check whether other users placed a comment or liked on their posts. Our group made this web application within five days with Ruby on Rails, Ruby, SQL, and ActiveRecord. I believe at this point, I already made hugely progress from the previous project. By doing the group project, I’ve learned the importance of communication to check whether everyone is on the same page and pushing data into Github without causing conflict and collaborating ideas and opinions. I enjoyed this project most from the entire project, I’ve worked until now. Then the module 2 end.
I have started to learn that the React makes me excited because I can’t imagine what kind of web application I would be able to make with it. All the time, exploring the unknown field is stressing and exciting. Now I have started to enjoy being in the stretch zone. It sounds abnormal but I consider this status as a good sign because web-development, software engineering, and every other computer-related fields require learning new technology in the short term as technology improves and changes every day. Thus, I am proud of myself being abnormal now.