Programmer's Bill of Rights


 

Programmer's Bill of Rights

Original source:  Jeff Atwood    translation source:  Lu Qiming . Welcome to the Technical Translation Team .

" You have to fight for the rights that programmers deserve! And remember: you can make the company change, or you will change the company."

It's unbelievable to me that a company is willing to pay a developer $60,000-$100,000 and then ruin him with poor working conditions and broken hardware. Either way, the deal isn't worth it at all. However, I see things like this all the time. It's shocking how many companies still fail to provide the necessary foundations for software developers to succeed.

I propose that we should have a Bill of Rights for programmers to prevent companies from denying programmers the foundational conditions they need to be successful, ultimately protecting programmers' rights.

20140125200436062

Translator's Note: The Bill of Rights, also translated as The Bill of Rights, refers to the First to Tenth Amendments to the U.S. Constitution. The Bill of Rights includes freedoms and rights of speech, the press, religion and assembly. The Bill of Rights also assures the American people that the rights listed in the bill are not all the rights that the American people can enjoy, but only the most important rights that the people have.

1. Every programmer should have two monitors

With LCD prices plummeting and dual-output graphics cards so common, you'd be crazy to limit your developers to just one screen. The productivity gains that can be achieved by doubling the size of a computer desktop have been well documented. If you want to maximize developer productivity, make sure each developer has two monitors.

2. Every programmer should have a fast computer

Programmers have to run a lot of software to do their jobs: development environments, database engines, web servers, virtual machines, and so on. Running all this software requires a fast computer with lots of RAM. The faster a programmer's computer is, the shorter the cycle they have to compile and debug each time. I'm not asking you to be an "enthusiast" and spend sky-high prices on the latest and greatest specs - but you have to keep up with the high specs. Equip your developers with fast computers with lots of RAM. Staring at the progress bar and waiting is a waste!

3. Every programmer should choose their own mouse and keyboard

In college, I ran a valet paint business. Every painter I hire needs to buy their own brushes. This is one of my early experiences. Throwing a standard brush to a new painter won't work. Unloved, these "company standard" brushes can quickly degenerate into a dire condition. But painters who buy their own brushes treasure their brushes. They appreciate the difference between professional brushes that cost $20 and those disposable brushes bought at the dollar store. Owning their own brushes gives them a lasting sense of responsibility and craftsmanship. Programmers should have the same relationship with their mice and keyboards - they are the most basic everyday tools we use to practice our craft, and we should treat them well.

4. Every programmer should have a comfortable chair

Don't underestimate this issue! For the most part, we make a living by sitting on our butts for 8 hours a day. Why not spend those 8 hours in a comfortable, well-designed chair? It takes 8 hours to sit, it's not enough to just give programmers a decent chair, it's to make them sit happily! Of course, you hire programmers mainly for their smart heads, but don't forget to take care of their other vital parts.

5. Every programmer should have fast internet access

As long as anything can be "stealed", a good programmer will never write it himself. The internet is the best place ever to "steal" things. I'm all for "reading 10,000 books," but it's hard to imagine that I'd still be able to do my job properly without a quick-response internet search and not being able to find what I'm looking for at my fingertips.

6. Every programmer should have a quiet work environment

Programming requires full concentration. Programmers cannot be productive in a noisy environment. Make sure your work environment protects programmers' "flow" state, otherwise their precious time will be consumed by distractions.

Translator's Note: The psychologist Mihaly Csikszentmihalyi defines flow as a feeling of devoting one's mental energy to an activity; flow occurs with a high degree of excitement and fulfillment.

The basic rights we demand are easily attainable. These requirements are not excessive, but they play a key role in the quality of a software developer's work life. If your company isn't doing this well, improve it, it doesn't require a lot of capital and it's not hard to do. As a programmer, you have to fight for your due rights! And remember: you can get companies to make changes, or you'll change companies.

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326645739&siteId=291194637