SlideShare a Scribd company logo
1 of 159
Download to read offline
Delivering
Flexible 

Design Systems
WARNING: THIS TALK CONTAINS
MOVING & FLASHING IMAGES. IF YOU
ARE SENSITIVE TO THESE IN ANY WAY
PLEASE BE ADVISED.
Who am I?
Just
SENIOR DIR., UX PLATFORM
GoDaddyON THE INTERNET THEY CALL ME @INDEXZERO
BOARD MEMBER, OPENJS FOUNDATION
UX Platform?
…?
cross cutting
All of our
technology
user experience
A BIT MORE THAN JUST OUR DESIGN SYSTEM
UXCore2
Our design system
ABOUT 50 COMPONENTS
REACT BASED
OVER 100 CONTRIBUTORS
STARTED IN LATE 2015
DEPLOYED WORLDWIDE
~40% OF FRONT END ENGINEERS
LET’S BREAKDOWNTHE PROBLEM
Delivering
Flexible 

Design SystemsDesign Systems
Flexible
Delivering
Delivering
Flexible 

Design SystemsDesign Systems
ELEMENTS
of a
DESIGN SYSTEM
‘sub-atomic’
First off the
atomic design
of
COLOR PALETTE, TYPOGRAPHY, SPACING, “VOICE”
COMPONENTSATOMS & MOLECULES OF ATOMIC DESIGN
Lots of
LIVING DOCUMENTATION
all disciplines
for
ENGINEERS
TECHNICAL WRITERS
DESIGNERS
CONTRIBUTORS
CONSIDER EVEN A SIMPLE BUTTON COMPONENT
CONSIDER EVEN A SIMPLE BUTTON COMPONENT
CONSIDER EVEN A SIMPLE BUTTON COMPONENT
‘intuitive
familiar’
equals
Raskin, ‘94
WORKFLOWS
governance of
system extensibility
The
Delivering
Flexible 

Design SystemsDesign Systems
Flexible
Delivering
Delivering
Flexible 

Design Systems
Flexible
RESPONSIVEDESIGN
Assuming of course
…yeah? Not up for debate, right?
CONSIDER A DROPDOWN ON WEB & MOBILE (REACT NATIVE)
FEATURESHOW MANY IS “TOO MANY”?
STYLES
STYLESCSS? INLINE STYLES?
DO YOU NEED BOTH?
are you
one brand?
many?or
λ-CALCULUS OF COLOR SELECTION
λ-CALCULUS OF COLOR SELECTION
λ-CALCULUS OF COLOR SELECTION
λ-CALCULUS OF COLOR SELECTION
WHAT IF A BRAND WANTS TO USE “SECONDARY” FOR “PRIMARY” BUTTON?
MORE BUTTON-SPECIFIC VARIABLES FOR REBINDING
In λ-calculus this is an “α-conversion”
Delivering
Flexible 

Design SystemsDesign Systems
Flexible
Delivering
Delivering
Flexible 

Design Systems
Delivering
STAGESof
DELIVERY
DEVELOP
& PUBLISH
& PROMOTE
& MAINTAIN
& ROLLOUT
DEVELOPWHERE WORKFLOW IS KING
EASY
Make it
contributors
for any new
ENTRY POINT
Treat every
a
FIRST INTERACTION
as though
IT COULD BE
small module
the
small module
the
most easily
is
understood
monorepo
Using a
monorepo
Using a
YOUR PACKAGES/**/README.MD STILL MATTERS!
diligence
requires
AND –– npm home your-package
Use 

Storybook

(cross platform is still a little rough)
Use 

Storybook

(cross platform is still a little rough)
storybook
Just use
color me
seriously
impressed
HAVEan
EXAMPLE
STRUCTURE
imagineNow
25+ examples
EXACTLYWHAT’S A BETTER APPROACH?
AS SIMPLE
possible with
as
CLEAR REQUIRE / IMPORT USAGE
DESIGN DOCUMENTATION
PLATFORM SPECIFIC EXAMPLES
ZERO CONFIG, SANE DEFAULTS
DOCZis solving
SIMILAR
CHALLENGES
storybook
but
is
DEVELOPMENT-FOCUSED
MORE FLEXIBLE
…NOT A FULL SOLUTION
npm install @exemplar/storybook-react
https://github.com/godaddy/exemplar
EXEMPLAR
evolving to
is
USE STORYBOOK PRESETS
SUPPORT DESIGN DOCS (MDX)
API DOCS (REACT-DOCGEN)
SUPPORT MULTIPLE TOOLS (DOCZ)
PUBLISHWHAT COULD GO WRONG?
PRODUCTIONbegins at
PUBLISH TIME
can break
publishing
NPM INSTALL & UNIT TESTS
UPSTREAM BUILD TOOLCHAINS
REACT NATIVE APPS
MISCONFIGURED CONSUMERS
PROMOTE... CONTINUOUS DEPLOYMENT
AND THE NATURE OF DESIGN SYSTEMS
too many unknowns
there are simply
…WHEN OPERATING AT
LARGE ENOUGH SCALE ANYWAY
Let’s
ROLLOUTTO PRODUCTION!
WARNING: CONSUMER BUNDLES SHOULD
NOT INCLUDE YOUR DESIGN SYSTEM OR
DEPENDENCIES THAT CHANGE INFREQUENTLY
PLEASE BE ADVISED.
vendor
bundle
USE A
vendor
bundle
USE A
VENDOR.MIN.JS
REACT
REACT-DOM
REACT-INTL
DESIGN-SYSTEM.MIN.JS
BUTTON
DROPDOWN
…ETC.
APPLICATION.MIN.JS
There should only be
one true version
There should only be
one true version
design system
of your
in production
Your computer
npm publish
your design system
npm
Your computer
npm publish
your design system
all your users
any
install
version
they want
npm
Your computer
npm publish
your design system
all your users
any
install
version
they want
npm
get different versions!
consistent
delivery
ENFORCE
or
face peril
centralized deployment
benefits of
FIX BUGS FASTER ACROSS SITES
EASILY REBRAND YOUR SYSTEM
ROLLBACK ANY BREAKS QUICKLY
BETTER INSIGHTS INTO USAGE
…SOUNDS GREAT!
BUT HOW DO I DO IT?
I’M GLAD YOU ASKED!
webpack
externals
EXPOSE
and
version them
webpack
externals?
WHAT ARE
ANY ORDINARY WEBPACK BUNDLE
MODULE LOADER – THE “FACTORY”
ANY ORDINARY WEBPACK BUNDLE
MODULE LOADER – THE “FACTORY”
MODULE 0
ANY ORDINARY WEBPACK BUNDLE
MODULE LOADER – THE “FACTORY”
MODULE 0module.exports = /* module 0’s code */
ANY ORDINARY WEBPACK BUNDLE
MODULE LOADER – THE “FACTORY”
MODULE 0module.exports = /* module 0’s code */
MODULE 1module.exports = /* module 1’s code */
MODULE 2module.exports = /* module 2’s code */
MODULE 3module.exports = /* module 3’s code */
ANY ORDINARY WEBPACK BUNDLE
MODULE LOADER – THE “FACTORY”
MODULE 0module.exports = /* module 0’s code */
MODULE 1module.exports = /* module 1’s code */
MODULE 2module.exports = /* module 2’s code */
MODULE 3module.exports = /* module 3’s code */
module.exports = window.path.to.module2;
ANY WEBPACK.CONFIG.JS
ANY WEBPACK.CONFIG.JS
CONSISTENTasset
DISTRIBUTION
Your computer
npm publish
your design system
Your computer
npm publish
your design system
all your users
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
get the same version!
REMOVING
EXTERNALS
RENAMING
EXTERNALS
ENSURING
PROPER USAGE
UNEXPECTED
CONSEQUENCES
YOU MUSThave a
ROLLBACK

PLAN
warehouse.ai
Using
npm dist-tag add @your/package@1.2.3 prod
makes this trivial
... TRY IT OUT!
HTTPS://GITHUB.COM/GODADDY/WAREHOUSE.AI
MAINTAINFIXING FIRES BEFORE THEY HAPPEN
DEVOPSWHEN THINGS DON’T GO AS PLANNED
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
get the same version!
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
UNEXPECTED
DOWN-TIME
get the same version!
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
requests
next
will
FAIL!
UNEXPECTED
DOWN-TIME
get the same version!
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
requests
next
will
FAIL!
UNEXPECTED
DOWN-TIME
get the same version!
AND

THEN
EVERY

CONSUMER

IS

DOWN
single point
the
FAILURE
of
LET’S TALKabout
CACHING
CACHING
PERFORMANCE
SAVING COPIES
……FOR SPEED
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
+80ms
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
+80ms
+80ms for your users
Your computer
npm publish
Warehouse.ai
your design system
all your users
new
request
versions
every Xm
+80ms
use
always
cached
copy
+80ms for your users+0ms for your users
FAILOVER
CACHINGSAVING COPIES
……FOR LATER
Your computer
npm publish
Warehouse.ai
your design system
everyone is still up!
new
request
versions
every Xm
requests
next
will
FAIL!
UNEXPECTED
DOWN-TIME AND

THEN
EVERY

CONSUMER

IS

DOWN
Your computer
npm publish
Warehouse.ai
your design system
everyone is still up!
new
request
versions
every Xm
requests
next
will
FAIL!
UNEXPECTED
DOWN-TIME
the
use
FAILOVER
CACHE
OUT-OF-BAND-CACHE
THIS IS WHY
WE CREATED
A REUSABLE
npm install out-of-band-cache
HYGIENEPAYING TECHNICAL DEBT
... YOU CAN’T AVOID IT
... YOU CAN’T AVOID IT
WARNING: ON A LONG ENOUGH TIMELINE,
IF LEFT UNCHECKED ALL SOFTWARE WILL
CRUMBLE FROM TECHNICAL DEBT
PLEASE BE ADVISED.
UPGRADING TO NEW VERSIONS: REACT, BABEL, WEBPACK, ETC.
REMOVING DEPRECATED APIS E.G. componentWillReceiveProps, etc.
USING LATEST APIS – E.G. PORTALS, REACT@16 CONTEXT, etc.
IT ADDS UP
QUICKLYUPGRADING TO NEW VERSIONS: REACT, BABEL, WEBPACK, ETC.
REMOVING DEPRECATED APIS E.G. componentWillReceiveProps, etc.
USING LATEST APIS – E.G. PORTALS, REACT@16 CONTEXT, etc.
MAY THE SOURCE BE WITH YOU
SLIDES WILL BE POSTED ON TWITTER SHORTLY – FOLLOW ME @INDEXZERO
THANKS FOR LISTENING!

More Related Content

Similar to Flexible design systems by Charlie Robbins

OpenY: Scaling and Sharing with Custom Drupal Distribution
OpenY: Scaling and Sharing with Custom Drupal DistributionOpenY: Scaling and Sharing with Custom Drupal Distribution
OpenY: Scaling and Sharing with Custom Drupal Distribution
DrupalCamp Kyiv
 

Similar to Flexible design systems by Charlie Robbins (20)

3stages Wdn08 V3
3stages Wdn08 V33stages Wdn08 V3
3stages Wdn08 V3
 
DockerCon SF 2015: Keynote Day 1
DockerCon SF 2015: Keynote Day 1DockerCon SF 2015: Keynote Day 1
DockerCon SF 2015: Keynote Day 1
 
Snaps on open suse
Snaps on open suseSnaps on open suse
Snaps on open suse
 
App locker
App lockerApp locker
App locker
 
Weave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 RecapWeave User Group Talk - DockerCon 2017 Recap
Weave User Group Talk - DockerCon 2017 Recap
 
Developer Experience at Zalando - Handelsblatt Strategisches IT-Management 2019
Developer Experience at Zalando - Handelsblatt Strategisches IT-Management 2019Developer Experience at Zalando - Handelsblatt Strategisches IT-Management 2019
Developer Experience at Zalando - Handelsblatt Strategisches IT-Management 2019
 
What is the Secure Supply Chain and the Current State of the PHP Ecosystem
What is the Secure Supply Chain and the Current State of the PHP EcosystemWhat is the Secure Supply Chain and the Current State of the PHP Ecosystem
What is the Secure Supply Chain and the Current State of the PHP Ecosystem
 
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...
TechMentor Fall, 2011 - Packaging Software for Automated Deployment with Wind...
 
THE BASIC TOOLS
THE BASIC TOOLSTHE BASIC TOOLS
THE BASIC TOOLS
 
Linux intro
Linux introLinux intro
Linux intro
 
Puppet for SysAdmins
Puppet for SysAdminsPuppet for SysAdmins
Puppet for SysAdmins
 
Developing Software using Python and Django to solve real life problems
Developing Software using Python and Django to solve real life problemsDeveloping Software using Python and Django to solve real life problems
Developing Software using Python and Django to solve real life problems
 
Introduction to Operating Systems
Introduction to Operating SystemsIntroduction to Operating Systems
Introduction to Operating Systems
 
Life & Work of Butler Lampson | Turing100@Persistent
Life & Work of Butler Lampson | Turing100@PersistentLife & Work of Butler Lampson | Turing100@Persistent
Life & Work of Butler Lampson | Turing100@Persistent
 
Developing and Testing Cross Compatible Modules with PowerShell Core
Developing and Testing Cross Compatible Modules with PowerShell CoreDeveloping and Testing Cross Compatible Modules with PowerShell Core
Developing and Testing Cross Compatible Modules with PowerShell Core
 
Ubuntu Core 技术详解
Ubuntu Core 技术详解Ubuntu Core 技术详解
Ubuntu Core 技术详解
 
8 good reasons to learn docker
8 good reasons to learn docker8 good reasons to learn docker
8 good reasons to learn docker
 
DockerDay2015: Keynote
DockerDay2015: KeynoteDockerDay2015: Keynote
DockerDay2015: Keynote
 
OpenY: Scaling and Sharing with Custom Drupal Distribution
OpenY: Scaling and Sharing with Custom Drupal DistributionOpenY: Scaling and Sharing with Custom Drupal Distribution
OpenY: Scaling and Sharing with Custom Drupal Distribution
 
Linux
LinuxLinux
Linux
 

More from OdessaJS Conf

'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021
'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021
'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021
OdessaJS Conf
 
'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021
'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021
'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021
OdessaJS Conf
 
"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021
"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021
"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021
OdessaJS Conf
 
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
OdessaJS Conf
 
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
OdessaJS Conf
 
Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...
Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...
Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...
OdessaJS Conf
 
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
OdessaJS Conf
 
Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021
Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021
Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021
OdessaJS Conf
 
"NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні...
"NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні..."NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні...
"NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні...
OdessaJS Conf
 
'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko
'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko
'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko
OdessaJS Conf
 
'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by Dmytro Gusev
'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by  Dmytro Gusev'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by  Dmytro Gusev
'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by Dmytro Gusev
OdessaJS Conf
 
'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko
'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko
'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko
OdessaJS Conf
 
'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...
'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...
'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...
OdessaJS Conf
 
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
 'MICROFRONTENDS WITH REACT' by Liliia Karpenko 'MICROFRONTENDS WITH REACT' by Liliia Karpenko
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
OdessaJS Conf
 

More from OdessaJS Conf (20)

'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021
'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021
'GraphQL Schema Design' by Borys Mohyla. OdessaJS'2021
 
'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021
'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021
'How i came up with my talk' by Yurii Artiukh. OdessaJS'2021
 
"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021
"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021
"Is there life in react without redux" by Babich Sergiy. OdessaJS'2021
 
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
Олексій Павленко. CONTRACT PROTECTION ON THE FRONTEND SIDE: HOW TO ORGANIZE R...
 
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
Андрій Троян. Розробка мікросервісів з NestJS. OdessaJS'2021
 
Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...
Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...
Олексій Гончар "Використання Electron в розробці корпоративної відео-мессeндж...
 
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
Максим Климишин "Що такого особливого у пропозиції вартості шаблону Micro Fro...
 
Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021
Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021
Павло Галушко. GOOD CODE MYTHS. OdessaJS'2021
 
"NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні...
"NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні..."NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні...
"NODEJS & GRAPHQL COOKBOOK. LET’S TALK ABOUT MICRO-SERVICES" by Антон Чередні...
 
'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko
'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko
'BUILDING ANGULAR APPS WITH NX' by Anastasia Necheporenko
 
'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by Dmytro Gusev
'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by  Dmytro Gusev'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by  Dmytro Gusev
'IS THERE JAVASCRIPT ON SWAGGER PLUGINS?' by Dmytro Gusev
 
'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko
'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko
'ETHEREUM SMART CONTRACTS ON JS' by Yaroslav Dvorovenko
 
'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...
'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...
'GOLANG USAGE IN DEVELOPMENT OF NODE.JS APPLICATIONS (NODE.JS: IN GO WE TRUST...
 
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
 'MICROFRONTENDS WITH REACT' by Liliia Karpenko 'MICROFRONTENDS WITH REACT' by Liliia Karpenko
'MICROFRONTENDS WITH REACT' by Liliia Karpenko
 
'Web performance metrics' BY ROMAN SAVITSKYI at OdessaJS'2020
'Web performance metrics' BY ROMAN SAVITSKYI at OdessaJS'2020'Web performance metrics' BY ROMAN SAVITSKYI at OdessaJS'2020
'Web performance metrics' BY ROMAN SAVITSKYI at OdessaJS'2020
 
'STORY OF ANOTHER ANIMATION' by YURII ARTYUKH at OdessaJS'2020
'STORY OF ANOTHER ANIMATION' by  YURII ARTYUKH at OdessaJS'2020'STORY OF ANOTHER ANIMATION' by  YURII ARTYUKH at OdessaJS'2020
'STORY OF ANOTHER ANIMATION' by YURII ARTYUKH at OdessaJS'2020
 
'JavaScript was invented in Odessa' by DMITRIY GUSEV at OdessaJS'2020
'JavaScript was invented in Odessa' by DMITRIY GUSEV at OdessaJS'2020'JavaScript was invented in Odessa' by DMITRIY GUSEV at OdessaJS'2020
'JavaScript was invented in Odessa' by DMITRIY GUSEV at OdessaJS'2020
 
'Why svelte' by BORYS MOHYLA at OdessaJS'2020
'Why svelte' by BORYS MOHYLA at OdessaJS'2020'Why svelte' by BORYS MOHYLA at OdessaJS'2020
'Why svelte' by BORYS MOHYLA at OdessaJS'2020
 
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
 
'Tensorflow.js in real life' by Pavlo Galushko at OdessaJS'2020
'Tensorflow.js in real life' by Pavlo Galushko at OdessaJS'2020'Tensorflow.js in real life' by Pavlo Galushko at OdessaJS'2020
'Tensorflow.js in real life' by Pavlo Galushko at OdessaJS'2020
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
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...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Flexible design systems by Charlie Robbins