3 ms·
1. Take time off, you need it, try to do it without regrets/feeling bad that you are wasting time. Sometimes we go beyond that point of exhaustion and kid that
by mudita43 4y ago
1. Take time off, you need it, try to do it without regrets/feeling bad that you are wasting time. Sometimes we go beyond that point of exhaustion and kid that we are productive.
2. Exhaustion leads to bugs: This is a vicious cycle. Late hour bugfix leads to next bug and so on. Both short term and long term exhaustion.
3. I felt like you when I went for grad school. As an EE Major, I could hack my code to work, find resources to get it to work etc. At that time, my interest was doing cool animations with flash (yeah, long time ago, levitated.net anyone)
4. I got the high of solving interesting problems but was always wondering how good coders do it, do they hack it all the way too. (hack here as in, band-aided, spaghetti code with no theoretical underpinnings, using arrays when I should hash-tables etc).
5. What I learned is that, good coders, imho, they hack the last bits too (caveats apply) but often have good theoretical foundation. DS/Data representation for example is the fabric of code you write (you are making a choice even if you didn't explicitly decide). I knew it sort of then but didn't know it my bone like I do today and apply it like I do today. I had an amazing teacher who made big difference (Thanks to Brian Dean, some of you IOI folks might know him).
6. Leetcode is great once you have some bit of theory else you are still hacking your code to work. Abstractions escape you. So now you have to learn each problem separately whereas someone who knows the abstraction compress the knowledge into those few abstractions and its minor variations.
7. Find a good mentor, someone who knows what the heck they are doing. This can help.
Disclaimer: We run a bootcamp for students who want to understand how to write good code from first principles (autoinfer.com).