Exploration of developing a multi-platform app with Django backend and native front ends, challenges in tech search and PWA development, team scaling strategies, efficient server management with Ansible, optimizing database queries and client-side image handling, and the journey into Django and GeoDjango.
Pin Planet app allows users to track travel memories with detailed pins on 3D and 2D maps.
Optimizing backend queries significantly improved user experience on Pin Planet app.
Utilizing image compression and throttling enhancements to boost app performance.
Deep dives
Pin Planet Overview
Pin Planet is an app that allows users to pin and keep track of their travel memories in one place, including details of visited spots like restaurants and hotels. The app functions as a trip planner and allows users to visualize their pins on a 3D globe and a 2D map. The team is excited about launching the Android app soon, catering to a wider audience.
Backend Engineering Challenges
The team faced challenges with the backend performance, specifically optimizing a query on the Explore feature that ranks users' places efficiently. They managed to enhance the query, reducing the processing time significantly from seconds to milliseconds, improving the user experience.
Testing and Optimization Efforts
Testing efforts revealed issues with image uploads and storage configurations, impacting app performance. They adopted compression techniques to resize and compress images locally before uploading to enhance speed. Throttling improvements were considered to fine-tune write/read operations in the app.
Future Development Goals
Future plans include developing a version of Pin Planet for Apple Vision Pro to leverage advanced features, expanding the app's accessibility. Addressing challenges with Android support, especially on lower-end devices, is also a priority to ensure optimal functionality across diverse devices.
App Store Ratings and Conclusion
Encouraging users to leave ratings on app stores to support Pin Planet's visibility and growth. The team highlights the robust capabilities of Django as a backend framework, praising its stability and ease of use. Pin Planet's journey reflects a blend of backend engineering challenges, testing optimizations, and future expansion goals in delivering a comprehensive travel app experience.