The app I am reviewing is Airfrov, in particular only the webapp since the group presented the webapp.
First point made strongly by the group is that the UI and UX of this app is poorly made. They said that 1. The font choice, color choice is poor and that it should be more flashy. 2. Certain screens (landing page specifically mentioned) has too many content and others (profile page) has too little content, thus is poorly layout. I agree to the second point, the landing page of Airfrov is indeed like a upgraded Qoo10 home page. But I have mixed opinion for point 1. The font choice is honestly poor (from a person with poor eye for design lol) but for the color, I think the idea is to choose a color that suites their overall theme/style/brand than to have a flashy color to attract customers and Airfrov actually did a decent job in ensuring all its buttons, hover-over effect are consistent in terms of color with the Airfrov logo. More on my own thoughts on UI/UX later.
Second point made by the group that I would like to write here is their suggested potential business idea/strategy. They suggested that Airfrov can 1. expand to become a parcel delivery service and 2. To focus on a niche market to stay afloat of intense competition from other online shopping giants like amazon, and that the niche market is the expensive, high margin and light products. My response is that 1. good idea but how would you convince somebody to carry a parcel across the border without a good idea of what could be hiding inside, there are also certain security risk involves here. 2. Actually if there is a niche market that Airfrov should focus, I believe it is the low-medium end, small size, light weight and in particular, highly localised/customised goods (handicraft). The reason it shouldn’t be expensive, high margin products is that Airfrov is charging a whooping 7% for each transaction, must as well deliver it through traditional mailing services. More on the criticism of the current business model later.
I had a good look of the app after the presentations and here are my personal thoughts on it.
Well, firstly there is really a crazy lot of improvement in the UI and more so the UX part. Below I point out 2 of my observations:
Top part of browse page:
The slow ajax loading without any loading indication might make the user thinks the list stops at Taiwan, Indonesia.
Moving on, the current business model of Airfrov is 7% commission + SGD2 for any item listed. Is like they are trying to get the best out of both worlds: charge 7% to earn from high priced goods, and charge a fixed 2 dollars to earn from low priced goods, but in my opinion might end up getting none of the two. I don’t see why they have to use both pricing mechanism especially the fixed charge pricing. It is not like Airfrov is incurring any fixed cost for any of the transactions and the traveller can always bargain for the price if it thinks the good is too cheap to warrant the hassle of buying plus delivering it later. Therefore, I definitely recommend Airfrov to drop that part of its pricing strategy and only use the 7% commission as a means to earn profit.
Before talking about my assignment 1, let’s do the usual stuff of reflecting on this week’s seminar.
Week 3’s seminar is about presentation skills and UI/UX design. The main take away that I never had thought of is that all presentations (including boring project presentation) should have an objective in mind. To paraphrase what Mr. Damith said, if there is one goal all presentation has in common, that would be to change the world, which is true because if nothing changes after you present, then there is no point in presenting.
The UI/UX talk made a very important point which is that our assignment is sadly short in time and we will be screwed if we do all the UI/UX components from scratch. Instead we should make use of the templating service out that such as WrapBoostrap, ThemeForest and EngineThemes.
Back to the assignment, we are kinda screwed because the design is poor. “A simple app like yours need a good UI to perform well” and “your UI design is poor” is two of the feedback given by the TAs on our project. Truth to be said, none of us are very experienced in designing. In the end we decided to buy a template from one of the sites mentioned earlier and port the css and html into our app. Well basically redoing the frontend.
To make things worst, over the course of implementing the product, we bump into a lot of corner cases which originally we didn’t foresee(For eg, because our app is a couple messaging app, we have to figure out what will happen if one of them delete the other as his/her partner). All these cases requires a complex list of workflow and some of them is not possible with the current database design. In hindsight, we will be way better of if we had spent more time thinking about the requirements of the app. Well, so much for the proper software development life cycle and basically again, we need to redo the backend.
To sum up this week, we will be redoing everything with slightly more than one week left on the clock. As a consolation, at least these come with 2 valuable lessons, use template regardless whether you are a good designer and requirement analysis is very important.
Prior to this in my past 2 internships, I had experienced daily standup, using jira/trello, heard terms like story, sprint, release and much more. Little do I know that all this is what is called as “scrum”.
I understood very well the importance of scrum especially through my last internship. My last internship was a kinda startup company that recently won a major tender over 2 of its more financially grown up competitors. Having juggle with limited resource and at the same time meeting the requirements put forth by the vendor (by the way one of the government agencies), I was very glad to be part of the team to experience how they managed the project.
Much like what is taught during the talk this week, I could see that there were 3 roles in the team. The project manager, the IT head and the rest of the developing team. The project manager liaises with the client while consulting the IT head to manage the expectations. The IT head in turn manage the progress of the team by selecting what tasks should be in development now. Daily standup, weekly iteration planning and monthly business and tech meetings are also being used to gel the team together.
Software engineering is fun, managing a team of software engineers and keeping them on track to the business expectations is challenging at times. I definitely love being the IT head role managing the technical aspects of the project and this module is of course a good starting point to do so.
The first impression of the class is simply wow and Colin, our lecturer is simply too cool, really enjoyed his talking a lot (I have many good laughs on some of his statements).
Many messages are being conveyed in this introductory session. Of which, the one I liked the most is “just do it”, basically just dive in and do what you want to do, worry less about the side effects and problems later. Embarrassingly, on many occasions in the past, I suffer from thinking too much before starting a project or a goal which often results my inaction. Thus “just do it” is a good piece of advice to me personally.
Finally, this lesson also confirms nothing but the fact that 3216 is gonna be crazy, also more the reason to take on this challenge and see how far we can stretch ourselves. Really look forward to seeing all the cool apps 3216 gonna produce at the end of the semester 🙂
For a BZA student, taking up CS3216 wasn’t an easy decision because well it is a software engineering module which doesn’t quite align well with a BZA route and plus it is HEAVY. But in the end I still choose to apply because I simply love building stuff and my past two internships that are more software engineering than data science have already confirm my passion. Prior to applying, I have heard lots of story about CS3216, about how the top students in SOC took this module and developed cool apps. So I truly felt really happy that I got selected for this module. 🙂
Past experience told me that there is a lot to be learnt from the software developing world, new technologies emerged every now and then, new practices being introduce and later employed as well. It is moving very fast and we will have to be constant learners to keep up to the pace. For me, I would like to embrace some of these new technologies, learn them and use them to do cool stuff and there is no better place than CS3216 to do that! And to a pretty amateur developer like me, taking up CS3216 might be a mountain to climb, but I am sure I will be very happy when I finally reach the other end.
In short, it is challenging, but then again it will be fun and I know I will like the challenge!