-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfeed.xml
More file actions
412 lines (295 loc) · 44.5 KB
/
feed.xml
File metadata and controls
412 lines (295 loc) · 44.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>Bai_Mingze</title>
<id>http://www.baimingze.com/</id>
<link href="http://www.baimingze.com/"/>
<link href="http://www.baimingze.com/feed.xml" rel="self"/>
<updated>2015-07-26T09:27:00+01:00</updated>
<author>
<name>Bai_Mingze</name>
</author>
<entry>
<title>Nerver give up</title>
<link rel="alternate" href="http://www.baimingze.com/blog/2015/07/nerver-give-up.html"/>
<id>http://www.baimingze.com/blog/2015/07/nerver-give-up.html</id>
<published>2015-07-26T09:27:00+01:00</published>
<updated>2015-07-26T23:03:25+01:00</updated>
<author>
<name>Bai_Mingze</name>
</author>
<content type="html"><p>当老师的主要任务,就是将一些知识、道理教给学生,苦口婆心,孜孜不倦;
但是,这些道理,你懂了,并不代表你就不会犯错了。整个人生,都是成长的过程。</p>
<p>前几个月远程指导一个同学的毕业设计,题目是EBI这边某生物信息数据分享系统的修改。由于这名同学对编程不熟悉也不喜欢,期间屡次三番找我说要换题目,我没有同意。因为我知道,他需要修改的地方其实很少,也完全有时间来找到这些需要修改地方————如果他足够用功并一点一点按照我说的来做的话。由于他找的工作是销售,我也鼓励他向在学校的老师以及与他并不相熟的高手同学寻求帮助让他们指点一下,同时也锻炼锻炼脸皮和搞定客户的技巧。</p>
<p>最终,结果作出来了,他也松了一口气,向我说些感激的话。我承认这两个月也给了他不小的压力,所以在最后他把东西做出来的时候,我想应该藉着这个机会让他也学到一些人生的道理,就对他说:同学阿,临毕业老师得送你一句话:“男子汉不轻言放弃”。他表示很有道理,最后还把这句话写到毕业论文的致谢里。</p>
<p>如今事情已过去好几个月,同学们也到新的岗位上开创新天地去了。</p>
<p>但是昨天发生的一件事,却让我发现我也轻言放弃了。</p>
<p>昨天到伦敦逛了一天,上午游全城、下午参加创业者论坛、傍晚骑游河畔,最后的节目是到电影院当了一回Tom Cruise的粉丝,远远拍了一些照片。来自巴西的朋友Marco把行程很紧凑,除了有点累以外,都玩的很开心。</p>
<p>火车在晚上9点左右抵达剑桥,天还很亮,我告诉Marco我早上把自行车锁在了一个专用场地旁边,这个架子可以放两层自行车,看起来蛮高级的,但是我还没搞清楚上面一层是怎么锁车并弄上去的,要不要一起去研究研究?Marco欣然一同前往。停车场旁边有一片工地,有围栏围着,我远远指着围栏说今天早上场地停满了车,我赶时间就把车锁在了围栏上了。当我们顺着围栏找我的车时,我赫然发现,只有一把孤零零的U型锁挂在了围栏上,U型的钢筋竟然被人剪断了!我顿时心凉了下来,沮丧地说这是我的锁,车被偷了。Marco经常喜欢开点玩笑,认为我在逗他玩,我多次表示我不是鸡丁,我是西瑞斯。他还是不相信,让我拿出钥匙来开锁,我把钥匙伸进去,成功地转动了锁,虽然U型钢筋没有取出来,我解释说这是因为形状和位置不大对才会卡住的,以前也经常遇到。在我诚恳的眼神和铁的事实面前,他终于相信了,表示太不可思议了,那种盗窃方式是他第一次见到,又问了我车子买成多少钱,又安慰了我一下。我心情自然很糟,想着再买车时最多只能买个50磅的破车骑着去上班,又更加难受了。</p>
<p>Marco可能被近在眼前的停车架子吸引住了,继续朝着那个方向走去。我也懵着头跟着走,但已经没有研究高科技的兴致了。走了几步,突然眼前一亮:我的车好好地停在那里,锁也是好好的!谁在跟我开这种玩笑?太过分了。不过不管怎样,失而复得的感觉实在很美好。我喜孜孜地打开锁,还把被剪断的锁拿来比较,并拍照留念:)。</p>
<p>回家的路骑得很轻快。</p>
<p>当我躺在床上回想整个事情时,却发现自己也犯了轻言放弃的错误。当看到那把一模一样的锁被剪断的时候,我就认定了那是我的锁,没有想到去旁边再找找看。也许是我把相同的锁出现在同一个地方并且又恰好有一把被剪断的概率想得太低了,又或许是其它原因?总之,这些理由或者借口都不重要,是我完全没有努力其它选择就轻言放弃。</p>
<hr>
<p>后记(流水帐)</p>
<p>这个月没顾得上写东西,是因为从这个月开始,我的周末生活突然变得丰富起来,一时间大量信息涌入脑中,需要一些时间来消化。简单总结一下:参加学术会议,去丘吉尔庄园旅游;这只是开头,后续就是与这两次活动中新认识的朋友去泡泡酒吧、听听剑桥的讲座以及去伦敦参加Hackthon(编程马拉松)/创业论坛等等,期间又认识新朋友。。。这些活动对我这个从小以不善言辞不善交际自居(其实是缺乏自信和自我表达意识)的我,是不小的挑战:每次都要集中精力观察、学习、吸收和改进。但麻烦的是英语水平还不高,很多东西听不懂,想说的又说不出来或者说出来了别人又听不懂,比较影响交流。</p>
<p>前几天,在BioJS会议上认识的巴西帅哥Marco(EBI的实习生)向我发来邀请——有个创业者论坛在上次去过的Google Campus举行。我也马上表示很乐意一同前往,主要目的是为了见识各种场面,以及把我那薄薄的脸皮给继续往厚里磨。</p>
<p>论坛在下午举行,Marco很贴心地安排了上午的伦敦全城游,就是坐在双层巴士上,观看伦敦各大著名景点。我们俩都很high,照片也拍的不亦乐乎。椅背上有解说器,插入耳机即可收听到世界各大语言的解说词。伦敦果然是个有历史厚度的大城市,一时间历史景点故事汹涌而来,内存几乎溢出。</p>
<p>中午买个Subway长条面包,里面的肉、蔬菜、酱自选,丰富自由的搭配,味道还不错。</p>
<p>下午参加论坛,见识了很多优秀的创业人和他们的讲座,学到了很多Presentation技巧,又在中间Network Break时磨脸皮。认识了一个学经济学的华人学生Jamie,临走时交换了Linkedin帐号。</p>
<p>论坛完毕之后,Jamie带着我们去了公共自行车站,第一次在伦敦骑了回自行车,全城乱转之后在泰晤士河畔的大城堡坐下休息,吃了点面包,讨论下一步去哪里,Marco说Tom Cruise来伦敦宣传新片,地点就在BFI IMAX。说走就走,于是我们又驱车前往伦敦眼旁的IMAX电影院,平生第一次当了回粉丝一族。红地毯在马路下方,路边围墙就聚集了一群长颈鹿,手举手机喀嚓喀嚓拍个不停,不时还有司机开窗询问你们在看什么,大家抢着回答:Tom Cruise,Mission Impossible。</p>
</content>
</entry>
<entry>
<title>Is Apache Spark going to replace Hadoop (Translated Version in Chinese)</title>
<link rel="alternate" href="http://www.baimingze.com/blog/2015/06/is-apache-spark-going-to-replace-hadoop-translated-version-in-chinese.html"/>
<id>http://www.baimingze.com/blog/2015/06/is-apache-spark-going-to-replace-hadoop-translated-version-in-chinese.html</id>
<published>2015-06-28T20:34:00+01:00</published>
<updated>2015-06-30T22:01:36+01:00</updated>
<author>
<name>Bai_Mingze</name>
</author>
<content type="html"><p>[版权所有,转载请注明出处:baimingze.github.io]</p>
<p>在言必称大数据的时代,Hadoop风起云涌,早已成为大数据在技术领域的代名词。然后长江后浪推前浪,Hadoop才进化到2.0版不久,一个号称能够把Hadoop计算速度提高100倍的Spark又横空出世。Spark真的能把Hadoop计算速度提高100倍么?答案是肯定的,在某些迭代次数很多的计算中,采用内存存储中间数据的Spark相比采用硬盘存储中间数据的Hadoop在I/O性能上优势不言而喻。但Spark同时声称,即使对于很多超过内存资源承载能力,需采用硬盘存储的数据处理用例,Spark依然可以凭借其数据结构设计上的优势将速度提高10倍以上。</p>
<p>业界人士都很关注,Spark会替代Hadoop么?我找到一篇写的很好的博文《<a href="http://aptuz.com/blog/is-apache-spark-going-to-replace-hadoop/">Is Apache Spark going to replace Hadoop?</a>》,特将其翻译过来练练手。以下为翻译内容,原作者为Jameel Mohammed。</p>
<hr>
<p>什么是Apache Spark?
为什么它在大数据领域如此火爆?
Apache Spark会替代Hadoop么?
如果你计划进入大数据分析业务领域,是不是真的需要关注Spark?
希望本博文能为你解答一些可能近期萦绕在你脑中的问题。</p>
<h2>Apache Spark简介</h2>
<p>和Hadoop一样,Spark也是一种在分布式计算集群上执行常见数据分析任务的框架系统。 它的特点之一是计算过程中的数据可以全部存储在内存中而不需要写入硬盘,从而提供了相比mapreduce更快的计算速度。此外,它还可以:
* 运行在已搭建好的Hadoop 集群上
* 访问Hadoop 的数据存储系统(HDFS)
* 处理Hive存储的结构化数据
* 处理来自HDFS,Flume,Kafka,Twitter等平台的流数据</p>
<p><img alt="Spark结构图" src="http://aptuz.com/static/media/uploads/blog/spark_arc.png" /></p>
<blockquote>
<p>译者注:该图清晰地表明了Spark向开发真和用户提供的语言支持,以及向下提供的数据输入接口支持。图中最上方的蓝色方块里包含了三种语言:Java、Scala、Python,它们是目前Spark支持的3种语言,采用这3种语言可以较轻松地建立Spark数据分析任务。中间灰色方框代表Spark,它包含了3个数据访问子系统:Spark核心系统,Spark SQL和Spark Stream。Spark核心系统处理HDFS和HBase里存储的NoSQL数据;Spark SQL负责处理Hive里存储的结构化(也可以理解成SQL存储的)数据; Spark Stream则可以处理Flume等等所存储的流数据。注意,HDFS、Hbase和Hive被包含在图底部的一个叫做Hadoop的蓝色椭圆形里,因为它们三者都是Hadoop生态系统中的一员。</p>
</blockquote>
<h2>Apache Spark会替代Hadoop么?</h2>
<p>Hadoop也是”在分布式计算集群上执行常见数据分析任务的框架系统“。不过它所运行的任务是”map/reduce“类型,这些任务通常需要很长的时间才能完成,几分钟甚至几个小时。而Spark的设计理念是:运行于Hadoop集群之上,替代传统批处理式的map/reduce模型,从而能实时完成流数据处理任务以及能在几秒内完成的交互式查询任务。所以,其实Hadoop既支持传统的map/reduce模型,又支持Spark的。为什么这么说呢?因为Hadoop并不单纯是执行MapReduce的一个计算引擎或者编程模型,而代表了一个生态系统,如下图所示。</p>
<p><img alt="Hadoop生态系统图" src="http://aptuz.com/static/media/uploads/blog/hadoop_echosystem.png" /></p>
<blockquote>
<p>译者注:Hadoop”生态系统“,”物种“很丰富,层次也很分明。可是,图中各个软件/技术(线形方框)之间的连线,以及它们与小圆点之间连线的具体含义没想明白,望指教。
一时兴起,打个比方:有一个名叫Hadoop鱼缸里养了一条名叫MapReduce的鱼,以及其它一些水草、小虾米(HDFS、YARN)什么的,构成了一个完整的生态系统。但是由于很久一段时间以来,鱼缸里就一条鱼,大家也称这条鱼为Hadoop。现在鱼缸里又放进来一条名叫Spark的鱼,大家都很关心Spark这条游的更快的鱼会取代Hadoop鱼缸里那条名叫MapReduce的鱼么?</p>
</blockquote>
<h2>Hadoop MapReduce vs. Spark, 该选谁?</h2>
<p>Spark尽量把数据存储在RAM里,从而减少网络和硬盘I/O,当然会比Hadoop MapReduce更快一些。但是它对计算机硬件的配置要求也更高,毕竟大内存也不是说上就能上的,成本可不低。所以答案是:具体问题具体分析,而且随着计算机硬件参数和价格的变化而变化。</p>
<h2>Hadoop Mapreduce 和Apache Spark的区别</h2>
<p>简单一句话:Spark将数据存在内存中而Hadoop则把数据存在硬盘里。Hadoop采用”多份拷贝“(replication)来实现容错机制,而Spark采用另外一种数据存储模型:弹性分布式数据集(Resilient Distributed Datasets,RDD)。RDD采用一种更聪明的方法来实现容错,可以最小化网络I/O。详见UC Berkeley的链接”<a href="http://www.eecs.berkeley.edu/Pubs/TechRpts/2011/EECS-2011-82.html">Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing.</a>“。</p>
<p>Spark的学术论文的描述为:”RDDs通过一种概念沿袭(notion lineage)的方法来实现容错机制:如果一个RDD的某一部分丢失了,该RDD应该拥有足够的信息来重建所丢失的部分“。因此系统不再需要放置多份拷贝来实现容错了。</p>
<blockquote>
<p>仅从博文中的字句描述,我还以为RDD拥有磁盘阵列RAID一样的纠错机制,直到阅读了论文后才发现不是这么回事。在Spark的计算过程中有一系列的RDD转换过程:RDD1-&gt;RDD2-&gt;RDD3-&gt;&hellip;,如果中间的RDD3的某一部分丢失,那么根据RDD2和基于RDD2的转换,可以重新记算出RDD3的丢失部分。但是这个记算过程和完全重新执行基于RDD2的转换有何区别?是部分与整体的关系么?计算量有多大?我暂未在论文中找到答案。论文原文如下:”RDDs reconstruct lost partitions through lineage : an RDD has enough information about how it was derived from other RDDs to rebuild just the missing partition, without having to checkpoint any data.“</p>
</blockquote>
<h2>学Apache Spark之前需要先学Hadoop么?</h2>
<p>不需要。
Spark是一个独立的项目,只不过在Hadoop2.0版和YARN之后,Spark凭借它能运行在HDFS之上和计算速度快的优势,积极融入Hadoop生态系统而异军突起。Spark也借此成为Hadoop 生态系统中另一个重要的数据处理引擎,极大增加了Hadoop栈的能力范围,创利于商业界和业界。</p>
<p>对开发者来说,在这二者之间毫无重叠。在Hadoop框架中你需要继承Java类,编写MapReduce任务。而Spark只是一个可以通过函数调用来进行并行计算的库。
对计算机集群的操作员来说,在一些通用技能上还是有一部分重叠的,如监控配置(monitoring configuration)、代码部署(code deployment)等。</p>
<h2>Apache Spark 的特性</h2>
<p>此处概述一些Spark在大数据领域凸现的一些重要特性,内容来自<a href="http://spark.apache.org/">http://spark.apache.org/</a>。</p>
<ol>
<li><p>速度
Spark基于内存进行计算,将Hadoop上的一些基于硬盘的计算任务加快了100倍; 而一些同样基于硬盘的Spark计算,相对Hadoop仍能提高10倍。Spark成功的诀窍在于——减少硬盘读写次数,因为它能将计算过程中间的数据存储在内存中。 这里面的核心技术名叫弹性分布式数据集(Resilient Distributed Datasets,RDD),它允许Spark透明地(transparently)将数据存储在内存中,并且只在必需的时候才持久化写入到硬盘中。数据处理中的性能瓶颈主要在于硬盘的读写,相比Hadoop,Spark能将读写次数减少一大半,岂能不快?
<img alt="计算时间比较图" src="http://aptuz.com/static/media/uploads/blog/.thumbnails/logistic-regression.png/logistic-regression-250x129.png" /></p></li>
<li><p>易用性
Spark支持Java, Scala或Python三种语言,函数库调用简单快捷。它允许开发人员使用自己熟悉的语言快速地创建和运行并行程序。Spark集成内置了超过80个高级“运算子”(operator),有了它们,用户甚至可以用交互命令行的方式来查询数据,不需编写大段大段的代码。</p></li>
</ol>
<p>采用Spark Python API编写字数统计的例子:</p>
<div class="highlight plaintext"><table style="border-spacing: 0"><tbody><tr><td class="gutter gl" style="text-align: right"><pre class="lineno">1
2
3
4</pre></td><td class="code"><pre>datafile = spark.textFile("hdfs://...")
datafile.flatMap(lambda line: line.split())
.map(lambda word: (word, 1))
.reduceByKey(lambda x, y: x+y)
</pre></td></tr></tbody></table>
</div>
<ol>
<li><p>联合使用SQL, 流处理和复杂分析
除了简单的“map”和“reduce”之外,Spark还支持SQL查询、流数据以及复杂分析任务(如机器学习、图算法等)。更牛的是,Spark还支持在单个工作流中无缝联合使用它们。</p></li>
<li><p>多种平台上运行
Spark可以运行在Hadoop,Mesos上,也可以运行在单机或者云平台上。它能访问的数据源包括HDFS、Cassandra、HBase S3等。</p></li>
<li><p>Spark明显超越Hadoop的用例</p>
<ul>
<li>迭代计算步骤很多的机器学习算法</li>
<li>可交互的数据挖掘和数据处理</li>
<li>完全兼容Apache Hive数据仓库系统,并比Hive快100倍以上</li>
<li>流处理:在实时流数据中进行日志处理、欺诈检测(报警、集成、分析)</li>
<li>传感器数据处理:将多点检测、终点汇集的数据放置在内存中进行处理,简单快速</li>
</ul></li>
</ol>
<p>Spark虽然很强,但是仍旧还在成长中。直白点说,Bug还不少。</p>
<h2>到你了,开始学吧</h2>
<p>你很容易就能用Spark写出强大的大数据应用,相信我。</p>
<p>你已有的Hadoop 和/或编程技能可以让你在短短几分钟内就能富有成效地与你的数据交互。</p>
<p>你可以这样开始学:
* 下载: http://spark.incubator.apache.org/downloads.html
* 快速开始: http://spark.incubator.apache.org/docs/latest/quick-start.html
* Spark 峰会 2013 (Dec. 2, 2013): http://spark-summit.org
* Amazon Web Services 文档: https://aws.amazon.com/articles/4926593393724923</p>
</content>
</entry>
<entry>
<title>A visiting to the Sanger Institute</title>
<link rel="alternate" href="http://www.baimingze.com/blog/2015/06/a-visiting-to-the-sanger-institute.html"/>
<id>http://www.baimingze.com/blog/2015/06/a-visiting-to-the-sanger-institute.html</id>
<published>2015-06-21T10:30:00+01:00</published>
<updated>2015-06-21T19:31:42+01:00</updated>
<author>
<name>Bai_Mingze</name>
</author>
<content type="html"><div class="highlight plaintext"><table style="border-spacing: 0"><tbody><tr><td class="gutter gl" style="text-align: right"><pre class="lineno">1</pre></td><td class="code"><pre>参观Sanger中心
</pre></td></tr></tbody></table>
</div>
<p>Welcome Trust Genome Campus, 坐落在剑桥以南一个名叫Hinxton的村庄。这里风景秀丽,物产丰饶,旁有康河潺潺而过。</p>
<p>20世纪90年代初始,这片广袤的麦田里成长起两座世界闻名的生物学研究机构,那便是Welcome Trust Sanger Institue和European Bioinformatics Institute。这俩机构虽分属不同政府管辖,但相生相伴,共同成长,不觉已匆匆走过23年的时光。
图片</p>
<p>我来到EBI访学已4个多月,几乎每天中午都在Sanger中心Sulston大楼的咖啡厅吃午饭,却从没进入Sanger中心去一探究竟,心中难免向往,想看看生物信息的数据都是在什么样的环境下在什么样的科学家手中产生的。</p>
<p>机会终于来了,有次在QQ群里看到剑桥学联旅游部在发布Sanger中心参观广告(由旅游部副部长、在Sanger工作的丁丁女士组织),便赶紧报名参加。终在6月16日进入神秘的Sanger中心,得偿所愿。</p>
<p>一行20多人在Genome Campus大门集和签到之后,由Sanger中心的Steve带领前往Sulston大楼的小会议室集中“授课”。Steve给大家作了基因组学/生物信息学基础知识的普及,这是因为Sanger也经常接待中小学生来参观的原因,因此都是从最基础的讲起。于是,我又上了一次生动的生物基础课,重温了DNA双螺旋结构、基因、染色体等知识。</p>
<p>当然,首先要介绍的就是Sanger他老人家到底是谁?
图片
墙上幻灯显示的是Sanger他老人家以及他所发明的DNA测序方法,也是他获得第二个诺贝尔奖的成果——DNA测序方法,该方法目前都还在继续使用。这就是给我们“上课”的小教室,双螺旋结构的教具相当齐全,且可拆卸成一个一个的碱基,也很生动。多边形桌方便大家分组讨论,可惜今天时间有限,只是分组研究各种模型,没有讨论。</p>
<p>提及DNA的双螺旋结构,大家都知道Francis Crick and James D. Watson 最先提出DNA的双螺旋,但是他们得出最终结论的关键数据却是来自这位美女科学家(Rosalind Elsie Franklin)做出的完美X射线图。也是她的同事不小心把未发表成果给竞争对手看,导致别人抢了先,但她本人并不在乎。只可惜她英年早逝,没有活到DNA双螺旋结构获诺贝尔奖的时刻,不然她也很可能获奖的。
图片</p>
<p>Steve给我们演示了第一代测序仪核心部件:跑电泳的凝胶被做成了一根根的细线并通上电,让DNA序列从样品盒开始往终端跑,在终端扫描读取萤光信号,测出DNA序列。
图片</p>
<p>之后便是下一代测序(Next Generation Sequencing),也算是第二代测序技术了,核心就是这小小的玻片。个人感觉这发展思路有点像集成电路,设备越来越小,最终做成芯片。
图片</p>
<p>接下来介绍人类基因组计划,英国占了30%多的比例,全部在Sanger中心完成,领衔的是John Sulston,也是我们上课和参观的测序实验室所在这栋楼名字的来源。
图片</p>
<p>HGP计划完成后,他们还真把第一个人类基因组打印成书,收藏在博物馆里了。Sanger中心所展示的几本书是他们自己所测出来的部分,可以看到,这套全是由agtc组成的“天书”是多么厚实,又是多么的难解读。书的封面专门强调:这是面向全世界免费共享,自由使用的。</p>
<p>图片</p>
<p>图片</p>
<p>课讲完后,接着是咖啡休息时间。我开始还以为要自己到旁边的咖啡厅去买,出门惊讶地发现Sanger中心在课堂外免费提供咖啡、茶、饼干,待遇实在太好了。可惜光聊天去了,没有照相,不过场景跟EBI每天都有的免费下午茶差不多。</p>
<p>大家自由交流了一段时间之后,终于要去参观数据中心和实验室了。</p>
<p>数据中心建在另外一栋楼的地下一层,中心外面一条走廊供参观,走廊里还陈设了当年HGP计划时的测序仪。</p>
<p>图片</p>
<p>图片</p>
<p>出了数据中心,回到Sulston楼,进军最核心的测序实验室。在迷宫之中穿梭了好几分钟之后才来到测序实验室。</p>
<p>实验室一角
图片</p>
<p>实验室另一角度
图片</p>
<p>二代测序仪1
图片
二代测序仪2
图片</p>
<p>三代测序仪
图片</p>
<p>三代测序仪特写,花花绿绿的图案随时在变动,实时显示测出的序列。
图片</p>
<p>这是我第一次近距离接触生物信息数据的来源——1-3代测序仪。听Steve说他们这里还有几台Oxford Nanopore Technologies的测序仪,这可是第四代的哟!等它们全面铺开占领市场时,每个人1000美元的价格就能拥有自己的基因组数据了。每人一本天书,这是多大的数据?想想都醉了。</p>
<p>HGP计划早已落幕,未来就在精准医疗计划。英国也有类似的的大规模测序+医疗计划,那就是来自GenomicsEngland的100,000人基因组计划。未来的大规模测序中心就在这里,马上就快要落成。
图片</p>
<p>(拍摄地点是我办公室所在的EBI South Building)</p>
<p>实验室参观完毕之后,还留了点时间供大家一起继续讨论交流,我们又围到1代测序仪那里继续研究它的结构。</p>
<p>Steve非常敬业,错过了午饭时间也坚持到最后,把每个参观者都送上车之后才离开。最后离开的是同样辛苦的组织者丁丁,不光坚持到最后,中间还跑前跑后准备零钱、联络汽车等。向他们表示诚挚的谢意。</p>
<p>参观完之后大家都纷纷把自己的照片共享出来。本文中有三幅照片就是其他团员拍摄的,在此也向所有团员表示感谢。</p>
</content>
</entry>
<entry>
<title>One possible solution for getting black screen when logout/reboot on Linux</title>
<link rel="alternate" href="http://www.baimingze.com/blog/2015/06/one-possible-solution-for-getting-black-screen-when-logout-reboot-on-linux.html"/>
<id>http://www.baimingze.com/blog/2015/06/one-possible-solution-for-getting-black-screen-when-logout-reboot-on-linux.html</id>
<published>2015-06-14T11:09:00+01:00</published>
<updated>2015-06-14T11:39:02+01:00</updated>
<author>
<name>Bai_Mingze</name>
</author>
<content type="html"><p>I have recently installed Fedora 22(KDE spin) on my laptop(ThinkPad T440, with the Inetel HD graphic card).</p>
<p>After I logged in the system, everything was fine with the plasma desktop.</p>
<p>But when I try to logout/reboot(either from KDE or konsole), I got a black screen, no text, no cursor, just the fan&rsquo;s working noise, telling me that the computer was still working at some level. By the way, the Ctrl+Alt+F1/F2&hellip;got no response neither.</p>
<p>I have reset the runlevel to 3 and then try to use &ldquo;startx&rdquo;, then I got a black screen on start! Even through I can logged in to KDE at runlevel 5 before.</p>
<p>After doing google, I got some ideas from the other&rsquo;s posts. And I found a way can help me to get rid of the black screen. </p>
<p>The main idea is remove the &ldquo;nomodeset&rdquo; from boot. Here is my way indetail:</p>
<ol>
<li>backup</li>
</ol>
<div class="highlight plaintext"><table style="border-spacing: 0"><tbody><tr><td class="gutter gl" style="text-align: right"><pre class="lineno">1
2</pre></td><td class="code"><pre>cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak
cp /etc/default/grub /etc/default/grub.bak
</pre></td></tr></tbody></table>
</div>
<ol>
<li><p>remove &ldquo;nomodeset&rdquo; from these files with your editor</p></li>
<li><p>enjoy yourself</p></li>
</ol>
</content>
</entry>
<entry>
<title>Are you ready for the open science</title>
<link rel="alternate" href="http://www.baimingze.com/blog/2015/06/are-you-ready-for-the-open-science.html"/>
<id>http://www.baimingze.com/blog/2015/06/are-you-ready-for-the-open-science.html</id>
<published>2015-06-07T08:44:00+01:00</published>
<updated>2015-06-13T14:55:48+01:00</updated>
<author>
<name>Bai_Mingze</name>
</author>
<content type="html"><p>[版权所有,欢迎转载,转载请注明出处:baimingze.github.io]</p>
<p>说open science,得先说开源。开源,也就是Open source,混迹于IT领域的人,应该都不会陌生。即使你只是普通的用户,你也肯定与开源软件亲密接触过,除非你告诉我你从没有摸过Android手机。</p>
<p>Android可以说是Linux操作系统(影响力最大的开源软件)的儿子,它继承了Linux的核心。不过,它的外在却由Google 一手掌控,并不完全开放。就好比去天体海滩玩,大家都脱的光洁溜溜一览无余,~赤裸~坦诚相见,就Android把自己包裹的严严实实。直白的说,你这是居心不良,故意来占人便宜的,自然招来Linux开发者的强烈不满。他们纷纷指责Google只知道索取,不知道奉献,一双眼睛贼溜溜盯着别人的身体,自己的却不让人看到。再加上Google也算名门望族,Android也是身材婀娜,因此一帮“萎缩男”努力扯掉Android身上那套ASL衣服的心情也是很急迫的。当年一帮开源届大佬纷纷表态,想拉Android下水,但是Google也死拉着不放。Google这么做也是有原因的,他是为了保护硬件厂商开发Android硬件驱动的积极性,保证它们的驱动代码不会被强制开放给社区。是非过错暂不评论,无疑Google的政策在商业上是成功的。</p>
<p>总而言之,开源软件的本质就是,我的软件代码是公开的,随便看,随便抄。但是这是有条件的,你用了我的代码之后,你的软件拿出来公开的时候,你的代码也必须遵守同样的开源协议,向所有人开放(GPL类)。Linux就是在这个环境下由开源精英们聚沙成塔,抚养成人,到如今能与Windows、Apple系列OS三分天下。之后为了鼓励一些公司也参与开源社区,又产生了Apache Software License所属的(BSD类协议),它规定你可以使用开源代码,而且发布软件的时候也可以不公开你自己的代码。这个条件很优厚了,相当于随便给人用,当然底线是不能剽窃别人的成果,把别人的代码说成是自己开发的。</p>
<p>要说剽窃这个东西,还真的有,而且很多。前几天看到一个中国作者与BMC Systems Biology 期刊PK,原因是该刊某篇文章(也是中国团队)发布的软件的核心算法部分剽窃了他的代码,结果该刊编辑处理投诉时一拖再拖,拖了一年多,给了剽窃者重新发布新版软件并删除剽窃代码的机会,最终给了一个引用不当的判词,轻轻放过。原作者还在斗争中,详情看<a href="http://ygc.name/2014/11/23/proper-use-of-gosemsim/">这里</a>。这种证据确凿(两个软件代码都发布在共享平台CRAN上)的剽窃打击起来尚且如此困难,那些偷偷把别人代码拿来改改界面就说是自主知识产权来搞软件著作权登记骗点小钱就更不用说了。但是也有胆大的,骗国家核高基之类的大钱,甚至染指国家最高科技荣誉奖。</p>
<p>言归正传,多点正能量,少点负能量。科技发展洪流滔滔,势不可当。随着社交媒体的发展,IT领域的开源精英们也迎来了自己的社交平台:GitHub。与我们的微薄一样,“粉丝”们可以近距离观察自己的“偶像”,与“偶像”直接互动。当然IT精英们可不比娱乐明星,他们的目标是推动科技进步,而不是满足粉丝的心理欲望。在GitHub上,如果你“崇拜”某个“英雄”,与他互动的方式不是给他发私信示爱,发微薄表支持,而是阅读他的代码,找bug,提feature,加issue,fork他的代码并加以修改,改完了如果你觉得还不错,还可以pull-request要求他把你改的代码合并到他的代码里,成为发布版的一部分! 目前我还没听说哪个娱乐明星与粉丝一起互动完成某个作品,但是在GitHub,这样的事情每天都在发生。</p>
<p>更牛b的是,互动多了,你的技术水平也上去了,只要你想到一两个好的创意并实现,你也可以成为“英雄”。想get IT技能?想追逐世界潮流?来GitHub吧。</p>
<p>写到这个地方,回过头去瞄了一眼题目“Are you ready for the open science”,才发现我绕了半天还没到主题。不知道今天高考有没有考语文?如果这是高考作文,看来是拿不了高分了。之所以用英文标题,是因为我用的博客软件发布时都是按标题来作url,中文url支持不好而且看起来很怪,请原谅了。</p>
<p>为什么前面要扯一堆开源和github?那是因为现在科学家也进驻GitHub了!昨天看到一个美女科学家Erin McKiernan的博客(看照片应该是美女,ps痕迹不重,想看美女科学家真容的请点<a href="http://en.gravatar.com/emckiernan#photo-1">这里</a>.看介绍,她是一名神经科学家,按我初浅的理解,可能是和《生活大爆炸》里面sheldon的女朋友的工作有些类似,但是Erin不光要做实验,还要用算法/软件分析她所获得的实验数据。写到这里我又不禁想到老话题:现在哪行哪业不需要编程?</p>
<p>以下部分译自Erin McKiernan的博客<a href="https://emckiernan.wordpress.com/2015/06/04/becoming-a-more-open-scientist/">Becoming a more open scientist</a>,我翻译得可能会有一口大老爷们的腔调,想听美女口音的请原谅。</p>
<blockquote>
<p>过去几个月里我有一种感觉,就是我的研究工作还不够开放,我觉得我应该做的更好。其实我的所有科研文章都已经提供给大家自由下载,甚至是还没发表的预印本(preprint)都拿出来了。但我一直都有更近一步、把我的代码和数据全都共享出来的想法,只是至今还没有做到。今天我不想再拖下去了。</p>
<p>想要我的数据?给你!想要我的代码?也给你!什么?你还想要知道我是怎么一步一步地分析数据的?你还想把我文章里的图表都照着画出来?也没问题,全都给你!</p>
<p>因为今天我开设了我的github repository<a href="https://github.com/emckiernan/eki-study">主页</a>(真的是第一次哟!)。这里面包含了我最近一篇文章预印本的数据和代码,我也会马上再更新一下这篇文章的版本。现在,我会很乐意就我共享在github上的资料回答你的问题,特别是如何用ipython notebook(也是我的第一次哦)详细记录的电生理学数据的处理过程以及如何分析从电生理学数据里抽取出来的bursting数据。</p>
<p>等我有时间的时候,我还会用博客记录如何获取到这些数据以及如何创建repository。因为这是我第一次这样做,在这过程中我也学会了很多方法使我的数据和代码变的更加有用,我甚至还学会了如何优化我的代码(译者注:分享的过程中也可以很大程度提高自己!)我要感谢 Ross Mounce ,他在如何共享我的数据上提供了很多很好的建议;我还要感谢 Marco Herrera Valdez 为我早期版本的notebook提供了很好的反馈。准备数据的过程不那么繁琐,但是如果要作的更好,我们还是需要关注一下需要投入多少时间和技能。</p>
<p>现在请下载我的数据,玩的开心,然后我你的想法!我发现github和ipython notebooks确实非常强大,它们也是开创科学的重要力量。 我也很兴奋,能在我的工作开创中用到它们。</p>
</blockquote>
<p>翻译到此结束。我必须得承认,如果我是搞神经科学的,我必然要去她的repository,成为她的粉丝,分析她的数据,向她提问,跟她互动。
Erin还有很多博客讨论open science的,等有空了仔细阅读一下。</p>
<p>现在该回答标题那个问题了。其实我是在向自己提问:你准备好了么? 到EBI访问4个月期间,接触了他们的开发方式和阅读了许多博客之后,我从心底认可了开源软件/开放科学的理念。因此,我想我的答案是,追随美女科学家的脚步,努力开放。至少,已经发表/写成的成果是必须要开放的,这是与同行互动、增加自己影响力的有效手段。但是也不是彻底开放,对于还没有出成果的项目,得有些技巧,不能让竞争者、基金控制者轻易掌握你的开发进度,否则就被别人抢了先,或者说你工作都做的差不多了,还要我资助你干嘛?</p>
<p>附1:今天又是决定一大批年轻人未来命运的时刻,在此祝我的外甥开心同学,以及全国的高考学子们考出自己满意的成绩。</p>
<p>附2:我在EBI上的工作全在github上完成的,你可以在我的repository看到我都参与了哪些开发项目,每天怎么跟同事互动,也可以看到我每天都提交了什么代码。因为github最根本的服务不是社交,而是开发过程的版本控制,整个过程中的每一条代码的更改,每一条需求的提出和解决都是记录在github上的。我的repository地址是:https://github.com/baimingze, 请多指教!</p>
</content>
</entry>
<entry>
<title>attending the bible study</title>
<link rel="alternate" href="http://www.baimingze.com/blog/2015/05/attending-the-bible-study.html"/>
<id>http://www.baimingze.com/blog/2015/05/attending-the-bible-study.html</id>
<published>2015-05-29T11:44:00+01:00</published>
<updated>2015-06-13T14:55:48+01:00</updated>
<author>
<name>Bai_Mingze</name>
</author>
<content type="html"><p>前些天某晚去参加了一个中国人的团契活动,印象深刻。</p>
<p>我决定去参加这次活动,主要有两个原因:</p>
<ol>
<li>邀请我的那个朋友人很好,我们经常在回去的大巴上聊天,大家也聊的很熟了。多次相邀,盛情难却,我就答应了。</li>
<li>来了快四个月了,我基本适应了这边的生活和工作,那么其他中国人是什么样子的,尤其是那些住了很多年的中国人,他们在这里生活愉快么?平时都做些什么?我对他们的各种情况也有着强烈的兴趣。</li>
</ol>
<p>晚上7点朋友开车来接我,我们一起去了一个购物中心旁边的一个教堂里。据朋友说,10多年前他初到剑桥都是来的这个教堂。</p>
<p>我们到的时候已经有几个中国人在那里了,大家看到我这个新朋友到来都热情地打招呼。晚饭前大家都三三两两地围在一起聊天。让我诧异的是有个活泼的外国姑娘,普通话说的比我还标准!还时常谈一点高铁价格贵之类的话题,看来是经常去中国的。</p>
<p>晚饭后,开始说是有两个活动,一个是查经,一个是听一个刚从大陆巡游回来的牧师讲座。有个姓黄的“传导(?)”问我想参加哪个?我虽读过圣经,但是还是更喜欢听人讲自己的见闻,所以选择了听讲座。后来才发现,大家都选择了听讲座:)</p>
<p>讲座开始了。</p>
<p>主讲是一个来英国几十年的老牧师,香港人,以前似乎在考文垂那边传教。这次主要受到香港一个浸信会?的资助,到大陆各个城市访问。牧师每到一个城市,就召集以前从英国回国的弟兄姐妹(也就是传说中的海归)一起聚会,从照片来看,基本都是在聚餐,享受各地美食。 当然除了吃饭以外,牧师的工作职责还是要履行的。他跟这些弟兄姐妹聊生活聊工作,有时还给他们开讲座,题目叫‘拍拖的学问(?)’。这是因为海归的弟兄姐妹主要有两类,一类是大学生,一类是访问学者。而这些大学生海归后,普遍都面临着找到一份好工作以及找到人生伴侣的双重压力。牧师主要介绍他们的情况,每当聊到一个弟兄姐妹有困难时,便说,“让我们为他/她祈祷吧”。</p>
<p>从这些话语,我感受到了宗教的魅力。在你孤独、彷徨、煎熬、痛苦的时候,有一个人,不为钱财也不为其它物质利益,关心你,爱护你;有一群人,不为钱财也不为其他物质利益,欢迎你,包容你。大家一起唱抚慰心灵的歌,一起分享心中的苦闷,你也成为这团体里重要的一员。有这么一个团体,你还愿意远离么?</p>
<p>上面这段话,如果几年前的我看到,会很鄙视现在的我。那时,我以为人只需要有理性,或至少应该努力去追求理性;而不懂得,人首先是感性的动物,后来才发展出理性的思维方式。尊重、满足人的感性需求,才是真正的理性行为。</p>
<p>牧师讲了快一个多钟头,之后就是祷告。出来时已经快9点半了。朋友送我到家后,我匆忙煎了两根香肠,夹在面包片里,再切一些黄瓜和番茄并撒上萨拉酱,就是第二天的午餐了。</p>
<p>附记:</p>
<ol>
<li><p>吃饭的闲聊过程中,认识了一个在剑桥大学访学的兽医专业哥们,以及一个在剑桥制药公司工作的哥们。因为专业有相关性,我跟他们聊的比较热呼。我跟他们聊各种组学,药物靶点筛选,cas9基因敲除等话题,他们很惊异我这个计算机出生的人也懂这些。哈哈,殊不知我早已是生物信息的人了。当然,与这些生物医药领域的专家聊天时,我最关心的就是他们平时都处理些什么数据,用些什么生物信息工具,但是由于时间有限,没有就这个话题深入下去。写到这里突然想起某个同学的签名里说(好象是转述某大佬说的):生物的范围有多广,生物信息的就有多广。可以想象,在全社会都信息化,大数据化的时代,大生物领域的数据整理和知识发现需要大量的人才来帮助他们开发工具以及分析数据。</p></li>
<li><p>兽医专业那哥们来了大半年了,也还没伦敦逛过。当然我也一样,前两个月同事还老问我周末去伦敦了没,我每次都回答没去,后来也就不问了:)。那哥们不去的原因是,周六忙国内学生的事,周日要去教堂,实在没时间。我也差不多,周日要忙学生的事,以及准备下一周的晚饭。周六虽说有时间,但是也懒得跑伦敦那么远,只在近处走走逛逛以及看看书。</p></li>
<li><p>回来的路上跟朋友聊信仰。我说生物领域的科学家相对其他领域的科学家信神的应该更少一些,因为搞生物的难免会触碰到进化论和神创论的分歧,但是咱生物信息领域有一个顶级科学家,他是人类基因组计划的领头人,同时却也是信上帝的。他听了很是诧异,想与我深入研究,可惜那时我已经到家了。</p></li>
<li><p>这是我决定开始长期写博客的第一篇博客。坚持写博客的目的如下:</p>
<div class="highlight plaintext"><table style="border-spacing: 0"><tbody><tr><td class="gutter gl" style="text-align: right"><pre class="lineno">1
2
3</pre></td><td class="code"><pre>- 锻炼写作能力
- 整理思路
- 借博客平台与人交流
</pre></td></tr></tbody></table>
</div></li>
<li><p>请多多指教!</p></li>
</ol>
<p>文中(?)代表我是听来的不知道实际怎么写,或者虽然看到了,但是记不清楚.</p>
</content>
</entry>
</feed>