Some simple rules to follow when doing things.
- Set goals. Plan. Execute.
- Don't waste time. Build ideas. Learn. Experiment. Take risks. Ask questions.
- Share. Write. Be honest.
- Simplify. Never repeat myself. Remove friction.
- Use only what's needed. If something doesn't provide any value, get rid of it. Cut out noise (analytics, likes..).
- Value time. Filter input. Maximize impact.
- Learn from mistakes. If things fail, learn from it and move on. Let past go.
- Be mindful of my actions and thoughts.
- Don’t eat animals, don’t hurt any person. Don't waste anything.
- Don't compare myself to other people. Surround myself with people that inspire me.
- Be consistent. Make friends with imperfection. Enjoy the process and don't fixate on the goals.
- Don't judge anyone. Attempt to see another person's point of view.
- Don't lie to myself nor anyone else. Be confident in my thoughts & actions.
- Embrace change. Never complain about anything. Be proactive. Be bold & fearless.
- Build & enforce good habits.
- Adjust these rules and my workflow to match what I learned.
- Follow these rules. Take it easy. You only live now.
- Exercise. 50+ min cardio/weights daily.
- Eat whole food, plant based diet.
- Drink lots of water & tea. Limit coffee consumption (1 cup / day max). No added sugar in drinks/food.
- Sleep at least 8 hours every day. Don't limit sleep, ever. Try go to sleep at same time.
- Always have good posture. Sit properly and upright, don't bend my back/spine.
- Take essentials daily supplements as well as daily food mix.
- Everything in moderation. Avoid alcohol and any damaging drugs (like opiates). Health above all.
- Lead a happy, mindful, stress free life. Clean up.
- Aggressively cut out any kind of distractions when working. Pure focus on task at hand. Have timed breaks.
- Don't context switch unless it's necessary. Don't visit blocked sites and apps when focusing. Don't touch the phone unless necessary.
- Spend mindful time on the phone. Listen to podcasts/books. Read/chat. Don't waste time on things that can be done better/faster on mac.
- When focusing, do the task at hand and nothing else. Break problems down. Solve them.
- Be mindful of my habits and temptations. Don't succumb to them and keep my focus. Do things with purpose.
- Do quick exercise bursts during the day to regain focus. Move around & explore new environments for inspiration.
- On weekly reviews, observe time I spent in Timing and restrict wasted time with Focus.
- Use one screen on mac. It's easier to context switch and keep focus.
- Don't listen to distracting music or sounds when focusing. Use Noizio & Dark Noise and listen to Rain, Fire or similar sounds. Or play a song from Focus playlist. Or have nothing playing at all.
- Use noise canceling headphones to minimize distractions.
- Only have essential notifications setup. Be in Do Not Disturb mode by default.
- Take mindfulness breaks and breathe when distracted. Or exercise.
- Create and consume art. Meet people. Be inspired. Reuse work & ideas.
- Make decisions based on data/experience. Be decisive, bold & right. Collect meaningful experiences & data points for problems I am solving.
- Say no to things. Set constraints & limits.
- Never give up if problem's worth solving. Optimize for long term growth over short term gains.
- Always breathe fresh air. Have proper lighting.
- Invest in learning/using/building new tools.
- Wear comfortable clothes. Limit choice in clothing. Wear same clean clothes.
- Use standing desk. Never sit for long. Sit up right.
- Only use the bed for sleep ideally. Be purposeful in any environment I am in. Start days quickly.
- Don't overthink things to the point of not doing anything. Clear up any confusion.
- Share all ideas I have. Add relevant description and links to describe the idea clearly.
- Start building early. Validate ideas. Move fast. Ship often. Iterate.
- Let ideas evolve. Listen to feedback.
- Always learn new things but be purposeful. Dig deep into fundamentals of whatever problem I want to solve.
- Document everything. Don't repeat things. Link instead.
- Ask questions. Don't be afraid of not knowing something and ask for help.
- There are no dumb questions. Do some research first though.
- Go deep. Specialize. Be great at some thing and branch out.
- Learn fundamentals first.
- Build things from scratch to understand. Minimal version that works.
- Draw or sketch to distill complex ideas. Think through problems together. Discuss.
- Watch videos at 2x speed, unless it hurts comprehension or it's entertainment.
- Listen to podcasts/books at fastest speed I can comprehend. (Podcasts: ~ 2x + smart speed, Books: 1.5x).
- Be clear in what I want to share. Be concise. Cut out everything that’s not surprising.
- Use proper punctuation and capitalize things appropriately. Use simple language.
- Use imperative tense for briefness when making tasks (2Do, Trello, GitHub issues). Be clear.
- Remove unnecessary and filler words. Use adverbs sparingly, they often undermine your point. Instead of
really like
, saylove
. Say more with less. - Hyperlink words/phrases appropriately.
- Use headings to separate sections in articles/docs.
- Fix mistakes with spell checker.
- Format text to focus attention. Bold = strong emphasis. Italic = soft emphasis. Syntax highlight
Code blocks
.
- Only use what is necessary. Experiment with new tools/apps but never keep things I don't need. Applies to everything.
- Establish good mental models of what I need and what I use as I approach modifying my workflow and tools.
- Run less software. Only run what I use and need. Keep all systems clean & purposeful.
- Share everything I know and made.
- Submit bugs and feature requests as soon as I encounter problems I can't solve. Twitter, email, in-app or feedback assistant.
- Say things that contribute to the conversation. Be honest.
- Filter consumed information. Reduce noise. Only follow high signal people & content I am interested in.
- Separate information into two levels of quality if necessary (ie Twitter Follows/Other).
- Subscribe to Atom over RSS feed if possible.
- Value each animal’s life as equal to that of my own. Don't eat or hurt anyone.
- Minimize suffering caused to other people. Be conscious of other people's feelings.
- Strive to empower everyone around me to be better. Show compassion and care.
- Mindfully spend money. Make sure not to support practices I don't agree with.
- When paying online, make sure payments go through.
- Aggressively research everything I don't understand. In solving problems, think about it in terms of models I can validate.
- For programming, think about the data model and operations. Always keep in mind the problem being solved.
- Write clear code. Explicit over implicit. Readability Matters More Than Correctness
- Make code run first. Then make it fast (if necessary).
- Read docs. Update docs where needed.
- Function name should describe what it does. Good function names summarize what happens inside.
- Make sure to copy things I understand. Copy correctly.
- Delimit files with spaces using
-
instead of_
. - Use switch cases over long ifs.
- Open draft PRs for WIP changes, saying what should be added or considered in
Notes for reviewers
or the related issue. Ask for feedback. - Minimize distractions in text editor.
- Comment over unclear code. Be as descriptive as necessary.
- Minimize decision making done by users. Good design leads.
- Impress users with great landing page.
- Only keep good & memorable photos. Clean up the rest. Sort into albums.
- Don't over edit photos & share freely.
- Keep email inbox close to 0 at all times.
- Pin emails that need attention.
- Archive important emails accordingly. Delete the rest.
- Filter incoming emails. Separate personal emails from the rest (newsletters/other).
- Version control all projects. Commit often. Squash branches into one good commit.
- Respect existing git workflow of projects.
- Prefix branch names with
fix/
orfeat/
appropriately.
- Add appropriate topics to each repo (languages used, problem space, ..)
- Use relative links instead of hard wired links (ie
../issues/
refers to issues of repo). - Don't append
#readme
to GitHub repos that are not curated lists or simple readmes.
- Use HTML for rendering images if control of size or position is needed.
- Add appropriate quote to briefly describe the repo (often is the same as description but with links).
- If README is long enough, add a Contents reference table.
- Add a way to visually show the project if possible.
- Add Related section linking to similar projects if possible.
- Treat wiki as my digital brain. Share everything I know or need to reference. Reflect on my life.
- Have unified structure for all pages.
- Interlink pages to guide the reader.
- Don't repeat myself. Link. Keep files lowercased.
- Only keep links that are private in bookmarks. Everything else is shared either in wiki or curated lists.
- Temporary shares with Transfer. Permanent with Dropbox. Can use jsDelivr to link to GitHub raw files.
- Meet new people. Go to seminars, talks, conferences.
- Respect my time. If going on dates or meeting people, make it worthwhile or not go at all.
- Use same profile picture across all social networks & websites.
- Use descriptives lowercased names for external triggers.
- Upload all non personal snippets as Gists.
- Create smart groups for new prefixes I add.
- Add correct language syntax to every snippet.
- Only have tasks I need to get done Today in
Today
. Important tasks are stored inStarred
sorted by priority. KeepToday
list manageable (< 15 tasks). - All tasks need to be actionable.
- Work on tasks based on priority. Strive to keep
Starred
list close to 0. - Add context of task as tags.
- When posting an error or an issue, give as much relevant information as I can to help debug it.
- When asking for feedback, never ask people if they like the product I built. Ask them whether they don't like anything instead.
- Welcome any feedback. The more critical feedback, the better. Internalize all useful feedback, make it actionable.
- Make notes as I read books & papers.
- Review read books on Goodreads & add it to wiki.
- Star articles I liked on Reeder. Transfer likes to wiki later.
- License OSS code under MIT or Apache 2.0.
- License curated lists and everything else under CC0.
- Only run software I need. Quit everything else or delete entirely.
- Have full control over what is going on my OS to reasonable degree.
- Yellow arrows & text is nicer to read when annotating images.
- Don't play games on mac/iOS.
- Automate backups.
- Order of importance for cards: Watching -> Next -> No label.
- Buy transport (plane/train) & accommodation for future events/conferences/travels as soon as possible (when I am sure I am attending event/place).
- Proof check dates before buying tickets. Don't prepare large liquids (> 100ml) in planes.
- Check in online as early as possible.
- Link to a page where people can get the slide deck + recording of talk given after giving any talk/presentation as a final slide. Can reuse the final slide for all talks.