{"id":2028,"date":"2018-03-07T10:50:00","date_gmt":"2018-03-07T10:50:00","guid":{"rendered":"https:\/\/dev.hypersense-software.com\/blog\/?p=2028"},"modified":"2024-09-20T12:38:22","modified_gmt":"2024-09-20T09:38:22","slug":"kotlin-programming-language","status":"publish","type":"post","link":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/","title":{"rendered":"Hypersense and Kotlin programming language"},"content":{"rendered":"\n<p>Kotlin has been around for quite some time now, having been open sourced in 2012 and it\u2019s 1.0 version released in 2016. Throughout it\u2019s development it\u2019s been hailed as a fresh new programming language, set to evolve into a serious contender for Java. While we\u2019ve been aware of Kotlin here at Hypersense, we\u2019ve only viewed it as a curiosity, taking note of other developer\u2019s experiences with it especially within the Android community. At the time people seemed to pay a hefty early adopter\u2019s price, and despite the overwhelmingly positive reviews, we decided to not disrupt our development pipeline for some convenient syntax sugar.<\/p>\n\n\n\n<p>All of this changed however when Google announced first class support for Kotlin at their 2017 IO conference. This was a clear sign that Kotlin programming had not only matured into a properly usable language but it also gained the favour of the almighty Google. Surely this meant that it\u2019s time to start paying serious attention to this new player.<\/p>\n\n\n\n<p>We decided then to start using Kotlin programming as soon as possible. The period in which we decided to do this however was a very busy one, with back-to-back projects being the norm. Even though we wouldn\u2019t realistically have the time to test out Kotlin in a simulated production environment, the promise of easier to write and more readable code, along with Google\u2019s endorsement prompted us to simply start a new project in this language. We took a leap of faith and started our latest project 100% in Kotlin.<\/p>\n\n\n<div class=\"post-cta\"><div><div><p class=\"blog-cta-title\">Tailored Mobile Solutions for Your Unique Needs<\/p><p>Redefine Your Business with Mobile Application Development<\/p><a href=\"https:\/\/hypersense-software.com\/services\/mobile-app-development\">Explore Mobile App Development<\/a><\/div><\/div><\/div>\n\n\n\n<p>What comes next is an account of our experience developing our first Kotlin App, without much prior experience. As expected there were a few hiccups, but the overall experience is unexpectedly positive. We will go through the most important good things, and move onto the bad, after which we will conclude with what is in store for the future.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-the-good\"><strong>The good<\/strong><\/h2>\n\n\n\n<p>The point of this article is not to create a \u201cTop X reasons to move to Kotlin\u201d kind of list, but to share our experience. So here are a few things we found absolutely delightful about this language, in no particular order.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Kotlin Android Extensions: This framework deals away with the pesky process of acquiring views. Gone are the days of screen-height ButterKnife imports and longer still the days of using findViewById(). Using the Android extensions we can simply start typing the ID of the view and Autocomplete will do the rest. A word of warning though! If an ID can be found in multiple layouts, one must pay attention to what the AutoComplete window imports. Otherwise you may come across null views and not know why.<\/li>\n\n\n\n<li>Extension functions: These may seem complicated at first. Adding functions to an already existing class may seem like a daunting task, bringing back war flashbacks from extending classes in Java. In Kotlin it\u2019s as easy as pie. One can even put all of the extension functions in a file and forget about them, no static utility classes, no extra hassle. One great example is adding a method to hide a keyboard that uses a selected view as focus.<\/li>\n\n\n\n<li>Syntax Candy: We don\u2019t even need to go into details here. There are numerous articles around the web regarding all the various utilities and language specific sugar that are built in, such as this excellent reference from dodyg Even if it\u2019s a well known fact, we just had to mention it on our list.<\/li>\n\n\n\n<li>Pasting from Java: While we read about this feature we didn\u2019t think to use it. We rediscovered it inadvertently, by moving methods from an old project to the new one. While it isn\u2019t bullet proof, it\u2019s great for simple code copying or POJO migrations.<\/li>\n\n\n\n<li>Autocomplete: It\u2019s smart. When it\u2019s smart. Jokes aside it\u2019s very helpful especially with syntax specific suggestions. This proved invaluable as we didn\u2019t really have the time to study the documentation from cover to cover.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-the-not-so-good\"><strong>The not so good<\/strong><\/h2>\n\n\n\n<p>At the risk of sounding like a broken record, the overall experience was positive. As such, the following is a list of not necessarily bad things, but caveats that we came across and found troublesome as novice users.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Learning curve: There\u2019s not much to the learning curve really, but it has to be mentioned. You\u2019re naturally not going to be at full speed when having just picked up Kotlin. Another thing worth mentioning here is that you won\u2019t be 100% aware of all the goodies and candy available in Kotlin, but maybe this belongs in the good category, as discovering new ways to do things easier is a delight.<\/li>\n\n\n\n<li>RxJava 2 compatibility: This is a very specific issue, we know, but if this helps anyone it was worth mentioning. Kotlin has a bit of a problem with inferring arguments for RxJava operators that use predicates. The withLatestFrom operator, for example, cannot infer the arguments for it\u2019s predicate. All the links leading to and from this page should explain the situation in sufficient detail.<\/li>\n\n\n\n<li>Autocomplete: But it has been mentioned as a good thing right? Well it\u2019s a double edged sword, both a blessing as a curse, as one comes to rely on it. Too many a time has it happened that we wrongly assumed that something was broken just because autocomplete wouldn\u2019t know what to suggest. This seems to happen especially with methods from java sources.<\/li>\n<\/ul>\n\n\n<div class=\"post-cta\"><div><div><p class=\"blog-cta-title\">Experience Expert IT Consultancy<\/p><p>Transformative Strategies for Your Technology Needs<\/p><a href=\"https:\/\/hypersense-software.com\/services\/it-consultancy\">Discover IT Consulting<\/a><\/div><\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-the-road-onward\"><strong>The road onward<\/strong><\/h2>\n\n\n\n<p>It would be safe to say that at this point we\u2019re fairly comfortable with both Kotlin and satisfied with the decision to move to it. While at first it\u2019s daunting to pick up a new language, and the general impression is that Kotlin is equivalent to Java, the difference is most notable when one comes back to the latter. It\u2019s only when you start writing Java as if you were in Kotlin that you realise that the syntax is much more convenient and easy to write. Kotlin\u2019s convenience and ease of use creeps up on you so naturally and seamlessly that only going back to Java really makes you feel the difference.<\/p>\n\n\n\n<p>It will definitely be interesting to see how Kotlin is going to tie in with Android development in the future. At this point we can safely say that it seems to fit like a glove for the new Architecture Components that have just been released. If the inference problem is fixed and Android Studio support continues to improve Kotlin is sure to replace Java soon enough.<\/p>\n\n\n<div class=\"post-cta\"><div><div><p class=\"blog-cta-title\">Redefine Your Business with Our R&D Services<\/p><p>Innovation Infused into Every Product Element Through R&D-Backed Development<\/p><a href=\"https:\/\/hypersense-software.com\/services\/research-development\">Learn About R&D Services<\/a><\/div><\/div><\/div>\n\n\n\n<p>In conclusion, we wholeheartedly recommend that anyone at least try this up and coming language, and there\u2019s no better place to start than their own tutorial. For us at Hypersense Software, the overall Kotlin programming adoption process was as smooth as we could have hoped and one hundred percent worth it. Now if we could only decide upon a file structure for our project\u2026 defining functions in random files outside of classes is probably a bit too much freedom.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kotlin programming language has been around for quite some time now, having been open sourced in 2012 and it\u2019s 1.0 version released in 2016. Throughout it\u2019s development it\u2019s been hailed as a fresh new programming language, set to evolve into a serious contender for Java.<\/p>\n","protected":false},"author":2,"featured_media":2029,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[216],"tags":[],"class_list":["post-2028","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mobile-app-development"],"featured_image_src":"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg","author_info":{"display_name":"Andrei Neacsu","author_link":"https:\/\/hypersense-software.com\/blog\/author\/andrei-neacsu\/"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.7 (Yoast SEO v26.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Kotlin Programming Language<\/title>\n<meta name=\"description\" content=\"Kotlin programming language has been around for quite some time now, having been open sourced in 2012 and it\u2019s 1.0 version released in 2016. Throughout it\u2019s development it\u2019s been hailed as a fresh new programming language, set to evolve into a serious contender for Java.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Hypersense and Kotlin programming language\" \/>\n<meta property=\"og:description\" content=\"Kotlin programming language has been around for quite some time now, having been open sourced in 2012 and it\u2019s 1.0 version released in 2016. Throughout it\u2019s development it\u2019s been hailed as a fresh new programming language, set to evolve into a serious contender for Java.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/\" \/>\n<meta property=\"og:site_name\" content=\"HyperSense Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hypersense.software\" \/>\n<meta property=\"article:published_time\" content=\"2018-03-07T10:50:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-09-20T09:38:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1360\" \/>\n\t<meta property=\"og:image:height\" content=\"766\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Andrei Neacsu\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@HyperSenseSoft\" \/>\n<meta name=\"twitter:site\" content=\"@HyperSenseSoft\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andrei Neacsu\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/\"},\"author\":{\"name\":\"Andrei Neacsu\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/#\/schema\/person\/ab8c2a667674a1b3926d6b1f0685ab3c\"},\"headline\":\"Hypersense and Kotlin programming language\",\"datePublished\":\"2018-03-07T10:50:00+00:00\",\"dateModified\":\"2024-09-20T09:38:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/\"},\"wordCount\":1263,\"publisher\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg\",\"articleSection\":[\"Mobile App Development\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/\",\"url\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/\",\"name\":\"Kotlin Programming Language\",\"isPartOf\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg\",\"datePublished\":\"2018-03-07T10:50:00+00:00\",\"dateModified\":\"2024-09-20T09:38:22+00:00\",\"description\":\"Kotlin programming language has been around for quite some time now, having been open sourced in 2012 and it\u2019s 1.0 version released in 2016. Throughout it\u2019s development it\u2019s been hailed as a fresh new programming language, set to evolve into a serious contender for Java.\",\"breadcrumb\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#primaryimage\",\"url\":\"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg\",\"contentUrl\":\"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg\",\"width\":1360,\"height\":766,\"caption\":\"hypersense kotlin\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/hypersense-software.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Hypersense and Kotlin programming language\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/#website\",\"url\":\"https:\/\/hypersense-software.com\/blog\/\",\"name\":\"HyperSense Blog\",\"description\":\"Latest software development trends and insights\",\"publisher\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/hypersense-software.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/#organization\",\"name\":\"HyperSense Software\",\"url\":\"https:\/\/hypersense-software.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/logo-hypersense-512.svg\",\"contentUrl\":\"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/logo-hypersense-512.svg\",\"width\":64,\"height\":64,\"caption\":\"HyperSense Software\"},\"image\":{\"@id\":\"https:\/\/hypersense-software.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/hypersense.software\",\"https:\/\/x.com\/HyperSenseSoft\",\"https:\/\/www.instagram.com\/hypersensesoftware\/\",\"https:\/\/ro.pinterest.com\/HyperSenseSoft\/\",\"https:\/\/www.linkedin.com\/company\/hypersense-software\/\",\"https:\/\/www.behance.net\/hypersense\",\"https:\/\/www.youtube.com\/@hypersensesoftware\",\"https:\/\/github.com\/HyperSense-Software\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/#\/schema\/person\/ab8c2a667674a1b3926d6b1f0685ab3c\",\"name\":\"Andrei Neacsu\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/hypersense-software.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3dedf5440207d67bade8089703be1d2424d9d03a74e060a0cac6c7e1d24b5009?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3dedf5440207d67bade8089703be1d2424d9d03a74e060a0cac6c7e1d24b5009?s=96&d=mm&r=g\",\"caption\":\"Andrei Neacsu\"},\"description\":\"Andrei, CTO and co-founder of HyperSense Software Inc., has an extensive career spanning over 15 years in the tech industry. With hands-on experience in mobile and web development, cloud infrastructure, and DevOps, he has been instrumental in both startup launches and enterprise-level tech transformations. His approach intertwines deep technical knowledge with strategic business insights, aiding in everything from vision setting and market research to contract negotiations and investor relations. As a member of the Forbes Business Council, he consistently delivers valuable insights in the areas of technology and people management.\",\"url\":\"https:\/\/hypersense-software.com\/blog\/author\/andrei-neacsu\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Kotlin Programming Language","description":"Kotlin programming language has been around for quite some time now, having been open sourced in 2012 and it\u2019s 1.0 version released in 2016. Throughout it\u2019s development it\u2019s been hailed as a fresh new programming language, set to evolve into a serious contender for Java.","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:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/","og_locale":"en_US","og_type":"article","og_title":"Hypersense and Kotlin programming language","og_description":"Kotlin programming language has been around for quite some time now, having been open sourced in 2012 and it\u2019s 1.0 version released in 2016. Throughout it\u2019s development it\u2019s been hailed as a fresh new programming language, set to evolve into a serious contender for Java.","og_url":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/","og_site_name":"HyperSense Blog","article_publisher":"https:\/\/www.facebook.com\/hypersense.software","article_published_time":"2018-03-07T10:50:00+00:00","article_modified_time":"2024-09-20T09:38:22+00:00","og_image":[{"width":1360,"height":766,"url":"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg","type":"image\/jpeg"}],"author":"Andrei Neacsu","twitter_card":"summary_large_image","twitter_creator":"@HyperSenseSoft","twitter_site":"@HyperSenseSoft","twitter_misc":{"Written by":"Andrei Neacsu","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#article","isPartOf":{"@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/"},"author":{"name":"Andrei Neacsu","@id":"https:\/\/hypersense-software.com\/blog\/#\/schema\/person\/ab8c2a667674a1b3926d6b1f0685ab3c"},"headline":"Hypersense and Kotlin programming language","datePublished":"2018-03-07T10:50:00+00:00","dateModified":"2024-09-20T09:38:22+00:00","mainEntityOfPage":{"@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/"},"wordCount":1263,"publisher":{"@id":"https:\/\/hypersense-software.com\/blog\/#organization"},"image":{"@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#primaryimage"},"thumbnailUrl":"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg","articleSection":["Mobile App Development"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/","url":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/","name":"Kotlin Programming Language","isPartOf":{"@id":"https:\/\/hypersense-software.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#primaryimage"},"image":{"@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#primaryimage"},"thumbnailUrl":"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg","datePublished":"2018-03-07T10:50:00+00:00","dateModified":"2024-09-20T09:38:22+00:00","description":"Kotlin programming language has been around for quite some time now, having been open sourced in 2012 and it\u2019s 1.0 version released in 2016. Throughout it\u2019s development it\u2019s been hailed as a fresh new programming language, set to evolve into a serious contender for Java.","breadcrumb":{"@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#primaryimage","url":"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg","contentUrl":"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/R6Z7GWmk_2x.jpg","width":1360,"height":766,"caption":"hypersense kotlin"},{"@type":"BreadcrumbList","@id":"https:\/\/hypersense-software.com\/blog\/2018\/03\/07\/kotlin-programming-language\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/hypersense-software.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Hypersense and Kotlin programming language"}]},{"@type":"WebSite","@id":"https:\/\/hypersense-software.com\/blog\/#website","url":"https:\/\/hypersense-software.com\/blog\/","name":"HyperSense Blog","description":"Latest software development trends and insights","publisher":{"@id":"https:\/\/hypersense-software.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/hypersense-software.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/hypersense-software.com\/blog\/#organization","name":"HyperSense Software","url":"https:\/\/hypersense-software.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/hypersense-software.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/logo-hypersense-512.svg","contentUrl":"https:\/\/hypersense-software.com\/blog\/wp-content\/uploads\/2023\/04\/logo-hypersense-512.svg","width":64,"height":64,"caption":"HyperSense Software"},"image":{"@id":"https:\/\/hypersense-software.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hypersense.software","https:\/\/x.com\/HyperSenseSoft","https:\/\/www.instagram.com\/hypersensesoftware\/","https:\/\/ro.pinterest.com\/HyperSenseSoft\/","https:\/\/www.linkedin.com\/company\/hypersense-software\/","https:\/\/www.behance.net\/hypersense","https:\/\/www.youtube.com\/@hypersensesoftware","https:\/\/github.com\/HyperSense-Software"]},{"@type":"Person","@id":"https:\/\/hypersense-software.com\/blog\/#\/schema\/person\/ab8c2a667674a1b3926d6b1f0685ab3c","name":"Andrei Neacsu","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/hypersense-software.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3dedf5440207d67bade8089703be1d2424d9d03a74e060a0cac6c7e1d24b5009?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3dedf5440207d67bade8089703be1d2424d9d03a74e060a0cac6c7e1d24b5009?s=96&d=mm&r=g","caption":"Andrei Neacsu"},"description":"Andrei, CTO and co-founder of HyperSense Software Inc., has an extensive career spanning over 15 years in the tech industry. With hands-on experience in mobile and web development, cloud infrastructure, and DevOps, he has been instrumental in both startup launches and enterprise-level tech transformations. His approach intertwines deep technical knowledge with strategic business insights, aiding in everything from vision setting and market research to contract negotiations and investor relations. As a member of the Forbes Business Council, he consistently delivers valuable insights in the areas of technology and people management.","url":"https:\/\/hypersense-software.com\/blog\/author\/andrei-neacsu\/"}]}},"_links":{"self":[{"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/posts\/2028","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/comments?post=2028"}],"version-history":[{"count":3,"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/posts\/2028\/revisions"}],"predecessor-version":[{"id":4288,"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/posts\/2028\/revisions\/4288"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/media\/2029"}],"wp:attachment":[{"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/media?parent=2028"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/categories?post=2028"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hypersense-software.com\/blog\/wp-json\/wp\/v2\/tags?post=2028"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}