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
How to create a Conference Android app with Gro...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Sergio del Amo
June 03, 2016
Technology
650
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
How to create a Conference Android app with Groovy and Wordpress?
Talk at GR8Conf EU 2016
Sergio del Amo
June 03, 2016
More Decks by Sergio del Amo
See All by Sergio del Amo
Getting Started with the Micronaut Framework
sdelamo
0
200
Getting Started with the Micronaut Framework Brighton Kotlin user group
sdelamo
0
210
Micronaut Turbo - Return of the Monolith
sdelamo
0
570
ApacheCon 2020 Micronaut + Groovy
sdelamo
0
450
Taming your browser with Geb
sdelamo
0
140
What's new in Grails 4
sdelamo
0
2.2k
GR8EU 2019 - Micronaut Security
sdelamo
0
530
What’s new with Grails 4
sdelamo
2
440
Test de aceptación con Geb - Commit Conf 2018
sdelamo
0
180
Other Decks in Technology
See All in Technology
Oracle AI Databaseデータベース・サービス: BaseDB/ExaDB-Dの可用性
oracle4engineer
PRO
1
1.1k
Self Healing Rollouts: Automating Production Fixes with Agentic AI
kdubois
0
130
書籍『生成AIの安全性入門』の入門
wataoka
0
160
振り返りこそエンジニアの本領
negima
0
140
Point Cloud as a Foreign Language for Multi-modal Large Language Model
takmin
0
360
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3.2k
Azure App Service / Container Apps の組み込み認証
kuniteru
0
150
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
20260903 Tokyo Jazug Night #62 | Azure エンジニアよ、 その環境は本当にセキュアか?
olivia_0707
1
540
20260906 「AWS運用入門」著者が教える、運用業務への生成AI活用入門
masaruogura
0
110
Kiro Crewしか勝たん!?
miu_crescent
PRO
0
150
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
0
400
Featured
See All Featured
Side Projects
sachag
455
43k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
390
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
400
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
290
Building an army of robots
kneath
306
46k
We Are The Robots
honzajavorek
0
330
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.9k
Building Applications with DynamoDB
mza
96
7.2k
Transcript
HOW TO CREATE A CONFERENCE ANDROID APP WITH GROOVY AND
WORDPRESS?
SERGIO DEL AMO
[email protected]
@SDELAMO
GROOVYCALAMARI.COM A “weekly” curated email newsletter full of interesting, relevant
links about the Groovy Ecosystem
GR8CONFAGENDA GOOGLEPLAY
https://play.google.com/store/apps/details?id=com.botconf.ggx
https://play.google.com/store/apps/details?id=com.botconf.greach
AUDIENCE BACKGROUND ▸ WORDPRESS AFICIONADO? ▸ WORDPRESS DEVELOPERS? ▸ ANDROID
DEVELOPERS? ▸ GROOVY DEVELOPERS?
SMALL ( < 20 EMPLOYEES ) MEDIUM-BIG ( > 20
EMPLOYEES )
WHY?
IS IT POSSIBLE TO HIRE GROOVY DEVELOPERS FOR A START-UP?
None
None
SHOPTIMIX PROFILE?
IS GROOVY TOO NICHE?
TEXT
TEXT
None
None
TEXT
DOES GROOVY NEED TO BE IN THE TOP 10?
GROOVY CAN BE ANDROID’ SWIFT
WORDPRESS
WHY WORDPRESS?
None
POWERS 25% OF ALL SITES ACROSS THE WEB WORDPRESS SOURCE
W3TECHS
CHEAP HOSTING
PRODUCT IS USER FRIENDLY
PRODUCT IS FLEXIBLE
LOTS OF PLUGINS!
HOW TO CREATE A CONFERENCE APP POWERED BY WORPRESS?
None
None
CUSTOM POST TYPES ▸ CONGRESS ▸ SPEAKER ▸ TALK
None
None
None
None
None
None
None
None
HTTP://EXAMPLE.COM/WP-JSON/POSTS?TYPE=TALK
None
ANDROID
https://github.com/groovy/groovy-android-gradle-plugin
http://mariogarcia.github.io/grooid-templates/ https://github.com/rvanderwerf/grooid-templates
SQLite ENTITIES grooid_wpapi Activities Fragments Adapters USE CASES INTERFACE ADAPTERS
BotConf grooid_wpapi
REFRESH ▸ BACKGROUND TASK TO DOWNLOAD JSON ▸ UPDATE LOCAL
DATABASE ▸ NOTIFY UI OF CHANGES IN THE DATABASE AND DISPLAY CHANGES
https://github.com/Arasthel/SwissKnife
None
GROOID_WPAPI ▸ https://github.com/sdelamo/grooid-wpapi
None
None
None
None
None
ADAPTER PATTERN ▸ CONVERTS THE INTERFACE OF A CLASS INTO
ANOTHER INTERFACE THE CLIENTS EXPECT. ADAPTERS LETS CLASSES WORK TOGETHER THAT COULDN’T OTHERWISE BECAUSE OF INCOMPATIBLE INTERFACES SOURCE HEAD FIRST PATTERNS
None
GROOID_WPAPI void loadConferenceData { List<IConference> conferences, List<ISpeaker> speakers, List<ITalk> talks
-> } JSON PAYLOAD void fetchAllPosts(String url, String type, Closure customFields) { List<WPAPIPost> posts -> } SpeakerWPAPIPostAdapter SpeakeTalkWPAPIPostAdapter class RemoteRepositoryUseCase implements IRemoteRepository
PAGINATION
STRING INTERPOLATION
JAVA GROOVY
GROOVY WITH OPERATOR
AgendaSessionTimeHeader <IAgendaSession> TalkCard <IAgendaSession> AgendaSessionTimeHeader <IAgendaSession> AgendaSessionTimeHeader <IAgendaSession> TalkCard <IAgendaSession>
TalkCard <IAgendaSession> TalkCard <IAgendaSession>
None
CHRONOLOGICAL ORDER REVERSE CHRONOLOGICAL ORDER 12 Dec 2014 11 Dec
2014 13 Dec 2013 12 Dec 2013 14 Dec 2015 15 Dec 2015
None
SPOCK ON ANDROID ▸ https://github.com/pieces029/android-spock
None
JAVA GROOVY
SHARED PREFERENCES
TRAITS
None
MAIN ACTIVITY TALK ACTIVITY
None
None
ASTS HTTPS://GITHUB.COM/MARIOGARCIA/MGUG-ANDROID
FROM:
TO:
CHALLENGES
MULTI-DEX IS A NIGHTMARE ▸ Android 64k method limit METHOD
COUNT COMPARISION 0 7500 15000 22500 30000 OKHTTP IO.FABRIC GSON RETROFIT GROOVY ANDROID SOURCE: HTTPS://GITHUB.COM/GROOVY/GROOVY-ANDROID-GRADLE-PLUGIN/ISSUES/65
ANDROID STUDIO SUPPORT
CALL TO ACTION
WORK IN PROGRESS ▸ GROOID_WPAPI (https://github.com/sdelamo/grooid-wpapi) ▸ BOTCONF (https://github.com/sdelamo/botconf)
CODE ANDROID PROJECTS ON GROOVY
GROOVYCALAMARI.COM A “weekly” curated email newsletter full of interesting, relevant
links about the Groovy Ecosystem
?