Recently, my friend found a new job in Prague and had to pick an apartment where he would live. Of course, not knowing the city, he had no idea which place is the best, or at least better than the others. My friend had to spend a lot of time researching about particular area, which is tedious and also impractical as the decision to take or pass the offer for apartment must be made fast.
What it does
We have decided to collect various information from available open data providers and public data sets and use them to rank places. This allows us to look at any given area from many different, often unrelated points of view, which results in a very good grading of such regions.
Users can either browse the map, where they can explore any place in the city, or compare to places to see the pros and cons. We have also handpicked several interesting places that we found to be a very nice regions of the city (at least according to our ranking model).
How we built it
For backend, we have used
Django as a webserver. For ranking of places, we have created a custom modular detection system, which allows us to seamlessly and quickly add new providers and adjust their weight in the final calculations as necessary.
For frontend, we have used
Bootstrap-Vue. Our page is built on top of
Vue Argon scaffolding panel. Maps are provided by
Open Street Map.
Challenges we ran into
We had to go through a lot of Open data providers and public data sources to find the best fits. After that, we had to carefully analyse them and adjust their influence on the overall score. Due to lack of sleep, we also started to do silly mistakes, which ultimately slowed our progress down.
Accomplishments that we're proud of
Definitely our detection mechanism. With simple design we were able to rapidly and independently add new data providers to our detection, adjust individual weight in the overall ranking and it allowed us to dynamically render new and existing data on frontend with very little effort.
What we learned
We learned to use new technologies (Django and Vue.js) and we also practiced data analysis, which proved to be harder than we initially thought it would be.
What's next for Smart Estate
Hopefully, Smart Estate will one day become a real service that will be useful to a lot of people. Our dream is to see our little tool to be deployed in many more cities besides Prague. However, we have a long way to go as many crucial data sources are either not publicly available, or non-existent in some cities. We believe that one day there will be many more categories of information that we would be able to display and therefore greatly improve our ranking model.