Welcome to the Daily Computer Engineering Experiments repository! This repository serves as a central hub for conducting and documenting daily experiments related to the field of computer engineering. Below, you'll find some guidance on the core skills that are crucial for any computer engineer. There is also a folder structure that helps you organize your daily experiments.
This project is the result of asking OpenAI's GPT-4: "As a Computer Engineer, what are the core skills I should practice everyday? Give me concrete examples and time frames."
- practice/
- load-balancers/
...
You can continue to add folders within the practice
directory to categorize your experiments by topic, such as coding-challenges
, system-design
, hardware-programming
, and so on.
Here are some core skills, along with concrete examples and time frames for daily practice:
- Concrete Example: Solve a coding challenge on platforms like LeetCode or HackerRank.
- Time Frame: At least 30 minutes daily.
- Concrete Example: Study a component of a distributed system and design a mini-version.
- Time Frame: Spend about 30-45 minutes daily.
- Concrete Example: Work on a Raspberry Pi or Arduino project to control a simple circuit or sensor.
- Time Frame: Dedicate 20-30 minutes daily.
- Concrete Example: Experiment with a simple client-server model using protocols like HTTP or TCP/IP.
- Time Frame: 20-30 minutes daily.
- Concrete Example: Learn and practice penetration testing techniques using platforms like Hack The Box.
- Time Frame: 20-30 minutes daily.
- Concrete Example: Make regular commits to a personal or professional project on GitHub.
- Time Frame: At least 10-15 minutes daily.
- Concrete Example: Pick a data structure or algorithm and implement it from scratch.
- Time Frame: 30 minutes daily.
- Concrete Example: Write simple shell scripts to automate mundane tasks on your computer.
- Time Frame: 15-20 minutes daily.
- Concrete Example: Practice mathematical problems related to calculus, linear algebra, or statistics.
- Time Frame: 20-30 minutes daily.
- Concrete Example: Document one component of a project you're working on.
- Time Frame: 15-20 minutes daily.
The time frames are just recommendations; you can adjust them based on your schedule and needs. Practicing these skills regularly will not only make you proficient but will also keep you ahead in the ever-evolving field of Computer Engineering.
Feel free to expand on this basic setup to better fit your specific use-cases.
Happy hacking!