How to create a conference Android app with Groovy and Wordpress?

How to create a conference Android app with Groovy and Wordpress?

30995fcc876f40073628b63ea5cfab59?s=128

Sergio del Amo

March 19, 2016
Tweet

Transcript

  1. HOW TO CREATE A CONFERENCE ANDROID APP WITH GROOVY AND

    WORDPRESS?
  2. SERGIO DEL AMO ME@SERGIODELAMO.COM @SDELAMO

  3. IOS APP APP STORE

  4. GR8CONFAGENDA GOOGLEPLAY

  5. GROOVYCALAMARI.COM A “weekly” curated email newsletter full of interesting, relevant

    links about the Groovy Ecosystem
  6. AUDIENCE BACKGROUND ▸ WORDPRESS AFICIONADO? ▸ WORDPRESS DEVELOPERS? ▸ ANDROID

    DEVELOPERS? ▸ GROOVY DEVELOPERS?
  7. SMALL ( < 20 EMPLOYEES ) MEDIUM-BIG ( > 20

    EMPLOYEES )
  8. WHY?

  9. IS IT POSSIBLE TO HIRE GROOVY DEVELOPERS FOR A START-UP?

  10. None
  11. None
  12. SHOPTIMIX PROFILE?

  13. IS GROOVY TOO NICHE?

  14. TEXT

  15. TEXT

  16. None
  17. None
  18. TEXT

  19. DOES GROOVY NEED TO BE IN THE TOP 10?

  20. GROOVY CAN BE ANDROID’ SWIFT

  21. WORDPRESS

  22. WHY WORDPRESS?

  23. None
  24. POWERS 25% OF ALL SITES ACROSS THE WEB WORDPRESS SOURCE

    W3TECHS
  25. CHEAP HOSTING

  26. PRODUCT IS USER FRIENDLY

  27. PRODUCT IS FLEXIBLE

  28. LOTS OF PLUGINS!

  29. HOW TO CREATE A CONFERENCE APP POWERED BY WORPRESS?

  30. None
  31. None
  32. CUSTOM POST TYPES ▸ CONGRESS ▸ SPEAKER ▸ TALK

  33. None
  34. None
  35. None
  36. None
  37. None
  38. None
  39. None
  40. None
  41. HTTP://EXAMPLE.COM/WP-JSON/POSTS?TYPE=TALK

  42. None
  43. ANDROID

  44. https://github.com/groovy/groovy-android-gradle-plugin

  45. http://mariogarcia.github.io/grooid-templates/

  46. SQLite ENTITIES grooid_wpapi Activities Fragments Adapters USE CASES INTERFACE ADAPTERS

    BotConf grooid_wpapi
  47. REFRESH ▸ BACKGROUND TASK TO DOWNLOAD JSON ▸ UPDATE LOCAL

    DATABASE ▸ NOTIFY UI OF CHANGES IN THE DATABASE AND DISPLAY CHANGES
  48. https://github.com/Arasthel/SwissKnife

  49. None
  50. GROOID_WPAPI ▸ https://github.com/sdelamo/grooid-wpapi

  51. None
  52. None
  53. None
  54. None
  55. None
  56. 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
  57. None
  58. 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
  59. PAGINATION

  60. STRING INTERPOLATION

  61. JAVA GROOVY

  62. GROOVY WITH OPERATOR

  63. AgendaSessionTimeHeader <IAgendaSession> TalkCard <IAgendaSession> AgendaSessionTimeHeader <IAgendaSession> AgendaSessionTimeHeader <IAgendaSession> TalkCard <IAgendaSession>

    TalkCard <IAgendaSession> TalkCard <IAgendaSession>
  64. None
  65. CHRONOLOGICAL ORDER REVERSE CHRONOLOGICAL ORDER 12 Dec 2014 11 Dec

    2014 13 Dec 2013 12 Dec 2013 14 Dec 2015 15 Dec 2015
  66. None
  67. SPOCK ON ANDROID ▸ https://github.com/pieces029/android-spock

  68. None
  69. JAVA GROOVY

  70. SHARED PREFERENCES

  71. TRAITS

  72. None
  73. MAIN ACTIVITY TALK ACTIVITY

  74. None
  75. None
  76. CHALLENGES

  77. 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
  78. ANDROID STUDIO SUPPORT

  79. CALL TO ACTION

  80. WORK IN PROGRESS ▸ GROOID_WPAPI (https://github.com/sdelamo/grooid-wpapi) ▸ BOTCONF (https://github.com/sdelamo/botconf)

  81. CODE ANDROID PROJECTS ON GROOVY

  82. GROOVYCALAMARI.COM A “weekly” curated email newsletter full of interesting, relevant

    links about the Groovy Ecosystem
  83. https://play.google.com/store/apps/details?id=com.botconf.ggx

  84. ?