Notes and observations on how to learn things faster and more effectively
As developers and software engineers, we are destined to face a common destiny: we need to learn for the rest of our lives.
10 to 15 years ago, you must understand Java and JSP, Servlet and Tomcat to be among the top of the industry. Maybe by then you learned about Objective-C and all the knowledge about Cocoa Touch, because mobile applications are a new trend, and, honestly, it's really exciting! Now, everything has to do with React and modern JavaScript-JavaScript from 3 years ago is no longer JavaScript-it's old JavaScript. As a system developer, C++ then Go, then Rust? What about Haskell and Elixir?
Significant changes occur in trends and the job market every few years.
I like to study. Knowing that there are some new things that we can apply in this industry, as a programmer, everything you learn will become a tool in your tool library and provide a huge help to your career .
In this article, I want to discuss things to do to learn faster and more effectively.
Procrastination
Procrastination is your enemy. It can take many forms, such as watching Netflix or just browsing Reddit. It can also take the following forms: shallow work, unimportant small tasks, none of which is really worth doing. Except that they make you feel productive, while keeping you away from the real deal: learning new things.
How can you overcome procrastination? You need to be trained. One way, so just start like this. For example, one way for writers to force themselves to write is to concentrate on writing 200 words a day. Once you start writing and reach the end of those 200 words, you may move on now. You focus on the process, the system, not the result. You can also write 200 la-foot words until you enter the "area", and then write 5,000 words at the "company" magazine level.
Management distraction
We need any help that can overcome the procrastination. One thing I want to do is to use a macOS app called SelfControl and a Chrome extension called Block Site. I will block all social media that is not related to work and all news sites I visit. I need to use an iPad or mobile phone to watch.
Manage your time
Another method is to block time. The Pomodoro technique is very helpful in this regard: it is just a way to work for 25 minutes and rest for 5 minutes. You can adjust the time according to your own preferences, but the main advantage is that you can set a working time and rest time for yourself. However, I cannot stand the fixed nature of this technology. I refused to do any rigid work around my work, but I did something similar. I only write when I am inspired. If I am not inspired, I would not sit at my desk.
Divide and conquer
I live by studying and then by teaching. For example, next month, I will delve into GraphQL and conduct related courses. This is great for me because I am always learning new things. Of course, there is no shortage of things to learn. For those who take one of my courses, this is also a great benefit: I start from their starting point, so I don’t fall into the trap that experts fall into, just make assumptions and create some resources for the wrong audience. can. I like.
However, this presents a challenge: how can I learn fast enough? I work in blocks. I chose a topic, took a few courses, read as many books as possible, and then tried to come up with the entire list of arguments. That will become the index of e-books. Then, I started writing each block independently. I have printed a list and every day I choose 1, 2 or more topics that I want to learn and write about. Following the mood will make things easier. In addition, if I don’t want to do this one day, I will skip this day and return to a fresh place tomorrow, ready to start rolling.
Dividing a big theme into multiple parts is more user-friendly and manageable. If I have to process 1 block every day, then at the end of the month, my workload will be very large. Each of them is part of the big picture, and what I want to do is to visualize the big picture. Each part is a blog post, and I understand the big picture by creating an e-book.
I really encourage anyone to adopt my method and try to explain what they have learned right away. If you are new to this topic, don’t worry, you always have your own opinions on this topic.
Learn from books
Another topic worth discussing is reading. I have many booksmiss youreading. My books app is full of great books that I have never read. I read a lot of books, a lot of great books. Many times, I will be inspired by a book, but after a month or so, I forgot what I had read there. How do you remember what you learned?
This is my technique. Whether reading with a Kindle or iPad, or holding an actual book in my hand, I will highlight all the main concepts and things I want to remember.
However, the underlying content I want to remember is not enough.
After reading the book, I will only read the highlighted content to re-read it, and at the same time, I will summarize the book. Privately, but I also started posting this content, like I didDeep workbook.
Not only did I affirm these concepts in my mind, but I did write them (a great help). Now that I have reference materials, I can look back and see what I learned from the book.
Or maybe I just want to write what I learned from a chapter or paragraph and expand it with my perspective. That's also great.
Use what i learned
When learning a programming language or framework, the best way is to use it to create projects. Auxiliary projects are particularly useful for this, because you don't need to fully grasp the design patterns for enterprises, but you can learn as you want. You can scale the architecture 100% without just learning a few things. Paralyzed. Interesting projects are also great. I like to work on platforms that make entertainment the first class, for exampleglitch.
You can also make games or publish mini products on Product Hunt like many people do. This is a great way to give you adrenaline and push the necessary effort to redouble your efforts and perfect something so that people can see and use it instead of sitting on the hard drive for three days that is completely useless or forgotten hard disk.
rest
Taking a break is very important. Definitely moreHumanitySpend 1 hour a day for 2 weeks instead of 12 hours a day. Every night, your brain has a chance to think about what you have learned. I find that is better. Maybe you can alternate 1 hour of reading time with 1 hour of podcast listening or hands-on projects.
Also, when you are stuck on something, do not spend 3 hours on it. Take a walk. take a short nap. Run outside. Do other things and come back. I cannot count the number of times I wake up the next day after preparing the solution.
Or the famous solution is waiting for you in the shower, or when you are walking your dog in the woods. It’s amazing how many times your ideas don’t show up when you work.
More experimental tutorials:
- The stack I use to run this blog
- 8 good reasons to become a software developer
- SEO for blogging developers
- Recalling "4-Hour Work Week"
- Build a lifestyle business
- Build your own platform
- As an independent manufacturer, which product should you manufacture?
- Create your own job security
- Developers, learning marketing
- Product business freedom
- Generate value
- For your business
- The idea is nothing
- Niche Market
- Remote work for software developers
- Product/market fit
- The best podcasts for front-end developers
- Why create an email list?
- Break the link between time and money
- The scarcity principle applies to software products
- Social proof principle
- How do I add dark mode to my website
- My notes on Deep Work
- Advantages of using a boring stack
- How to estimate programming time
- Become an independent developer
- How to learn how to learn
- Why are interview questions for programming jobs so difficult?
- Do I need a degree to become a programmer?
- Everyone can learn programming
- How to increase productivity
- How to get the actual pageviews of static websites
- Have you filled the developer’s bucket today?
- How do i record my video
- All the software projects I have done in the past
- Tutorial Purgatory from the Perspective of Tutorial Makers
- Every developer should have a blog. This is why and how to stick to it
- Have the business mindset of a developer
- How to write unmaintainable code
- What is imposter syndrome
- How to work from home without going crazy
- How can I stop worrying and learn to love the JavaScript ecosystem
- How do I make a web prototype
- You should be the worst developer on the team
- How to start a blog with Hugo
- Write things you don't know
- How to use uBlock Origin to stop interference
- Coding is an art
- I wrote a blog post every day for two consecutive years. Here are 5 things I learned from SEO
- Put out the fire
- About becoming a generalist
- The developer's dilemma
- My plan for being hired as a Go developer. In 2017
- Use Mac and iOS devices to improve work efficiency
- How to move from the tutorial to your own project
- This is my little digital garden
- How to start freelancing as a developer
- Share the journey of building a software product business
- Subfolders and subdomains
- How can I use text extensions to save time
- Software is superpower
- I like books
- How do I decide to create a new project management application