Memery of College Life
By Jerry on September 01, 2010, Under game, 4 comments
很偶然的,从移动硬盘中翻出了以前学生时代一些文字和图片,发现以前的生活真是太开心了,而现在呢,没有朋友在身边,总觉得缺少了什么,或许人生总有那么多不完美吧。
记得是我们寝室和撇王寝室的红警对决。。结果是没有悬念的。。我是第一的tony…哇哈哈
第一局 领先 哦也

第二局 还是领先..

第三局 有点不好意思了 哈哈

很偶然的,从移动硬盘中翻出了以前学生时代一些文字和图片,发现以前的生活真是太开心了,而现在呢,没有朋友在身边,总觉得缺少了什么,或许人生总有那么多不完美吧。
记得是我们寝室和撇王寝室的红警对决。。结果是没有悬念的。。我是第一的tony…哇哈哈
第一局 领先 哦也

第二局 还是领先..

第三局 有点不好意思了 哈哈

Rails3 终于Release了, 基于此, 写一篇关于如何配置rails3开发环境的小文章,
首先安装curl.
$ sudo apt-get install curl
然后安装rvm
$ bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
在~/.bashrc 中加入以下代码:
if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then source "$HOME/.rvm/scripts/rvm" ; fi
重启终端
$ rvm notes
安装必要的packages
$ sudo apt-get install bison build-essential zlib1g zlib1g-dev libssl-dev libreadline5-dev libxml2-dev git-core subversion autoconf
安装完以上必须的packages后,就可以安装ruby 1.9.2了
$ rvm install 1.9.2-head
安装完ruby 1.9.2后, 我们可以把rvm ruby 1.9.2设置为默认
$ rvm --default ruby-1.9.2-head
接下来就可以查看ruby 版本了
$ ruby -v
ruby 1.9.2p0 (2010-08-18 revision 29034) [x86_64-linux]
接下来安装rails3
$ gem install rails
享受rails3的乐趣吧
Read More

每个人都是一个杯子
但杯子的大小不同
有的杯子装的下一片汪洋
有的杯子装不下自己的欣赏
每个人都是一个杯子
但是里面盛的东西不一样
有的杯子里盛的是大块文章
有的杯子里盛的是小肚鸡肠
倒空你的杯子
让人生作别样想

再也写不出动人的文字
我不要求什么
我只想不被打扰
每天用忙碌将自己充满
我可以不去想念一个人 想念一些事
每天简单的度过
义无反顾 飞蛾扑火 或许那段时间早已被磨的看不清了
幸福, 都有着相同的模式
痛苦, 也有着似曾相识的片段
做一件令自己感动的事情
录一首自己写的歌
看一场F.I.R的演唱会
每天去游泳
恩, 这将是今后要做的事情.
Read More
安装 Ruby Enterprise 环境
安装编译需要的包
$ apt-get install build-essential zlib1g-dev libssl-dev libreadline-dev
下载并编译 Ruby Enterprise Edition 最新版 2010.02
$ mkdir -p /opt/src && cd /opt/src
$ wget http://rubyforge.org/frs/download.php/71096/ruby-enterprise-1.8.7-2010.02.tar.gz
$ tar xvf ruby-enterprise-1.8.7-2010.02.tar.gz
$ cd ruby-enterprise-1.8.7-2010.02
$ ./installer
安装到 Installing useful libraries… 时, 按 Ctrl + C 停止脚本自动下载 gem 库
设置环境变量
$ ln -s /opt/ruby-enterprise-1.8.7-2010.02 /opt/ruby-enterprise
编辑 /etc/profile, 尾部加入
$ export PATH=/opt/ruby-enterprise/bin:$PATH
运行 source /etc/profile 启用配置, 并输入 ruby -v 检查版本
$ ruby 1.8.7 (2010-04-19 patchlevel 253) [x86_64-linux], MBARI 0x6770, Ruby Enterprise Edition 2010.02
安装rake, rails2.3.8
$ gem sources --update
$ gem install -V rake rails
至此 Ruby Enterprise 基本安装完成
安装 Postgresql 数据库
$ apt-get install postgresql
修改 postgres 用户密码
$ su postgres -c psql postgres
$ ALTER USER postgres WITH PASSWORD 'postgres';
$ \q
其中 ‘postgres’ 为要修改的密码
编辑 /etc/postgresql/8.4/main/pg_hba.conf 最后修改为
# Database administrative login by UNIX sockets
# local all postgres ident
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5 #ident
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
如果不希望允许 postgres 使用密码登入的可以开启第2行 # local all postgres ident 的注释
编辑 /etc/postgresql/8.4/main/postgresql.conf, 搜索 # listen_addresses = 将其修改为
listen_addresses = 'localhost' # what IP address(es) to listen on;
如果允许其他机器访问的请将 localhost 修改成 *
重启数据库
$ /etc/init.d/postgresql-8.4 restart
安装 postgresql 的 Ruby 驱动
$ apt-get install libpq-dev
$ gem install -V pg
如果数据库不再本地仅安装此步即可
安装 Phusion Passenger
用 gem 安装 passenger
$ gem install -V passenger
将装好的 passenger 连到 /opt/passenger
$ ln -s /opt/ruby-enterprise/lib/ruby/gems/1.8/gems/passenger-2.2.15/ /opt/passenger
安装 nginx 服务器
下载最新 stable 版 nginx
$ mkdir -p /opt/src && cd /opt/src
$ wget http://nginx.org/download/nginx-0.7.67.tar.gz
$ tar xvf nginx-0.7.64.tar.gz
安装编译相关类库
$ apt-get install libpcre3-dev
编译安装 带有 passenger 模块的 nginx
使用 passenger 脚本 passenger-install-nginx-module 编译 nginx
选择 2. No: I want to customize my Nginx installation. (for advanced users)
输入 src: /opt/src/nginx-0.7.67 和 prefix: /opt/nginx
添加 编译参数 并编译
$ --conf-path=/opt/etc/nginx/nginx.conf --with-http_gzip_static_module
如果还要启动其他编译参数请自行添加
另外: 如果不想使用 passenger 自带脚本编译 nginx, 也可以手工编译 nginx 时加入 –add-module=’/opt/passenger/ext/nginx 参数, 来启用 passenger 模块.
配置 nginx
添加服务器用户
$ useradd -d /var/www/ -s /bin/bash www-data
$ usermod --shell=/bin/bash www-data
$ mkdir -p /var/www/vhosts/default/htdocs
$ chown -R www-data:www-data /var/www
整理编译自动生成的配置文件
$ cd /opt/etc/nginx
$ mkdir /opt/etc/nginx/default
$ mv *.default default/
$ mkdir conf.d
$ mkdir sites-enabled
将 /opt/etc/nginx/nginx.conf 替换为
user www-data www-data;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
gzip on;
include conf.d/*.conf;
include sites-enabled/*;
}
添加 gzip_static 模块配置, 编辑 /opt/etc/nginx/conf.d/gzip_static.conf
gzip_static on;
gzip_types text/css application/x-javascript;
添加 Passneger 模块配置, 编辑 /opt/etc/nginx/conf.d/passenger.conf
passenger_root /opt/passenger;
passenger_ruby /opt/ruby-enterprise/bin/ruby;
添加 /opt/etc/nginx/sites-enabled/default
server{
listen 80;
server_name hansay.com www.hansay.com;
root /var/www/vhosts/default/apps/noa/current/public; #just for example
passenger_enabled on;
location ~ ^/(images|javascripts|stylesheets)/ {
root /var/www/vhosts/default/apps/noa/current/public;
expires 30d;
}
}
如果需要配置 Rails 程序请参考 Nginx 文档
添加启动脚本 /opt/etc/init.d/nginx 内容为
#! /bin/sh
### BEGIN INIT INFO
# Provides: nginx
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts the nginx web server
# Description: starts nginx using start-stop-daemon
### END INIT INFO
# PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/opt/nginx/sbin/nginx
NAME=nginx
DESC=nginx
PIDFILE=/opt/nginx/logs/$NAME.pid
test -x $DAEMON || exit 0
# Include nginx defaults if available
if [ -f /opt/etc/default/nginx ] ; then
. /opt/etc/default/nginx
fi
set -e
. /lib/lsb/init-functions
test_nginx_config() {
if $DAEMON -t; then
return 0
else
return $?
fi
}
case "$1" in
start)
echo -n "Starting $DESC: "
test_nginx_config
start-stop-daemon --start --quiet --pidfile $PIDFILE \
--exec $DAEMON -- $DAEMON_OPTS || true
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --pidfile $PIDFILE \
--exec $DAEMON || true
echo "$NAME."
;;
restart|force-reload)
echo -n "Restarting $DESC: "
start-stop-daemon --stop --quiet --pidfile \
$PIDFILE --exec $DAEMON || true
sleep 1
test_nginx_config
start-stop-daemon --start --quiet --pidfile \
$PIDFILE --exec $DAEMON -- $DAEMON_OPTS || true
echo "$NAME."
;;
reload)
echo -n "Reloading $DESC configuration: "
test_nginx_config
start-stop-daemon --stop --signal HUP --quiet --pidfile $PIDFILE \
--exec $DAEMON || true
echo "$NAME."
;;
configtest)
echo -n "Testing $DESC configuration: "
if test_nginx_config; then
echo "$NAME."
else
exit $?
fi
;;
status)
status_of_proc -p $PIDFILE "$DAEMON" nginx && exit 0 || exit $?
;;
*)
echo "Usage: $NAME {start|stop|restart|reload|force-reload|status|configtest}" >&2
exit 1
;;
esac
exit 0
设置随服务器启动
$ chmod +x /opt/etc/init.d/nginx
$ ln -s /opt/etc/init.d/nginx /etc/init.d/nginx
$ update-rc.d nginx defaults
Read More
日常的开发中经常会需要和其他项目进行数据的交互,我们可以用定制xml接口来简单的实现。
首先创建一个controller, 以 Sync::AreaDistributionsController 为例
1
2
3
4
5
6
7
8
9
class Sync::AreaDistributionsController < ApplicationController
def index
@report = Report::AreaDistribution.new(params)
respond_to do |format|
format.html # index.html.erb
format.xml # index.xml.builder
end
end
end
定义数据集合
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
module Report
class AreaDistribution < Base
attr_accessor :items
def initialize(params)
self.items = ServiceActivity.area_service_distribution.search(params[:search]) do |record|
OpenStruct.new({
:area_code => record.area_code,
:service_code => record.service_code,
:user_count => record.user_count.to_i
})
end
end
end
end
ServiceActivity.area_service_distribution的定义
1
2
3
4
5
6
7
8
class ServiceActivity < ActiveRecord::Base
named_scope :area_service_distribution,
:select => "service_activities.area_code, service_activities.service_code, count(service_activities.service_code) as user_count",
:joins => "INNER JOIN gateway_acct_activities AS n ON n.leave_at IS NULL AND n.mac = service_activities.mac",
:group => "service_activities.area_code, service_activities.service_code",
:order => "service_activities.area_code, service_activities.service_code"
end
定制view,index.xml.builder
1
2
3
4
5
6
7
8
9
10
xml.instruct!
xml.tag! "area-distributions" do
@report.items.each do |record|
xml.tag! "area-distribution" do
xml.tag! "area-code", record.area_code
xml.tag! "service-code", record.service_code
xml.tag! "user-number", record.user_count
end
end
end
定义路由
1
2
3
map.namespace :sync do |sync|
sync.resources :area_distributions
end
访问 sync/area_distributions.xml 即可。 当然也可以在.xml?后增加查询条件来精确提取需要调用的数据。
Read More
2010年6月24日注定是悲情的一天。因为意大利,因为我的蓝色情结。

意大利的离去或许是大多数人预料中的,送别这个词汇在赛场上,永远都在上演,却没想到会这么快。没有因扎吉,没有卡萨诺,甚至没有格罗索的意大利队,卫冕冠军、传奇球队众多光环承载下,注定不能走的很远。
只是, 从巴乔时代就已经爱上了的这支意大利队,并没有放弃,他们用最后的15分钟时间让意大利球迷失望的心开始破碎,那是感动,那是悲情,那是久违的血性和卫冕冠军的残存霸气。当夸利亚雷拉用挑射攻破斯洛伐克球门时,意大利人依然把生机保留到最后。只是,这一切来得太晚,他们依稀看到晋级希望,然后带着仅剩的骄傲气质,带着对蓝色的忠诚,带着委屈的眼泪,离开了南非,离开了荣誉,离开了,我们的视线。
看台上的意大利球迷开始哭泣,意大利国旗开始凋零,他们回家了,在这个伤心的夜晚。南非不是他们的吉祥地,他们需要用时间舔舐伤口。
夸利亚雷拉是个悲情英雄,被裁判吹掉的那个进球,被斯洛伐克门将肘击却得到黄牌的委屈,一下子宣泄了出来,竟然孩子般的哭了。 我想,这个名字会永远让我们记住吧,就好像记住94年巴乔落寞的背影一样。

纪念这支曾经辉煌的球队,纪念因扎吉,纪念卡萨诺,纪念马尔蒂尼,纪念皮耶罗, 纪念心中的蓝色情结。
我悲伤, 却不绝望, 因为离开, 只是为了四年后的再次回归。
Read More

开发相关:
高校迎新信息管理系统功能分析:
基础信息管理
公共资料管理
1. 新闻公告发布,发布招生信息、招生公告和文件共享,保持信息流通。
报到流程管理
住宿管理
数据管理
统计查询
分配管理
Screenshots:







很久没有出去逛逛了,趁端午假期的最后一天,给自己放个假。
陆家嘴的明珠天桥下的车流永远都是那么有序,以前在杭州的时候,一直喜欢站在天桥上看下面的车流,怀念那时候的霓虹是那么美好。

喜欢闲坐在正大广场的大众书局里的小咖啡吧,拿几本喜欢的书,点一杯拿铁,待一个下午也不会感到满足,三分之一的意式浓缩咖啡Espresso加三分之二的蒸鲜奶,这个味道永远那么令人回味,这个味道,也是我生活中优雅的矜持。
这里的拿铁很便宜,这让我可以很廉价地坐在橱窗边,静静想你。
虽然是个小咖啡吧,却陈列着不少酒。

写写博客,看看书,闲暇之余,要充分享受生活的点滴,生活虽然孑孓并且自我,却也无所谓。突然想到了阿飞正传里的苏丽珍,她说
我已经痊愈很久了。
我想,这辈子再也不会遇到你吧。
遗忘,或者假装遗忘。
这时我忽然明白那一分钟的含义。
也许你曾经爱过我,仅仅在那一分钟。

闲逛的时候恰巧碰到Nike在搞活动,展览了本届世界杯受Nike赞助的国家队服,作为足球狂热分子的我,怎能错过。。。


当然结果就是出血买了一套。。。
Read More
很久没有安静地坐在咖啡吧里品着咖啡,聆听sting的声音了。刚冲的拿铁温中带热,在上海这个城市,泡泡咖啡吧其实是件很有意思的事情,在这里身体和精神能放到最轻松的状态。
很早久开始喜欢Sting,因为他那沙哑、但不失细腻的声音,始终如自由不羁的云,荡漾于缈缈的空中。Sting的声音就像是来自灵魂的深处,唤起的是你对身体的思索。

And if I told you that I loved you
You’d maybe think there’s something wrong
I’m not a man of too many faces
The mask I wear is one
Well, those who speak know nothin
And find out to their cost
Like those who curse their luck in too many places
And those who fear are lost
I know that the spades are the swords of a soldier
I know that the clubs are weapons of war
I know that diamonds mean money for this art
But that’s not the shape of my heart
That’s not the shape of my heart
That’s not the shape……the shape of my heart
一直喜欢通彻心扉的声音,记得曾经看过一部电影,名为 Leaving Las Vigas. 尼古拉斯·凯奇和伊丽莎白·苏伤痛之作,影片体现出了一种刻骨的悲哀气氛,在华丽中显现着无尽的绝望之情。
物欲时代,良知沦丧。内心矛盾,醉生梦死。
表面上流光溢彩骨子里却肮脏龌龊的欲望之城Las Vigas,两颗绝望的心相爱了,那是迷乱的爱。真挚的爱。癫狂的爱。末日的爱。他们是存活在这黑暗世间最底层的最卑微的灵魂。他们相互温存,生死与共。
哪怕在本撒手人寰以后那种感动很快就将消失,莎拉纯净如天使的爱也将永远凝固,直到天荒地老。
“如果不是我失去了爱的能力,我想我会爱你一辈子的。”——是谁说过这句话?它飘散在深秋赌城的风里,像喁喁吹向情人的风。
离开拉斯维加斯,离开绝望的心。
Sting的Angel Eyes因为激昂而显得沙哑,但这种灵魂深处的声音,有谁, 能抵挡的住呢?

So drink up all you people
Order anything you see
Have fun you happy people
The drink and the laugh’s on me
时常在无人的时候问自己, 这么多年,为了谁而活, 答案一直都很迷离,但是现在,终于好像知道了。
Read More
Latest Comments