+ - 0:00:00
Notes for current slide
Notes for next slide

image

img

⚠️ Press f to go full-screen.

1 / 38

πŸ‘‹ I'm

Ahmad Awais


πŸ‘¨β€πŸ’» Principal Developer Advocate (JS/FOSS)

🌳 Node.js TLC Community Committee Member

🦊 Google Developers Expert in Web Technology

🎩 Open Sourcerer & WordPress Core Developer

🀯 Over 1,781,061 devs use my open source code

🌍 Over 631,123 sites use the products I have built

πŸ‘·β€β™‚οΈ EE-CS Engineer turned Emojineer Most definite #TrueStory


Rants on Twitter @MrAhmadAwais β†’ FOSS GitHub | AhmadAwais.com | LinkedIn

2 / 38

🐦 Follow

@MrAhmadAwais


✍️ Using it as a mini personal blog

πŸ”₯ #OneDevMinute development tips!

🀣 Developer jokes/rantsβ€š you name it

πŸ’― I Retweet/Like Good Content - No Automation there


MOAR: FOSS GitHub | AhmadAwais.com | LinkedIn

3 / 38

πŸ‘¨β€πŸ« VSCode.pro


After ten years of Sublime, in 2017 I completely switched over to this new open source code editor called Visual Studio Code. I couldn't be happier.


βœ… JavaScript Based Open Source Editor

πŸŽ‰ I was able to contribute to VSCode

πŸ’œ Shades of purple ↣ my first code editor theme is used by over 1,555,060 developers in VSCode, iTerm2, Hyper, Slack, Alfred, Highlight.js, & more.


🌟 Sign up to become a VSCode Power User β†’

πŸ‘¨β€πŸ’» πŸ‘©β€πŸ’» 13,526+ Developers already learning


4 / 38
5 / 38

CLOUDYCAM.dev


Cloudinary's Developer Activation


6 / 38

CLOUDYCAM.dev


Cloudinary's Developer Activation


πŸ€” Internet of Things (IoT)

7 / 38

CLOUDYCAM.dev


Cloudinary's Developer Activation


πŸ€” Internet of Things (IoT)

πŸ—ƒοΈ Built with the JAMstack

8 / 38

CLOUDYCAM.dev


Cloudinary's Developer Activation


πŸ€” Internet of Things (IoT)

πŸ—ƒοΈ Built with the JAMstack

🀩 Progressive Web Application

9 / 38

Project Requirements

10 / 38

Project Requirements


πŸ“Έ Take a picture


11 / 38

Project Requirements


πŸ“Έ Take a picture


πŸ–ΌοΈ Upload to Cloudinary


12 / 38

Project Requirements


πŸ“Έ Take a picture


πŸ–ΌοΈ Upload to Cloudinary


πŸ—ƒοΈ Build a demo user page


13 / 38
14 / 38

Developer Experience

15 / 38

Developer Experience


πŸ—ƒοΈ Build in less than 15 seconds


16 / 38

Developer Experience


πŸ—ƒοΈ Build in less than 15 seconds


πŸ–ΌοΈ Multiple simultaneous demos at an event


17 / 38

Developer Experience


πŸ—ƒοΈ Build in less than 15 seconds


πŸ–ΌοΈ Multiple simultaneous demos at an event


πŸ€” Multiple developer events with multiple demos


18 / 38
19 / 38

DECISIONS


πŸ€” Frontend?!

20 / 38

DECISIONS


πŸ€” Frontend?!


πŸ€” Backend?!

21 / 38

DECISIONS


πŸ€” Frontend?!


πŸ€” Backend?!


πŸ€” Documentation?!

22 / 38

😭 β†’ 😫 β†’ 😠 β†’ 😐 β†’ πŸ€” β†’ 🧐 β†’ ❓




FEELING OVERWHELMED?

23 / 38

JAMstack


A revolution in itself. Modern web development architecture based on client-side JavaScript, reusable APIs, and prebuilt Markup.


😎 JavaScript: Running entirely on the client

🀯 APIs: Reusable APIs, accessed over HTTPS

🀩 Markup: Templated markup e.g. Markdown

24 / 38

JavaScript


Best* programming language at the moment.


βœ… JOBS: High-paid jobs

πŸ”₯ FUN: Super fun to write (*sometimes)

⚑ CUTTING EDGE: Always improving; dev tools

25 / 38

APIs


Application programming interface


βœ… REST: GET, POST

πŸ”₯ GraphQL: Query language for APIs

❓ WHAT API: Best explanation for APIs β†’

26 / 38

Markup


Markups are converted into HTML via build tools.


🌟 Markdown: The best lightweight markup

πŸ”₯ MDX: Markdown + JSX for JavaScript + React

🌐 MOAAR: Pug | {{ mustache }} | Handlebars.js

27 / 38

Frontend Options


βœ… NEED: First class routing

βœ… NEED: Server Side Rendering

ℹ️ GOOD TO HAVE: PWA Support

28 / 38

Gatsby.js


Blazing fast modern site generator for React.


πŸ’― Impressive documentation β†’

🎯 Learn everything with this Gatsby tutorial β†’

πŸ™Œ React/GraphQL/Plugins/Community β€” has it all


πŸ€” Routing is a second tier citizen

29 / 38

Next.js


Blazing fast modern site generator for React.


πŸ’― Impressive documentation β†’

🎯 Learn everything with this tutorial β†’

πŸ™Œ React/Examples/Community β€” has it all


βœ… Routing; well thought out & done right

βœ… SSR Server Side Rendering

Β± Progressive Web Apps

30 / 38

Backend Options


βœ… NEED: Serverless setup

βœ… NEED: Backendless backend

ℹ️ GOOD TO HAVE: Monorepo Support

31 / 38

Node.js


An open-source, cross-platform JavaScript run-time environment that executes JavaScript code outside of a browser.


⬇️ Download & Install β†’

🌍 Cross platform JavaScript

πŸ–² Built on Chrome's V8 JavaScript engine

🎯 Incredibly amazing eco-system for developers

32 / 38

ZEIT Now


All-in-one solution for static & JAMstack deployment for performance-obsessed teams.


βœ… No servers to manage, scale, orchestrate, etc…

🌍 Deploy React.js, Vue.js, Node.js, or even Go APIs

πŸ–² Monorepo with nearly zero configuration

🎯 GitHub to deploy upon every push

33 / 38

Documentation


βœ… NEED: Markdown only

βœ… NEED: UI + Customizability

ℹ️ GOOD TO HAVE: Search Support

34 / 38

VuePress


Vue-powered Static Documentation Site Generator


πŸ‘Œ Pretty amazing documentation

🎯 Build for docs/content focused sites

πŸ“Ÿ Markdown to rendered HTML Content

πŸ”Ž Content is searchable out of the box

😲 Configurable & customizable extensions

πŸ‘‰ so much more β†’

35 / 38

πŸ€” β†’ πŸ™ƒ β†’ 🧐 β†’ 🀞 β†’ 🀫 β†’ 😁 β†’ πŸ€—




JAMstack (Next.js & Cloudinary) + Monorepo (ZEIT Now) === πŸ’―!

36 / 38

JAMstack with React, Vue & Node.js

37 / 38

Questions?!


🎯 I'll share the slides link on @MrAhmadAwais β†’


FOSS GitHub | AhmadAwais.com | LinkedIn

38 / 38

πŸ‘‹ I'm

Ahmad Awais


πŸ‘¨β€πŸ’» Principal Developer Advocate (JS/FOSS)

🌳 Node.js TLC Community Committee Member

🦊 Google Developers Expert in Web Technology

🎩 Open Sourcerer & WordPress Core Developer

🀯 Over 1,781,061 devs use my open source code

🌍 Over 631,123 sites use the products I have built

πŸ‘·β€β™‚οΈ EE-CS Engineer turned Emojineer Most definite #TrueStory


Rants on Twitter @MrAhmadAwais β†’ FOSS GitHub | AhmadAwais.com | LinkedIn

2 / 38
Paused

Help

Keyboard shortcuts

↑, ←, Pg Up, k Go to previous slide
↓, β†’, Pg Dn, Space, j Go to next slide
Home Go to first slide
End Go to last slide
Number + Return Go to specific slide
b / m / f Toggle blackout / mirrored / fullscreen mode
c Clone slideshow
p Toggle presenter mode
t Restart the presentation timer
?, h Toggle this help
Esc Back to slideshow