The 4R : Roman, Ruby-Rails-React

Bootcamp Journey 2nd Sept — 2nd Nov

RoMan KC
RoMan KC
Nov 3 · 5 min read

This blog contains a nine weeks long personal journey as a Bootcamp trainee in Jyaasa which was an amazing opportunity to explore the software engineering field as a beginner.

As per the institute’s requirement, a student needs to undergo through an internship in an enterprise that imparts requisite skills in his/her area of interest. In this context, while looking for potential enterprise, I came across Jyaasa’s very intensive and rigorous training program.

I always thought of being in a bootcamp is to be able to improve the programming skills to solve real world problems.

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand”.

Mentors here, always made us to focus on writing clean code with comments whenever necessary and descriptive git commits.

Pragmatic approach to programming, Computational thinking, Learning how to learn, taking steps forward outside the comfort zone, focusing on the details, believing in ourselves are the very important lessons I got at Jyaasa’s guest session. I’ll always look forward to apply these while sorting out problems.

The first day at Jyaasa was all about Linux. As a complete beginner to the whole operating system, 8 : 30–5 : 30 Linux was so overwhelming for me. At first it was, TMI (Too Much Information) and it was the moment I knew how intense is it gonna be. If it wasn’t exciting for the first day, I’d still be unknown to the 3R!s.

“From what I know the course will be intense and I will have to put everything on the back burner in order to pull this off. I’ve informed my family, and friends that this is a priority in my life that will consume over 70 hours a week.”

Linux was easy to cope with. The huge gap I thought of between open source Operating Systems and Windows, was nothing but a silly assumptions I made for myself. Now that I love Linux because of its speed and freedom, I wish I installed it earlier.

Still, leaving windows is not an option for me. My beloved adobe products Photoshop, illustrator and premiere pro to edit my travel vlogs isn’t available in Linux. That’s sad.

If someone says alternatives is available, the original is always the best.

Ruby

A programmer’s best friend, The Ruby language was designed with one main principle in mind: developer happiness. It’s a programming language that was designed to be easy to read, fast to learn, and simple for developers to use to solve complex problems. The learning curve to master Ruby is less steep in comparison to other programming languages, and after just a short period, you will be able to write and execute Ruby programs and solve complex algorithm challenges.

The open source Ruby community is large, very active, and welcoming to people of all skill levels. When your programming craft is backed by an active, worldwide community, it means you have ample opportunities to find and work on interesting projects with awesome people.

Ruby on Rails

Ruby-on-Rails is a full-stack web framework. It was the first web framework to fully embrace the Model View Controller architecture, which is now regarded as the standard way to build web applications. The framework rapidly gained traction and skyrocketed the Ruby programming language from obscurity to a mainstream programming language.

Learning Rails is fun. It has two principles

  1. Don’t Repeat Yourself (DRY)
  2. Convention Over Configuration

Javascript

Today’s user interfaces depend heavily on JavaScript to create a smooth user experience. JavaScript skills are an essential software engineering skill for today and tomorrow.

It’s very common for developers to use JavaScript to build the front-end of their user experience and use a different programming language together with it. In your journey to become a web developer, learning JavaScript is a practical idea.

Although you can get by knowing only JavaScript as a coding language, gaining proficiency in multiple programming languages will turn you into a so called polyglot programmer, who is skilled in multiple programming languages. Having the ability to draw on this flexibility and experience with many programming languages is exactly what will make you attractive to employers, which is exactly why most coding bootcamps teach JavaScript in addition to other programming languages.

React

A JavaScript library for building user interfaces. React makes it painless to create interactive UIs. Design simple views for each state in your application, and React will efficiently update and render just the right components when your data changes.

With the concepts of virtual DOMs, our web application renders only the changes, which makes our web application even better & faster. Such capability of react make it look cool & amazing. You’ll be in love with react if you love web applications.

You should have proficient level of coding into these field before learning react:

  1. HTML/CSS: Have a good understanding of HTML/CSS.
  2. Javascript: Javascript is the base of React. If you know Javascript, then you have won half the battle. But if you have a good understanding of DOM and why they are so slow when you update them, then you will understand the power of React.
  3. ES6: ES6 is the advanced Javascript that everyone is using in their codebase. You should know how to use map(), arrow function, string literals, spread operator, const and let, class, etc.
  4. NPM: This one is to install npm packages.

You learn better when you’re having fun. That’s what every day to me at Jyaasa.

When I talk about fun, the daily routine of me being at Jyaasa is,

I try to be there at around 8:30, but I barely make it if it’s after college. Then till 5:30, the job is to complete the task given, if it’s the starting day for any of the 3R!s, the whole days goes by reading, and practicing the examples in the docs.

At that moment I realized that all the stress and difficulty is exactly what I signed up for. I didn’t sign up for a bootcamp because I thought it was easy, I signed up for it because it’s hard. The road to becoming a developer is not a glamorous one. It is filled with obstacles and frustration to the point you want to throw your laptop across the room (you don’t since you just dropped 700 dollars and can’t afford to buy another).

Still, The thing that kept me going was the fun I was having. The fact that I can write my own logic and it works (sometimes not). From the static bootstrap sites to the dynamic rails code, that was when I realized that if I work smart enough I can make a way around software engineering.

Even the errors couldn’t keep from going on. The more I solve the errors, I kept getting a heroic emo within myself. Solving the same problem again was easy then, but rails has a generous way of showing errors, so debugging is comparatively an easier task.

But there were a few times, I forget how I solved the previously encountered errors. Here, I felt the need for daily blogging(even if its a private one) or a proper documentation.

Some days I showed up to bootcamp thinking, “Wow, I’m so exhausted. I really don’t want to do anything today.” But those thoughts quickly vanish when I started working with the window faced seat, cheerful teammates and mentors.

Every day I strived to do something however little progress that might be. That kept me to complete the nine weeks long intensive bootcamp.

“Coding is extremely fun but I’m not going to bootcamp to become a hobbyist. I’m going to bootcamp because I enjoy it so much that I want this to be the thing that I do for the rest of my life and get paid for it.”

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade