「必读」这是一个什么样的社区? >> Topics >> Coding Style



「必读」这是一个什么样的社区? » Topics » Coding Style

除了代码产出,老板有考虑过你编码时的环境与感受么?

招10万年薪的程序员然后给他用2000块钱的电脑的老板比比皆是。
在一些传统行业,连龙头企业都还在给开发人员使用17寸的显示器,2G内存的PC做开发。
还要求我们能快速开发,尽快上线以获取商业价值?

这种糟糕的环境和项目进度压力下:

  • 我们放弃了对代码质量的追求
  • 我们在编码时完全享受不到创造的乐趣
  • 我们无休止的加班
  • 我们没有时间提高自己的技能
  • 我们的腰椎和颈椎每况愈下
  • 我们年纪轻轻却有一头稀疏的花白头发

正是这种对开发人员的不够尊重,导致了很多因为兴趣走上开发道路的程序员在几年内便转岗或甚至转行。
他们去卖水果,去卖肉夹馍,他们身体好了,钱挣的更多了,但他们真的快乐吗?

但我认识的很多优秀的程序员,他们没有屈服于现状。

要得到别人的尊重,首先要尊重自己

他们知道身体是革命的本钱,因为他们想一辈子快乐地编程。
而且他们懂得时间是最重要的成本,他们知道什么才是回报率最高的投资。

所以他们给自己买:

  • 人体工学椅子 - 保护自己的腰椎
  • 高清大显示器 - 使用多显示器或分屏提高开发效率
  • 机械键盘、电容键盘 - 享受代码从指尖流出的感觉
  • MacBook - 每个程序员都应该使用,一旦拥有、爱不释手
  • 固态硬盘 - 提高文件读写速度,大大提高编译,打包速度
  • 耳机 - 在任何地方旁若无人地工作
  • 效率软件,Alfred、Dash等 - 让你把精力放在真正的编程上而不是翻遍整个硬盘找某个文件,用龟速网络在网络上查文档

他们利用业余时间:

  • 观看编程的视频 - 看高手如何演进代码
  • 刻意练习自己的技能,快捷键、重构、TDD 等 - 不断提升自己的硬实力
  • 参加社区活动,Coding Dojo,Code Retreat 等 - 与高手当面交流
  • 参与开源,将自己的代码暴露出来 - 接受高手 Review
  • 录视频,将自己的编码习惯暴露出来 - 得到高手的指正

他们不断追求质量与效率的提升,本质是因为:

他们真心喜欢并享受Coding带来的乐趣。

然后他们无一例外,或升职加薪,或创业,或去了更优秀并且更尊重程序员的公司。

程序员社区已经很多了,为什么我还要再做一个?

是的,互联网上有很多的社区。
有大众的,比如 CSDN,V2EX,开源中国等;
有以语言划分的,比如 Ruby,Python,NodeJS 等;
有按平台分的,比如 Android,iOS 等;
有按框架分的,比如 AngularJS,Bootstrap 等;

在这里,我们包含以下内容:

硬件

椅子、键盘、MacBook、耳机的购买与使用心得。
我们需要打造一个适合编程的环境,先让身体得到愉悦,才能专心地享受编程的乐趣。

软件

效率软件、适合编程的音乐、更好地使用编辑器。
除了硬件,我们还需要一个适合编程的软件环境,关掉 IM,关掉邮件客户端,使用 Dash 查文档,使用duckduckgo解决问题,使用 Alfred 快速在多个程序间进行切换。

工作方式

比如:番茄工作法,站立办公,结对编程等。

新鲜技术

技术发展日新月异了,有时只是使用一个新技术,便能极大提升效率。
我们就是第一个吃螃蟹,GitDDD微服务React Native,不折腾,非人生。

工程实践

那些传说中只活在 PPT 里的工程实践,比如:TDD持续集成自动化测试等。

视频

相信很多人都在看高手的视频时有过这样的经历:“哇,原来还可以这样啊!”
观察高手写代码的过程往往比看最终代码更受启发。
另一方面,将你的过程录制下来,接受高手的指点,改变一个习惯,你就有可能受益终身。

活动

如果能与高手面对面交流甚至结对编程,一定会受益终身。
什么?你的公司里没有高手?或者有高手,但不被允许进行结对编程?
没关系,你可以走出公司,来参加我们组织的程序员线下活动


Read full article from 「必读」这是一个什么样的社区? » Topics » Coding Style


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts