{"id":104,"date":"2009-08-03T13:06:21","date_gmt":"2009-08-03T11:06:21","guid":{"rendered":"http:\/\/fabianpiau.com\/?p=104"},"modified":"2018-09-02T02:54:08","modified_gmt":"2018-09-02T01:54:08","slug":"test-driven-development","status":"publish","type":"post","link":"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/","title":{"rendered":"Test-driven Development"},"content":{"rendered":"<p><a class=\"lang\" href=\"https:\/\/blog.fabianpiau.com\/fr\/2009\/08\/03\/test-driven-development\/\" title=\"Lire en fran\u00e7ais\"><strong class=\"labellang\"><span class=\"fr\">&nbsp;<\/span>Version fran\u00e7aise disponible<\/strong><\/a><\/p>\n<p>I use my last article about Continuous Integration as an opportunity to introduce you another XP (eXtreme Programming) practice: Test-driven Development. Actually, CI is often intricately linked with the practice of TDD. To know more about XP, click on the logo below.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/www.extremeprogramming.org\/\" target=\"_blank\" title=\"Extreme Programming\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"eXtreme Programming logo\" src=\"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/post\/00004\/xp.png?resize=144%2C70&#038;ssl=1\" title=\"eXtreme Programming logo\" width=\"144\" height=\"70\" \/><\/a><\/p>\n<p>Testing is a critical part of good software development. Test-driven development also known as Test-first development (TFD), is a technique, associated with XP and Agile Programming methods, in which unit test cases are incrementally written prior to code implementation. Unit testing and selected aspects of Test-driven development can be used to improve learning and encourage emphasis on quality and correctness. Most users of Test-driven development use automated testing tools to facilitate code review and to encourage frequent and thorough regression testing throughout the development. These tools, such as JUnit, are very popular.<\/p>\n<p><br clear=\"none\" \/><\/p>\n<p>Two years ago, the main subject of my last-year project was TDD. I have decided to share with you the report I wrote. It presents an analysis of the TDD method, but not only in general, it focuses also on using TDD with the Enterprise JavaBeans specification (EJB).<\/p>\n<p>The EJB specification is one of several Java APIs in the Java Platform, Enterprise Edition. EJB is a server-side component architecture that encapsulates the business logic of an application. This technology is relatively new and complex. One of the biggest issues is that testability has not been taken in consideration, at least not until EJB version 3.0. <\/p>\n<p><br clear=\"none\" \/><\/p>\n<h4>TDD in a few words<\/h4>\n<p>First, we imagine and write a test (a failing test because no code has been written yet). Then, we write the code in order to pass the test (just the code needed, no more!). Finally, we find the best possible design for what we have (code refactoring) and ensure that the test is still passing.<\/p>\n<p style=\"text-align: center;\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"TDD steps\" src=\"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/post\/00004\/tdd-steps.png?resize=500%2C382&#038;ssl=1\" title=\"TDD steps\" width=\"500\" height=\"382\" \/><\/p>\n<p>Usually, developers design, code and, at the end, they test. The reversion between the first and last steps is disconcerting but that does not mean this is a bad thing&#8230; You can read my report to learn more.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/blog.fabianpiau.com\/wp-content\/uploads\/post\/00004\/TDD_EJB.pdf\" target=\"_blank\" title=\"TDD &#038; EJB report\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" alt=\"TDD &#038; EJB report\" src=\"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/post\/00004\/Miniature.png?resize=206%2C278&#038;ssl=1\" title=\"TDD &#038; EJB report\" width=\"206\" height=\"278\" \/><\/a><\/p>\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>&nbsp;Version fran\u00e7aise disponible I use my last article about Continuous Integration as an opportunity to introduce you another XP (eXtreme Programming) practice: Test-driven Development. Actually, CI is often intricately linked with the practice of TDD. To know more about XP, click on the logo below. Testing is a critical part of good software development. Test-driven [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1425,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":true,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3],"tags":[27,28,25,29,61],"class_list":["post-104","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-agile-programming","tag-agile","tag-agility","tag-extreme-programming","tag-tdd","tag-unit-test"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Test-driven Development | CarmaBlog<\/title>\n<meta name=\"description\" content=\"&nbsp;English version available Je profite de mon dernier article sur l&#039;Int\u00e9gration Continue pour vous pr\u00e9senter une nouvelle bonne pratique de l&#039;eXtreme\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Test-driven Development | CarmaBlog\" \/>\n<meta property=\"og:description\" content=\"&nbsp;English version available Je profite de mon dernier article sur l&#039;Int\u00e9gration Continue pour vous pr\u00e9senter une nouvelle bonne pratique de l&#039;eXtreme\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/\" \/>\n<meta property=\"og:site_name\" content=\"CarmaBlog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/fabian.piau\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/fabian.piau\" \/>\n<meta property=\"article:published_time\" content=\"2009-08-03T11:06:21+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-09-02T01:54:08+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i2.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2009\/08\/00004.png?fit=200%2C200&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"200\" \/>\n\t<meta property=\"og:image:height\" content=\"200\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Fabian Piau\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@fabianpiau\" \/>\n<meta name=\"twitter:site\" content=\"@fabianpiau\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fabian Piau\" \/>\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:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/\"},\"author\":{\"name\":\"Fabian Piau\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/#\\\/schema\\\/person\\\/c5cbffd7cf0b10117877f5dfd1b35f14\"},\"headline\":\"Test-driven Development\",\"datePublished\":\"2009-08-03T11:06:21+00:00\",\"dateModified\":\"2018-09-02T01:54:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/\"},\"wordCount\":808,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/#\\\/schema\\\/person\\\/c5cbffd7cf0b10117877f5dfd1b35f14\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2009\\\/08\\\/00004.png?fit=200%2C200&ssl=1\",\"keywords\":[\"agile\",\"agility\",\"extreme programming\",\"tdd\",\"unit test\"],\"articleSection\":[\"Agile programming\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/\",\"url\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/\",\"name\":\"Test-driven Development | CarmaBlog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2009\\\/08\\\/00004.png?fit=200%2C200&ssl=1\",\"datePublished\":\"2009-08-03T11:06:21+00:00\",\"dateModified\":\"2018-09-02T01:54:08+00:00\",\"description\":\"&nbsp;English version available Je profite de mon dernier article sur l'Int\u00e9gration Continue pour vous pr\u00e9senter une nouvelle bonne pratique de l'eXtreme\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[[\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/\"]]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2009\\\/08\\\/00004.png?fit=200%2C200&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2009\\\/08\\\/00004.png?fit=200%2C200&ssl=1\",\"width\":200,\"height\":200,\"caption\":\"TDD\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/2009\\\/08\\\/03\\\/test-driven-development\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Homepage\",\"item\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Programmation agile\",\"item\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/category\\\/agile-programming\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"D\u00e9veloppement Dirig\u00e9 par les Tests\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/\",\"name\":\"CarmaBlog\",\"description\":\"Agility, Java programming, New technologies and more...\",\"publisher\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/#\\\/schema\\\/person\\\/c5cbffd7cf0b10117877f5dfd1b35f14\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/en\\\/#\\\/schema\\\/person\\\/c5cbffd7cf0b10117877f5dfd1b35f14\",\"name\":\"Fabian Piau\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/fabian-pro-small.jpg?fit=567%2C667&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/fabian-pro-small.jpg?fit=567%2C667&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/fabian-pro-small.jpg?fit=567%2C667&ssl=1\",\"width\":567,\"height\":667,\"caption\":\"Fabian Piau\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/fabian-pro-small.jpg?fit=567%2C667&ssl=1\"},\"description\":\"Java developer, Fabian is interested in new technologies and their use within an Agile environment.\",\"sameAs\":[\"https:\\\/\\\/blog.fabianpiau.com\",\"https:\\\/\\\/www.facebook.com\\\/fabian.piau\",\"https:\\\/\\\/www.instagram.com\\\/fabianpiau\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/fabianpiau\\\/\",\"https:\\\/\\\/x.com\\\/fabianpiau\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Test-driven Development | CarmaBlog","description":"&nbsp;English version available Je profite de mon dernier article sur l'Int\u00e9gration Continue pour vous pr\u00e9senter une nouvelle bonne pratique de l'eXtreme","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:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/","og_locale":"en_US","og_type":"article","og_title":"Test-driven Development | CarmaBlog","og_description":"&nbsp;English version available Je profite de mon dernier article sur l'Int\u00e9gration Continue pour vous pr\u00e9senter une nouvelle bonne pratique de l'eXtreme","og_url":"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/","og_site_name":"CarmaBlog","article_publisher":"https:\/\/www.facebook.com\/fabian.piau","article_author":"https:\/\/www.facebook.com\/fabian.piau","article_published_time":"2009-08-03T11:06:21+00:00","article_modified_time":"2018-09-02T01:54:08+00:00","og_image":[{"width":200,"height":200,"url":"https:\/\/i2.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2009\/08\/00004.png?fit=200%2C200&ssl=1","type":"image\/png"}],"author":"Fabian Piau","twitter_card":"summary_large_image","twitter_creator":"@fabianpiau","twitter_site":"@fabianpiau","twitter_misc":{"Written by":"Fabian Piau","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.fabianpiau.com\/fr\/2009\/08\/03\/test-driven-development\/#article","isPartOf":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2009\/08\/03\/test-driven-development\/"},"author":{"name":"Fabian Piau","@id":"https:\/\/blog.fabianpiau.com\/#\/schema\/person\/c5cbffd7cf0b10117877f5dfd1b35f14"},"headline":"Test-driven Development","datePublished":"2009-08-03T11:06:21+00:00","dateModified":"2018-09-02T01:54:08+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2009\/08\/03\/test-driven-development\/"},"wordCount":808,"commentCount":0,"publisher":{"@id":"https:\/\/blog.fabianpiau.com\/#\/schema\/person\/c5cbffd7cf0b10117877f5dfd1b35f14"},"image":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2009\/08\/03\/test-driven-development\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2009\/08\/00004.png?fit=200%2C200&ssl=1","keywords":["agile","agility","extreme programming","tdd","unit test"],"articleSection":["Agile programming"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.fabianpiau.com\/fr\/2009\/08\/03\/test-driven-development\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/","url":"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/","name":"Test-driven Development | CarmaBlog","isPartOf":{"@id":"https:\/\/blog.fabianpiau.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/#primaryimage"},"image":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2009\/08\/03\/test-driven-development\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2009\/08\/00004.png?fit=200%2C200&ssl=1","datePublished":"2009-08-03T11:06:21+00:00","dateModified":"2018-09-02T01:54:08+00:00","description":"&nbsp;English version available Je profite de mon dernier article sur l'Int\u00e9gration Continue pour vous pr\u00e9senter une nouvelle bonne pratique de l'eXtreme","breadcrumb":{"@id":"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":[["https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/"]]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/#primaryimage","url":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2009\/08\/00004.png?fit=200%2C200&ssl=1","contentUrl":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2009\/08\/00004.png?fit=200%2C200&ssl=1","width":200,"height":200,"caption":"TDD"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.fabianpiau.com\/en\/2009\/08\/03\/test-driven-development\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Homepage","item":"https:\/\/blog.fabianpiau.com\/en\/"},{"@type":"ListItem","position":2,"name":"Programmation agile","item":"https:\/\/blog.fabianpiau.com\/en\/category\/agile-programming\/"},{"@type":"ListItem","position":3,"name":"D\u00e9veloppement Dirig\u00e9 par les Tests"}]},{"@type":"WebSite","@id":"https:\/\/blog.fabianpiau.com\/en\/#website","url":"https:\/\/blog.fabianpiau.com\/en\/","name":"CarmaBlog","description":"Agility, Java programming, New technologies and more...","publisher":{"@id":"https:\/\/blog.fabianpiau.com\/en\/#\/schema\/person\/c5cbffd7cf0b10117877f5dfd1b35f14"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.fabianpiau.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/blog.fabianpiau.com\/en\/#\/schema\/person\/c5cbffd7cf0b10117877f5dfd1b35f14","name":"Fabian Piau","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2022\/08\/fabian-pro-small.jpg?fit=567%2C667&ssl=1","url":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2022\/08\/fabian-pro-small.jpg?fit=567%2C667&ssl=1","contentUrl":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2022\/08\/fabian-pro-small.jpg?fit=567%2C667&ssl=1","width":567,"height":667,"caption":"Fabian Piau"},"logo":{"@id":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2022\/08\/fabian-pro-small.jpg?fit=567%2C667&ssl=1"},"description":"Java developer, Fabian is interested in new technologies and their use within an Agile environment.","sameAs":["https:\/\/blog.fabianpiau.com","https:\/\/www.facebook.com\/fabian.piau","https:\/\/www.instagram.com\/fabianpiau\/","https:\/\/www.linkedin.com\/in\/fabianpiau\/","https:\/\/x.com\/fabianpiau"]}]}},"views":3838,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2009\/08\/00004.png?fit=200%2C200&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pbSHyl-1G","_links":{"self":[{"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/posts\/104","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/comments?post=104"}],"version-history":[{"count":0,"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/posts\/104\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/media\/1425"}],"wp:attachment":[{"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/media?parent=104"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/categories?post=104"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/en\/wp-json\/wp\/v2\/tags?post=104"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}