{"id":29247,"date":"2021-02-15T10:42:01","date_gmt":"2021-02-15T18:42:01","guid":{"rendered":"https:\/\/careerkarma.com\/blog\/?p=29247"},"modified":"2021-02-15T10:42:09","modified_gmt":"2021-02-15T18:42:09","slug":"interpreter-vs-complier","status":"publish","type":"post","link":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/","title":{"rendered":"Compiler vs Interpreter: Compared and Contrasted"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Compiler vs Interpreter Summary<\/h2>\n\n\n\n<p>When you talk to a friend on the phone using the same language, you can say whatever you want without needing someone to translate for you. But when you need to communicate with someone whose language you do not know (and who does not know your language), you need a translator.<br><\/p>\n\n\n\n<p>In computing, we need \u201ctranslators\u201d to help us communicate with computers. This is because computers communicate in machine language. Programming languages exist as methods for communicating with computers. They are also called \u201chigh-level\u201d languages, as opposed to a computer\u2019s \u201clow-level\u201d language. When we \u201cspeak\u201d a programming language to a computer, we need a translator to take that programming language and turn it into machine vernacular.<br><\/p>\n\n\n\n<p>Fortunately, there are two types of translators that we can use to help us communicate with computers. These are the compiler and the interpreter. They perform essentially the same function but go about it in different ways. A compiler takes the program you have written and runs it all at once after you have written the entire program. An interpreter, on the other hand, runs each of your commands one line of code at a time.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Interpreter vs Compiler: How It Works<\/h2>\n\n\n\n<p>Let\u2019s take a look at a couple of examples of how compiling and interpreting work.<\/p>\n\n\n\n<p>The programming language C is called a \u201ccompiled language\u201d because it uses a compiler. Its compilation process has several steps:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>First, the source code file is run through a <a href=\"https:\/\/www.tutorialspoint.com\/cprogramming\/c_preprocessors.htm\" target=\"_blank\" rel=\"noopener\" rel=\"nofollow\">preprocessor<\/a>, which prepares the code for running through the compiler.&nbsp;<\/li><li>Second, the code runs through a compiler (yes, <a href=\"https:\/\/www.youtube.com\/watch?v=VDslRumKvRA\" target=\"_blank\" rel=\"noopener\" rel=\"nofollow\">there is something called a \u201ccompiler\u201d within the larger compiler<\/a>), which turns the code into assembly code.<\/li><li>Third, the assembly code is passed through an assembler, which converts the code into pure binary code (also called \u201cobject code\u201d or \u201cmachine language\u201d).<\/li><li>The code is then passed to a linker, which combines all the code files for your project and transforms them into a single executable file. This file contains instructions for the computer it\u2019s being run on but does not include the original source code.&nbsp;<\/li><\/ul>\n\n\n\n<p>By contrast, JavaScript is called an \u201cinterpreted language.\u201d Here\u2019s what happens when you decide to run JavaScript code:&nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>You can run JavaScript code either in your browser or in your terminal via Node.js.&nbsp;<\/li><li>Your code is then passed to a JavaScript engine. There are several JavaScript engines, including V8, Spidermonkey, JavaScript Core, and Rhino. Which engine you are using depends on which browser you have. For example, V8 is Chrome\u2019s JavaScript engine. Node.js runs on the V8 engine.&nbsp;<\/li><li>The JavaScript engine interprets the code, converts it into machine code, and then your computer can execute the commands. The JavaScript engine, sometimes referred to as a \u201cvirtual machine\u201d, functions as an interpreter, which is why JavaScript is considered an interpreted language.<\/li><\/ul>\n\n\n\n<p>Note that both processes result in your source code being converted into machine code.&nbsp;<\/p>\n\n\n\n<p>Programming languages tend to be classified as being either compiled or interpreted language. These terms describe how source code written in these languages is translated into machine code. Python, PHP, Ruby, Perl, and JavaScript are generally considered to be interpreted languages. C, C++, C#, and Rust are compiled languages.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Interpreter vs. Compiler: Pros and Cons<\/h2>\n\n\n\n<p>Both interpreters and compilers have advantages and disadvantages:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Speed<\/h3>\n\n\n\n<p>An interpreter tends to run more slowly than a compiled program because it reads each line one at a time. A compiled program takes time to compile initially, but once it is compiled into an executable, it can be run without being compiled again. This means that if you write a software program using a compiler and send the executable to your friend, the program will run more quickly than if they had to run it as an interpreted program.&nbsp;<br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Debugging<\/h3>\n\n\n\n<p>If you are using an interpreter, it is relatively easy to detect and fix problems in your code as you go. When you run the program, you will see every line that was executed prior to the error. You can clearly see which line contained the error because you will get an error message.&nbsp;<br><\/p>\n\n\n\n<p>On the other hand, using a compiler can make errors more difficult to detect. The compiler runs the entire program as a whole and does not stop, even when there is an error. This could cause serious problems, like your computer system shutting down. It also means that you will not be able to easily see where the error was and so will have to spend more time debugging.&nbsp;<br><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Source Code Visibility<\/h3>\n\n\n\n<p>With compiled languages, you can keep your source code private. An executable does not contain your source code, so when you share your program with others, they won\u2019t see your \u201csecret sauce.\u201d&nbsp; With an interpreted language, anyone you share the program with will see your source code. If you work for a software company, having your source code visible could make it vulnerable to attackers or competitors who want to steal this proprietary content.&nbsp;<br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Compiler vs Interpreter: Is One Better Than the Other?<\/h2>\n\n\n\n<p>You may be wondering, \u201cDoes it matter whether I\u2019m using a compiler or an interpreter?\u201d&nbsp;<\/p>\n\n\n\n<p>Your goals for your program can help determine whether you want to use an interpreter or a compiler. In turn, this can help you decide which programming languages are best suited for your project.<\/p>\n\n\n\n<p>As you\u2019re designing your program and development process, you\u2019ll want to consider factors like speed, debugging, and source code visibility. If you\u2019re building proprietary software to sell to consumers and you don\u2019t want anyone else to use the source code, it could be a good idea to write the program in a compiled language. When someone uses an executable file (the end result of the compilation process), <a href=\"https:\/\/stackoverflow.com\/questions\/54733440\/how-to-get-a-c-source-code-from-the-compiled-code\" target=\"_blank\" rel=\"noopener\" rel=\"nofollow\">they can\u2019t \u201cdecompile\u201d the file to see the original source code<\/a>. However, if you want to minimize the time you spend debugging, then you may want to write your program in an interpreted language.&nbsp;<\/p>\n\n\n\n<p>Of course, there are other factors to consider when deciding how to write software. Different programming languages are most suitable for different kinds of tasks and have varying functionalities.&nbsp;<\/p>\n\n\n\n<p>Both compilers and interpreters help software developers translate human-readable code into machine code. Compilers protect the visibility of source code and produce fast-running compiled programs. Interpreters allow developers to quickly debug programs, which saves time in the development process. Understanding what a compiler and an interpreter are and how they affect your development process is an important part of your work as a programmer.\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"Compiler vs Interpreter Summary When you talk to a friend on the phone using the same language, you can say whatever you want without needing someone to translate for you. But when you need to communicate with someone whose language you do not know (and who does not know your language), you need a translator.&hellip;","protected":false},"author":112,"featured_media":29248,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[50470],"tags":[],"class_list":{"0":"post-29247","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-tech-guides"},"acf":{"post_sub_title":"","sprint_id":"","query_class":"{term} vs {term}","school_sft":"","parent_sft":"","school_privacy_policy":"","has_review":null,"is_sponser_post":"","is_guest_post":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.4 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Interpreter vs Compiler<\/title>\n<meta name=\"description\" content=\"An interpreter runs your code line by line. A compiler reads the entire program and then executes it all at once. Both are ways of translating a high-level programming language into machine-readable code.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Compiler vs Interpreter: Compared and Contrasted\" \/>\n<meta property=\"og:description\" content=\"An interpreter runs your code line by line. A compiler reads the entire program and then executes it all at once. Both are ways of translating a high-level programming language into machine-readable code.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/\" \/>\n<meta property=\"og:site_name\" content=\"Career Karma\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/facebook.com\/careerkarmaapp\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-15T18:42:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-02-15T18:42:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/02\/binary-code-475664_1280.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1020\" \/>\n\t<meta property=\"og:image:height\" content=\"721\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Karen Schwarze\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@career_karma\" \/>\n<meta name=\"twitter:site\" content=\"@career_karma\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Karen Schwarze\" \/>\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:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/\"},\"author\":{\"name\":\"Karen Schwarze\",\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/#\\\/schema\\\/person\\\/ef4d43031318a0eeb598a44661f304cc\"},\"headline\":\"Compiler vs Interpreter: Compared and Contrasted\",\"datePublished\":\"2021-02-15T18:42:01+00:00\",\"dateModified\":\"2021-02-15T18:42:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/\"},\"wordCount\":1116,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/binary-code-475664_1280.jpg\",\"articleSection\":[\"Tech Guides\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/\",\"url\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/\",\"name\":\"Interpreter vs Compiler\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/binary-code-475664_1280.jpg\",\"datePublished\":\"2021-02-15T18:42:01+00:00\",\"dateModified\":\"2021-02-15T18:42:09+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/#\\\/schema\\\/person\\\/ef4d43031318a0eeb598a44661f304cc\"},\"description\":\"An interpreter runs your code line by line. A compiler reads the entire program and then executes it all at once. Both are ways of translating a high-level programming language into machine-readable code.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/#primaryimage\",\"url\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/binary-code-475664_1280.jpg\",\"contentUrl\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/02\\\/binary-code-475664_1280.jpg\",\"width\":1020,\"height\":721},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/interpreter-vs-complier\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Coding\",\"item\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/code\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Compiler vs Interpreter: Compared and Contrasted\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/\",\"name\":\"Career Karma\",\"description\":\"Latest Coding Bootcamp News &amp; Career Hacks from Industry Insiders\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/#\\\/schema\\\/person\\\/ef4d43031318a0eeb598a44661f304cc\",\"name\":\"Karen Schwarze\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/Karen_Schwarze-150x150.jpg\",\"url\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/Karen_Schwarze-150x150.jpg\",\"contentUrl\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/Karen_Schwarze-150x150.jpg\",\"caption\":\"Karen Schwarze\"},\"description\":\"A former educator and edtech marketer, Karen is passionate about computer science education. She\u2019s particularly fascinated by the connections between coding languages and English language\\\/literature structures. This led her to build an edtech app where users create Python programs by manipulating literary devices like similes and metaphors. When she\u2019s not writing, Karen enjoys watching comedy and reading books about history.\",\"url\":\"https:\\\/\\\/careerkarma.com\\\/blog\\\/author\\\/karen-schwarze\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Interpreter vs Compiler","description":"An interpreter runs your code line by line. A compiler reads the entire program and then executes it all at once. Both are ways of translating a high-level programming language into machine-readable code.","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:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/","og_locale":"en_US","og_type":"article","og_title":"Compiler vs Interpreter: Compared and Contrasted","og_description":"An interpreter runs your code line by line. A compiler reads the entire program and then executes it all at once. Both are ways of translating a high-level programming language into machine-readable code.","og_url":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/","og_site_name":"Career Karma","article_publisher":"http:\/\/facebook.com\/careerkarmaapp","article_published_time":"2021-02-15T18:42:01+00:00","article_modified_time":"2021-02-15T18:42:09+00:00","og_image":[{"width":1020,"height":721,"url":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/02\/binary-code-475664_1280.jpg","type":"image\/jpeg"}],"author":"Karen Schwarze","twitter_card":"summary_large_image","twitter_creator":"@career_karma","twitter_site":"@career_karma","twitter_misc":{"Written by":"Karen Schwarze","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/#article","isPartOf":{"@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/"},"author":{"name":"Karen Schwarze","@id":"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/ef4d43031318a0eeb598a44661f304cc"},"headline":"Compiler vs Interpreter: Compared and Contrasted","datePublished":"2021-02-15T18:42:01+00:00","dateModified":"2021-02-15T18:42:09+00:00","mainEntityOfPage":{"@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/"},"wordCount":1116,"commentCount":0,"image":{"@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/#primaryimage"},"thumbnailUrl":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/02\/binary-code-475664_1280.jpg","articleSection":["Tech Guides"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/","url":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/","name":"Interpreter vs Compiler","isPartOf":{"@id":"https:\/\/careerkarma.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/#primaryimage"},"image":{"@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/#primaryimage"},"thumbnailUrl":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/02\/binary-code-475664_1280.jpg","datePublished":"2021-02-15T18:42:01+00:00","dateModified":"2021-02-15T18:42:09+00:00","author":{"@id":"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/ef4d43031318a0eeb598a44661f304cc"},"description":"An interpreter runs your code line by line. A compiler reads the entire program and then executes it all at once. Both are ways of translating a high-level programming language into machine-readable code.","breadcrumb":{"@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/#primaryimage","url":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/02\/binary-code-475664_1280.jpg","contentUrl":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/02\/binary-code-475664_1280.jpg","width":1020,"height":721},{"@type":"BreadcrumbList","@id":"https:\/\/careerkarma.com\/blog\/interpreter-vs-complier\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog","item":"https:\/\/careerkarma.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Coding","item":"https:\/\/careerkarma.com\/blog\/code\/"},{"@type":"ListItem","position":3,"name":"Compiler vs Interpreter: Compared and Contrasted"}]},{"@type":"WebSite","@id":"https:\/\/careerkarma.com\/blog\/#website","url":"https:\/\/careerkarma.com\/blog\/","name":"Career Karma","description":"Latest Coding Bootcamp News &amp; Career Hacks from Industry Insiders","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/careerkarma.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/careerkarma.com\/blog\/#\/schema\/person\/ef4d43031318a0eeb598a44661f304cc","name":"Karen Schwarze","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/01\/Karen_Schwarze-150x150.jpg","url":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/01\/Karen_Schwarze-150x150.jpg","contentUrl":"https:\/\/careerkarma.com\/blog\/wp-content\/uploads\/2021\/01\/Karen_Schwarze-150x150.jpg","caption":"Karen Schwarze"},"description":"A former educator and edtech marketer, Karen is passionate about computer science education. She\u2019s particularly fascinated by the connections between coding languages and English language\/literature structures. This led her to build an edtech app where users create Python programs by manipulating literary devices like similes and metaphors. When she\u2019s not writing, Karen enjoys watching comedy and reading books about history.","url":"https:\/\/careerkarma.com\/blog\/author\/karen-schwarze\/"}]}},"_links":{"self":[{"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/posts\/29247","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/users\/112"}],"replies":[{"embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/comments?post=29247"}],"version-history":[{"count":0,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/posts\/29247\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/media\/29248"}],"wp:attachment":[{"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/media?parent=29247"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/categories?post=29247"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/careerkarma.com\/blog\/wp-json\/wp\/v2\/tags?post=29247"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}