When we hear the word collaboration, we always remember our final year projects from the college, where we built advanced things related to Machine learning, AI, and many more buzzing technologies where all we had to do was just go to GitHub and clone down the project to our personal computers and be proud of our work and group effort in copying someones work end to end. And learn anything.
After my college ended and not learning anything for years, I was looking for something that could help me gain some skills and finally land a job. The kind of teaching and learning I had gone through in my college had not been up to the mark so I was skeptical about every institute and every teacher around me. So I started searching on google for something that could help me out. One fine day I found a website which said: “pay after you earn”. It got me interested and began digging in and in the month of September 2020, whilst we were moving towards the Covid’s first anniversary. I decided to take a leap of faith and join Masai School. So here is my story after a month at Masai School.
Concepts we learned in our first unit
Project statement and expectations
Build a clone of the website known as SmatBot.
SmatBot is a customizable AI chatbot to give Automated Live Chat Support, Gather Leads, Create interactive landing…
SmatBot is a company that develops software related to Artificial Intelligence. Like every other AI company, their website was Aesthetically pleasing and beautiful if you look at it through the eyes of a visitor, but when you look at it as a developer who had to develop the same thing, it was challenging.
The website was huge and we had to decide upon the number of pages we were going to clone as we had just 4 days to complete this project. So we decided upon 6 pages but ended up doing 5 pages and letting of one page due to time constraints.
Roles and responsibilities
My team was named Nickel. It had three members that are Ranjeet Singh, Suraj Kumar, and myself. We had to distribute the work depending upon the knowledge and skills of each person, so we had a meeting and we shared our strengths and shortcomings.
In the end, we ended up using almost all the technologies taught to us in the first unit tables, floats, grids, flex so on, you name it we have used it.
Challenges faced and how they overcome
We have faced a number of changes during the course of the project. Communication, git issues, division of work are just to name a few.
Our team consists of people who are not much of a talker including myself. Someone had to break the ice and yes that someone was me, so we joined a slack group and started off with the zoom call on the very first day. We set some rules like what naming cases are we going to use and how are we going to push on git and some other basic things but we did not follow any of those things. Because we decided on using Camelcase and ended up mixing Camelcase and snake_case. We suffered from a lack of communication at least for 2 days. After 2 days we knew each other a bit well and was easy to divide the task and collaborate.
The second issue was git, we had no experience of using git merge and one wrong move would mess up our entire project. So we decided to go slow on that part, I was the only one who was handling the merging property to the main branch while others created their own branches and would update their own branches and let the group know if a task was complete. Once they pull the initiated to their respective branch, we would pull it to our personal computers and review it, once approved by all I used to merge to the main branch else the necessary changes were done.
Diving the work was a task in itself as everyone was not able to work on the same level, so we had to divide according to the abilities where some of us got less work to do whiles others had to deal with more work. As a team, I feel it's fair to understand each other's shortcomings and work as a team accordingly but sometimes the workload goes over the limit.
Usage of different technologies and different ways of programming. It was a very difficult task to fix fellow members' code as they have a different style of writing and the technologies used by them were different from what you were using. We tried to communicate as much as we can to find the commonality between our codes and ended up writing classes together that were used by all of us on the website.
- Learned new things in web technologies
- Learned to collaborate using git
- It doesn’t if your teammates are underperformers or overperformers, all that matters is how as a team you will succeed and build a product together.
- Learned that communication is the key to be a successful team.
If you want to visit our GitHub page the link is down below