Help Center
Everything you need to succeed on the HardCoded platform. Browse our knowledge base or contact support.
Join our Discord community to connect with other South African developers.
Getting Started Guide
New to HardCoded? Learn how to set up your account and start your coding journey.
Sign up at /register with your email address. You'll receive a verification email to activate your account. Once verified, you can enroll in any of our free courses.
Browse available courses at /courses. Click on a course to see its curriculum, then click "Enroll for Free" to get started. You'll immediately have access to all course content.
Your dashboard shows enrolled courses, recent progress, and quick links to continue learning. The sidebar displays your current course modules and lessons. Green checkmarks indicate completed lessons.
Each lesson contains video content, text explanations, or interactive coding challenges. Mark lessons complete to track your progress. Some lessons require passing an assessment to continue.
How to Submit Code Challenges
Learn how to write, test, and submit solutions to coding challenges.
Our code editor supports syntax highlighting for Python, JavaScript, C#, Java, PHP, and TypeScript. Write your code in the editor, and use Ctrl+Space for autocomplete suggestions.
Click "Run Tests" to execute your code against sample test cases without submitting. This lets you debug and verify your solution before final submission. Test results show expected vs actual output.
When ready, click "Submit Solution" to run your code against all test cases including hidden ones. You'll see your score and whether you passed. Successful submissions earn points for the leaderboard.
Test results show: ✅ Passed (output matches expected), ❌ Failed (output doesn't match), ⏱️ Time Limit Exceeded, or 💾 Memory Limit Exceeded. Read error messages carefully to debug.
Troubleshooting Common Errors
Solutions to frequently encountered problems.
Check for syntax errors, missing semicolons, or incorrect brackets. The error message usually indicates the line number. For Java/C#, ensure your class names match the requirements.
Common causes: division by zero, null/undefined references, index out of bounds. Use console.log() or print() statements to debug. Check edge cases like empty inputs or negative numbers.
Your code took too long to execute (>5-10 seconds). Optimize your algorithm - avoid nested loops where possible, use efficient data structures, and check for infinite loops.
Your code runs but produces incorrect output. Read the problem statement carefully, check for off-by-one errors, test with the sample inputs, and consider edge cases you might have missed.
Some lessons require passing a previous assessment. Look for 🔒 locked lessons and complete the required assessment with at least 70% to unlock subsequent content.
Understanding Assessments & Progression
How our assessment system works and how to progress through courses.
Assessments are coding challenges that verify you've mastered the material before moving forward. Unlike optional practice challenges, you must pass assessments to unlock the next lessons.
You need at least 70% to pass an assessment. This means passing 70% of the test cases. You can retry assessments as many times as needed - there's no penalty for multiple attempts.
If you don't pass on your first try, review the lesson content and try again. Each attempt helps you learn. Your best score is saved and displayed on your progress page.
Complete all lessons and pass all assessments to finish a course. You'll earn a certificate of completion that you can share on LinkedIn or your resume.
Account & Enrollment FAQs
Frequently asked questions about accounts and course enrollment.
Yes! All courses marked as "FREE" are completely free to access. You can enroll, complete lessons, and earn certificates at no cost. Premium features may be added in the future.
Absolutely! Enroll in as many courses as you like. Your dashboard will show all enrolled courses, and you can learn at your own pace across multiple languages.
Visit your dashboard to see progress for each enrolled course. The course sidebar shows completed lessons with checkmarks. Your profile displays total points earned and leaderboard ranking.
Course content is designed for online learning to ensure you always have the latest version. However, you have lifetime access to re-watch videos and review material anytime.
On the login page, click "Forgot Password". Enter your email address and we'll send a password reset link. Follow the link to create a new password.
Certificates & Verification
How to earn, share, and verify HardCoded course completion certificates.
Complete 100% of all lessons in a course and pass all required assessments. Your certificate is automatically generated and appears in your dashboard. Certificates include your name, course details, completion date, and a unique certificate number.
To verify any HardCoded certificate, visit hardcoded.co.za/verify and enter the certificate number (e.g., HC-2026-000001). Our system validates it against our secure database in real-time. You can also click any certificate URL to view and verify it.
Each certificate has a unique public URL like hardcoded.co.za/certificates/HC-2026-000001. Share this URL on LinkedIn, your resume, or with employers. Anyone can view and verify your certificate without logging in.
Every certificate includes a SHA-256 cryptographic hash for authenticity verification. This ensures certificates cannot be forged or tampered with. Our verification system uses blockchain-inspired technology for maximum security.
When employers verify your certificate, they see your full name, course title, completion date, certificate number, and a verified badge. The certificate page clearly states the skills demonstrated and includes course level and language.
Certificates are available as web pages with unique URLs for easy sharing and verification. PDF download functionality will be added soon. For now, you can print the certificate page or share the verification URL.
Code Execution Limits & Best Practices
Understanding code execution limits and optimization tips.
Python, JavaScript, PHP, TypeScript: 5 seconds. Java, C#: 10 seconds. If your code exceeds these limits, optimize your algorithm or reduce computational complexity.
Python, JavaScript, PHP, TypeScript: 256 MB. Java, C#: 512 MB. Avoid creating unnecessarily large data structures. Use generators/iterators for large datasets when possible.
Read input using: Python (input()), JavaScript (readline()), Java (Scanner), C# (Console.ReadLine()), PHP (fgets(STDIN)). Print output using the standard print/console functions.
Use appropriate data structures (hash maps for lookups, arrays for sequential access). Avoid nested loops when possible. Cache repeated calculations. Consider time complexity: O(n) is better than O(n²).
We support modern, stable versions of Python 3, JavaScript, Java, C#, PHP, and TypeScript with all current language features you need for professional development.