- 浏览: 125139 次
- 性别:
- 来自: 上海
最新评论
-
l67721363:
受益匪浅,谢谢!~
重新认识Session(续)——自己动手做试验 -
shuminghuang:
写得很好,不过我对您的文件监控脚本也很感兴趣,不知道能否分享
做一次git的观众 -
doingjava:
LZ,写的很不错,这种逻辑也很有道理,测试方式很敬佩。
但是有 ...
重新认识Session(续)——自己动手做试验 -
trace:
感谢ls,找到了这么详细的解释!
做一次git的观众 -
yanwuhuan:
首先,我们发现index文件被改变了。但是,经过我仔细比对两次 ...
做一次git的观众
文章列表
1、lsof
http://heikezhi.com/2011/06/19/swiss-army-knife-of-unix-debugging-lsof/
2、pv(pipeviewer)
http://www.catonmat.net/blog/unix-utilities-pipe-viewer/
3、to be continued
转自:http://heikezhi.com/2011/04/03/ten-lessons-from-githubs-first-year/
尽早开始
当Chris和我在07年年底开始搭建Github时,Git还只是一个默默无闻的版本控制系统。当然,Linux内核的黑客们从它诞生的第一天就已经用上它了,但是在这个小圈子之外,很少有开发者将它作为日常的版本管理工具。我了解Git都是拜Dave Fayram所赐,他是我在Powerset的前同事,也是我的好朋友,Dave是个典型的新技术追逐狂人,就我的记忆里,他应该是第一个在Ruby社区推广Git的人。
在那个时候,Git的生态环境还相当 ...
今天发现了一个网站:ruby.bastardsbook.com,是一个Ruby教程。与别的教程不同,作者在About页面用大幅的生活照和生动的见解讲述了编程的意义,就像一个导游带你畅游编程世界一样。从他的字里行间中,你能感受到,是生活在教你编程。
如果你经常浏览Ruby编程方面的网站,你就会发现,它们在创意、设计、内容和实用性等方面有明显的独到之处。比如railsforzombies.org,让你在僵尸游戏的氛围中学习Rails;比如railscasts.com,网站的作者每周发布一个Rails教学的视频,讲解生动明了,看着舒服,听着明白;比如rtomayko.github.com/rocco ...
Bugatti(布加迪)在1998年被大众收购之后,它的设计目标就只有一个字:快。设计最快的量产车,这个目标听起来好像不是那么惊世骇俗,但从实际效果来看,他们所做的,不是像在拍卖会上斗气那样仅仅设计一辆快过当时水平的汽车,而是一辆真正让人望尘莫及的“神作”,一辆你还在起步,它已经冲过终点的“怪物”。
Ruby on Rails框架的横空出世,与此有异曲同工之妙。在Web开发领域,Rails框架就是那个别人还在起步,它已经帮你完成项目的“神作”。
[注] 关于布加迪的描述来自一本南航飞机杂志。
今天用hbase的Ruby thrift api,发现它对utf-8的支持并不好。比如我要插入一条记录,值为“中国”,我不能直接写成“中国”,而是需要将”中国“转换为”\xE4\xB8\xAD\xE5\x9B\xBD“。同理,我取数据时取到的就是“\xE4\xB8\xAD\xE5\x9B\xBD”(字面值),需要想办法转换成“中国”。
将一个UTF-8编码的字符串转换为十六进制编码的二进制字符串,需要这么做:
"中国".bytes.to_a.pack("C*")
将一个十六进制编码的二进制字符串转换为UTF-8编码的字符串,需要这么做:
he ...
Git这个强大的版本管理系统,工作的时候默默注视着你的代码目录,所有的操作几乎都在.git目录中完成。今天我们来做一次git的观众,以便深入了解git的各个操作。
首先,新建一个目录:git-monitor,进入目录后,用下面的命令初始化一个git仓库:
$> git init --bare git-monitor.git
然后,创建一个工作目录wp1,意思为working_copy_1,进入该目录,运行git init,以创建.git目录。
进入.git目录,会发现下列文件和目录:
HEAD config description hooks/ ...
在Linux或者Mac里面,如果想查一个单词,你有什么工具?StarDict?Mac Dictionary?
其实,在命令行里就可以完成这个功能,当然,要利用强大的google
在bash或者zsh中添加这个函数:
function translate() {
wget -qO- "http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=$1&langpair=$2|${3:-zh}" | ruby -rubygems -e 'require "js ...
Ruby的Selenium以及selenium-client是Web应用集成测试的常用工具。今天我装上这两个gem之后,却发现以下代码跑不起来:
require "rubygems"
gem "selenium-client", ">=1.2.16"
require "selenium/client"
begin
@browser = Selenium::Client::Driver.new \
:host => "localhost",
...
@gigix 提意见的时候应该以改进建议为主。信息太消极了就不好了。把傻逼骂倒固然是有爽感的,但骂倒也就意味着对话的终结,很多时候这毕竟不会让世界因此变得更美好一点。
刚才google到一篇介绍在factory_girl的define中定义has_many关联的方法,无奈网页链接打不开(被墙了还是怎么的),只好用网页快照看了。
方法一如下:
Factory.define :user do |user|
user.name "My Name"
user.groups {|groups| [groups.association(:group)]}
end
他强调的是那对中括号。
然后有人回帖,介绍了一个hacker级别的方法:
Factory.define :child do |f|
class &l ...
- 2009-08-14 10:44
- 浏览 1646
- 评论(0)
echo "processing files to add..."
svn status | grep "^?" | sed -r 's/^\?[ ]+//' | xargs -r svn add
echo "processing files to delete..."
svn status | grep "^!" | sed -r 's/^\![ ]+//' | xargs -r svn delete
- 2009-07-01 11:00
- 浏览 1233
- 评论(0)
C是用来吃饭的,
Ruby是用来做小网站的,
Java是用来忽悠的,
Python是用来临危不乱的。
--------------------------
第一次作诗,以及做标题党,:)
在ubuntu中,如果ruby和gem都是正确安转的,在ruby文件中require一个rubygem,还是可能会出现 “no such file to load” 的错误。原因有二:
1、linux中需要注意大小写:
比如rmagick,在windows和mac中可以写成 require 'rmagick',因为它们不管大小写。但在linux中,就要写成 require 'RMagick'。
2、缺少 require 'rubygem'
在windows中,似乎不需要写这一句。那是因为在环境变量中有一个 RUBYOPT=rubygems。而在linux中,这个环境变量不会自动加上去。解决办 ...
- 2008-12-31 13:08
- 浏览 1671
- 评论(0)
最近有关struts 2.1.3的新闻很多,说明struts还是很受欢迎的。而我却是一个struts和spring的背叛者,正在ROR的编程哲学里享受着……
不过居安思危,我还得考虑一下重新返回SSH的可能。我突然觉得,rails正好是一个可以高屋建瓴地给SSH开发提供建议的好东东,因此,吃透ROR的编程思想,还是很重要滴~~
- 2008-12-27 12:53
- 浏览 1022
- 评论(0)
在学校上网,总会用到锐杰或者mystar,它们启动之后就一直挂在前台,占用了一个bash窗口。今天总算找到了前台后台转换的方法。
一、利用kill命令
先用ps -a找到进程号,再用sudo kill -stop procNumber,将进程暂停。然后再用jobs查看一下要转到后台的进程,找到它的job号,最后用bg jobNumber将其转到后台。大概就像这样:
ps -a
PID TTY TIME CMD
6729 pts/0 00:00:00 mystar
sudo kill -stop 6729
jobs
[2]+ Stopped ...
- 2008-10-21 11:04
- 浏览 7673
- 评论(0)