{"id":403,"date":"2018-12-31T07:23:04","date_gmt":"2018-12-31T06:23:04","guid":{"rendered":"https:\/\/www.codemotion.com\/magazine\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/"},"modified":"2023-05-30T16:09:05","modified_gmt":"2023-05-30T14:09:05","slug":"interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care","status":"publish","type":"post","link":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/","title":{"rendered":"Functional programming: what is it and why should I care"},"content":{"rendered":"\n<p><strong>Hello Claudio, you\u2019re an active member of the Elixir community. For those who don\u2019t know you, could you tell us a <span id=\"urn:batch-analysis-5aae3209-c07d-4956-baed-d281218b2abf\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/bit\">bit<\/span> about yourself?<\/strong><\/p>\n\n\n\n<p>I&#8217;m a back-end developer and currently, I work at AdEspresso, a startup that deals with marketing activities on <span id=\"urn:batch-analysis-d220565c-a42c-4c31-b9f3-28a0af2ced2b\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/facebook\">Facebook<\/span>. It&#8217;s been a while since I delivered my last talk, but my first talk dates back to 2014 &#8211; I delivered it at the Symfony Day conference. I was mainly engaged with the PUG Roma community. My favourite <span id=\"urn:batch-analysis-06b9f0c9-8963-47b2-a6ed-a59ee3944648\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/programming_languages\">programming language<\/span> was <span id=\"urn:batch-analysis-6c23ce6c-9d35-4531-8be8-e9175fccdc99\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/php\">PHP<\/span>. It changed a little <span id=\"urn:batch-analysis-8f87a4e5-02e7-4325-a3fb-de4f91e6e00c\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/bit\">bit<\/span> around four years ago when I also dedicated myself to the <span id=\"urn:batch-analysis-8fb17fe6-5576-4835-818a-fdb0db1f5c93\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/programming_languages\">programming language<\/span> called Elixir. What I try to do when I deliver my talks is to increase the interest in functional languages, towards this paradigm that&#8217;s much older than you think and that&#8217;s beginning to re-emerge through frameworks and good practices originating especially in the world of <span id=\"urn:batch-analysis-587c92c7-fc49-429f-b77c-70d9078245dc\" class=\"textannotation disambiguated wl-no-link wl-creative work\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/javascript\">JavaScript<\/span>.<\/p>\n\n\n\n<p><strong>Could you tell us how you became a developer and how you found yourself working on the back-end?<\/strong><\/p>\n\n\n\n<p>In reality, I studied a completely different thing: I am a computational and theoretical chemist. I joined the IT world because it was my first serious work experience. At the very beginning, it was not serious; we drew up a sort of micro <span id=\"urn:batch-analysis-3f12e25f-bb3b-4b9e-be4e-7acaaec62e63\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/ember_company\">company<\/span> with another colleague. Later on, things went very well, so I decided to drop out of my studies in chemistry and devoted myself to the IT world. At the beginning, I was a system engineer and I started programming in <span id=\"urn:batch-analysis-8789f6dc-5377-476f-a3e9-6b8f7902fa3d\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/c\">C<\/span>++, then, at my first serious <span id=\"urn:batch-analysis-f89c5525-227c-4685-93d6-e860736f7821\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/job\">job<\/span>, there was the need to make an application for distributed work, and then I made my first <span id=\"urn:batch-analysis-e980add0-3aa4-4db5-bbb3-d3b4288791e5\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/web_application\">web application<\/span>, even though it was obviously with very particular methods, it was in <span id=\"urn:batch-analysis-0012b7de-73dd-41ee-aca9-303d3e3157c3\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/php\">PHP<\/span> and it&#8217;s certainly not comparable with what can be done (it happened more or less in 2006). Later on, I became interested in web programming.<\/p>\n\n\n\n<p><strong>Are you currently working on any personal <span id=\"urn:batch-analysis-6a3294c9-6f00-4d8f-95d2-1d8b08493146\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/project\">project<\/span>?<\/strong><\/p>\n\n\n\n<p>Absolutely! I have lots of personal <span style=\"user-select: auto;\" id=\"urn:batch-analysis-d577205e-cf21-4d72-924a-446d68edde86\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/project\">projects<\/span>. When I start to learn a new technology or approach, I try to get my hands dirty and create an ad-hoc <span style=\"user-select: auto;\" id=\"urn:batch-analysis-1c064c40-8727-4789-a19b-e7a2fda2f0f5\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/project\">project<\/span> that I leave &#8220;orphaned&#8221; when I&#8217;m done with exploring. Recently, I decided to create a group that meets once a week after work to all work together on our personal <span style=\"user-select: auto;\" id=\"urn:batch-analysis-38943d63-494c-479b-a64d-7753c9307e4e\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/project\">projects<\/span>, and I must say that a very interesting <span style=\"user-select: auto;\" id=\"urn:batch-analysis-5edd8c2a-765b-4d2b-96fc-05615480a211\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/project\">project<\/span> is developing from all of this. It&#8217;s something small but very very interesting, and if we can we&#8217;ll talk about it at the Facebook Developer Circle.<\/p>\n\n\n\n<p><strong>We can\u2019t wait to hear more about it! Claudio, could you tell us how you keep yourself informed on all the latest tech news? Do you follow any course? Do you attend conferences?<\/strong><\/p>\n\n\n\n<p>Absolutely! Doing all these things is super important. Since Codemotion conferences or specifications began, for example, those of GrUSP when I worked in the PHP environment, or those of BEAM <span id=\"urn:batch-analysis-1bf0bc61-68c5-4f07-b152-fc32bcfe1931\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/italy\">Italy<\/span> now that the <span id=\"urn:batch-analysis-c4b29403-902f-42ae-8ee9-09871fc92344\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/team\">team<\/span> is engaged on Elixir, I think the quality of Italian code and <span id=\"urn:batch-analysis-e2feb854-58fb-4fa4-872d-f29333c55a4e\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/programmer\">programmers<\/span> has increased. The best thing for keeping yourself up-to-date is joining the <span id=\"urn:batch-analysis-4efad2a1-0ce4-478f-8f39-c831fee0fe59\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/community\">community<\/span> created within the largest conferences and attending the meetups, with monthly meetings, mailing lists etc. There&#8217;s no better way to grow and discover new things than the <span id=\"urn:batch-analysis-6d450a55-6352-40ba-ab91-67d6eef3a6d0\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/community\">community<\/span>. The <span id=\"urn:batch-analysis-30f436c6-d1d0-4953-96de-13929673bf8b\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/community\">community<\/span> doesn&#8217;t take charge of anything you learn and it&#8217;s the best way to discover what to study tomorrow. There are no professors within the <span id=\"urn:batch-analysis-e38c35a2-a5d9-490d-8915-eda7d284f54c\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/community\">community<\/span> and no one&#8217;s obliged to teach you; the exchange is mutual! The advice I give to everyone who is starting to develop or is entering the tech world is: the <span id=\"urn:batch-analysis-e47ae7e4-5f80-49f9-9b02-bf9d5e7cb57e\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/community\">community<\/span> is the most important thing!<\/p>\n\n\n\n<p><strong>Where did the idea of doing the talk come from?<\/strong><\/p>\n\n\n\n<p>It came from Federico Caprari. We try to overcome the fear that hovers over the concept of functional <span id=\"urn:batch-analysis-330b6e72-6f82-474e-b245-3a9f3ee94082\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/minification_programming\">programming<\/span>. It can scare people because there are actually complicated languages and the first approach with Haskell or Camel can probably put people off. Together with Federico, we are committed to start uncovering the functional approach, trying not to scare people, to simplify complicated concepts that exist, because the functional derives from the calculation. We arrive at all concepts, such as the nomadic one, in a gradual manner, when it&#8217;s necessary to make the functional usable even for those who don&#8217;t have the university background.<\/p>\n\n\n\n<p><strong>Who could find this functional approach useful? Who should apply it in their work, now or in the future?<\/strong><\/p>\n\n\n\n<p>The functional approach applies to any field, even if some say the opposite thing. When we are dealing with any transformation, I imagine a <span id=\"urn:batch-analysis-26e7e1d1-3ffa-47a7-b86c-69c88880f669\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/web_service\">web service<\/span> which is nothing more than the transformation of a request into a response, and every time we apply some logic and produce the output, we are talking about functions, and that&#8217;s where the functional process begins. That said, there are some fields in which the functional approach cannot only apply but also excel. I&#8217;ll give the example of the ML languages like Haskell or Apache Camel that give you the guarantee of never having runtime errors: the compiler can block any kind of error and this leads to you having a completely stable code. I also think that Elixir or Erlang, which are not pure functional languages, don&#8217;t give you the certainty that your code will not have exceptions, but do give a high degree of competitiveness, and give you the ability to distribute on multiple servers and create clusters with the very advanced <span id=\"urn:batch-analysis-b3b48716-2265-4ec7-8c66-1ba96b7405f0\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/virtual_machine\">virtual machines<\/span> they exploit.<\/p>\n\n\n\n<p>There are myriad other reasons why they can be &#8220;nice&#8221;! For example, you program in Erlang or Elixir with the Actor Modelling that is starting to become famous thanks to the Akka framework. Basically, we have the advantages brought by the language, the extreme readability and a model that allows you to do concurrent and distributed <span id=\"urn:batch-analysis-3d9482bc-8d1c-440a-84b4-fd886b32015b\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/minification_programming\">programming<\/span> in a very simple way. If you have ever heard talk of deadlocks, you can avoid them completely with a different methodological approach to <span id=\"urn:batch-analysis-9e42faf2-263d-42e9-81a2-9b77ba830e36\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/minification_programming\">programming<\/span>.<\/p>\n\n\n\n<p><strong>Do you think this topic should be explored further, for example through more of your talks?<\/strong><\/p>\n\n\n\n<p>I hope it&#8217;s not just Federico and me giving talks on this subject. There are also many other competent people in <span id=\"urn:batch-analysis-c28f48b6-5d40-42b8-a614-7f4570d1cf0f\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/rome\">Rome<\/span>&#8216;s <span id=\"urn:batch-analysis-357a016e-e63f-4fcb-95d9-731963256719\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/community\">community<\/span> who have been doing functional <span id=\"urn:batch-analysis-5ba13ba5-bb07-4b67-8baa-2dc656e5d3c8\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/minification_programming\">programming<\/span> for a long time. What I would like to do is to bring the exponents of functional <span id=\"urn:batch-analysis-c8713203-5859-4e4c-b788-d29cabcedf42\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/minification_programming\">programming<\/span> from <span id=\"urn:batch-analysis-c87c8ca3-3ae8-439d-82b4-df7e4031388a\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/rome\">Rome<\/span> and the rest of <span id=\"urn:batch-analysis-0a6611b0-5dc1-4bdc-84e8-70c1c4ffe228\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/italy\">Italy<\/span> closer to the already existing community, so that the paradigm comes out of its long-held niche, taking advantage both of it coming back into vogue, thanks to Uncle Bob&#8217;s statements, and of the simplified approach introduced by the new frameworks.<\/p>\n\n\n\n<p>I&#8217;d like to approach the <span id=\"urn:batch-analysis-1d4349ee-8d5e-43b8-982e-6cd416b5b276\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/community\">community<\/span>, which exists and currently revolves around the good practices of <span id=\"urn:batch-analysis-74575509-da22-4636-862f-d29f4137db3b\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/object-oriented_programming\">Object-Oriented Programming<\/span>, those who know a lot of functional but have always worked alone. At this moment there&#8217;s no <span id=\"urn:batch-analysis-c837c492-dd73-4bca-ba4b-f51dd337bd2c\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/community\">community<\/span> linked to this language or strictly linked to <span id=\"urn:batch-analysis-06f8fe3a-58bb-49ac-a30c-876fe25be1e7\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/minification_programming\">programming<\/span> that hasn&#8217;t had at least five or six talks on Solid, on Decent Pattern, on good practices in general. So this is the idea: I wouldn&#8217;t want to see my own talks as much as I would like to see people more prepared than me who share their <span id=\"urn:batch-analysis-9a3abe9e-733d-4d21-86fd-77c3db33bca5\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/knowledge\">knowledge<\/span> with those who weren&#8217;t interested in this paradigm until now.<\/p>\n\n\n\n<p><strong>Last but not least, do you have any other non-computer-related passions, or you like developing in your free time as well?<\/strong><\/p>\n\n\n\n<p>I mainly use my free time to study, learn new languages, new methodologies, and new architectures. So yes: 90% of my time is dedicated to computers! But I&#8217;ve got other passions apart from <span id=\"urn:batch-analysis-8f7016eb-1e07-4531-bd52-69e8acca3f25\" class=\"textannotation disambiguated wl-no-link wl-other\" itemid=\"http:\/\/data.wordlift.io\/wl01770\/entity\/scope_computer_science\">computer science<\/span>. I like role-playing games. I&#8217;m passionate about all board games.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We interview Claudio D&#8217;Alicandro, who provided an overview on functional programming, one of the most useful and modern progamming paradigm.<\/p>\n","protected":false},"author":64,"featured_media":2264,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","footnotes":""},"categories":[5162],"tags":[50],"collections":[],"class_list":{"0":"post-403","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-community-management","8":"tag-interview","9":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Functional programming: what is it and why should I care - Codemotion<\/title>\n<meta name=\"description\" content=\"We interview Claudio D&#039;Alicandro, who provided an overview on functional programming, one of the most useful and modern progamming paradigm.\" \/>\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.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Functional programming: what is it and why should I care\" \/>\n<meta property=\"og:description\" content=\"We interview Claudio D&#039;Alicandro, who provided an overview on functional programming, one of the most useful and modern progamming paradigm.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/\" \/>\n<meta property=\"og:site_name\" content=\"Codemotion Magazine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Codemotion.Italy\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-12-31T06:23:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-05-30T14:09:05+00:00\" \/>\n<meta name=\"author\" content=\"Codemotion\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:site\" content=\"@CodemotionIT\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Codemotion\" \/>\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:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/\"},\"author\":{\"name\":\"Codemotion\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/person\\\/201bb98b02412383686cced7521b861c\"},\"headline\":\"Functional programming: what is it and why should I care\",\"datePublished\":\"2018-12-31T06:23:04+00:00\",\"dateModified\":\"2023-05-30T14:09:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/\"},\"wordCount\":1281,\"publisher\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg\",\"keywords\":[\"Interview\"],\"articleSection\":[\"Community Management\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/\",\"name\":\"Functional programming: what is it and why should I care - Codemotion\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg\",\"datePublished\":\"2018-12-31T06:23:04+00:00\",\"dateModified\":\"2023-05-30T14:09:05+00:00\",\"description\":\"We interview Claudio D'Alicandro, who provided an overview on functional programming, one of the most useful and modern progamming paradigm.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/12\\\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg\",\"width\":1015,\"height\":675,\"caption\":\"Content and templates in HTML\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Community Management\",\"item\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/community-management\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Functional programming: what is it and why should I care\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#website\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\",\"name\":\"Codemotion Magazine\",\"description\":\"We code the future. Together\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#organization\",\"name\":\"Codemotion\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/codemotionlogo.png\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/codemotionlogo.png\",\"width\":225,\"height\":225,\"caption\":\"Codemotion\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Codemotion.Italy\\\/\",\"https:\\\/\\\/x.com\\\/CodemotionIT\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/#\\\/schema\\\/person\\\/201bb98b02412383686cced7521b861c\",\"name\":\"Codemotion\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/cropped-codemotionlogo-150x150.png\",\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/cropped-codemotionlogo-150x150.png\",\"contentUrl\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/wp-content\\\/uploads\\\/2019\\\/11\\\/cropped-codemotionlogo-150x150.png\",\"caption\":\"Codemotion\"},\"description\":\"Articles wirtten by the Codemotion staff. Tech news, inspiration, latest treends in software development and more.\",\"sameAs\":[\"https:\\\/\\\/x.com\\\/CodemotionIT\"],\"url\":\"https:\\\/\\\/www.codemotion.com\\\/magazine\\\/author\\\/codemotion-2\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Functional programming: what is it and why should I care - Codemotion","description":"We interview Claudio D'Alicandro, who provided an overview on functional programming, one of the most useful and modern progamming paradigm.","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.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/","og_locale":"en_US","og_type":"article","og_title":"Functional programming: what is it and why should I care","og_description":"We interview Claudio D'Alicandro, who provided an overview on functional programming, one of the most useful and modern progamming paradigm.","og_url":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/","og_site_name":"Codemotion Magazine","article_publisher":"https:\/\/www.facebook.com\/Codemotion.Italy\/","article_published_time":"2018-12-31T06:23:04+00:00","article_modified_time":"2023-05-30T14:09:05+00:00","author":"Codemotion","twitter_card":"summary_large_image","twitter_image":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg","twitter_creator":"@CodemotionIT","twitter_site":"@CodemotionIT","twitter_misc":{"Written by":"Codemotion","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/#article","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/"},"author":{"name":"Codemotion","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/201bb98b02412383686cced7521b861c"},"headline":"Functional programming: what is it and why should I care","datePublished":"2018-12-31T06:23:04+00:00","dateModified":"2023-05-30T14:09:05+00:00","mainEntityOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/"},"wordCount":1281,"publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg","keywords":["Interview"],"articleSection":["Community Management"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/","url":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/","name":"Functional programming: what is it and why should I care - Codemotion","isPartOf":{"@id":"https:\/\/www.codemotion.com\/magazine\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/#primaryimage"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/#primaryimage"},"thumbnailUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg","datePublished":"2018-12-31T06:23:04+00:00","dateModified":"2023-05-30T14:09:05+00:00","description":"We interview Claudio D'Alicandro, who provided an overview on functional programming, one of the most useful and modern progamming paradigm.","breadcrumb":{"@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/#primaryimage","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg","width":1015,"height":675,"caption":"Content and templates in HTML"},{"@type":"BreadcrumbList","@id":"https:\/\/www.codemotion.com\/magazine\/community-management\/interview-claudio-dalicandro-functional-programming-what-is-it-and-why-should-i-care\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.codemotion.com\/magazine\/"},{"@type":"ListItem","position":2,"name":"Community Management","item":"https:\/\/www.codemotion.com\/magazine\/community-management\/"},{"@type":"ListItem","position":3,"name":"Functional programming: what is it and why should I care"}]},{"@type":"WebSite","@id":"https:\/\/www.codemotion.com\/magazine\/#website","url":"https:\/\/www.codemotion.com\/magazine\/","name":"Codemotion Magazine","description":"We code the future. Together","publisher":{"@id":"https:\/\/www.codemotion.com\/magazine\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.codemotion.com\/magazine\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.codemotion.com\/magazine\/#organization","name":"Codemotion","url":"https:\/\/www.codemotion.com\/magazine\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/codemotionlogo.png","width":225,"height":225,"caption":"Codemotion"},"image":{"@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Codemotion.Italy\/","https:\/\/x.com\/CodemotionIT"]},{"@type":"Person","@id":"https:\/\/www.codemotion.com\/magazine\/#\/schema\/person\/201bb98b02412383686cced7521b861c","name":"Codemotion","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/cropped-codemotionlogo-150x150.png","url":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/cropped-codemotionlogo-150x150.png","contentUrl":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/11\/cropped-codemotionlogo-150x150.png","caption":"Codemotion"},"description":"Articles wirtten by the Codemotion staff. Tech news, inspiration, latest treends in software development and more.","sameAs":["https:\/\/x.com\/CodemotionIT"],"url":"https:\/\/www.codemotion.com\/magazine\/author\/codemotion-2\/"}]}},"featured_image_src":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-600x400.jpg","featured_image_src_square":"https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-600x600.jpg","author_info":{"display_name":"Codemotion","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/codemotion-2\/"},"uagb_featured_image_src":{"full":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg",1015,675,false],"thumbnail":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-150x150.jpg",150,150,true],"medium":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-300x200.jpg",300,200,true],"medium_large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-768x511.jpg",768,511,true],"large":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg",1015,675,false],"1536x1536":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg",1015,675,false],"2048x2048":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg",1015,675,false],"small-home-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000.jpg",100,67,false],"sidebar-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-180x128.jpg",180,128,true],"genesis-singular-images":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-896x504.jpg",896,504,true],"archive-featured":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-400x225.jpg",400,225,true],"gb-block-post-grid-landscape":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-600x400.jpg",600,400,true],"gb-block-post-grid-square":["https:\/\/www.codemotion.com\/magazine\/wp-content\/uploads\/2019\/12\/html_13b807cc0d5e21503f6bc90f4f158d87_2000-600x600.jpg",600,600,true]},"uagb_author_info":{"display_name":"Codemotion","author_link":"https:\/\/www.codemotion.com\/magazine\/author\/codemotion-2\/"},"uagb_comment_info":0,"uagb_excerpt":"We interview Claudio D'Alicandro, who provided an overview on functional programming, one of the most useful and modern progamming paradigm.","lang":"en","_links":{"self":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/403","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/users\/64"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/comments?post=403"}],"version-history":[{"count":5,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/403\/revisions"}],"predecessor-version":[{"id":21066,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/posts\/403\/revisions\/21066"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media\/2264"}],"wp:attachment":[{"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/media?parent=403"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/categories?post=403"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/tags?post=403"},{"taxonomy":"collections","embeddable":true,"href":"https:\/\/www.codemotion.com\/magazine\/wp-json\/wp\/v2\/collections?post=403"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}