I think programming is great, it's people that are terrible.
People write horrible APIs and document them poorly (ugh, Microsoft's SetupAPI put me into burnout mode last year).
People make demands of the programmer but kick and scream about clearly documenting those demands (specifications).
People don't appreciate and thank the programmer for his hard work. Managers and owners are suspicious and resent the programmer for not being grateful simply to receive a paycheck.
Other programmers think the programmer is an idiot for asking a question, thinking that every other programmer must know everything I know.
Yeah, it's been my experience that people make programming awful. If you can surround yourself with good people and the products of good people, you'll probably be a lot happier. I can't advise on how to find that nirvana, unfortunately.
Neither "beauty" nor "shittiness" are part of how things objectively are, but rather things we project onto the world by how we relate to it. Why not, when given the choice, project the former?
> Nothing is more important than that you see and love the beauty that is right in front of you, or else you will have no defense against the ugliness that will hem you in and come at you in so many ways.
Love the article. I'm a university student, bored with the lab and into coding SSRS reports as a job. Luckily, I enjoy my work, constantly fighting the SQL queries and arranging the datasets in ever complex fashions the client needs, or decide they want to change drastically.
I found though that my enjoyment in code is I like the challenges I face, not how I got there. I have tools in front of me, that may be good or may be bad, but it doesn't matter. Using these tools, learning some tricks, or asking (even helping) others is what I find enjoyable. I enjoy the code because I challenge myself. A client will give me a new task, but ultimately it's me who has accepted it. Make the best of it.
Programming can be art, but only extremely rarely is work programming also art programming. Even when you have the best of tools at your disposal, even when you're working with the best people and the most reasonable clients, you're still solving business requirements, not freeflowing into a design that just jumped into your mind a few seconds ago in a flash of inspiration. Solving business requirements should not, cannot be art. It should be robust and maintainable and boring. If you keep art programming and business programming separate then you'll inevitably find that one or the other does not agree with you.
Just a small remark about the analogy with Wabi-Sabi:
"I came to know that programming (websites in particular) was not about creating an end product, a final perfect form. It is a journey of discovery and solution finding. I embraced Wabi-sabi; the idea of the imperfection and incompleteness."
It's actually very hard to achieve Wabi-Sabi in craft - it takes skill and observation to make it look genuine.
So it's not imperfect in the sense of "let's wing it"; but more about imperfection being the ultimate aesthetic because that's the nature of things.
Programming is only a tool to create something. If the thing that we are working on is shitty - then yes, programming is terrible. These texts are related to the web programing which usually is horrible.
Leave the world better than you found it. Amongst the madness of silly business requirements and broken APIs, there are always opportunities for your code to stand out as a small piece of beauty to your fellow developers.
[+] [-] was_hellbanned|11 years ago|reply
People write horrible APIs and document them poorly (ugh, Microsoft's SetupAPI put me into burnout mode last year).
People make demands of the programmer but kick and scream about clearly documenting those demands (specifications).
People don't appreciate and thank the programmer for his hard work. Managers and owners are suspicious and resent the programmer for not being grateful simply to receive a paycheck.
Other programmers think the programmer is an idiot for asking a question, thinking that every other programmer must know everything I know.
Yeah, it's been my experience that people make programming awful. If you can surround yourself with good people and the products of good people, you'll probably be a lot happier. I can't advise on how to find that nirvana, unfortunately.
[+] [-] kphild|11 years ago|reply
[+] [-] maxander|11 years ago|reply
[+] [-] lcedp|11 years ago|reply
> Nothing is more important than that you see and love the beauty that is right in front of you, or else you will have no defense against the ugliness that will hem you in and come at you in so many ways.
[+] [-] unimpressive|11 years ago|reply
[+] [-] aperture|11 years ago|reply
I found though that my enjoyment in code is I like the challenges I face, not how I got there. I have tools in front of me, that may be good or may be bad, but it doesn't matter. Using these tools, learning some tricks, or asking (even helping) others is what I find enjoyable. I enjoy the code because I challenge myself. A client will give me a new task, but ultimately it's me who has accepted it. Make the best of it.
[+] [-] rheide|11 years ago|reply
[+] [-] hcarvalhoalves|11 years ago|reply
"I came to know that programming (websites in particular) was not about creating an end product, a final perfect form. It is a journey of discovery and solution finding. I embraced Wabi-sabi; the idea of the imperfection and incompleteness."
It's actually very hard to achieve Wabi-Sabi in craft - it takes skill and observation to make it look genuine.
So it's not imperfect in the sense of "let's wing it"; but more about imperfection being the ultimate aesthetic because that's the nature of things.
[+] [-] vojant|11 years ago|reply
[+] [-] CmonDev|11 years ago|reply
I recommend stopping immediately and going through a 6 month of therapeutic Scala/F#-only development.
[+] [-] 0xdeadbeefbabe|11 years ago|reply
[+] [-] seanconaty|11 years ago|reply
[+] [-] nevster|11 years ago|reply
[+] [-] CmonDev|11 years ago|reply