Critical Reflection


As mentioned in the preface, a thesis project is a learning process and a lifetime opportunity to get out of one’s comfort zone and boost one’s ability to learn and grasp new fields in a very short time. One’s capability to independently learn, discover, think out of the box and innovate tremendously increases. With this precious capability, one is ready to face and proceed in the professional (and academical) world. What a person does with this capability is up to their ambition, personal interest and motivation.
I purposefully treaded out of my comfort zone during the fulfilment of this thesis, I used many different technologies I had never used before, because it was often the best suitable one or the only way to complete certain implementations. For example, I had never truly used Python before this thesis. However, for my AI implementation this was necessary, hence, I did not hesitate to use it. By stepping out of my comfort zone I exposed myself to new risks, some I could mitigate from the very beginning of the project but others I couldn’t, hence I acknowledged them, put a mitigation plan and tackled the problems when they occurred. This is because I wanted to get the most out of this experience and use it to boost my knowledge in this ever-growing field of applied computer science. If there is one thing that I have learned during my experience in this field, it is that the best way to learn is to venture, explore and just try out!
This approach surely resulted in numerous risks, but with each risk I discovered, I learned, and I mitigated. However, there are some problems that were left unsolved as these would have taken too much time to solve at that point in development. For instance, as I was still new to Firebase, I had not learned how to properly use key, value pair data structures. Thus, I did not properly implement to use the key as identifier for a data object. This made it so that certain data objects in my implementation would cause a problem if they were deleted. This is because their identifier value was based on the amount of data objects in a list. In the end I found out how to solve this, but at that point in time it was too late in the project timeline to implement the fix.
As we all know, the design of the user interface is a key factor in the success of any mobile app. Many app projects and design specialists invest ample time in the most important aspects of good user interfaces: Intuitive and consistent design, clarity, high responsivity and attractiveness. When delivering this first version of the app I laid great effort to make the best user interface, yet, due to the time limitations for this version (project), I had to compromise and limit the efforts invested for this part and skip preparing wireframes, conduct UX workshops to collect user feedback and iteratively improve the user interface.
Another challenge involved the ever-changing development library landscape. It occurred to me when the library I was using to develop Firebase in Python, e.g. Pyrebase, was deprecated during development. I was required to make the switch to “Firebase Admin” to avoid a major flaw.
In the end, I am truly and deeply satisfied with what I have achieved in the context of this thesis. Proving my architectural insight, project management, creative, initiative taking, and critical thinking skills. I am glad that the topic I chose was very interesting and challenging to me throughout the whole project. This kept me invested in the project without needing much self-motivation. I found what I was doing wildly fascinating and enjoyed each step of the way no matter how tough it became. 

Comments

Popular posts from this blog

AI Implementation

Development Tools

Future...