{"id":8539,"date":"2015-11-17T12:15:43","date_gmt":"2015-11-17T10:15:43","guid":{"rendered":"http:\/\/www.webcodegeeks.com\/?p=8539"},"modified":"2015-11-16T19:09:54","modified_gmt":"2015-11-16T17:09:54","slug":"top-10-lessons-learned-enterprise-javascript-development","status":"publish","type":"post","link":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/","title":{"rendered":"The Top 10 Lessons Learned from Enterprise JavaScript Development"},"content":{"rendered":"<p>A week ago I presented a talk at Atlanta\u2019s <a href=\"http:\/\/connect-js.com\/\" target=\"_blank\">ConnectJS<\/a> conference.<\/p>\n<p>The title of the talk was \u201cThe Top 10 Lessons Learned in Enterprise JavaScript.\u201d Because it was a JavaScript-focused talk I decided to author the presentation in JavaScript using one of Google\u2019s Html5 projects.<\/p>\n<p>You can view <a href=\"http:\/\/jeremylikness.github.io\/Top10EnterpriseJS\/\" target=\"_blank\">The Top 10 Lessons from Enterprise JavaScript Development<\/a> and also <a href=\"https:\/\/github.com\/jeremylikness\/Top10EnterpriseJS\" target=\"_blank\">browse the source<\/a>.<\/p>\n<p>The deck features frames that load live content to make certain points, so it may take some time to initialize in your browser and may flash some warnings. I took snapshots of the slides with dependencies in case you have trouble loading it.<\/p>\n<p><a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2015\/11\/top5lessons8.jpg\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-8581\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2015\/11\/top5lessons8.jpg\" alt=\"top5lessons[8]\" width=\"575\" height=\"313\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2015\/11\/top5lessons8.jpg 575w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2015\/11\/top5lessons8-300x163.jpg 300w\" sizes=\"(max-width: 575px) 100vw, 575px\" \/><\/a><\/p>\n<p>In the purest sense, Enterprise JavaScript is simply JavaScript used in applications that serve the enterprise, typically via line of business applications. It is typical for these projects to be larger than direct-to-consumer or \u201cbrochure site\u201d code bases. Some projects span years and involve hundreds of thousands of lines of code. Another important aspect that differentiates this class of application is the size of the team. I\u2019ve worked on teams with 25 developers simultaneously working in the same code base, and even larger teams exist.<\/p>\n<p>To summarize the deck, after working with JavaScript in the enterprise for nearly two decades I\u2019ve learned these lessons:<\/p>\n<ol>\n<li><strong>Yes We Can!<\/strong> \u2013 although JavaScript began as a scripting language to glue Java applets to the DOM, we can absolutely build complex mission critical line of business apps now that the language and supporting frameworks have evolved.<\/li>\n<li><strong>Dynamic Requires Strict Measures<\/strong> \u2013 when you are working with large teams the dynamic nature of the language can quickly turn the code into a nightmare. It makes a lot of sense to use languages like CoffeeScript or TypeScript to add form and structure when dealing with larger teams or code bases.<\/li>\n<li><strong>Forget Java and C#<\/strong> \u2013 not really, they will still have a place, but with the advent of technologies like NodeJS you can truly write your full stack with one language.<\/li>\n<li><strong>DOM stands for \u201cDemonic Object Matrix\u201d<\/strong> \u2013 I\u2019ve found that a lot of the blame JavaScript receives isn\u2019t because of the language itself, but the inconsistent implementation of the Document Object Model across browsers. That is why it is more important than ever to leverage libraries like jQuery and Bootstrap to \u201cnormalize\u201d access to the DOM, styles, and behaviors.<\/li>\n<li><strong>Live on the Edge<\/strong> \u2013 yes, there was a funeral for IE6. But then things got worse. In this day and age I fight as hard as I can to get out of the rut of writing backwards compatible software for older versioned browsers. Instead, I ask that companies live on the edge versions.<\/li>\n<li><strong>TypeScript is like Coffee<\/strong> \u2013 no, not like CoffeeScript. I\u2019ve witnessed the before and after or a team working in pure JavaScript and then migrating to TypeScript and it\u2019s like hitting the nitro button in a race car. Even JavaScript purists on teams I\u2019ve lead have told me after using it they really see the value and are glad we made the switch.<\/li>\n<li><strong>Frameworks Save Lives<\/strong> \u2013 I\u2019ve witnessed more than a few heated discussions in forums about sticking with pure JavaScript and avoiding frameworks like the plague. Typically it is the high and mighty architect pontificating about how they mastered the language and everyone should either become an expert or not write code. That\u2019s great for forums and maybe to catch the eye of recruiters but in the real world time is money and frameworks help us scale and deliver applications more quickly. I can ramp an Angular developer onto an Angular project far more quickly than I could on a project that features \u201cJeremy\u2019s super ultra perfect because he knows JavaScript proprietary framework.\u201d<\/li>\n<li><strong>Don\u2019t Just Write It. Build It!<\/strong> \u2013 this simply means we no longer have to use NotePad to author JavaScript. It is integrated well into IDEs but more importantly we now have excellent frameworks like Gulp and Grunt to help build JavaScript and web-based applications. Use them! ASP.NET MVC 5 embraces this approach out of the box. Microsoft\u2019s Visual Studio Online build process now features specific build steps for installing Node packages and using package manages like Bower to pull down dependencies, then build apps using Grunt or Gulp.<\/li>\n<li><strong>Be Testy. Be Very Testy.<\/strong> \u2013 the day and age when JavaScript testing was difficult is long gone. There is no excuse not to test your JavaScript code and do it in an automated fashion that gates check-ins and runs in continuous integration and continual delivery processes. If you\u2019re not testing, you\u2019re not serious about your app.<\/li>\n<li><strong>XML is Dead. Long live JSON!<\/strong> \u2013 do I really have to qualify this one? Let\u2019s finally put to rest that chapter of SOAP and XSLT that we all participated in and were glad to move on from. JSON practically writes itself.<\/li>\n<\/ol>\n<p>I\u2019m done. There is a lot more detail in the deck so please view <a href=\"http:\/\/jeremylikness.github.io\/Top10EnterpriseJS\/\" target=\"_blank\">The Top 10 Lessons from Enterprise JavaScript Development<\/a> and also <a href=\"https:\/\/github.com\/jeremylikness\/Top10EnterpriseJS\" target=\"_blank\">browse the source<\/a>.<\/p>\n<div class=\"attribution\">\n<table>\n<tbody>\n<tr>\n<td><span class=\"reference\">Reference: <\/span><\/td>\n<td><a href=\"http:\/\/csharperimage.jeremylikness.com\/2015\/10\/the-top-10-lessons-learned-from.html\">The Top 10 Lessons Learned from Enterprise JavaScript Development<\/a> from our <a href=\"http:\/\/www.webcodegeeks.com\/wcg\/\">WCG partner<\/a> Jeremy Likness at the <a href=\"http:\/\/csharperimage.jeremylikness.com\/\">C#er : IMage<\/a> blog.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>A week ago I presented a talk at Atlanta\u2019s ConnectJS conference. The title of the talk was \u201cThe Top 10 Lessons Learned in Enterprise JavaScript.\u201d Because it was a JavaScript-focused talk I decided to author the presentation in JavaScript using one of Google\u2019s Html5 projects. You can view The Top 10 Lessons from Enterprise JavaScript &hellip;<\/p>\n","protected":false},"author":40,"featured_media":920,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-8539","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>The Top 10 Lessons Learned from Enterprise JavaScript Development - Web Code Geeks - 2026<\/title>\n<meta name=\"description\" content=\"A week ago I presented a talk at Atlanta\u2019s ConnectJS conference. The title of the talk was \u201cThe Top 10 Lessons Learned in Enterprise JavaScript.\u201d Because\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Top 10 Lessons Learned from Enterprise JavaScript Development - Web Code Geeks - 2026\" \/>\n<meta property=\"og:description\" content=\"A week ago I presented a talk at Atlanta\u2019s ConnectJS conference. The title of the talk was \u201cThe Top 10 Lessons Learned in Enterprise JavaScript.\u201d Because\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/\" \/>\n<meta property=\"og:site_name\" content=\"Web Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webcodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2015-11-17T10:15:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jeremy Likness\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/jeremylikness\" \/>\n<meta name=\"twitter:site\" content=\"@webcodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeremy Likness\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/\"},\"author\":{\"name\":\"Jeremy Likness\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/2cd31c082e3e1cc5f595ba18a6e03a43\"},\"headline\":\"The Top 10 Lessons Learned from Enterprise JavaScript Development\",\"datePublished\":\"2015-11-17T10:15:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/\"},\"wordCount\":865,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"articleSection\":[\"JavaScript\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/\",\"name\":\"The Top 10 Lessons Learned from Enterprise JavaScript Development - Web Code Geeks - 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"datePublished\":\"2015-11-17T10:15:43+00:00\",\"description\":\"A week ago I presented a talk at Atlanta\u2019s ConnectJS conference. The title of the talk was \u201cThe Top 10 Lessons Learned in Enterprise JavaScript.\u201d Because\",\"breadcrumb\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#primaryimage\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.webcodegeeks.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JavaScript\",\"item\":\"https:\/\/www.webcodegeeks.com\/category\/javascript\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The Top 10 Lessons Learned from Enterprise JavaScript Development\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"name\":\"Web Code Geeks\",\"description\":\"Web Developers Resource Center\",\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.webcodegeeks.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webcodegeeks\",\"https:\/\/x.com\/webcodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/2cd31c082e3e1cc5f595ba18a6e03a43\",\"name\":\"Jeremy Likness\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b4d8ee78925818e3f7a4d0d82df06d34a2b76aa4d260a1f4b67dc0553efbf1b6?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b4d8ee78925818e3f7a4d0d82df06d34a2b76aa4d260a1f4b67dc0553efbf1b6?s=96&d=mm&r=g\",\"caption\":\"Jeremy Likness\"},\"description\":\"Jeremy Likness is a principal architect at iVision, Inc. He has been building enterprise applications using the Microsoft stack for 20 years with a focus on web-based solutions for the past 15. A prolific author and speaker, Jeremy's mission is to empower developers to create success in their careers through learning and growth.\",\"sameAs\":[\"http:\/\/csharperimage.jeremylikness.com\/\",\"http:\/\/linkedin.com\/in\/jeremylikness\",\"https:\/\/x.com\/https:\/\/twitter.com\/jeremylikness\"],\"url\":\"https:\/\/www.webcodegeeks.com\/author\/jeremy-likness\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The Top 10 Lessons Learned from Enterprise JavaScript Development - Web Code Geeks - 2026","description":"A week ago I presented a talk at Atlanta\u2019s ConnectJS conference. The title of the talk was \u201cThe Top 10 Lessons Learned in Enterprise JavaScript.\u201d Because","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/","og_locale":"en_US","og_type":"article","og_title":"The Top 10 Lessons Learned from Enterprise JavaScript Development - Web Code Geeks - 2026","og_description":"A week ago I presented a talk at Atlanta\u2019s ConnectJS conference. The title of the talk was \u201cThe Top 10 Lessons Learned in Enterprise JavaScript.\u201d Because","og_url":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/","og_site_name":"Web Code Geeks","article_publisher":"https:\/\/www.facebook.com\/webcodegeeks","article_published_time":"2015-11-17T10:15:43+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","type":"image\/jpeg"}],"author":"Jeremy Likness","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/jeremylikness","twitter_site":"@webcodegeeks","twitter_misc":{"Written by":"Jeremy Likness","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#article","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/"},"author":{"name":"Jeremy Likness","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/2cd31c082e3e1cc5f595ba18a6e03a43"},"headline":"The Top 10 Lessons Learned from Enterprise JavaScript Development","datePublished":"2015-11-17T10:15:43+00:00","mainEntityOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/"},"wordCount":865,"commentCount":0,"publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","articleSection":["JavaScript"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/","url":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/","name":"The Top 10 Lessons Learned from Enterprise JavaScript Development - Web Code Geeks - 2026","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#primaryimage"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","datePublished":"2015-11-17T10:15:43+00:00","description":"A week ago I presented a talk at Atlanta\u2019s ConnectJS conference. The title of the talk was \u201cThe Top 10 Lessons Learned in Enterprise JavaScript.\u201d Because","breadcrumb":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#primaryimage","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.webcodegeeks.com\/javascript\/top-10-lessons-learned-enterprise-javascript-development\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.webcodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"JavaScript","item":"https:\/\/www.webcodegeeks.com\/category\/javascript\/"},{"@type":"ListItem","position":3,"name":"The Top 10 Lessons Learned from Enterprise JavaScript Development"}]},{"@type":"WebSite","@id":"https:\/\/www.webcodegeeks.com\/#website","url":"https:\/\/www.webcodegeeks.com\/","name":"Web Code Geeks","description":"Web Developers Resource Center","publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.webcodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.webcodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.webcodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webcodegeeks","https:\/\/x.com\/webcodegeeks"]},{"@type":"Person","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/2cd31c082e3e1cc5f595ba18a6e03a43","name":"Jeremy Likness","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/b4d8ee78925818e3f7a4d0d82df06d34a2b76aa4d260a1f4b67dc0553efbf1b6?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b4d8ee78925818e3f7a4d0d82df06d34a2b76aa4d260a1f4b67dc0553efbf1b6?s=96&d=mm&r=g","caption":"Jeremy Likness"},"description":"Jeremy Likness is a principal architect at iVision, Inc. He has been building enterprise applications using the Microsoft stack for 20 years with a focus on web-based solutions for the past 15. A prolific author and speaker, Jeremy's mission is to empower developers to create success in their careers through learning and growth.","sameAs":["http:\/\/csharperimage.jeremylikness.com\/","http:\/\/linkedin.com\/in\/jeremylikness","https:\/\/x.com\/https:\/\/twitter.com\/jeremylikness"],"url":"https:\/\/www.webcodegeeks.com\/author\/jeremy-likness\/"}]}},"_links":{"self":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/8539","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/users\/40"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/comments?post=8539"}],"version-history":[{"count":0,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/8539\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media\/920"}],"wp:attachment":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media?parent=8539"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/categories?post=8539"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/tags?post=8539"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}