※ 引述《xo1100 (虾蒸河粉)》之铭言:
: 先感谢版上先进的观看了
: 如标题的疑问
: 小弟有时候开发或除错的时候
: 脑袋思考久了都会有点头晕脑胀的
: 不舒服是还好
就是一个东西卡在那,前进也不是,后退也无路的‘阿杂’的感觉囉
: 只是接下来都会有脑袋不太能运转的困扰
这困扰主要是内心对于‘预知’‘挫折’的排斥感,
接着可能自然地发展成‘拖延病’,不自觉逛逛 FB,
或看一下 plurk 有什八卦流传着。(时间就这么流逝惹)
: 大概是失忆到SQL下个小查询
: 都会想个5到10分钟的程度
只要不是太复杂的,应该是不用想那么久。
目前的工作里,你应该不是第 1 个写 SQL 查询的人
先看一下旧的、相似的功能,有没有既有 SQL 可以参考改写
: 然后整体进度就会越来越慢......
: 有时日报表写下的进度会发现
: 看起来几件不太大的事情
: 会花了我整天的时间
: 结果就是进度delay然后整个人还头昏脑胀的 冏
知道自己的弱点,是件可喜可贺的事啊!
: 想请问前辈们
: 如果开发到脑袋无法运转的时候
: 都是用什么方式排解然后继续奋斗的
先看看文章,参考参考
《程式设计者的静心训练》
http://www.ithome.com.tw/node/74763
《那些做不了事的日子》
https://chingyichan.wordpress.com/2012/06/24/cannot-do-anything/
不过,这些主要是心态上的问题,总归来讲,不要太在意小范围的 delay
要看整体来说你的‘火力’输出是否稳定,只要控制在稳定又总量在可接受的范围
至少是一名可靠的‘开发者’
(外加控制 release 周期在 PM 或老板期望的时间,那应该大家都过得挺愉快的)
(不过这是另一个话题了)
=========================================================================
接着进入正题。你的症头我分为 2 个方向
1. 找到适合你的思考方式
2. 做一点小计划来辅助进度的推展
我得先承认,我不是个聪明的人。
无法做太多‘心算’类型的推演或想像,勉强自己做的话,那就会...
=>‘脑袋思考久了都会有点头晕脑胀的’
透过各种工具、途径辅助思考
认清了自己不是天才型的开发者,那就用平凡可靠的思考方法。
你也得找到适合你的方法,以我来说把问题‘具象化’呈现出来会有许多帮助
或是以‘文字’的型式写在 text editor 上,透过‘搬移’位置来思考逻辑关系
举个实际的例子
拿简单对应不同大小的批次读取 array 元素的 offset 来说,
这东西我实在无法简单在脑中想
但有些同事就非常拿手,在脑中想一想就能瞬间写成 code
这对我来说太困难了,开个 google 试算表,弄个实际的例子来‘具象化’
http://bit.ly/20OaNuI
再把它写成通式,也能直接转成 test case 的材料
以计划代替迷惘
没有事先计划的情况,当我们写到头晕后,
可能就会进入了没有一件事做的成的恶性循环,
或是觉得都能做,但具体来说找不到个好下手的方向的恶性循环。
无谓是‘开发’或‘除错’都是能做计划的
(大部分的开发工作,其实都只是‘实作’而非前瞻性的开发,
只少极少的机会无法计划,遇到的时候就......................再说囉)
开发要哪些计划?以通俗的 Web App 来说,一个新的功能(需求)被开出来了
从开 DB 到对应 Model,刻 DAO、Service、Manager、View...
无谓你要从后端到前端、前端到后端都顺利都无所谓,总之就一项一项列出来
每一项都完成了,并且通过了单元测试、整合测试就是完成了
(最后你人工瞄一下成果,改一下 Issue 为请求 review 或完工、deploy...)
上面提到的‘一项’又‘一项’的东西,都可以当成是计划,
它可以是简单的 checklist,或清单。
我个人是在 trello 上开了个‘蕃茄钟’的 board,放一些进行中工作的 TODOs
或是未来工作项目的‘许愿池’
它们是在正式的 Issue Tracker 之外的辅助工具。
蕃茄钟 Board 里,只留许愿池与正在做的 List(做完就 archive 起来了)
http://bit.ly/20OeLDB
List 内的 Card 会对应到相关 Issue 内容转成的 TODOs
http://bit.ly/20OdWe5
(有没有觉得,每一项都很白话,看了就知道要做什呢!?)
一天大概吃 6 个蕃茄钟是极限了,每一轮蕃茄钟大概可以消 0 ~ 3 个 Item
(我是采用 一轮蕃茄钟 = 工作 25 分钟,休息 5 分钟 的规律在推进)
PS. 也不总是天天都这么弄,像周一或周五有时想完全放空或做一些‘探索’,
就不管蕃茄钟了
PS. 后续应该还有不同人会建议,总之你试着挑一个适合自己的方法呗