# Programming Guides

### Getting Started

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><strong>Where to Program - Client vs. Browser</strong></td><td><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/where-to-program">Where to Program - Client vs. Browser</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FHU6EnCeVrqNndcRbRVtQ%2FWhere%20to%20Program_GB-Card.png?alt=media&#x26;token=d710a94a-f207-4e10-a31c-f4bdff763456">Where to Program_GB-Card.png</a></td></tr><tr><td><strong>Setting up a Configuration</strong></td><td><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/configuration">Setting up a Configuration</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FknNxqtyEb6Nz0H5VuAk4%2FSetting%20up%20a%20Config_GB-Card.png?alt=media&#x26;token=d783b16a-7151-4e42-a115-d7a0d1ea6975">Setting up a Config_GB-Card.png</a></td></tr><tr><td><strong>Using a Gamepad</strong></td><td><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/using-a-gamepad">Using a Gamepad</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FZibioq4WqzAmmJa537Ex%2FGamepad_GB-Card.png?alt=media&#x26;token=29943ced-ff79-47bb-a85c-9da5ec6eec34">Gamepad_GB-Card.png</a></td></tr></tbody></table>

### Hello Robot - Intro to Blocks Programming

{% hint style="success" %}
[Click here to jump to the beginning of the Hello Robot - Blocks Tutorial](https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/welcome)
{% endhint %}

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><strong>Part 1: Tackling the Basics</strong><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-1/test-bed-blocks">Creating an OpMode</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-1/programming-servos">Programming Servos</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-1/programming-motors">Programming Motors</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-1/programming-touch-sensors">Programming Touch Sensors</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-1/programming-color-sensors">Programming Color Sensors</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FH7IKEZidx5LG4p8maapo%2FHello%20Robo_GB-Card.png?alt=media&#x26;token=577ecacb-3257-4616-9268-98b960640350">Hello Robo_GB-Card.png</a></td></tr><tr><td><strong>Part 2: Robot Control</strong><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-2/programming-drivetrain-motors">Programming Drivetrain Motors<br></a><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-2/arcade-style-teleop-blocks">Arcade Style TeleOp</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-2/arm-control-blocks">Arm Control</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FZibioq4WqzAmmJa537Ex%2FGamepad_GB-Card.png?alt=media&#x26;token=29943ced-ff79-47bb-a85c-9da5ec6eec34">Gamepad_GB-Card.png</a></td></tr><tr><td><strong>Part 3: Autonomous and Encoders</strong><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-3/elapsed-time">ElapsedTime</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-3/using-encoder">Encoder Basics</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-3/autonomous-navigation-blocks">Drivetrain Encoders</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FYhCRWG8ciYIHtnkUFvAR%2FAuto%20and%20Encoders_GB-Card.png?alt=media&#x26;token=b429f816-1459-4fea-8369-74f0caf1b9bb">Auto and Encoders_GB-Card.png</a></td></tr><tr><td><strong>Part 4: Going Beyond!</strong><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-4-going-beyond/exploring-functions">Exploring Functions</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-blocks/part-4-going-beyond/programming-mecanum-refined">Programming Mecanum</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2F7Iv6BwMJNycBv2e9GNCc%2FGoing%20Beyond_GB-Card.png?alt=media&#x26;token=2c8f54ba-2ad0-47ee-ae93-8bef8e0aa320">Going Beyond_GB-Card.png</a></td></tr></tbody></table>

### Hello Robot - Intro to OnBot Java Programming

{% hint style="success" %}
[Click here to jump to the beginning of the Hello Robot - OnBot Java Tutorial](https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java)
{% endhint %}

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><strong>Part 1: Tackling the Basics</strong><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-1/test-bed-onbot-java">Creating an OpMode</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-1/programming-servos">Programming Servos</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-1/programming-motors">Programming Motors</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-1/programming-touch-sensors">Programming Touch Sensors</a><br></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FALNryYt0x5Aa30StLLIa%2FHello%20Robo_GB-Card.png?alt=media&#x26;token=a535c90a-b840-442d-bb44-001d8bfd71e5">Hello Robo_GB-Card.png</a></td></tr><tr><td><strong>Part 2: Robot Control</strong><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-2/programming-drivetrain-motors">Programming Drivetrain Motors</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-2/arcade-style-teleop-onbot-java">Arcade Style TeleOp</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-2/arm-control-onbot-java">Arm Control</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FZibioq4WqzAmmJa537Ex%2FGamepad_GB-Card.png?alt=media&#x26;token=29943ced-ff79-47bb-a85c-9da5ec6eec34">Gamepad_GB-Card.png</a></td></tr><tr><td><strong>Part 3: Autonomous and Encoders</strong><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-3/elapsed-time">ElapsedTime</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-3/using-encoder">Encoder Basics</a><br><br><a href="https://app.gitbook.com/s/UOOiQ4S2QcMWmVoSmeQ8/hello-robot-java/part-3/autonomous-navigation-onbot">Drivetrain Encoders</a></td><td><a href="https://3172778982-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FQpUff2Tw0aAY2K1UwemO%2Fuploads%2FYhCRWG8ciYIHtnkUFvAR%2FAuto%20and%20Encoders_GB-Card.png?alt=media&#x26;token=b429f816-1459-4fea-8369-74f0caf1b9bb">Auto and Encoders_GB-Card.png</a></td></tr></tbody></table>
