Advice
READ THIS EVERY DAY
Questions
- What risks did you take today?
- What did you learn from your successes?
- What did you learn from your failures?
Making Decisions
- Can you do it? (self-efficacy) Do you believe you can accomplish the task.
- Do you have the time?
- Do you have the knowledge
- Do you have the practice/training?
- Will it work? (response-efficacy - The belief that an action will yield to
the desired outcome. Requires education and practice)
- Education - a body of theoretical knowledge.
- Practice or Training - a body of practical knowledge.
- Is it worth it? Is what could be gained worth the price that must be paid to obtain such gains?
To Myself
- Create habits through systems to achieve your goals.
- Anyone can start something and be motivated to do so, but this motivation will run out and you’ll have to decide to continue. Is it worth it?
- Choose to be exceptional because there isn’t much excitement to be otherwise. In each decision, choose to be the version of yourself that you would read a book about. Be exceptional.
- Prerequisites are excuses. Your job is to do the work, not to judge the work. Quality will come from quantity and when you work, work as thought it must be done today, not tomorrow.
- Make small commits.
- KISS - Keep It Simple, Stupid. Make a design document that states the intended purpose of the code.
- See the forest thought the trees. If you lose sight of the end goal then you will spend all of you time on something small. Actions per minute is more important than the quality of a single action. Quality will come from quantity and your job is to do the work, not to judge the work.
- Respect your superiors, both those with time in the same rank as you and those in a higher rank than you.
On Finding A Life-Companion
Get a piece of paper or journal and draw out your ideal person. List your dream person’s qualities. Jot down as many detailed traits as you can. This is your private list so it can be as serious or silly as you want it to be. Then go after this ideal person. Compare your present companion to this list. Don’t focus on their lacks, but notice how you’ve compromised. No person is perfect and the one you ultimately get with may not get a perfect score, but they should be close. Keep your list private and use it as your guide to happiness. Only you can determine which qualities you are willing to compromise on and which you are not.
On Learning
- Only read books relevant to your current situations and that will help overcome present challenges.
- Teach what you are reading, no matter what level you are or the subject. If you read it; teach it. Talk about what you are reading to others, its the best way to know it. Know your shit.
- Take notes, ask questions, and find the answers to those questions.
- Pretend as though you were discussing what you have learned with an expert on the subject. What would they say? Why would it excite them? Be genuinely interested in what they have to say. Visualize yourself as the expert. What would you do?
- Ask yourself “How can I grow?” Knowledge alone is useless. Apply at least one thing from what you read the same day you read it.
Learn by doing, this is the only way.
Use the following:
- The corson technique: “What is it that I don’t understand and at what point do i not understand”
- Spaced Repetition (srs)
- Method of Loci (a.k.a, memory palace. Used for large data set)
- Commitment device (beeminder),
- Small rewards
- Note what distracts you (use something to block distracting websites)
- Use focused and diffused thinking
- Be ahead of others
c++ related:
- Network Programming (TCP/UDP)
- Multithreaded Development
- STL/Boost
- MFC/ATL/COM
- Codecs (MPEG4/H.264)
- Video and/or audio
- DirectShow
operating systems: Linux
Important Documents in Software Development:
- Software Development Plan,
- Software Test Plan,
- Software Design/Architecture Document,
- Software Test Description Document,
- Software Test Report
File formats: Audio: FLAC(loss-less), Ogg Vorbis(ogg, lossy) Video: Theora codac with Ogg transport layer, Webm
Configuration management tools and processes