Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Droidcon India - 2016 - Rebuilding India's largest entertainment app
Search
Adnan A M
November 10, 2016
Programming
0
280
Droidcon India - 2016 - Rebuilding India's largest entertainment app
Slides to my presentation at DroidCon India 2016
Adnan A M
November 10, 2016
Tweet
Share
More Decks by Adnan A M
See All by Adnan A M
Abridge Coding Guidelines
adnan321
0
32
A developer's guide to wealth
adnan321
0
240
What the Hook ?
adnan321
0
63
Scoping Your Storage
adnan321
2
140
What The Context ?
adnan321
2
190
Putting Work Manager To Work
adnan321
0
86
OOP To FP
adnan321
1
190
Putting Work Manager To Work
adnan321
1
140
A slice of Android Slices - droidcon London 2018
adnan321
0
97
Other Decks in Programming
See All in Programming
Random\Randomizer クラスで日常のあれこれを解決しよう! / Random\Randomizer class solves familiar trouble
cocoeyes02
0
250
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
140
『Railsオワコン』と言われる時代に、なぜブルーモ証券はRailsを選ぶのか
free_world21
0
250
1BRC--Nerd Sniping the Java Community
gunnarmorling
0
340
Apache Hive 4 on Treasure Data
ryukobayashi
0
340
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
8
4.1k
Goのmultiple errorsについて (2024年4月版)
syumai
4
920
SIMD Parallel Programming with the Vector API
josepaumard
0
180
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
1
1.1k
ADRを一年運用してみた/adr_after_a_year
hanhan1978
7
2.4k
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
290
Node.js v22 で変わること
yosuke_furukawa
PRO
9
3.5k
Featured
See All Featured
Statistics for Hackers
jakevdp
789
220k
KATA
mclloyd
15
12k
BBQ
matthewcrist
80
8.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
322
20k
Documentation Writing (for coders)
carmenintech
60
3.9k
Into the Great Unknown - MozCon
thekraken
10
990
Designing for humans not robots
tammielis
248
25k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
The Cult of Friendly URLs
andyhume
74
5.7k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
What's in a price? How to price your products and services
michaelherold
237
11k
Transcript
Rebuilding BookMyShow By Adnan A M
Agenda 1. Overview 2. Why re-write ? 3. What did
we change ? 4. What’s different ? 5. What is the effort involved ? 6. What does the future look like ?
Overview
Ground-up Rewrite
UI/UX
3,00,000 lines of code
8 passionate developers 10,000 cups of coffee & 180 days
of absolute fun !
Should you rewrite ?
Why Re-write ?
Problems Challenges
Spaghetti Code Image Source : del.h
No naming conventions
Lack of reusability/modularity
Tightly Coupled
Scalability Image Source : Deposit Photos
Redundant Duplicate code
Hard to refactor
Regression Bugs Image Source : softwaretestingtricks.com
A/B Tests Did the audience like this text better on
the left as compared to having this on the right ?
What did we do ?
Architecture Image Source : del.h
MVP
User Experience
Smart Filters Image Source : del.h
Seat Layout - Quick Switch Image Source : del.h
Contextual Synopsis Image Source : del.h
Unit Testing Image Source : Deposit Photos
What’s different ?
Packaging
Sub package structure
Standalone Modules
Network - Public API Network Manager App Retrofit
Analytics Module Analytics Manager App Analytics code
Self Sufficient Views Image Source : Deposit Photos
Get me that view ! View Provider Activity Build View
Return Built View
Get me that view !
API Param Builder Simple human readable API request builders
Simple POJO’s
• Improved Readability • Auto - Complete
Dimension naming Thou shalt name things better !
Regular naming style OR
Embracing Generic & Specific conventions
Learning/Outcomes
MVP is an architecture ? Image Source : Deposit Photos
Multi-Dex - The dreadful 64k limit Image Source : Medium
Maintenance Image Source : http://hannesdorfmann.com/
New features Image Source : http://hannesdorfmann.com/
The Future
Dynamic View Rendering
Automatic Code Generation
Asynchronous Event Driven Architecture
Thank You Adnan A M Website - www.adnan.am Twitter -
@AdnanM0123