练琴

练琴 以前有一个电子琴,只是时不时的折腾一番,也没有养成良好的读谱习惯,进步很慢。其实很多人都和我一样,心中从小就有一个各种各样的和艺术沾点边的梦,身边有画画很棒的,有下棋很牛的,还有同事每个月都会去跳舞,我和我老婆说,从小就喜欢折腾各种音乐器械,要不我也正儿八经学学钢琴,开发开发智力?她说,要不先弄你的电子琴吧,要是能坚持下来,再投资钢琴。差不多快一年,事实证明这个兴趣应该是可以坚持下去的。于是请了

[......]阅读全文

分享到:

从构建和测试的效率说起

最近的工作总是在EMR上跑Spark的job,从代码完毕到测试完毕的过程是这样的:

1. 本地测试:

    构建 -> 本地UT -> 观察分析结果,这一阶段可以发现逻辑问题

2. EMR上执行测试:

    上传最新构建到S3 -> 准备EMR资源(包括计算资源和数据) -> 在EMR上执行Spark job

[......]阅读全文

分享到:

Scala的模式匹配

Scala的模式匹配

最近开始学习Scala,相较于学习Haskell的过程来看,Scala真是直观得多,友好得多,更容易上手。以前写过关于从熟悉的Java和JavaScript来逐步学习Groovy和Haskell的文章,这以后再来学习Scala的话,就可以不断比较了。如果和我一样有Java经验的话但是从来没有接触过Scala的话,建议先阅读这篇文章,A Scala Tutorial for Java Progra

[......]阅读全文

分享到:

我眼中的范加尔

我眼中的范加尔

写在双红会之后。曼联遇到利物浦,最近这一年多来,总是可以拿到酣畅淋漓的胜利。从莫耶斯到范加尔,其中的转变,这是一个缩影。毫无疑问范加尔是个颇具争议的主教练,他的身边从来不缺新闻话题,而且他的孤傲和弗格森还不一样,他喜欢把各种内部消息往外抖,说他心直口快也好,说他脑子缺根筋也好,反正记者爱听他爆料,球迷也爱听啊。就在没多久前,因为花了几千万签下一个名不见经传的马夏尔,还受到各方质疑,连他自己都承认

[......]阅读全文

分享到:

七年工作,几个故事

七年工作,几个故事

从毕业工作到现在,已经有七个年头,年头虽然不久,但是回过头来看看那些经历的好的坏的有趣的扯淡的事情,还是有很多东西可以总结。所有人都会或多或少走弯路,本来成长就是这样一个过程,有时候想起来会感叹,有时候会唏嘘,有时候会一笑而过。我的前一半时间是在华为,这段时间留给我很多回忆(比如这几个瞬间);后半时间在亚马逊,也给了我不少感慨的机会。下面这些故事都是我经历的真真实实的事,有的事情已经过去好久,但

[......]阅读全文

分享到:

谈谈曼联今年的位置竞争和引援

谈谈曼联今年的位置竞争和引援

看完两场英超,引援上估计除了待定的佩德罗以外,不会有什么大的变数了。想起去年赛季伊始,在知乎上面回答了几个和曼联有关的问题,现在正好回过头来扒坟,比如关于曼联的拉斐尔,说“他也就是一员猛将,刚猛有余,智慧不足,前途平庸”,目前看来是正确的,已经离开前往法甲;说费莱尼“在当前全攻全守和控球理念强调下范加尔治下,费莱尼很难在球队中有他的一席之地”,很

[......]阅读全文

分享到:

系统设计的典型分层和涉及的知识点

作为系统设计学习的一部分,不久前在梳理面试中典型的系统设计问题,发现大部分都可谓有套路可寻。我把思路梳理了一下,简单整理到下面这张图表里面:

系统设计的典型分层和涉及的知识点

对于其中的内容,稍微补充几句:

  • 系统设计需要经验的积累,但也确确实实有章可循。问的问题考察的类型很集中,比如同步、异步,消息push和pull,根据实际问题设计存储的数据结构,对于scalability、availability的认识等等。最喜

[......]阅读全文

分享到:

几道抛硬币问题

几道抛硬币问题

只是记录一下遇到的几道抛硬币的概率问题。

 

1、平均需要抛掷多少次硬币,才会首次出现连续的两个正面?

假设连续两个正面的期望是E,那么,先看第一次抛硬币:

  1. 如果抛到反面,那么还期望抛E次,因为抛到反面完全没用,总数就期望抛E+1
  2. 如果抛到正面,那么要看下一次,如果下一次也是正面,那抛硬币就结束了,总数是2;如果下一次是反面,那么相当于重头来过,总数就期望抛E+2

于是可以得到如下关系式

[......]阅读全文

分享到:

从Java和JavaScript来学习Haskell和Groovy(汇总)

从Java和JavaScript来学习Haskell和Groovy(汇总)

这是这个系列的最后一篇,从编程范型的角度概览,前面几篇的链接在文章后半部分有汇总。

我在之前已经介绍过编程范型的概念,而事实上,我们到现在为止,纠结在这四门迥异的语言上面,浅看是各种语言特性,深看就是编程范型和思维方法。

下面这张“神图”来自于这里,可以说是对于范型和语言归类的概览,从左往右从更强的声明式向着更弱的声明式发展;依据状态分为Unnamed state(串行或并发,包含逻辑式和函数式

[......]阅读全文

分享到:

关于远足

关于远足

昨天刚从Lake 22远足回来,感觉很疲劳,回想起这些时间的远足经历,可以写一写其中的感受。如果你也有此长期计划,打算用远足的方式来充实生活,或者锻炼身体,甚至只是打发时间,那可以参考下面的文字。

首先,我不是驴友,我也没有专业的远足设备。我只是在周末天气不错的时候,用远足的方式给自己找点乐子。经过一段时间的熏陶以后,就像写博客一样,已经养成了习惯。我在《旅行映像》里贴了一些远足的图文记录,但是

[......]阅读全文

分享到:

从Java和JavaScript来学习Haskell和Groovy(DSL)

从Java和JavaScript来学习Haskell和Groovy(DSL) 这是《从Java和JavaScript来学习Haskell和Groovy》系列的第四篇。

首先来理解DSL。

DSL(Domain Specific Language)指的是一定应用领域内的计算机语言,它可以不强大,它可以只能在一定的领域内生效(和GPL相比,GPL是General Purpose Language),表达仅限于该领域,但是它对于特定领域简洁、清晰,包含针对特定领域的优化。

当我

[......]阅读全文

分享到:

想起那些听过的流行歌曲

想起那些听过的流行歌曲

我们这一代人,很多都有一个不断演化着的音乐的梦想。

我们欣赏过很多音乐,听过很多歌,打开豆瓣音乐的时候,当我选择“八零后”频道,我确确实实感受到这些歌曲就是属于我的世界的,很难解释其中的原因。

虽然现在有时候依然去听那些新歌,但是就是很难再找到那根打动自己的神经。

我听张信哲的歌,最早最喜欢的是《别怕我伤心》,甚至在一些公众场合我都愿意拿出来唱一唱。

还有《爱如潮水》,当时买的是磁带,哪有什么C

[......]阅读全文

分享到:

从Java和JavaScript来学习Haskell和Groovy(元编程)

从Java和JavaScript来学习Haskell和Groovy(元编程)

本篇文章的话题是元编程。首先来认识元编程,我在第一篇《引子》里面已经介绍:元编程,指的是在运行时改变“类”的定义,例如访问、增加或修改等等。一言以蔽之,就是“用程序来写程序”。在第二篇的《类型系统》里面已经借由继承和接口的实现,介绍了一些利用元编程特性来增加或改变子类行为的方法。回顾语言发展的长河,其实是经历了一个从“对象 -> 类 -> 元类”到“对象 -> 原型”的发展过程

[......]阅读全文

分享到:

LeetCode题目解答——155~226题

LeetCode上面的题目更新很快,而且题目是越来越不好做了。我把最新的155到226题目的思考和解答过程放在下面,解法有好有坏,有问题我们可以讨论。老规矩,有一些题目是要买一个特定的电子书才可以在线做题的,我就跳过去了。

226
Invert Binary Tree
37.6%
Easy

225
Implemen[......]阅读全文

分享到:

换组

换组

最近在忙于公司内部换组的事情,在亚马逊等等很多公司都有这样的政策文化,就是,如果你在这一个组工作一年以后,并且绩效不太差的话,都可以自己去寻找觉得喜欢的团队加入。我在当前的这个大组干了两年多了,经历了一些成败和风波,我觉得是时候离开去寻找一个更合我胃口的团队了,增加阅历和体验,当然,也肯定是新的挑战。在思考自己的职业未来的时候,其实是有不少选项的。大约是最近这一年,我越来越感觉到,在Amazon

[......]阅读全文

分享到:

手滑的故事

手滑的故事

最近看到这篇文章《小伙伴们手滑集》,觉得感慨很多,强烈推荐大家阅读。比如这样的例子:

UPDATE没有WHERE条件

而我则经历过delete没有写where条件的惨剧,这个惨剧是某些case下面代码调用触发的,不是手动执行SQL发生的。

还有臭名昭著的,我没有经历过,但是我有不止一个同事干过这样的事情:

rm -rf

都只是手稍稍地温柔地“滑了一下”而已嘛……

这些事情我觉得一下子很亲

[......]阅读全文

分享到:

建立动态规划状态转移方程的练习

建立动态规划状态转移方程的练习

大学里面算法课老师教导过动态规划,但是就像看书要把书看厚再看薄一样,要把动态规划彻底理解,还是需要一些时间的锻炼。解动态规划问题,每个人都有自己的习惯的套路,我的理解是最核心的过程有两部,一个是找出问题的一个一个子“状态”,再一个就是建立“状态转移方程”(就是所谓的“递推关系式”)。把这个过程搞定,基本上动态规划的题目就解

[......]阅读全文

分享到:

一点美中医疗的对比

一点美中医疗的对比 最近耳道感染,左耳朵又堵又疼,在美国几次就医,本人虽非医学专业出身,但从局外人的角度,想到和国内那些求医的历史,还是有一些比较可言。

首先对于医生的划分,国内基本上就是根据科室来完成,一个医生在一个科室,时间久了,经验丰富,遂成为出名的医生。好处在于医生更能够专精于自己的一亩三分地,专科阅历容易积累。而看看许多国内的专家,有大量的机会见各种各样奇怪的病人,并且手术的机会也会非常多,因此我猜测经

[......]阅读全文

分享到:

夏威夷游记

6天7夜,仅游玩了O'ahu一个岛,后来总结如果高效率地行进,可能这个岛屿4天就可以玩的差不多了。我很喜欢旅行,但是在旅行计划方面不太在行。夏威夷和我以前去过的菲律宾长滩岛比起来,更加现代一点,价格也贵了接近一倍。期间我们没有坐公交车,全程都租了车行进,并且我觉得花掉的钱里面,租车是最值得的。我把这篇文字记录下来,如果你也有夏威夷的出行计划,那么可以参考参考。

家人和我一起来,都说三个女

[......]阅读全文

分享到:

读写模型整理笔记

读模型

1、主键读

最常见的读模型,说是主键,其实也包括其它索引键,或者联合主键。

常见实现:hash,时间复杂度可以接近O(1);B树或变种:时间复杂度接近O(log(n))。

关于B树和变种:

B树(B-树):本质上是二叉查找树的升级版,变成了平衡的N叉查找树,这个N的范围根据磁盘一次读取的块大小来调整,这样复杂度log n的底数就从2变成一个更大的数,减少了树的高度。除此以外,还有一些额外的

[......]阅读全文

分享到:

Preview on Feedage: