猫窝

在自己窝里折腾点东西


  • 首页

  • 分类

  • 归档

  • 标签

  • 导航

  • 书单

  • 公益

  • 搜索
close

关于死循环我是这么想的

发表于 2016-01-05   |   分类于 杂谈

我们在生活或者工作中总是遇到一些问题需要去解决。其中有不少是“死循环”问题,一些看似无解的东西。

最近想来这类问题是比较容易解决的,因为是个环,其必有多个节点可以作为攻破点,任何一个节点被攻克之后,环终将不是环。这就像两军对垒时,有一方摆出一个环环相扣的阵法,看似无敌,却总被明眼人找到致命弱点,一破便获得胜利。

再看我们的“死循环”也就这么回事,而环的致命弱点往往是自己所处的节,你想想敌阵中最要命的环节居然是我们安插的“内奸”,怎能不破?

所以说,遇到问题把各个环节写出来,答案也许就已找到。

PS:我用了“我们”而没有用“我”,因为我知道自己在这方面并不孤单。

计划是有了,然后呢

发表于 2016-01-04   |   分类于 杂谈

2016年1月2日根据2015年积累的一点知识,按着每天或者每周几次的频率列举自己2016年应该开始做的一些事情。并期待着自己能够在这一年能够耐心的积累一些东西,然后让自己感觉有点成长。

愿望是美好的,只是就3号与今天的表现来看,有点担心计划始终是计划。而这种担心源自于思想与行动不一致,所以它将会在我开始做的那一刻起就停止。道理是这么讲,只是何时开始行动呢?

NOW!

为何买个东西也会紧张

发表于 2016-01-01   |   分类于 杂谈

今天2016年第一天,原本就计划这今天去买一台Macbook Pro回来。我起先在官网选择好Mac,一看要好几天才能到。就决定今天下午就苹果体验店购买,准备买完就回家。

等我下地铁来到苹果体验店,我居然没有直接说出自己的需求,而是在苹果体验店转了几圈。如果是平时,还可以真的体验下新品。可今天是元旦,每张桌子都完满了人,就没有心思去体验下iPad Pro,不过瞟了一眼,真的很大,比我家里的iPad 4大太多。

转完几圈,准备与工作人员说需求的时候,我居然紧张。简直就是莫名其妙,不得已我就到苹果体验店外围的商城转了一下,然后才平复自己紧张的心。再到体验店时,就直接说需求,准备提着电脑就走人。

只是等我说完我的需求,才知道实体店的Macbook Pro只有三种类型,我想买的那个CPU好点的型号,居然没有。说这是定制的,需要官网上才能够买到。无奈,电脑没有买到,还白白浪费了点时间的同时也get一个新技能。

至于为什么会紧张呢?可能和自己生平第一次准备买个近2万大洋的东西有关。也许这个不是紧张,只是提前感到兴奋。

给自己的些许祝福

电脑没买到,2016还是来了,希望这一年能够耐心的做些事情,不要到年底的时候又发现什么也没有做成。

2015年度总结

发表于 2015-12-31   |   分类于 杂谈

2015年整体来看还是像往年一样的平淡。虽没什么大事发生,小事却有那么几件值得说一下。

这一年,我从4月份开始决定一周一本书的计划,到现在也读了43本。

这一年,一次偶然的机会从微信公众号,关注了好几个个人公众号,从中获取一些知识,让自己开始思考。

这一年,我从一家企业跳到另外一家公司,才知道选择的时候应该主动些,而不应该完全被动(这是一大难题)。
现在开始慢慢说说这么几件事情。

读书

虽然说前些年也陆陆续续的读些书,但是从来没有像今年这样作计划的读书。2015年的1月到3月,陆陆续续的读些书,但是并不多,家中也积累了些买了却没有看过的书。4月份的一天,突然想着我应该一周看那么至少一本才好。于是,翻开收藏过的微信公众号的一篇文章,是说一周读一本书的,开始读的时候计划这一次大概读个多少页,然后一周到了,这本书就看完了。

就这样莫名其妙的开始,一本本的开始读。在执行这么个计划的过程中,如果看到自己喜欢看的书,读起来倒是不费事。应该是说相当的轻松,没几天也就读完了。可遇到不是自己特别感兴趣的,一般需要一周多点的时间才能够读完。有时候,也会忘记读书,可是当自己看到自己的Kindle或者纸质书在包里时,总会不自觉的想起来,于是拿着它们开始读。读着读着,也就读进去了,偶尔被小感动下,偶尔会心的一笑。接着,这周也完成了自己的计划。然后就开始为下周的计划,寻找书籍,或电子书,或纸质书。周而复始的,这计划也就持续着。

回想起来,这次的成功主要来源于以下两点原因:

  1. 一个简单的开始,我决定读书的时候就是翻了翻微信就决定了,其实应该还能有个更简单的开始。
  2. 每读一本书的时候,有一个记录,然后一周一周的都能看到自己在往前。等哪天想放弃的时候,拿出来看看自己都坚持这么长时间了,放弃多可惜啊。于是,又得以新的开始。

为什么要特意总结这么两条呢?只是想告诉自己,在将来的日子如果想做什么事情的时候,可以考虑这个方法论。即让事物有个简单的开始,并能够分阶段的成果展示。

公众号

我不知什么时候开始相信这是个最好的时代。尤其是在关注了一些个人微信公众号更是如此。这些公众号,多半都与计算机有关系。可是从他们身上不仅看到了技术的精湛,还有文学功底以及精神的丰富。每天或者说是偶尔看到他们的文章,都让人觉得值得学习。这些人并不像社会中的商界大亨或者技术精英让人感到遥远,而是感觉他们就在身边,感觉自己某一天也能够在技术略有小成,在思想上日渐成熟(也许,这两点都是幻觉)。不过,我真的这么觉得我是能够做到的,即使是幻觉,也觉得足够幸福。

在看到这些公众号之前,我还为自己有一点点看书的习惯而感到高兴,感觉自己并不是一个只会写代码的程序员。看完这些人的分享之后,我才发现自己不仅代码写的不怎样,思想与文学也没有什么值得称赞的地方。真可谓是井底之蛙,幸好这个井没有那么深,我及时跳出来了。

所以说,我觉得现在是最好的时代,牛人就在你身边,每天都可以与其交流(虽然只是单方面的)。我觉得现在是个最好的时代,还有个原因是云计算逐渐成熟,已经有好几个不错的云服务,可以基于上面做些事情,而不用自己去搭建基础设施就可以尝试一些想法(目前,我还没有用云做什么事情)。总之一句话,现在这个时代使得许多事情能够简单的开始,从而能让想干事请的人看到一些成果。

换工作

这次换工作并不算成功,起初是有点投机的感觉,只是后面知道投机是没有可能获得什么的,结果还是得踏踏实实的工作。这里面的具体情况得在以后恰当的时候说说,这里就姑且不说这些,只是简单的说说我在现在这家公司收获了什么。

  1. 再次次验证简单的开始可以做些事情,在这家公司之前我并没有接触Android开发。在这里不得不从第一个控件,第一个界面开始,最终也完成了一个APP,前前后后的时间并不长,可以参考这篇博文。
  2. 在这里我开始将自己的抱怨放在一边,踏踏实实的想问题,然后解决一些问题。帮助同事们分析一些问题,分析下来,原来这根本不是问题,同时也多了点耐心。
  3. 想解决问题的时候,一定不要互相谴责,更不能发脾气,这些对解决问题没什么帮助,反而会使得问题恶化。而应该把问题分析清楚,一步步来,最终不仅问题解决了,也不伤和气,而且还能够让人感觉你在讲道理。

收获多多少少还是有点的,难受的事情也不少(这就是说,对于选择应该主动的原因),算了不说了,在自己心里慢慢消化吧。

展望一下2016

2015终将结束,迎来的是2016,对未来我总是期待着。

我期待着2016我能够耐心些,能够做成一些事情;多思考,相信着积累的力量,相信美好的事情终将会发生。

半马与全马有什么不同

发表于 2015-12-30   |   分类于 杂谈
写在前面

这篇文章本来计划昨天写的。而昨天有老罗的锤子新品发布会,就将看这发布会当做首要任务来着。看完之后,一看时间还比较早的时候,想着要不现在写的时候,有一朋友来家里聊天,这一聊时间就过去了。就这样,这篇博文就成今天要写的。
这是不是说明我自己的意志力与执行力不够呢?

还有就是今天的工作效率也不怎么样,就是没有了干活的意愿,前段时间的持续耐力不知怎么就这么消失了。导致,今天的生产很低的。好了,唠叨说完,开始进入正题。

回归正题

我之前写过一篇博文是说我跑步也有六、七年。从这文章中我简单的提了一句,我有参加学院的5公里长跑,并取了不错的名次。关键是,自己出来实习或者工作的时候,依然持续着一周几次的跑步,心情好的时候多跑跑,心情不太好的时候就少跑跑。

就这样一天天的上着班,一次偶然的机会听到上海有马拉松比赛。然后我就开始慢慢的关注马拉松,这么几年有参加过几次比赛。半程的也有,全程的也有。

当时报名的时候,看见全程的42公里完全不敢尝试,所以就小心谨慎的报名半程的,想试试自己是否能够跑的下来。现在回想,第一次报名半程马拉松,心里没什么底,不知道自己能否跑下来,跑的过程中会不会出现什么意料之外的事情,毕竟平时并没有跑过这么长的距离。

没底归没底,也没有对自己造成太大的心里负担,平时还是按着原来的节奏跑着,一天跑个几公里。然后,就有那么一天,跑下平日的量时,感觉特别好,又多加了好几倍,感觉依然良好。本还想继续,只是时间不早,就回去了,然后我知道半程马拉松没有什么好担心的。再想想,比赛那天有三万人,就完全放心了,只要平时正常运动,等着比赛的到来。

比赛那天,结果和自己想象的差不多,跑步的人真的很多,那是我生平第一次见这么多人跑步,真的很壮观。后面几次参加,依然有这种感觉。一声枪响,比赛正式开始,起初因为人太多提不起速,就大家一起跑着,没过一会儿就到了5公里,然后10公里。之后,该提速的都已经提速,又由于5公里、10公里的到来,参加迷你马拉松的人员基本都已经到目的地。这么个时候,跑步就相对宽松,跑的快的跑的慢的都不在一条线上。虽然这个时候还有好多人在一起跑,也基本和平时自己一个人差不多,只是偶尔被人超,又偶尔超那么一两人。我就是在这种节奏中,结束了自己的第一次半程马拉松赛,感觉还是挺好的,不怎么累,就是脚有点酸痛,后面几天就更酸痛了,这个暂且不提。

半程马拉松下来,感觉压力并不大,想着全程应该也还好。然后第二年就参加全程马拉松赛(其实是半程马拉松赛的名额已满),也没有感觉太大的忐忑,平时依然没有经过特别训练,还是正常运动,等着比赛的开始。

全程的前半段和之前没太大的差别,只是到了25公里之后感觉有点吃力,最后挺到30公里的时候,就感觉脚已经不是自己的脚,真的真的很想坐下来休息。说的直白点就是全程的痛过从30公里开始,一直到40公里才算结束。那后面2点几公里呢?也许你会说是放弃了,其实没有的,不知为什么后面这点距离,居然是用跑结束的。那从30公里到40公里的这10公里中,我都在想些什么呢?

30公里的时候,我的脚底板开始疼,小腿和大腿都比较酸,跑不动了,我就开始走了。如果我还能跑的话,其实痛苦的时间也不会太长,问题是我只能走,导致痛过的时间明显就变长。在上海马拉松的全程赛中,其路线并不是一直往前往前,而是有绕道的,中间虽然有隔代,也有人监管,这是这个时候相对已经很松了。我在这边走的时候,其实是30公里多点,我就看到对面的37公里的牌子,那个时候我是多么的想穿过去,提前结束我这痛苦的旅程。如我写在“写在前面”的语言一样,我的执行力不够啊,所以并没有行动,只是告诉自己再走走,实在不行的时候再穿吧。只是走着走着已经没有机会了,我已经走到另一边,没有办法再穿。这个是不是说明机不可失呢?

就这样我才发现我只走了5公里左右,才发现5公里真的很长。没办法,我得继续走着,无论如何也得在关门的时候完成我的赛事。只是在这后公里的过程中,我不停的看到马路旁边有居民骑着电动车去往他们的目的地,而且我们方向一致,路线也是样的,只不过一个在赛道,一个不在赛道而已。我那时就想着,要是现在能够坐着电瓶车过去就好了。想归想,腿似乎并没有听大脑的指挥,依然是自顾自的往前走着。在这漫漫的5公里,我自己都不知道如何完成的,因为大脑老是想着坐电瓶车,感觉那样会很爽,会提前完成这痛苦的旅程,可无论怎么想,腿只是往前走,完全不顾你的感受。

最后,终于熬到了40多公里,大脑这个时候开始兴奋了,腿似乎也感觉舒服点(其实都是幻觉)。于是,又开始跑起来,最后一小段还加了点速,最终从开始到结束用了5小时左右的时间完成。虽然,并不是很快,但是真的完成了,依然有成就感;之前虽然,忍受着痛过,此时此刻依然感觉无比的喜悦。完赛后的几天,大腿的酸痛就更加严重了,每次坐下起来或者上下楼梯都感觉是中煎熬。

这次虽然如此难受,这个比赛的来年我又参加一次(2014年赛事),感受和这次差不多,思想斗争也没怎么变化。当时有小伙伴问明明知道不好受,为什么还要去呢?这个我当时的回答是:虽然痛苦,但总感觉这个每年应该经历至少那么一回。然而今年(2015年)我并有机会感受这酸爽的感觉,原因是报名的人太多,我没有被抽中。

一个低级错误分析解决过程

发表于 2015-12-28   |   分类于 Android

昨天简单记叙了我六、七年的跑步这件事情,本来今天想写写我跑半程与全程的感受与些许想法。但是,今天在写代码的时候出现一个低级错误,而我解决这个错误却是绕了一圈才解决的。这种事情写代码的时候时不时会发生一次,原来没有记叙的习惯,现在打算养成这么个习惯,所以临时决定写写这次错误的发生与解决,让自己回想回想。

背景

这个错误的案例背景是我用WebService去调用阿里百川的OpenIM的SDK,达到阿里百川的用户信息能够与我们平台的用户信息能够得到同步,如昵称、头像等。

过程

在写WebService之前,我对其API封装了一层Service,并用单元测试对其进行测试(其实,我现在还没有很好的养成写单元测试的习惯)。测试了一组数据,其结果都和预期一样,证明咱写的这个服务是没有什么问题的,可以大胆的使用。

然后,我就开始写WebService,其实也就是在封装一下,本以为完成就能够解决问题。在满怀希望看结果的时候,上帝就给你开个小玩笑,然后WebService返回了下面的信息:

1
2
3
4
5
6
7
<soapenv:Envelope><soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server.userException</faultcode>
<faultstring>java.lang.reflect.UndeclaredThrowableException</faultstring>
<detail><ns1:hostname>hostname</ns1:hostname></detail>
</soapenv:Fault>
</soapenv:Body></soapenv:Envelope>

看到这个信息,我不知道为什么本能的以为是OpenIM SDK有问题(在调用第三方库的时候,这些第三方库总是被我怀疑,为什么会这样,为什么会这样,算了,先不想了)。于是,我就在想是不是这个SDK与Web Service有什么冲突之类的(毫无根据)。
怀疑归怀疑,还得看数据信息不是? 在这次调用的时候,我其实是写了三个服务的,在这个服务没有通过之后,再去测试另外两个服务,结果发现运行的好好的。这时,我再结合单元测试是OK这一结果,彻底否定了服务有问题这一想法。想着,一定是代码哪里不小心出了问题。

这时,再看Web Service反馈的信息,说是userException,说实话这个我不知道是什么异常,但是后面的信息还是很醒目的UndeclaredThrowableException。就这么一句,我意识到我的代码有个地方有个未知异常没有捕获。于是再看代码,再看打印日志的时候,发现压根就没有进入我封装的OpenIM SDK服务内,在调用服务之前的代码有一段代码是判断一个字符串是否合规的if语句。这个时候,一看就能明白,这个字符串忘记判断是否为空了,加上这个判断,果然就没有问题,服务也正常被调用。虽然问题找到了,还是忍不住说了句:我x,居然出现这么个低级错误。

最后

在解决这个错误之后,我想起前段时间参加的技术沙龙有讨论类型安全问题,这个其实多少也算这么个分支。又想想平时写代码,总喜欢看运行结果。好多代码边界问题,异常问题都容易被我忽略,所以时不时出现一下冷不防的错误,需要花时间去解决。

还有就是写代码总是不太习惯在关键地方打印日志(上文说的看日志,是后面才加的,开始并没有),做些条件判断,总感觉程序能够在正确的环境做正确的事情,出意料之中的结果。可这显然是不太可能的,关于这点得改改,不能偷懒。

从开始跑步到现在,断断续续的也有六、七年了

发表于 2015-12-27   |   分类于 跑步

这几年,跑步不知为什么一下子流行起来,无数人在坚持夜跑,又不知道有多少人开始讨论跑步减肥的问题。也许这些现象,在很早以前就有,只是我现在才真正感受出来。那我就姑且认为最近几年比较流行吧。对于跑步的流行,尤其是长跑的流行,从我这几年报名上海马拉松的情况可略见一斑。

我记得在我来上海实习的那一年听说上海有马拉松比赛后,在第二年(应该是2012年)我就有关注这个赛事,那时我准备报名上海半程马拉松赛。等到报名时间的时候,我印象中我还在老家(当时国庆放假,就在家玩了几天),等我回到上海的时候,马拉松报名应该开始了几天,可是那个时候报名还是相当轻松的,点击几下鼠标,填点资料就完成,然后就是等着赛事的开始。

这是2012年的赛事,看上去马拉松报名还是简单不过的。可是等2013年的时候,我当天去报名半程马拉松的时候,居然名额都满了,无奈我只能参加全程马拉松(一直想跑,只是没有勇气,这下到直接开始体验),不过对自己而言倒是一个不错的体验。2014年就更夸张了,报名全程马拉松都是得抢啊,用个形象点的类比就是12306刚出网站时买春运火车票那样。如果手慢了一步,好像就离赛事擦肩而过。而春运火车票一般都有无数的黄牛在和你抢票,而马拉松比赛我想应该是没有黄牛和你抢票的,这个得实名还得自己去跑,如果真有黄牛,那也是喜欢马拉松的黄牛。等到今年2015年,报名很简单的,一会儿就报好,只是后面报完名得来个抽签,这样就刷下无数人。而我运气一直都不怎么好,我也就被刷下来,今年就没有参加上海马拉松比赛。

虽然参加了几次马拉松赛,但是并没有做过什么特别训练,只是平时正常的跑,然后时间到了就去参赛。虽然说没有针对性的训练,平时跑步的积累还是有的。我记得,在大一的时候,参加院运动会的1500米的长跑,当时跑完可是上气不接下气的,到后期根本跑不动,无奈最后剩下的距离只能慢慢走到终点,就这样最后还是累的不行,说话都要缓一缓。就这么个体质,我当时就觉得长跑根本不是人跑的,别说5公里长跑想都不敢想(那是我还没有听说马拉松,学院还有个男子5000米赛事)。

也许,你会觉得我在这么一次体验之后,就痛定思痛得决定每天训练跑步,要不然最后怎么能够参加马拉松。可事实告诉我,我并没有那么上进,回去休息好之后,就把这件事情给忘记了。只是有一天偶然的情况下,我知道大学里另外一个寝室有三个小伙伴每天早上会起来跑步。然后,我就去和他们一起跑。也许,厉害的人都是自己做决定做某些事情,然后一直坚持下去,最后成了。而像我这种不怎么思进取的人,就只能从这个偶然的机会开始一件事情,庆幸的是我也坚持下来了。

当时跑步的时候,开始早上起来跑步的人有4个,过了一段只剩下2个,最后就剩下我1个早上起来跑步。剩下我一个人的时候,晨跑我也没有坚持多长时间,但是我把跑步的时间变成晚上了,这样显然比早上起来跑步舒服多了(早上还是喜欢多睡会儿)。后来每次晚上跑步的时候,偶尔会想起赵本山与宋丹丹春晚小品有关火炬手的故事。黑土大爷说:我陪着她练,最后她被练下去了,我练起来了。每每想到这,我笑笑就又继续我一个人的跑步。

我现在特别喜欢一个人跑步,因为非常自由,想怎么跑就怎么跑,想什么时候跑就什么时候跑。可是当时,我还是喜欢拉个小伙伴的。在我坚持一个人跑的过程中,去看看有谁愿意晚上跑,可是陪我晚上跑的,也就开始几个小伙伴中的一位坚持的时间比较长。本来这事就挺正常,也没什么好说的。只是当时,本来一个人跑的,后来多了个小伙伴,就开心啊,跑起来也轻松,还有说话的好开心啊。如果一切都这样发展下去,那是多么美好。问题就出在,当你开始习惯有个小伙伴的时候,突然有一天,你叫小伙伴去跑,他告诉你不想去了,本来兴致勃勃的,一下子我也不想去。结果,就休息一天,有时候还得休息好几天。

调整几天,我感觉这样不行,再叫不去,我又自己去跑了。过段时间,偶尔又有人想加入,和我一起跑。然后过段时间又出现原来的情况,就这样反反复复几次。我就决定不在要小伙伴,如果想加入,我和你说一声,来就来,不来我就自己去了。说这些,不是说我不跑的时候,都是别人不跑导致的。只是,有时候自己不想跑的时候,有个伴鼓励下,然后也就可以开始了。结果有小伙伴出现之后,我不想跑的时候导致没有跑成;小伙伴不想跑的时候,也影响到没有跑成。

常常听人说,两个人一起做一件事情,能够坚持的更久点。从跑步这件事情来看,我是没有这种感觉的,我看还是一个人持续一件事情比较容易些。所以现在我跑步都是自己一个人跑步,有人跟我说一起跑吧,我也告诉他我不喜欢和人一起跑,想跑的话,大家各自跑还自由些。不过让我跟你说一下,还是可以的。只是,我一般不再抱有能够一起跑好几天的希望。所以,就是有伴的时候也开心,没伴的时候也能够自己一个人跑。

大学里跑步养成了一种习惯,在大三那一年参加5公里比赛,顺利的得到了院运动会的第一名(从这点看,大学好像有点成长)。这个习惯,从大学出来,一直陪伴这我工作这几年,虽然现在跑步的频率没有大学那个时候那么频繁,但是总体而言一直有跑步的习惯。就这么个习惯,也是有好处的,如我坚持做其他运动的时候也能够很好的坚持。而不需要下什么很大的决心,也不需要什么APP与社交,想到了开始做就好了,所以现在也不喜欢跑步的时候带着个手机去记公里数(我尝试过,感觉是种累赘,还是空手跑比较舒服)。

从Git最佳实践中获得的思考

发表于 2015-12-26   |   分类于 git

搞计算机开发的,应该都知道Git是个非常好用的代码管理工具。在这篇文章中,我并不是想去阐述其技术有多么优秀,这个在网上随便搜索一下,就能找到一大片,而且其官网上还有一本详尽的书籍进行说明。这篇只是说说我在看完Git分支最佳实践之后以及习得其技能后的一些感受。

在用Git作为代码管理器之前,由于是用Visual Studio进行项目开发,用到的工具是tfs。后来开始用Java写程序,代码管理器也就变成Git。当时就想着写项目,在了解Git的基本使用之后,就没有管它到底有多优秀,基本就和用tfs差不多(签入、签出与合并)。在这个过程中,就已经看到过Git最佳实践,花了点时间看,但是并没有深入研究,也就知道个概念好像是说Git很厉害的样子,然后这么好的东西就沉底不见了。

直到前段时间我需要为产品进行迭代开发时,想着如果进行一个版本的功能开发,第一版本有个紧急Bug需要修复,该如何弄?此时,脑中想起之前看过的Git分支最佳实践,我又再次把它翻出来看一遍,并仔细从头到尾理解一遍,问自己为什么需要这个分支,不要这个分支可不可行,什么时候应该使用这些分支等等问题。虽然,博客中都写的比较清楚,但是如果自己没有好好的理解的话,可能在执行的过程中就容易迷惑,也容易出错。等我把我自己的问题答案找到后,并在自己脑中想了多个场景,看看应该如何建分支之后,发现一切都浮出水面。按着这个博客进行实践真的可行,后来我在自己的项目中并实践一段时间过后,发现真的很好用。

当时理解完,和其他同事进行分享,也能够很把问题讲清楚同时解答一些不理解的地方。简单的理解可以注意以下几点:

  • master与develop分支是永久存在的分支,master分支永远是存放稳定版本的代码,develop分支是正在开发功能的分支;

  • release分支是下一个版本需要的分支,hotfix分支是修复bug分支,这两个分支都是有生命周期的,用完就能删除。在这两个分支功能开发完毕后,都需要合并master与develop分支,然后就可以删除。

  • 还有个feature分支,这就是个临时分支,只能存在于本地的一个分支,是用来研究临时性功能的分支。如果这功能最终被采纳,就可以合并到develop分支,否则直接删除就好,接着干之前的活就好。

这只是个粗略的描述,并不详尽,具体的可以参考这个网址Git分支最佳实践,它有详细介绍。在我敲出这些描述的时候,脑子中已经清晰的走了好几回这个实践,不得不说真的很好用。

===========================================

那我从中获得了什么思考呢?

对于一个知识点,不要看看就告诉自己,我又Get一个新技能,然后就去获取下一个技能。否则就容易出现白岩松在《白说》书中提到的:以为看过了,其实是错过的情况。我很庆幸,这么好的一个实践,我看过了,还真的获得了。

所以说,如果在看到一个新技能,如果觉得有必要,就要尽自己最大的努力去理解,多问一些问题帮助自己理解直到自己真的能够理解为止。这不仅能够使得自己真正掌握一个技能,还能够帮助自己节约不少时间的(想想,如果今天看了没理解,等要用的时候是不是又得从来一遍呢?)。

关于计划与规则,我的思考

发表于 2015-12-25   |   分类于 杂谈

关于计划

我工作三年多,如果算上实习应该有四年多。在这段时间中,我在不同类型的企业中干过,期间还自己在家中做过几个小项目。发现每个公司都有自己公司的规则,项目也有相应的计划。而在这些计划与规则中,有的真的是践行了,有的则形同虚设。

在第一家公司做了大概两年(包括实习一年),真正经历的项目就两,没在这两项目的时候,基本就是做些边缘的事情,做些简单的研究。

这两个项目都是和企业相关的,第一个项目是在我来之前就已经谈好的,我在这个项目中主要负责数据上的同步,确保数据正确就OK。这个项目还没有结束,就来了第二个项目,我从这个项目中剥离出来。在交接好之后,我就开始负责这第二个项目。

后来发现这第二个项目和需求是有冲突的,有些功能复杂化,有些功能简单化。总体而言,应该比需求提到的东西工作量要大点。可是,项目在实施过程中,并没有改变计划,而是一味的直接做,前期基本还能跟上计划。可做到后面,尤其是用户验收过程中,有些东西需要修改,有些东西需要增加以及还有未完成的功能。就这样滚雪球般的添加了不少工作量,现实如此,也没有调整计划,可想而知项目到后期就不可控了,连什么时候能够真正的完成都不知道。这个时候,原来的计划就真的被架空了,完全起不到作用。

以至于,后期就是把该做的该改的全部完成,以至于两个月的项目变成了六个月。项目延期如此严重,回想起来可能有多方面的原因如管理,沟通以及技术本身的不完善都有可能。可是,我想如果计划能够及时做到调整,也许两个月的项目还是会延期,但有可能会变成三个月。为什么这么说呢,因为在六个月的项目中,并不是完全满负荷的工作的。只是因为没有个明确的计划,每次猛赶猛赶的完成一个功能,然后就乘机休息一会儿。等验收发现问题的时候,就再来这么一次循环。从而浪费不少时间,公司也没有从这个项目中赚多少钱。

我的感想是:计划怎么的都得执行的,但是这个计划不应该是从初始就固定不变的,因为可能由于诸多原因导致这个计划本身并不合理。而应该根据事情的发展,人员的变更,进行动态调节,也确保计划确实可行,隔一段时间进行验收,这样才能够比较长久的完成计划,也能够更好的在规定时间完成功能。计划做出来,然后大家跟着执行,并且都完成,这个计划才有效。大家看着这个能完成,结果真如此,就容易进入良性循环;可是,如果计划一出来,就不可完成,还不做及时的调整,计划成为空之后,就进入恶性循环,截止日期就摇摇而无期。

后面,经历了一家公司,采用敏捷模式,每三个星期一个目标,一次调整,感觉就真的不一样。

=====================================================

关于规则

无规矩不成方圆,家有家法,国有国规。这些说法,都是指行事得有规则,否则就容易乱套。可问题是规则如果出来没有执行,那就失去其意义。

对于公司,规定早晚班时间,可是由于没有任何奖惩措施。导致偶尔有人迟到一会儿,结果没什么事情,连个说的人都没有。迟到一会儿其实也没有必要追究,只是它引发的问题不容小觑。经过一段时间后,迟到的人越来越多,迟到的时间也越来越长。这样长期以往,上班时间的规定就失效。

也许我喜欢把问题放大,因为我觉得一个规则被打破之后,对于其他的规则也会有影响,导致执行力下降。

前段时间,看唐浩明的《曾国藩》,里面有个故事是说,曾国藩初期训练湘勇时,由于训练条件艰苦,常常一个营的士兵都无法到齐。曾国藩为了能够严于军纪,自己以身作则,并不惜杀一严重违反规则的将领,从此军纪便好很多。

我不是说,什么规则出来都应该严惩,如杀头这类的,更何况这个在法律上是不允许的。我只是想表达一个规则出来,一定得执行,并有相应的约束条件,否则容易忘记。这对这约束条件,还应该为其他规则配套一些奖惩措施,而且奖惩应该多余惩罚。为什么这么说呢?原因是,这样可以比较清晰的告诉大家我们做这些并不是为了惩罚谁,而是能够更好的成长,更好的发展。

而对于有些规则,如果大家没执行,也可以在想出约束条件之前,想想是不是规则本身不合理,导致现阶段本身无法执行。如果是这样的话,有约束条件也没用,还有可能给人一种不近人情的感觉。此时,应该考虑换一个更加合理的规则来解决自己想解决的问题。

还拿这个早上上班时间的事情说事。若一个公司9点开始上班,可是有些人确实住的远,并且高峰期拥堵不堪,导致路上的时间无限拉长,如果要准时赶到9点,也许得起的很早才行。也有可能家里有小孩需要照顾等等。针对这些情况,与其制定一些约束,还不如改改规则。如工作时间可以随机调控,以任务为导向,每周验收个标准;或者允许大家每周有那么几天时间可以在家办公,最终能完成任务,能为公司创造价值就好。(没办法,我才疏学浅,只能用这么个简单的例子来来回回的说)

所以说,规则制定应该要合理;在合理的情况下,再给出相应的约束条件,让大家去执行。总之大家能够践行的规则,才是好规则,计划也是这样。

一点点开始

发表于 2015-12-23   |   分类于 杂谈

今天,打开这个学习笔记网站,准备写点什么的时候。却不知道如何下手,说写技术类的文章,没有进行很好的梳理写不出来,最后只能草草的整理下今天开发中遇到的问题。

技术写不出来,我就想着要不写写平时自己的胡思乱想也好。本来在白天闲暇时间想好的东西,等着这个时候却怎么也会议不起来。我想写篇随意的网志怎么这么困难呢?也不知道那些作家,网络中的笔者是如何坚持几十万、几十万字的写。

本来,都这么困难,就应该先关着,干点其他事情去的,而事实我却在这里一个字一个字的敲着。因为按着过往经验,如果刚开始决定做一件事情的时候,没有开一个好头,后面基本就会不了了之。所以,为了这件事情能够稍微坚持的时间长一点,我必须在刚开始的一段不短的时间内,不断的打开面对着白色的记事本,有一句没一句的敲着。

万事开头难,此时此刻的我也许无法敲出有意思的文字,更别说有深度的文字。只是,我告诉自己今天从这一点点的开始,也许就能够拥有在未来的某天敲出稍微有点意思的文字的机会;如果没有这个开始,那么连个机会都没有。

祝我好运

1234
王巍

王巍

32 日志
9 分类
1 标签
GitHub 微博
© 2019 王巍
由 Hexo 强力驱动
主题 - NexT.Pisces