Show HN: Block yourself from the Internet until you write or code each day
blockr.me
blockr.me
If not, then maybe you're working on the wrong thing.
Let's stop treating the effect of poor work habits and deal with the cause: find something better to work on.
[EDIT: I'd stay and reply to your great responses guys, but I'm not here anymore. As compelling as this discussion is, the real-time CRUD/robot interface I'm writing is way cooler.]
Secondly, not everyone has the ability to get kickstarted each day to 100% productivity. You're very lucky if you do but I don't. I use Focus Booster and it helps but isn't a cure.
I just wanted something to slow me down each morning and bring the focus back to producing. I also have it block me at about 6pm so I have to reflect on my day before going home and reading articles.
Realization - it seemed like trying to shut your eyes when there are lot of pretty girls in the town. It requires lot of mental training for self-control. Still trying.
Imagine what the Reddit developers had to deal with.
Oh yeah, and it's a link to the people I love and care about as well...
If what you're working on is important enough and you love it enough, you can afford a second desktop/laptop/tablet/smartphone that is designated "work only" and so offers fewer distractions than your primary device.
We all want to believe that working on projects we love will keep us going nonstop for 18 hour days. Please, avoid the cognitive dissonance if you fail to live up to this unrealistic idealism, and give yourself just a modicum of slack. Don't burnout because of the unrealistic unbalanced life of the stereotypical startup guy you feel like you have to become.
If something's not working, catch yourself, correct, and move on. If it is working and you're working hard and moving forward despite your flawed humanity, then don't worry about it. No need to be overly critical or absolutist about it.
That's why it's called work.
So the problem is not working on the 1%, that part is fun, interesting... is the 99% that some of us need help with.
It's okay though — I'm sure if you had realized that, you wouldn't have posted it.
Incorrect. The more important it is, and the more I love it, the more anxious I become. The more anxious I become, the more distractible I am.
Am I the only person who, if not for the need to support my family, might blissfully while away his days playing games, playing with new tech, reading, watching TV or movies, and just generally goofing off? Maybe I'd regret my wasted life one day, but in the here and now there's a lot of fun to be had in the world today.
I love to code, but shipping is a lot harder, and running a whole business based on that code is harder still, of course. But from reading comments like the parent on HN, there are people who would make whole _products_, or build businesses all day long if left to their own devices.
I can't tell if I was just raised differently from other people such that I am predisposed to value, say, instant gratification and to avoid hard work; or if everyone else is just ignoring these parts of their nature and not talking about the fact that getting drunk with your friends is more fun and a lot easier than following through a product idea from concept to completion.
Note that raising kids is a very substantial activity. I've taken the summer off to hang out with my brother and his family. Even a lot of the nominally fun time with kids means I'm helping educate, build character, and encourage good habits. So maybe the energy you would otherwise put into making a product is going into making a family.
people forget this.
Without ambition driving you, it's pretty difficult to motivate yourself past the point where the project you're working on stops being interesting, and just seems like a lot of work. That said, some people do seem to be able to make this initial phase last long enough to crank out impressive projects. Outside of that though, if you're happy with your life right now, you might just be running a little short on the motivation necessary to "build businesses all day long".
Personally, I think you're confusing important with easy. When I find a video game I like, I can play it for hours. But that's because it has been optimized for playability. But when writing or coding, sometimes I get frustrated. What I'm going may be important, but it isn't always easy, and that's when distraction will strike.
How do you get stuff done? Code every day. Fix a small problem, big problem, whatever. Just take steps forward every day.
It's how I got http://reme.me off the ground. I do something every day. In a couple short months I built the API, site, iPhone, and Android apps all by myself. I only get an hour or two a day maybe to get stuff done, so I just try and do something.
Lately I've been giving myself a list of tasks and either a week or two deadline to hit a "release", but really, that doesn't get stuff done. Just coding something each day does.
Paint every day.
Essentially, he/she is saying that persistence is the key to completing the task, and that is true regardless of whether the task is enjoyable or not. Pound away, day after day, each and every day, and it will get done.
However, adding a rewards/gamification system is not a bad idea at all. I like StayFocusd but I end up filling my time otherwise if I don't have a hard deadline. Having goals to reach is a great incentive, enough to keep me focused without a plugin. But the plugin provides a basic physical deterrent effect which sometimes alone can be enough
Sometimes we all have to do things we don't want to do. This includes, at times, working on your own project. There's nothing wrong with you, or what you're working on, if you actively try to limit your distractions.
If your project is so awesome you never get distracted, good for you. Kindly, take your hubris elsewhere.
Edit: By this I mean it would be preferable if I can leave some sites up, like SO for instance.
It is not really that hard, I think it is just a culture shock for some to not have the Internet nearby. It was for me.
127.0.0.1 news.ycombinator.com
127.0.0.1 reddit.com
127.0.0.1 twitter.com
etc
A shell script to rename the regular hosts file and this one at will. Add it in cron if you want it scheduled.E.g., I don't keep cookies in the house. Instead, I go to the store if I want some. It's pretty rare that I'll overcome my laziness enough to head out for them. And then on the way I often come to my senses.
In this case, I might make it harder to edit the hosts file. E.g., a daemon that puts the block back automatically unless I solve 25 captchas.
I also really like LeechBlock's option to insert a 30-second pause before viewing banned websites. Since it cancels the countdown if the window loses focus, I have to just sit and wait for half a minute. 90% of the time I'll say, "But I don't even want to look at Facebook now," close the window, and get back to what I want to be doing.
If you're serious about blocking yourself from parts of the Internet, do it comprehensively. Here's what I do.
Most of the advice on this page is blocking from the browser-level or OS-level. This is easy to bypass, and you have to configure every device. You need to work at the router-level.
Let's talk blocking. A complete blacklist is wrong, you still need some Internet to Google or ask for help. e.g. stackoverflow.com, etc. Similarly, whitelists don't work because you can't possibly list every site you may need access to -- you may not know they exist yet. You need a keyword-matching blacklist.
You need two things:
1. WRT54GL router ($20-$50) 2. Tomato firmware: http://www.polarcloud.com/tomato/
Vendor firmware usually has access restrictions, but they usually limit it to like 10 websites, and it usually doesn't have pattern-matching. You need a 3rd party firmware like Tomato.
Install the firmware per instructions from its website. It's really easy. The firmware has a page called "Access Restrictions". It does keyword blacklists/whitelists. You can block yourself for only certain hours of certain days. Here is an easy video tutorial from their website to guide you: http://www.polarcloud.com/v/screst.htm
For example, one keyword I use is "news". BAM! All URLs with the word "news" instantly blocked. Good. I don't need to be reading news when I should be coding. Resources like stackoverflow.com don't usually put "news" in their URLs, so they're safe.
There is the problem of unplugging the uplink from the router and directly into your computer (bypassing the router), or simply reconfiguring the router without restrictions. If you lack that much self-control, which I can understand (as I do too!!!), I recommend locking your router in a electrical enclosure and throwing away the key. Ok, not really. I made a cron job for the router that changes its login password to gibberish at some hour of the day, and X minutes prior it sets it to my normal password. Thus, I have X minutes of access to the router per day, should I need it.
"You write until you come to a place where you still have your juice and know what will happen next and you stop and try to live through until the next day when you hit it again."
I banged off almost 1000 words yesterday and had to shut down because of an oncoming storm. This morning I boot up and my connection is still locked up. My browser is saying I need to type another 1000 words if I want to get Internet. Nice.
I think your app will do well!
If you need this, there's most likely a bigger problem and you probably should be doing something else. Additionally, even if this gets the job done, it's going to piss you off to a large extent.
Lastly, this method is antithetical to coding in general. You most likely NEED the internet to code. Without things like Stack Overflow, you won't be able to solve problems as quickly and your productivity is going to go down.
The work I do is very boring. I do Drupal development for a series of television stations, and I'm not happy with it. But I need this job to pay the bills, so I have to perform well. Once I start coding, I realize my job isn't the worst thing in the world, and I'll get into a good flow. Starting, though, is the hardest part. These self-controlling applications help give me the start I need and don't let me give up so easily.
The only thing that worries me is I have to inspect and trust the code to not do anything with potentially sensitive text. something local would be nice.
The pomodoro technique seems like it would be more effective for motivating you to work since it immediately rewards your efforts with a short break from your tasks.
You configure the websites to block, and when you try to access a blocked site it lets you create a 1, 3, 5 minute window to access the site.
really good for a 5 minute break.
https://chrome.google.com/webstore/detail/fbnpehpbojenlldmfc...
I really enjoy eating, but if I'm caught up in something I don't always remember to do it. Sometimes I'll go hours past my regularly scheduled meal times. Then I'm sitting at my desk wondering (only for a short time) why my stomach hurts. Oh ya, food.
While this is a extreme example, the logic still applies to coding/writing or anything else. Sometimes the tasks you should do are side tracked by other tasks. And if you're deep in thought, you might not have the internal alarm to switch to something more of a priority. Hence external alarms.
But that's just me.
In the process of eating you have access to many choices. You have good food, you have junk food, and you have bad food.
Some people lack self control and discipline so they end up eating more junk food and bad food than good.
Same goes for the process of productivity. You have work, distractions, and hinderances.
If this is what you need to build up a habit of self control, then good for you. If not whatever.
But it also somewhat true. If I love music I would be playing my guitar every single day. Being a rockstar is sometimes both incidental and consequential.
I could have said it simpler by stating that one would be foolish to rely on emotions to schedule his/her day.
The Wikipedia definition is "act of replacing high-priority actions with tasks of lower priority, or doing something from which one derives enjoyment, and thus putting off important tasks to a later time".
This clearly exists, and completely disavowing it with some (semi)feel good idea about how you aren't caring enough, implicitly linking it to low willpower is way too simplistic - and totally not insightful.
My own experience has been that even when I know that the task needs to get done, even when it is enjoyable, it can be hard to get started.
Once started, everything flows as you might expect, as the author says "How many things do I need to shed ... with extreme prejudice in order to singlemindedly focus on this one thing that I love?"
The post also neatly sidesteps the idea that even if you do not care, you may need to get things done.
The attitude probably appeals to some libertarian philosophy/Protestant work ethic, but even those people will freely admit that doing beats wanting to do something -- it's the doing that counts.
If people cannot get themselves to do something, even if they want and care to do it, telling people to care more isn't very helpful, especially when pooh-poohing the very things that work for some people to do what they want to do!
"If that sounds fancy and oversimplified, then you "care" about too many things. Period."
What if you really do not "care" about the things that you are doing while procrastinating? What if you are simply avoiding the anxiety of starting to do what you care about?
There are serious psychological questions here, and this blog post just ignores them all.
I wrote down Merlin's definition of procrastination: procrastination is what happens when you temporarily forget who you are, what you should pay attention to, and what your options are for doing something about it.
Do you need an alarm to remind yourself to play video games? Do you need a "distraction-free gaming environment"?
I rarely play video games, so that isn't the greatest example for me.
I'll present an analogy, though.
One of the long standing examples given of whether knowledge actually applies to actions is smoking. I think we all know that smoking can cause cancer, reduces lifespan, and causes various diseases.
Except that you can invariably see doctors smoking outside of hospitals, even oncologists!
Just saying that outcomes are the only thing that matters to make an evaluation of whether you care about something, or consider something a priority doesn't explain why we can have cognitive dissonance about them.
Your (and the author's) assertions are almost laughably behaviorist, completely neglecting any idea that people have minds and you are effectively arguing that people are reducible solely to action-machines.
We know better than that, unless you really think that the mind has no meaning, or that we are somehow rational machines - in which case, why the obsession with "caring" (which is clearly more emotional than rational)?
Basically, if the only way we can judge that we "care" about something is exhibiting behaviors that show we care, using these tools will exhibit that same behavior -- in which case, what does caring have to do with it?
Really, there is even more wrong with this post than I thought at first blush, and further analysis seems to reveal even more flaws with the thinking.
You might find something like this helps you, but you're not going to find that if you can't do it that this will change that.
Building up on that, you can't control if the next task you have is going to be a tedious or smooth one. If you have a bug, or have to parse a CSV file in your assembly language program, then you just gotta do it. Sometimes there may be a way around it, but most often there isn't. Otherwise, you'd be able to circumvent the whole task in the first place.
You might think you like all ice cream, until someone hands you some anchovies ice cream or something.
It's a refusal to accept this that prevents people from completing tasks -- they hit the inevitable wave of tedium, and they can't grind through it, because they assume anything that's truly edifying will be tedium-free. That's a really dangerous belief.
Now if something is all tedium, then I agree, find something else to do. But there is no project on Earth that won't have frustrating patches where your mind will try to wander.
I do really like fishing and had a goal to do it each day but failed. I'm guessing you think I don't really like fishing after all?
Not trying to threadjack, so if anybody has questions, etc., would love for you to e-mail me directly at charlie@monotask.com.
Other than that issue, great app!