Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
How to build a website that will (eventually) w...
Search
Slobodan Stojanović
October 20, 2017
Programming
1
230
How to build a website that will (eventually) work on Mars - Hackference 2017
Hackference 2017 -
https://2017.hackference.co.uk
Slobodan Stojanović
October 20, 2017
Tweet
Share
More Decks by Slobodan Stojanović
See All by Slobodan Stojanović
Prompt Engineering for Developers @ AWS Community Day Adria 2024
slobodan
0
210
From 1 to 250 Lambda Functions in Production: Evolving a Startup Serverless Architecture @ Serverless Days Milan
slobodan
0
120
Building Production-Ready Apps with AI
slobodan
0
220
Advanced GraphQL Architectures: Serverless Event Sourcing and CQRS @ ReactSummit
slobodan
0
200
CofounderGPT - Can an AI be a better co-founder than a human?
slobodan
0
140
From 1 to 201 Lambda functions in production: Evolving a serverless startup architecture
slobodan
0
280
Evolving a serverless startup architecture - ArmadaJS 2022
slobodan
2
470
Serverless Office Hours | Serverless for Startups
slobodan
0
210
From 1 to 101 Lambda Functions in Production: Evolving a Serverless Architecture - Node Congress 2021
slobodan
1
330
Other Decks in Programming
See All in Programming
SpringBoot3.4の構造化ログ #kanjava
irof
2
990
技術を根付かせる / How to make technology take root
kubode
1
250
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
時計仕掛けのCompose
mkeeda
1
300
個人アプリを2年ぶりにアプデしたから褒めて / I just updated my personal app, praise me!
lovee
0
340
iOSエンジニアから始める visionOS アプリ開発
nao_randd
3
130
Amazon Bedrock Multi Agentsを試してきた
tm2
1
290
仕様変更に耐えるための"今の"DRY原則を考える / Rethinking the "Don't repeat yourself" for resilience to specification changes
mkmk884
0
160
Kubernetes History Inspector(KHI)を触ってみた
bells17
0
230
sappoRo.R #12 初心者セッション
kosugitti
0
250
CI改善もDatadogとともに
taumu
0
120
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
Featured
See All Featured
The Invisible Side of Design
smashingmag
299
50k
We Have a Design System, Now What?
morganepeng
51
7.4k
Building an army of robots
kneath
303
45k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Building Applications with DynamoDB
mza
93
6.2k
How STYLIGHT went responsive
nonsquared
98
5.4k
Practical Orchestrator
shlominoach
186
10k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Transcript
#hackference @slobodan_ HOW TO BUILD A WEBSITE THAT WILL EVENTUALLY
WORK ON MARS
#hackference @slobodan_ I am Slobodan Stojanović $50PG$MPVE)PSJ[POBOE +4#FMHSBEF.FFUVQPSHBOJ[FS FGGPSUMFTTTFSWFSMFTTDPN UXJUUFSDPNTMPCPEBO@
#hackference @slobodan_ WARNING 5IFNBJOHPBMPGUIJTUBMLJTUPFYQMPSFTPNFPGUIF OFXUFDIOPMPHJFTJOBCJUVOFYQFDUFEXBZ NPTUPG UIPTFUIJOHTXJMMQSPCBCMZXPSLDPNQMFUFMZEJGGFSFOUBU UIFNPNFOUIVNBOTDPMPOJ[F.BST 5IJTJTOPUEFFQUFDIOJDBMUBMLBOEJUDPOUBJOTTPNF MFWFMPGTJNQMJGJFEGBDUT
#hackference @slobodan_
#hackference @slobodan_ 8IZPOFBSUIXPVMEBOZPOFEPUIBU WHY MARS?!
#hackference @slobodan_ -FUsTTFFXIBUEPXFLOPXBCPVUJU MARS
#hackference @slobodan_ ↟*UsTBQMBOFU ↟"QQSPYJNBUFMZUIFTBNFMBOENBTTXJUI&BSUI ↟.BSTEBZ 4PM JTEIN ↟.BSTZFBSJTEBZT ZFBST ↟5FNQFSBUVSFDBOCF$
↟.BSUJBOTVSGBDFHSBWJUZJTPOMZ PGUIF&BSUIT ↟5IFSFBSFTJHOTPGMJRVJEXBUFSPO.BST
#hackference @slobodan_ ↟0OMZNJTTJPOTUP.BST IBWFCFFOTVDDFTTGVM ↟5FNQFSBUVSFDBOBMTPCF$ ↟.BSTIBTUIFMBSHFTUEVTUTUPSNT JOUIFTPMBSTZTUFN ↟3BEJBUJPO ↟*UEPFTOsUIBWFBOBUNPTQIFSF
#hackference @slobodan_ 4FSJPVTMZ 85' &BSUIJTQFSGFDU SJHIU WAIT! WHY WOULD ANYONE
GO TO MARS!?
#hackference @slobodan_ 0GDPVSTFJUJT+VTUBTLUIFEJOPTBVST
#hackference @slobodan_ 5PBUMFBTUPOFNPSFEBUBDFOUFSPSBWBJMBCJMJUZ[POF OK, SO WE NEED A FAILOVER, RIGHT?
#hackference @slobodan_ /P OPUUIBUPOF JNBHJOFUIFPOFUIBUTPNFCPEZXPVMEVTF AND NOW, IMAGINE YOU HAVE
A WEBSITE
#hackference @slobodan_ ! SO, LET’S GO BACK TO MARS
#hackference @slobodan_ IT’S THE ONLY PLANET INHABITED BY ROBOTS ONLY
#hackference @slobodan_ UNTIL ONE DAY IN 2025… *O+BOVBSZ UIFOBHBJOJO j
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_ .BTMPXsTIJFSBSDIZPGOFFET
#hackference @slobodan_ WI-FI .BTMPXsTIJFSBSDIZPGOFFET
#hackference @slobodan_
#hackference @slobodan_ Chrome v123 on Illudium Q-36 Space Modulator 15:42
Hm, what browser and network are you using? 15:18 Your **** website doesn’t work! 15:17 WTF?! 15:42
#hackference @slobodan_ :PVSTFSWFSTTFFNTUPCFPL*UTIPVMEKVTUXPSL SJHIU WHAT’S THE PROBLEM?
#hackference @slobodan_ -JHIUUSBWFMTCFUXFFOBOENJOVUFTGSPN&BSUIUP.BST DISTANCE
#hackference @slobodan_ /P UIFZBSFTUJMMCVJMEJOHUIFJSEBUBDFOUFSUIFSF LATENCY? AH, CAN YOU JUST DEPLOY
IT TO MARS-WEST-1 ON AWS?
#hackference @slobodan_ /P UIFZBSFTUJMMCVJMEJOHUIFJSEBUBDFOUFSUIFSF LATENCY? AH, CAN YOU JUST DEPLOY
IT TO MARS-WEST-1 ON AWS?
#hackference @slobodan_ /P/FUGMJYBOEWJEFPPSBVEJPDBMMT TPSSZ.BUU%BNPO NO REALTIME COMMUNICATION
#hackference @slobodan_ /P/FUGMJYBOEWJEFPPSBVEJPDBMMT TPSSZ.BUU%BNPO NO REALTIME COMMUNICATION
#hackference @slobodan_ WHAT CAN WE DO WHEN WE DON’T HAVE
ENOUGH SERVERS?
#hackference @slobodan_ 5IBUsTRVJUFQPQVMBSOPX SJHIU GO SERVERLESS?
#hackference @slobodan_
#hackference @slobodan_ 8IBUTBQQ 'BDFCPPL.FTTFOHFS 4POJD4DSFXESJWFS HOW DO WE COMMUNICATE IN
THE SPACE?
#hackference @slobodan_
#hackference @slobodan_ :FT UIFTBNFSBEJPXBWFTZPVBSFSFDFJWJOHXJUIBDBSSBEJP RADIO WAVES
#hackference @slobodan_
#hackference @slobodan_ INTERPLANETARY INTERNET
#hackference @slobodan_ "DPNQVUFSOFUXPSLBSDIJUFDUVSFUIBUBEESFTTFTMBDLPG DPOUJOVPVTDPOOFDUJWJUZ DELAY/DISRUPTION TOLERANT NETWORKING
#hackference @slobodan_ 4UBOEBSEJOUFSOFU
#hackference @slobodan_ %5/
#hackference @slobodan_ /FUXPSLTBSFIBSE BUMFBTUGPSNF MFUsTGPDVTPOUIJOHTXFLOPX LET’S GO BACK TO THE
WEB DEVELOPMENT
#hackference @slobodan_
#hackference @slobodan_ 0VSXFCTJUFXPVMEXPSLFWFOXIFOUIFTFSWFSJTOPUBWBJMBCMF OFFLINE ACCESS WITH SERVICE WORKERS
#hackference @slobodan_ 4FSWJDFXPSLFSTFTTFOUJBMMZBDUBT QSPYZTFSWFSTUIBUTJUCFUXFFOXFC BQQMJDBUJPOT BOEUIFCSPXTFSBOE OFUXPSL XIFOBWBJMBCMF
#hackference @slobodan_ ↟&OBCMFFGGFDUJWFPGGMJOFFYQFSJFODFT ↟*OUFSDFQUOFUXPSLSFRVFTUTBOEUBLJOH BQQSPQSJBUFBDUJPOCBTFEPOXIFUIFSUIF OFUXPSLJTBWBJMBCMF ↟"MMPXBDDFTTUPQVTIOPUJGJDBUJPOT ↟#BDLHSPVOETZOD"1*T
#hackference @slobodan_ TXKT NBJOKT
#hackference @slobodan_ TXKT NBJOKT
#hackference @slobodan_ 8FEPOPUXBOUUPTFOEUPPNVDI"1*DBMMT CFDBVTFUIFZBSFOPUDIFBQ LESS API CALLS? GRAPHQL
#hackference @slobodan_ "(SBQI2-RVFSZJTBTUSJOHJOUFSQSFUFE CZBTFSWFSUIBUSFUVSOTEBUBJOB TQFDJGJFEGPSNBU
#hackference @slobodan_
#hackference @slobodan_ 4UPSBHFXPVMECFVTFGVM UIFOXFEPOsUEFQFOEPOUIFTFSWFSBMMUIFUJNF STORE THINGS LOCALLY WITH INDEXEDDB
#hackference @slobodan_ *OEFYFE%#JTBMPXMFWFM"1*GPSDMJFOUTJEF TUPSBHFPGTJHOJGJDBOUBNPVOUTPGTUSVDUVSFEEBUB JODMVEJOHGJMFTCMPCT 5IJT"1*VTFTJOEFYFTUPFOBCMFIJHIQFSGPSNBODF TFBSDIFTPGUIJTEBUB
#hackference @slobodan_ ↟,FZWBMVFQBJST ↟#VJMUPOBUSBOTBDUJPOBMEBUBCBTFNPEFM ↟.PTUMZBTZODISPOPVT ↟*UVTFT%0.FWFOUTUPOPUJGZZPVXIFO SFTVMUTBSFBWBJMBCMF ↟OP42- ↟4BNFPSJHJOQPMJDZ
#hackference @slobodan_ 4ZODPVSMPDBMEBUBCBTFXIFOFWFSTFSWFSJTBWBJMBCMF DATA SYNCHRONIZATION? POUCHDB
#hackference @slobodan_ 1PVDI%#JTBOPQFOTPVSDF+BWB4DSJQU EBUBCBTFJOTQJSFECZ"QBDIF$PVDI%#UIBU JTEFTJHOFEUPSVOXFMMXJUIJOUIFCSPXTFS
#hackference @slobodan_ *UFOBCMFTBQQMJDBUJPOTUPTUPSFEBUBMPDBMMZXIJMF PGGMJOF UIFOTZODISPOJ[FJUXJUI$PVDI%#BOE DPNQBUJCMFTFSWFSTXIFOUIFBQQMJDBUJPOJTCBDL POMJOF LFFQJOHUIFVTFSTEBUBJOTZODOPNBUUFS XIFSFUIFZOFYUMPHJO
#hackference @slobodan_
#hackference @slobodan_ 8IZTUPQUIFSF 8IBUBCPVUUIFSFRVFTUT BACKGROUND SYNC
#hackference @slobodan_ #BDLHSPVOETZODJTBOFXXFC"1*UIBUMFUTZPV EFGFSBDUJPOTVOUJMUIFVTFSIBTTUBCMF DPOOFDUJWJUZ 5IJTJTVTFGVMGPSFOTVSJOHUIBUXIBUFWFSUIF VTFSXBOUTUPTFOE JTBDUVBMMZTFOU
#hackference @slobodan_
#hackference @slobodan_ )BOEMFMBSHFVQMPBEEPXOMPBETJOUIFCBDLHSPVOE BACKGROUND DOWNLOADING/UPLOADING WITH SERVICE WORKERS
#hackference @slobodan_ 48DBDIJOHDBOGBJMJGZPVDMPTFUIF CSPXTFSXIJMFDBDIJOHCJHBTTFUT .PSFJOGP IUUQTXJDHHJUIVCJPCBDLHSPVOEGFUDI
#hackference @slobodan_ ↟&OBCMFCBDLHSPVOEDBDIJOHPGNVMUJQMFSFTPVSDFT ↟&OBCMFCBDLHSPVOEVQMPBEJOHPGNVMUJQMFSFTPVSDFT ↟"MMPXUIF04UPIBOEMFUIFGFUDI TPUIFCSPXTFS EPFTOUOFFEUPSVO .PSFJOGP IUUQTXJDHHJUIVCJPCBDLHSPVOEGFUDI
#hackference @slobodan_ ↟"MMPXUIF04UPTIPX6*UPJOEJDBUFUIFQSPHSFTT PGUIFGFUDI ↟"MMPXUIF04UPEFBMXJUIQPPSDPOOFDUJWJUZCZ QBVTJOHSFTVNJOHUIFEPXOMPBEVQMPBE ↟"MMPXUIFBQQUPSFBDUUPGBJMVSFPGUIFGFUDI .PSFJOGP IUUQTXJDHHJUIVCJPCBDLHSPVOEGFUDI
#hackference @slobodan_
#hackference @slobodan_ %POsUVTFUIFTFSWFSXIFOFWFSZPVEPOsUSFBMMZOFFEUP PEER-TO-PEER CONNECTION WITH WEBRTC
#hackference @slobodan_ 8FC35$JTBGSFF PQFOQSPKFDUUIBUQSPWJEFT CSPXTFSTBOENPCJMFBQQMJDBUJPOTXJUI3FBM 5JNF$PNNVOJDBUJPOT 35$ DBQBCJMJUJFTWJB TJNQMF"1*T
#hackference @slobodan_ ↟.FEJB4USFBN BLBHFU6TFS.FEJB ↟35$1FFS$POOFDUJPO ↟35$%BUB$IBOOFM 8FC35$JNQMFNFOUTUISFF"1*T
#hackference @slobodan_
#hackference @slobodan_ 8FC5PSSFOUJTBTUSFBNJOHUPSSFOUDMJFOUGPSUIFXFCCSPXTFS WEB TORRENT
#hackference @slobodan_ 8FC5PSSFOUJTXSJUUFODPNQMFUFMZJO+BWB4DSJQUmUIF MBOHVBHFPGUIFXFCmBOEVTFT8FC35$GPSQFFS UPQFFSUSBOTQPSUXIFOFWFSQPTTJCMF /PCSPXTFSQMVHJOT FYUFOTJPOT PSJOTUBMMBUJPOJT SFRVJSFEUPVTF8FC5PSSFOUJOZPVSCSPXTFS
#hackference @slobodan_ 8IZ
#hackference @slobodan_ t*NBHJOFBQFFSUPQFFS:PV5VCFXIFSFWJFXFST IFMQUPIPTUUIFTJUFTDPOUFOU #ZNBLJOH#JU5PSSFOUFBTJFSUPVTF XFDBOHFU NPSFQFPQMFUPQBSUJDJQBUFBOEUBLFUIFGJSTUTUFQT UPSFEFDFOUSBMJ[JOHUIF*OUFSOFUu
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_ " WHAT IF WE CAN LOAD HTML, CSS
AND JAVASCRIPT VIA P2P CONNECTION?
#hackference @slobodan_
#hackference @slobodan_ OQNJOTUBMMIZQFSESJWF MEET HYPERDRIVE
#hackference @slobodan_ "GJMFTIBSJOHOFUXPSLCBTFEPOSBCJOGJMF DIVOLJOHBOEBQQFOEPOMZGFFETPGEBUB WFSJGJFECZNFSLMFUSFFT .PSFJOGP IUUQTHJUIVCDPNEBUQSPKFDUEPDT
#hackference @slobodan_ .PSFJOGP IUUQTHJUIVCDPNEBUQSPKFDUEPDT
#hackference @slobodan_ )ZQFSESJWFJTUIFQFFSUPQFFSEBUBEJTUSJCVUJPO QSPUPDPMUIBUQPXFST%BU *UDPOTJTUTPGUXPQBSUT .PSFJOGP IUUQTHJUIVCDPNEBUQSPKFDUEPDT
#hackference @slobodan_ 'JSTUUIFSFJTIZQFSDPSFXIJDIJTUIFDPSFQSPUPDPM BOETXBSNUIBUIBOEMFTEJTUSJCVUJOHBQQFOEPOMZ MPHTPGBOZCJOBSZEBUB .PSFJOGP IUUQTHJUIVCDPNEBUQSPKFDUEPDT
#hackference @slobodan_ 5IFTFDPOEQBSUJTIZQFSESJWFXIJDIBEETB GJMFTZTUFNTQFDJGJDQSPUPDPMPOUPQPGIZQFSDPSF .PSFJOGP IUUQTHJUIVCDPNEBUQSPKFDUEPDT
#VDB17 @slobodan_ http://dat-data.com DAT
#hackference @slobodan_ IUUQTJQGTJP INTERPLANETARY FILE SYSTEM
#hackference @slobodan_ IUUQTCFBLFSCSPXTFSDPN BEAKER BROWSER
#hackference @slobodan_ IUUQTCFBLFSCSPXTFSDPN
#hackference @slobodan_ IUUQTCFBLFSCSPXTFSDPN
#hackference @slobodan_
#hackference @slobodan_ 5IJTTPMWFTKVTUBTNBMMQBSUPGUIFQSPCMFNT WHAT OTHER PROBLEMS WE NEED TO SOLVE?
#hackference @slobodan_ ↟5JNFTUBNQT ↟4UPSJOHBOEDIFDLJOHTFTTJPO ↟4FDVSJUZBOEQSJWBDZ ↟)PXEPXFUFTUUIFFYUSFNFTJUVBUJPOT ↟"OENBOZNBOZNPSF
#hackference @slobodan_ # THE MESSAGE?
#hackference @slobodan_ WE NOW KNOW HOW TO BUILD AN INSTAGRAM
FOR MARS? .BUU%BNPOOFFETBQMBDFUPTIBSFGPPEJNBHFT SJHIU
#hackference @slobodan_ # NO
#hackference @slobodan_ MOST OF THE THINGS WE ARE BUILDING ARE
NOT EVEN WORKING FOR EVERYONE ON THIS PLANET
#hackference @slobodan_ ☝ ONE MORE THING
#hackference @slobodan_ ☝ ONE MORE THING
#hackference @slobodan_ % .BOOJOHT Serverless Apps with Node and Claudia.js
(FUUIFCPPLXJUIPGGXJUIDUXIBDLGFSDPEF
#hackference @slobodan_
#hackference @slobodan_
#hackference @slobodan_ 4FSWFSMFTT"QQTXJUI/PEFBOE$MBVEJBKTQSPNPDPEFDUXIBDLGFS QUESTIONS? IUUQTFGGPSUFMTTTFSWFSMFTTDPN IUUQTUXJUUFSDPNTMPCPEBO@