|
1 |
| -#Github 100天 |
| 1 | +#Github连击 |
| 2 | + |
| 3 | +##100天 |
2 | 4 |
|
3 | 5 | 我也是蛮拼的,虽然我想的只是在Github上连击100~200天,然而到了今天也算不错。
|
4 | 6 |
|
|
22 | 24 |
|
23 | 25 | 而现在是``为了填坑而commit``,为自己挖了太多的想法。
|
24 | 26 |
|
25 |
| - |
26 |
| -##40天的提升 |
| 27 | +###40天的提升 |
27 | 28 |
|
28 | 29 | 当时我需要去印度接受毕业生培训,大概有5周左右,想着总不能空手而归。于是在国庆结束后有了第一次commit,当时旅游归来,想着自己在不同的地方有不同的照片,于是这个repo的名字是 [onmap](https://github.com/phodal/onmap)——将自己的照片显示在地图上的拍摄地点(手机是Lumia 920)。然而,中间因为修改账号的原因,丢失了commit。
|
29 | 30 |
|
|
49 | 50 | - 对于Mock、Stub、FakesServer等用法有更好的掌握
|
50 | 51 | - 可以持续地交付软件(版本管理、自动测试、CI、部署等等)
|
51 | 52 |
|
52 |
| -##100天的挑战 |
| 53 | +###100天的挑战 |
53 | 54 |
|
54 | 55 | (ps:从印度回来之后,由于女朋友在泰国实习,有了更多的时间可以看书、写代码)
|
55 | 56 |
|
|
65 | 66 | - 没有足够的空闲时间,除了周末。
|
66 | 67 | - 希望去寻找那些有兴趣的人,然而却发现原来没有那么多时间去找人。
|
67 | 68 |
|
68 |
| -##140天的希冀 |
| 69 | +###140天的希冀 |
69 | 70 |
|
70 | 71 | 在经历了100天之后,似乎整个人都轻松了,毕竟目标是100~200天。似乎到现在,也不会有什么特殊的情怀,除了一些希冀。
|
71 | 72 |
|
|
78 | 79 | - 提了bug,并解决了。(ps:这是最理想的情况)
|
79 | 80 |
|
80 | 81 |
|
81 |
| -#Github 200天Showcase |
| 82 | +##200天的Showcase |
82 | 83 |
|
83 | 84 | 今天是我连续泡在Github上的第200天,也是蛮高兴的,终于到达了:
|
84 | 85 |
|
|
90 | 91 |
|
91 | 92 | 先让我们来一下ShowCase,然后再然后,下一篇我们再继续。
|
92 | 93 |
|
93 |
| -##一些项目简述 |
| 94 | +###一些项目简述 |
94 | 95 |
|
95 | 96 | 上面说到的培训一开始是用Java写的一个网站,有自动测试、CI、CD等等。由于是内部组队培训,代码不能公开等等因素,加之做得无聊。顺手,拿Node.js +RESTify 做了Server,Backbone + RequireJS + jQuery 做了前台的逻辑。于是在那个日子里,也在维护一些旧的repo,如[iot-coap](https://github.com/phodal/iot-coap)、[iot](https://github.com/phodal/iot),前者是我拿到WebStorm开源License的Repo,后者则是毕业设计。
|
96 | 97 |
|
|
134 | 135 |
|
135 | 136 | 这个可以从两部分说起:
|
136 | 137 |
|
137 |
| -#### 重构Skill Tree |
| 138 | +####重构Skill Tree |
138 | 139 |
|
139 | 140 | 原来的是
|
140 | 141 |
|
|
161 | 162 |
|
162 | 163 | 代码: [https://github.com/phodal/sherlock](https://github.com/phodal/sherlock)
|
163 | 164 |
|
164 |
| -###Django Ionic ElasticSearch 地图搜索 |
| 165 | +####Django Ionic ElasticSearch 地图搜索 |
165 | 166 |
|
166 | 167 | 
|
167 | 168 |
|
|
172 | 173 |
|
173 | 174 | 代码: [https://github.com/phodal/django-elasticsearch](https://github.com/phodal/django-elasticsearch)
|
174 | 175 |
|
175 |
| -###简历生成器 |
| 176 | +####简历生成器 |
176 | 177 |
|
177 | 178 | 
|
178 | 179 |
|
|
185 | 186 | 代码: [https://github.com/phodal/resume](https://github.com/phodal/resume)
|
186 | 187 |
|
187 | 188 |
|
188 |
| -###Nginx 大数据学习 |
| 189 | +####Nginx 大数据学习 |
189 | 190 |
|
190 | 191 | 
|
191 | 192 |
|
|
195 | 196 |
|
196 | 197 | 代码: [https://github.com/phodal/learning-data/tree/master/nginx](https://github.com/phodal/learning-data/tree/master/nginx)
|
197 | 198 |
|
198 |
| -###其他 |
| 199 | +####其他 |
199 | 200 |
|
200 | 201 | 虽然技术栈上主要集中在Python、JavaScript,当然还有一些Ruby、Pig、Shell、Java的代码,只是我还是习惯用Python和JavaScript。一些用到觉得不错的框架:
|
201 | 202 |
|
|
218 | 219 | - MongoDB
|
219 | 220 | - Redis
|
220 | 221 |
|
221 |
| -#Github 365天 |
| 222 | +##365天 |
222 | 223 |
|
223 | 224 | 给你一年的时间,你会怎样去提高你的水平???
|
224 | 225 |
|
225 | 226 | 
|
226 | 227 |
|
227 | 228 | 正值这难得的sick leave(万恶的空气),码文一篇来记念一个过去的366天里。尽管想的是在今年里写一个可持续的开源框架,但是到底这依赖于一个好的idea。在我的[Github 孵化器](http://github.com/phodal/ideas) 页面上似乎也没有一个特别让我满意的想法,虽然上面有各种不样有意思的ideas。多数都是在过去的一年是完成的,然而有一些也是还没有做到的。
|
228 | 229 |
|
229 |
| -##说说标题 |
230 |
| - |
231 | 230 | 尽管一直在Github上连击看上去似乎是没有多大必要的,但是人总得有点追求。如果正是漫无目的,却又想着提高技术的同时,为什么不去试试?毕竟技术非常好、不需要太多练习的人只是少数,似乎这样的人是不存在的。大多数的人都是经过练习之后,才会达到别人口中的“技术好”。
|
232 | 231 |
|
233 | 232 | 这让我想起了充斥着各种气味的知乎上的一些问题,在一些智商被完虐的话题里,无一不是因为那些人学得比别人早——哪来的天才?所谓的天才,应该是未来的智能生命一般,一出生什么都知道。如果并非如此,那只是说明他练习到位了。
|
|
238 | 237 |
|
239 | 238 | 于是在想明白了很多事的时候起,便有了Re-Practise这样的计划,而365天只是中间的一个产物。
|
240 | 239 |
|
241 |
| -##编程的基础能力 |
| 240 | +###编程的基础能力 |
242 | 241 |
|
243 | 242 | 虽说算法很重要,但是编码才是基础能力。算法与编程在某种程度上是不同的领域,算法编程是在编程上面的一级。算法写得再好,如果别人很难直接拿来复用,在别人眼里就是shit。想出能work的代码一件简单的事,学会对其重构,使之变得更易读就是一件有意义的事。
|
244 | 243 |
|
245 | 244 | 于是,在某一时刻在Github上创建了一个组织,叫[Artisan Stack](https://github.com/artisanstack)。当时想的是在Github寻找一些JavaScript项目,对其代码进行重构。但是到底是影响力不够哈,参与的人数比较少。
|
246 | 245 |
|
247 |
| -###重构 |
| 246 | +####重构 |
248 | 247 |
|
249 | 248 | 如果你懂得如何写出高可读的代码,那么我想你是不需要这个的,但是这意味着你花了更多的时候在思考上了。当谈论重构的时候,让我想起了TDD(测试驱动开发)。即使不是TDD,那么如果你写着测试,那也是可以重构的。(之前写过一些利用Intellij IDEA重构的文章:[提炼函数](https://www.phodal.com/blog/intellij-idea-refactor-extract-method/)、[以查询取代临时变量](https://www.phodal.com/blog/intellij-idea-refactor-replace-temp-with-query/)、[重构与Intellij Idea初探](https://www.phodal.com/blog/thoughtworks-refactor-and-intellij-idea/)、[内联函数](https://www.phodal.com/blog/intellij-idea-refactor-inline-method/))
|
250 | 249 |
|
251 | 250 | 在各种各样的文章里,我们看到过一些相关的内容,最好的参考莫过于《重构》一书。最基础不过的原则便是函数名,取名字很难,取别人能读懂的名字更难。其他的便有诸如长函数、过大的类、重复代码等等。在我有限的面试别人的经历里,这些问题都是最常见的。
|
252 | 251 |
|
253 |
| -###测试 |
| 252 | +####测试 |
254 | 253 |
|
255 | 254 | 而如果没有测试,其他都是扯淡。写好测试很难,写个测试算是一件容易的事。只是有些容易我们会为了测试而测试。
|
256 | 255 |
|
|
264 | 263 |
|
265 | 264 | 测试是代码的最后一公里。所以,尽可能的为你的Github上的项目添加测试。
|
266 | 265 |
|
267 |
| -###编码的过程 |
| 266 | +####编码的过程 |
268 | 267 |
|
269 | 268 | 初到TW时,Pair时候总会有人教我如何开始编码,这应该也是一项基础的能力。结合日常,重新演绎一下这个过程:
|
270 | 269 |
|
|
281 | 280 |
|
282 | 281 | 在我们实际工作中也是如此,接到一个任务,然后分解,一步步完成。不过实现会稍微复杂一些,因为事务总会有抢占和优先级的。
|
283 | 282 |
|
284 |
| -##技术与框架设计 |
| 283 | +###技术与框架设计 |
285 | 284 |
|
286 | 285 | 在上上一篇博客中《[After 500: 写了第500篇博客,然后呢?](https://www.phodal.com/blog/after-500-blogposts-analytics-after-tech/)》也深刻地讨论了下这个问题,技术向来都是后发者优势。对于技术人员来说,也是如此,后发者占据很大的优势。
|
287 | 286 |
|
|
301 | 300 |
|
302 | 301 | 技术同人一样,需要不断地往高一级前进。我们只需要不断地Re-Practise。
|
303 | 302 |
|
304 |
| -##领域与练习 |
| 303 | +###领域与练习 |
305 | 304 |
|
306 | 305 | 说业务好像不太适合程序员的口味,那就领域吧。不同行业的人,如百度、阿里、腾讯,他们的领域核心是不一样的。
|
307 | 306 |
|
|
311 | 310 |
|
312 | 311 | 这也是下一个值得提高的地方。
|
313 | 312 |
|
314 |
| -##其他 |
| 313 | +###其他 |
315 | 314 |
|
316 | 315 | 是时候写这个小结了。从不会写代码,到写代码是从0到1的过程,但是要从1到60都不是一件容易的事。无论是刷Github也好(不要是自动提交),或者是换工作也好,我们都在不断地练习。
|
317 | 316 |
|
|
0 commit comments