id | aliases | tags | area | project |
---|---|---|---|---|
readme |
This repository is designed to store my public notes and related source code together.
- Knowledge Repository: Functions as an Obsidian vault, storing notes in Markdown format for easy organization and reference.
- Learning Hub: A space for continuous growth, focusing on Data Structures & Algorithms (DSA), frameworks, and Neovim configuration.
- Unified Solution Format: Build each solution in one file, with reusable test cases that work across different programming languages.
- Language Diversity: Solve problems in various languages to improve proficiency in different syntax's and paradigms.
- Repository Growth: Expand the repository as new concepts and solutions are learned.
- Fast Debugging: Leverage Neovim DAP (Debug Adapter Protocol) for efficient debugging.
- Automated Question Downloads: Integrate tools to download questions from platforms like LeetCode, Codeforces, or other online judges, and automate solution submissions.
- Competitive Programming Bootstrap: Set up a development environment for competitive programming with quick-start templates.
- Interactive Challenges: Incorporate tools like embedded code-runners on my blog, visualization tools.
- Sandbox for Ideas: Provide an isolated environment to experiment with ideas and frameworks without waiting for lengthy build times.
- Cross-Language Testing: Experiment with various frameworks across different programming languages.
- Template Generator: Create a script or tool to generate boilerplate code for common frameworks, facilitating rapid experimentation.
- Framework Comparison: Set up benchmarks to evaluate different frameworks based on performance, ease of use, and scalability.
- Stability and Reliability: Dedicated to testing and maintaining the stability of my Neovim configuration by experimenting with plugins, themes, and settings.
- Isolated Config Environment: Test new configurations or plugins in an isolated environment to avoid breaking the main setup.
- Performance Monitoring: Regularly check the performance of the setup to ensure it remains lightweight and efficient.
- Version Control: Use version control to track changes in configuration, ensuring compatibility and easy upgrades.
- Regular DSA Practice: Tackle DSA problems regularly to build proficiency in both theory and implementation.
- Solution Review: Continuously review and optimize existing solutions for better coding practices and efficiency.
- Multi-Language Proficiency: Solve problems in at least three different languages to enhance problem-solving flexibility.
- Contest Participation: Actively participate in platforms like LeetCode, Codeforces, and AtCoder using the setup.
- Automated Workflow: Establish an automated workflow for downloading problems, solving them locally, and submitting solutions directly via CLI.
- Versioned Solutions: Maintain different versions of DSA solutions to compare approaches and performance.
- Comprehensive Documentation: Develop thorough documentation to make the repository a useful reference for future use.
- Modular Learning: Organize solutions into categories based on topics such as sorting, graphs, dynamic programming, and more.
- Code Challenges: Set up daily or weekly coding challenges to maintain consistency in learning and problem-solving.