How to acquire and develop mental Focus
Thanks
Thanks
If the documentation you're reading isn't satisfying, maybe try finding projects online related to what you hope to accomplish, and start there. Try reading their documentation and code, and then read C/Python documentation to figure out what the code is doing when you don't understand.
The other thing is that once you done some work, and you're getting tired and finding it hard to concentrate, take a break. You tend to work more productively when you're fresh than when you're weary.
That along with actuall closing the IM, Email and IRC clients can go a long way towards helping you focus.
I also find that when learning something completely new it helps alot to have a small project to apply the new knowledge to. Even if it is something silly, it helps cement the new concepts in your long term memory.
If you have to read an article, before you start reading, remind yourself that you tend to drift away, so set a goal on how much to read before you allow yourself to take a pause.
This works well for me. It just takes a few days and I have stopped reaching for quick information kicks.
Treat it like an important deadline. When you finish, enjoy the sense of achievement, take a break, then start the next hour. The goal ultimately is to be able to concentrate (productively) for 3-4 hours at a time.
Why not put a big countdown clock on the wall (that's what I've done!)
Stuff that distracts you has a much harder time of doing so when it isn't active around you when you want to focus on something else.
Try the pomodoro technique. It has helped me, perhaps it will help you too: http://www.pomodorotechnique.com/
Note: you can try it even without buying a pomodoro (I use a countdown timer in my cellphone)
Maybe you can even think of small useful tools to program, that are possible to do without knowing all the ins and outs of Python.
* Do not read documentation before you begin to code. Start some project first.
* the app will be so amazing
Launch fast and evolve - this is the mantra of this site. =)
1.) Think of an interesting program that I would like to write.
2.) Write the program. As I write your program, I grep the documentation for stuff that I don't know. When I can't figure it out from docs, I grep the Internet.
I've never ever really been able to focus on anything that I don't find to be immediately relevant to a task that I want to accomplish. Some say this is ADD, I say it is pragmatism. Either way, I learn programming languages really well in this manner.
If you use this technique make sure that this program is something that will challenge you. Make it something in a domain that you maybe don't quite know, or at least have some interesting property other than the language.
Language is but a vessel for thought anyway, languages influence thinking, but once you know one language, you sort of know them all; (however, the really interesting languages can fundamentally change the way that you think).
Quit your job and make it your means of survival.
If you're a student, focus on your schoolwork instead. If this IS your schoolwork, consider switching fields.
The fact that you have a hard time doing something does not mean you should give up on it.