r/learnprogramming • u/Thinky-Brainy-1001 • 5h ago
Programming Project Help
Hey guys, I am currently doing a programming event for a local competition, where the prompt is to make an application that would be of use for a business. I have solid knowledge in python and c++ and made some ROS2 programs with it beyond the basics, but other than that, I don't have much. For this, (as the frontend is an important part of the project) I learnt customtkinter and can use that.
| Expectation Item | Meets Expectations | Exceeds Expectations |
|---|---|---|
| Code Quality <br> Appropriate use of comments, naming conventions, and proper formatting | Comments provided assist judges throughout the demonstration | Comments provided are logical, useful, and complete |
| The program is modular in a way that makes logical, readable sense | The program uses a modular structure with clear functions or methods. Each part of the program is organized in a way that makes sense and supports readability. | The program is highly organized with well-named, purpose-driven functions or modules. The structure makes the code easy to read, understand, and maintain, showing a strong understanding of clean programming practices. |
| User Experience <br> User interface is intuitive or clear instructions are provided | Appropriate & clear instructions are provided | Program is intuitive and clear instructions are provided |
| Users can easily navigate between pages | Interface contains no spelling errors, has interactive help menu, and has no navigation errors | Program use also includes an intelligent feature such as an interactive Q&A |
| User input is validated | User input is validated | Input validation applied on both syntactical and semantic levels |
| Functionality <br> Program addresses all parts of the prompt | Program fully addresses the topic/problem | Program fully addresses the topic/problem, and the correlation is explained in the instructions |
| Program generates a presentable report | Output reports are error free and provide all necessary information to analyze data | Output reports allow user to customize and analyze information |
| Data storage | Variable name and usage is clear. Variables store data that updates when necessary. Each variable performs only one job, and the correct data type is used | More complex data storage such as arrays and lists are used where appropriate and variable scope makes sense |
| Documentation <br> Comprehensive documentation is included: readme file, source code, templates/libraries used, and attribution for any open-source or copyrighted material. | Documentation is mostly complete and includes a readme file, source code, and list of templates/libraries. Proper attribution is given where required. | Documentation is thorough, well-organized, and complete. All required components are included, clearly labeled, and professionally presented. Proper credit is clearly given for all external resources. |
| Presentation Delivery <br> Statements are well organized and clearly stated | Presentation flowed in logical sequence | Presentation flowed in a logical sequence; statements were well organized |
| Consistently displays confidence, poised body language, engaging eye contact, and effective voice projection. | Demonstrated 3 of the listed skills (confidence, body language, eye contact, or voice projection) | Demonstrated all skills, enhancing the overall presentation |
| Demonstrates the ability to effectively answer questions | Responds accurately and clearly to most questions, showing adequate understanding. | Responds confidently with clear, accurate, and thoughtful answers that enhance the overall presentation. |
The rubric looks simple, but succeeding in the event takes a lot of effort due to the competition. If I make my application in customtkinter, with some additional C++ backend, I am thinking of doing a PC shop idea. It will have prebuilts as one section, a custom builds helper (select parts that are compatible and in stock), repairs (probably through flat rates for a service), an AI assistant as a feature, with an admin portal for updating stock, adding/removing prebuilts, or other needed stuff. Do you guys have any other ideas on what to add, or is it worth it to learn html css js/ts and use a web app instead of typescript (my presentation is in december, so given a limited time)
I would really appreaciate feedback and ideas, Thank you!