Progress Highlights
Defended my FYP1 proposal during my viva session on Monday. The session is supposed to last for 15 minutes tops, but mine went on for nearly twice as long. Biggest highlight was how both panels agreed that while the project has a lot of potential, it is largely under-utilised due to insufficient features planned. They suggested in adding more modules in the web-app specifically for smart watch users to justify the complex back-end processing work done. (Apologies for not having a better screenshot of the event; neither myself nor the panels turned on the webcams)
Completed IEEE conference proposal paper for our FYP1 report (unlike the rest of my peers who follow the template provided by the faculty). Supervisor suggested on publishing the paper to IEEE provided further scrutiny and heavy editing being done, but we preferred that the FYP2 version of the paper is more worthy of publishing since by then, every aspect of the system will have been developed and finalised. Nevertheless, it feels good to have the experience on writing your own paper, befitting of a research-based FYP which is what I'm doing.
Attended 10th and final meeting with supervisor regarding viva post-mortem and discussion for semester break plans and targets. We actually hit exactly the number of predicted meetings for this semester. For your information, each student is required to meet up with the supervisor at least 7 times. We reached an agreement to dedicate 1 month of the semester break as time off before working on other parts of the modules in advance for the remaining months.
Updated FYP1 Trello board for the last time. It feels so satisfying to see everything checked and completed.
What I'm stuck at?
At the moment, nothing. All tasks assigned during this semester for FYP1 have been completed on time.
How will the semester break be?
As I mentioned previously, the semester break is not all relaxation and leisure. We were challenged by our supervisor to try and complete as many modules as we can prior to Semester 1 of 2021/2022 Session a.k.a. FYP2. For me, I am assigned to fully develop and train all the models targeted (SVM, RF, NB) as well as collecting Malay texts as corpus to improve the model accuracy. And then, together with my partner Faidz, we will try to configure the API connection between the model and the Arduino smart watch (one of the biggest challenges for our FYP since we are working separately).
Lessons Learnt
Truth be told, I was still a bit devastated and disheartened by how my viva session turned out to be. It didn't go as smoothly as I had hoped, to the point where some of my peers began to chatter about what went wrong. Admittedly, some of them were partially our fault while some are caused by factors beyond my control e.g. sudden fever literally days before my viva session due to the vaccine side-effects. I knew that it's going to be tough but I definitely did not expect to be roasted beyond the allocated amount of time. For example, one of the panels even downright didn't recognise the labelling system I built as something worthy of presenting, which really kills me considering I worked so hard to get it done (in only 1 week, mind you!). It got to the point where I'm not only burying my hopes of ever qualifying for APAC, but also unsure on whether I can even get an A for FYP1. Part of me sort of wished I took on a typical web-dev project instead, that way the panels can appreciate it more. Nevertheless, quoting from the movie Tenet (2020); "What's happened, happened". On the bright side, I'm grateful to have gone through this valuable experience. I believe I really tried my best and stepped up in defending my hard work for the past 6 months rather than just conceding. No one system is perfect, so all the constructive criticisms received were extremely helpful for further improvements in FYP2.
During our last meeting with our supervisor, she pointed out how one of the risks of taking up her project is knowing full well that the panels may not be able to fully appreciate its value since it is not a typical web-dev (read: CRUD) type of project, hence why none of her students in the past ever qualified for APAC for Software Engineering department (which normally nominates projects that have gotten A/A+ for both FYPs). Nevertheless, she reassured us that while our project may not entice the panels, it will definitely look good on our CV. I find that interesting because all this while, I did my FYP mostly for materialistic reasons, such as winning the APAC award and get As. However, looking back, I realised that I'm grateful to have learnt so many aspects in just a short span of time, ranging from ML, data science, web development and even IoT. Quoting my supervisor, I'm basically doing a master's thesis and learning a Data Science degree in mere 2 semesters. I guess the lesson here is to never let others make you doubt on what you're doing. Always try to remind yourself on the underlying reasons of why you made this choice in the first place. Part of the challenge for FYP is not to be swayed and lose faith on your own project. So to future Ray, never second guess on what you're doing when things go south. Your project has value and potential.
Several lessons learnt (or rather tips) for surviving viva, inspired from my own experience and shortcomings. Firstly, make sure you have concrete understanding of how your system works and their justifications, top to bottom. Frequently changing your stance during line of questioning will only showcase your lack of confidence. Secondly, do not get too emotional when answering questions. Sometimes, panels like to play with your emotions (seriously, even my own supervisor admits that). Think of it as just a simple Q&A session instead. Thirdly, do not be afraid to stand corrected when mistakes are pointed out. It is part of the learning process after all. The panels do not expect your system to be flawless (because why would they? It's only FYP1), hence they will always find ways to criticise your work. So, embrace it and think of it as ways to improve your system in the future. Finally, slow and steady wins the race. It's better to polish the system design first instead of rushing the development. For my case, I thought by having a web-app (labelling system) fully completed and deployed (which I'm sure none of my peers have done the same), that would give a good impression towards the panels. Instead, they criticised on the lack of concrete design and features. Hence, never run before you can walk and do not be too confident.
Conclusion
After 46 team meetings, 10 supervisor meetings, 2 stakeholder meetings and countless Trello cards assigned, FYP1 officially done! Can't believe I managed to keep myself disciplined enough to curate 11 DevLogs throughout this semester. Even though it's not exactly 1 DevLog/week, I still manage to release one within a fortnight the latest (which was precisely the maximum range that I defined earlier on). There were times where I felt like giving up on this side-project (because who reads this anyway?), but I knew that someday this documented journey can give a deep, personal insight on the FYP journey that can be relatable for my juniors to come. And it'd be fun for my future-self to reflect back and laugh as well.
All in all, it has been an incredible 6 months. The FYP-DevLog series will be on hiatus throughout the semester break and it will be continued again for next semester.
Thanks everyone for joining me on this journey, and I'll see you guys again in the next 3 months!