{"id":327,"date":"2020-07-29T14:42:00","date_gmt":"2020-07-29T14:42:00","guid":{"rendered":"https:\/\/www.simplybusiness.co.uk\/code-katas\/"},"modified":"2024-05-30T11:25:34","modified_gmt":"2024-05-30T11:25:34","slug":"code-katas","status":"publish","type":"post","link":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas","title":{"rendered":"How I learned to be more mindful of my design; reflections from practicing a code kata"},"content":{"rendered":"\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#8220;As Above, So Below&#8221;, (<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/Macrocosm_and_microcosm\" rel=\"noopener noreferrer\" target=\"_blank\">Macrocosm and microcosm<\/a>)<\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">Often, doing something small gives an opportunity to understand the mechanics of larger and more complex processes. Let&#8217;s take a closer look at the relationship between a Kata and how to tackle larger problems.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Kata<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Every two weeks on a Friday afternoon, we have been running a Code Dojo at Simply Business. The idea, if you are not familiar with the concept, is to hone your developer skills through practice and repetition.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pair programming and test-driven development are two important muscles that get worked during the execution of the kata, both very valuable techniques in writing good code.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">At the last Dojo, we practised using the &#8220;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"http:\/\/codekata.com\/kata\/kata13-counting-code-lines\/\" rel=\"noopener noreferrer\" target=\"_blank\">Counting Code Lines<\/a>&#8221; kata. We had 2 hours, and we were swapping the keyboard every 30 minutes with a break of 5 mins in between &#8211; the Pomodoro technique.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The usual flow is something like:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">Write the simplest test to get you going<\/li>\n\n\n\n<li class=\"wp-block-list-item\">Write the simplest implementation that makes your test pass<\/li>\n\n\n\n<li class=\"wp-block-list-item\">Repeat \ud83d\ude42<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">At the end of the session, the different pairs came up with different implementations, and we had a chat about our solutions and the thought process we had used to get there. It was a good learning experience and good fun!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">My brain<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">For a few days after the kata, I had been thinking about what had happened in my brain during the coding session. My colleague Nigel-Runnels Moss (aka Fox) &#8211; Principal Engineer at Simply Business, presented the problem. My brain had started two processes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">Identifying the different parts of the problem (e.g. recognising a comment, single line, multi-line, parsing, performance, etc.)<\/li>\n\n\n\n<li class=\"wp-block-list-item\">Scanning similar problems I&#8217;d encountered in the past (a bit like pattern matching)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">At that moment, I felt that the &#8220;hardest&#8221; part of the problem was around the multi-line comments, so the pattern matching algorithm my brain was running was on that particular aspect. What my brain uncovered, without any guarantee of correctness was:&nbsp;<a href=\"https:\/\/en.wikipedia.org\/wiki\/Simple_API_for_XML\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">Simple API for XML (SAX)<\/a>,&nbsp;<a href=\"https:\/\/en.wikipedia.org\/wiki\/Abstract_syntax_tree\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">abstract syntax tree (AST)<\/a>,&nbsp;<a href=\"https:\/\/en.wikipedia.org\/wiki\/Finite-state_machine\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">finite state machine (FSM)<\/a>, and a bunch of other things.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">My hands<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A few seconds later, with Punit, my partner in the pairing, we started writing the first simple test to get us going (writing something down as soon as possible is the best icebreaker). I switched my brain into &#8220;build mode&#8221;, silencing the research, confident that the process would guide us to a good place.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The snippet of Java code we were using to test our&nbsp;<code>Thing<\/code>&nbsp;did not contain any comments or empty lines, so the only thing our algorithm had to do was&nbsp;<code>string.split.count<\/code>. To reduce the number of concerns, the&nbsp;<code>Thing<\/code>&nbsp;that was counting did not care for File IO but accepted a simple string.<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-dark-800-background-color has-text-color has-background has-link-color wp-elements-d59d31c73a3f02d257122a37727c0232\" style=\"border-radius:8px;padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--30)\"><code>def count(string_containing_java_code)\n    string_containing_java_code.split.count\nend<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">We continued to add additional test cases. The implementation relied heavily on&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/apidock.com\/ruby\/Array\/select\" rel=\"noopener noreferrer\" target=\"_blank\">select<\/a>&nbsp;and&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/apidock.com\/ruby\/Array\/reject\" rel=\"noopener noreferrer\" target=\"_blank\">reject<\/a>&nbsp;until we came to write the multi-line test case :).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">At that point, our simple approach started to reach its limitations. The base unit of our algorithm was a line (because of the split), but what we were trying to do there needed a different level of granularity.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We tried a couple of different things until we landed on a Regex expression that removed the blocks of text between&nbsp;<code>\/* *\/<\/code>&nbsp;replacing it with a&nbsp;<code>\\n<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-dark-800-background-color has-text-color has-background has-link-color wp-elements-5d0177aeb29f6111ebd5862225abf4ba\" style=\"border-radius:8px;padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--30)\"><code>  SINGLE_LINE_COMMENT_DELIMITER = \"\/\/\"\n  MULTILINE_COMMENT_LIMITER=\/\\\/\\*.+\\*\\\/\/m\n\n  def count(string_containing_java_code)\n    string_containing_java_code\n          .gsub(MULTILINE_COMMENT_LIMITER, \"\\n\")\n          .split(\"\\n\")\n          .map(&amp;:strip)\n          .reject(&amp;:empty?)\n          .reject{|line| line.start_with? SINGLE_LINE_COMMENT_DELIMITER }\n        .count\n  end<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">It worked &#8230; at least until we stress-tested the implementation with some additional tests!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Our implementation could not handle something like&nbsp;<code>System.out.println(\"\/* This is not a comment *\/\")<\/code>. The bottom line is that the algorithm is not aware of what is surrounding the characters that identify a multi-line comment (e.g. is the comment within double quotes?).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">At that point, we ran out of time, but we really had two options:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">Try hard to make the current implementation work<\/li>\n\n\n\n<li class=\"wp-block-list-item\">Throw everything away, keep the tests, and rewrite the implementation<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.tech.sb\/\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"256\" src=\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp?w=768\" alt=\"sb-tech-site-technology\" class=\"wp-image-9605\" srcset=\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp 768w, https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp?resize=150,50 150w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Zooming out: &#8220;the Above&#8221;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Zooming out from the kata, it is not uncommon to find yourself at a fork in the road when working and evolving towards a more complex system. Either option has pros and cons, and in some of the worst cases, you might not even be able to consider the second one.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1) Try hard to make the current implementation work<\/h3>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">&#8220;The term &#8220;Concorde fallacy&#8221; derives from the fact that the British and French governments continued to fund the joint development of the costly Concorde supersonic airplane even after it became apparent that there was no longer an economic case for the aircraft.&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/Sunk_cost\" rel=\"noopener noreferrer\" target=\"_blank\">Wikipedia, Sunk cost<\/a><\/p>\n<\/blockquote>\n\n\n\n<p class=\"wp-block-paragraph\">&#8220;Let&#8217;s make it work&#8221; is probably the first thing that comes to mind, in the end we are only adding (another) small feature, what could possibly go wrong?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The sunk cost here is that this approach, most of the time, increases the complexity of the system up to a point where it is impossible to make changes. In the worst-case scenario, tech bankruptcy is around the corner.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A dutiful note: systems should always be evolved, refactored, maintained and adapted, and consistency and correctness must be kept in mind at all times.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2) Throw everything away, keep the test and rewrite the implementation<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You won the lottery ticket! Let&#8217;s rebuild it \ud83d\ude42 Some very good tests, decoupled from the implementation, are in place and you can design a solution that solves the problems you encountered.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is the best option&#8230; if you managed to convince the business to pay for it. The usual issues here are, it takes time &amp; money, no additional features are delivered during the rewriting, and usually, complexity goes up before going down again.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There is also the risk that if you rewrite the system to do exactly what it did before, it will suffer from the exact same problems.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The other option: Think about design before starting<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">That means, take some time to review the different options you have available, spike with code, use&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/wiki.c2.com\/?TracerBullets\" rel=\"noopener noreferrer\" target=\"_blank\">tracer bullets<\/a>, share your ideas (within the pair or within the wider team).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you know what the challenges are, face them at the beginning, don&#8217;t hope for the best. Try to avoid getting to the fork where you have to make some tough decisions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the context of creating a new system, often (incorrectly in my opinion) the YAGNI or Agile arguments are used. It is important to notice that Agile or YAGNI don&#8217;t prescribe avoiding analysing the problem, designing for solutions, or are against architecture.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">My approach to architecture is summarised in &#8220;the best architect removes architecture&#8221; (Martin Fowler. In other words, reducing the need of taking the decision up-front for things that are&nbsp;<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/www.youtube.com\/watch?v=DngAZyWMGR0\" rel=\"noopener noreferrer\" target=\"_blank\">hard to change<\/a>&nbsp;(eg. a database, programming language, interfaces, etc.)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For YAGNI, something that often gets missed is the fact that YAGNI is meant to be used in combination with several other practices, such as continuous refactoring, continuous automated unit testing, and continuous integration. Used without continuous refactoring, it could lead to disorganised code and massive rework, known as technical debt. (<a target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/You_aren%27t_gonna_need_it\" rel=\"noopener noreferrer\" target=\"_blank\">YAGNI, Wikipedia<\/a>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To me this option is a must, in particular when:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">You know the system is going to be part of the production environment and it is going to stay i.e. not an experiment<\/li>\n\n\n\n<li class=\"wp-block-list-item\">It covers a number of functionalities that needs to be evolved over time<\/li>\n\n\n\n<li class=\"wp-block-list-item\">Multiple people are working on it<\/li>\n\n\n\n<li class=\"wp-block-list-item\">It is not easy to replace or is hard to change<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Zooming in, &#8220;the Below&#8221;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In the context of the kata, you don&#8217;t have to make that tough decision. You simply throw everything away and try a new option because it is cheap.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The main idea is that you are training your brain to recognise common patterns when you are working on some problems and rely on that muscle memory. You already explored the pros and cons of different approaches and it will become more obvious as to how to choose what to do next when you are faced with a work-related challenge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Big problems are usually the sum of a series of small problems, so it &#8220;always works!&#8221;.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Takeaway<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I hope you enjoyed reading this article. Some practical takeaways are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"wp-block-list-item\">Practice on small problems to build your muscle memory (<a href=\"https:\/\/www.meetup.com\/london-code-dojo\/\" target=\"_blank\" rel=\"noreferrer noopener\" rel=\"noopener noreferrer\" target=\"_blank\">do you need a Dojo?<\/a>)<\/li>\n\n\n\n<li class=\"wp-block-list-item\">When tackling a new challenge, split it into sub-problems<\/li>\n\n\n\n<li class=\"wp-block-list-item\">Face the big unknown first, don&#8217;t hope for the best<\/li>\n\n\n\n<li class=\"wp-block-list-item\">Take your time to think, discuss and share your options before starting something that is going to be hard to change later<\/li>\n\n\n\n<li class=\"wp-block-list-item\">If you went down the &#8220;wrong path&#8221;, listen to early feedback (how complex\/slow is it to add\/change a feature). Don&#8217;t follow the white rabbit, go back to the drawing board and start changing the design.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">You can contact us on the social media links on this page if you&#8217;d like to share your experiences of using the coding techniques discussed in this article or if you have any tips to share with the community.<\/p>\n\n\n\n<div class=\"wp-block-group has-azure-800-color has-azure-200-background-color has-text-color has-background has-link-color wp-elements-742fdc2e97df25eb9ebc6b1e70f77d16 has-global-padding is-layout-constrained wp-container-core-group-is-layout-80fb368b wp-block-group-is-layout-constrained\" style=\"border-radius:8px;padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--30)\">\n<p class=\"has-text-align-center has-xxs-font-size wp-block-paragraph\">We create this content for general information purposes and it should not be taken as advice. Always take professional advice.&nbsp;<a href=\"https:\/\/www.simplybusiness.co.uk\/legal\/knowledge-centre-disclaimer\/\">Read our full disclaimer<\/a><\/p>\n<\/div>\n\n\n\n<div id=\"newsletter-subscribe\" class=\"wp-block-group newsletter-subscribe is-layout-flow wp-block-group-is-layout-flow wp-block-block\" style=\"border-top-color:#cccccc;border-top-width:1px;padding-top:var(--wp--preset--spacing--80);padding-right:0;padding-bottom:var(--wp--preset--spacing--80);padding-left:0\">\n<p class=\"has-text-align-center has-dark-800-color has-text-color has-link-color has-medium-font-size wp-elements-ced002c3d2e03fde51d8880b5da0f3bb wp-block-paragraph\" style=\"margin-bottom:var(--wp--preset--spacing--50)\">A free monthly newsletter with the latest news and tools for small businesses and landlords.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-222c5d1d wp-block-buttons-is-layout-flex\" style=\"margin-bottom:var(--wp--preset--spacing--50)\">\n<div class=\"wp-block-button is-style-outline has-size-medium is-style-outline--1\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/www.simplybusiness.co.uk\/about-us\/newsletter-signup\/\">Subscribe to our newsletter<\/a><\/div>\n<\/div>\n\n\n\n<ul class=\"wp-block-social-links has-small-icon-size is-style-logos-only is-content-justification-center is-layout-flex wp-container-core-social-links-is-layout-a89b3969 wp-block-social-links-is-layout-flex\"><li class=\"wp-social-link wp-social-link-facebook  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.facebook.com\/simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12 2C6.5 2 2 6.5 2 12c0 5 3.7 9.1 8.4 9.9v-7H7.9V12h2.5V9.8c0-2.5 1.5-3.9 3.8-3.9 1.1 0 2.2.2 2.2.2v2.5h-1.3c-1.2 0-1.6.8-1.6 1.6V12h2.8l-.4 2.9h-2.3v7C18.3 21.1 22 17 22 12c0-5.5-4.5-10-10-10z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on Facebook<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-x  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.x.com\/simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M13.982 10.622 20.54 3h-1.554l-5.693 6.618L8.745 3H3.5l6.876 10.007L3.5 21h1.554l6.012-6.989L15.868 21h5.245l-7.131-10.378Zm-2.128 2.474-.697-.997-5.543-7.93H8l4.474 6.4.697.996 5.815 8.318h-2.387l-4.745-6.787Z\" \/><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on X<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-youtube  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.youtube.com\/user\/simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M21.8,8.001c0,0-0.195-1.378-0.795-1.985c-0.76-0.797-1.613-0.801-2.004-0.847c-2.799-0.202-6.997-0.202-6.997-0.202 h-0.009c0,0-4.198,0-6.997,0.202C4.608,5.216,3.756,5.22,2.995,6.016C2.395,6.623,2.2,8.001,2.2,8.001S2,9.62,2,11.238v1.517 c0,1.618,0.2,3.237,0.2,3.237s0.195,1.378,0.795,1.985c0.761,0.797,1.76,0.771,2.205,0.855c1.6,0.153,6.8,0.201,6.8,0.201 s4.203-0.006,7.001-0.209c0.391-0.047,1.243-0.051,2.004-0.847c0.6-0.607,0.795-1.985,0.795-1.985s0.2-1.618,0.2-3.237v-1.517 C22,9.62,21.8,8.001,21.8,8.001z M9.935,14.594l-0.001-5.62l5.404,2.82L9.935,14.594z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Subscribe to Simply Business Videos on Youtube<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-linkedin  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.linkedin.com\/company\/simply-business_39914\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M19.7,3H4.3C3.582,3,3,3.582,3,4.3v15.4C3,20.418,3.582,21,4.3,21h15.4c0.718,0,1.3-0.582,1.3-1.3V4.3 C21,3.582,20.418,3,19.7,3z M8.339,18.338H5.667v-8.59h2.672V18.338z M7.004,8.574c-0.857,0-1.549-0.694-1.549-1.548 c0-0.855,0.691-1.548,1.549-1.548c0.854,0,1.547,0.694,1.547,1.548C8.551,7.881,7.858,8.574,7.004,8.574z M18.339,18.338h-2.669 v-4.177c0-0.996-0.017-2.278-1.387-2.278c-1.389,0-1.601,1.086-1.601,2.206v4.249h-2.667v-8.59h2.559v1.174h0.037 c0.356-0.675,1.227-1.387,2.526-1.387c2.703,0,3.203,1.779,3.203,4.092V18.338z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on LinkedIn<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-instagram  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.instagram.com\/simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12,4.622c2.403,0,2.688,0.009,3.637,0.052c0.877,0.04,1.354,0.187,1.671,0.31c0.42,0.163,0.72,0.358,1.035,0.673 c0.315,0.315,0.51,0.615,0.673,1.035c0.123,0.317,0.27,0.794,0.31,1.671c0.043,0.949,0.052,1.234,0.052,3.637 s-0.009,2.688-0.052,3.637c-0.04,0.877-0.187,1.354-0.31,1.671c-0.163,0.42-0.358,0.72-0.673,1.035 c-0.315,0.315-0.615,0.51-1.035,0.673c-0.317,0.123-0.794,0.27-1.671,0.31c-0.949,0.043-1.233,0.052-3.637,0.052 s-2.688-0.009-3.637-0.052c-0.877-0.04-1.354-0.187-1.671-0.31c-0.42-0.163-0.72-0.358-1.035-0.673 c-0.315-0.315-0.51-0.615-0.673-1.035c-0.123-0.317-0.27-0.794-0.31-1.671C4.631,14.688,4.622,14.403,4.622,12 s0.009-2.688,0.052-3.637c0.04-0.877,0.187-1.354,0.31-1.671c0.163-0.42,0.358-0.72,0.673-1.035 c0.315-0.315,0.615-0.51,1.035-0.673c0.317-0.123,0.794-0.27,1.671-0.31C9.312,4.631,9.597,4.622,12,4.622 M12,3 C9.556,3,9.249,3.01,8.289,3.054C7.331,3.098,6.677,3.25,6.105,3.472C5.513,3.702,5.011,4.01,4.511,4.511 c-0.5,0.5-0.808,1.002-1.038,1.594C3.25,6.677,3.098,7.331,3.054,8.289C3.01,9.249,3,9.556,3,12c0,2.444,0.01,2.751,0.054,3.711 c0.044,0.958,0.196,1.612,0.418,2.185c0.23,0.592,0.538,1.094,1.038,1.594c0.5,0.5,1.002,0.808,1.594,1.038 c0.572,0.222,1.227,0.375,2.185,0.418C9.249,20.99,9.556,21,12,21s2.751-0.01,3.711-0.054c0.958-0.044,1.612-0.196,2.185-0.418 c0.592-0.23,1.094-0.538,1.594-1.038c0.5-0.5,0.808-1.002,1.038-1.594c0.222-0.572,0.375-1.227,0.418-2.185 C20.99,14.751,21,14.444,21,12s-0.01-2.751-0.054-3.711c-0.044-0.958-0.196-1.612-0.418-2.185c-0.23-0.592-0.538-1.094-1.038-1.594 c-0.5-0.5-1.002-0.808-1.594-1.038c-0.572-0.222-1.227-0.375-2.185-0.418C14.751,3.01,14.444,3,12,3L12,3z M12,7.378 c-2.552,0-4.622,2.069-4.622,4.622S9.448,16.622,12,16.622s4.622-2.069,4.622-4.622S14.552,7.378,12,7.378z M12,15 c-1.657,0-3-1.343-3-3s1.343-3,3-3s3,1.343,3,3S13.657,15,12,15z M16.804,6.116c-0.596,0-1.08,0.484-1.08,1.08 s0.484,1.08,1.08,1.08c0.596,0,1.08-0.484,1.08-1.08S17.401,6.116,16.804,6.116z\"><\/path><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on Instagram<\/span><\/a><\/li>\n\n<li class=\"wp-social-link wp-social-link-tiktok  wp-block-social-link\"><a rel=\"noopener nofollow\" target=\"_blank\" href=\"https:\/\/www.tiktok.com\/@simplybusiness\" class=\"wp-block-social-link-anchor\" rel=\"noopener noreferrer\" target=\"_blank\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 32 32\" version=\"1.1\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M16.708 0.027c1.745-0.027 3.48-0.011 5.213-0.027 0.105 2.041 0.839 4.12 2.333 5.563 1.491 1.479 3.6 2.156 5.652 2.385v5.369c-1.923-0.063-3.855-0.463-5.6-1.291-0.76-0.344-1.468-0.787-2.161-1.24-0.009 3.896 0.016 7.787-0.025 11.667-0.104 1.864-0.719 3.719-1.803 5.255-1.744 2.557-4.771 4.224-7.88 4.276-1.907 0.109-3.812-0.411-5.437-1.369-2.693-1.588-4.588-4.495-4.864-7.615-0.032-0.667-0.043-1.333-0.016-1.984 0.24-2.537 1.495-4.964 3.443-6.615 2.208-1.923 5.301-2.839 8.197-2.297 0.027 1.975-0.052 3.948-0.052 5.923-1.323-0.428-2.869-0.308-4.025 0.495-0.844 0.547-1.485 1.385-1.819 2.333-0.276 0.676-0.197 1.427-0.181 2.145 0.317 2.188 2.421 4.027 4.667 3.828 1.489-0.016 2.916-0.88 3.692-2.145 0.251-0.443 0.532-0.896 0.547-1.417 0.131-2.385 0.079-4.76 0.095-7.145 0.011-5.375-0.016-10.735 0.025-16.093z\" \/><\/svg><span class=\"wp-block-social-link-label screen-reader-text\">Follow Simply Business on TikTok<\/span><\/a><\/li><\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>&#8220;As Above, So Below&#8221;, (Macrocosm and microcosm) Often, doing something small gives an opportunity to understand the mechanics of larger and more complex processes. Let&#8217;s take a closer look at the relationship between a Kata and how to tackle larger problems. The Kata Every two weeks on a Friday afternoon, we have been running a [&hellip;]<\/p>\n","protected":false},"author":14,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"sb_hreflang":"","sb_hreflang_url":"","disable_breadcrumbs":false,"sb_breadcrumbs":[],"footnotes":""},"tags":[],"hidden-category":[],"coauthors":[248],"class_list":["post-327","post","type-post","status-publish","format-standard","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How I learned to be more mindful of my design; reflections from practicing a code kata<\/title>\n<meta name=\"description\" content=\"Often, doing something small gives an opportunity to understand the mechanics of larger and more complex processes. What can we learn about design from practicing a code kata?\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How I learned to be more mindful of my design; reflections from practicing a code kata\" \/>\n<meta property=\"og:description\" content=\"Often, doing something small gives an opportunity to understand the mechanics of larger and more complex processes. What can we learn about design from practicing a code kata?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/\" \/>\n<meta property=\"og:site_name\" content=\"Simply Business UK\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/simplybusiness\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-29T14:42:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-30T11:25:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/06\/code-katas.jpg\" \/>\n<meta name=\"author\" content=\"Alessandro Caianiello\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@simplybusiness\" \/>\n<meta name=\"twitter:site\" content=\"@simplybusiness\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alessandro Caianiello\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/\"},\"author\":{\"@type\":\"Person\",\"name\":\"Alessandro Caianiello\",\"description\":\"\"},\"headline\":\"How I learned to be more mindful of my design; reflections from practicing a code kata\",\"datePublished\":\"2020-07-29T14:42:00+00:00\",\"dateModified\":\"2024-05-30T11:25:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/\"},\"wordCount\":1513,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp?w=768\",\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/\",\"name\":\"How I learned to be more mindful of my design; reflections from practicing a code kata\",\"isPartOf\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp?w=768\",\"datePublished\":\"2020-07-29T14:42:00+00:00\",\"dateModified\":\"2024-05-30T11:25:34+00:00\",\"description\":\"Often, doing something small gives an opportunity to understand the mechanics of larger and more complex processes. What can we learn about design from practicing a code kata?\",\"breadcrumb\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#primaryimage\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp\",\"contentUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp\",\"width\":768,\"height\":256,\"caption\":\"sb-tech-site-technology\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.simplybusiness.co.uk\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How I learned to be more mindful of my design; reflections from practicing a code kata\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#website\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/\",\"name\":\"Simply Business UK\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.simplybusiness.co.uk\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/#\/schema\/person\/77f91625e7ec1b88a7fca8910ce6c69f\",\"name\":\"rishvashah\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp9df6147f02078f0218660330fdfbacf3\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp\",\"contentUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp\",\"caption\":\"rishvashah\"}},{\"@type\":\"PostalAddress\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#local-main-place-address\",\"streetAddress\":\"Hylo, 105 Bunhill Row\",\"addressLocality\":\"London\",\"postalCode\":\"EC1Y 8LZ\",\"addressCountry\":\"GB\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#local-main-organization-logo\",\"url\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/logo.png\",\"contentUrl\":\"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/logo.png\",\"width\":533,\"height\":187,\"caption\":\"Simply Business UK\"}]}<\/script>\n<meta name=\"geo.placename\" content=\"London\" \/>\n<meta name=\"geo.region\" content=\"United Kingdom (UK)\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How I learned to be more mindful of my design; reflections from practicing a code kata","description":"Often, doing something small gives an opportunity to understand the mechanics of larger and more complex processes. What can we learn about design from practicing a code kata?","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/","og_locale":"en_GB","og_type":"article","og_title":"How I learned to be more mindful of my design; reflections from practicing a code kata","og_description":"Often, doing something small gives an opportunity to understand the mechanics of larger and more complex processes. What can we learn about design from practicing a code kata?","og_url":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/","og_site_name":"Simply Business UK","article_publisher":"https:\/\/www.facebook.com\/simplybusiness","article_published_time":"2020-07-29T14:42:00+00:00","article_modified_time":"2024-05-30T11:25:34+00:00","og_image":[{"url":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/06\/code-katas.jpg","type":"","width":"","height":""}],"author":"Alessandro Caianiello","twitter_card":"summary_large_image","twitter_creator":"@simplybusiness","twitter_site":"@simplybusiness","twitter_misc":{"Written by":"Alessandro Caianiello","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#article","isPartOf":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/"},"author":{"@type":"Person","name":"Alessandro Caianiello","description":""},"headline":"How I learned to be more mindful of my design; reflections from practicing a code kata","datePublished":"2020-07-29T14:42:00+00:00","dateModified":"2024-05-30T11:25:34+00:00","mainEntityOfPage":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/"},"wordCount":1513,"commentCount":0,"publisher":{"@id":"https:\/\/www.simplybusiness.co.uk\/#organization"},"image":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#primaryimage"},"thumbnailUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp?w=768","inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/","url":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/","name":"How I learned to be more mindful of my design; reflections from practicing a code kata","isPartOf":{"@id":"https:\/\/www.simplybusiness.co.uk\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#primaryimage"},"image":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#primaryimage"},"thumbnailUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp?w=768","datePublished":"2020-07-29T14:42:00+00:00","dateModified":"2024-05-30T11:25:34+00:00","description":"Often, doing something small gives an opportunity to understand the mechanics of larger and more complex processes. What can we learn about design from practicing a code kata?","breadcrumb":{"@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#primaryimage","url":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp","contentUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/sb-tech-site-technology.webp","width":768,"height":256,"caption":"sb-tech-site-technology"},{"@type":"BreadcrumbList","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.simplybusiness.co.uk\/"},{"@type":"ListItem","position":2,"name":"How I learned to be more mindful of my design; reflections from practicing a code kata"}]},{"@type":"WebSite","@id":"https:\/\/www.simplybusiness.co.uk\/#website","url":"https:\/\/www.simplybusiness.co.uk\/","name":"Simply Business UK","description":"","publisher":{"@id":"https:\/\/www.simplybusiness.co.uk\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.simplybusiness.co.uk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Person","@id":"https:\/\/www.simplybusiness.co.uk\/#\/schema\/person\/77f91625e7ec1b88a7fca8910ce6c69f","name":"rishvashah","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp9df6147f02078f0218660330fdfbacf3","url":"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp","contentUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/themes\/simply-business\/dist\/images\/default-author-avatar.webp","caption":"rishvashah"}},{"@type":"PostalAddress","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#local-main-place-address","streetAddress":"Hylo, 105 Bunhill Row","addressLocality":"London","postalCode":"EC1Y 8LZ","addressCountry":"GB"},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas\/#local-main-organization-logo","url":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/logo.png","contentUrl":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/05\/logo.png","width":533,"height":187,"caption":"Simply Business UK"}]},"geo.placename":"London","geo.region":"United Kingdom (UK)"},"parsely":{"version":"1.1.0","canonical_url":"https:\/\/simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas","smart_links":{"inbound":0,"outbound":0},"traffic_boost_suggestions_count":0,"meta":{"@context":"https:\/\/schema.org","@type":"NewsArticle","headline":"How I learned to be more mindful of my design; reflections from practicing a code kata","url":"http:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas","mainEntityOfPage":{"@type":"WebPage","@id":"http:\/\/www.simplybusiness.co.uk\/about-us\/tech\/2020\/07\/code-katas"},"thumbnailUrl":"","image":{"@type":"ImageObject","url":""},"articleSection":"Uncategorised","author":[{"@type":"Person","name":"Alessandro Caianiello"}],"creator":["Alessandro Caianiello"],"publisher":{"@type":"Organization","name":"Simply Business UK","logo":"https:\/\/www.simplybusiness.co.uk\/wp-content\/uploads\/sites\/3\/2024\/04\/icon-512x512-1.png"},"keywords":[],"dateCreated":"2020-07-29T14:42:00Z","datePublished":"2020-07-29T14:42:00Z","dateModified":"2024-05-30T11:25:34Z"},"rendered":"<script type=\"application\/ld+json\" class=\"wp-parsely-metadata\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@type\":\"NewsArticle\",\"headline\":\"How I learned to be more mindful of my design; reflections from practicing a code kata\",\"url\":\"http:\\\/\\\/www.simplybusiness.co.uk\\\/about-us\\\/tech\\\/2020\\\/07\\\/code-katas\",\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/www.simplybusiness.co.uk\\\/about-us\\\/tech\\\/2020\\\/07\\\/code-katas\"},\"thumbnailUrl\":\"\",\"image\":{\"@type\":\"ImageObject\",\"url\":\"\"},\"articleSection\":\"Uncategorised\",\"author\":[{\"@type\":\"Person\",\"name\":\"Alessandro Caianiello\"}],\"creator\":[\"Alessandro Caianiello\"],\"publisher\":{\"@type\":\"Organization\",\"name\":\"Simply Business UK\",\"logo\":\"https:\\\/\\\/www.simplybusiness.co.uk\\\/wp-content\\\/uploads\\\/sites\\\/3\\\/2024\\\/04\\\/icon-512x512-1.png\"},\"keywords\":[],\"dateCreated\":\"2020-07-29T14:42:00Z\",\"datePublished\":\"2020-07-29T14:42:00Z\",\"dateModified\":\"2024-05-30T11:25:34Z\"}<\/script>","tracker_url":"https:\/\/cdn.parsely.com\/keys\/simplybusiness.co.uk\/p.js"},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/posts\/327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/comments?post=327"}],"version-history":[{"count":12,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/posts\/327\/revisions"}],"predecessor-version":[{"id":13950,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/posts\/327\/revisions\/13950"}],"wp:attachment":[{"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/media?parent=327"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/tags?post=327"},{"taxonomy":"hidden-category","embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/hidden-category?post=327"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.simplybusiness.co.uk\/wp-json\/wp\/v2\/coauthors?post=327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}