SlideShare a Scribd company logo
1 of 41
1
Your Shit Doesn’t Work
in Africa
It should, let’s talk about how.
Hello!
I’m William Imoh “Chuloo”.
Twitter @iChuloo
2
I like to roam around
talking about
technology and its
communities.
“
1.3 Billion
3
Population of Africa === ~20% of the world
“
Welcome to Africa, the continent of
everything good and something “edgy.”
4
5
Lagos, Nigeria.
https://ionigeria.com/5-great-things-lagos-sunday/
6
High => 30mbps+
Low => 200kbps-
Network Speeds
7
8
Los Problemas
◎Everything can be fast but some work
reaaaally slowly.
◎Most times, there’s too little direct
product support.
◎Chrome dev tools can be inadequate for
mitigating performance bottlenecks.
◎Pricing models are too high with little
marketing.
9
What are the solutions?
10
● Development architecture and pattern:
PWAs, microservices
● Optimized media delivery
● Diversified, test-driven deployment
● Supersimple deployment and support
● Community and user groups
11
12
Q: What are PWAs?
A: Cache everything!
Progressive Web Apps
PRPL, JAMstack, and PWAs
13
◎A fit for offline or low-bandwidth networks
◎Mobile first with native-looking UI
◎Mobile app-like interface
◎Push notifications
PWA Features
PRPL, JAMstack, and PWAs
14
PRPL, JAMstack, and PWAs
PRPL
Push the critical resources for the initial
URL route.
Render the initial route.
Precache the remaining routes.
Lazy-load and create the remaining routes
on demand.
15
JavaScript API MARKUP
What is JAMstack?
PRPL, JAMstack, and PWAs
16
◎Secure: Reduced risk of server attacks
◎Fast: Almost no client-server exchanges
◎Cost-effective: Thanks to Netlify, Now,
etc.
◎Smart: A fit for most sources
◎Familiar: Intuitive dev environment
JAMstack Features
PRPL, JAMstack, and PWAs
17
◎GatsbyJS
◎Next.js
◎Hugo
◎Nuxt.js
◎VuePress
Tools for JAMstack Apps
PRPL, JAMstack, and PWAs
Media Optimization
20
◎Longer load time
◎More network data requirements
◎User drop-offs
◎Larger app size == higher hosting costs
◎Rage, anxiety, questions like “Why bother?”
21
Ill Effects of Improper
Image Optimization
Media Optimization
22
◎Adopt lazy loads.
◎Serve from a CDN to reduce bundle size.
◎Practice abstract transformations for less
JavaScript logic.
◎Optimize images for responsiveness in all
devices.
◎Pay attention to First Meaningful Paint and
Time to Interactive.
Tips for Avoiding Bad Media
Media Optimization
23
Media Tooling With Cloudinary
◎ Lazy-load files
◎ On-the-fly manipulation and transformation
with URLs
◎ Secure storage and delivery via CDNs
◎ Optimized and responsive image-delivery
◎ Free tier for developers
◎ Debugger
Media Optimization
24
Cloudinary Debugger
Media Optimization
25
Cloudinary Debugger (Cont’d)
Media Optimization
26
Chrome Dev Tools
They are your friend.
Media Optimization
Diversified, Test-Driven
Development
27
“
28
“This is the system of effectively working with
distributed teams around the world to build
products with a test-driven approach, done by
these team members all over the world,
including in remote areas.”
— Chuloo, 2019
29
Make deployment as easy as possible for
developer tools. Technical posts are a golden
reference.
Tools like Netlify, Now, and Surge are popular in
Africa because they are simple to use and deploy.
Continuous deployment workflows are highly
important and efficient.
Supersimple Deployment and
Support
30
Community and User Groups
The dev community in Africa is yuuuuuuge!
31
forLoop, Africa
Andela Learning
Community
GDG
Ingressive
Communities
FB Dev Circles
Dar JS
Devcenter
Dev Communities in Africa
● Thousands of Africans are learning to
code and getting software jobs.
● Supporting brands are successful.
● African techies are contributing to
the global tech ecosystem.
● They’re solving many tech problems.
● More food and swag are at meetups.
Great fun!
32
Benefits of Communities
33
What Dev Communities
Mean to You as a Builder
◎ You are giving back to a group of loyal builders
who in turn win you loyal users.
◎ You gain ease of entry to markets and understand
the best-fit pricing models.
◎ You earn autonomous support from members who
use your product.
◎ You get quick feedback on your product—from first
deployment to seasoned usage.
◎ You benefit from independent advocates who
promote your product or brand.
34
Peter - @kenny_io
Chris - @codebeast
Kingsley -
@mayowa_king
Wale - @Ace_KYD
Gift - @lauragift21
Ada - @Kolokodess
35
ConcatenateConf, August 2018
Image credit: @Rotimiokungbaye
36
forLoop Lagos
Image credit: @Rotimiokungbaye
37
Consider building or
supporting a remote
developer community
38
Summary
◎Building fast apps to scale according to
modern development patterns and
architecture is the way to go.
◎Media optimization is superimportant.
◎Diverse teams make more robust international
products.
◎Communities and user groups invariably
promote product usage and support.
● How can I build more scalable apps?
● Am I providing enough remote support
to product users and how can I better
support them through communities?
39
What Next?
40
Additional Resources
● https://cloudinary.com/
● https://www.benjamindada.com/concatenate-conf-recap/
● https://www.benjamindada.com/forloop-africa/
● https://scotch.io/tutorials/building-a-video-blog-with-gatsby-
and-markdown-mdx
● https://scotch.io/tutorials/how-to-use-chrome-dev-tools-to-
find-performance-bottlenecks
● https://chrome.google.com/webstore/detail/cloudinary-
debugger/ehnkhkglbafecknplfmjklnnjimokpkg
● https://developers.google.com/web/fundamentals/performanc
e/prpl-pattern/
41
Thank you!

More Related Content

Similar to Your sh*t doesn't work in africa - node sf

International developers and building for the next billion users
International developers and building for the next billion usersInternational developers and building for the next billion users
International developers and building for the next billion usersUgonna William Imoh
 
Supercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps PlatformSupercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps PlatformXebiaLabs
 
7 Things Your Nonprofit Can Do to Get the Most out of Your Website in 2020
7 Things Your Nonprofit Can Do to Get the Most out of Your Website in 20207 Things Your Nonprofit Can Do to Get the Most out of Your Website in 2020
7 Things Your Nonprofit Can Do to Get the Most out of Your Website in 2020TechSoup
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous IntegrationMeni Lubetkin
 
Webinar - Office Productivity in the Cloud - 2016-08-18
Webinar - Office Productivity in the Cloud - 2016-08-18Webinar - Office Productivity in the Cloud - 2016-08-18
Webinar - Office Productivity in the Cloud - 2016-08-18TechSoup
 
The LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity ModelThe LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity ModelLima Consulting Group
 
GDSC Morocco Info Session
GDSC Morocco  Info SessionGDSC Morocco  Info Session
GDSC Morocco Info SessionMounsefBanouri
 
Webinar:How to Get Tech Donations a Special Tech soup Tour-2017-08-17
Webinar:How to Get Tech Donations a Special Tech soup Tour-2017-08-17Webinar:How to Get Tech Donations a Special Tech soup Tour-2017-08-17
Webinar:How to Get Tech Donations a Special Tech soup Tour-2017-08-17TechSoup
 
UX, Agile and product management
UX, Agile and product managementUX, Agile and product management
UX, Agile and product managementPhil Barrett
 
Google DSC Morocco - INFO SESSION 2021-2022
Google DSC Morocco  - INFO SESSION 2021-2022Google DSC Morocco  - INFO SESSION 2021-2022
Google DSC Morocco - INFO SESSION 2021-2022HassanAbida
 
Multi-Agency Multi-Media Interoperable Communication, Enabled By Redis: Paul ...
Multi-Agency Multi-Media Interoperable Communication, Enabled By Redis: Paul ...Multi-Agency Multi-Media Interoperable Communication, Enabled By Redis: Paul ...
Multi-Agency Multi-Media Interoperable Communication, Enabled By Redis: Paul ...Redis Labs
 
Riding the Drupal Wave: The Future for Drupal and Open Source Content Manage...
Riding the Drupal Wave:  The Future for Drupal and Open Source Content Manage...Riding the Drupal Wave:  The Future for Drupal and Open Source Content Manage...
Riding the Drupal Wave: The Future for Drupal and Open Source Content Manage...Phase2
 
Philly ETE 2016: Securing Software by Construction
Philly ETE 2016: Securing Software by ConstructionPhilly ETE 2016: Securing Software by Construction
Philly ETE 2016: Securing Software by Constructionjxyz
 
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?Phuong Mai Nguyen
 
Mobile opportunity and options - for CIOs
Mobile opportunity and options - for CIOsMobile opportunity and options - for CIOs
Mobile opportunity and options - for CIOsTim McGovern
 
Succeeding at Digital Government the Open Source Way
Succeeding at Digital Government the Open Source WaySucceeding at Digital Government the Open Source Way
Succeeding at Digital Government the Open Source WayJeffrey McGuire
 
Digital Transformation 2018 - Edinburgh
Digital Transformation 2018 - EdinburghDigital Transformation 2018 - Edinburgh
Digital Transformation 2018 - EdinburghRay Bugg
 
Mobile opportunity and options for it
Mobile opportunity and options   for itMobile opportunity and options   for it
Mobile opportunity and options for itTim McGovern
 
Why I Am a Software Engineer
Why I Am a Software EngineerWhy I Am a Software Engineer
Why I Am a Software EngineerCraig Saunders
 

Similar to Your sh*t doesn't work in africa - node sf (20)

International developers and building for the next billion users
International developers and building for the next billion usersInternational developers and building for the next billion users
International developers and building for the next billion users
 
Supercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps PlatformSupercharge Your Digital Transformation by Establishing a DevOps Platform
Supercharge Your Digital Transformation by Establishing a DevOps Platform
 
7 Things Your Nonprofit Can Do to Get the Most out of Your Website in 2020
7 Things Your Nonprofit Can Do to Get the Most out of Your Website in 20207 Things Your Nonprofit Can Do to Get the Most out of Your Website in 2020
7 Things Your Nonprofit Can Do to Get the Most out of Your Website in 2020
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
Webinar - Office Productivity in the Cloud - 2016-08-18
Webinar - Office Productivity in the Cloud - 2016-08-18Webinar - Office Productivity in the Cloud - 2016-08-18
Webinar - Office Productivity in the Cloud - 2016-08-18
 
The LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity ModelThe LCG Digital Transformation Maturity Model
The LCG Digital Transformation Maturity Model
 
GDSC Morocco Info Session
GDSC Morocco  Info SessionGDSC Morocco  Info Session
GDSC Morocco Info Session
 
Webinar:How to Get Tech Donations a Special Tech soup Tour-2017-08-17
Webinar:How to Get Tech Donations a Special Tech soup Tour-2017-08-17Webinar:How to Get Tech Donations a Special Tech soup Tour-2017-08-17
Webinar:How to Get Tech Donations a Special Tech soup Tour-2017-08-17
 
UX, Agile and product management
UX, Agile and product managementUX, Agile and product management
UX, Agile and product management
 
Google DSC Morocco - INFO SESSION 2021-2022
Google DSC Morocco  - INFO SESSION 2021-2022Google DSC Morocco  - INFO SESSION 2021-2022
Google DSC Morocco - INFO SESSION 2021-2022
 
Multi-Agency Multi-Media Interoperable Communication, Enabled By Redis: Paul ...
Multi-Agency Multi-Media Interoperable Communication, Enabled By Redis: Paul ...Multi-Agency Multi-Media Interoperable Communication, Enabled By Redis: Paul ...
Multi-Agency Multi-Media Interoperable Communication, Enabled By Redis: Paul ...
 
Riding the Drupal Wave: The Future for Drupal and Open Source Content Manage...
Riding the Drupal Wave:  The Future for Drupal and Open Source Content Manage...Riding the Drupal Wave:  The Future for Drupal and Open Source Content Manage...
Riding the Drupal Wave: The Future for Drupal and Open Source Content Manage...
 
Philly ETE 2016: Securing Software by Construction
Philly ETE 2016: Securing Software by ConstructionPhilly ETE 2016: Securing Software by Construction
Philly ETE 2016: Securing Software by Construction
 
Marketing Plan: Globe
Marketing Plan: GlobeMarketing Plan: Globe
Marketing Plan: Globe
 
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
 
Mobile opportunity and options - for CIOs
Mobile opportunity and options - for CIOsMobile opportunity and options - for CIOs
Mobile opportunity and options - for CIOs
 
Succeeding at Digital Government the Open Source Way
Succeeding at Digital Government the Open Source WaySucceeding at Digital Government the Open Source Way
Succeeding at Digital Government the Open Source Way
 
Digital Transformation 2018 - Edinburgh
Digital Transformation 2018 - EdinburghDigital Transformation 2018 - Edinburgh
Digital Transformation 2018 - Edinburgh
 
Mobile opportunity and options for it
Mobile opportunity and options   for itMobile opportunity and options   for it
Mobile opportunity and options for it
 
Why I Am a Software Engineer
Why I Am a Software EngineerWhy I Am a Software Engineer
Why I Am a Software Engineer
 

Recently uploaded

Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Gram Darshan PPT cyber rural in villages of india
Gram Darshan PPT cyber rural  in villages of indiaGram Darshan PPT cyber rural  in villages of india
Gram Darshan PPT cyber rural in villages of indiaimessage0108
 
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...aditipandeya
 
Russian Call girls in Dubai +971563133746 Dubai Call girls
Russian  Call girls in Dubai +971563133746 Dubai  Call girlsRussian  Call girls in Dubai +971563133746 Dubai  Call girls
Russian Call girls in Dubai +971563133746 Dubai Call girlsstephieert
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)Damian Radcliffe
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...Diya Sharma
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts servicesonalikaur4
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607dollysharma2066
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Servicegwenoracqe6
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With RoomVIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Roomishabajaj13
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsThierry TROUIN ☁
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts servicevipmodelshub1
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebJames Anderson
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girladitipandeya
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024APNIC
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝soniya singh
 

Recently uploaded (20)

Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
 
Gram Darshan PPT cyber rural in villages of india
Gram Darshan PPT cyber rural  in villages of indiaGram Darshan PPT cyber rural  in villages of india
Gram Darshan PPT cyber rural in villages of india
 
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
VIP 7001035870 Find & Meet Hyderabad Call Girls Dilsukhnagar high-profile Cal...
 
Russian Call girls in Dubai +971563133746 Dubai Call girls
Russian  Call girls in Dubai +971563133746 Dubai  Call girlsRussian  Call girls in Dubai +971563133746 Dubai  Call girls
Russian Call girls in Dubai +971563133746 Dubai Call girls
 
How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)How is AI changing journalism? (v. April 2024)
How is AI changing journalism? (v. April 2024)
 
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
₹5.5k {Cash Payment}New Friends Colony Call Girls In [Delhi NIHARIKA] 🔝|97111...
 
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Porur Phone 🍆 8250192130 👅 celebrity escorts service
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
 
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in  Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Jamuna Vihar Delhi reach out to us at 🔝9953056974🔝
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With RoomVIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with Flows
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
 
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024
 
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Defence Colony Delhi 💯Call Us 🔝8264348440🔝
 

Your sh*t doesn't work in africa - node sf

  • 1. 1 Your Shit Doesn’t Work in Africa It should, let’s talk about how.
  • 2. Hello! I’m William Imoh “Chuloo”. Twitter @iChuloo 2 I like to roam around talking about technology and its communities.
  • 3. “ 1.3 Billion 3 Population of Africa === ~20% of the world
  • 4. “ Welcome to Africa, the continent of everything good and something “edgy.” 4
  • 6. 6 High => 30mbps+ Low => 200kbps- Network Speeds
  • 7. 7
  • 8. 8
  • 9. Los Problemas ◎Everything can be fast but some work reaaaally slowly. ◎Most times, there’s too little direct product support. ◎Chrome dev tools can be inadequate for mitigating performance bottlenecks. ◎Pricing models are too high with little marketing. 9
  • 10. What are the solutions? 10
  • 11. ● Development architecture and pattern: PWAs, microservices ● Optimized media delivery ● Diversified, test-driven deployment ● Supersimple deployment and support ● Community and user groups 11
  • 12. 12 Q: What are PWAs? A: Cache everything! Progressive Web Apps PRPL, JAMstack, and PWAs
  • 13. 13 ◎A fit for offline or low-bandwidth networks ◎Mobile first with native-looking UI ◎Mobile app-like interface ◎Push notifications PWA Features PRPL, JAMstack, and PWAs
  • 14. 14 PRPL, JAMstack, and PWAs PRPL Push the critical resources for the initial URL route. Render the initial route. Precache the remaining routes. Lazy-load and create the remaining routes on demand.
  • 15. 15 JavaScript API MARKUP What is JAMstack? PRPL, JAMstack, and PWAs
  • 16. 16 ◎Secure: Reduced risk of server attacks ◎Fast: Almost no client-server exchanges ◎Cost-effective: Thanks to Netlify, Now, etc. ◎Smart: A fit for most sources ◎Familiar: Intuitive dev environment JAMstack Features PRPL, JAMstack, and PWAs
  • 18.
  • 19.
  • 21. ◎Longer load time ◎More network data requirements ◎User drop-offs ◎Larger app size == higher hosting costs ◎Rage, anxiety, questions like “Why bother?” 21 Ill Effects of Improper Image Optimization Media Optimization
  • 22. 22 ◎Adopt lazy loads. ◎Serve from a CDN to reduce bundle size. ◎Practice abstract transformations for less JavaScript logic. ◎Optimize images for responsiveness in all devices. ◎Pay attention to First Meaningful Paint and Time to Interactive. Tips for Avoiding Bad Media Media Optimization
  • 23. 23 Media Tooling With Cloudinary ◎ Lazy-load files ◎ On-the-fly manipulation and transformation with URLs ◎ Secure storage and delivery via CDNs ◎ Optimized and responsive image-delivery ◎ Free tier for developers ◎ Debugger Media Optimization
  • 26. 26 Chrome Dev Tools They are your friend. Media Optimization
  • 28. “ 28 “This is the system of effectively working with distributed teams around the world to build products with a test-driven approach, done by these team members all over the world, including in remote areas.” — Chuloo, 2019
  • 29. 29 Make deployment as easy as possible for developer tools. Technical posts are a golden reference. Tools like Netlify, Now, and Surge are popular in Africa because they are simple to use and deploy. Continuous deployment workflows are highly important and efficient. Supersimple Deployment and Support
  • 30. 30 Community and User Groups The dev community in Africa is yuuuuuuge!
  • 31. 31 forLoop, Africa Andela Learning Community GDG Ingressive Communities FB Dev Circles Dar JS Devcenter Dev Communities in Africa
  • 32. ● Thousands of Africans are learning to code and getting software jobs. ● Supporting brands are successful. ● African techies are contributing to the global tech ecosystem. ● They’re solving many tech problems. ● More food and swag are at meetups. Great fun! 32 Benefits of Communities
  • 33. 33 What Dev Communities Mean to You as a Builder ◎ You are giving back to a group of loyal builders who in turn win you loyal users. ◎ You gain ease of entry to markets and understand the best-fit pricing models. ◎ You earn autonomous support from members who use your product. ◎ You get quick feedback on your product—from first deployment to seasoned usage. ◎ You benefit from independent advocates who promote your product or brand.
  • 34. 34 Peter - @kenny_io Chris - @codebeast Kingsley - @mayowa_king Wale - @Ace_KYD Gift - @lauragift21 Ada - @Kolokodess
  • 35. 35 ConcatenateConf, August 2018 Image credit: @Rotimiokungbaye
  • 36. 36 forLoop Lagos Image credit: @Rotimiokungbaye
  • 37. 37 Consider building or supporting a remote developer community
  • 38. 38 Summary ◎Building fast apps to scale according to modern development patterns and architecture is the way to go. ◎Media optimization is superimportant. ◎Diverse teams make more robust international products. ◎Communities and user groups invariably promote product usage and support.
  • 39. ● How can I build more scalable apps? ● Am I providing enough remote support to product users and how can I better support them through communities? 39 What Next?
  • 40. 40 Additional Resources ● https://cloudinary.com/ ● https://www.benjamindada.com/concatenate-conf-recap/ ● https://www.benjamindada.com/forloop-africa/ ● https://scotch.io/tutorials/building-a-video-blog-with-gatsby- and-markdown-mdx ● https://scotch.io/tutorials/how-to-use-chrome-dev-tools-to- find-performance-bottlenecks ● https://chrome.google.com/webstore/detail/cloudinary- debugger/ehnkhkglbafecknplfmjklnnjimokpkg ● https://developers.google.com/web/fundamentals/performanc e/prpl-pattern/

Editor's Notes

  1. Tell my story Move on to what the talk is about. A developer approach.
  2. Introduction. Twitter--dunno the handle but you can hit me up if you need me.
  3. Telling the lagos story and network issues
  4. 35% Internet Penetration in Africa with
  5. Explain each bullet point and provide context with examples for each point. From a developer perspective
  6. Explain each point
  7. List features of PWAs
  8. Explain PRPL, its applications and how useful it is.
  9. Explain JAMstack, a new concept with static sites.
  10. Verify these examples
  11. Crazy lighthouse scores
  12. On mobile
  13. Include meme on media delivery
  14. List features of PWAs
  15. Check First meaningful paint Time to interactive
  16. List features of PWAs
  17. List features of PWAs
  18. List features of PWAs
  19. Chroome dev tools tips. Network tab and performance tab
  20. Include meme on media delivery
  21. Test Development Test Deployment Test Possible Target market and possible adoption Test Everything!
  22. If you must deploy the product to traditional servers, make the process easy with step by step how-to guides
  23. List features of PWAs
  24. Estimate size of communities Number of communities
  25. More results from what we are doing
  26. Add numbers on community here
  27. Define sprouts and give example from banana suckers
  28. Add numbers on community here
  29. What next?
  30. Add numbers on community here
  31. Sweet dreams!