Title: Composing Software [Leanpub PDF/iPad/Kindle]
Open Graph Title: Composing Software
X Title: Composing Software
Description: All software design is composition: the act of breaking complex problems down into smaller problems and composing those solutions. Learn to do it well.
Open Graph Description: All software design is composition: the act of breaking complex problems down into smaller problems and composing those solutions. Learn to do it well.
X Description: All software design is composition: the act of breaking complex problems down into smaller problems and composing those solutions. Learn to do it well.
Opengraph URL: https://leanpub.com/composingsoftware
X: @Leanpub
Domain: leanpub.com
{"@context":"https://schema.org","@type":"Book","@id":"https://leanpub.com/composingsoftware#book","name":"Composing Software","url":"https://leanpub.com/composingsoftware","bookFormat":"https://schema.org/EBook","brand":{"@type":"Brand","name":"Leanpub"},"description":"All software design is composition: the act of breaking complex problems down into smaller problems and composing those solutions. Learn to do it well.","image":"https://d2sofvawe08yqg.cloudfront.net/composingsoftware/s_hero2x?1723403362\u00261723403362","inLanguage":"en","datePublished":"2024-08-11T19:09:36Z","numberOfPages":238,"author":[{"@type":"Person","name":"Eric Elliott","url":"https://leanpub.com/u/_ericelliott"}],"publisher":{"@type":"Organization","name":"Leanpub"},"offers":{"@type":"Offer","url":"https://leanpub.com/composingsoftware","price":"34.00","priceCurrency":"USD","availability":"https://schema.org/InStock","shippingDetails":{"@type":"OfferShippingDetails","shippingRate":{"@type":"MonetaryAmount","value":"0","currency":"USD"},"shippingDestination":{"@type":"DefinedRegion","addressCountry":["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]},"deliveryTime":{"@type":"ShippingDeliveryTime","handlingTime":{"@type":"QuantitativeValue","minValue":0,"maxValue":0,"unitCode":"DAY"},"transitTime":{"@type":"QuantitativeValue","minValue":0,"maxValue":0,"unitCode":"DAY"}}},"hasMerchantReturnPolicy":{"@type":"MerchantReturnPolicy","applicableCountry":["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"],"returnPolicyCategory":"https://schema.org/MerchantReturnFiniteReturnWindow","merchantReturnDays":60,"returnFees":"https://schema.org/FreeReturn"}}}
| Content-Language | en |
| None | IE=edge |
| charSet | utf-8 |
| apple-itunes-app | app-id=913517110 |
| sentry-environment | production |
| sentry-release | 8a3483f7d65cc28d824055b36d21331c15780f29 |
| title | Composing Software [Leanpub PDF/iPad/Kindle] |
| author | Eric Elliott |
| DCTERMS.title | Composing Software |
| DCTERMS.description | All software design is composition: the act of breaking complex problems down into smaller problems and composing those solutions. Learn to do it well. |
| DCTERMS.type | book |
| DCTERMS.creator | Eric Elliott |
| DCTERMS.date | 2025-12-20T21:19:59Z |
| DCTERMS.language | eng |
| og:type | book |
| og:image | https://d2sofvawe08yqg.cloudfront.net/composingsoftware/s_hero2x?1723403362&1723403362 |
| og:image:width | 640 |
| og:image:height | 828 |
| og:publisher | Leanpub |
| twitter:card | summary_large_image |
| twitter:image | https://d2sofvawe08yqg.cloudfront.net/composingsoftware/s_hero2x?1723403362&1723403362 |
| twitter:url | https://leanpub.com/composingsoftware |
Links:
Viewport: width=device-width,initial-scale=1