Meanwhile a lot of time went by, I'm almost 40, and I have worked at 8-10 companies (incl. FAANG, my own startup). His later advice, from the book "Deep Work", was not in line with my work experience . The problem is, Cal doesn't have a regular 9-5 job as a tech worker, at a tech company. He's in academia (and self-employed), which is very different --- I know, I also worked in academia! And this shows.
For example, I was reading his book Deep Work while I was at Facebook, where the whole company is on Workplace/Workchat internally, with frequent notification/mention/chat interrupts, and the culture is to have quick response times. So no Deep Work, yet velocity and productivity is very high. It's not true that you need a lot of focused time to get things done, you can manage it in smaller chunks. It'd be convenient, but it's not realistic.
Reflecting on this article, in my experience, the key thing to focus on for companies is not personal productivity but team organization. The topline differentiator between high-velocity and high-productivity organizations versus the rest is that these are a collection of self-sufficient cross-functional product teams. The rest, which is most organizations, usually run "projects" instead of products, and multiple departments and teams, with different reporting lines, goals, OKRs/KPIs, etc. are exptected to work together to make it happen --- the result is the organization becomes one big waiting/blocking graph, with 80% of projects being blocked at any given time. This also makes personal productivity harder, because more "sync" and "alignment" type email threads and meetings are needed. In this model people have to work with more people they don't know/trust, so more people are communicating with each other who don't know how to communicate with each other, they may not even know the other person's exact job description or timezone location.
Having said that, I appreciate Cal's perspective, and I'm happy to support him by buying his books.
I applied this way of working to how I approached studying for software engineering and it helped me tremendously. I was able to pick up difficult solutions quite quickly without spending huge amounts of time studying. I've continued to use this way of working over the last couple of years, which has helped me perform well at work + on side projects.
During this time, I had no way to track my deep work hours or what I was getting done in those sessions. This allows you to do just that. You can think of it like Google Analytics for your Deep Work time.
It's in the early stages now, but I'm in the process of adding essential features.
I read Cal Newport's Deep Work (https://www.amazon.com/Deep-Work-Focused-Success-Distracted/...), which explains how to work in a way that maximizes your output. In short, he recommends spending short periods of time hyper-focused on difficult problems with absolutely no distractions.
Thanks for such a large feedback. The "zone" for me is the time when you focus on one problem. No distractions. You will know when you was "in the zone" when 4 hours passed like 10 mins. :)
There is one book I can recommend - DeepWork ( https://www.amazon.com/Deep-Work-Focused-Success-Distracted/dp/1455586692 )
TOTALLY AGREE WITH WRITE A LOT OF CODE!!
Yes, I learned Java this way and am also learning VBA this way. Have you read "Deep Work" by Cal Newport by chance? I used this method you describe to acquire technical skills and have been surprised by how effective it is. In the past month, I've learned enough HTML/CSS, VBA and Java to make a website at work, write some simple scripts to automate Excel work and am still learning the foundations of Java, but I can also make simple apps with it.
and Deep work https://www.amazon.com/Deep-Work-Focused-Success-Distracted/dp/1455586692
Both of these books are in sync with what you said in your post, and what you wrote is true.
Reading books of course, it will greatly improve your ability to focus which has been really harmed by internet surfing. You may also work on improving some marketable skills, like programming, graphics design, etc., whatever you choose. To dive more into those topics I recommend you to read Cal Newport's books, especially Deep Work and Digital Minimalism, he also has interesting blog: calnewport.com/blog, old posts touch this topic in more depth. Another book that I would like to recommend you is The Shallows: What the Internet Is Doing to Our Brains which will show you how damaging internet can be.
Cal Newport says we all need to learn how to do "deep work."
I'm lucky enough to be work remotely with most of my colleagues in the US (I'm based in the Philippines), so I have a lot of control over my interruptions and can get a lot of work done in the morning while everyone else sleeps.
However, every time I get back into a deep work routine, I get distracted while waiting for builds to build, tests to run, etc. Sometimes it can just be 1 - 10 minutes, and in that time I can find myself on HN, instincively checking twitter or my email, and getting completely out of the flow.
For example, right now I'm waiting for a rather large Dockerfile to build and decided to write this post. I normally struggle the most when I have to do DevOps tasks (e.g. setting up CI pipelines, waiting for terraform to deploy only to tear down a deployment again).
Does anyone have advice for how to maintain a deep work "flow state" while waiting for random amounts of time? What do you do to maintain your focus?
Don't follow your passion. Instead, become really good at something. Apply methodical approach to improve your craft skills. Once you got mastery, you might actually like it.
 https://www.amazon.com/Deep-Work-Focused-Success-Distracted/...edit: formatting
I used Newport's recommendations to reclaim 4+ solid hours of deep focus and it's had a tremendous impact on my productivity and general quality of life.
Here are a few strategies I found successful:
* Create a TODO list each day and separate tasks into shallow and deep categories
* Block off each hour of the day and and fill it with one of the TODO items
* Restrict shallow work to 2 hours (after 2 hours, say no to everything shallow)
* Create a scorecard and track the number of deep hours each day (this number should increase)
* Experiment with Newport's recommendations for two weeks and see which ones increase your deep hours
* Become comfortable saying no
That said, task switching is a practical reality, so coping strategies are important, too.
For help with that, check out Cal Newport's "Deep Work: Rules for Focused Success in a Distracted World" (https://www.amazon.com/Deep-Work-Focused-Success-Distracted/...). Full disclosure: He and I share a literary agent.
While following the advice in the book did push my productivity up, sadly I didn't manage to keep up those habits. But it does appear to work, just need to make the right adjustments to make it easier to follow.
As the author points out, we've forgotten how to be bored. We need to learn to engage that part of our brain again.