Static APIs
The unsung heroes
Luciano Mammino (@loige)
2025-01-24

Imagine a world where your API is always available, incredibly fast with great latency worldwide, and almost free...
loige.co

Pre-build all the things!
Through the power of raw JSON files, under the right circumstances, we can achieve all these things!
loige.co
I love STATIC Websites & APIs
- I Built 20+ static websites
- I Built quite a few static APIs
- I like servers, but I like even more to avoid them! 😇
- I love free/cheap stuff! 🤑
... if you recognize this background, we should talk!
loige.co
👋 I'm Luciano (🇮🇹🍕🍝🤌)
👨💻 Senior Architect @ fourTheorem
📔 Co-Author of Node.js Design Patterns 👉
Let's connect!



$ ~ whoami

👋 I'm Luciano (🇮🇹🍕🍝🤌)
👨💻 Senior Architect @ fourTheorem
📔 Co-Author of Crafting Lambda Functions in Rust 👉
Let's connect!



$ ~ whoami

Early-access available at
40% discount! 🤑
Always re-imagining
We are a pioneering technology consultancy focused on AWS and serverless
✉️ Reach out to us at hello@fourTheorem.com
😇 We are always looking for talent: fth.link/careers
We can help with:
Cloud Migrations
Training & Cloud enablement
Building high-performance serverless applications
Cutting cloud costs

loige.co

loige.co
Before we can appreciate
Static APIs, we need to talk about ...
loige.co
The JAMStack!
a.k.a Static Websites
loige.co
A somewhat "regular" website
GET /cars?maxPrice=200
loige.co
GET /cars?maxPrice=200
A somewhat "regular" website
loige.co
GET /cars?maxPrice=200
A somewhat "regular" website
loige.co
GET /cars?maxPrice=200
A somewhat "regular" website
loige.co
- It's hosted on a web server
- It uses a programming language to handle requests and generate responses
- It might access data sources (databases / APIs) dynamically
- Every request is processed dynamically*
* gross oversimplification... e.g. assuming no caching!
A somewhat "regular" website
loige.co
A "Static" website
Build phase
Build server
Web server
loige.co
A "Static" website
Build phase
Build server
Web server
loige.co
A "Static" website
Build phase
Build server
Web server
loige.co
A "Static" website
Build phase
Build server
Web server
loige.co
A "Static" website
Build server
Web server
Live phase
loige.co
A "Static" website
Build server
Web server
Live phase
GET /cars/index.html
loige.co
A "Static" website
Build server
Web server
Live phase
GET /cars/index.html
loige.co
A "Static" website
Build server
Web server
Live phase
GET /cars/index.html
💁♂️ No "dynamic" backend logic!
loige.co
A "Static" website
- All the files (HTML, CSS, images, JS, etc) are pre-generated at build time
- These files are then hosted on a simple web server
- No programming language or database is used to serve requests
- Every request can be served "immediately"
loige.co
A "Static" website
- No backend logic!
- Extremely fast at serving requests
- Easy / Cheap to host
- Easy to scale
- Easy to version / backup
- Security
- No dynamic content
- No realtime data / frequent updates
- No user-generated content
- No dynamic queries
- Content editing might be challenging
- Needs a process to build and release updates
- No customized pages / No login
PROS 👍
CONS 👎
loige.co
Common use cases for Static websites
Personal sites
Blogs
Documentation
Landing pages
Small Business Websites
Events pages
Portfolio / Resume
loige.co
Tools to create Static websites
- Next.js (JS/React)
- Gatsby (JS/React)
- Astro (JS/JSX)
- Nuxt (JS/Vue)
- Jekyll (Ruby)
- Eleventy (JS)
- Zola (Rust)
- MkDocs (Python)
- Pelican (Python)
- ... +360 more
loige.co
Astro: super quick example 🚀
npm create astro@latest
loige.co
Astro: super quick example 🚀
npm run dev

loige.co
Astro: super quick example 🚀
npm run build

Astro: super quick example 🚀
tree dist

💁♂️ Static files that you can take and publish anywhere you like!
loige.co
You can make a Static website really fast by using a ...
CDN!

loige.co
Content Delivery Network
loige.co
Content Delivery Network
~42ms
~72ms
~118ms
~140ms
~150ms
~174ms
💁♂️ Latency increases with distance from the server

loige.co
Content Delivery Network
~42ms
~72ms
~118ms
~140ms
~150ms
~174ms
~32ms
~34ms
~26ms
~70ms
~46ms
~18ms
💁♂️ Many servers around the world with your website files!

loige.co
Common CDN Services
GitHub Pages (Free)
AWS CloudFront
Vercel
Netlify
CloudFlare
Fastly
Akamai
loige.co
What is a (RESTful) API?
loige.co
Application Programming Interface
- Provides a means to extend the functionality of an application
- Exposes a well-defined interface
- RESTful: Uses HTTP and leverages verbs and resources
GET /customers/cus_NffrFeUfNV2Hib
Verb
Resource
loige.co
Application Programming Interface
GET /customers/:id
GET /customers
POST /customers
PUT /customers/:id
PATCH /customers/:id
DELETE /customers/:id
Read
Create
Update
Delete
loige.co
Can we apply the same principles of static websites to APIs?
loige.co
IT DEPENDS!
loige.co
GET /customers/:id
GET /customers
Read
Dynamic 😵
Dynamic 😵
Dynamic 😵
Read only! 🤔
POST /customers
Create
PUT /customers/:id
PATCH /customers/:id
Update
DELETE /customers/:id
Delete
loige.co
GET /customers/cus_01hQb49z89Ib
GET /customers
[
{
"id":"cus_01hQb49z89Hz",
"name":"Alice Smith",
"email":"alice.smith@example.com"
},
{
"id":"cus_01hQb49z89Ia",
"name":"Bob Johnson",
"email":"bob.johnson@email.net"
},
{
"id":"cus_01hQb49z89Ib",
"name":"Charlie Brown",
"email":"charlie.brown@sample.org"
},
{
"id":"cus_01hQb49z89Ic",
"name":"Diana Miller",
"email":"diana.miller@test.co"
},
{
"id":"cus_01hQb49z89Id",
"name":"Ethan Davis",
"email":"ethan.davis@fakemail.com"
},
{
"id":"cus_01hQb49z89Ie",
"name":"Fiona Wilson",
"email":"fiona.wilson@mail.biz"
},
{
"id":"cus_01hQb49z89If",
"name":"George Thomas",
"email":"george.thomas@myemail.io"
},
{
"id":"cus_01hQb49z89Ig",
"name":"Hannah Martinez",
"email":"hannah.martinez@emailtest.net"
},
{
"id":"cus_01hQb49z89Ih",
"name":"Ian Garcia",
"email":"ian.garcia@samplemail.org"
},
{
"id":"cus_01hQb49z89Ii",
"name":"Julia Rodriguez",
"email":"julia.rodriguez@myfakeemail.co"
}
]
{
"id":"cus_01hQb49z89Ib",
"name":"Charlie Brown",
"email":"charlie.brown@sample.org"
}
💁♂️ If we can pre-generate HTML, CSS, and JavaScript, why not pre-generate JSON?
/customers.json
/customers/cus_01hQb49z89Hz.json
/customers/cus_01hQb49z89Ia.json
/customers/cus_01hQb49z89Ib.json
/customers/cus_01hQb49z89Ic.json
...
OK maybe "customers" isn't a great example...
Let's see some other ones!

loige.co
Currency Exchange API
Do you ever need to know what the exchange rate was from currency A to currency B on a given day?
loige.co
Currency Exchange API
https://{DATE}.currency-api.pages.dev/v1/currencies/{CODE}.json
loige.co
Currency Exchange API
https://2025-01-18.currency-api.pages.dev/v1/currencies/eur.json
{
"date":"2025-01-18",
"eur":{
"1inch":2.59035761,
"aave":0.0030579412,
"ada":0.91443675,
"aed":3.77299433,
"afn":75.38101522,
"agix":1.68177016,
"akt":0.312708,
"algo":2.23380918,
"all":98.228838,
"amd":408.66333569,
"amp":110.58609402,
"ang":1.84136373,
"aoa":938.32416799,
"ape":0.86156104,
"apt":0.10560898,
"ar":0.057114921,
"arb":1.24829283,
"ars":1066.53783484,
"atom":0.14560498,
"ats":13.7603,
"aud":1.65888421,
"avax":0.024935658,
"awg":1.83898158,
"axs":0.1537599,
"azm":8732.59426514,
"azn":1.74651885,
"bake":3.95537035,
"bam":1.95583,
"bat":3.91167347,
"bbd":2.05472802,
"bch":0.0020962567,
"bdt":124.83560431,
"bef":40.3399,
"bgn":1.95583,
"bhd":0.38628887,
"bif":3001.40051159,
"bmd":1.02736401,
"bnb":0.0014352234,
"bnd":1.40571089,
"bob":7.10278557,
"brl":6.25158258,
"bsd":1.02736401,
"bsv":0.017657183,
"bsw":14.42175926,
"btc":0.0000098507771,
"btcb":1.9155343,
"btg":0.090506415,
"btn":88.95349909,
"btt":864108.22463947,
"busd":1.02885278,
"bwp":14.46067275,
"byn":3.36392005,
"byr":33639.20047748,
"bzd":2.07017434,
"cad":1.48753132,
"cake":0.40081311,
"cdf":2911.68942963,
"celo":1.50887309,
"cfx":5.7766449,
"chf":0.93999819,
"chz":11.56238544,
"clp":1036.43410255,
"cnh":7.5427782,
"cny":7.5256357,
"comp":0.011608084,
"cop":4461.66505726,
"crc":519.11193487,
"cro":7.01962322,
"crv":0.98874576,
"cspr":57.67350536,
"cuc":1.02736401,
"cup":24.63741045,
"cve":110.27,
"cvx":0.21372526,
"cyp":0.585274,
"czk":25.2621266,
"dai":1.03131015,
"dash":0.02358219,
"dcr":0.066813302,
"dem":1.95583,
"dfi":45.5370813,
"djf":183.10990083,
"dkk":7.46345083,
"doge":2.40934167,
"dop":63.07791263,
"dot":0.13750854,
"dydx":0.70768161,
"dzd":139.50836903,
"eek":15.64664,
"egld":0.027527314,
"egp":51.6127627,
"enj":4.76785301,
"eos":1.06926617,
"ern":15.41046018,
"esp":166.386,
"etb":130.77593923,
"etc":0.036496865,
"eth":0.00029682509,
"eur":1,
"fei":1.06436067,
"fil":0.1779712,
"fim":5.94573,
"fjd":2.39328304,
"fkp":0.84418881,
"flow":1.28851352,
"flr":34.40154471,
"frax":1.0346439,
"frf":6.55957,
"ftt":0.38930863,
"fxs":0.28416571,
"gala":25.23084903,
"gbp":0.84418881,
"gel":2.9199072,
"ggp":0.84418881,
"ghc":154029.15347675,
"ghs":15.40291535,
"gip":0.84418881,
"gmd":73.52997219,
"gmx":0.038812722,
"gnf":8885.0220214,
"gno":0.0040610863,
"grd":340.74999999,
"grt":4.36857106,
"gt":0.050372542,
"gtq":7.92747109,
"gusd":1.03366103,
"gyd":214.84480396,
"hbar":2.8301626,
"hkd":7.99968102,
"hnl":26.15714421,
"hnt":0.19539547,
"hot":375.15256225,
"hrk":7.5345,
"ht":0.84965256,
"htg":134.27726194,
"huf":413.10663519,
"icp":0.091040256,
"idr":16823.18272744,
"iep":0.787564,
"ils":3.66076547,
"imp":0.84418881,
"imx":0.73078178,
"inj":0.041576322,
"inr":88.95349909,
"iqd":1345.90038753,
"irr":43232.55252413,
"isk":145.47709087,
"itl":1936.26999995,
"jep":0.84418881,
"jmd":161.07397167,
"jod":0.72840108,
"jpy":160.59412751,
"kas":6.66434135,
"kava":2.00569262,
"kcs":0.091213367,
"kda":0.96951445,
"kes":133.0494148,
"kgs":89.84301345,
"khr":4138.21115884,
"klay":3.9877996,
"kmf":491.96774999,
"knc":1.67171167,
"kpw":924.62525862,
"krw":1498.13938546,
"ksm":0.030302692,
"kwd":0.31708155,
"kyd":0.8427044,
"kzt":545.13914826,
"lak":22402.94313538,
"lbp":92009.13328766,
"ldo":0.51500858,
"leo":0.10605698,
"link":0.040534003,
"lkr":304.59952173,
"lrc":4.86267758,
"lrd":194.71973763,
"lsl":19.22364124,
"ltc":0.0075719961,
"ltl":3.4528,
"luf":40.3399,
"luna":2.6656913,
"lunc":9780.88324825,
"lvl":0.7028,
"lyd":5.08179567,
"mad":10.32170822,
"mana":1.85368368,
"matic":2.03357499,
"mbx":2.78063007,
"mdl":19.27954905,
"mga":4828.66274604,
"mgf":24143.31373021,
"mina":1.6754043,
"mkd":61.47536353,
"mkr":0.00070335351,
"mmk":2156.28248259,
"mnt":3527.57936879,
"mop":8.23967145,
"mro":408.46852081,
"mru":40.84685208,
"mtl":0.4293,
"mur":48.17821156,
"mvr":15.82566106,
"mwk":1783.31924133,
"mxn":21.36132412,
"mxv":2.55802424,
"myr":4.62721169,
"mzm":65344.16220753,
"mzn":65.34416221,
"nad":19.22364124,
"near":0.17834911,
"neo":0.062007715,
"nexo":0.73949779,
"nft":1975077.24993626,
"ngn":1599.06446556,
"nio":37.75832863,
"nlg":2.20371,
"nok":11.76318356,
"npr":142.39231367,
"nzd":1.84041451,
"okb":0.017674693,
"omr":0.39553102,
"one":36.20351332,
"op":0.52086596,
"ordi":0.037824215,
"pab":1.02736401,
"paxg":0.00038122037,
"pen":3.85604088,
"pepe":50288.34836866,
"pgk":4.16124538,
"php":60.16060759,
"pkr":286.31560696,
"pln":4.2608891,
"pte":200.48199999,
"pyg":8093.92500858,
"qar":3.739605,
"qnt":0.0085285517,
"qtum":0.29756104,
"rol":49766.21724322,
"ron":4.97662172,
"rpl":0.092327376,
"rsd":116.92729963,
"rub":104.95710997,
"rune":0.25499493,
"rvn":47.50878299,
"rwf":1423.63207546,
"sand":1.55233605,
"sar":3.85261504,
"sbd":8.73237784,
"scr":15.46528902,
"sdd":61720.65907281,
"sdg":617.20659073,
"sek":11.49941496,
"sgd":1.40571089,
"shib":42178.76908069,
"shp":0.84418881,
"sit":239.63999999,
"skk":30.126,
"sle":23.32953512,
"sll":23329.53512047,
"snx":0.51923698,
"sol":0.0047222435,
"sos":588.63372655,
"spl":0.17122733,
"srd":36.02207219,
"srg":36022.07219414,
"std":24467.88776316,
"stn":24.46788776,
"stx":0.6078425,
"sui":0.21075423,
"svc":8.9894351,
"syp":13357.53821356,
"szl":19.22364124,
"thb":35.32655116,
"theta":0.41695924,
"tjs":11.21899162,
"tmm":17982.49622448,
"tmt":3.59649924,
"tnd":3.30173182,
"ton":0.18333178,
"top":2.47330622,
"trl":36404175.43933156,
"trx":4.15241667,
"try":36.40417544,
"ttd":6.97547419,
"tusd":1.03002107,
"tvd":1.65888421,
"twd":33.80495616,
"twt":0.83291638,
"tzs":2594.92356637,
"uah":43.48111528,
"ugx":3792.94764795,
"uni":0.068226004,
"usd":1.02736401,
"usdc":1.03142921,
"usdd":1.0324005,
"usdp":1.03142002,
"usdt":1.03101666,
"uyu":45.07401782,
"uzs":13319.65451032,
"val":1936.26999995,
"veb":5647012992.764433,
"ved":56.51943379,
"vef":5651943.37865732,
"ves":56.51943379,
"vet":18.79110412,
"vnd":26016.17136917,
"vuv":127.89019436,
"waves":0.54595499,
"wemix":1.18799815,
"woo":4.65470183,
"wst":2.91891193,
"xaf":655.95699998,
"xag":0.033856096,
"xau":0.00038023317,
"xaut":0.00038239845,
"xbt":0.0000098507771,
"xcd":2.7762884,
"xch":0.043549461,
"xdc":7.42735494,
"xdr":0.79158337,
"xec":26670.98711543,
"xem":37.82549218,
"xlm":2.15213406,
"xmr":0.0045300259,
"xof":655.95699998,
"xpd":0.0010701707,
"xpf":119.33174224,
"xpt":0.0010874679,
"xrp":0.31648228,
"xtz":0.72888966,
"yer":255.90364266,
"zar":19.22364124,
"zec":0.018861684,
"zil":43.95759118,
"zmk":28480.83968433,
"zmw":28.48083968,
"zwd":371.80303588,
"zwg":26.95121532,
"zwl":67343.65392907
}
}
loige.co
Random Facts about Etna 🌋
loige.co
Follow me twitch.tv/loige
The actual Static API 🌋
{
"id": 51,
"fact": "The circumference of Mount Etna is 149 Km (93 miles).",
"url": "https://lmammino.github.io/etna-facts/51.json"
}
curl 'https://lmammino.github.io/etna-facts/51.json' | jq .
😎 Do you know some cool facts about Etna? Contribute with a PR!
loige.co
The (self-proclaimed) most awesome weekly newsletter about fullstack web development

loige.co
Process automation using Step Functions

loige.co
Static API
Static API
Tech quotes 🗣️
{
"id": 17,
"text": "The art challenges the technology, and the technology inspires the art",
"author": {
"id": "john-lasseter",
"name": "John Lasseter",
"description": "Director",
"wiki": "https://en.wikipedia.org/wiki/John_Lasseter",
"url": "https://fullStackbulletin.github.io/tech-quotes/authors/john-lasseter.json"
},
"url": "https://fullStackbulletin.github.io/tech-quotes/quotes/17.json"
}
curl https://fullStackbulletin.github.io/tech-quotes/quotes/17.json | jq .
😎 Do you know some cool tech quotes? Contribute with a PR!
loige.co
FullStack books 📚
{
"slug": "art-of-scalability-the-2-martin-abbott-michael-fisher",
"title": "Art of Scalability, The",
"subtitle": "Scalable Web Architecture, Processes, and Organizations for the Modern Enterprise",
"edition": 2,
"authors": [
{
"name": "Martin Abbott",
"slug": "martin-abbott",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/martin-abbott.json"
},
{
"name": "Michael Fisher",
"slug": "michael-fisher",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/michael-fisher.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/art-of-scalability-the-2-martin-abbott-michael-fisher.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/0134032802",
"amazon_uk": "https://www.amazon.co.uk/dp/0134032802"
},
"description": "The Comprehensive, Proven Approach to IT Scalability-Updated with New Strategies, Technologies, and Case Studies\nIn The Art of Scalability, Second Edition, leading scalability consultants Martin L. Abbott and Michael T. Fisher cover everything you need to know to smoothly scale products and services for any requirement. This extensively revised edition reflects new technologies, strategies, and lessons, as well as new case studies from the authors' pioneering consulting practice, AKF Partners.\nWriting for technical and nontechnical decision-makers, Abbott and Fisher cover everything that impacts scalability, including architecture, process, people, organization, and technology. Their insights and recommendations reflect more than thirty years of experience at companies ranging from eBay to Visa, and Salesforce.com to Apple.\nYou'll find updated strategies for structuring organizations to maximize agility and scalability, as well as new insights into the cloud (IaaS/PaaS) transition, NoSQL, DevOps, business metrics, and more. Using this guide's tools and advice, you can systematically clear away obstacles to scalability-and achieve unprecedented IT and business performance.",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/art-of-scalability-the-2-martin-abbott-michael-fisher.json",
"descriptionHtml": "<p>The Comprehensive, Proven Approach to IT Scalability-Updated with New Strategies, Technologies, and Case Studies\nIn The Art of Scalability, Second Edition, leading scalability consultants Martin L. Abbott and Michael T. Fisher cover everything you need to know to smoothly scale products and services for any requirement. This extensively revised edition reflects new technologies, strategies, and lessons, as well as new case studies from the authors' pioneering consulting practice, AKF Partners.\nWriting for technical and nontechnical decision-makers, Abbott and Fisher cover everything that impacts scalability, including architecture, process, people, organization, and technology. Their insights and recommendations reflect more than thirty years of experience at companies ranging from eBay to Visa, and Salesforce.com to Apple.\nYou'll find updated strategies for structuring organizations to maximize agility and scalability, as well as new insights into the cloud (IaaS/PaaS) transition, NoSQL, DevOps, business metrics, and more. Using this guide's tools and advice, you can systematically clear away obstacles to scalability-and achieve unprecedented IT and business performance.</p>\n"
}
curl https://fullstackbulletin.github.io/fullstack-books/books/art-of-scalability-the-2-martin-abbott-michael-fisher.json | jq .
😎 Do you know some cool full-stack books? Contribute with a PR!
loige.co
Access Patterns ⛕
How do you expect data to be accessed?
loige.co
Access Patterns ⛕
By ID (with incremental IDs)
/etna-facts/0.json
/etna-facts/1.json
/etna-facts/2.json
/etna-facts/3.json
/etna-facts/?.json

loige.co
Access Patterns ⛕
By ID (with incremental IDs)
/etna-facts/stats.json
{
"total": 58,
"all": "https://lmammino.github.io/etna-facts/all.json",
"first": "https://lmammino.github.io/etna-facts/0.json",
"last": "https://lmammino.github.io/etna-facts/57.json",
"urlPrefix": "https://lmammino.github.io/etna-facts/"
}
This also allows us to get a random fact
( using a random value in [0, 57] )
loige.co
Access Patterns ⛕
By ID (with non predictable IDs)
/fullstack-books/books/eloquent-javascript-4-marijn-haverbeke.json
??? 😰
/fullstack-books/books/ids.json
[
"eloquent-javascript-4-marijn-haverbeke",
"tidy-first-1-kent-beck",
"articulating-design-decisions-2-tom-greever",
"building-progressive-web-apps-1-tal-ater",
"build-1-tony-fadell",
"designing-for-behavior-change-2-stephen-wendel",
"the-design-of-everyday-things-1-don-norman",
"dont-make-me-think-revisited-3-steve-krug",
"first-things-first-1-stephen-r-covey-a-roger-merrill-rebecca-r-merrill",
"how-to-think-like-leonardo-da-vinci-1-michael-j-gelb",
"how-we-got-to-now-1-steven-johnson",
"indistractable-1-nir-eyal",
"tragic-design-1-jonathan-shariat-cynthia-savard-saucier",
"linchpin-1-seth-godin",
"on-writing-1-stephen-king",
"start-ugly-1-david-duchemin",
"the-subtle-art-of-not-giving-a-fck-1-mark-manson",
"web-design-playground-1-paul-mcfedries",
"the-principles-of-beautiful-web-design-1-jason-beaird-alex-walker-james-george",
"building-the-web-of-things-1-dominique-guinard-vlad-trifa",
"mastering-api-architecture-1-james-gough-daniel-bryant-matthew-auburn",
"nodejs-design-patterns-third-edition-3-mario-casciaro-luciano-mammino",
"distributed-systems-with-nodejs-1-thomas-hunter-ii",
"node-cookbook-4-bethany-griggs",
"ultimate-nodejs-for-cross-platform-app-development-1-ramesh-kumar",
"event-driven-architecture-in-golang-1-michael-stack",
"javascript-7-david-flanagan",
"full-stack-graphql-applications-1-william-lyon",
"modern-javascript-for-the-impatient-1-cay-horstmann",
"the-complete-developer-1-martin-krause",
"learn-react-with-typescript-second-edition-2-carl-rippon",
"hacking-the-system-design-interview-1-stanley-chiang",
"the-road-to-graphql-1-robin-wieruch",
"python-crash-course-3rd-edition-3-eric-matthes",
"fluent-python-2-luciano-ramalho",
"python-for-data-analysis-3-wes-mckinney",
"introduction-to-algorithms-fourth-edition-4-thomas-h-cormen-charles-e-leiserson-ronald-l-rivest-clifford-stein",
"grokking-algorithms-1-aditya-bhargava",
"the-algorithm-design-manual-texts-in-computer-science-3-steven-s-skiena",
"algorithms-to-live-by-1-brian-christian-tom-griffiths",
"the-self-taught-computer-scientist-1-cory-althoff",
"the-rust-programming-language-2nd-edition-2-steve-klabnik-carol-nichols",
"rust-for-rustaceans-1-jon-gjengset",
"programming-rust-2-jim-blandy-jason-orendorff-leonora-tindall",
"rust-in-action-1-tim-mcnamara",
"zero-to-production-in-rust-1-luca-palmieri",
"hands-on-rust-1-herbert-wolverson",
"design-patterns-1-erich-gamma-richard-helm-ralph-johnson-john-vlissides",
"information-architecture-4-louis-rosenfeld-peter-morville-jorge-arango",
"designing-data-intensive-applications-1-martin-kleppmann",
"the-linux-command-line-2nd-edition-1-william-shotts",
"the-pragmatic-programmer-1-andrew-hunt-david-thomas",
"css-secrets-1-lea-verou",
"javascript-1-douglas-crockford",
"how-javascript-works-1-douglas-crockford",
"elasticsearch-1-clinton-gormley-zachary-tong",
"cassandra-3-jeff-carpenter-eben-hewitt",
"art-of-scalability-the-2-martin-abbott-michael-fisher",
"elixir-in-action-third-edition-3-sasa-juric",
"docker-in-action-second-edition-2-jeff-nickoloff-stephen-kuenzli",
"sql-pocket-guide-4-alice-zhao",
"laravel-3-matt-stauffer",
"kafka-2-gwen-shapira-todd-palino-rajini-sivaram-krit-petty",
"learn-you-a-haskell-for-great-good-1-miran-lipovaca",
"learn-python-the-hard-way-3-zed-shaw",
"think-python-3-allen-b-downey",
"introduction-to-networking-1-dr-charles-r-severance",
"architecture-patterns-with-python-1-harry-percival-bob-gregory",
"fundamentals-of-software-architecture-1-mark-richards-neal-ford",
"fullstack-vue-1-hassan-djirdeh-nate-murray-ari-lerner",
"learning-vue-1-maya-shavin",
"building-micro-frontends-1-luca-mezzalira",
"serverless-development-on-aws-1-sheen-brisals-luke-hedger",
"full-stack-serverless-1-nader-dabit",
"javascript-for-impatient-programmers-1-dr-axel-rauschmayer",
"web-application-security-2-andrew-hoffman",
"grokking-web-application-security-1-malcolm-mcdonald",
"the-tangled-web-1-michal-zalewski",
"react-2-stoyan-stefanov",
"hacking-apis-1-corey-j-ball",
"programming-phoenix-14-1-chris-mccord-bruce-tate-jose-valim",
"webassembly-1-brian-sletten",
"web-scraping-with-python-3-ryan-mitchell",
"acing-the-system-design-interview-1-zhiyong-tan",
"secrets-of-the-javascript-ninja-2-john-resig-bear-bibeault-josip-maras",
"the-devops-handbook-1-gene-kim-jez-humble-patrick-debois-john-willis-nicole-forsgren",
"accelerating-server-side-development-with-fastify-1-manuel-spigolon-maksim-sinik-matteo-collina",
"building-microservices-2-sam-newman",
"the-tao-of-microservices-1-richard-rodger",
"ai-as-a-service-1-peter-elger-eoin-shanaghy",
"rust-atomics-and-locks-1-mara-bos",
"accelerate-1-nicole-forsgren-phd-jez-humble-gene-kim",
"nodejs-secure-coding-1-liran-tal",
"software-engineering-at-google-1-titus-winters-tom-manshreck-hyrum-wright",
"observability-engineering-1-charity-majors-liz-fong-jones-george-miranda",
"the-rational-software-engineer-1-mykyta-chernenko",
"building-evolutionary-architectures-2-neal-ford-rebecca-parsons-patrick-kua-pramod-sadalage",
"software-architecture-metrics-1-christian-ciceri-dave-farley-neal-ford-andrew-harmel-law-michael-keeling-carola-lilienthal-joao-rosa-alexander-von-zitzewitz-rene-weiss-eoin-woods",
"communication-patterns-1-jacqueline-read",
"fullstack-d3-and-data-visualization-1-amelia-wattenberger",
"real-world-svelte-1-tan-li-hau",
"multithreaded-javascript-1-thomas-hunter-ii-bryan-english",
"fluent-react-1-tejas-kumar",
"aws-cookbook-1-john-culkin-mike-zazon",
"essential-typescript-5-third-edition-3-adam-freeman",
"typescript-cookbook-1-stefan-baumgartner",
"learning-typescript-1-josh-goldberg",
"designing-interfaces-3-jenifer-tidwell-charles-brewer-aynne-valencia",
"laws-of-ux-1-jon-yablonski",
"introduction-to-the-theory-of-computation-3-michael-sipser",
"the-art-of-computer-programming-vol-1-3-donald-knuth",
"functional-light-javascript-1-kyle-simpson",
"restful-web-api-patterns-and-practices-cookbook-1-mike-amundsen",
"continuous-delivery-pipelines-1-dave-farley",
"foundations-of-scalable-systems-1-ian-gorton",
"high-performance-browser-networking-1-ilya-grigorik"
]
loige.co
Access Patterns ⛕
GIVE ME EVERYTHING!
/fullstack-books/books/all.json
If all the data is small enough 🤗
[
{
"slug": "eloquent-javascript-4-marijn-haverbeke",
"title": "Eloquent JavaScript",
"edition": 4,
"authors": [
{
"name": "Marijn Haverbeke",
"slug": "marijn-haverbeke",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/marijn-haverbeke.json"
}
],
"links": {
"free": "https://eloquentjavascript.net/"
},
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/eloquent-javascript-4-marijn-haverbeke.jpg",
"description": "JavaScript lies at the heart of almost every modern web application, from social apps like Twitter to browser-based game frameworks like Phaser and Babylon. Though simple for beginners to pick up and play with, JavaScript is a flexible, complex language that you can use to build full-scale applications.\nThis much anticipated and thoroughly revised third edition of Eloquent JavaScript dives deep into the JavaScript language to show you how to write beautiful, effective code. It has been updated to reflect the current state of JavaScript and web browsers and includes brand-new material on features like class notation, arrow functions, iterators, async functions, template strings, and block scope. A host of new exercises have also been added to test your skills and keep you on track.\nAs with previous editions, Haverbeke continues to teach through extensive examples and immerses you in code from the start, while exercises and full-chapter projects give you hands-on experience with writing your own programs. You start by learning the basic structure of the JavaScript language as well as control structures, functions, and data structures to help you write basic programs. Then you'll learn about error handling and bug fixing, modularity, and asynchronous programming before moving on to web browsers and how JavaScript is used to program them. As you build projects such as an artificial life simulation, a simple programming language, and a paint program, you'll learn how to:\n- Understand the essential elements of programming, including syntax, control, and data\n- Organize and clarify your code with object-oriented and functional programming techniques\n- Script the browser and make basic web applications\n- Use the DOM effectively to interact with browsers\n- Harness Node.js to build servers and utilities\nIsn't it time you became fluent in the language of the Web?",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/eloquent-javascript-4-marijn-haverbeke.json",
"descriptionHtml": "<p>JavaScript lies at the heart of almost every modern web application, from social apps like Twitter to browser-based game frameworks like Phaser and Babylon. Though simple for beginners to pick up and play with, JavaScript is a flexible, complex language that you can use to build full-scale applications.\nThis much anticipated and thoroughly revised third edition of Eloquent JavaScript dives deep into the JavaScript language to show you how to write beautiful, effective code. It has been updated to reflect the current state of JavaScript and web browsers and includes brand-new material on features like class notation, arrow functions, iterators, async functions, template strings, and block scope. A host of new exercises have also been added to test your skills and keep you on track.\nAs with previous editions, Haverbeke continues to teach through extensive examples and immerses you in code from the start, while exercises and full-chapter projects give you hands-on experience with writing your own programs. You start by learning the basic structure of the JavaScript language as well as control structures, functions, and data structures to help you write basic programs. Then you'll learn about error handling and bug fixing, modularity, and asynchronous programming before moving on to web browsers and how JavaScript is used to program them. As you build projects such as an artificial life simulation, a simple programming language, and a paint program, you'll learn how to:</p>\n<ul>\n<li>Understand the essential elements of programming, including syntax, control, and data</li>\n<li>Organize and clarify your code with object-oriented and functional programming techniques</li>\n<li>Script the browser and make basic web applications</li>\n<li>Use the DOM effectively to interact with browsers</li>\n<li>Harness Node.js to build servers and utilities\nIsn't it time you became fluent in the language of the Web?</li>\n</ul>\n"
},
{
"slug": "tidy-first-1-kent-beck",
"title": "Tidy First?",
"subtitle": "A Personal Exercise in Empirical Software Design",
"edition": 1,
"authors": [
{
"name": "Kent Beck",
"slug": "kent-beck",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/kent-beck.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/tidy-first-1-kent-beck.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/1098151240",
"amazon_uk": "https://www.amazon.co.uk/dp/1098151240"
},
"description": "Messy code is a nuisance. \"Tidying\" code, to make it more readable, requires breaking it up into manageable sections. In this practical guide, author Kent Beck, creator of Extreme Programming and pioneer of software patterns, suggests when and where you might apply tidyings to improve your code while keeping the overall structure of the system in mind.\nInstead of trying to master tidying all at once, this book lets you try out a few examples that make sense for your problem. If you have a big function containing many lines of code, you'll learn how to logically divide it into smaller chunks. Along the way, you'll learn the theory behind software design: coupling, cohesion, discounted cash flows, and optionality.\nThis book helps you:\n- Understand the basic theory of how software design works and the forces that act on it\n- Explore the difference between changes to a system's behavior and changes to its structure\n- Improve your programming experience by sometimes tidying first and sometimes tidying after\n- Learn how to make large changes in small, safe steps\n- Approach design as a human activity with diverging incentives",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/tidy-first-1-kent-beck.json",
"descriptionHtml": "<p>Messy code is a nuisance. "Tidying" code, to make it more readable, requires breaking it up into manageable sections. In this practical guide, author Kent Beck, creator of Extreme Programming and pioneer of software patterns, suggests when and where you might apply tidyings to improve your code while keeping the overall structure of the system in mind.\nInstead of trying to master tidying all at once, this book lets you try out a few examples that make sense for your problem. If you have a big function containing many lines of code, you'll learn how to logically divide it into smaller chunks. Along the way, you'll learn the theory behind software design: coupling, cohesion, discounted cash flows, and optionality.\nThis book helps you:</p>\n<ul>\n<li>Understand the basic theory of how software design works and the forces that act on it</li>\n<li>Explore the difference between changes to a system's behavior and changes to its structure</li>\n<li>Improve your programming experience by sometimes tidying first and sometimes tidying after</li>\n<li>Learn how to make large changes in small, safe steps</li>\n<li>Approach design as a human activity with diverging incentives</li>\n</ul>\n"
},
{
"slug": "articulating-design-decisions-2-tom-greever",
"title": "Articulating Design Decisions",
"subtitle": "Communicate with Stakeholders, Keep Your Sanity, and Deliver the Best User Experience",
"edition": 2,
"authors": [
{
"name": "Tom Greever",
"slug": "tom-greever",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/tom-greever.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/articulating-design-decisions-2-tom-greever.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/1492079227",
"amazon_uk": "https://www.amazon.co.uk/dp/1492079227"
},
"description": "Talking to people about your designs might seem like a basic skill, but it can be difficult to do well. In many cases, how you communicate with stakeholders, clients, and other nondesigners may be more important than the designs themselves. Because if you can't get their support, your work will never see the light of day--no matter how good it is.\nThis practical guide focuses on principles, tactics, and actionable methods for presenting your designs. Whether you design apps, websites, or products, you'll learn how to get support from people who have influence over the project with the goal of creating the best user experience.\n- Walk through the process of preparing and presenting your designs\n- Understand stakeholder perspectives and learn how to empathize with them\n- Cultivate both implicit and explicit listening skills\n- Learn tactics and strategies for expressing the most effective response to feedback\n- Create the right documentation for your decisions to avoid repeated conversations\n- Discover why the way you follow through is just as important as the meeting itself",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/articulating-design-decisions-2-tom-greever.json",
"descriptionHtml": "<p>Talking to people about your designs might seem like a basic skill, but it can be difficult to do well. In many cases, how you communicate with stakeholders, clients, and other nondesigners may be more important than the designs themselves. Because if you can't get their support, your work will never see the light of day--no matter how good it is.\nThis practical guide focuses on principles, tactics, and actionable methods for presenting your designs. Whether you design apps, websites, or products, you'll learn how to get support from people who have influence over the project with the goal of creating the best user experience.</p>\n<ul>\n<li>Walk through the process of preparing and presenting your designs</li>\n<li>Understand stakeholder perspectives and learn how to empathize with them</li>\n<li>Cultivate both implicit and explicit listening skills</li>\n<li>Learn tactics and strategies for expressing the most effective response to feedback</li>\n<li>Create the right documentation for your decisions to avoid repeated conversations</li>\n<li>Discover why the way you follow through is just as important as the meeting itself</li>\n</ul>\n"
},
{
"slug": "building-progressive-web-apps-1-tal-ater",
"title": "Building Progressive Web Apps",
"subtitle": "Bringing the Power of Native to the Browser",
"edition": 1,
"authors": [
{
"name": "Tal Ater",
"slug": "tal-ater",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/tal-ater.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/building-progressive-web-apps-1-tal-ater.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/1491961651",
"amazon_uk": "https://www.amazon.co.uk/dp/1491961651"
},
"description": "Move over native apps. New progressive web apps have capabilities that will soon make you obsolete. With this hands-on guide, web developers and business execs will learn how—and why—to develop web apps that take advantage of features that have so far been exclusive to native apps. Features that include fast load times, push notifications, offline access, homescreen shortcuts, and an entirely app-like experience.\nBy leveraging the latest browser APIs, progressive web apps combine all of the benefits of native apps, while avoiding their issues. Throughout the book, author Tal Ater shows you how to improve a simple website for the fictional Gotham Imperial Hotel into a modern progressive web app. Plus:\n- Understand how service workers work, and use them to create sites that launch in an instant, regardless of the user's internet connection\n- Create full-screen web apps that launch from the phone's homescreen just like native apps\n- Re-engage users with push notifications, even days after they have left your site\n- Embrace offline-first and build web apps that gracefully handle loss of connectivity\n- Explore new UX opportunities and challenges presented by progressive web apps",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/building-progressive-web-apps-1-tal-ater.json",
"descriptionHtml": "<p>Move over native apps. New progressive web apps have capabilities that will soon make you obsolete. With this hands-on guide, web developers and business execs will learn how—and why—to develop web apps that take advantage of features that have so far been exclusive to native apps. Features that include fast load times, push notifications, offline access, homescreen shortcuts, and an entirely app-like experience.\nBy leveraging the latest browser APIs, progressive web apps combine all of the benefits of native apps, while avoiding their issues. Throughout the book, author Tal Ater shows you how to improve a simple website for the fictional Gotham Imperial Hotel into a modern progressive web app. Plus:</p>\n<ul>\n<li>Understand how service workers work, and use them to create sites that launch in an instant, regardless of the user's internet connection</li>\n<li>Create full-screen web apps that launch from the phone's homescreen just like native apps</li>\n<li>Re-engage users with push notifications, even days after they have left your site</li>\n<li>Embrace offline-first and build web apps that gracefully handle loss of connectivity</li>\n<li>Explore new UX opportunities and challenges presented by progressive web apps</li>\n</ul>\n"
},
{
"slug": "build-1-tony-fadell",
"title": "Build",
"edition": 1,
"authors": [
{
"name": "Tony Fadell",
"slug": "tony-fadell",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/tony-fadell.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/build-1-tony-fadell.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/1787634108",
"amazon_uk": "https://www.amazon.co.uk/dp/1787634108"
},
"description": "THE NEW YORK TIMES BESTSELLER. An unorthodox guide to making things worth making, from 'the father of the iPod and iPhone' and the creator of Nest. Everyone deserves a mentor. For every career crisis, every fork in the road, you need someone to talk to. Someone who's been there before, who knows exactly how wobbly and conflicted you feel, who can give it to you.\nHere's how to think about choosing a job.\nHere's how to be a better manager.\nHere's how to approach design.Here's how to start a company.\nHere's how to run it.\nTony Fadell learned all these lessons the hard way. He spent the first 10 years of his career in Silicon Valley failing spectacularly, and the next 20 building some of the most impactful devices in history - the iPod, iPhone, and Nest Learning Thermostat. He has enough stories and advice about leadership, design, startups, mentorship, decision making, devastating screwups, and unbelievable success to fill an encyclopedia. So that's what this book is. An advice encyclopedia. A mentor in a box. But Tony's doesn't follow the standard Silicon Valley credo that you have to radically reinvent everything you do. His advice is unorthodox because it's old school. Because it's based on human nature, not gimmicks. Tony keeps things he just tells you what works. He gives you exactly what you need to make things worth making.\nPRAISE FOR BUILD 'This is the most fun - and the most fascinating - memoir of curiosity and invention that I've ever read.'\nMalcolm Gladwell,Host of the Revisionist History podcast. Author of Outliers and Talking to Strangers .\n'Whether you're looking to build a great product, a creative team, a strong culture, or a meaningful career, Tony's guidance will get you thinking and rethinking.'\nAdam Grant,Author of Think Again & Host of the TED podcast WorkLife",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/build-1-tony-fadell.json",
"descriptionHtml": "<p>THE NEW YORK TIMES BESTSELLER. An unorthodox guide to making things worth making, from 'the father of the iPod and iPhone' and the creator of Nest. Everyone deserves a mentor. For every career crisis, every fork in the road, you need someone to talk to. Someone who's been there before, who knows exactly how wobbly and conflicted you feel, who can give it to you.\nHere's how to think about choosing a job.\nHere's how to be a better manager.\nHere's how to approach design.Here's how to start a company.\nHere's how to run it.\nTony Fadell learned all these lessons the hard way. He spent the first 10 years of his career in Silicon Valley failing spectacularly, and the next 20 building some of the most impactful devices in history - the iPod, iPhone, and Nest Learning Thermostat. He has enough stories and advice about leadership, design, startups, mentorship, decision making, devastating screwups, and unbelievable success to fill an encyclopedia. So that's what this book is. An advice encyclopedia. A mentor in a box. But Tony's doesn't follow the standard Silicon Valley credo that you have to radically reinvent everything you do. His advice is unorthodox because it's old school. Because it's based on human nature, not gimmicks. Tony keeps things he just tells you what works. He gives you exactly what you need to make things worth making.\nPRAISE FOR BUILD 'This is the most fun - and the most fascinating - memoir of curiosity and invention that I've ever read.'\nMalcolm Gladwell,Host of the Revisionist History podcast. Author of Outliers and Talking to Strangers .\n'Whether you're looking to build a great product, a creative team, a strong culture, or a meaningful career, Tony's guidance will get you thinking and rethinking.'\nAdam Grant,Author of Think Again & Host of the TED podcast WorkLife</p>\n"
},
{
"slug": "designing-for-behavior-change-2-stephen-wendel",
"title": "Designing for Behavior Change",
"subtitle": "Applying Psychology and Behavioral Economics",
"edition": 2,
"authors": [
{
"name": "Stephen Wendel",
"slug": "stephen-wendel",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/stephen-wendel.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/designing-for-behavior-change-2-stephen-wendel.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/1492056030",
"amazon_uk": "https://www.amazon.co.uk/dp/1492056030"
},
"description": "Designers and managers hope their products become essential for users―integrated into their lives like Instagram, Lyft, and others have become. Such deep integration isn't accidental: it's a process of careful design and iterative learning, especially for technology companies. This guide shows you how to apply behavioral science―research that supports many products―to help your users achieve their goals using your product.\nIn this updated edition, Stephen Wendel, head of behavioral science at Morningstar, takes you step-by-step through the process of incorporating behavioral science into product design and development. Product managers, UX and interaction designers, and data analysts will learn a simple and effective approach for identifying target users and behaviors, building the product, and gauging its effectiveness.\n- Learn the three main strategies to help people change behavior\n- Identify behaviors your target audience seeks to change―and obstacles that stand in their way\n- Develop effective designs that are enjoyable to use\n- Measure your product's impact and learn ways to improve it\n- Combine behavioral science with data science to pinpoint problems and test potential solutions",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/designing-for-behavior-change-2-stephen-wendel.json",
"descriptionHtml": "<p>Designers and managers hope their products become essential for users―integrated into their lives like Instagram, Lyft, and others have become. Such deep integration isn't accidental: it's a process of careful design and iterative learning, especially for technology companies. This guide shows you how to apply behavioral science―research that supports many products―to help your users achieve their goals using your product.\nIn this updated edition, Stephen Wendel, head of behavioral science at Morningstar, takes you step-by-step through the process of incorporating behavioral science into product design and development. Product managers, UX and interaction designers, and data analysts will learn a simple and effective approach for identifying target users and behaviors, building the product, and gauging its effectiveness.</p>\n<ul>\n<li>Learn the three main strategies to help people change behavior</li>\n<li>Identify behaviors your target audience seeks to change―and obstacles that stand in their way</li>\n<li>Develop effective designs that are enjoyable to use</li>\n<li>Measure your product's impact and learn ways to improve it</li>\n<li>Combine behavioral science with data science to pinpoint problems and test potential solutions</li>\n</ul>\n"
},
{
"slug": "the-design-of-everyday-things-1-don-norman",
"title": "The Design Of Everyday Things",
"edition": 1,
"authors": [
{
"name": "Don Norman",
"slug": "don-norman",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/don-norman.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/the-design-of-everyday-things-1-don-norman.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/0465050654",
"amazon_uk": "https://www.amazon.co.uk/dp/0465050654"
},
"description": "One of the world's great designers shares his vision of \"the fundamental principles of great and meaningful design\", that's \"even more relevant today than it was when first published\" (Tim Brown, CEO, IDEO). Even the smartest among us can feel inept as we fail to figure out which light switch or oven burner to turn on, or whether to push, pull, or slide a door.\nThe fault, argues this ingenious -- even liberating -- book, lies not in ourselves, but in product design that ignores the needs of users and the principles of cognitive psychology. The problems range from ambiguous and hidden controls to arbitrary relationships between controls and functions, coupled with a lack of feedback or other assistance and unreasonable demands on memorization. The Design of Everyday Things shows that good, usable design is possible. The rules are simple: make things visible, exploit natural relationships that couple function and control, and make intelligent use of constraints. \nThe goal: guide the user effortlessly to the right action on the right control at the right time. \nThe Design of Everyday Things is a powerful primer on how -- and why -- some products satisfy customers while others only frustrate them.",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/the-design-of-everyday-things-1-don-norman.json",
"descriptionHtml": "<p>One of the world's great designers shares his vision of "the fundamental principles of great and meaningful design", that's "even more relevant today than it was when first published" (Tim Brown, CEO, IDEO). Even the smartest among us can feel inept as we fail to figure out which light switch or oven burner to turn on, or whether to push, pull, or slide a door.\nThe fault, argues this ingenious -- even liberating -- book, lies not in ourselves, but in product design that ignores the needs of users and the principles of cognitive psychology. The problems range from ambiguous and hidden controls to arbitrary relationships between controls and functions, coupled with a lack of feedback or other assistance and unreasonable demands on memorization. The Design of Everyday Things shows that good, usable design is possible. The rules are simple: make things visible, exploit natural relationships that couple function and control, and make intelligent use of constraints. \nThe goal: guide the user effortlessly to the right action on the right control at the right time. \nThe Design of Everyday Things is a powerful primer on how -- and why -- some products satisfy customers while others only frustrate them.</p>\n"
},
{
"slug": "dont-make-me-think-revisited-3-steve-krug",
"title": "Don't Make Me Think, Revisited",
"subtitle": "A Common Sense Approach to Web Usability (3rd Edition) (Voices That Matter)",
"edition": 3,
"authors": [
{
"name": "Steve Krug",
"slug": "steve-krug",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/steve-krug.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/dont-make-me-think-revisited-3-steve-krug.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/0321965515",
"amazon_uk": "https://www.amazon.co.uk/dp/0321965515"
},
"description": "Since Don't Make Me Think was first published in 2000, hundreds of thousands of Web designers and developers have relied on usability guru Steve Krug's guide to help them understand the principles of intuitive navigation and information design. Witty, commonsensical, and eminently practical, it's one of the best-loved and most recommended books on the subject.\nNow Steve returns with fresh perspective to reexamine the principles that made Don't Make Me Think a classic-with updated examples and a new chapter on mobile usability. And it's still short, profusely illustrated…and best of all-fun to read.\nIf you've read it before, you'll rediscover what made Don't Make Me Think so essential to Web designers and developers around the world. If you've never read it, you'll see why so many people have said it should be required reading for anyone working on Web sites.\n“After reading it over a couple of hours and putting its ideas to work for the past five years, I can say it has done more to improve my abilities as a Web designer than any other book.”\n-Jeffrey Zeldman, author of Designing with Web Standards .",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/dont-make-me-think-revisited-3-steve-krug.json",
"descriptionHtml": "<p>Since Don't Make Me Think was first published in 2000, hundreds of thousands of Web designers and developers have relied on usability guru Steve Krug's guide to help them understand the principles of intuitive navigation and information design. Witty, commonsensical, and eminently practical, it's one of the best-loved and most recommended books on the subject.\nNow Steve returns with fresh perspective to reexamine the principles that made Don't Make Me Think a classic-with updated examples and a new chapter on mobile usability. And it's still short, profusely illustrated…and best of all-fun to read.\nIf you've read it before, you'll rediscover what made Don't Make Me Think so essential to Web designers and developers around the world. If you've never read it, you'll see why so many people have said it should be required reading for anyone working on Web sites.\n“After reading it over a couple of hours and putting its ideas to work for the past five years, I can say it has done more to improve my abilities as a Web designer than any other book.”\n-Jeffrey Zeldman, author of Designing with Web Standards .</p>\n"
},
{
"slug": "first-things-first-1-stephen-r-covey-a-roger-merrill-rebecca-r-merrill",
"title": "First Things First",
"edition": 1,
"authors": [
{
"name": "Stephen R. Covey",
"slug": "stephen-r-covey",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/stephen-r-covey.json"
},
{
"name": "A. Roger Merrill",
"slug": "a-roger-merrill",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/a-roger-merrill.json"
},
{
"name": "Rebecca R. Merrill",
"slug": "rebecca-r-merrill",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/rebecca-r-merrill.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/first-things-first-1-stephen-r-covey-a-roger-merrill-rebecca-r-merrill.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/0684802031",
"amazon_uk": "https://www.amazon.co.uk/dp/0684802031"
},
"description": "From the author that brought you the New York Times bestseller The 7 Habits of Highly Effective People comes a guide to prioritizing your personal and professional goals.\nI'm getting more done in less time, but where are the rich relationships, the inner peace, the balance, the confidence that I'm doing what matters most and doing it well?Does this nagging question haunt you, even when you feel you are being your most efficient? If so, First Things First can help you understand why we so often prioritize things that are unimportant to both our larger goals and our inner happiness. From the author that brought you the New York Times bestseller The 7 Habits of Highly Effective People comes a guide to building your work on the principles of effectiveness so that your life can spent cultivating genuine relationships, investing in pursuits you enjoy, and achieving balance in both your personal and professional lives.\nIn First Things First, Stephen M. R. Covey advocates categorizing tasks by urgency and importance so that you can focus on what actually needs to be done in the limited amount of time that you have. Using personal examples and insight from years of business experience, he argues for a new way of looking at your “to-do” list. Rather than offering you another clock, First Things First provides you with a compass, because where you're headed is more important than how fast you're going.",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/first-things-first-1-stephen-r-covey-a-roger-merrill-rebecca-r-merrill.json",
"descriptionHtml": "<p>From the author that brought you the New York Times bestseller The 7 Habits of Highly Effective People comes a guide to prioritizing your personal and professional goals.\nI'm getting more done in less time, but where are the rich relationships, the inner peace, the balance, the confidence that I'm doing what matters most and doing it well?Does this nagging question haunt you, even when you feel you are being your most efficient? If so, First Things First can help you understand why we so often prioritize things that are unimportant to both our larger goals and our inner happiness. From the author that brought you the New York Times bestseller The 7 Habits of Highly Effective People comes a guide to building your work on the principles of effectiveness so that your life can spent cultivating genuine relationships, investing in pursuits you enjoy, and achieving balance in both your personal and professional lives.\nIn First Things First, Stephen M. R. Covey advocates categorizing tasks by urgency and importance so that you can focus on what actually needs to be done in the limited amount of time that you have. Using personal examples and insight from years of business experience, he argues for a new way of looking at your “to-do” list. Rather than offering you another clock, First Things First provides you with a compass, because where you're headed is more important than how fast you're going.</p>\n"
},
{
"slug": "how-to-think-like-leonardo-da-vinci-1-michael-j-gelb",
"title": "How to Think Like Leonardo da Vinci",
"subtitle": "Seven Steps to Genius Every Day",
"edition": 1,
"authors": [
{
"name": "Michael J. Gelb",
"slug": "michael-j-gelb",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/michael-j-gelb.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/how-to-think-like-leonardo-da-vinci-1-michael-j-gelb.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/0440508274",
"amazon_uk": "https://www.amazon.co.uk/dp/0440508274"
},
"description": "This inspiring and inventive guide teaches readers how to develop their full potential by following the example of the greatest genius of all time, Leonardo da Vinci.Acclaimed author Michael J. Gelb, who has helped thousands of people expand their minds to accomplish more than they ever thought possible, shows you how. Drawing on Da Vinci's notebooks, inventions, and legendary works of art, Gelb introduces Seven Da Vincian Principles—the essential elements of genius—from curiosità, the insatiably curious approach to life to connessione, the appreciation for the interconnectedness of all things. With Da Vinci as your inspiration, you will discover an exhilarating new way of thinking. And step-by-step, through exercises and provocative lessons, you will harness the power—and awesome wonder—of your own genius, mastering such life-changing abilities as:\n- Problem solving\n- Creative thinking\n- Self-expression\n- Enjoying the world around you\n- Goal setting and life balance\n- Harmonizing body and mind\nDrawing on Da Vinci's notebooks, inventions, and legendary works of art, acclaimed author Michael J. Gelb, introduces seven Da Vincian principles, the essential elements of genius, from curiosita, the insatiably curious approach to life, to connessione, the appreciation for the interconnectedness of all things. With Da Vinci as their inspiration, readers will discover an exhilarating new way of thinking.\nStep-by-step, through exercises and provocative lessons, anyone can harness the power and awesome wonder of their own genius, mastering such life-changing skills as problem solving, creative thinking, self-expression, goal setting and life balance, and harmonizing body and mind.",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/how-to-think-like-leonardo-da-vinci-1-michael-j-gelb.json",
"descriptionHtml": "<p>This inspiring and inventive guide teaches readers how to develop their full potential by following the example of the greatest genius of all time, Leonardo da Vinci.Acclaimed author Michael J. Gelb, who has helped thousands of people expand their minds to accomplish more than they ever thought possible, shows you how. Drawing on Da Vinci's notebooks, inventions, and legendary works of art, Gelb introduces Seven Da Vincian Principles—the essential elements of genius—from curiosità, the insatiably curious approach to life to connessione, the appreciation for the interconnectedness of all things. With Da Vinci as your inspiration, you will discover an exhilarating new way of thinking. And step-by-step, through exercises and provocative lessons, you will harness the power—and awesome wonder—of your own genius, mastering such life-changing abilities as:</p>\n<ul>\n<li>Problem solving</li>\n<li>Creative thinking</li>\n<li>Self-expression</li>\n<li>Enjoying the world around you</li>\n<li>Goal setting and life balance</li>\n<li>Harmonizing body and mind\nDrawing on Da Vinci's notebooks, inventions, and legendary works of art, acclaimed author Michael J. Gelb, introduces seven Da Vincian principles, the essential elements of genius, from curiosita, the insatiably curious approach to life, to connessione, the appreciation for the interconnectedness of all things. With Da Vinci as their inspiration, readers will discover an exhilarating new way of thinking.\nStep-by-step, through exercises and provocative lessons, anyone can harness the power and awesome wonder of their own genius, mastering such life-changing skills as problem solving, creative thinking, self-expression, goal setting and life balance, and harmonizing body and mind.</li>\n</ul>\n"
},
{
"slug": "how-we-got-to-now-1-steven-johnson",
"title": "How We Got to Now",
"subtitle": "Six Innovations That Made the Modern World",
"edition": 1,
"authors": [
{
"name": "Steven Johnson",
"slug": "steven-johnson",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/steven-johnson.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/how-we-got-to-now-1-steven-johnson.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/1594633932",
"amazon_uk": "https://www.amazon.co.uk/dp/1594633932"
},
"description": "From the New York Times-bestselling author of Where Good Ideas Come From and Unexpected Life, a new look at the power and legacy of great ideas.\nIn this illustrated history, Steven Johnson explores the history of innovation over centuries, tracing facets of modern life (refrigeration, clocks, and eyeglass lenses, to name a few) from their creation by hobbyists, amateurs, and entrepreneurs to their unintended historical consequences. Filled with surprising stories of accidental genius and brilliant mistakes—from the French publisher who invented the phonograph before Edison but forgot to include playback, to the Hollywood movie star who helped invent the technology behind Wi-Fi and Bluetooth—How We Got to Now investigates the secret history behind the everyday objects of contemporary life.\nIn his trademark style, Johnson examines unexpected connections between seemingly unrelated fields: how the invention of air-conditioning enabled the largest migration of human beings in the history of the species—to cities such as Dubai or Phoenix, which would otherwise be virtually uninhabitable; how pendulum clocks helped trigger the industrial revolution; and how clean water made it possible to manufacture computer chips. Accompanied by a major six-part television series on PBS, How We Got to Now is the story of collaborative networks building the modern world, written in the provocative, informative, and engaging style that has earned Johnson fans around the globe.",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/how-we-got-to-now-1-steven-johnson.json",
"descriptionHtml": "<p>From the New York Times-bestselling author of Where Good Ideas Come From and Unexpected Life, a new look at the power and legacy of great ideas.\nIn this illustrated history, Steven Johnson explores the history of innovation over centuries, tracing facets of modern life (refrigeration, clocks, and eyeglass lenses, to name a few) from their creation by hobbyists, amateurs, and entrepreneurs to their unintended historical consequences. Filled with surprising stories of accidental genius and brilliant mistakes—from the French publisher who invented the phonograph before Edison but forgot to include playback, to the Hollywood movie star who helped invent the technology behind Wi-Fi and Bluetooth—How We Got to Now investigates the secret history behind the everyday objects of contemporary life.\nIn his trademark style, Johnson examines unexpected connections between seemingly unrelated fields: how the invention of air-conditioning enabled the largest migration of human beings in the history of the species—to cities such as Dubai or Phoenix, which would otherwise be virtually uninhabitable; how pendulum clocks helped trigger the industrial revolution; and how clean water made it possible to manufacture computer chips. Accompanied by a major six-part television series on PBS, How We Got to Now is the story of collaborative networks building the modern world, written in the provocative, informative, and engaging style that has earned Johnson fans around the globe.</p>\n"
},
{
"slug": "indistractable-1-nir-eyal",
"title": "Indistractable",
"edition": 1,
"authors": [
{
"name": "Nir Eyal",
"slug": "nir-eyal",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/nir-eyal.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/indistractable-1-nir-eyal.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/1526610205",
"amazon_uk": "https://www.amazon.co.uk/dp/1526610205"
},
"description": "You sit down at your desk to work on an important project, but a notification on your phone interrupts your morning. Later, as you're about to get back to work, a colleague taps you on the shoulder to chat. At home, screens get in the way of quality time with your family. Another day goes by, and once again, your most important personal and professional goals are put on hold.\nWhat would be possible if you followed through on your best intentions? What could you accomplish if you could stay focused and overcome distractions? What if you had the power to become \"indistractable\"?\nInternational best-selling author, former Stanford lecturer, and behavioral design expert, Nir Eyal, wrote Silicon Valley's handbook for making technology habit-forming. Five years after publishing Hooked, Eyal reveals distraction's Achilles' heel in his groundbreaking new book.\nIn Indistractable, Eyal reveals the hidden psychology driving us to distraction. He describes why solving the problem is not as simple as swearing off our devices: Abstinence is impractical and often makes us want more.\nEyal lays bare the secret of finally doing what you say you will do with a four-step, research-backed model. Indistractable reveals the key to getting the best out of technology, without letting it get the best of us.\nInside, Eyal overturns conventional wisdom and reveals:\nWhy distraction at work is a symptom of a dysfunctional company culture - and how to fix it\nWhat really drives human behavior and why \"time management is pain management\"\nWhy your relationships (and your sex life) depend on you becoming indistractable\nHow to raise indistractable children in an increasingly distracting world\nEmpowering and optimistic, Indistractable provides practical, novel techniques to control your time and attention - helping you live the life you really want.",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/indistractable-1-nir-eyal.json",
"descriptionHtml": "<p>You sit down at your desk to work on an important project, but a notification on your phone interrupts your morning. Later, as you're about to get back to work, a colleague taps you on the shoulder to chat. At home, screens get in the way of quality time with your family. Another day goes by, and once again, your most important personal and professional goals are put on hold.\nWhat would be possible if you followed through on your best intentions? What could you accomplish if you could stay focused and overcome distractions? What if you had the power to become "indistractable"?\nInternational best-selling author, former Stanford lecturer, and behavioral design expert, Nir Eyal, wrote Silicon Valley's handbook for making technology habit-forming. Five years after publishing Hooked, Eyal reveals distraction's Achilles' heel in his groundbreaking new book.\nIn Indistractable, Eyal reveals the hidden psychology driving us to distraction. He describes why solving the problem is not as simple as swearing off our devices: Abstinence is impractical and often makes us want more.\nEyal lays bare the secret of finally doing what you say you will do with a four-step, research-backed model. Indistractable reveals the key to getting the best out of technology, without letting it get the best of us.\nInside, Eyal overturns conventional wisdom and reveals:\nWhy distraction at work is a symptom of a dysfunctional company culture - and how to fix it\nWhat really drives human behavior and why "time management is pain management"\nWhy your relationships (and your sex life) depend on you becoming indistractable\nHow to raise indistractable children in an increasingly distracting world\nEmpowering and optimistic, Indistractable provides practical, novel techniques to control your time and attention - helping you live the life you really want.</p>\n"
},
{
"slug": "tragic-design-1-jonathan-shariat-cynthia-savard-saucier",
"title": "Tragic Design",
"subtitle": "The Impact of Bad Product Design and How to Fix It",
"edition": 1,
"authors": [
{
"name": "Jonathan Shariat",
"slug": "jonathan-shariat",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/jonathan-shariat.json"
},
{
"name": "Cynthia Savard Saucier",
"slug": "cynthia-savard-saucier",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/cynthia-savard-saucier.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/tragic-design-1-jonathan-shariat-cynthia-savard-saucier.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/149192361X",
"amazon_uk": "https://www.amazon.co.uk/dp/149192361X"
},
"description": "Bad design is everywhere, and its cost is much higher than we think. In this thought-provoking book, authors Jonathan Shariat and Cynthia Savard Saucier explain how poorly designed products can anger, sadden, exclude, and even kill people who use them. The designers responsible certainly didn't intend harm, so what can you do to avoid making similar mistakes?\nTragic Design examines real case studies that show how certain design choices adversely affected users, and includes in-depth interviews with authorities in the design industry. Pick up this book and learn how you can be an agent of change in the design community and at your company.\nYou'll explore:\n- Designs that can kill, including the bad interface that doomed a young cancer patient\n- Designs that anger, through impolite technology and dark patterns\n- How design can inadvertently cause emotional pain\n- Designs that exclude people through lack of accessibility, diversity, and justice\n- How to advocate for ethical design when it isn't easy to do so\n- Tools and techniques that can help you avoid harmful design decisions\n- Inspiring professionals who use design to improve our world",
"url": "https://fullStackbulletin.github.io/fullstack-books/books/tragic-design-1-jonathan-shariat-cynthia-savard-saucier.json",
"descriptionHtml": "<p>Bad design is everywhere, and its cost is much higher than we think. In this thought-provoking book, authors Jonathan Shariat and Cynthia Savard Saucier explain how poorly designed products can anger, sadden, exclude, and even kill people who use them. The designers responsible certainly didn't intend harm, so what can you do to avoid making similar mistakes?\nTragic Design examines real case studies that show how certain design choices adversely affected users, and includes in-depth interviews with authorities in the design industry. Pick up this book and learn how you can be an agent of change in the design community and at your company.\nYou'll explore:</p>\n<ul>\n<li>Designs that can kill, including the bad interface that doomed a young cancer patient</li>\n<li>Designs that anger, through impolite technology and dark patterns</li>\n<li>How design can inadvertently cause emotional pain</li>\n<li>Designs that exclude people through lack of accessibility, diversity, and justice</li>\n<li>How to advocate for ethical design when it isn't easy to do so</li>\n<li>Tools and techniques that can help you avoid harmful design decisions</li>\n<li>Inspiring professionals who use design to improve our world</li>\n</ul>\n"
},
{
"slug": "linchpin-1-seth-godin",
"title": "Linchpin",
"subtitle": "Are You Indispensable?",
"edition": 1,
"authors": [
{
"name": "Seth Godin",
"slug": "seth-godin",
"url": "https://fullStackbulletin.github.io/fullstack-books/authors/seth-godin.json"
}
],
"cover": "https://fullStackbulletin.github.io/fullstack-books/covers/linchpin-1-seth-godin.jpg",
"links": {
"amazon_us": "https://www.amazon.com/dp/1591844096",
"amazon_uk": "https://www.amazon.co.uk/dp/1591844096"
},
"description": "This life-changing manifesto shows how you have the potential to make a huge difference wherever you are. Few authors have had the kind of lasting impact and global reach that Seth Godin has had. In a series of now-classic books that have been translated into 36 languages and reached millions of readers around the world, he has taught generations of readers how to make remarkable products and spread powerful ideas. In Linchpin, he turns his attention to the individual, and explains how anyone can make a significant impact within their organization.\nThere used to be two teams in every workplace: management and labor. Now there's a third team, the linchpins. These people figure out what to do when there's no rule book. They delight and challenge their customers and peers. They love their work, pour their best selves into it, and turn each day into a kind of art.\nHave