CINXE.COM

What's Popular in Design - O'Reilly Media

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>What's Popular in Design - O'Reilly Media</title> <meta name="description" content="Our content is always up-to-date so you'll always be ahead of the curve." /> <meta name="date" content="2025-02-17" /> <meta name="search_date" content="2020-12-22" /> <meta name="search-title" content="What's Popular in Design - O'Reilly Media" /> <meta name="pagename" content="What's Popular in Design - O'Reilly Media" /> <meta name="site" content="O'Reilly" /> <meta name="twitter:title" content="What's Popular in Design - O'Reilly Media" /> <meta name="twitter:description" content="Our content is always up-to-date so you'll always be ahead of the curve." /> <meta name="twitter:site" content="@OReillyMedia" /> <meta property="og:type" content="website" /> <meta property="og:title" content="What's Popular in Design - O'Reilly Media" /> <meta name="twitter:card" content="summary" /> <meta name="twitter:image" content="https://cdn.oreillystatic.com/oreilly/images/oreilly-social-200.png" /> <meta property="og:image" content="https://cdn.oreillystatic.com/oreilly/images/oreilly-social-200.png" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="language_name" content="English"> <meta name="native_language_name" content="English"> <meta name="format-detection" content="telephone=no"> <meta name="robots" content="noindex"> <link rel="icon" type="image/png" href="//www.oreilly.com/favicon.ico"> <!--[if lte IE 9]> <script> 'article aside footer header main nav section time'.replace(/\w+/g,function(n){document.createElement(n)}) </script> <![endif]--> <link rel="stylesheet" type="text/css" href="https://cdn.oreillystatic.com/assets/css/2018_font_face.css" /> <link rel="stylesheet" type="text/css" href="https://cdn.oreillystatic.com/assets/css/odot-layout-20240226.css" /> <!--[if IE 9]> <style type="text/css"> #menu-toggle:checked ~ .mobile-nav { display:block; } .mobile-nav { display: none; } </style> <![endif]--> <!-- Initiate dataLayer for GA --> <script> loggedInObject = new Object(); var dataLayer = window.dataLayer || []; //Check for O'Reilly Unified logged-in status if (document.cookie.split(';').filter(function(item) { return item.indexOf('orm-jwt=') >= 0 }).length) { loggedInObject.unifiedLoggedIn = 'yes'; loggedInObject.loggedIn = 'yes'; dataLayer.push(loggedInObject); //Add 'loggedIn class to html tag const htmlTag = document.querySelector('html'); if (htmlTag !== null) { htmlTag.classList.add('loggedIn'); } } </script> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-5P4V6Z');</script> <!-- End Google Tag Manager --> <!-- Start VWO Async SmartCode --> <link rel="preconnect" href="https://dev.visualwebsiteoptimizer.com" /> <script type='text/javascript' id='vwoCode'> window._vwo_code || (function() { var account_id=27087, version=2.1, settings_tolerance=2000, hide_element='body', hide_element_style = 'opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important', /* DO NOT EDIT BELOW THIS LINE */ f=false,w=window,d=document,v=d.querySelector('#vwoCode'),cK='_vwo_'+account_id+'_settings',cc={};try{var c=JSON.parse(localStorage.getItem('_vwo_'+account_id+'_config'));cc=c&&typeof c==='object'?c:{}}catch(e){}var stT=cc.stT==='session'?w.sessionStorage:w.localStorage;code={use_existing_jquery:function(){return typeof use_existing_jquery!=='undefined'?use_existing_jquery:undefined},library_tolerance:function(){return typeof library_tolerance!=='undefined'?library_tolerance:undefined},settings_tolerance:function(){return cc.sT||settings_tolerance},hide_element_style:function(){return'{'+(cc.hES||hide_element_style)+'}'},hide_element:function(){if(performance.getEntriesByName('first-contentful-paint')[0]){return''}return typeof cc.hE==='string'?cc.hE:hide_element},getVersion:function(){return version},finish:function(e){if(!f){f=true;var t=d.getElementById('_vis_opt_path_hides');if(t)t.parentNode.removeChild(t);if(e)(new Image).src='https://dev.visualwebsiteoptimizer.com/ee.gif?a='+account_id+e}},finished:function(){return f},addScript:function(e){var t=d.createElement('script');t.type='text/javascript';if(e.src){t.src=e.src}else{t.text=e.text}d.getElementsByTagName('head')[0].appendChild(t)},load:function(e,t){var i=this.getSettings(),n=d.createElement('script'),r=this;t=t||{};if(i){n.textContent=i;d.getElementsByTagName('head')[0].appendChild(n);if(!w.VWO||VWO.caE){stT.removeItem(cK);r.load(e)}}else{var o=new XMLHttpRequest;o.open('GET',e,true);o.withCredentials=!t.dSC;o.responseType=t.responseType||'text';o.onload=function(){if(t.onloadCb){return t.onloadCb(o,e)}if(o.status===200){_vwo_code.addScript({text:o.responseText})}else{_vwo_code.finish('&e=loading_failure:'+e)}};o.onerror=function(){if(t.onerrorCb){return t.onerrorCb(e)}_vwo_code.finish('&e=loading_failure:'+e)};o.send()}},getSettings:function(){try{var e=stT.getItem(cK);if(!e){return}e=JSON.parse(e);if(Date.now()>e.e){stT.removeItem(cK);return}return e.s}catch(e){return}},init:function(){if(d.URL.indexOf('__vwo_disable__')>-1)return;var e=this.settings_tolerance();w._vwo_settings_timer=setTimeout(function(){_vwo_code.finish();stT.removeItem(cK)},e);var t;if(this.hide_element()!=='body'){t=d.createElement('style');var i=this.hide_element(),n=i?i+this.hide_element_style():'',r=d.getElementsByTagName('head')[0];t.setAttribute('id','_vis_opt_path_hides');v&&t.setAttribute('nonce',v.nonce);t.setAttribute('type','text/css');if(t.styleSheet)t.styleSheet.cssText=n;else t.appendChild(d.createTextNode(n));r.appendChild(t)}else{t=d.getElementsByTagName('head')[0];var n=d.createElement('div');n.style.cssText='z-index: 2147483647 !important;position: fixed !important;left: 0 !important;top: 0 !important;width: 100% !important;height: 100% !important;background: white !important;';n.setAttribute('id','_vis_opt_path_hides');n.classList.add('_vis_hide_layer');t.parentNode.insertBefore(n,t.nextSibling)}var o='https://dev.visualwebsiteoptimizer.com/j.php?a='+account_id+'&u='+encodeURIComponent(d.URL)+'&vn='+version;if(w.location.search.indexOf('_vwo_xhr')!==-1){this.addScript({src:o})}else{this.load(o+'&x=true')}}};w._vwo_code=code;code.init();})(); </script> <!-- End VWO Async SmartCode --> </head> <body> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5P4V6Z" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <div class="skipToMain" id="skipToMain"><a href="#maincontent"><span class="skipToMain-text">Skip to main content</span></a></div> <header role="banner"> <div class="content"> <nav role="navigation" aria-label="site sections"> <a href="https://www.oreilly.com" class="logo" title="home page"><img src="https://cdn.oreillystatic.com/images/sitewide-headers/oreilly_logo_mark_red.svg" onerror="this.src='https://cdn.oreillystatic.com/images/sitewide-headers/oreilly_logo_mark_red_@2x.png'; this.onerror=null;" alt="O'Reilly home"></a> <button id="mobileNavButton" class="mobileNavButton mobileNavButton--collapse mobileNavButton--3dx" type="button" aria-expanded="false" aria-controls="menuList"> <span class="mobileNavButton-box"> <span class="mobileNavButton-inner"></span> </span> </button> <ul id="menuList" class="menuList mobileHidden "> <li class="menuList-itemsP1"> <ul> <li class="menuList-item menuList-signIn"><a id="nav-signIn" href="https://www.oreilly.com/member/login/">Sign In</a></li> <li class="menuList-item menuList-tryNow"><a id="nav-tryNow" class="menuList-cta" href="https://www.oreilly.com/online-learning/try-now.html">Try Now</a></li> <li class="menuList-item menuList-platform"><a id="nav-platform" class="menuList-cta" href="https://www.oreilly.com/member/login/">O&rsquo;Reilly Platform</a></li> </ul> </li> <li class="menuList-itemsP2"> <ul> <li class="menuList-item menuList-itemWithSub"><a href="https://www.oreilly.com/online-learning/teams.html">Teams</a> <ul class="menuList-subList"> <li class="menuList-subItem menuList-extra"><a href="https://www.oreilly.com/online-learning/teams.html">For business</a></li> <li class="menuList-subItem"><a href="https://www.oreilly.com/online-learning/government.html">For government</a></li> <li class="menuList-subItem"><a href="https://www.oreilly.com/online-learning/academic.html">For higher ed</a></li> </ul> </li> <li class="menuList-item"><a href="https://www.oreilly.com/online-learning/individuals.html">Individuals</a></li> <li class="menuList-item menuList-itemWithSub"><a href="https://www.oreilly.com/online-learning/features.html">Features</a> <ul class="menuList-subList"> <li class="menuList-subItem menuList-extra"><a href="https://www.oreilly.com/online-learning/features.html">All features</a></li> <li class="menuList-subItem"><a href="https://www.oreilly.com/online-learning/courses.html">Courses</a></li> <li class="menuList-subItem"><a href="https://www.oreilly.com/online-learning/feature-certification.html">Certifications</a></li> <li class="menuList-subItem"><a href="https://www.oreilly.com/online-learning/intro-interactive-learning.html">Interactive learning</a></li> <li class="menuList-subItem"><a href="https://www.oreilly.com/online-learning/live-events.html">Live events</a></li> <li class="menuList-subItem"><a href="https://www.oreilly.com/online-learning/feature-answers.html">Answers</a></li> <li class="menuList-subItem"><a href="https://www.oreilly.com/online-learning/insights-dashboard.html">Insights reporting</a></li> </ul> </li> <li class="menuList-item"><a href="https://www.oreilly.com/online-learning/pricing.html">Plans</a></li> <li class="menuList-item"><a href="https://www.oreilly.com/radar/">Blog</a></li> <li class="menuList-item" id="nav-forMarketers"><a href="https://www.oreilly.com/content-marketing-solutions.html">Content sponsorship</a></li> <li class="menuList-item menuList-item-search" id="nav-search"> <form id="js-searchForm" class="searchForm" action="https://www.oreilly.com/search/"><input id="search" type="search" name="query" placeholder="Explore our content" autocomplete="off" required=""><button id="js-searchCloseButton" class="navSearchCloseButton">Close</button></form> <button id="js-searchButton" class="navSearchButton">Search</button> </li> </ul> </li> </ul> </nav> </div> </header> <main role="main" id="maincontent"> <style> /* .hero-general */ .hero.hero-general { background-color: #eee; } .hero.hero-general > .content h1:last-child { margin-bottom: 14px; } .hero.hero-general > .content p:last-child { margin-bottom: 14px; } @media (min-width: 30em) { .hero.hero-general > .content h1 { max-width: 60%; } .hero.hero-general > .content p { max-width: 60%; } } @media (min-width: 40em) { .hero.hero-general > .content h1 { margin-top: 22px !important; } .hero.hero-general > .content p { margin-bottom: 20px; } } @media (min-width: 50em) { .hero.hero-general > .content h1 { margin-top: 22px !important; } } @media (min-width: 65em) { .hero.hero-general > .content h1 { margin-top: 22px !important; font-size: 48px !important; font-size: 3rem !important; line-height: 1.1em !important; } .hero.hero-general > .content p { max-width: 40%; margin-bottom: 20px; font-size: 32px !important; font-size: 2rem !important; line-height: 1.2em; } } @media (min-width: 71em) { .hero.hero-general > .content p { font-size: 32px !important; font-size: 2rem !important; line-height: 1.2em; } } @media (min-width: 85em) { .hero.hero-general > .content h1 { font-size: 48px !important; font-size: 3rem !important; line-height: 1.1em !important; max-width: 50%; } .hero.hero-general > .content p { font-size: 32px !important; font-size: 2rem !important; line-height: 1.2em; max-width: 50%; } } /* end .hero-general */ .whatsNew .content h2 { margin-bottom: 8px; line-height: 1.1em; } .whatsNew-linkAll { margin-bottom: 40px; display: inline-block; } .whatsNew-list { display: flex; flex-wrap: wrap; } .whatsNew-list-card { display: flex; flex-flow: column nowrap; float: left; width: 50%; width: calc(50% - 12px); max-width: 360px; margin: 0 24px 40px 0; text-decoration: none; } .whatsNew-list-card:nth-of-type(2n) { margin: 0 0 40px 0; } .whatsNew-list-card-cover { position: relative; display: block; height: 0; margin-bottom: 16px; padding-bottom: 100%; background-color: #eee; } .whatsNew-list-card-cover-img { position:absolute; height: 100%; width: 100%; top: 0; left: 0; background-size: contain; background-position: center center; background-repeat: no-repeat; } .whatsNew-list-card-text { height: 100%; padding-right: 24px; font-size: 16px; font-size: 1rem; line-height: 1.5em; } .whatsNew-list-card-title { display: block; margin-bottom: 4px; } .whatsNew-list-card-byline, .whatsNew-list-card-date { display: block; margin-bottom: 4px; font-size: 14px; font-size: .875rem; line-height: 1.5em; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } .whatsNew-list-card-cta { margin-top: auto; } .whatsNew-list-card-cta .textCTA-small { font-size: 16px; font-size: 1rem; line-height: 1.5em; } @media (min-width: 40em) { /* 640px */ .whatsNew-list-card { width: 25%; width: calc(25% - 18px); text-decoration: none; } .whatsNew-list-card:nth-of-type(2n) { margin: 0 24px 40px 0; } .whatsNew-list-card:nth-of-type(4n) { margin: 0 0 40px 0; } .whatsNew-list-card-title { font-size: 20px; font-size: 1.25rem; line-height: 1.5em; } } a.searchList-product { display: flex; width: 100%; text-decoration: none; flex-direction: row-reverse; box-shadow: 0 0 20px rgba(0,0,0,.1); margin-bottom: 20px; } .searchList-primary { position: relative; width: calc(100% - 112px); padding: 20px 40px 20px 0; } .searchList-primary:after { content: ""; display: block; position: absolute; z-index: 1; right: 0; top: 50%; width: 40px; height: 18px; margin-top: -9px; vertical-align: middle; background: transparent url(https://cdn.oreillystatic.com/images/icons/icon_right_arrow_black.svg) center center no-repeat; background-size: contain; opacity: .2; transition: background-image 200ms, opacity 200ms; } a.searchList-product:hover .searchList-primary:after { background-image: url(https://cdn.oreillystatic.com/images/icons/icon_right_arrow_blue.svg); opacity: 1; } .searchList-secondary { width: 160px; padding: 21px 20px 20px 0; text-align: right; } .searchList-cover { display: flex; width: 100%; max-width: 100px; margin: 0 0 0 auto; justify-content: space-between; flex-wrap: wrap; } .searchList-cover img { display: block; max-width: 100%; max-height: 100px; margin: 0 0 10px auto; box-shadow: 0 2px 8px rgba(0,0,0,.25); } .searchList-product.news .searchList-cover img { box-shadow: none; opacity: .5; } .live-online-training .searchList-cover img, .meet-the-expert .searchList-cover img { border-radius: 50%; } .searchList-cover.count-1 img, .searchList-cover.count-2 img { width: 100%; } .searchList-cover.count-3 img, .searchList-cover.count-4 img { width: calc(50% - 5px); } .searchList-format { margin: 3px 0 12px; font-size: 14px; font-size: .875rem; line-height: 1.5em; font-weight: 400; text-transform: capitalize; text-align: right; color: #068212; } .live-online-training .searchList-format, .meet-the-expert .searchList-format, .superstream .searchList-format { color: #bd10e0; } .searchList-date { margin: 3px 0 4px; font-size: 14px; font-size: .875rem; line-height: 1.5em; font-weight: 400; } .searchList-title { margin: 0; font-family: 'gilroy', Arial, sans-serif; font-size: 24px; font-size: 1.5rem; line-height: 1.4em; font-weight: 600; transition: color 200ms; } a.searchList-product:hover .searchList-title { color: #0b69ba; } .searchList-names { margin-bottom: 8px; font-size: 16px; font-size: 1rem; line-height: 1.5em; font-weight: 400; color: #515151; } .searchList-name { font-weight: 600; } .searchList-description { margin-top: 8px; font-size: 16px; font-size: 1rem; line-height: 1.5em; font-weight: 400; color: #515151; } @media (min-width: 40em) { .searchList-cover.count-2 img { width: calc(50% - 5px); } } @media (min-width: 53em) { .searchList { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; } a.searchList-product { width: calc(50% - 10px); } } </style> <section class="hero hero-general"> <div class="content"> <h1>What&rsquo;s popular in design</h1> <p>Your source for <span class="nowrap">what&rsquo;s next</span></p> </div> </section> <section class="whatsNew shortDescription sectionBreak"> <div class="content"> <h2><strong>Popular books</strong></h2> <a href="https://learning.oreilly.com/search/?query=*&extended_publisher_data=true&formats=book&highlight=true&include_assessments=false&include_case_studies=true&include_courses=true&include_orioles=true&include_playlists=true&is_academic_institution_account=false&topics=Interaction%20Design&topics=Graphic%20Design&topics=Visual%20Design&topics=Design&topics=Product%20Design&topics=Industrial%20Design&topics=Interface%20Design&topics=Web%20Design&topics=Design%20Process&sort=popularity" class="whatsNew-linkAll textCTA-small">See all</a> <div class="whatsNew-list"> <!-- 4 new books --> <div class="whatsNew-list-card"><a class="whatsNew-list-card-cover" href="https://learning.oreilly.com/library/view/interaction-design-6th/9781119901099/"><div class="whatsNew-list-card-cover-img" style="background-image:url(https://learning.oreilly.com/library/cover/9781119901099//360w/)"></div></a><p class="whatsNew-list-card-text"><a class="whatsNew-list-card-title" href="https://learning.oreilly.com/library/view/interaction-design-6th/9781119901099/">Interaction Design, 6th Edition</a><span class="whatsNew-list-card-byline">By <span class="whatsNew-list-card-name">Yvonne Rogers</span>, <span class="whatsNew-list-card-name">Helen Sharp</span>, <span class="whatsNew-list-card-name">Jennifer Preece</span></span></p></div><div class="whatsNew-list-card"><a class="whatsNew-list-card-cover" href="https://learning.oreilly.com/library/view/learning-web-design/9781491960196/"><div class="whatsNew-list-card-cover-img" style="background-image:url(https://learning.oreilly.com/library/cover/9781491960196//360w/)"></div></a><p class="whatsNew-list-card-text"><a class="whatsNew-list-card-title" href="https://learning.oreilly.com/library/view/learning-web-design/9781491960196/">Learning Web Design, 5th Edition</a><span class="whatsNew-list-card-byline">By <span class="whatsNew-list-card-name">Jennifer Robbins</span></span></p></div><div class="whatsNew-list-card"><a class="whatsNew-list-card-cover" href="https://learning.oreilly.com/library/view/designing-interfaces-3rd/9781492051954/"><div class="whatsNew-list-card-cover-img" style="background-image:url(https://learning.oreilly.com/library/cover/9781492051954//360w/)"></div></a><p class="whatsNew-list-card-text"><a class="whatsNew-list-card-title" href="https://learning.oreilly.com/library/view/designing-interfaces-3rd/9781492051954/">Designing Interfaces, 3rd Edition</a><span class="whatsNew-list-card-byline">By <span class="whatsNew-list-card-name">Jenifer Tidwell</span>, <span class="whatsNew-list-card-name">Charles Brewer</span>, <span class="whatsNew-list-card-name">Aynne Valencia</span></span></p></div><div class="whatsNew-list-card"><a class="whatsNew-list-card-cover" href="https://learning.oreilly.com/library/view/the-visual-imperative/9780128039304/"><div class="whatsNew-list-card-cover-img" style="background-image:url(https://learning.oreilly.com/library/cover/9780128039304//360w/)"></div></a><p class="whatsNew-list-card-text"><a class="whatsNew-list-card-title" href="https://learning.oreilly.com/library/view/the-visual-imperative/9780128039304/">The Visual Imperative</a><span class="whatsNew-list-card-byline">By <span class="whatsNew-list-card-name">Lindy Ryan</span></span></p></div> </div> </div> </section> <section class="whatsNew shortDescription sectionBreak"> <div class="content"> <h2><strong>Popular videos</strong></h2> <a href="https://learning.oreilly.com/search/?query=*&extended_publisher_data=true&formats=video&highlight=true&include_assessments=false&include_case_studies=true&include_courses=true&include_orioles=true&include_playlists=true&is_academic_institution_account=false&topics=Design&topics=User%20Experience%20(UX)&topics=Information%20Architecture&sort=popularity" class="whatsNew-linkAll textCTA-small">See all</a> <div class="whatsNew-list"> <!-- 4 new books --> <div class="whatsNew-list-card"><a class="whatsNew-list-card-cover" href="https://learning.oreilly.com/videos/ux-research-process/9781836640134/"><div class="whatsNew-list-card-cover-img" style="background-image:url(https://learning.oreilly.com/library/cover/9781836640134//360w/)"></div></a><p class="whatsNew-list-card-text"><a class="whatsNew-list-card-title" href="https://learning.oreilly.com/videos/ux-research-process/9781836640134/">UX: Research Process</a><span class="whatsNew-list-card-byline">By <span class="whatsNew-list-card-name">Team Treehouse</span>, <span class="whatsNew-list-card-name">Devin O'Bryan</span>, <span class="whatsNew-list-card-name">Nick Pettit</span>, <span class="whatsNew-list-card-name">Dan Gorgone</span>, <span class="whatsNew-list-card-name">Tomer Sharon</span>, <span class="whatsNew-list-card-name">Hope Armstrong</span>, <span class="whatsNew-list-card-name">Megan Amendola</span>, <span class="whatsNew-list-card-name">Anya Mezak</span></span></p></div><div class="whatsNew-list-card"><a class="whatsNew-list-card-cover" href="https://learning.oreilly.com/videos/articulating-design-decisions/0642572053413/"><div class="whatsNew-list-card-cover-img" style="background-image:url(https://learning.oreilly.com/library/cover/0642572053413//360w/)"></div></a><p class="whatsNew-list-card-text"><a class="whatsNew-list-card-title" href="https://learning.oreilly.com/videos/articulating-design-decisions/0642572053413/">Articulating Design Decisions: Communicate with Stakeholders, Keep Your Sanity, and Deliver the Best User Experience</a><span class="whatsNew-list-card-byline">By <span class="whatsNew-list-card-name">Tom Greever</span></span></p></div><div class="whatsNew-list-card"><a class="whatsNew-list-card-cover" href="https://learning.oreilly.com/videos/information-architecture-essentials/9781491950968/"><div class="whatsNew-list-card-cover-img" style="background-image:url(https://learning.oreilly.com/library/cover/9781491950968//360w/)"></div></a><p class="whatsNew-list-card-text"><a class="whatsNew-list-card-title" href="https://learning.oreilly.com/videos/information-architecture-essentials/9781491950968/">Information Architecture Essentials</a><span class="whatsNew-list-card-byline">By <span class="whatsNew-list-card-name">Jorge Arango</span></span></p></div><div class="whatsNew-list-card"><a class="whatsNew-list-card-cover" href="https://learning.oreilly.com/videos/ux-strategy/9781491967294/"><div class="whatsNew-list-card-cover-img" style="background-image:url(https://learning.oreilly.com/library/cover/9781491967294//360w/)"></div></a><p class="whatsNew-list-card-text"><a class="whatsNew-list-card-title" href="https://learning.oreilly.com/videos/ux-strategy/9781491967294/">UX Strategy</a><span class="whatsNew-list-card-byline">By <span class="whatsNew-list-card-name">Jaime Levy</span></span></p></div> </div> </div> </section> <section class="whatsNew shortDescription sectionBreak"> <div class="content"> <h2><strong>Popular in live online training</strong></h2> <a href="https://learning.oreilly.com/attend/" class="whatsNew-linkAll textCTA-small">See all</a> <div class="searchList"> <!-- 6 new live online training courses --> <a class="searchList-product live-online-training" href="https://learning.oreilly.com/live-events/domain-driven-design-first-steps/0636920436867/0642572011844/"><div class="searchList-primary"><p class="searchList-date">April 1, 2025</p><p class="searchList-title">Domain-Driven Design: First Steps</p><p class="searchList-names count-1">Presented by <span class="searchList-name">Andrew Harmel-Law</span></p></div><div class="searchList-secondary"><div class="searchList-cover count-1"><img src="https://cdn.oreillystatic.com/authors/trim/prod/images/40729-200x200.jpg" alt=""></div></div></a><a class="searchList-product live-online-training" href="https://learning.oreilly.com/live-events/product-design-with-genai/0642572003764/0642572009690/"><div class="searchList-primary"><p class="searchList-date">April 7, 2025</p><p class="searchList-title">Product Design with GenAI</p><p class="searchList-names count-1">Presented by <span class="searchList-name">Benjamin Dehant</span></p></div><div class="searchList-secondary"><div class="searchList-cover count-1"><img src="https://cdn.oreillystatic.com/authors/trim/prod/images/46464-200x200.jpg" alt=""></div></div></a> </div> </div> </section> </main> <footer id="footer" class="footer"> <div class="content"> <div class="footer-main" aria-label="company info"> <div class="footer-mainLeft"> <div class="footer-mainLeftOne"> <div class="footer-approach"> <h2 class="footer-header"><a href="/about/">About O&rsquo;Reilly</a></h2> <ul class="footer-links"> <li><a href="/work-with-us.html">Teach/write/train</a></li> <li><a href="/careers/">Careers</a></li> <li><a href="/press/">O&rsquo;Reilly news</a></li> <li><a href="/press/media-coverage.html">Media coverage</a></li> <li><a href="/partner/signup.csp">Community partners</a></li> <li><a href="/affiliates/">Affiliate program</a></li> <li><a href="/online-learning/rfp.html">Submit an RFP</a></li> <li><a href="/diversity/">Diversity</a></li> <li><a href="/content-marketing-solutions.html" id="footerSponsorshipLink">O&rsquo;Reilly for marketers</a></li> </ul> </div> </div> <div class="footer-mainLeftTwo"> <div class="footer-contact"> <h2 class="footer-header"><a href="/online-learning/support/">Support</a></h2> <ul class="footer-links"> <li><a href="/about/contact.html">Contact us</a></li> <li><a href="/emails/newsletters/">Newsletters</a></li> <li><a href="/privacy.html">Privacy policy</a></li> <li><a href="/about/oreilly-approach-to-generative-ai.html">AI policy</a></li> </ul> <a href="https://www.linkedin.com/company/oreilly-media" target="_blank"><svg data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32.25 32.25"><defs><style>.cls-1{fill:#d30000;fill-rule:evenodd;}</style></defs><title>linkedin-logo</title><path class="cls-1" d="M17.43,13.53v0l0,0ZM16.12,0A16.13,16.13,0,1,0,32.25,16.12,16.12,16.12,0,0,0,16.12,0ZM11.77,22.92H8.12v-11h3.65ZM9.94,10.44h0a1.89,1.89,0,0,1-2-1.89A1.91,1.91,0,0,1,10,6.65a1.9,1.9,0,1,1,0,3.79Zm15,12.48H21.28V17.05c0-1.48-.53-2.49-1.85-2.49a2,2,0,0,0-1.88,1.34,2.63,2.63,0,0,0-.12.89v6.13H13.79s.05-10,0-11h3.64V13.5a3.63,3.63,0,0,1,3.29-1.82c2.4,0,4.21,1.57,4.21,4.95Z"/></svg></a> <a href="https://www.youtube.com/user/OreillyMedia" target="_blank"><svg data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32.25 32.25"><defs><style>.cls-1{fill:#d30000;fill-rule:evenodd;}</style></defs><title>youtube-logo</title><path class="cls-1" d="M18.35,18.68a.89.89,0,0,0-.86.63V16.94h-1v7.59h1v-.59a.92.92,0,0,0,.89.74c.52,0,.86-.36,1-1.07a8.56,8.56,0,0,0,.14-1.9,10.47,10.47,0,0,0-.12-1.93C19.21,19.05,18.87,18.68,18.35,18.68Zm.09,4.14c-.05.52-.2.77-.45.77s-.43-.21-.49-.63a7.22,7.22,0,0,1,0-1c0-.72,0-1.14,0-1.26.07-.58.23-.88.51-.88s.4.27.46.79c0,.09,0,.47,0,1.13S18.46,22.71,18.44,22.82ZM8.61,18.19H9.86v6.34H11V18.19H12.2V16.94H8.61Zm7.71-6.12c.27,0,.43-.22.49-.66,0-.09,0-.45,0-1.07V9.78c0-.58,0-.93,0-1-.07-.43-.23-.65-.48-.65s-.41.19-.48.57a8.79,8.79,0,0,0,0,1v.53c0,.71,0,1.09,0,1.16C15.88,11.82,16.05,12.07,16.32,12.07Zm-1.74,10.4a2.92,2.92,0,0,1-.06.71c-.07.25-.2.37-.4.37s-.32-.11-.38-.34a2.63,2.63,0,0,1-.05-.66V18.83h-1v4.48c0,.91.33,1.37,1,1.37A1,1,0,0,0,14.6,24v.57h1v-5.7h-1Zm7.1-3.79a1.35,1.35,0,0,0-1.22.59,2.48,2.48,0,0,0-.3,1.07c0,.23,0,.61,0,1.16s0,1.13,0,1.37a2.93,2.93,0,0,0,.35,1.27,1.25,1.25,0,0,0,1.14.54,1.36,1.36,0,0,0,1.13-.45,2.29,2.29,0,0,0,.37-1.43s0-.07,0-.11v-.12h-1c0,.75-.17,1.12-.51,1.12s-.38-.18-.45-.56a4.68,4.68,0,0,1-.06-.9c0-.18,0-.31,0-.37h2v-.43a4.86,4.86,0,0,0-.3-2.11A1.28,1.28,0,0,0,21.68,18.68ZM22.15,21h-1c0-.05,0-.11,0-.16v-.08a1.64,1.64,0,0,1,.11-.8.39.39,0,0,1,.38-.23.42.42,0,0,1,.43.33,2.32,2.32,0,0,1,.07.7Zm-6-21A16.13,16.13,0,1,0,32.25,16.12,16.12,16.12,0,0,0,16.12,0Zm2.51,7.2h1V11a2.52,2.52,0,0,0,.06.66c.06.23.18.34.38.34s.34-.12.41-.37a3.76,3.76,0,0,0,.05-.71V7.2h1v5.74h-1v-.57a1,1,0,0,1-.93.72c-.66,0-1-.46-1-1.38ZM15,8a1.29,1.29,0,0,1,1.33-.92A1.3,1.3,0,0,1,17.65,8a6.77,6.77,0,0,1,.23,2.1,6.77,6.77,0,0,1-.23,2.1,1.3,1.3,0,0,1-1.32.92A1.29,1.29,0,0,1,15,12.17a6.77,6.77,0,0,1-.23-2.1A6.86,6.86,0,0,1,15,8ZM11.45,5.3l.89,2.87.88-2.87H14.4L12.88,9.7v3.24h-1.1V9.7L10.24,5.3ZM24.93,23.91a3,3,0,0,1-3,3h-12a3,3,0,0,1-3-3V18.05a3,3,0,0,1,3-3h12a3,3,0,0,1,3,3Z"/></svg></a> </div> <div class="footer-international"> <h2 class="footer-header">International</h2> <ul class="footer-links"> <li><a href="https://www.oreilly.com/anz/">Australia &amp; New Zealand</a></li> <li><a href="https://oreilly.hk/">Hong Kong &amp; Taiwan</a></li> <li><a href="https://oreillylearning.in/">India</a></li> <li><a href="https://oreilly.id/">Indonesia</a></li> <li><a href="https://www.oreilly.co.jp/index.shtml">Japan</a></li> </ul> </div> </div> </div> <div class="footer-download" id="download-info"> <h2 class="footer-header">Download the O&rsquo;Reilly App</h2> <p>Take O&rsquo;Reilly with you and learn anywhere, anytime on your phone <span class="nowrap">and tablet.</span></p> <div class="footer-downloadLinks"> <a href="https://itunes.apple.com/us/app/safari-to-go/id881697395"><img src="https://cdn.oreillystatic.com/oreilly/images/app-store-logo.png" alt="Apple app store" /></a> <a href="https://play.google.com/store/apps/details?id=com.safariflow.queue"><img src="https://cdn.oreillystatic.com/oreilly/images/google-play-logo.png" alt="Google play store" /></a> </div> </div> <div class="footer-download" id="tv-info"> <h2 class="footer-header">Watch on your big screen</h2> <p>View all O&rsquo;Reilly videos, Superstream events, and Meet the Expert sessions on your <span class="nowrap">home TV.</span></p> <div class="footer-downloadLinks"> <a href="https://channelstore.roku.com/details/c8a2d0096693eb9455f6ac165003ee06/oreilly"><img src="https://cdn.oreillystatic.com/oreilly/images/roku-tv-logo.png" alt="Roku Players and TVs" /></a> <a href="https://www.amazon.com/OReilly-Media-Inc/dp/B087YYHL5C/ref=sr_1_2?dchild=1&keywords=oreilly&qid=1604964116&s=mobile-apps&sr=1-2"><img src="https://cdn.oreillystatic.com/oreilly/images/amazon-appstore-logo.png" alt="Amazon appstore" /></a> </div> </div> <div class="footer-donotsell" id="donotsell-info"> <h2 class="footer-header"><a href="https://www.oreilly.com/privacy.html?donotsell=show">Do not sell or share my personal information</a></h2> </div> </div> <div class="footer-subfooter"> <a href="https://www.oreilly.com" title="home page" aria-current="page"> <img class="footer-subfooterLogo" id="footer-subfooterLogo" src="https://cdn.oreillystatic.com/images/sitewide-headers/oreilly_logo_mark_red.svg" onerror="this.src='https://cdn.oreillystatic.com/images/sitewide-headers/oreilly_logo_mark_red_@2x.png'; this.onerror=null;" alt="O'Reilly home"> </a> <p>&copy; 2025, O&rsquo;Reilly Media, Inc. All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners.</p> <p><a href="/terms/">Terms of service</a> &bull; <a href="/privacy.html">Privacy policy</a> &bull; <a href="/about/editorial_independence.html">Editorial independence</a><span class="transparencyStatement" style="display:none;"> &bull; <a href="/modern-slavery-act-transparency-statement.html">Modern Slavery Act Statement</a></span></p> </div> </div> </footer> <script src="https://cdn.oreillystatic.com/ajax/libs/jquery/3.7.0/jquery.min.js"></script> <script> $(function() { //Toggle isActive and mobileHidden classes for mobileNavButton $('nav #mobileNavButton').on('click', function() { var expanded = $(this).attr('aria-expanded') === 'true' || false; $(this).attr('aria-expanded', !expanded); $(this).toggleClass("isActive"); $(this).next().toggleClass("mobileHidden"); }); //Toggle isFocused class for keyboard navigation of submenus $('nav #menuList .menuList-subItem a').each(function(navItem) { $(this).on('focus', function() { $(this).parent().parent().toggleClass('isFocused'); }); $(this).on('blur', function() { $(this).parent().parent().toggleClass('isFocused'); }); }); //Toggle mobileHidden class accordian elements $('.mobileAccordian').each(function() { var $btn = $(this).find('button'); var $target = $(this).next(); $btn.on('click', function() { var expanded = $btn.attr('aria-expanded') === 'true' || false; $btn.attr('aria-expanded', !expanded); $target.toggleClass("mobileHidden"); }); }); //Search platform form action function searchSubmit(e) { e.preventDefault(); sParameter = searchForm.search.value; sParameter = encodeURIComponent(sParameter.trim()); sURL = searchForm.action + '?query=' + sParameter; window.location = sURL; //GA event for search dataLayer.push({ 'event': 'eventTracker', 'eventCat':'site search', 'eventAct':'search box', 'eventLbl':'explore our content', 'eventVal':0, 'nonInteraction': 0, }); } const searchForm = document.getElementById('js-searchForm'); searchForm.addEventListener('submit', searchSubmit); //Search button action function showNavSearch(e) { $('.menuList-item-search').addClass('overlay'); $('.menuList-item-search input#search').focus(); } const searchButton = document.getElementById('js-searchButton'); searchButton.addEventListener('click', showNavSearch); //Close search button action function hideNavSearch(e) { $('.menuList-item-search').removeClass('overlay'); } const searchCloseButton = document.getElementById('js-searchCloseButton'); searchCloseButton.addEventListener('click', hideNavSearch); //"Try Now" nav button tracking $('#nav-tryNow').on('click', function() { dataLayer.push({ 'event': 'eventTracker', 'eventCat':'marketing', 'eventAct':'nav', 'eventLbl':'try now', 'eventVal':0, 'nonInteraction': 0, }); }); //"Sign in" nav button tracking $('#nav-signIn').on('click', function() { dataLayer.push({ 'event': 'eventTracker', 'eventCat':'marketing', 'eventAct':'nav', 'eventLbl':'sign in', 'eventVal':0, 'nonInteraction': 0, }); }); //"O'Reilly Platform" nav button tracking $('#nav-platform').on('click', function() { dataLayer.push({ 'event': 'eventTracker', 'eventCat':'marketing', 'eventAct':'nav', 'eventLbl':'oreilly platform', 'eventVal':0, 'nonInteraction': 0, }); }); }); (function(document, history, location) { var HISTORY_SUPPORT = !!(history && history.pushState); FIXED_HEADER_HEIGHT = document.querySelector('body > header').offsetHeight; FIXED_HEADER_HEIGHT += 20; var anchorScrolls = { ANCHOR_REGEX: /^#[^ ]+$/, OFFSET_HEIGHT_PX: FIXED_HEADER_HEIGHT, /** * Establish events, and fix initial scroll position if a hash is provided. */ init: function() { this.scrollToCurrent(); window.addEventListener('hashchange', this.scrollToCurrent.bind(this)); document.body.addEventListener('click', this.delegateAnchors.bind(this)); }, /** * Return the offset amount to deduct from the normal scroll position. * Modify as appropriate to allow for dynamic calculations */ getFixedOffset: function() { return this.OFFSET_HEIGHT_PX; }, /** * If the provided href is an anchor which resolves to an element on the * page, scroll to it. * @param {String} href * @return {Boolean} - Was the href an anchor. */ scrollIfAnchor: function(href, pushToHistory) { var match, rect, anchorOffset; if(!this.ANCHOR_REGEX.test(href)) { return false; } match = document.getElementById(href.slice(1)); if(match) { rect = match.getBoundingClientRect(); anchorOffset = window.pageYOffset + rect.top - this.getFixedOffset(); // Wait 1ms and scroll. It wasn't consistently scrolling immediately. setTimeout(function(){ window.scroll(window.pageXOffset, anchorOffset); }, 1); // Add the state to history as-per normal anchor links if(HISTORY_SUPPORT && pushToHistory) { history.pushState({}, document.title, location.pathname + href); } } return !!match; }, /** * Attempt to scroll to the current location's hash. */ scrollToCurrent: function() { this.scrollIfAnchor(window.location.hash); }, /** * If the click event's target was an anchor, fix the scroll position. */ delegateAnchors: function(e) { var elem = e.target; if( elem.nodeName === 'A' && this.scrollIfAnchor(elem.getAttribute('href'), true) ) { e.preventDefault(); } } }; window.addEventListener( 'DOMContentLoaded', anchorScrolls.init.bind(anchorScrolls) ); })(window.document, window.history, window.location); </script><script type="text/javascript" src="/rhNq5lNIuI0lo/_EQN5TzEsqDrg/M/uOitL6rkmXLN7pOJ/WlluOA/M3BwKF0/PXHgB"></script><link rel="stylesheet" type="text/css" href="/rhNq5lNIuI0lo/_EQN5TzEsqDrg/M/SJit7b/SAxgOA/cUBJARt/CB3xY"><script src="/rhNq5lNIuI0lo/_EQN5TzEsqDrg/M/SJit7b/SAxgOA/JXtFVXR/HMm0p" async defer></script><div id="sec-overlay" style="display:none;"><div id="sec-container"></div></div></body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10