Hacker News new | past | comments | ask | show | jobs | submit login
Rules of a Zen Programmer (grobmeier.de)
67 points by atrniv on May 5, 2013 | hide | past | favorite | 20 comments



I think these rules miss the point of Zen. The primary teaching isn't about achieving spiritual perfection by embodying absolute states of mind. It is about finding a middle road between two extremes. For example, although a gigantic ego makes it difficult to cooperate with others, it would not be possible to survive without an ego. The middle road is to find the connection between your ego and the egos of other people. If you think you are selfless and have no ego, the paradox is that you probably have a gigantic ego, because your identity is invested in being spiritually pure.

The stuff about "shut up", "stop crying", "there is nothing special about you", and "NEVER stay at a company which does take away the happiness in your life" is similarly unhelpful. Zen teaches us that working with emotions is often more effective than working with thoughts, so if you're crying, that's probably important. In terms of being special, a snowflake is both unique and highly similar to all the others at the same time. It's abusive to focus only on the similarity. And if a company is taking away your "happiness", there's a reasonably good chance that it's an opportunity for you to learn something about yourself before you run away from the situation.


Agree with a lot of points and appreciate someone writing it down. Way back in the days, I used to be a pencil and paper type programmer; there used to be very little distractions like social networks or even an online help systems.

As a result, I still have a more comprehensive knowledge of the standard library of a language or the instruction set of a microprocessor. Today, my learning is very need based. While programming, I cherry pick the information I need based on Google searches.

This leaves me extremely dependent on externalities and am faced with too many distractions. Maybe, I need to learn to tune everything else out and focus more.


>Maybe, I need to learn to tune everything else out and focus more.

I spend every day practicing, and completely failing at this art. I've come to accept that I cannot ignore things that are going on around me. I cannot choose to focus on something.

I've only being on this planet 25 years, that's not a hell of allot of time, but in this area I can say I have experience. If you want to focus, change your environment. You cannot learn to tune something out. At least, I know I can't.


I think learning to focus and tune certain things out is a skill like any other, that anyone can learn to a degree. Admittedly I haven't made much progress here either, but I think that with practice it becomes easier.

That said, I wholeheartedly agree with your idea about changing your environment. This is the single easiest thing I've found that helps me focus. Of course, there's always still the rest of the Internet...


I end up adding known distractions that I can (mostly) do without to my system hosts list and then if I need to use them, I have them on a phone/tablet I will find more annoying to use for a longer time period, thus limiting my time and desire to use them. There's browser extensions that accomplish the same thing of course, but the hosts list takes a few more steps to circumvent.


I agree, I feel that the average productivity of a programmer before the dawn of social networking and Facebook was much higher than it is today.


I don't think I'll ever forget the 7-day Zen meditation retreat when word had gotten out that I was good with computers, so instead of digging in the garden or peeling potatoes, I spent my work period scraping their old members' registry page into Excel with some Emacs macros and a Ruby script. That evening's zazen had a lot of distracting thoughts about refactoring and extensibility. Back to the practice... Just breathing... Hmm, maybe I could make a convenient web service out of it...


As someone who also meditates this made me laugh! Sometimes I find coding and meditation to be complementary, other times not really!


More and more advice on being a better programmer comes down to being a better, more focused person.


I recently made a switch from an advertising agency (where I was working on many different website for as many different clients) to a product company where I just work on a single aspect of a single product that has been in development for many years.

We use scrum and I find that the environment and this particular way of programming in a team has made an incredible difference in my ability to focus on a single task. What I mean to say by this, is that sometimes (and for some people) it may help to you change your surroundings if you have trouble with focus.


> Like for example manually copy/pasting stuff from your managers Excel sheet into phpmyadmin. This can take you days, and it is really boring. You cannot always quit your job when you got a boring task.

As valuable as accepting inevitable boring tasks is, that seems to leave you not much room to want to automate the task. Does anyone have something deep to say about simultaneously being accepting of your circumstances and seeking ways to improve them?


There is nothing wrong with completing tasks the most efficient way possible.

In this case, the copy/paste action was just the most boring task I could imagine. Please replace this phrase with "a boring task you cannot escape at best will". It's not really about Excel to phpMyAdmin.

I actually have seen a guy doing something like this before years. Thats why it came to my mind. This guy was not a competent programmer. I should have used a different example maybe. But it is not so easy to find a "boring task" which cannot be automated in todays dev world.

Disclaimer: maybe nothing "deep to say", but this is the story which came to my mind, when I wrote the post. In my opinion, Zen has nothing to do with fatalism as might be understood with this example. Go ahead, make things better. I am thinking about replacing this example, because it came back to me several times now.

In any case, thank you for taking the time reading it and asking this question.


The only insight I have is that doing so is a balanced, middle road response (left road is accept everything, right road is change everything). The Serenity Prayer captures this attitude:

http://www.cptryon.org/prayer/special/serenity.html

if you can get over the pronouns.


> Was there ever a software build twice, the same way? Even if you copy software it is somehow different.

Only a German could write this. And yes, that's a compliment. (oh, and sorry about the shallow generalism, but that's ok when it's a compliment, right?)


I don't think that argument would stand with any of my previous teachers/professors. But, I would have loved to see someone use that line back at school.


what makes this characteristically german?


Warning: generalizations and prejudice ahead.

The first sentence because it sounds so simple but is in fact deeply philosophical. Walk around in Germany and talk to people, and keep tabs on how often you hear seemingly simple "by the way" lines that could be considered lovely life wisdoms in their own right.

The second sentence because Germany, for me, is a country of culture, activism and the Piratenpartei (1). Copying something, sec, is basically the definition of not changing it. Saying that it is a change supports the ideas of freedom of culture, sharing, the kopimi movement, and so on. "Hey, it's a copy, so that's kind of like a remix, right?". Other than that, the sentence suggests that a thing isn't really anything at all when seen apart from its context, so copying something indeed very much changes it. That, again, is one such beautifully deep observation said in such a casual way. tab, tab.

Finally, if you read it all aloud it just sounds weird. Until you read it with a German accent. It sounds great with a German accent.

Full disclosure: I'm Dutch. The Dutch were once found, in a survey from the German exterior ministry, to be the people most fond of Germans of all countries neighbouring Germany (lost reference, but not making this up). I'm also very fond of schnitzel and currywurst.

(1) I know the Swedes started it, but that's besides the point. Germany is also the country where 4chan users actually go outside, wearing Guy Fawkes masks, to hand out flyers against Scientology. 4chan users. Outside.

Deeply believing in something and standing for it is very common in Germany.


I am the author of the blog post. Thank you very much, I take it as a huge compliment.

I am not sure if what you said is to be generalized. I am afraid, the image of germany being a deeply philosophical nation of thinkers cannot stand at detailled observation.

But I can say, two things:

First, I try to write short sentences which are straight. My english skills are OK in conversations, but I am far from being a great writer. It takes me a lot of time to write, and almost in every sentence you can hear the german in me. Maybe this creates a specific atmosphere in what I write. But I cannot judge this.

Second, I am studying psychology and thus have to read a lot of philosophical and cultural text. I enjoy it very much and try to learn about cultural aspect as much as possible. I am also a Zen buddhist in real life (not only saying in the post) and learn a lot from my teachers. It all makes me think.

It honors me that you attribute the deep thinking in what I wrote. Again, thank you very much for your comment, it makes me feel good.


thanks for explaining

full disclosure, i live in germany and can't arrive at an essential characterisation of the people here





Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: