Tuesday, July 12, 2022

Last Year: Maintain Motivation for the Final Project (Part 3)

After talking about all struggles and mistakes while working on the Final Project, here are a few tips on how to maintain motivation for the Final Project. Believe me, motivation is the hardest part to maintain while you are working on Final Project (and I think it applies to anything related big project/task to do). All tips below are based on my experience and I hope they will fit you all readers as well!

1.  It is okay to not be okay

If you ever feel tired and burnout while working on your TA, it is okay to relax. If you want to cry, just cry and let your emotion out. If you need someone to talk to, just talk with them. If you feel so exhausted, just take a rest if it can make you feel better. Every emotion you had in your life is normal and needs some place to pour all your negative emotions.


2.  Take a break and do your hobbies

There is a reason why God rests on the 7th day. So were we. We have like 5 days to work on our duties and 2 days on weekend to take a break and give your body and mental some rest. It is important to not just live for the final project only. There are a lot of things you can do besides your final project. You can do your hobbies such as playing guitar, watching cinema, workout, or anything else that can keep you alive as a human. Remember, your life is more meaningful than just a Final Project and you know that you can't just spend a whole 24/7 on the final project only. If you are tired of working on the Final Project, that's normal. Everyone does it. Just take a break. No need to rush, just take it slow and enjoy the ride.


3. You need something to hold on

I remember what my friend says about running the relationship. He says that a person who has a relationship with someone can't do romantically things every day every time. There must be a time when the chemistry seems stable and no more romantically things happen between them. But, the biggest key to how the relationship can sustain longer is something they hold on to each other. So was the Final Project. Most people lost their motivation for Final Project because they lost direction and didn't have something to hold on to. As simple as you want to make your parent proud of you, financial limitations, and the urgent to work as fast as you can, can be something to hold on to. 


4.  Talk with your friends and support system

We are social creatures that can't live alone. We interact at least with one person per day such as ordering food from the nearest restaurant is one interaction. Even though the final project is an individual task to be done, we still need someone in our life. Having a friends and support system is one thing that can be your survival kit fight for the final project. Not just about discussing something, but we can also share each other pain and feels relief after that. We can express our emotions that have been pent up and delayed when working on the Final Project. Maybe they can't directly help your Final Project, but they can help heal you mentally and physically that have been drained by the Final Project and give you some booster for the next works.

Few hours before 2nd Milestone deadline, 25% work, 75% chit-chat and play


5.  Never compare yourself with others

If you ever feel why you can't do your final project as fast as your friends, that's okay. Everyone has their own pace. They work on their final project quickly because they knew that the scope of their project is bigger than most people. Remember, everyone's final project scope is different and you can't compare your project with the others. You can't compare an apple with a banana. Every final project has a different struggle and has different parameters to measure the progress of the final project. So, just focus on your final project and finished all your final project's to-do list. You are just gonna blame yourself and not appreciate what you have done if you focus on comparing your works with others.
 

6.  Routine guidance with your supervisor

This can be one of the biggest factors for your success in the Final Project. If you have routine guidance from your supervisor, believe me, you will be pushed to finish and doing some progress. After getting some guidance, you will get a boost to finish your final project because you got some suggestions and solutions from your supervisor. If you are lucky enough to get the regular routine guidance, that's a big plus for you (I'm grateful I had the regular routine guidance every week). But if your guidance is not routine, you can just be disciplined with yourself by regularly scheduling the guidance with your supervisor every week or every two weeks. Don't be afraid of your supervisor. Just assume that they are your partners, not your boss. Partners will encourage and criticize you hard because they knew the critics will help you grow better than before. All decision is in your hands.


7.  Set your goals and measure your productivity

How do you feel after you write some code and it works? or after you get the job you wanted? It is satisfying, right? Setting goals for yourself can be some trick to boost your mood and motivation while working on the Final Project. If you don't set your goal and work without anything to achieve, it will be boring because you have no short-term motivation for it. Setting the target can be a trick as the short-term motivation that can bring you to work 100% for it in a certain period. You can also measure your productivity such as how much time spent on the work or how many features you have finished today. I recommend you to use apps such as Toggl Track to measure your effectiveness and how much time spent on the Final Project.


8.  Pray to God and ask for His Guidance and Power

One more thing, you can't survive this final project alone. Well, technically it is an individual project but it didn't. You are guided by your supervisor and sometimes you discuss it with the other student. There are times when you will feel tired and lose motivation and direction. You should ask for blessing from God too and ask for his guidance and power because it is a spiritual matter and it impacts your works in the future. Don't forget to pray to God because God will give you the power to finish your works and help you direct your thinking and way. Trust me, you can't just rely on yourself and thinks that all your work is completed all by yourself. There is a lot of factor outside there which is can't be described in logical ways, it is God's work for us and we should pray and stay communicating with Him.


Other Short Tips & Trick for Final Project

There are other short tips and tricks for you all readers about the final project that had not been mentioned above.
1.  Pick the topic that you loved the most
2.  Background checking about your candidate supervisor and their specialization
3.  Pick carefully your partner if you wanted the capstone project
4.  You need to know what you are capable of
5.  Make your supervisor satisfy and support you throughout the time
6.  Make your desk as comfortable as you want
7.  Justify everything you did in the Final Project
8.  Done one by one
9.  A good final project is a completed final project

That's all I wanted to share about the final project. For you all readers who will or are fighting for the final project, I wish you all the best in your Final Project. Please let me know if you have any opinion about the final project, and we can have a chit-chat and discuss it (I love to know anything from the other's point of view). Don't hesitate to ask me if you wanted to know more about how I fight for the final project. Cheers!



A moment after Thesis Defense, unofficial S.T. (June 15th, 2022)



July 12th, 2022


Michael Hans
13518056
Computer Science
Bandung Institute of Technology

Last Year: Common Mistakes in Final Project (Part 2)

After all struggles that I have been through in this one year, I would like to share about common mistakes every person has made in the Final Project. If you haven't read my struggles, you can read that from here as a background before you read this post. I hope you can learn to anticipate all common mistakes in the future.

1.  Pick the random topic without any knowledge or clue

More than 50% of students didn't know about what is the topic or the field they want to explore in the Final Project. It is normal. I have been through that too. But, I can assure you there is such a field or topic that is interesting for you and all you need to do is just to explore that topic or field first before you jump into it. The mistake happens when someone didn't try to explore it first before locking the selected topic. Some friends of mine regret choosing a random topic because they just choose it for no reason. If you want to jump to a topic you have never explored/known before, at least you need to explore it first. You can imagine what you will do for the rest of the year. You can also ask and consult your preference topic with your senior who has graduated from the ITB. You can discuss the plus and minus of certain topics with them. I think that the wise choice instead you just jump to a random topic without no reason or excuse.


2.  Become perfectionist and idealist

This will only occur for those who have a perfectionist personality like me. There is a moment when I want my final project works perfectly and has a lot of new and unique features instead of just regular e-commerce. Every time I have finished a feature, I usually try to think about something that missing from my e-commerce module. But, it just irritates me that it happens every time I have finished a feature and it makes me screw up. I realize that I just expand my final project scope unconsciously and forgot about the main goal for this final project: to fulfill the buying and selling process in the cooperative. So I learn it the hard way and then I make up my mind again that my final project is limited to time and resource constraints so I need to prioritize all things that must be done to achieve the main goal of the final project.

It applies too when a student wants to propose a custom topic as a final project. Not a few people want to create an amazing final project and invent a new methodology or idea that has never existed before. Remember, you can dream big but there is a time and resource constraints you need to consider for the final project. There is a reason why a doctoral dissertation can be completed in 3 years at the earliest but Bachelor's Final Project in 1 year. You need to be realistic too and focus on your main goals (such as finishing a final project and graduating from the university).


3.  Wait for the perfect moment

Most of the students will do their final project if there is a perfect moment to do it. Bright sky, have free time, a cozy sofa, a good coffee, and a healthy relationship if you have any. I want to state one thing for sure from what I have learned in the last 4 years in ITB (applies to anything you need to do in your life).

"There is no such thing as a perfect moment. The moment you start your work and do action for it is the perfect moment for you."

Yeah, you need to fight your laziness and just do it. Don't think too much and plan too long about your final project. If you have several actions that can be done at the moment, do them fast. If you feel afraid that it is the right solution or not, try to fight back against it because it can be a clue that you are just worried and overthinking. But if you try to think rationally, you know that you need to try your solution and it is better than doing nothing.


4.  Write a report near deadline

In the 2nd or 3rd year, we usually write the report after the application or product has finished, right? But it is not the same as you work on the final project report. Like I said in the previous post, writing a big project report is not the same as a final project report. You need to write in academic convention and each part of your report should be connected and create a storytelling flow that can be read by other students in the future. Therefore, you can't just rush your report near the deadline because the quality of the report will be not maximized. Your supervisor usually criticizes your report instead of your methodology or results. You can see your report as bar progress for completing Final Project or directed documentation. You will save a lot of time in the end near the final revision because you have already written a good report.


5.  Blame the situation and your supervisor

Many people always blame the situation when what they do doesn't go well. Unsupportive lecture, the missing member of the capstone project, miscommunication, and insufficient resources such as the cloud server being unavailable at the moment and lack of tech stack documentation. There are a lot of external factors that are not mentioned before but usually people will blame them. The fact is, external factors don't impact bigger than internal factors. There is one main internal factor that has the biggest impact, it is about response and perception. Remember, you have full control of your final project, including how you respond to all the events that happen to surround you. If you respond to all the events like your old good friend, it will give you a positive impact on your future work. But if you just blame the situation, you are just relying on and saying that it is not your fault, but it is their fault and then you will do nothing for handle those situation as if you can't control those condition.


6.  Say yes to everything what your supervisor says

The supervisor acts as a lighter who will guide the final project being carried out as well as someone who is quite competent and accountable for your final project. But that doesn't mean that the supervisor is in charge of the final task being carried out and has full control of it. The student is the one who has full control over the final project. Students have the ability to limit the final work they do. So there are times when the advice given by the supervisor may not be applied (which is a rare case and usually we will apply it). But, if you have a strong reason why the suggestion doesn't need to be implemented and you have other alternatives, your supervisor usually considers your reason and approves your proposed solution. Supervisors like students who have the initiative and take control of the Final Project.


7.  Take a lot of activity besides Final Project

Usually, final-year students will have more free time than when they were in the previous level. Each student will have their path, their interests, and work on the Final Project that they like. And sometimes many of them start to focus on internships or other research activities that keep them busy. And from that busy life, sometimes they forget the main thing that must be completed in 1 year, the Final Project. Some of the friends I know have their Final Assignments abandoned because they were too busy and focused on other things. Those who have earned money, are also more willing to work rather than complete the Final Project. Therefore, it is important to know your capacity and be smart in managing your time, priorities, and responsibilities that you take on within that 1 year.


That's all common mistakes in final project. Next post will discuss about how to maintain motivation for the final project. If you want to discuss something with me, feel free to contact me yes!



Working on Final Project be like (April 30th, 2022)



July 12th, 2022


Michael Hans
13518056
Computer Science
Bandung Institute of Technology

Friday, July 1, 2022

Last Year: Fight for the Final Project (Part 1)

Hi everyone, it's been one year since my last post on this blog. Today I would like to share my story of how I survived my last year in Computer Science at Bandung Institute of Technology. Firstly, I would like to say thank you to the one who encouraged me to write in English, Pavita. Please don't judge me for my grammatical error or anything else that doesn't good enough in this post.

About My Final Project

My journey starts in August 20th, 2021 when it is my first guidance and meet with my prospective supervisor, together with my other three friends, Tony, Jovan, and Rifaldy. This is our first meeting where we gather and got the briefing from my lecture about what the project is about. After a look at all the suggested topics in the spreadsheet, there is no such interesting topic for me unless it is about Information systems. And then, I found the one which is interesting for me, it is about developing Digital Cooperative, especially for the all-round cooperative. In my year, it is the first time we had a chance to take our Final Project as a capstone project. It is a type of project in which we can collaborate with more than one person to work on the same topic. Capstone project opens the new possibility where certain topics such as Software Project can be applicable to become as our Final Project, just as same as Software Project course I had taken in the 6th semester. Previously, many final year students take a topic such as Machine Learning path, Human and Computer Interaction path, or Security path because previously each topic can only apply to one person.


There are two ways to divide the project into smaller tasks. We can divide the project based on the role or based on the module that we wanted to work on. In my group, we divide the project based on the module so there are four modules in the application. I choose to work on the e-commerce module as one of the main business processes in the digital cooperative. You can read about my final project in this linkFor me, it is just like taking another Software Project course, the difference is the scope of the final project depends on what does the agreement between the students and the product owner. Luckily, the product owner of my final project is my supervisor itself so I can negotiate a few things about what are we trying to develop. I will not talk a lot about what my project does, because I want to point out more about how I fight for the final project so anyone can relate to the final project whether the topic is different.


Final Project != Big Project

At first, I was thinking that the Final Project is just as the same as Big Project I had done in every course in Computer Science major. But I was wrong since I had fight for the Final Project in the last one year. There are a few things that need to be stated about why Final Project is different from the usual Big Project. Here are the five things I wanted to tell.

1.  The ideal duration for the Final Project is one year.

While the Big Project was only two to four weeks, Final Project is like twenty to thirty-two weeks (taken from sixteen weeks per semester times by two semesters equals to thirty-two weeks) depending on how fast you are to finish the project. This is one of the reasons why there are a lot of people who often demote while working on a Final Project.

2.  You decide your own pace.

While the Big Project is usually pushed by other members who wanted it to be finished, nothing is pushing you to finish your Final Project. It just only you and you who have full control of your Final Project. Don't compare your work with the others, because everyone has a different pace.

3.  You decide where you want to finished your project.

While the Big Project has a tight deadline like two until four weeks and it is okay if the big project hasn't been completed, it is totally different from the Final Project. While working on the Final Project, your work must be completed for sure. There is no tight deadline like a big project. You can work on your Final Project for more than one year, even though it can be until three years of work.

4.  You are on your own.

No one can help or carry you like in the Big Project. All must be done by yourself. Even if it is a capstone project, in the end, you have full control of your final project. You only can consult about your problem with your supervisor. You can consult it with your friends, but don't think that they can help you like in the Big Project because your friends might be had different struggles and problems while working on their own Final Project.

5.  The solution for the Final Project does not always work as Big Project

The big project has already been tested by the assistant that the big project can be completed with the amount of knowledge you got in the lecture course. But not for the final project. The Final Project always talks about the experiment. It could be successful or failed. You must be ready if your experiment is fail and can give some analysis of why it happened. Someone must prepare for the next step for making the experiment work.


Struggle in Final Project

There are some struggles that I have been fighting in this final project, especially for the final project I've been working on. There are at least five biggest struggles that I have been through sorted from the most difficult things in the Final Project.

1.  Maintain your motivation on final project

Based on the survey and all stories from my fellow fighter in Final Project, they say the same thing while coming to struggle with Final Project: Motivation. There are a lot of people (including me) are have experience demotivation while working on the Final Project. It is not just because it is hard. It is because the final project is not always working and it is working for a whole year. Imagine that you are working on something uncertain for one year. This is different than the usual big project from the curriculum course. Your friends can't relate to your final project except you. It is all on your own remember? How to maintain the motivation for the final project will be discussed in the next post (stay tuned!)

2.  Create the final project report is totally different than big project report

You can't create the final project report just like create a report for a big project. You are writing something in academic convention, which it will be read by others that haven't the same background as you are. You need to comply with the academic convention in writing a scientific report. You also need to justify everything you do in your final project reports such as the reason you design something a certain way or the reason you pick one solution from all alternative solutions for your final project (yes, you need to clarify and analyze why your picked solution is the best solution to be implemented rather than other alternative solution). You need to refer to all your statements based on the literature study too. While working on the final project, you must have a reference and research study before you work on your solution right? It is just the same as you were working on developing an application and trying to know how to implement a security mechanism or anything else. There is no argument that strong enough to justify why you choose such methodology or solution unless it was from your research study (unless you create something new that does not exist before).

3.  Your supervisor determine your success in the final project

You must know that you can't just create a solution and then become your final project. There is a reason why every final project or thesis needs a supervisor. It is because there must be someone accountable to validate your final project and whether it is necessary and worth enough to become the final project. If your supervisor doesn't support your final project, you will face a lot of problems such as you will be a late graduate from the university. Even if you working so hard and diligent but if your supervisor doesn't support your final project, it will be nothing.

There is a time when my group is not aligned with my supervisor's vision. We are working on A but my supervisors hope that we are working on B. What's the solution for it? There is only one answer to solve that misalignment. Guidance. Brave enough to have routine guidance with your supervisor and then consult your project report and problem while working on the final project. You must know that each supervisor has a different personality and you need to know how to handle it so your final project is not affected by the supervisor's personality. In my case, my supervisor is the type that will speak out and give suggestions if I point out something that I am confuse and I need some suggestions from my supervisor. If I didn't point out, my supervisors will just say yes at that moment of guidance but I will be slaughtered like a week before my proposal seminar or thesis defense and I need to rush to revise my solution in a hell week. I didn't want that so I usually point out what I want to consult every guidance (luckily my supervisors always spent time every Monday for guidance sessions so I don't need to reach out to my supervisors like anybody else).

4.  Negotiate the scope with the supervisor

This is the hardest part I think. Usually, we will bow and comply with every statement that comes out from our supervisor right? But one thing you need to know is, that this is your project and you have full control of it, including determining the scope of your final project. You proposed your solution and your supervisor is just like your mentor, but the rest of it is on you. In the first semester of a final project, I am typically the person who stood by every word that has come out of my supervisor's mouth. But in the next semester, I encourage myself to speak out about the scope of the project. My supervisors (who is also the product owner) like to give some suggestion that will make the scope of my project bigger and bigger. 

There are two ways I like to do when negotiating with the scope. First, before my supervisor gives feedback about the spot that can be improved, I usually propose a solution and my justification for why it matters. The second one is when my supervisor gives me feedback, I try to defend myself by giving an argument that is logical and strong enough to counter my supervisor's feedback. There is like 60% chance that my proposed solution or my argument is strong enough to satisfy my supervisor. But it is better than just obey to every feedback from my supervisor, right? I remember that my supervisor suggests I to do UI/UX testing for my application as a consequence of my suggestion in Chapter 5 even though the focus of my final project is totally on software development, not on human interaction. I just like "Is it okay to remove the human interaction suggestion from chapter V and readjust my non-functional requirement so I do not have to do UI/UX testing", and then my supervisor said, "Yes, sure no problem". What I am trying to say is it is okay to negotiate your scope with your supervisor.

5.  Stuck in the middle of developing solution

There is a time when I am stuck in the middle of developing a solution. It leads me to postpone my final project for 4 weeks or equal to one month not doing on a final project. I am grateful because my supervisor is the type that wanted to have routine guidance with their students so like it or not I have to finish something that I can report to my supervisor even if it is just a small thing. But that's never enough because in 4 weeks I didn't finish even one single feature in my module. There is a benefit I take capstone project. I have a partner I can talk to. I can discuss my problem with them and they can give some suggestions that have not come to my mind because I was stuck. And it is not just from the capstone project partner. I also discuss it with my friends outside my capstone project. Start from my DECRYPT fellows, ASYNC fellows, and even from INIT fellows too who is two years younger than me. Thanks to all of them who help me to solve my problem while working on my solution. From there, I learn the hard way that the other point of view of something is very interesting for me and makes me wonder about the greatness of the human mind that is different for each person. Moreover, I usually take a break and play games with my friends in the boarding house (named Counter Strike 1.6 ;v) or do another task that can be done quickly instead of the Final Project). It gives me pleasure and confidence when I had done something.

Fun fact: I was able to finish 5 features just in 5 days in the last week before Eid Mubarak Holiday 2022 :D. Those are features I have been working on since two months before Eid Mubarak Holiday :v 

6.  Capstone: Integration and Communication

This struggle can only be felt by those who are doing on the capstone project. Working on a capstone project has a plus and minus, and so was when working on an individual final project. Working on a capstone project makes you feel not alone in doing the final project and you can just assume the final project as the big project same as the Software Project course. But on the other side, there are a few drawbacks while working on a capstone project. The biggest struggle for the capstone project is the integration between all works on the project and communication with each other. I can illustrate how difficult integration is.

Let's say there is a feature that needs to collaborate between two members, for example, the checkout feature in my e-commerce module. There is another member who works on the finance module. To implement the checkout feature, I need to coordinate with my friend about what flow should be implemented for the feature. There is a miscommunication about it. Let's say I create the A flow to comply with the e-commerce module and my friend creates the B flow to comply with the finance module. When we try to integrate, well the flow doesn't match. I need to readjust my flow pretty much and so was my friend. The point is we can reduce the integration effort by communicating and agreeing with the discussed flow.

There is also a communication problem outside the integration phase. Same as working on a big project, there is a possibility that one or more of the members would disappear and not be responsible for the work. To prevent those events would happen, from the beginning I choose my partners carefully based on previous work experience with them. We also create a daily meeting every two days so we can catch up with each other not just talk about how is the progress of the final project, but also talk about our daily life, our mental health, our passion, and anything else related to human needs. There is a time when each of us is demoted and we share the pain using Google Meet. It is okay to be not okay. I understand my partners and especially myself too. The key is if we discipline and stay communicated, it could reduce like 75% of problems that could happen in the future.

That's all I want to share about my Final Project in this part. There is another part that I am trying to work on because I am afraid this post will be too long to read and I have other things to do besides writing this post. In the next post, I will post about:
- Most mistakes every person made in the final project
- How to maintain motivation for the final project
- Other tips and tricks to survive the final project and final year

So stay tuned for the next post! Feel free to ask me if you wanted to know more!


A moment after Proposal Seminar (January, 13th 2022)


July 1st, 2022


Michael Hans
13518056
Computer Science
Bandung Institute of Technology