PseudocodePro allows you to write and execute pseudocode directly in the browser. It was primarily designed for students taking either the Cambridge 0478 IGCSE, 2210 O-Level or 9618 A-Level course, though others can still find use in this site, so long as the pseudocode they write abides by the syntax
The following resources might also be useful:
In the future, support for syntaxes of different courses might be added - if you have a specific request, then please contact me
🎁 The site is worked on daily, with new versions of the site usually pushed several times per week - so there is always something to look forward to :)
Again, if you have any suggestions, issues or feedback, please let me know.
Toggle All FAQs
Pseudocode is a human-readable representation of a programming language - it is designed to have a simple, but structured syntax that has similarities with some of the old, pioneering programming languages. It teaches students about data types, program flow, common/simple data structures, modules etc. Since the "language" is lower-level than some real programming languages students may otherwise be taught, pseudocode provides the advantage of teaching students how to actually implement functionality themselves, rather than relying on pre-written modules or importing external libraries. This will provide students with a deeper understanding or how certain things work under the hood.
Often, teams might work using multiple languages - being able to plan something quickly in a language independent format can be important for teams. For teaching, it also provides a structured base to teach the fundamentals, rather than dealing with the quirks or overly-abstracted nature of some programming languages
The site tokenises, parses, then "transpiles" your pseudocode into JavaScript, which is executed directly in your browser. This local, in-browser development and execution makes using the site/desktop app a breeze - without the tedious nature of having to wait for back and forth communication with the server
As mentioned above, the site supports syntax for the Cambridge IGCSE (0478/0984), O-Level (2210) and A-Level (9618) syllabuses. Users of other exams/those just looking to practice can also find use in this site too. If you are a student studying another course and would like to see your syntax supported, then send me a message and I might be able to add support, if there is a high enough demand
No - since all code executes directly in the browser, there are no resource/execution limits etc. By default, programs will terminate if executing for more than 5 seconds since it's possible you may have accidentally created an infinite loop - this limit can be modified/disabled via the settings cog in the bottom left of the code editor page
Absolutely - there is a download button in the code editor to save your code. CTRL + SHIFT + S can also be used. Programs can also be uploaded publicly by anyone including guests - a private autosave to the server option is also provided for those with valid licenses, meaning you can access their code across multiple machines - e.g. working on some homework/program at school, then being able to access it from their account at home. Loading code is as easy as loading/dragging your .pseudo file into the editor or visiting your public/private code uploads under the account -> my code link
Code will automatically save every few seconds or when run - this means you can access it across tabs. If using the desktop version or a non-private browser window, you will also be able to access your autosaves the next time you open the site - unfortunately, you won't be able to access your autosaved code if using a private browser/clearing your history - in these cases, you'd need to manually download the code
As stated, it's possible to upload your code publicly - alternatively, you can use the share button in the code editor which will create a link with the code embedded directly, though links can quickly become long. This may be preferable for sharing small programs that you don't want to be uploaded publically. For bigger programs, downloading and sharing a .pseudo file with your friends/teacher is probably recommend
The site will validate your syntax and attempt to give helpful error messages with error line highlighting and clickable line numbers, so students can easily find the cause of their error. As for ensuring the code exhibits the correct behaviour, as with any real programming language, students will have to use various test cases to ensure their code is working as intended - making use of breakpoints and the trace table feature might also be useful
There are a huge range of demo programs, covering every feature of the syllabus - additionally, there are YouTube videos covering the entire IGCSE/O-Level and A-Level pseudocode syllabuses
Yes - program execution can be traced by observing the values of variables in a trace table. Breakpoints can also be added via the BREAKPOINT keyword and the rules for starting a new line in a trace table are highly customisable, or can be specified manually by the user, using the TRACE_NEXT_ROW keyword. See the relevant demo programs on the editor page to see both of these in action
Yes - though realistically, coding on any mobile phone probably isn't a pleasant experience. Some users do regularly use the site on a tablet, however
No - the full syllabus, along with extension modules have been implemented. There are also no known bugs that I have discovered or that have been reported to me - though if you find any, please let me know
Yes - currently there are a wide-range of colour themes for the code editor - ranging from custom themes, to themes based on colour schemes used in well known IDEs, such as VSCode or JetBrains' IntelliJ/PyCharm etc. As for overall site themes - currently there is a "glass" theme which is the default, as well as a dark theme - if you would like to see another theme added, then please reach out
While it is possible to use the default browser zoom, a better way is to use either the settings cog in the bottom left or the keyboard shortcuts CTRL + SHIFT + Up/Down Arrow to adjust the font size
Yes - as long as you have it open in your browser, you will be able to run your code. For those with licenses, it can be used fully offline via the downloadable desktop version.
For many questions, Cambridge often states they have pre-declared and pre-populated/initialised variables/arrays - the starter code for the exam questions is exactly this - all the pre-declared code with realistic sample data, allowing students to easily type their solutions EXACTLY as they would in the exams, yet be able to actually verify that their solutions are working correctly. The full solutions for all pseudocode past paper questions for the current IGCSE/O-Level/A-Level syllabuses are also uploaded too
As well as the YouTube videos/demo programs, currently some of the best places to get fast support is in the various Discord groups mentioned above - Pseudocode & Assembly Help, IGCSE, A-Level, ZNotes etc
For free, there are 50 challenges available, while for those with a license, 480 challenges are accessible - these challenges are assigned a difficulty, with the majority being similar to exam-style questions - for A-Level and/or IGCSE/O-Level. There are also more 'open-ended'/exploratory kind of challenges for students who want to spend a bit more time attempting a task. The challenges are hopefully interesting and, where possible, aim to link with other aspects of computer science, maths, science, language etc. This aims to simultaneously allow students to improve their programming skills, while also teaching them about various aspects of computer science and beyond
Absolutely - individuals can purchase a license, or schools/organisations can purchase bulk licenses
Yes - discounts are applied based on both the number of licenses and the duration of each. Pricing is extremely affordable ($2 for 1 account for 1 year) - exact pricing for your particular number of licenses/duration can be found on the buy page
Yes - while either you (or the intended license recipient) can manually assign the keys, it's also possibly to type/paste in a list of either usernames or email addresses and license keys will be assigned to each automatically - any accounts that don't exist will be automatically created, with a randomly-generated password that can be reset when the user logs in
Contact me via the contact page