{"id":3833,"date":"2025-08-18T09:18:34","date_gmt":"2025-08-18T09:18:34","guid":{"rendered":"https:\/\/learnbydoing.dev\/?page_id=3833"},"modified":"2026-01-11T09:29:34","modified_gmt":"2026-01-11T09:29:34","slug":"books","status":"publish","type":"page","link":"https:\/\/learnbydoing.dev\/books\/","title":{"rendered":"Books"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3833\" class=\"elementor elementor-3833\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0de3e53 e-flex e-con-boxed e-con e-parent\" data-id=\"0de3e53\" data-element_type=\"container\" data-e-type=\"container\" id=\"content\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-bc9fde2 e-con-full e-flex e-con e-child\" data-id=\"bc9fde2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8aec203 elementor-widget__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"8aec203\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><b>Learn\u00a0<\/b>Robotics and Robotics programming with Hands-on books!\u00a0<br \/>With our books you easily learn how to program robots using ROS and ROS 2 with theoretical introduction and practical examples.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-3a0538a e-con-full e-flex e-con e-child\" data-id=\"3a0538a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-658fe6f elementor-view-default elementor-widget elementor-widget-icon\" data-id=\"658fe6f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"icon.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon-wrapper\">\n\t\t\t<div class=\"elementor-icon\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"75\" height=\"75\" viewBox=\"0 0 75 75\" fill=\"none\"><path d=\"M74.9999 75H13.1889V73.0002H71.5859L0.460938 1.87521L1.87515 0.460999L73.0001 71.586V13.1889H74.9999V75Z\" fill=\"white\"><\/path><\/svg>\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-609f8a9 e-flex e-con-boxed e-con e-parent\" data-id=\"609f8a9\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-c443c48 e-con-full e-flex e-con e-child\" data-id=\"c443c48\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9b04e49 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"9b04e49\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Learn by Doing! With our Books<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-7b4f4cc e-con-full e-flex e-con e-child\" data-id=\"7b4f4cc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-0a1933a e-grid e-con-full e-con e-child\" data-id=\"0a1933a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-709c303 elementor-widget elementor-widget-image\" data-id=\"709c303\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/orangeava.com\/products\/ultimate-robotics-programming-with-ros-2-and-python?keyword=robotics\" target=\"_blank\">\n\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"243\" height=\"300\" src=\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1-243x300.jpg\" class=\"attachment-medium size-medium wp-image-3885\" alt=\"\" srcset=\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1-243x300.jpg 243w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1-830x1024.jpg 830w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1-768x947.jpg 768w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1-10x12.jpg 10w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1.jpg 1000w\" sizes=\"(max-width: 243px) 100vw, 243px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9d614b4 e-con-full e-flex e-con e-child\" data-id=\"9d614b4\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f9e62c9 elementor-widget elementor-widget-text-editor\" data-id=\"f9e62c9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Ultimate Robotics Programming with ROS 2 and Python<\/h2><p>Released in December 2024, this book teaches robotics with <strong>ROS 2<\/strong> using Python. It blends theory with hands-on examples across mobile, aerial, and industrial robots\u2014covering Modern Gazebo simulation, Nav 2 navigation stack, MoveIt 2 for manipulation, computer vision, behavior trees, LLMs, deep reinforcement learning, and more.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-07bfcd7 e-con-full e-flex e-con e-child\" data-id=\"07bfcd7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-84fd09a elementor-align-left elementor-widget elementor-widget-button\" data-id=\"84fd09a\" data-element_type=\"widget\" data-e-type=\"widget\" data-track-label=\"\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/orangeava.com\/products\/ultimate-robotics-programming-with-ros-2-and-python?keyword=robotics\" target=\"_blank\" id=\"buy-now-ultimate-ros2\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Buy now<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f4ccf0f elementor-widget elementor-widget-button\" data-id=\"f4ccf0f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/github.com\/ava-orange-education\/Ultimate-Robotics-Programming-with-ROS2-and-Python\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Browse the code<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e5574c9 elementor-widget elementor-widget-image\" data-id=\"e5574c9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.packtpub.com\/en-us\/product\/mastering-ros-2-for-robotics-programming-9781836209010\" target=\"_blank\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"243\" height=\"300\" src=\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS2-1-243x300.jpg\" class=\"attachment-medium size-medium wp-image-3887\" alt=\"\" srcset=\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS2-1-243x300.jpg 243w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS2-1-830x1024.jpg 830w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS2-1-768x947.jpg 768w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS2-1-10x12.jpg 10w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS2-1.jpg 1216w\" sizes=\"(max-width: 243px) 100vw, 243px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0fa11f7 e-con-full e-flex e-con e-child\" data-id=\"0fa11f7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-81cdbda elementor-widget elementor-widget-text-editor\" data-id=\"81cdbda\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Mastering ROS 2 for Robotics Programming<\/h2><p>This book, published in the early 2025, is a practical, project-driven guide to<strong>\u00a0ROS 2 <\/strong>based on the <strong>Jazzy<\/strong> LTS version. It balances clear explanations of nodes, topics, actions, and middleware with hands-on work in simulation, manipulation, and modern add-ons like RL and GenAI integrations, making it a solid pick for building real robot apps end-to-end.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-90b13d4 e-con-full e-flex e-con e-child\" data-id=\"90b13d4\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3c9161b elementor-align-left elementor-widget elementor-widget-button\" data-id=\"3c9161b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/www.packtpub.com\/en-us\/product\/mastering-ros-2-for-robotics-programming-9781836209010\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Buy now<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8788085 elementor-widget elementor-widget-button\" data-id=\"8788085\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/github.com\/PacktPublishing\/Mastering-ROS-2-for-Robotics-Programming\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Browse the code<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dd91c78 elementor-widget elementor-widget-image\" data-id=\"dd91c78\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"https:\/\/www.packtpub.com\/en-cz\/product\/mastering-ros-for-robotics-programming-9781801071024?srsltid=AfmBOorEt7JhMz53HSTZmjwCTWCzgGTlpZr4QtVFMAOoyII2WcVqYxx9\" target=\"_blank\">\n\t\t\t\t\t\t\t<img decoding=\"async\" width=\"243\" height=\"300\" src=\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS1-1-243x300.jpg\" class=\"attachment-medium size-medium wp-image-3886\" alt=\"\" srcset=\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS1-1-243x300.jpg 243w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS1-1-830x1024.jpg 830w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS1-1-768x947.jpg 768w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS1-1-10x12.jpg 10w, https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/mastering_ROS1-1.jpg 1216w\" sizes=\"(max-width: 243px) 100vw, 243px\" \/>\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f67677a e-con-full e-flex e-con e-child\" data-id=\"f67677a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-71e8b52 elementor-widget elementor-widget-text-editor\" data-id=\"71e8b52\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<h2>Mastering ROS for Robotics Programming (Third Edition)<\/h2><p>This book is a practical guide to <strong>ROS Noetic<\/strong>.<br \/>It covers core concepts, simulation, navigation, and manipulation, blending theory with hands-on projects. A concise and reliable resource for anyone developing<br \/>modern robotic applications with ROS.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ca3a722 e-con-full e-flex e-con e-child\" data-id=\"ca3a722\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b1d8932 elementor-align-left elementor-widget elementor-widget-button\" data-id=\"b1d8932\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/www.packtpub.com\/en-cz\/product\/mastering-ros-for-robotics-programming-9781801071024?srsltid=AfmBOorEt7JhMz53HSTZmjwCTWCzgGTlpZr4QtVFMAOoyII2WcVqYxx9\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Buy now<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-164c428 elementor-widget elementor-widget-button\" data-id=\"164c428\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/github.com\/PacktPublishing\/Mastering-ROS-for-Robotics-Programming-Third-edition\" target=\"_blank\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Browse the code<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-fcccb11 e-con-full e-flex e-con e-child\" data-id=\"fcccb11\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bc9ea35 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"bc9ea35\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Are you a Visual Learner? Join our Courses.\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4912fc6 elementor-widget elementor-widget-loop-carousel\" data-id=\"4912fc6\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;template_id&quot;:&quot;187&quot;,&quot;image_spacing_custom&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:32,&quot;sizes&quot;:[]},&quot;autoplay_speed&quot;:2000,&quot;_skin&quot;:&quot;post&quot;,&quot;slides_to_show&quot;:&quot;3&quot;,&quot;slides_to_show_tablet&quot;:&quot;2&quot;,&quot;slides_to_show_mobile&quot;:&quot;1&quot;,&quot;slides_to_scroll&quot;:&quot;1&quot;,&quot;edit_handle_selector&quot;:&quot;.elementor-loop-container&quot;,&quot;autoplay&quot;:&quot;yes&quot;,&quot;pause_on_hover&quot;:&quot;yes&quot;,&quot;pause_on_interaction&quot;:&quot;yes&quot;,&quot;infinite&quot;:&quot;yes&quot;,&quot;speed&quot;:500,&quot;offset_sides&quot;:&quot;none&quot;,&quot;image_spacing_custom_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;image_spacing_custom_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"loop-carousel.post\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"swiper elementor-loop-container elementor-grid\" role=\"list\" dir=\"ltr\">\n\t\t\t\t<div class=\"swiper-wrapper\" aria-live=\"off\">\n\t\t<style id=\"loop-dynamic-187\">.e-loop-item-4955 .elementor-element.elementor-element-d02c876:not(.elementor-motion-effects-element-type-background), .e-loop-item-4955 .elementor-element.elementor-element-d02c876 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/11\/computer_science_cover.webp\");}<\/style><style id=\"loop-187\">.elementor-187 .elementor-element.elementor-element-ed588a0{--display:flex;--min-height:300px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--border-radius:0px 50px 50px 0px;}.elementor-187 .elementor-element.elementor-element-d02c876{--display:flex;--min-height:300px;--justify-content:flex-end;--overlay-opacity:0.81;border-style:none;--border-style:none;--border-radius:0px 50px 50px 0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-187 .elementor-element.elementor-element-d02c876:not(.elementor-motion-effects-element-type-background), .elementor-187 .elementor-element.elementor-element-d02c876 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-187 .elementor-element.elementor-element-d02c876::before, .elementor-187 .elementor-element.elementor-element-d02c876 > .elementor-background-video-container::before, .elementor-187 .elementor-element.elementor-element-d02c876 > .e-con-inner > .elementor-background-video-container::before, .elementor-187 .elementor-element.elementor-element-d02c876 > .elementor-background-slideshow::before, .elementor-187 .elementor-element.elementor-element-d02c876 > .e-con-inner > .elementor-background-slideshow::before, .elementor-187 .elementor-element.elementor-element-d02c876 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-187 .elementor-element.elementor-element-d02c876:hover::before, .elementor-187 .elementor-element.elementor-element-d02c876:hover > .elementor-background-video-container::before, .elementor-187 .elementor-element.elementor-element-d02c876:hover > .e-con-inner > .elementor-background-video-container::before, .elementor-187 .elementor-element.elementor-element-d02c876 > .elementor-background-slideshow:hover::before, .elementor-187 .elementor-element.elementor-element-d02c876 > .e-con-inner > .elementor-background-slideshow:hover::before{--background-overlay:'';}.elementor-187 .elementor-element.elementor-element-d02c876:hover{--overlay-opacity:1;}.elementor-widget-theme-post-title .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-187 .elementor-element.elementor-element-d95f81f .elementor-heading-title{font-family:\"ClashDisplay\", Sans-serif;font-size:1.4rem;font-weight:700;line-height:1.2em;color:#FFFFFF;}.elementor-187 .elementor-element.elementor-element-d95f81f > .elementor-widget-container{padding:10px 10px 10px 10px;background-color:var( --e-global-color-primary );}\/* Start custom CSS for container, class: .elementor-element-d02c876 *\/.elementor-187 .elementor-element.elementor-element-d02c876 {\n    background: linear-gradient(90deg, #446DF6 0%, #284090 100%);\n}\/* End custom CSS *\/<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"187\" class=\"elementor elementor-187 swiper-slide e-loop-item e-loop-item-4955 post-4955 post type-post status-publish format-standard has-post-thumbnail hentry category-courses tag-3d-print tag-alexa tag-c tag-container tag-control tag-docker tag-docker-compose tag-docker-hub tag-git tag-image tag-kinematics tag-linux tag-manipulation tag-manipulators tag-moveit tag-python tag-robot tag-robotics tag-ros tag-ros-2 tag-ros2 tag-ubuntu tag-visual-studio\" data-elementor-post-type=\"elementor_library\" role=\"group\" aria-roledescription=\"slide\" data-custom-edit-handle=\"1\">\n\t\t\t<a class=\"elementor-element elementor-element-ed588a0 e-flex e-con-boxed e-con e-parent\" data-id=\"ed588a0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/learnbydoing.dev\/computer-science-robotics-learn-by-doing-linux-to-ros-2\/\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d02c876 e-con-full contenedor-hover e-flex e-con e-child\" data-id=\"d02c876\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95f81f elementor-widget elementor-widget-theme-post-title elementor-page-title elementor-widget-heading\" data-id=\"d95f81f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"theme-post-title.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Computer Science &amp; Robotics &#8211; Learn by Doing! Linux to ROS 2<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t<style id=\"loop-dynamic-187\">.e-loop-item-1546 .elementor-element.elementor-element-d02c876:not(.elementor-motion-effects-element-type-background), .e-loop-item-1546 .elementor-element.elementor-element-d02c876 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/06\/manipulation-ros2.webp\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"187\" class=\"elementor elementor-187 swiper-slide e-loop-item e-loop-item-1546 post-1546 post type-post status-publish format-standard has-post-thumbnail hentry category-courses tag-3d-print tag-alexa tag-c tag-control tag-kinematics tag-manipulation tag-manipulators tag-moveit tag-python tag-robot tag-robotics tag-ros tag-ros-2 tag-ros2\" data-elementor-post-type=\"elementor_library\" role=\"group\" aria-roledescription=\"slide\" data-custom-edit-handle=\"1\">\n\t\t\t<a class=\"elementor-element elementor-element-ed588a0 e-flex e-con-boxed e-con e-parent\" data-id=\"ed588a0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/learnbydoing.dev\/robotics-and-ros-2-learn-by-doing-manipulators\/\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d02c876 e-con-full contenedor-hover e-flex e-con e-child\" data-id=\"d02c876\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95f81f elementor-widget elementor-widget-theme-post-title elementor-page-title elementor-widget-heading\" data-id=\"d95f81f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"theme-post-title.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Robotics and ROS 2 &#8211; Learn by Doing!<br>Manipulators<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t<style id=\"loop-dynamic-187\">.e-loop-item-1311 .elementor-element.elementor-element-d02c876:not(.elementor-motion-effects-element-type-background), .e-loop-item-1311 .elementor-element.elementor-element-d02c876 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/06\/odometry-control-ros.webp\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"187\" class=\"elementor elementor-187 swiper-slide e-loop-item e-loop-item-1311 post-1311 post type-post status-publish format-standard has-post-thumbnail hentry category-courses tag-autonomous-navigation tag-c tag-control tag-nav2 tag-navigation tag-odometry tag-python tag-robot tag-robotics tag-ros tag-ros-2 tag-ros2 tag-self-driving\" data-elementor-post-type=\"elementor_library\" role=\"group\" aria-roledescription=\"slide\" data-custom-edit-handle=\"1\">\n\t\t\t<a class=\"elementor-element elementor-element-ed588a0 e-flex e-con-boxed e-con e-parent\" data-id=\"ed588a0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/learnbydoing.dev\/self-driving-and-ros-learn-by-doing-odometry-control\/\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d02c876 e-con-full contenedor-hover e-flex e-con e-child\" data-id=\"d02c876\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95f81f elementor-widget elementor-widget-theme-post-title elementor-page-title elementor-widget-heading\" data-id=\"d95f81f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"theme-post-title.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Self Driving and ROS &#8211; Learn by Doing!<br>Odometry &amp; Control<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t<style id=\"loop-dynamic-187\">.e-loop-item-827 .elementor-element.elementor-element-d02c876:not(.elementor-motion-effects-element-type-background), .e-loop-item-827 .elementor-element.elementor-element-d02c876 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/06\/manipulation-ros.webp\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"187\" class=\"elementor elementor-187 swiper-slide e-loop-item e-loop-item-827 post-827 post type-post status-publish format-standard has-post-thumbnail hentry category-courses tag-3d-print tag-alexa tag-c tag-control tag-kinematics tag-manipulation tag-manipulator tag-moveit tag-python tag-robot tag-robotics tag-ros tag-ros-2 tag-ros2\" data-elementor-post-type=\"elementor_library\" role=\"group\" aria-roledescription=\"slide\" data-custom-edit-handle=\"1\">\n\t\t\t<a class=\"elementor-element elementor-element-ed588a0 e-flex e-con-boxed e-con e-parent\" data-id=\"ed588a0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/learnbydoing.dev\/robotics-and-ros-learn-by-doing-manipulators\/\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d02c876 e-con-full contenedor-hover e-flex e-con e-child\" data-id=\"d02c876\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95f81f elementor-widget elementor-widget-theme-post-title elementor-page-title elementor-widget-heading\" data-id=\"d95f81f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"theme-post-title.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Robotics and ROS &#8211; Learn by Doing!<br>Manipulators<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t<style id=\"loop-dynamic-187\">.e-loop-item-824 .elementor-element.elementor-element-d02c876:not(.elementor-motion-effects-element-type-background), .e-loop-item-824 .elementor-element.elementor-element-d02c876 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/06\/odometry_control.webp\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"187\" class=\"elementor elementor-187 swiper-slide e-loop-item e-loop-item-824 post-824 post type-post status-publish format-standard has-post-thumbnail hentry category-courses tag-autonomous-navigation tag-c tag-control tag-nav2 tag-navigation tag-odometry tag-python tag-robot tag-robotics tag-ros tag-ros-2 tag-ros2 tag-self-driving\" data-elementor-post-type=\"elementor_library\" role=\"group\" aria-roledescription=\"slide\" data-custom-edit-handle=\"1\">\n\t\t\t<a class=\"elementor-element elementor-element-ed588a0 e-flex e-con-boxed e-con e-parent\" data-id=\"ed588a0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/learnbydoing.dev\/self-driving-and-ros-2-learn-by-doing-odometry-control\/\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d02c876 e-con-full contenedor-hover e-flex e-con e-child\" data-id=\"d02c876\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95f81f elementor-widget elementor-widget-theme-post-title elementor-page-title elementor-widget-heading\" data-id=\"d95f81f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"theme-post-title.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Self Driving and ROS 2 &#8211; Learn by Doing!<br>Odometry &amp; Control<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t<style id=\"loop-dynamic-187\">.e-loop-item-821 .elementor-element.elementor-element-d02c876:not(.elementor-motion-effects-element-type-background), .e-loop-item-821 .elementor-element.elementor-element-d02c876 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url(\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/06\/plan_navigation.webp\");}<\/style>\t\t<div data-elementor-type=\"loop-item\" data-elementor-id=\"187\" class=\"elementor elementor-187 swiper-slide e-loop-item e-loop-item-821 post-821 post type-post status-publish format-standard has-post-thumbnail hentry category-courses tag-autonomous-navigation tag-behavior-tree tag-c tag-control tag-costmap tag-motion-planning tag-nav2 tag-navigation tag-path-planning tag-python tag-robot tag-robotics tag-ros tag-ros-2 tag-ros2 tag-self-driving\" data-elementor-post-type=\"elementor_library\" role=\"group\" aria-roledescription=\"slide\" data-custom-edit-handle=\"1\">\n\t\t\t<a class=\"elementor-element elementor-element-ed588a0 e-flex e-con-boxed e-con e-parent\" data-id=\"ed588a0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\" href=\"https:\/\/learnbydoing.dev\/self-driving-and-ros-2-learn-by-doing-plan-navigation\/\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-d02c876 e-con-full contenedor-hover e-flex e-con e-child\" data-id=\"d02c876\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d95f81f elementor-widget elementor-widget-theme-post-title elementor-page-title elementor-widget-heading\" data-id=\"d95f81f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"theme-post-title.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Self Driving and ROS 2 &#8211; Learn by Doing!<br>Plan &amp; Navigation<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-445f6be elementor-widget elementor-widget-button\" data-id=\"445f6be\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<div class=\"elementor-button-wrapper\">\n\t\t\t\t\t<a class=\"elementor-button elementor-size-sm\" role=\"button\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Explore courses<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-be3cff6 elementor-widget elementor-widget-html\" data-id=\"be3cff6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>\ndocument.addEventListener('DOMContentLoaded', function() {\n  const carruselProblematico = document.querySelector('.swiper[role=\"list\"]');\n\n  if (carruselProblematico) {\n    carruselProblematico.removeAttribute('role');\n    console.log('Rol \"list\" problem\u00e1tico eliminado del carrusel.');\n  }\n});\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-79019f4a e-flex e-con-boxed e-con e-parent\" data-id=\"79019f4a\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-6caba2b0 e-con-full e-flex e-con e-child\" data-id=\"6caba2b0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-7f7003ec e-con-full e-flex e-con e-child\" data-id=\"7f7003ec\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-6c42008e e-con-full e-flex e-con e-child\" data-id=\"6c42008e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6a466ce6 elementor-widget elementor-widget-heading\" data-id=\"6a466ce6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Questions about the Books?<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-18cf5a5 elementor-widget__width-initial elementor-widget-tablet__width-initial elementor-widget elementor-widget-text-editor\" data-id=\"18cf5a5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Not sure which book fits your interests or how to pair them with our courses?\u00a0<\/p><p>Let us know and we will help you learning a new skill!<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-20b6dcbc e-con-full e-flex e-con e-child\" data-id=\"20b6dcbc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-33322c05 elementor-button-align-center elementor-widget elementor-widget-global elementor-global-306 elementor-widget-form\" data-id=\"33322c05\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;step_next_label&quot;:&quot;Siguiente&quot;,&quot;step_previous_label&quot;:&quot;Anterior&quot;,&quot;button_width&quot;:&quot;100&quot;,&quot;step_type&quot;:&quot;number_text&quot;,&quot;step_icon_shape&quot;:&quot;circle&quot;}\" data-widget_type=\"form.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<form class=\"elementor-form\" method=\"post\" name=\"New Form\" aria-label=\"New Form\">\n\t\t\t<input type=\"hidden\" name=\"post_id\" value=\"3833\"\/>\n\t\t\t<input type=\"hidden\" name=\"form_id\" value=\"33322c05\"\/>\n\t\t\t<input type=\"hidden\" name=\"referer_title\" value=\"Learn by Doing!\" \/>\n\n\t\t\t\n\t\t\t<div class=\"elementor-form-fields-wrapper elementor-labels-\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-text elementor-field-group elementor-column elementor-field-group-name elementor-col-50 elementor-md-100 elementor-field-required\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-name\" class=\"elementor-field-label elementor-screen-only\">\n\t\t\t\t\t\t\t\tName\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<input size=\"1\" type=\"text\" name=\"form_fields[name]\" id=\"form-field-name\" class=\"elementor-field elementor-size-sm  elementor-field-textual\" placeholder=\"Name\" required=\"required\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-text elementor-field-group elementor-column elementor-field-group-field_da82d49 elementor-col-50 elementor-md-100\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-field_da82d49\" class=\"elementor-field-label elementor-screen-only\">\n\t\t\t\t\t\t\t\tPhone\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<input size=\"1\" type=\"text\" name=\"form_fields[field_da82d49]\" id=\"form-field-field_da82d49\" class=\"elementor-field elementor-size-sm  elementor-field-textual\" placeholder=\"Phone\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-email elementor-field-group elementor-column elementor-field-group-email elementor-col-100 elementor-field-required\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-email\" class=\"elementor-field-label elementor-screen-only\">\n\t\t\t\t\t\t\t\tEmail\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t<input size=\"1\" type=\"email\" name=\"form_fields[email]\" id=\"form-field-email\" class=\"elementor-field elementor-size-sm  elementor-field-textual\" placeholder=\"Email\" required=\"required\">\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-textarea elementor-field-group elementor-column elementor-field-group-message elementor-col-100 elementor-field-required\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-message\" class=\"elementor-field-label elementor-screen-only\">\n\t\t\t\t\t\t\t\tMessage\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t<textarea class=\"elementor-field-textual elementor-field  elementor-size-sm\" name=\"form_fields[message]\" id=\"form-field-message\" rows=\"4\" placeholder=\"Message\" required=\"required\"><\/textarea>\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-type-acceptance elementor-field-group elementor-column elementor-field-group-field_66d7d70 elementor-col-100 elementor-field-required\">\n\t\t\t\t\t\t\t\t\t\t\t\t<label for=\"form-field-field_66d7d70\" class=\"elementor-field-label elementor-screen-only\">\n\t\t\t\t\t\t\t\tAccept\t\t\t\t\t\t\t<\/label>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-subgroup\">\n\t\t\t<span class=\"elementor-field-option\">\n\t\t\t\t<input type=\"checkbox\" name=\"form_fields[field_66d7d70]\" id=\"form-field-field_66d7d70\" class=\"elementor-field elementor-size-sm  elementor-acceptance-field\" required=\"required\">\n\t\t\t\t<label for=\"form-field-field_66d7d70\">I have read and accept the privacy policy<\/label>\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t<div class=\"elementor-field-group elementor-column elementor-field-type-submit elementor-col-100 e-form__buttons\">\n\t\t\t\t\t<button class=\"elementor-button elementor-size-sm\" type=\"submit\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Send<\/span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/button>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/form>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8a999eb e-flex e-con-boxed e-con e-parent\" data-id=\"8a999eb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Learn\u00a0Robotics and Robotics programming with Hands-on books!\u00a0With our books you easily learn how to program robots using ROS and ROS 2 with theoretical introduction and practical examples. Learn by Doing! With our Books Ultimate Robotics Programming with ROS 2 and Python Released in December 2024, this book teaches robotics with ROS 2 using Python. It [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-3833","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Books - Learn by Doing!<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/learnbydoing.dev\/es\/books\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Books - Learn by Doing!\" \/>\n<meta property=\"og:description\" content=\"Learn\u00a0Robotics and Robotics programming with Hands-on books!\u00a0With our books you easily learn how to program robots using ROS and ROS 2 with theoretical introduction and practical examples. Learn by Doing! With our Books Ultimate Robotics Programming with ROS 2 and Python Released in December 2024, this book teaches robotics with ROS 2 using Python. It [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/learnbydoing.dev\/es\/books\/\" \/>\n<meta property=\"og:site_name\" content=\"Learn by Doing!\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-11T09:29:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"1233\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/books\\\/\",\"url\":\"https:\\\/\\\/learnbydoing.dev\\\/books\\\/\",\"name\":\"Books - Learn by Doing!\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/books\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/books\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/learnbydoing.dev\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Ultimate_ROS-1-243x300.jpg\",\"datePublished\":\"2025-08-18T09:18:34+00:00\",\"dateModified\":\"2026-01-11T09:29:34+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/books\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/learnbydoing.dev\\\/books\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/books\\\/#primaryimage\",\"url\":\"https:\\\/\\\/learnbydoing.dev\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Ultimate_ROS-1-243x300.jpg\",\"contentUrl\":\"https:\\\/\\\/learnbydoing.dev\\\/wp-content\\\/uploads\\\/2025\\\/08\\\/Ultimate_ROS-1-243x300.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/books\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/learn-by-doing-es\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Books\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/\",\"name\":\"Learn by Doing!\",\"description\":\"Learn Robotics the fun way\",\"publisher\":{\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/#organization\",\"name\":\"Learn by Doing!\",\"url\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/learnbydoing.dev\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-cropped-cropped-Progetto-senza-titolo-6-1.png\",\"contentUrl\":\"https:\\\/\\\/learnbydoing.dev\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-cropped-cropped-Progetto-senza-titolo-6-1.png\",\"width\":512,\"height\":512,\"caption\":\"Learn by Doing!\"},\"image\":{\"@id\":\"https:\\\/\\\/learnbydoing.dev\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/antonio-brandi-512166bb\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Books - Learn by Doing!","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:\/\/learnbydoing.dev\/es\/books\/","og_locale":"es_ES","og_type":"article","og_title":"Books - Learn by Doing!","og_description":"Learn\u00a0Robotics and Robotics programming with Hands-on books!\u00a0With our books you easily learn how to program robots using ROS and ROS 2 with theoretical introduction and practical examples. Learn by Doing! With our Books Ultimate Robotics Programming with ROS 2 and Python Released in December 2024, this book teaches robotics with ROS 2 using Python. It [&hellip;]","og_url":"https:\/\/learnbydoing.dev\/es\/books\/","og_site_name":"Learn by Doing!","article_modified_time":"2026-01-11T09:29:34+00:00","og_image":[{"width":1000,"height":1233,"url":"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/learnbydoing.dev\/books\/","url":"https:\/\/learnbydoing.dev\/books\/","name":"Books - Learn by Doing!","isPartOf":{"@id":"https:\/\/learnbydoing.dev\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/learnbydoing.dev\/books\/#primaryimage"},"image":{"@id":"https:\/\/learnbydoing.dev\/books\/#primaryimage"},"thumbnailUrl":"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1-243x300.jpg","datePublished":"2025-08-18T09:18:34+00:00","dateModified":"2026-01-11T09:29:34+00:00","breadcrumb":{"@id":"https:\/\/learnbydoing.dev\/books\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/learnbydoing.dev\/books\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/learnbydoing.dev\/books\/#primaryimage","url":"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1-243x300.jpg","contentUrl":"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/08\/Ultimate_ROS-1-243x300.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/learnbydoing.dev\/books\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/learnbydoing.dev\/es\/learn-by-doing-es\/"},{"@type":"ListItem","position":2,"name":"Books"}]},{"@type":"WebSite","@id":"https:\/\/learnbydoing.dev\/es\/#website","url":"https:\/\/learnbydoing.dev\/es\/","name":"Learn by Doing!","description":"Learn Robotics the fun way","publisher":{"@id":"https:\/\/learnbydoing.dev\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/learnbydoing.dev\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/learnbydoing.dev\/es\/#organization","name":"Learn by Doing!","url":"https:\/\/learnbydoing.dev\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/learnbydoing.dev\/es\/#\/schema\/logo\/image\/","url":"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/06\/cropped-cropped-cropped-Progetto-senza-titolo-6-1.png","contentUrl":"https:\/\/learnbydoing.dev\/wp-content\/uploads\/2025\/06\/cropped-cropped-cropped-Progetto-senza-titolo-6-1.png","width":512,"height":512,"caption":"Learn by Doing!"},"image":{"@id":"https:\/\/learnbydoing.dev\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.linkedin.com\/in\/antonio-brandi-512166bb\/"]}]}},"_links":{"self":[{"href":"https:\/\/learnbydoing.dev\/es\/wp-json\/wp\/v2\/pages\/3833","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/learnbydoing.dev\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/learnbydoing.dev\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/learnbydoing.dev\/es\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/learnbydoing.dev\/es\/wp-json\/wp\/v2\/comments?post=3833"}],"version-history":[{"count":67,"href":"https:\/\/learnbydoing.dev\/es\/wp-json\/wp\/v2\/pages\/3833\/revisions"}],"predecessor-version":[{"id":5684,"href":"https:\/\/learnbydoing.dev\/es\/wp-json\/wp\/v2\/pages\/3833\/revisions\/5684"}],"wp:attachment":[{"href":"https:\/\/learnbydoing.dev\/es\/wp-json\/wp\/v2\/media?parent=3833"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}