{"id":20792,"date":"2023-11-22T05:13:59","date_gmt":"2023-11-22T03:13:59","guid":{"rendered":"https:\/\/raspberrytips.com\/?p=20792"},"modified":"2025-07-07T21:25:44","modified_gmt":"2025-07-07T19:25:44","slug":"best-languages-raspberry-pi","status":"publish","type":"post","link":"https:\/\/raspberrytips.com\/best-languages-raspberry-pi\/","title":{"rendered":"5 Best Programming Languages for Your Raspberry Pi Projects"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">While the Raspberry Pi is often associated with the same programming language (Python), it doesn&#8217;t mean it&#8217;s the only option. Depending on your project, skills and needs, you might want to consider other options. Let&#8217;s discuss the best programming languages you can try for your next project.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Overall, Python is still the best programming language for most projects, as it is ready to use on the Raspberry Pi. But languages like C, Scratch, Node.js, or even shell scripts are worth considering.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let me introduce each of these programming languages in more detail so you can make an informed decision on the best option for you. Remember, there is no absolute best programming language, it all depends on the context.<\/p>\n\n\n<p class='ml_begpost' id='ml_begpost_python'>If you\u2019re like me and sometimes mix up syntax between programming languages, I\u2019ve got just the thing for you. I\u2019ve put together <a rel='noopener' href='https:\/\/raspberrytips.com\/downloads\/?source=begpost&#038;lm=3' target='_blank'>a Python cheat sheet<\/a> with all the essential syntax in one place, so you can keep it handy and avoid any confusion. <a rel='noopener' href='https:\/\/raspberrytips.com\/downloads\/?source=begpost&#038;lm=3' target='_blank'><b>Download it here for free!<\/b><\/a><\/p>\n\n\n<h2 class=\"wp-block-heading\">Python<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Python is the first programming language that comes to mind when talking about the Raspberry Pi. It&#8217;s pre-installed on Raspberry Pi OS and has perfect support with all of the ecosystem&#8217;s hardware (GPIO, camera, HATs, etc.).<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Python is also a great choice for beginners because it&#8217;s close to natural language, is easy to read, and not too complicated to write. The syntax is not as strict as other languages, which makes it easier to progress without getting dozens of compilation errors in every 2 lines of code :-).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"614\" height=\"232\" src=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2023\/04\/thonny-regular.jpg\" alt=\"\" class=\"wp-image-16967\" srcset=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2023\/04\/thonny-regular.jpg 614w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2023\/04\/thonny-regular-300x113.jpg 300w\" sizes=\"auto, (max-width: 614px) 100vw, 614px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Like many other languages, <strong>Python works with libraries, which means you can add functions to handle different things depending on your project goal<\/strong>. There are libraries for everything (cameras, <a href=\"https:\/\/raspberrytips.com\/best-raspberry-pi-hats\/\" data-type=\"post\" data-id=\"1489\">HATs<\/a>, <a href=\"https:\/\/raspberrytips.com\/best-raspberry-pi-robots-kits\/\" data-type=\"post\" data-id=\"4797\">robot kits<\/a>, online services, etc.), allowing for a wide range of projects.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Python is one of the top 3 most widely used programming languages<\/strong> (<a href=\"https:\/\/www.statista.com\/statistics\/793628\/worldwide-developer-survey-most-used-languages\/\" data-type=\"link\" data-id=\"https:\/\/www.statista.com\/statistics\/793628\/worldwide-developer-survey-most-used-languages\/\">Statista<\/a>), so finding additional libraries and online support is pretty easy. Big companies use it for various projects (way further than the Raspberry Pi sphere), which makes it a great choice, not only for your Raspberry Pi projects but for everything (including your career).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But it&#8217;s also great for Raspberry Pi, as the Raspberry Pi Foundation has many project tutorials with it on its website, and most manufacturers include examples and libraries for using it (which is not the case with all languages).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"553\" src=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2022\/04\/crowpi-python-book.jpg\" alt=\"\" class=\"wp-image-11197\" srcset=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2022\/04\/crowpi-python-book.jpg 500w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2022\/04\/crowpi-python-book-271x300.jpg 271w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><figcaption class=\"wp-element-caption\">For example, the <a href=\"https:\/\/raspberrytips.com\/crowpi2-review\/\" data-type=\"post\" data-id=\"11205\">CrowPi user guide<\/a> includes Python tutorials for all its sensors.<\/figcaption><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Here is a summary of the pros and cons you have to keep in mind about Python before checking my next suggestion:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Pros<\/th><th>Cons<\/th><\/tr><\/thead><tbody><tr><td>Easy to learn with a readable syntax.<\/td><td>May have slower execution compared to C\/C++.<\/td><\/tr><tr><td>A rich ecosystem of libraries <br>(e.g., RPi.GPIO, <a href=\"https:\/\/raspberrytips.com\/gpio-zero-guide-raspberry-pi\/\">GPIO Zero<\/a>).<\/td><td>Not ideal for real-time applications.<\/td><\/tr><tr><td>Strong community support.<\/td><td><\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Python pros &amp; cons<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">As Python is one key element of any Raspberry Pi system, you&#8217;ll find many tutorials on this website, here are a few of the ones I recommend to get you started (or get better):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/raspberrytips.com\/python-tutorial-raspberry-pi\/\" data-type=\"post\" data-id=\"901\">How to Learn to Program in Python with a Raspberry Pi?<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/raspberrytips.com\/python-games-raspberry-pi\/\" data-type=\"post\" data-id=\"15943\">Getting Started With Python Games On Raspberry Pi (Pygame)<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/raspberrytips.com\/picamera2-raspberry-pi\/\" data-type=\"post\" data-id=\"14912\">How To Use The Raspberry Pi Camera With Python<\/a><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Obviously, if you want to get better quickly with my full step-by-step course, you should definitely download <a rel=\"noreferrer noopener\" href=\"https:\/\/raspberrytips.com\/school\/master-python\/?coupon=IP21PY\" data-type=\"link\" data-id=\"https:\/\/raspberrytips.com\/school\/master-python\/?coupon=IP21PY\" target=\"_blank\">my e-book about Python on Raspberry Pi<\/a>. You&#8217;ll learn a lot (and only the useful stuff!).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Scratch<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Scratch is a visual programming language, available easily on Raspberry Pi, and great for teaching the logic of the code to kids or other beginners. It removes the syntax by using pre-written blocks you can drag and drop in an execution sequence.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;ve never heard of <a href=\"https:\/\/raspberrytips.com\/scratch-raspberry-pi\/\" data-type=\"link\" data-id=\"https:\/\/raspberrytips.com\/scratch-raspberry-pi\/\">Scratch<\/a>, here is what it looks like:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"525\" src=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2021\/04\/scratch.jpg\" alt=\"\" class=\"wp-image-7429\" srcset=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2021\/04\/scratch.jpg 800w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2021\/04\/scratch-300x197.jpg 300w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2021\/04\/scratch-768x504.jpg 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You have a list of elements available in the left menu (actions, movements, sounds, conditions, etc.) and can include them in your script in the middle. When you run your script, the character on the right will execute the actions in the same order.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The first obstacle I have noticed when <a href=\"https:\/\/raspberrytips.com\/start-coding-raspberry-pi\/\">teaching programming to beginners<\/a> is getting them to understand the logic. It&#8217;s pretty abstract to talk about conditions and loops to someone who has never written a line of code.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And when you add strict syntax to the mix, it&#8217;s the fastest way to get a beginner to give up on their dream of learning to code. Scratch removes this barrier, so we can focus on the logic, before eventually moving to a more traditional programming language.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"141\" height=\"103\" src=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2018\/08\/scratch-instructions.png\" alt=\"scratch programming\" class=\"wp-image-410\" style=\"aspect-ratio:1.3689320388349515;width:200px\" srcset=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2018\/08\/scratch-instructions.png 141w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2018\/08\/scratch-instructions-100x73.png 100w\" sizes=\"auto, (max-width: 141px) 100vw, 141px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><strong>Scratch is great to get started with programming<\/strong>, but will quickly reach its capabilities. Even if many projects are available on the Raspberry Pi Foundation website, they are more educational. You&#8217;ll need to move to something else for concrete projects. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Scratch is pre-installed on the full version of Raspberry Pi OS, and can be installed easily on other versions, via the &#8220;Recommend Software&#8221; tool or via the <a href=\"https:\/\/raspberrytips.com\/install-apps-raspberry-pi\/\" data-type=\"post\" data-id=\"6238\">package manager<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Pros<\/th><th>Cons<\/th><\/tr><\/thead><tbody><tr><td>Intuitive visual programming interface.<\/td><td>Limited in terms of performance and capabilities.<\/td><\/tr><tr><td>Great for teaching programming concepts to beginners (especially for children).<\/td><td>Not suitable for complex or performance-critical projects.<\/td><\/tr><tr><td>Community support with educational resources.<\/td><td>Less powerful and flexible compared to text-based languages.<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Scratch pros &amp; cons<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">I don&#8217;t have resources about Scratch on this website (I should probably think about it!), but you&#8217;ll find tons of projects with step-by-step instructions on the website of <a rel=\"noreferrer noopener\" href=\"https:\/\/projects.raspberrypi.org\/en\/projects?software%5B%5D=scratch\" data-type=\"link\" data-id=\"https:\/\/projects.raspberrypi.org\/en\/projects?software%5B%5D=scratch\" target=\"_blank\">the Raspberry Pi Foundation<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">C\/C++<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C and C++ are not necessarily the first languages that come to mind when programming on Raspberry Pi, but they should be on the list as nothing compares in terms of performance, which is essential for some projects.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">While C\/C++ is a more complicated language for most people, with compilation that can take forever on large projects to fix all the tiny bugs and syntax issues in your code, it can still be a better option for some projects.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Think of projects like robots, <a href=\"https:\/\/raspberrytips.com\/raspberry-pi-drone\/\" data-type=\"link\" data-id=\"https:\/\/raspberrytips.com\/raspberry-pi-drone\/\">drones<\/a>, or even systems and networking applications where timing and responsiveness are key. Because C\/C++ runs at a lower level, you interact directly with the hardware, unlike high-level languages like Python.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"901\" height=\"531\" src=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2021\/05\/c-screen.jpg\" alt=\"\" class=\"wp-image-7846\" srcset=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2021\/05\/c-screen.jpg 901w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2021\/05\/c-screen-300x177.jpg 300w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2021\/05\/c-screen-768x453.jpg 768w\" sizes=\"auto, (max-width: 901px) 100vw, 901px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">For most projects, this shouldn&#8217;t matter too much, but for real-time applications, it&#8217;s something to consider. There are also libraries available for the Raspberry Pi that allow you to work with most sensors and HATs in C\/C++.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Finally, I know that many of you have a background in C\/C++ due to your career, so there is no reason to force you to learn a new language just because all the tutorials seem to use Python. Python is easier for beginners and fine for most projects, but if you are more comfortable with C++, go for it!<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Pros<\/th><th>Cons<\/th><\/tr><\/thead><tbody><tr><td>Ideal for performance-critical and embedded systems projects.<\/td><td>Steeper learning curve compared to Python or Scratch.<\/td><\/tr><tr><td>Libraries like WiringPi and pigpio for hardware interaction.<\/td><td>Debugging can be more challenging.<\/td><\/tr><tr><td>Wide range of applications beyond Raspberry Pi.<\/td><td>Less forgiving with syntax and runtime errors.<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">C\/C++ pros &amp; cons<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#8217;s an <a href=\"https:\/\/raspberrytips.com\/use-c-on-raspberry-pi\/\" data-type=\"post\" data-id=\"8855\">introduction to C\/C++ on Raspberry Pi<\/a> to get you started.<br>We also have a guide on how to <a href=\"https:\/\/raspberrytips.com\/control-gpio-with-c-on-raspberry-pi\/\" data-type=\"link\" data-id=\"https:\/\/raspberrytips.com\/control-gpio-with-c-on-raspberry-pi\/\">Control GPIO with C++ on Raspberry Pi<\/a>.  <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">By the way, I have <a rel=\"noopener\" aria-label=\"the DaVinci Kit from Sunfounder (opens in a new tab)\" data-lasso-id=\"2440\" href=\"https:\/\/raspberrytips.com\/davinci\" target=\"_blank\">the DaVinci Kit from Sunfounder<\/a>, which includes a bunch of components to use with the GPIO pins (LED, wires, fun sensors, motors and buttons). There is a complete tutorial on how to use each component, and in each lesson, they explain how to do it in Python and C. If you want to strengthen your skills in C and Raspberry Pi, that might be a good fit.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Bash\/Shell<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I see you, squinting at the view of scripting languages in this list of &#8220;best programming languages&#8221;. But you know what? It might be the best option for you at this point. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Shell or Bash can be used to script simple tasks and automate system operations on a Raspberry Pi. While they are not technically considered programming languages, they can sometimes accomplish the same goal more quickly.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you are confident with the command lines and can do something manually via the Raspberry Pi terminal, you can probably write a short script to do the same, and even <a href=\"https:\/\/raspberrytips.com\/schedule-task-raspberry-pi\/\" data-type=\"post\" data-id=\"68\">schedule it to run automatically<\/a> at certain times.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"845\" height=\"442\" src=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2023\/10\/while-shell.jpg\" alt=\"\" class=\"wp-image-20850\" srcset=\"https:\/\/raspberrytips.com\/wp-content\/uploads\/2023\/10\/while-shell.jpg 845w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2023\/10\/while-shell-300x157.jpg 300w, https:\/\/raspberrytips.com\/wp-content\/uploads\/2023\/10\/while-shell-768x402.jpg 768w\" sizes=\"auto, (max-width: 845px) 100vw, 845px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">While a shell script will never be as suitable as Python or C for large projects, it includes simple instructions like conditions, loops or even functions that you can use for simpler tasks. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I wouldn&#8217;t recommend it if you have more than, say, 30 lines of code to write to achieve something, as error handling can be cumbersome. But for simple tasks (<a href=\"https:\/\/raspberrytips.com\/backup-raspberry-pi\/\" data-type=\"post\" data-id=\"716\">backups<\/a>, system management and even home automation), I love using it.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Pros<\/th><th>Cons<\/th><\/tr><\/thead><tbody><tr><td>Ideal for automation and scripting tasks.<\/td><td>Not suitable for complex or large-scale software development.<\/td><\/tr><tr><td>No additional setup is required for Raspberry Pi<\/td><td>Limited standard library support compared to <a href=\"https:\/\/raspberrytips.com\/c-vs-python-raspberry-pi\/\" data-type=\"link\" data-id=\"https:\/\/raspberrytips.com\/c-vs-python-raspberry-pi\/\">Python or C\/C++<\/a>.<\/td><\/tr><tr><td>No additional setup is required for Raspberry Pi.<\/td><td>Error handling can be tricky.<\/td><\/tr><tr><td>It can be used on any Linux system.<\/td><td><\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Bash\/shell pros &amp; cons<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">I have a few guides on this website that can be beneficial if you want to give it a try:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/raspberrytips.com\/raspberry-pi-commands\/\" data-type=\"post\" data-id=\"748\">You first need to be good with Linux commands<\/a>.<\/li>\n\n\n\n<li>Then you can try to <a href=\"https:\/\/raspberrytips.com\/backup-raspberry-pi\/\" data-type=\"post\" data-id=\"716\">automate your Raspberry Pi backups with it<\/a>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">And I also talk a lot about writing bash scripts in my book, &#8220;<a rel=\"noreferrer noopener\" href=\"https:\/\/raspberrytips.com\/school\/master-linux-commands\/?coupon=IP23LX\" data-type=\"link\" data-id=\"https:\/\/raspberrytips.com\/school\/master-linux-commands\/?coupon=IP23LX\" target=\"_blank\">Master Linux Commands<\/a>&#8220;, which you can download to read the method I followed to learn Linux and teach it to my team and students. In a few days, you&#8217;ll write shell scripts with your eyes closed :-).<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Node.js<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Node.js is clearly not at the top of my mind when I start a new project, but I see many common points with Python, that make it an interesting language to consider.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Node.js is good at handling tasks where the Raspberry Pi needs to exchange information over the network or the internet. Many libraries are available (via npm) and there is a large community for support.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s clearly not as intuitive as Python or Scratch, and not as performant as C++, but if you already know JavaScript, it might be something to consider.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you&#8217;ve never read any Node.js code, it looks like this:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">const Gpio = require('onoff').Gpio;\n\nconst led = new Gpio(17, 'out');\n\nlet isOn = false;\n\nsetInterval(() =&gt; {\n  led.writeSync(isOn ? 1 : 0);\n  isOn = !isOn;\n}, 1000);<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">It might be harder to find documentation for Raspberry Pi projects than with Python, but the catalog of libraries of Raspberry Pi libraries available is still impressive.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Pros<\/th><th>Cons<\/th><\/tr><\/thead><tbody><tr><td>Great for web development and real-time applications.<\/td><td>Not as performant as C\/C++ for system-level tasks.<\/td><\/tr><tr><td>Libraries available for hardware interactions.<\/td><td>Can be confusing for beginners.<\/td><\/tr><tr><td>Strong community.<\/td><td>Libraries are available for hardware interactions.<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Node.js pros &amp; cons<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">You can read <a href=\"https:\/\/raspberrytips.com\/node-js-raspberry-pi\/\" data-type=\"post\" data-id=\"16862\">this introduction about Node.js on Raspberry Pi<\/a> for a better understanding of this specific language, and how you can use it in your Pi projects.<\/p>\n\n\n<section id=\"end-block-pi\">\r\n<div class=\"rt-community-card \">\r\n\t<div class=\"rt-community-card__inner\">\r\n\r\n\t\t<div class=\"rt-community-card__main\">\r\n\t\t\t<h3 class=\"rt-community-card__headline\">\r\n\t\t\t\tNot getting the same result?\t\t\t<\/h3>\r\n\r\n\t\t\t<p class=\"rt-community-card__description\">\r\n\t\t\t\tEven when you follow every step, small differences in OS version, hardware or config can change the outcome. Instead of wasting time guessing, get help from people who have already fixed the same kind of issue.\t\t\t<\/p>\r\n\r\n\t\t\t<div class=\"rt-community-card__actions\">\r\n\t\t\t\t<a class=\"rt-community-card__button\" href=\"https:\/\/raspberrytips.com\/school\/community\/?coupon=EBCTY\">\r\n\t\t\t\t\t<span>Ask your question now<\/span>\r\n\t\t\t\t\t<span class=\"rt-community-card__button-arrow\">\u2192<\/span>\r\n\t\t\t\t<\/a>\r\n\r\n\t\t\t\t\t\t\t\t\t<div class=\"rt-community-card__small\">\r\n\t\t\t\t\t\t<span class=\"rt-community-card__small-lock\">\ud83d\udd12<\/span>\r\n\t\t\t\t\t\tNo risk. Cancel anytime.\t\t\t\t\t<\/div>\r\n\t\t\t\t\t\t\t<\/div>\r\n\t\t<\/div>\r\n\r\n\t\t\t\t\t<div class=\"rt-community-card__side\">\r\n\t\t\t\t<ul class=\"rt-community-card__benefits\">\r\n\t\t\t\t\t\t\t\t\t\t\t<li>Get help on your exact issue<\/li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li>Access step-by-step videos for tricky setups<\/li>\r\n\t\t\t\t\t\t\t\t\t\t\t<li>Browse the website without ads<\/li>\r\n\t\t\t\t\t\t\t\t\t<\/ul>\r\n\t\t\t<\/div>\r\n\t\t\r\n\t<\/div>\r\n<\/div>\r\n<\/section>\r\n\r\n<style>\r\n.rt-community-card {\r\n\t--rt-bg: #f7f7f9;\r\n\t--rt-border: #e4e4e8;\r\n\t--rt-text: #15171b;\r\n\t--rt-muted: #5b6270;\r\n\t--rt-accent: #C61E4A;\r\n\t--rt-accent-hover: #aa183f;\r\n\t--rt-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);\r\n\r\n\tmargin: 36px 0;\r\n\tcolor: var(--rt-text);\r\n\tfont-family: inherit;\r\n}\r\n\r\n.rt-community-card__inner {\r\n\tdisplay: grid;\r\n\tgrid-template-columns: minmax(0, 1.55fr) minmax(260px, 0.95fr);\r\n\tgap: 34px;\r\n\talign-items: start;\r\n\tbackground: var(--rt-bg);\r\n\tborder: 1px solid var(--rt-border);\r\n\tborder-radius: 22px;\r\n\tpadding: 34px 36px;\r\n\tbox-shadow: var(--rt-shadow);\r\n}\r\n\r\n.rt-community-card__main {\r\n\tmin-width: 0;\r\n}\r\n\r\n.rt-community-card__side {\r\n\tborder-left: 1px solid #e1e1e6;\r\n\tpadding-left: 28px;\r\n}\r\n\r\n.rt-community-card__benefits {\r\n\tmargin: 6px 0 0;\r\n\tpadding: 0;\r\n\tlist-style: none;\r\n\tdisplay: grid;\r\n\tgap: 18px;\r\n}\r\n\r\n.rt-community-card__benefits li {\r\n\tposition: relative;\r\n\tpadding-left: 18px;\r\n\tfont-size: 18px;\r\n\tline-height: 1.55;\r\n\tcolor: var(--rt-text);\r\n}\r\n\r\n.rt-community-card__benefits li::before {\r\n\tcontent: \"\";\r\n\tposition: absolute;\r\n\tleft: 0;\r\n\ttop: 0.72em;\r\n\twidth: 7px;\r\n\theight: 7px;\r\n\tborder-radius: 999px;\r\n\tbackground: var(--rt-accent);\r\n\ttransform: translateY(-50%);\r\n}\r\n\r\n.rt-community-card__actions {\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\talign-items: flex-start;\r\n\tgap: 10px;\r\n\tmargin-top: 30px;\r\n}\r\n\r\n.rt-community-card__button {\r\n\tdisplay: inline-flex;\r\n\talign-items: center;\r\n\tjustify-content: center;\r\n\tgap: 10px;\r\n\tmin-height: 60px;\r\n\tpadding: 0 28px;\r\n\tborder-radius: 14px;\r\n\tbackground: var(--rt-accent);\r\n\tcolor: #fff !important;\r\n\ttext-decoration: none !important;\r\n\tfont-size: 21px;\r\n\tfont-weight: 700;\r\n\tline-height: 1;\r\n\tbox-shadow: 0 12px 22px rgba(198, 30, 74, 0.22);\r\n\ttransition: background .2s ease, transform .2s ease, box-shadow .2s ease;\r\n}\r\n\r\n.rt-community-card__button:hover {\r\n\tbackground: var(--rt-accent-hover);\r\n\tcolor: #fff !important;\r\n\ttransform: translateY(-1px);\r\n\tbox-shadow: 0 14px 26px rgba(198, 30, 74, 0.28);\r\n}\r\n\r\n.rt-community-card__button-arrow {\r\n\tfont-size: 20px;\r\n\tline-height: 1;\r\n}\r\n\r\n.rt-community-card__small {\r\n\tfont-size: 15px;\r\n\tline-height: 1.5;\r\n\tcolor: #6a717d;\r\n\tpadding-left: 2px;\r\n}\r\n\r\n.rt-community-card__small-lock {\r\n\tmargin-right: 6px;\r\n\tfont-size: 14px;\r\n\tvertical-align: baseline;\r\n}\r\n\r\n\/* Tablet *\/\r\n@media (max-width: 900px) {\r\n\t.rt-community-card {\r\n\t\tmargin: 28px 0;\r\n\t}\r\n\r\n\t.rt-community-card__inner {\r\n\t\tgrid-template-columns: 1fr;\r\n\t\tgap: 24px;\r\n\t\tpadding: 28px 24px;\r\n\t}\r\n\r\n\t.rt-community-card__side {\r\n\t\tborder-left: 0;\r\n\t\tborder-top: 1px solid #e1e1e6;\r\n\t\tpadding-left: 0;\r\n\t\tpadding-top: 22px;\r\n\t}\r\n\r\n\t.rt-community-card__benefits {\r\n\t\tgrid-template-columns: 1fr;\r\n\t\tgap: 12px;\r\n\t}\r\n}\r\n\r\n\/* Mobile *\/\r\n@media (max-width: 640px) {\r\n\t.rt-community-card__inner {\r\n\t\tpadding: 22px 18px;\r\n\t\tborder-radius: 18px;\r\n\t\tgap: 20px;\r\n\t}\r\n\t\r\n\t.rt-community-card__side {\r\n\t\tpadding-top: 18px;\r\n\t}\r\n\r\n\t.rt-community-card__benefits li {\r\n\t\tfont-size: 16px;\r\n\t}\r\n\r\n\t.rt-community-card__actions {\r\n\t\tmargin-top: 24px;\r\n\t\talign-items: stretch;\r\n\t}\r\n\r\n\t.rt-community-card__button {\r\n\t\twidth: 100%;\r\n\t\tmin-height: 56px;\r\n\t\tfont-size: 18px;\r\n\t\tpadding: 0 20px;\r\n\t}\r\n\r\n\t.rt-community-card__small {\r\n\t\ttext-align: center;\r\n\t\tpadding-left: 0;\r\n\t}\r\n}\r\n<\/style>\r\n\t\r\n","protected":false},"excerpt":{"rendered":"<p>While the Raspberry Pi is often associated with the same programming language (Python), it doesn&#8217;t mean it&#8217;s the only option. Depending on your project, skills and needs, you might want to consider other options. Let&#8217;s discuss the best programming languages you can try for your next project. Overall, Python is still the best programming language&#8230;<\/p>\n","protected":false},"author":1,"featured_media":20801,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[25],"tags":[],"class_list":["post-20792","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programming"],"taxonomy_info":{"category":[{"value":25,"label":"Programming"}]},"featured_image_src_large":["https:\/\/raspberrytips.com\/wp-content\/uploads\/2023\/10\/best-programming-languages-raspberry-pi-1024x683.jpg",1024,683,true],"author_info":{"display_name":"Patrick Fromaget","author_link":"https:\/\/raspberrytips.com\/author\/admin\/"},"comment_info":0,"category_info":[{"term_id":25,"name":"Programming","slug":"programming","term_group":0,"term_taxonomy_id":25,"taxonomy":"category","description":"","parent":0,"count":66,"filter":"raw","cat_ID":25,"category_count":66,"category_description":"","cat_name":"Programming","category_nicename":"programming","category_parent":0}],"tag_info":false,"_links":{"self":[{"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/posts\/20792","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/comments?post=20792"}],"version-history":[{"count":31,"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/posts\/20792\/revisions"}],"predecessor-version":[{"id":41859,"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/posts\/20792\/revisions\/41859"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/media\/20801"}],"wp:attachment":[{"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/media?parent=20792"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/categories?post=20792"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/raspberrytips.com\/wp-json\/wp\/v2\/tags?post=20792"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}