Before we dive directly into this topic let’s brush up our vocabulary.
- Grilling –
- Hardwork –
- Response –
- Peace –
- Procrastination –
- Potential –
- Satisfaction –
Update to come soon !!
Before we dive directly into this topic let’s brush up our vocabulary.
Update to come soon !!
This is a documentation of what all things I feel is important to be in a correct path. I may speculate on each topic one by one later but for now just this compilation would suffice.
LESSONS FOR LIFE ❤ ALWAYS
The increasing popularity and widespread use of the pomodoro technique is no coincidence – it truly works.
Reference : Pomodora technique
========== OR ==============================================================
you need to fully prep your hobby.You can do that by being specific. For example, I like watching Hollywood movies and my favourite is sci fi genre. Asmentioned – hobbies should be active. You should be setting direction/plans/goals for yourself. Rather than passive – such as clicking around a website until you get bored.
Important links to consider:
1. Note-making consumes a major part in our academic life. So it needs special attention to give the best of its usage.
2. Develop the ability to become an active reader (this is the perhaps the most important advice I have to share). Don’t just passively read material you are given. But pose questions, develop hypotheses and actively test them as you read through the material. I think the hypotheses are part of what another poster referred to when he advised that you should develop a “mental model” of whatever concept they are teaching you.
3. I discovered mental modelling as a survival mechanism to pass my studies.
4. Understand how the professor grades. Like the real world, the academic world is not always fair. You need to understand who is grading you and what they are looking for. Oddly, if you actually answer questions as written, you won’t get full marks from some teachers.
5. Get involved in research while still in undergrad. Academics is a means to an end. To me that end was “solving problems” and “building stuff” specifically systems and organizations.
6. Attend classes. I do not understand the students who claim they did well without attending class.
7. Time management is key — especially in undergrad. In my competitive undergrad program I once learned that a friend who achieved top 5% status actually timed how long he ate.
8. Going out and having fun is conducive to good grades. In my early undergrad years I studied as hard as I could.
9. Learn how to do advanced Google searches. This is an essential skill that enables you to answer your own questions, quickly. At a minimum I suggest you learn how to use the following Google search operators ~, -,*, AND,OR, and numeric ranges via the double dot (“..”) operator. The “site:” operator is also often helpful. I also found adding the word “tutorial” to a Google search often yields great introductory materials.
10. Turn weaknesses into strengths. While studying for standardized exams I learned the importance of addressing one’s weaknesses as opposed to ignoring them. If you make a mistake on a question, it is because of a weakness within you. If you do not address that weakness it will follow you to the exam.
I did an Artificial Intelligence research project.
And finding the right motivation is essential, because learning to program well takes a lot of work.
So my first piece of advice is: reflect on why you want to write software and what kind of software you want to write.
If you can go through all of its content, you would be very close to your target I would say.
Also you can add your own content to it to make it easier for you to return to it later on.
1. For Data Structures, “UNDERSTAND” all the concepts from here
2. Try your hand at the online judge, especially
3. For Algorithms, read this
4. Read the book Cracking the interview by gayle.
Now coming to the part where you probably are thinking ” How the hell should I start off with all this ? “
There is nothing new that I would be able to tell you. So I would rather quote whathas to say :
If I am to start programming now, I would do it this way
If I am to learn a new Algorithm now, I would do it this way
You need to refer to external links, tutorials, books, research papers, etc. on various topics like for Data Structures and Algorithms you need to study, , , , and other … and some of the tough ones like, , Segmentation Trees, etc. which you will eventually learn after much of your efforts….. apart from this you need to build your mathematical basics to the best, to utilize your capabilities, including series(Fibonacci, Catalan, AP, GP, HP etc.), formulas, Probability, Permutation, Combination etc…. Sometimes there is a requirement some other subjects(like Physics) but most of relevant information is provided in the question itself….
And for your purpose of being a “Good Programmer”…. don’t ever try to copy codes…. even if you are looking some editorial or research papers… try to study the logic and then write the code yourself…. Try to study the codes of other coders… if you cant understand them… just try to print the intermediate results to understand the logic behind each line…. One thing which may effect you during the competitive programming is cheating… to overcome this you can take a print out of the relevant resources and try to solve things by hand…. for more purposes use discussion forums to solve your problems, there are so many awesome coder and top performers which are thirsty of solving your doubts 😛 ….
As far as resources are concerned, some of the best ones that I have found so far are
Now Google ” ‘language name’ basic projects source code”
Go through the links on the first page. And try understanding the source code. Google what you don’t get. 2 hours will be sufficient for going through at least 3 small projects.
Practice from or problems from spoj.
List of Hello world program examples
What kind of jobs do the software engineers who earn $500K a year do? – Amin Ariana
Who told you that you can select only one of them? You can actually be good at both of them. In fact, your programming experience boosts your general programming skills. Whether it is competitive programming or “real life programming”, at the end of the day they make you a better programmer.
Talking about advantages, there are quite a few. I will try my best to list them out.
But, there is a disadvantage (which can be avoided):
At the end of the day, when you start “real world programming” after a long exposure to competitive programming you will find it to be very simple and trivial sometimes to the extent that certain things will actually bore you because they are not challenging enough.
3 Ask to Answers. Hope I have done justice to the question. Please comment if you want me to add something.
Edit 1: Since many are asking for my advice on how to start competitive programming, these are some of the answers that have inspired me:
Edit 2: I have a very modest pay package, good enough for a fresher. Not the 50 lakhs or 1.4 crore sorts. There are many people here on Quora, who deserve much more fame than I am receiving right now.
Edit 3: 10 easy DP problems, I talked about. Here they are:
I will go one step further and will give a practical advice. Buy a Raspberry Pi kit and start working on a cool new project. You have some ideas here –and there are plenty of magazines devoted to cool new ideas that can be done very cheaply – .
Can’t state it in words … Nor can express it but it all stays in heart until you accept it …….
What’s reality ??? An unsolved mystery to keep up the striving spirit to bring out the life at the subconscious level to an unending disappointing podium where we feel ourselves to being judged ,checked and tested. Is that actually what reality is ??? Or a world made for competition yet fun to act as a versatile personality , the savior at all troubles. Is it so ,,, Give it a random thought till it gets harsh on you and drags your thought to rationalize it to be merely the former one stated. Is this mere a misconception or the hard -core truth we don’t want to believe .
This isn’t so ….. A part of my heart speaks. It’s that opening which leads to the mysterious well of unseen knowledge and wisdom, the ultimate truth which the soul’s craving to explore and experience. All lies within, still this fine membrane of ignorance wraps it all into a channelized source blocked by the false realization of considering oneself the one over all.
He watches us grow from making petty mistakes to being mature enough to hold responsibilities. But at the end He too fears for us taking the forbidden path, falling prey to the temptations offered in the platter of testification. So, what I could smell of reality is the final decision we take, of the million opportunities to thrive yet differently… It’s what we live.
Our life is a crystallizing beautiful glass palace which heats up continuously to take it’s ultimate form going through the fluctuations from battling the fear of failure to creating self-motivation to have confidence to overcome all adversities. The tricky mind plays its game to hallucinate and confuse you by creating a panel for self evaluation and progress.This is what we fear.. the reality of life…..