{"id":19217,"date":"2019-12-19T14:27:43","date_gmt":"2019-12-19T13:27:43","guid":{"rendered":"https:\/\/blog.trifork.com\/?p=19217"},"modified":"2019-12-19T14:27:43","modified_gmt":"2019-12-19T13:27:43","slug":"kotlin-just-another-programming-language-can-it-replace-java","status":"publish","type":"post","link":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/","title":{"rendered":"Kotlin &#8211; just another programming language?"},"content":{"rendered":"\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"467\" src=\"https:\/\/trifork.nl\/articles\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-1024x467.jpg\" alt=\"KotlinConf 2019 Opening Keynote from Andrey Breslav, CTO of JetBrains\" class=\"wp-image-19219\" srcset=\"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-1024x467.jpg 1024w, https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-300x137.jpg 300w, https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-768x350.jpg 768w, https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-1536x700.jpg 1536w, https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-2048x934.jpg 2048w, https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-1920x876.jpg 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Recently, I attended the Kotlin programming language conference, aptly named <a href=\"https:\/\/kotlinconf.com\/\">KotlinConf<\/a>, to learn about the latest developments in the language.<br \/><\/p>\n\n\n\n<p>Naturally, my first idea for this blog was to list the top takeaways of the talks I attended. However, I thought it could be more useful for those who aren\u2019t familiar with Kotlin yet to take a step out of Kotlin fanatic land, and spell out what all the fuss is about. There must be a reason KotlinConf has sold out three years in a row, right?<br \/><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>So WTF is Kotlin anyway?<\/strong><\/h4>\n\n\n\n<p>Kotlin is a general-purpose programming language that can be used across a variety of platforms. Version 1.0 was launched by <a href=\"https:\/\/www.jetbrains.com\/\">JetBrains<\/a> in 2016, both on the Java Virtual Machine (JVM) and Android, after considerable testing and consultation with the tech community.&nbsp;<br \/><\/p>\n\n\n\n<p>If you don\u2019t know JetBrains you\u2019re about to realise that you probably do. They make tools that make developers\u2019 lives easier. IntelliJ, an Integrated Development Environment (IDE) is probably their best-known product and is becoming somewhat ubiquitous in Java world. Outside of the JVM they have popular IDEs for languages such as Python, PHP and .NET.<br \/><\/p>\n\n\n\n<p>JetBrains\u2019 mission to make dev lives easier is at the core of Kotlin. It\u2019s interoperability with Java, friendly syntax and modern implementation has made it a tempting new toy to play with for many Java developers. It is something new and fun but also something safe and familiar.<br \/><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Cool, why should I care?<\/strong><\/h4>\n\n\n\n<p>Being a baby relative to Java (which was launched over 20 years ago), might make you think that this language is still experimental, the stuff of party tricks for super nerds. But Kotlin has seen rapid adoption across a number of industries since its first stable release in 2016.<br \/><\/p>\n\n\n\n<p>Since then, the number of users who have edited Kotlin code (including just for fun), has grown from 200,000 to over 4 million.<br \/><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.youtube.com\/watch?v=0xKTM0A8gdI\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/Uer6dXhLb3DWxlJqoZ0ACUYibTjDRAJHY64cDjZtND60vHXdCEaiDgK1wqpuRjSzbtzRDyigrjQ9nueIiPXevkeAUdneDmuPePMRLHLVNMHx1ofaJMsh8WMux8iugNqjsTHTccvQ\" alt=\"Bar chart showing growth in number of users of Kotlin since 1.0 release\" \/><\/a><figcaption>Source: <a href=\"https:\/\/www.youtube.com\/watch?v=0xKTM0A8gdI\">Andrey Breslav&#8217;s Opening Keynote, KotlinConf 2019<\/a><\/figcaption><\/figure>\n\n\n\n<p>Trifork was an early adopter of Kotlin, first using it in a project for a customer in 2017. Over 6000 online student tests are now run each day through the <a href=\"https:\/\/www.mindsteps.ch\/\">Mindsteps<\/a> system.<br \/><\/p>\n\n\n\n<p>And it turns out we\u2019re in good company. Many more companies are realising the benefits of running Kotlin in production:<br \/><\/p>\n\n\n\n<p><strong>Google<\/strong> &#8211; made Kotlin an official language of Android in 2017. So if you have an Android phone, chances are there is Kotlin app running on it. The Google apps Drive, Sheets, Docs, Home and Nest are all built with Kotlin.<br \/><\/p>\n\n\n\n<p><strong>Netflix<\/strong> &#8211; the streaming service has written its in-house <a href=\"https:\/\/www.youtube.com\/watch?v=CbL1d2Nd3Rg\">build and deployment tools in Kotlin<\/a><br \/><\/p>\n\n\n\n<p><strong>N26<\/strong> &#8211; Europe\u2019s online bank, that has turned traditional banking on its head. An early adopter of Kotlin, it is now a <a href=\"https:\/\/www.youtube.com\/watch?v=nRAwOU11c_c\">major programming language for their backend services<\/a><br \/><\/p>\n\n\n\n<p><strong>Norwegian Tax Administration (NTA)<\/strong> &#8211; has been <a href=\"https:\/\/www.youtube.com\/watch?v=K8XxaAba65g\">running the nation\u2019s taxes<\/a> in Kotlin for several years now<br \/><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Does Kotlin replace Java?<\/strong><\/h4>\n\n\n\n<p>Kotlin is certainly an alternative to Java. A very real alternative. Java has been around for a very long time and as a result, it is a mature technology with a well-supported ecosystem and large community. What makes Kotlin a promising alternative to Java, in my opinion, is twofold:&nbsp;<br \/><\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Java Developers can continue to use familiar tools and frameworks (such as Spring Boot) thereby flattening the initial learning curve. Feeding into this is the interoperability of Kotlin code with Java code. It is possible to utilise familiar Java libraries in Kotlin code. You can even have files of both languages in the same project!<\/li><li>Kotlin is concise yet expressive, which reduces maintenance overhead and improves readability. It also builds upon many lessons learned in Java, such as the \u201c<a href=\"https:\/\/en.wikipedia.org\/wiki\/Tony_Hoare#Apologies_and_retractions\">billion-dollar mistake<\/a>\u201d of nullability. And it\u2019s fun!<\/li><\/ol>\n\n\n\n<p>But will Kotlin replace Java? Maybe, but not for a while. The <a href=\"https:\/\/blogs.oracle.com\/java-platform-group\/update-and-faq-on-the-java-se-release-cadence\">new release cadence of Java<\/a> has resulted in an increase in the frequency that new language features are released. So, it is also able to keep up with the pace of technological change faster than it previously has. This will maintain the inertia of a lot of people who have spent the bulk of their careers programming in Java.<br \/><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>What about frontend?<\/strong><\/h4>\n\n\n\n<p>As of version 1.1, KotlinJS is stable. That means that Kotlin code can be transpiled to JavaScript (JS), where it can be run in the browser just like plain old JS. Most of the existing JS libraries can be used with KotlinJS, further legitimising the choice to adopt it as a frontend language.&nbsp;<br \/><\/p>\n\n\n\n<p>In fact, JetBrains\u2019 newest product, a <a href=\"https:\/\/www.youtube.com\/watch?v=t1vMUV9jYRs\">team productivity tool called Space<\/a>, is written entirely in Kotlin. If that doesn\u2019t count as \u201c<a href=\"https:\/\/en.wikipedia.org\/wiki\/Eating_your_own_dog_food\">eating your own dog food<\/a>\u201d, then I don\u2019t know what does.<br \/><\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>iOS?<\/strong><\/h4>\n\n\n\n<p>Kotlin\/Native is now in beta, with a stable release on the roadmap for next year. Kotlin\/Native takes a step away from virtual machines. Instead, it compiles to specific platforms, allowing you to reuse more code in multiplatform environments. The most obvious use case for this would be for mobile applications built for both iOS and Android. <\/p>\n\n\n\n<p>From what I\u2019ve seen, there is still a fair amount of platform-specific coding required to get both an iOS and Android app out in the market. However, the neat thing about Kotlin\/Native is that you can share significantly more code across platforms, which has the potential to offer real benefit to teams building and maintaining apps. It will be interesting to see how this aspect of the Kotlin ecosystem evolves.<br \/><\/p>\n\n\n\n<p>So there you have it, my crash course into the world of Kotlin. If you have any questions or comments, leave them below or email me at <a href=\"mailto:adele.carpenter@trifork.nl\">adele.carpenter@trifork.nl<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Recently, I attended the Kotlin programming language conference, aptly named KotlinConf, to learn about the latest developments in the language. Naturally, my first idea for this blog was to list the top takeaways of the talks I attended. However, I thought it could be more useful for those who aren\u2019t familiar with Kotlin yet to [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":19219,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[53,12,97,62,54,31,85,465,55,10],"tags":[25,14,11,466,67,467],"class_list":["post-19217","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android","category-conference","category-general","category-ipad","category-iphone","category-java","category-knowledge","category-kotlin","category-mobile","category-development","tag-android","tag-conference","tag-java","tag-kotlin","tag-mobile","tag-software-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Kotlin - just another programming language? - Trifork Blog<\/title>\n<meta name=\"description\" content=\"Can Kotlin replace Java? When compared with Java, Kotlin is a relative newcomer. But Kotlin has seen rapid adoption across a number of industries.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Kotlin - just another programming language? - Trifork Blog\" \/>\n<meta property=\"og:description\" content=\"Can Kotlin replace Java? When compared with Java, Kotlin is a relative newcomer. But Kotlin has seen rapid adoption across a number of industries.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/\" \/>\n<meta property=\"og:site_name\" content=\"Trifork Blog\" \/>\n<meta property=\"article:published_time\" content=\"2019-12-19T13:27:43+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1167\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Adele Carpenter\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Adele Carpenter\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/\",\"url\":\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/\",\"name\":\"Kotlin - just another programming language? - Trifork Blog\",\"isPartOf\":{\"@id\":\"https:\/\/trifork.nl\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-scaled.jpg\",\"datePublished\":\"2019-12-19T13:27:43+00:00\",\"author\":{\"@id\":\"https:\/\/trifork.nl\/blog\/#\/schema\/person\/b9d5fdca2dfd17250a593b25b9406d55\"},\"description\":\"Can Kotlin replace Java? When compared with Java, Kotlin is a relative newcomer. But Kotlin has seen rapid adoption across a number of industries.\",\"breadcrumb\":{\"@id\":\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#primaryimage\",\"url\":\"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-scaled.jpg\",\"contentUrl\":\"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-scaled.jpg\",\"width\":2560,\"height\":1167},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/trifork.nl\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kotlin &#8211; just another programming language?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/trifork.nl\/blog\/#website\",\"url\":\"https:\/\/trifork.nl\/blog\/\",\"name\":\"Trifork Blog\",\"description\":\"Keep updated on the technical solutions Trifork is working on!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/trifork.nl\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/trifork.nl\/blog\/#\/schema\/person\/b9d5fdca2dfd17250a593b25b9406d55\",\"name\":\"Adele Carpenter\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/trifork.nl\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7dd921ab66f368e0afad4248b04a0ddd?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7dd921ab66f368e0afad4248b04a0ddd?s=96&d=mm&r=g\",\"caption\":\"Adele Carpenter\"},\"sameAs\":[\"http:\/\/trifork.com\"],\"url\":\"https:\/\/trifork.nl\/blog\/author\/adelec\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Kotlin - just another programming language? - Trifork Blog","description":"Can Kotlin replace Java? When compared with Java, Kotlin is a relative newcomer. But Kotlin has seen rapid adoption across a number of industries.","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:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/","og_locale":"en_US","og_type":"article","og_title":"Kotlin - just another programming language? - Trifork Blog","og_description":"Can Kotlin replace Java? When compared with Java, Kotlin is a relative newcomer. But Kotlin has seen rapid adoption across a number of industries.","og_url":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/","og_site_name":"Trifork Blog","article_published_time":"2019-12-19T13:27:43+00:00","og_image":[{"width":2560,"height":1167,"url":"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-scaled.jpg","type":"image\/jpeg"}],"author":"Adele Carpenter","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Adele Carpenter","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/","url":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/","name":"Kotlin - just another programming language? - Trifork Blog","isPartOf":{"@id":"https:\/\/trifork.nl\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#primaryimage"},"image":{"@id":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#primaryimage"},"thumbnailUrl":"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-scaled.jpg","datePublished":"2019-12-19T13:27:43+00:00","author":{"@id":"https:\/\/trifork.nl\/blog\/#\/schema\/person\/b9d5fdca2dfd17250a593b25b9406d55"},"description":"Can Kotlin replace Java? When compared with Java, Kotlin is a relative newcomer. But Kotlin has seen rapid adoption across a number of industries.","breadcrumb":{"@id":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#primaryimage","url":"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-scaled.jpg","contentUrl":"https:\/\/trifork.nl\/blog\/wp-content\/uploads\/sites\/3\/2019\/12\/IMG_20191205_090708-min-scaled.jpg","width":2560,"height":1167},{"@type":"BreadcrumbList","@id":"https:\/\/trifork.nl\/blog\/kotlin-just-another-programming-language-can-it-replace-java\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/trifork.nl\/blog\/"},{"@type":"ListItem","position":2,"name":"Kotlin &#8211; just another programming language?"}]},{"@type":"WebSite","@id":"https:\/\/trifork.nl\/blog\/#website","url":"https:\/\/trifork.nl\/blog\/","name":"Trifork Blog","description":"Keep updated on the technical solutions Trifork is working on!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/trifork.nl\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/trifork.nl\/blog\/#\/schema\/person\/b9d5fdca2dfd17250a593b25b9406d55","name":"Adele Carpenter","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/trifork.nl\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/7dd921ab66f368e0afad4248b04a0ddd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7dd921ab66f368e0afad4248b04a0ddd?s=96&d=mm&r=g","caption":"Adele Carpenter"},"sameAs":["http:\/\/trifork.com"],"url":"https:\/\/trifork.nl\/blog\/author\/adelec\/"}]}},"_links":{"self":[{"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/posts\/19217","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/comments?post=19217"}],"version-history":[{"count":0,"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/posts\/19217\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/media\/19219"}],"wp:attachment":[{"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/media?parent=19217"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/categories?post=19217"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/trifork.nl\/blog\/wp-json\/wp\/v2\/tags?post=19217"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}