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 larg...
Search
Adnan A M
November 10, 2016
Programming
420
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Droidcon India - 2016 - Rebuilding India's largest entertainment app
Slides to my presentation at DroidCon India 2016
Adnan A M
November 10, 2016
More Decks by Adnan A M
See All by Adnan A M
Abridge Coding Guidelines
adnan321
0
79
A developer's guide to wealth
adnan321
0
290
What the Hook ?
adnan321
0
110
Scoping Your Storage
adnan321
2
190
What The Context ?
adnan321
2
240
Putting Work Manager To Work
adnan321
0
120
OOP To FP
adnan321
1
220
Putting Work Manager To Work
adnan321
1
210
A slice of Android Slices - droidcon London 2018
adnan321
0
130
Other Decks in Programming
See All in Programming
自動化したのに回らない テスト運用の壁―AI時代の品質責任と生産性
mfunaki
0
560
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
8k
Swift愛好会と私(ウホーイ) / Swift Fan Club and Uhooi
uhooi
0
100
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
590
AIの中の人になってみる
htkym
0
150
私のClaude Code活用法 (個人開発編) - PHPerKaigi mini #4(2026/08/24)
panda_program
1
190
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
260
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
270
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
My Marp Sample
sinoue0108
0
130
源内ハンズオン概要編
hideg
0
230
異なる設計思想のフレームワークを経験して得た学び
amekuhideki
2
1.3k
Featured
See All Featured
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
520
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3k
Amusing Abliteration
ianozsvald
1
280
Build your cross-platform service in a week with App Engine
jlugia
234
19k
4 Signs Your Business is Dying
shpigford
187
23k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
580
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.6k
Practical Orchestrator
shlominoach
191
12k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Scaling GitHub
holman
464
140k
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