15 分钟学会 R 语言[译文]

仗着自己有几门语言的基础,我在学新语言时候,都会选择一些快速入门教程。 比如 Learn X in Y minuts 就是我经常光顾的站点。 前段时间,小柒在用 R 写数据分析脚本,我就建议她把 Learn X in Y minuts 里面的 R 语言教程翻译出来。话说 Learn X in Y minuts 里面的中文贡献还是非常多的,赞。 Learn X in Y minuts 的源码托管在 Github。 小柒被我逼着把这篇 R 语言教程 翻译到 R 语言教程中文版。 下面是译文,有不妥的地方可以留言或者直接去 Github 上面 Pull request。 R 是一门统计语言。它有很多数据分析和挖掘程序包。可以用来统计、分析和制图。 你也可以在 LaTeX 文档中运行 R 命令。 ...

2013-10-29 · alswl

读《大规模Web服务开发技术》

Thumbnail

年前看了这本书《大规模Web服务开发技术》,当时给的评价是: 很好,让我这个渣渣看的很感动,数据翔实,经历可靠,翻译的也不错,我给 4.2 分 现在经历过 Python / Django / 烂代码的阵痛,开始有更多的想法, 在整理这些粗糙的想法之前,我又把这本书翻了一遍,写个流水帐读书笔记。 《大规模Web服务开发技术》@豆瓣: http://book.douban.com/subject/6758780/ 规模 小规模 / 大规模 / 超大规模的侧重点各不相同:保持扩展性/保持冗余/低成本运维/开发合作方便 内存、磁盘、负载 内存快,磁盘慢,IO 速度的差异 ...

2013-06-29 · alswl

服务器 Push 技术

服务器 Push 技术表示服务器可以主动推送消息给客户端浏览器。 实现方式 Comet Ajax 轮询 iframe / htmlfile script tag (不中断的连续请求) Flash 通讯 WebSocket Comet 本意是彗星,彗星尾巴痕迹很像长连接工作方式,所以 Comet 指代长连接。 在 Ajax 轮询的分类上,存在一些分歧,这里我把轮询认为一种 Comet 方式。 ps:「长连接」在一些场景下,是另外一种意义「HTTP: Keep alive」。不在本文讨论的范围中。 参考链接: Comet:基于 HTTP 长连接的「服务器推」技术 Socket.IO Supported transports 浏览器支持情况 WebSocket 属于 HTML5 规范,需要「先进」浏览器支持, Flash 通讯需要浏览器安装 Flash 插件,其他方式都可以适应常见浏览器。 ...

2012-05-30 · alswl

再读《重构》

Thumbnail

Martin Fowler 的「重构-改善既有代码的设计」这本书,是我大学老师推荐给我的。 当时我在撰写代码过程中,发现当代码量到某个数量级时候(1000+行), 就会逐渐失去对代码的控制能力。 昆哥推荐了两本书「UML 和模式应用」和「重构」这本书。 这本书是2年前购买的,可惜以我当时的代码感知和撰写能力,看起来颇为吃力。 半途就看得云里雾里而中断了。最近我又重新拾起这本书, 将书中所写的境况与我这两年多来遇到的问题相互印证,才感受到这本经典的力量。 Martin 其人: ThoughtWorks 的首席科学家,当今世界软件开发领域最具影响力的五位大师之一。 他在 UML 推广普及、领域建模、企业应用开发和敏捷方法等方面建树卓著,被称为软件开发的教父。 ...

2012-02-05 · alswl

《卓有成效的程序员》读后感

Thumbnail

《卓有成效的程序员》,上次在京东半价买了这本书,一直没来得及看, 前几周在地铁上把这本书看完了。 说实话,书里面的观点我很赞同,但是没有觉得惊艳, 因为我本身已经在尝试实践这些观点。 书中的这些观点有如下: 加速法则:减少输入次数,用快捷键/方法启用常用操作 专注法则:集中注意力处理工作,避免额外的信息干扰 自动化法则:贯彻"懒"的原则,减少重复劳动 规范性法则:DRY 书中第二部分是撰写代码时候的一些意识,这些我就不复述了, 是比较常见的软件工程思想。这些思想由ThoughWorks的咨询师娓娓道来也是值得一看的。 我觉得这本书在学完第一门语言/数据结构/操作系统之后就可以开始阅读。 也就是学生在大三-大四阶段阅读,会对代码撰写规范和风格形成大有帮助。 ...

2011-11-27 · alswl

char nchar varchar nvarchar 区别

在开发时候,发现数据库的一个字段用的是nchar(16),让我感觉很奇怪,我知道nvarchar可以变长,nchar会用空格填充,这在存取时候需要Trim( )操作,所以我一直不用nchar。而现在在产品中发现nchar的使用,不由觉得很奇怪。 私底下认为是效率的问题,一番Google之后发现一段文章详述了几种数据库文字类型存储的差异。 原文出处:char nchar varchar nvarchar 区别 - Rainbow - 博客园 联机帮助上的: char(n) 定长 索引效率高 程序里面使用trim去除多余的空白 ...

2010-07-16 · alswl

正则表达式中的零宽断言

Thumbnail

这文是上个月开始写的,本来想深入的分析一下零宽断言,可惜工作一直忙,现在又要去转战DWR…OMG~~ 起因 将要上线的系统中有一个字符规则:“13位的字符串,其中有8位连续数字”,需要用这则表达式对这个字符串进行判断。而我之前对正则的认识仅仅停留在匹配固定的字符上 ,对这个问题一筹莫展。 这时候热心的小邪出现了,我在他的博客 邪罗刹的菠萝阁 留下这个[问题](http://www.evlos.org/2010/01/05/use-regex-to-clear-the-mix-of-tag- img/#comment-5968) 小邪很热心的撰写了一篇文章给出回答: 一个杯具和一个洗具与最近学习手记 : 邪罗刹的菠萝阁。 ...

2010-01-26 · alswl

Oracle PL/SQL编程规范

学习PL/SQL不可避免遇到规范的问题,这里转载一篇比较精的文章。 当然,各个公司和个人有自己的风格和规范,甚至Oracle官方的教程代码也没有完全遵守这些规则,这里只是一个推荐和介绍。 来源:Oracle PL/SQL编程规范指南 -51CTO.COM 更多参考:SQL,PL/SQL编程规范 - PL/SQL -IT民工杂谈 分割线,Google真汉子 一、PL/SQL编程规范之大小写 就像在SQL中一样,PL / SQL中是不区分大小写的。其一般准则如下: 关键字(BEGIN, EXCEPTION, END, IF THEN ELSE,LOOP, END LOOP)、数据类型(VARCHAR2, NUMBER)、内部函数(LEAST, SUBSTR)和用户定义的子程序(procedures, functions,packages),使用大写。 ...

2010-01-14 · alswl

python+django MTV框架 和php MVC框架

首先,祝福祖国60华诞,我爱这个国家。 刚才在GR读到Here Comes The Sun的[A shorten url app](http://www.classicning.com/blog/2009/09/a-shorten-url-app/-shorten-url- app/),其中提到了Python下Django框架的一些问题,我很感兴趣,搜索了一下MTV模型,资料很少。但有一篇我读后很有启发,现在转载如下。 原文链接:python+django MTV框架 和php MVC框架的不同之处 - PHP+MYSQL+APACHE -ThinkPHP官方论坛 作者:乔峰 *残酷的分割线 python+django MTV框架 和php MVC框架的不同之处 最近学习了python语言和djangoMTV框架,感觉用的很爽啊。这里给大家粗略的介绍一下。 ...

2009-10-01 · alswl

编码: ASCII(ANSI), GB-2312, UNICODE, UTF-8,UTF-16

ASCII字符集 7位的编码方案,总共表示128个字符,其中包括了大小写英文字母、数字、标点符号等常用字符。英语世界已经足够应付。 ISO-8859-1字符集 也称ISO-Latin字符集,它扩展了ASCII字符集,用到了8bit字节里的最高一位,这样它就有256个字符,前128个字符和ASCII字符集相同 。有了ISO-Latin字符集,西方世界的一些其它语言,如西班牙语、法语、德语、意大利语都够用了。 GB系列字符集(GB2312,GBK,GB18030) 由于一个字节是无论如何也表达不了哪怕是最长用的汉字字符集的,所以为了用计算机存储汉字,必须使用多个字节。 ...

2009-09-12 · alswl