SlideShare uma empresa Scribd logo
1 de 87
Baixar para ler offline
HOW TO CREATE A CONFERENCE
ANDROID APP WITH GROOVY
AND WORDPRESS?
SERGIO DEL AMO
ME@SERGIODELAMO.COM
@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?
SHOPTIMIX PROFILE?
IS GROOVY TOO
NICHE?
TEXT
TEXT
TEXT
DOES GROOVY NEED
TO BE IN THE TOP 10?
GROOVY CAN BE
ANDROID’ SWIFT
WORDPRESS
WHY WORDPRESS?
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?
CUSTOM POST TYPES
▸ CONGRESS
▸ SPEAKER
▸ TALK
HTTP://EXAMPLE.COM/WP-JSON/POSTS?TYPE=TALK
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
GROOID_WPAPI
▸ https://github.com/sdelamo/grooid-wpapi
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
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>
CHRONOLOGICAL
ORDER
REVERSE
CHRONOLOGICAL
ORDER
12 Dec 2014
11 Dec 2014
13 Dec 2013
12 Dec 2013
14 Dec 2015
15 Dec 2015
SPOCK ON ANDROID
▸ https://github.com/pieces029/android-spock
JAVA
GROOVY
SHARED PREFERENCES
TRAITS
MAIN ACTIVITY
TALK ACTIVITY
ASTSHTTPS://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
?

Mais conteúdo relacionado

Mais procurados

There's More Than 1 Way To Skin A Theme
There's More Than 1 Way To Skin A ThemeThere's More Than 1 Way To Skin A Theme
There's More Than 1 Way To Skin A Theme
Sennza Design
 
Nuno Godinho Presentation / CloudViews.Org - Cloud Computing Conference 2009
Nuno Godinho Presentation / CloudViews.Org - Cloud Computing Conference 2009Nuno Godinho Presentation / CloudViews.Org - Cloud Computing Conference 2009
Nuno Godinho Presentation / CloudViews.Org - Cloud Computing Conference 2009
EuroCloud
 
Responsive Design - Wordcamp 2013
Responsive Design - Wordcamp 2013Responsive Design - Wordcamp 2013
Responsive Design - Wordcamp 2013
Mirko Santangelo
 

Mais procurados (15)

Foundations of the Immersive Web
Foundations of the Immersive WebFoundations of the Immersive Web
Foundations of the Immersive Web
 
The Big 3: Essential Plugins for Wordpress Newbs
The Big 3: Essential Plugins for Wordpress NewbsThe Big 3: Essential Plugins for Wordpress Newbs
The Big 3: Essential Plugins for Wordpress Newbs
 
Games, Develop & Html5 for BlackBerry PlayBook
Games, Develop & Html5 for BlackBerry PlayBookGames, Develop & Html5 for BlackBerry PlayBook
Games, Develop & Html5 for BlackBerry PlayBook
 
Activate hidden themes in Windows 7
Activate hidden themes in Windows 7Activate hidden themes in Windows 7
Activate hidden themes in Windows 7
 
Gradle
GradleGradle
Gradle
 
There's More Than 1 Way To Skin A Theme
There's More Than 1 Way To Skin A ThemeThere's More Than 1 Way To Skin A Theme
There's More Than 1 Way To Skin A Theme
 
AngularJS
AngularJSAngularJS
AngularJS
 
Nuno Godinho Presentation / CloudViews.Org - Cloud Computing Conference 2009
Nuno Godinho Presentation / CloudViews.Org - Cloud Computing Conference 2009Nuno Godinho Presentation / CloudViews.Org - Cloud Computing Conference 2009
Nuno Godinho Presentation / CloudViews.Org - Cloud Computing Conference 2009
 
Responsive Design - Wordcamp 2013
Responsive Design - Wordcamp 2013Responsive Design - Wordcamp 2013
Responsive Design - Wordcamp 2013
 
How to Copy A Flow In Manychat
How to Copy A Flow In ManychatHow to Copy A Flow In Manychat
How to Copy A Flow In Manychat
 
Principles. Misunderstood. Applied
Principles. Misunderstood. AppliedPrinciples. Misunderstood. Applied
Principles. Misunderstood. Applied
 
Flash 2 dev bbp-laybook
Flash 2 dev bbp-laybookFlash 2 dev bbp-laybook
Flash 2 dev bbp-laybook
 
Html5.- Desarrollo y Buenas Prácticas con JavaScript
Html5.- Desarrollo y Buenas Prácticas con JavaScriptHtml5.- Desarrollo y Buenas Prácticas con JavaScript
Html5.- Desarrollo y Buenas Prácticas con JavaScript
 
Shubham Pratap Singh Resume
Shubham Pratap Singh ResumeShubham Pratap Singh Resume
Shubham Pratap Singh Resume
 
Hootsuite: eZ Publish Platform 5 and Symfony2
Hootsuite: eZ Publish Platform 5 and Symfony2Hootsuite: eZ Publish Platform 5 and Symfony2
Hootsuite: eZ Publish Platform 5 and Symfony2
 

Destaque

Tesis_doctoral_Jose_Pino_Diaz.
Tesis_doctoral_Jose_Pino_Diaz. Tesis_doctoral_Jose_Pino_Diaz.
Tesis_doctoral_Jose_Pino_Diaz.
Pepe
 

Destaque (12)

SI VIS PACEM - Metodología Motivacional
SI VIS PACEM - Metodología MotivacionalSI VIS PACEM - Metodología Motivacional
SI VIS PACEM - Metodología Motivacional
 
DCF valuation framework for IT services
DCF valuation framework for IT servicesDCF valuation framework for IT services
DCF valuation framework for IT services
 
Tesis_doctoral_Jose_Pino_Diaz.
Tesis_doctoral_Jose_Pino_Diaz. Tesis_doctoral_Jose_Pino_Diaz.
Tesis_doctoral_Jose_Pino_Diaz.
 
Head Hacking : The Magic of Suggestion and Perception
Head Hacking : The Magic of Suggestion and PerceptionHead Hacking : The Magic of Suggestion and Perception
Head Hacking : The Magic of Suggestion and Perception
 
Cloud Storage and Security: Solving Compliance Challenges
Cloud Storage and Security: Solving Compliance ChallengesCloud Storage and Security: Solving Compliance Challenges
Cloud Storage and Security: Solving Compliance Challenges
 
Indian abacus for parents demo
Indian abacus for parents demoIndian abacus for parents demo
Indian abacus for parents demo
 
Phones of the future
Phones of the futurePhones of the future
Phones of the future
 
Top Bitcoin Dice Game
Top Bitcoin Dice GameTop Bitcoin Dice Game
Top Bitcoin Dice Game
 
The 2016 Budget and Economic Outlook
The 2016 Budget and Economic OutlookThe 2016 Budget and Economic Outlook
The 2016 Budget and Economic Outlook
 
Simplistic, delicate beauty
Simplistic, delicate beautySimplistic, delicate beauty
Simplistic, delicate beauty
 
BRAND: The 7 New Rules of the Social Era (Graham Brown mobileYouth)
BRAND: The 7 New Rules of the Social Era (Graham Brown mobileYouth)BRAND: The 7 New Rules of the Social Era (Graham Brown mobileYouth)
BRAND: The 7 New Rules of the Social Era (Graham Brown mobileYouth)
 
Ladies self portraits, 2
Ladies self  portraits, 2Ladies self  portraits, 2
Ladies self portraits, 2
 

Semelhante a How to create a conference android app with Groovy and Android

Web Development.pdf
Web Development.pdfWeb Development.pdf
Web Development.pdf
Tasnim Mim
 
adlibsolportfolio
adlibsolportfolioadlibsolportfolio
adlibsolportfolio
sherry yar
 

Semelhante a How to create a conference android app with Groovy and Android (20)

13 Best IDE for Web Development Projects in 2022.pdf
13 Best IDE for Web Development Projects in 2022.pdf13 Best IDE for Web Development Projects in 2022.pdf
13 Best IDE for Web Development Projects in 2022.pdf
 
Hazem habeb
Hazem habebHazem habeb
Hazem habeb
 
Demystifying progressive web apps
Demystifying progressive web appsDemystifying progressive web apps
Demystifying progressive web apps
 
URL Funnel Optimisation: How to get budget for SEO - Michal Magdziarz, CEO, D...
URL Funnel Optimisation: How to get budget for SEO - Michal Magdziarz, CEO, D...URL Funnel Optimisation: How to get budget for SEO - Michal Magdziarz, CEO, D...
URL Funnel Optimisation: How to get budget for SEO - Michal Magdziarz, CEO, D...
 
Web Development.pdf
Web Development.pdfWeb Development.pdf
Web Development.pdf
 
VisionMobile @ Uplinq 2013
VisionMobile @ Uplinq 2013VisionMobile @ Uplinq 2013
VisionMobile @ Uplinq 2013
 
adlibsolportfolio
adlibsolportfolioadlibsolportfolio
adlibsolportfolio
 
web design company in Delhi
web design company in Delhiweb design company in Delhi
web design company in Delhi
 
Why websites will never die?
Why websites will never die?Why websites will never die?
Why websites will never die?
 
Not Your Father's SEM
Not Your Father's SEMNot Your Father's SEM
Not Your Father's SEM
 
Why responsive websites?
Why responsive websites?Why responsive websites?
Why responsive websites?
 
Web Development Company PPT Presentation - Vidushi Infotech
Web Development Company PPT Presentation - Vidushi InfotechWeb Development Company PPT Presentation - Vidushi Infotech
Web Development Company PPT Presentation - Vidushi Infotech
 
How APIs Transform Both Your Business and Technology
How APIs Transform Both Your Business and TechnologyHow APIs Transform Both Your Business and Technology
How APIs Transform Both Your Business and Technology
 
AI as the Gateway to your Business - Alexander De Ridder, DE RIDDER INTERNAT...
 AI as the Gateway to your Business - Alexander De Ridder, DE RIDDER INTERNAT... AI as the Gateway to your Business - Alexander De Ridder, DE RIDDER INTERNAT...
AI as the Gateway to your Business - Alexander De Ridder, DE RIDDER INTERNAT...
 
Techgunj@2017
Techgunj@2017Techgunj@2017
Techgunj@2017
 
How Can HTML Compete with Native?
How Can HTML Compete with Native?How Can HTML Compete with Native?
How Can HTML Compete with Native?
 
Top 7 Important and Trendy Tips of WordPress Development in 2022
Top 7 Important and Trendy Tips of WordPress Development in 2022Top 7 Important and Trendy Tips of WordPress Development in 2022
Top 7 Important and Trendy Tips of WordPress Development in 2022
 
How to successfully build a Flutter web app?
How to successfully build a Flutter web app?How to successfully build a Flutter web app?
How to successfully build a Flutter web app?
 
Trancis | company profile
Trancis | company profileTrancis | company profile
Trancis | company profile
 
Introduction to Android App Development
Introduction to Android App DevelopmentIntroduction to Android App Development
Introduction to Android App Development
 

Mais de GR8Conf

Mais de GR8Conf (20)

DevOps Enabling Your Team
DevOps Enabling Your TeamDevOps Enabling Your Team
DevOps Enabling Your Team
 
Creating and testing REST contracts with Accurest Gradle
Creating and testing REST contracts with Accurest Gradle Creating and testing REST contracts with Accurest Gradle
Creating and testing REST contracts with Accurest Gradle
 
Mum, I want to be a Groovy full-stack developer
Mum, I want to be a Groovy full-stack developerMum, I want to be a Groovy full-stack developer
Mum, I want to be a Groovy full-stack developer
 
Metaprogramming with Groovy
Metaprogramming with GroovyMetaprogramming with Groovy
Metaprogramming with Groovy
 
Ratpack On the Docks
Ratpack On the DocksRatpack On the Docks
Ratpack On the Docks
 
Groovy Powered Clean Code
Groovy Powered Clean CodeGroovy Powered Clean Code
Groovy Powered Clean Code
 
Cut your Grails application to pieces - build feature plugins
Cut your Grails application to pieces - build feature pluginsCut your Grails application to pieces - build feature plugins
Cut your Grails application to pieces - build feature plugins
 
Performance tuning Grails applications
 Performance tuning Grails applications Performance tuning Grails applications
Performance tuning Grails applications
 
Ratpack and Grails 3
 Ratpack and Grails 3 Ratpack and Grails 3
Ratpack and Grails 3
 
Grails & DevOps: continuous integration and delivery in the cloud
Grails & DevOps: continuous integration and delivery in the cloudGrails & DevOps: continuous integration and delivery in the cloud
Grails & DevOps: continuous integration and delivery in the cloud
 
Functional testing your Grails app with GEB
Functional testing your Grails app with GEBFunctional testing your Grails app with GEB
Functional testing your Grails app with GEB
 
Deploying, Scaling, and Running Grails on AWS and VPC
Deploying, Scaling, and Running Grails on AWS and VPCDeploying, Scaling, and Running Grails on AWS and VPC
Deploying, Scaling, and Running Grails on AWS and VPC
 
The Grails introduction workshop
The Grails introduction workshopThe Grails introduction workshop
The Grails introduction workshop
 
Idiomatic spock
Idiomatic spockIdiomatic spock
Idiomatic spock
 
The Groovy Ecosystem Revisited
The Groovy Ecosystem RevisitedThe Groovy Ecosystem Revisited
The Groovy Ecosystem Revisited
 
Groovy 3 and the new Groovy Meta Object Protocol in examples
Groovy 3 and the new Groovy Meta Object Protocol in examplesGroovy 3 and the new Groovy Meta Object Protocol in examples
Groovy 3 and the new Groovy Meta Object Protocol in examples
 
Integration using Apache Camel and Groovy
Integration using Apache Camel and GroovyIntegration using Apache Camel and Groovy
Integration using Apache Camel and Groovy
 
CRaSH the shell for the Java Virtual Machine
CRaSH the shell for the Java Virtual MachineCRaSH the shell for the Java Virtual Machine
CRaSH the shell for the Java Virtual Machine
 
Grooscript gr8conf
Grooscript gr8confGrooscript gr8conf
Grooscript gr8conf
 
CRaSH the shell for the Java Virtual Machine
CRaSH the shell for the Java Virtual MachineCRaSH the shell for the Java Virtual Machine
CRaSH the shell for the Java Virtual Machine
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 

How to create a conference android app with Groovy and Android