{"id":28487,"date":"2018-04-18T12:43:34","date_gmt":"2018-04-18T10:43:34","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=28487"},"modified":"2018-04-18T12:43:34","modified_gmt":"2018-04-18T10:43:34","slug":"the-deepest-reason-why-modern-javascript-frameworks-exist","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/","title":{"rendered":"The deepest reason why modern JavaScript frameworks exist"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p><a href=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/04\/javascript-frameworks-reason.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"28488\" data-permalink=\"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/javascript-frameworks-reason\/\" data-orig-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/04\/javascript-frameworks-reason.png?fit=550%2C550&amp;ssl=1\" data-orig-size=\"550,550\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"javascript frameworks reason\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/04\/javascript-frameworks-reason.png?fit=550%2C550&amp;ssl=1\" class=\"aligncenter size-medium wp-image-28488\" src=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/04\/javascript-frameworks-reason-500x500.png?resize=500%2C500&#038;ssl=1\" alt=\"\" width=\"500\" height=\"500\" srcset=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/04\/javascript-frameworks-reason.png?resize=500%2C500&amp;ssl=1 500w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/04\/javascript-frameworks-reason.png?resize=150%2C150&amp;ssl=1 150w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/04\/javascript-frameworks-reason.png?w=550&amp;ssl=1 550w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<p>&#8220;<a href=\"https:\/\/medium.com\/dailyjs\/the-deepest-reason-why-modern-javascript-frameworks-exist-933b86ebc445\">The deepest reason why modern JavaScript frameworks exist<\/a>&#8221; is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are.\u00a0 The conclusions from the article are:<\/p>\n<blockquote>\n<ul>\n<li>The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state.<\/li>\n<li>It is not possible to write complex, efficient and easy to maintain UIs with Vanilla JavaScript.<\/li>\n<li>Web components do not provide a solution to this problem.<\/li>\n<li>It\u2019s not that hard to make your own framework using an existing Virtual DOM library. But I\u2019m not suggesting you to do that!<\/li>\n<\/ul>\n<\/blockquote>\n<p>Read the whole thing for some examples and explanations.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>&#8220;The deepest reason why modern JavaScript frameworks exist&#8221; is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are.\u00a0 The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">The deepest reason why modern JavaScript frameworks exist<\/span><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"The deepest reason why modern JavaScript frameworks exist #WebDev #JavaScript #UI","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,18,62,1334],"tags":[1139,1158,1330],"keyring_services":[],"class_list":["post-28487","post","type-post","status-publish","format-standard","hentry","category-general","category-programming","category-technology","category-web-work","tag-javascript","tag-user-interfaces","tag-web-development"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"&quot;The deepest reason why modern JavaScript frameworks exist&quot; is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are. The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"&quot;The deepest reason why modern JavaScript frameworks exist&quot; is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are. The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2018-04-18T10:43:34+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2018-04-18T10:43:34+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"&quot;The deepest reason why modern JavaScript frameworks exist&quot; is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are. The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#blogposting\",\"name\":\"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov\",\"headline\":\"The deepest reason why modern JavaScript frameworks exist\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/wp-content\\\/uploads\\\/2018\\\/04\\\/javascript-frameworks-reason-500x500.png\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#articleImage\"},\"datePublished\":\"2018-04-18T12:43:34+02:00\",\"dateModified\":\"2018-04-18T12:43:34+02:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#webpage\"},\"articleSection\":\"All, Programming, Technology, Web work, JavaScript, user interfaces, web development\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"position\":3,\"name\":\"Programming\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#listItem\",\"name\":\"The deepest reason why modern JavaScript frameworks exist\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#listItem\",\"position\":4,\"name\":\"The deepest reason why modern JavaScript frameworks exist\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/\",\"name\":\"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov\",\"description\":\"\\\"The deepest reason why modern JavaScript frameworks exist\\\" is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are. The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2018\\\/04\\\/18\\\/the-deepest-reason-why-modern-javascript-frameworks-exist\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2018-04-18T12:43:34+02:00\",\"dateModified\":\"2018-04-18T12:43:34+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov","description":"\"The deepest reason why modern JavaScript frameworks exist\" is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are. The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#blogposting","name":"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov","headline":"The deepest reason why modern JavaScript frameworks exist","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/04\/javascript-frameworks-reason-500x500.png","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#articleImage"},"datePublished":"2018-04-18T12:43:34+02:00","dateModified":"2018-04-18T12:43:34+02:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#webpage"},"articleSection":"All, Programming, Technology, Web work, JavaScript, user interfaces, web development"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","position":3,"name":"Programming","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#listItem","name":"The deepest reason why modern JavaScript frameworks exist"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#listItem","position":4,"name":"The deepest reason why modern JavaScript frameworks exist","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/","name":"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov","description":"\"The deepest reason why modern JavaScript frameworks exist\" is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are. The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2018-04-18T12:43:34+02:00","dateModified":"2018-04-18T12:43:34+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov","og:description":"&quot;The deepest reason why modern JavaScript frameworks exist&quot; is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are. The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to","og:url":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2018-04-18T10:43:34+00:00","article:modified_time":"2018-04-18T10:43:34+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"The deepest reason why modern JavaScript frameworks exist - Leonid Mamchenkov","twitter:description":"&quot;The deepest reason why modern JavaScript frameworks exist&quot; is a nice article looking at the crazy world of JavaScript frameworks and exploring why things are how they are. The conclusions from the article are: The main problem modern JavaScript frameworks solve is keeping the UI in sync with the state. It is not possible to","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"28487","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-20 05:15:54","updated":"2026-01-15 13:35:45","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/\" title=\"Programming\">Programming<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tThe deepest reason why modern JavaScript frameworks exist\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"Technology","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/"},{"label":"Programming","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/"},{"label":"The deepest reason why modern JavaScript frameworks exist","link":"https:\/\/mamchenkov.net\/wordpress\/2018\/04\/18\/the-deepest-reason-why-modern-javascript-frameworks-exist\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":28327,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/01\/15\/the-brutal-lifecycle-of-javascript-frameworks\/","url_meta":{"origin":28487,"position":0},"title":"The Brutal Lifecycle of JavaScript Frameworks","author":"Leonid Mamchenkov","date":"January 15, 2018","format":false,"excerpt":"JavaScript ecosystem is well known for its dynamic nature.\u00a0 There are a gadzillion of libraries and frameworks, and they come and go much faster than any developer can learn and utilize them.\u00a0 StackOverflow blog runs this article, which looks at the issue in more detail.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/01\/javascript-frameworks-500x330.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":18831,"url":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/21\/an-introduction-to-full-stack-javascript\/","url_meta":{"origin":28487,"position":1},"title":"An Introduction To Full-Stack JavaScript","author":"Leonid Mamchenkov","date":"November 21, 2013","format":"link","excerpt":"An Introduction To Full-Stack JavaScript There is more JavaScript discussion and references in this article than I can handle in go. \u00a0Reading it parts is recommended, if you are not too experienced with the recent explosion in all kinds of JavaScript tools and frameworks.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":28396,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/02\/19\/replacing-jquery-with-vue-js-no-build-step-necessary\/","url_meta":{"origin":28487,"position":2},"title":"Replacing jQuery With Vue.js: No Build Step Necessary","author":"Leonid Mamchenkov","date":"February 19, 2018","format":false,"excerpt":"\"Replacing jQuery With Vue.js: No Build Step Necessary\" article looks at one of the ways to migrate from jQuery to Vue.js as in almost drop-in replacement.\u00a0 It's a nice starter guide for people who have been using jQuery for years and are now looking at more powerful and modern JavaScript\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":20210,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/02\/03\/list-of-minimalist-web-frameworks\/","url_meta":{"origin":28487,"position":3},"title":"List of minimalist web frameworks","author":"Leonid Mamchenkov","date":"February 3, 2014","format":"link","excerpt":"List of minimalist web frameworks Framework for CSS Web Framework for C Frameworks for Front-end JS Web framework for Go Web framework for Haskell Web framework for Java Web framework for Javascript Web framework for Lua Web framework for Node.js Web framework for Perl Web framework for PHP Web framework\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":27976,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/09\/08\/angular-vs-react-vs-vue-a-2017-comparison\/","url_meta":{"origin":28487,"position":4},"title":"Angular vs. React vs. Vue: A 2017 comparison","author":"Leonid Mamchenkov","date":"September 8, 2017","format":false,"excerpt":"\"Angular vs. React vs. Vue: A 2017 comparison\" is a very lengthy and detailed comparison of the top three most popular JavaScript frameworks: Angular, React and Vue. \u00a0There are also lots of links and references for further reading, but even if you don't leave the article, chances are you'll have\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":27638,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/05\/28\/choosing-a-future-javascript-framework-for-wordpress\/","url_meta":{"origin":28487,"position":5},"title":"Choosing a future JavaScript framework for WordPress","author":"Leonid Mamchenkov","date":"May 28, 2017","format":false,"excerpt":"WordPress in general, and Matt Mullenweg in particular have been pushing for JavaScript for a while now. https:\/\/www.youtube.com\/watch?v=KrZx4IY1IgU So, it's not surprising that WordPress developers are chatting about the JavaScript framework that they'll use for the WordPress core JavaScript needs. The discussion is far from finalized right now, so it's\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/img.youtube.com\/vi\/KrZx4IY1IgU\/0.jpg?resize=350%2C200","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/28487","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=28487"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/28487\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=28487"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=28487"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=28487"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=28487"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}