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
260
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 Timișoara
slobodan
0
83
AI Agents with JavaScript
slobodan
0
330
Prompt Engineering for Developers @ AWS Community Day Adria 2024
slobodan
0
250
From 1 to 250 Lambda Functions in Production: Evolving a Startup Serverless Architecture @ Serverless Days Milan
slobodan
0
130
Building Production-Ready Apps with AI
slobodan
0
240
Advanced GraphQL Architectures: Serverless Event Sourcing and CQRS @ ReactSummit
slobodan
0
230
CofounderGPT - Can an AI be a better co-founder than a human?
slobodan
0
160
From 1 to 201 Lambda functions in production: Evolving a serverless startup architecture
slobodan
0
300
Evolving a serverless startup architecture - ArmadaJS 2022
slobodan
2
490
Other Decks in Programming
See All in Programming
[FEConf 2025] 모노레포 절망편, 14개 레포로 부활하기까지 걸린 1년
mmmaxkim
0
730
ライブ配信サービスの インフラのジレンマ -マルチクラウドに至ったワケ-
mirrativ
1
250
TanStack DB ~状態管理の新しい考え方~
bmthd
2
230
コーディングは技術者(エンジニア)の嗜みでして / Learning the System Development Mindset from Rock Lady
mackey0225
2
550
TROCCO×dbtで実現する人にもAIにもやさしいデータ基盤
nealle
0
300
実践!App Intents対応
yuukiw00w
1
320
物語を動かす行動"量" #エンジニアニメ
konifar
14
5.3k
あまり知られていない MCP 仕様たち / MCP specifications that aren’t widely known
ktr_0731
0
280
Jakarta EE Core Profile and Helidon - Speed, Simplicity, and AI Integration
ivargrimstad
0
110
兎に角、コードレビュー
mitohato14
0
140
パスタの技術
yusukebe
1
390
Portapad紹介プレゼンテーション
gotoumakakeru
1
130
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
183
54k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Code Reviewing Like a Champion
maltzj
525
40k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
470
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
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@