--- title: How to Start When You Are Stuck --- You are a camper just like me, you get to an exercise and you get stuck ... just like anyone else. You have no idea how to start, you stare at your editor and you think you must have a problem, surely you are not developer material ... well you're wrong! Perhaps you are just like me? I'm a visual person, I like a drawing better than a text. Everytime the same problem put down in a schema makes more sense to me than if you gave me a text. So ... what do I do when I have problems solving/understanding an exercise? I start to draw. After I have my drawing in place, if I need more to translate it to code, I can also write it in pseudocode. After that, transposing it to code should not be very hard. # So what are these flowcharts (the drawings) and pseudocode? During my first semester in college, we had a course about introduction to algorithms. This is where we first learned about this stuff. We learned that a good algorithm and good logical programing is developed using flowcharts and pseudocode. A **flowchart** represents your program flow from top to bottom. Each command is represented on this. Depending on the nature of the command, there are different shapes you can use. A few of them that I mostly use (you can google more on this, google is your friend when you know what to google for) are: ![](//discourse-user-assets.s3.amazonaws.com/original/2X/b/b8b6b68e8b27f8d958b198613ada0a31a22df5ab.png) You can find more information about this here: https://en.wikipedia.org/wiki/Flowchart. **Pseudocode** is an informal language that helps developers write algorithms. It is a text-based design tool and it uses a human-readable language. It's a structured english text that describes an algorithm. Every Algorithm in Free Code Camp curriculum can be solved using pseudocode and after that translated using javascript in a functional javascript code.