从Java和JavaScript来学习Haskell和Groovy(引子)

从Java和JavaScript来学习Haskell和Groovy(引子) 我记得刚接触计算机的时候,我就受到了两个非常巨大的错误观念的影响,这个观念最初是来自于老师的传授还是学长的教诲已经记不清了,但是直到我工作几年以后,才慢慢有了实际的体会:

  1. 学习和使用什么编程语言不重要,重要的是算法和设计;
  2. 程序员学习的精髓是面向对象的设计模式,掌握以后,一通百通。

简直就是是胡扯啊。也许在某个极其狭隘的上下文中还能这样说,但是泛泛而谈,这样的态度无疑是误人子弟的。

就说第一条

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

分享到:

生活的鱼和熊掌

生活的鱼和熊掌 前方鸡汤高能预警。

读书的时候,曾经听到这样的说法,最近几个月,则又听到了两三次,人生选择论,鱼和熊掌说,或者生活跷跷板理论。跷跷板的特点就是,一头摁下去,另一头就起来。本人向来鄙视鸡汤,不过这个理论还是比较赞同的,看来今天破一次例。选择了A,就失去了B;选择了B,就无法得到A。所谓鱼和熊掌无法兼得便是如此。

生活总会值得吐槽

毕业后在南京工作的时候,觉得气候还算过得去,吴侬软语听起来也顺

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

分享到:

系统设计典型问题的思考

系统设计典型问题的思考系统设计方面的问题问题是非常考验经验和思维过程的,而且和常见的算法问题、语言基础问题不同,涉及的面很广,还没有比较一致的判别标准。但无论如何,还是可以归纳一些常见的思路和典型问题的线索。

首先,反复沟通和澄清系统需求。只有把需求澄清清楚了,才可以开始思考并落到纸面上。但是需求的沟通应该是持续和循序渐进的,问题很难从一开始就思考全面。最重要的条目包括:

  • use cases,通常问题只需要2~3个u

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

分享到:

一道随机数题目的求解

一道随机数题目的求解 有这样一道算法题:

给定一个能够生成均匀1~5随机枚举数的函数,请设计一个能够生成均匀1~7随机枚举数的函数。

就是说,有一个生成随机数的函数rand5,可能返回1、2、3、4、5这5个枚举值,其中每个值被返回的概率都是严格的1/5,现在需要设计一个类似的随机数函数rand7,可能返回1、2、3、4、5、6、7这几个枚举值,每个值被返回的概率都是严格的1/7。

先掩卷思考,脑海中

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

分享到:

再谈程序员学英语

再谈程序员学英语

2012年的时候,我曾经写了一篇《程序员学英语》,总结了一些我对于英语学习的看法,包括为什么英语对于程序员来说如此重要,还有一些自己总结的英语学习的方法。时过境迁,在西雅图待了半年多了,于是在这些内容基础上,我现在有了一些新感触,以tips的记录在这里,希望对于像我这样对于英语学习天赋平平的程序员来说有所帮助。

先说明一点,通常情况下我不太赞同高强度的语言训练,譬如连续地花时间背诵红宝书,我没有

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

分享到:

A page widgetization practice

A page widgetization practice

I was working on the page reconstruction recently, and here is how I divide a page into widgets and how do they interacts in this new attempt.

Core Concepts

Page and widget: A page is composed by sev

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

分享到:

Java容器类型复习笔记

Java容器类型复习笔记 最近抽空把java.lang下面常用的那些容器类型(数据结构)复习了一下,这些东西是基础,平时使用的时候也可以很容易查得到,有些方法大概知道,但是总是弄混,如果可以记住那些重要方法,并且能够熟练使用的话,还是可以让编码过程变得容易很多。另外一个是实现机制,对于常用数据结构的实现机制,应该说是必须要熟知的。

另外,并发容器我之前整理过,放在这篇文章里。

Queue

  1. add和offer的区别在于达

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

分享到:

直面歧视

直面歧视

最近在知乎上面看到不少关于歧视讨论的帖子,大部分人的观点都是,歧视是负面的,要避免歧视,尤其是在公众场合歧视的人,要惩戒。这条观点展开来的话题,大部分我都认同,只是我想补充的是,其实歧视没有那么遥远,不要把歧视的事情全部看做多么罪恶深重的事情,事情要一码一码分开来看,有轻有重,我向来厌恶鸡汤,统一的道德帝是可恶的。

首先,来澄清“歧视”的概念:歧视,是针对特定族群的成员,仅仅由于其身份或归类,而

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

分享到:

LeetCode数据库十道题解答

之前做算法题的途中发现,LeetCode上面推出了数据库解答,有十道题,于是这两天晚上时间就给做了。解答是次要主要的好处是,正好复习复习SQL一些查询语句的写法,比如自定义变量和常用函数。题目都比较简单,少做解释,以贴题目和答案为主。

 

175 Combine Two Tables 32.5% Easy[......]阅读全文

分享到:

XML和JSON

XML和JSON 不久前看到一个讨论帖,说的是XML和JSON的比较,说着说着后来就变成了JSON到底比XML牛逼在哪里。不吹不黑,客观地来比较一下二者的异同。

XML比JSON更胖吗?

有的情况下是的,但也不一定,比较这样的片段:

<user age="18">
    <address>
        <city name="Seattle" />
    </add

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

分享到:

LeetCode算法题目解答汇总

LeetCode算法题目解答汇总

只要不是特别忙或者特别不方便,最近一直保持着每天做几道算法题的规律,到后来随着难度的增加,每天做的题目越来越少。我的初衷就是练习,因为一方面我本身算法基础并不好,再一方面是因为工作以后传统意义上所谓算法的东西接触还是太少。为了题目查找方便起见,我把之前几篇陆陆续续贴出来的我对LeetCode上面算法题的解答汇总在下面,CTRL+F就可以比较方便地找到。由于LeetCode上的题在不断更新,因此

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

分享到:

LeetCode题目解答——Hard部分

以下是LeetCode题目解答的最后一部分:Hard部分。

Text Justification
14.0%
Hard

Search in Rotated Sorted Array
28.6%
Hard

Binary Tree Maximum Path Sum
20.2%
Hard

Reverse Nodes in k-Group
24.9%
Hard

Binary Tree[......]阅读全文

分享到:

浮躁

浮躁

最开始是想写一篇2014年总结的,就像《2013年特别回顾》《2012年回顾和2013年计划》一样,2014年我的生活变动如此之大。但是转念一想,一年下来,回忆中可称得上大事的有那么几条,对于新一年的期冀也历历可数,都深深地刻在脑海里面,并不需要单独列成一篇文字,即便需要,微博这样的速食媒介就足够了。但是这其中,有一点我希望做得更好,概括起来,就是希望在2015年可以尽量远离浮躁,静下心来做

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

分享到:

为什么现在那么多人应聘产品经理岗位?

为什么现在那么多人应聘产品经理岗位?

做程序员?说会coding,一个快排都写得支支吾吾的。

做测试?测试多没地位啊,多没技术含量啊。

做运维?什么操作系统、网络,我也不会啊。

做销售?奔波劳累,还得口才好,我不行。

设计师?我TMD哪有艺术细胞啊。

……

产品经理?这个牛逼!听起来就霸气侧漏啊!不是产品专员、不是产品工程师,是产品“经理”啊,好歹是个经理啊。

举个栗子,看看产品经理的职位要求:

  • 1、大学本科以上学历,3年以上计算

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

分享到:

写在Gmail被墙后

写在Gmail被墙后

12月27号开始,Gmail服务被GFW屏蔽(具体时间可从Google的Transparency Report上获知),并且这种屏蔽方式是极其原始的IP地址屏蔽,这意味着,以往能够使用的POP3、IMAP、SMTP等等,所有的端口都被屏蔽了(请参阅维基百科词条)。换言之,今次的事件,可不只是简单的网页无法访问的问题,国内邮箱与Gmail互发邮件的能力,已经被彻底废掉了。如此地逆信息流动而为,如此

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

分享到:

病中记录

病中记录

最近没怎么更新blog,一个重要原因是养病,说是养病,其实也不是什么大病,就是一肛瘘。上周末做了肛瘘手术,我才彻底明白,不管这病是大是小,遭的罪真可谓噩梦一般。

去年下半年,我就触及屁股上起了包,想起来体质关系,小时候也长过好多次脓肿,尤其是在06年还去医院做过一次脓肿的切开排脓。所以自然没有太过在意,随着时间推移,到年末的时候脓肿愈发增大,并且从肛门左边扩散到了右边,疼得厉害,直到一天晚上发烧

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

分享到:

LeetCode题目解答——Medium部分(下)

这是LeetCode题目Medium难度部分中的下半部分,表格中的Acceptance是LeetCode网上拷贝下来的的数据。这些完成以后,就只剩Hard部分了。欢迎讨论。

Multiply Strings
20.5%
Medium

Sum Root to Leaf Numbers[......]阅读全文

分享到:

所谓历史

所谓历史 不久前看到这样一条微博

赫胥黎的鸟,薛定谔的猫,达尔文的猴子学人叫;孟德尔的豌豆,巴甫洛夫的狗,巴斯德的汤里还有肉;爱迪生的灯泡,马可尼的电报,奥本海默扔了个小摔炮;伽利略的铁球,安培的电流,牛顿被苹果砸破头;阿基米德的澡,门捷列夫的表,居里夫人的老公是根草……

下面有不少有才的人回复,比如这个数学版本的:

高斯想的招,欧拉走的桥,笛卡尔盯着蜘蛛想坐标;费马的页边,庞加莱的球面,希尔伯特开

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

分享到:

LeetCode题目解答——Medium部分(上)

以下是LeetCode题目中Medium部分的上半部分,点击表格中的名称进入题目和解答。我计划把LeetCode我的解答分成四个部分发上来,这是第二部分。做这些题目收获还是挺大的。

Divide Two Integers 16.6% Medium 3Sum 16.7% Medium Evaluate Reverse Pol[......]阅读全文

分享到:

谈谈选择

谈谈选择

前些天聊天聊起我的高中同学,现在大部分已经不再联系,但个别几个还常有通讯往来。不同的年龄阶段的回忆总是给我不同的印象,但是像高中时期这样每天忙于学业压力的时候也不多。我从刚接触物理和化学开始,我就对这两门课充满了兴趣。中学六年对于物理和化学的偏爱,应该说也是算同龄人中很少见的了。刷题、培训、搞竞赛……令我印象深刻的尤其是暑假,在大部分孩子都可以痛快地玩乐的时间,我还

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

分享到:

Preview on Feedage: