工作不是生活的全部

昨天看褪墨的一篇文章, 里面有这么一个章节,看过之后很有感触.

工作不是生活的全部

你是不是经常在晚上和周末加班?如果你花费所有的时间在工作上,那你用什么时间去消费你赚的钱呢?不要因为放下手边额外的工作而有罪恶感,休闲时间和工作时间同等重要。从工作中得到满足感的确是令人高兴的事情,但是我们只是埋头工作的话,我们的生活会失去应有的平衡。

这说的的确很有道理, 有时候觉得每天的生活就是在工作, 特别是毕业之后, 学习的机会更少了. 我经常和朋友抱怨工作这样那样的不顺利, 这样那样的辛苦, 但后来才发现原来根本不用这样, 工作只是一种赚钱的手段而已.

对我来说, 工作只能让我有东西吃, 有衣服穿, 有地方住, 除了学习之外工作只是为了赚钱, 再抽象一点说就是在用痛苦交换幸福.

我想工作可能不能帮助任何人实现他们的梦想, 除非他们的梦想是给别人打工然后回家养活老婆孩子, 工作也不可能代替任何人的生活, 家庭, 感情, 梦想, 这些东西工作永远都不可能替代, 工作只是多数人在为少数人的生活, 家庭和梦想在努力而已.

昨天用Open Office做了这样一个表格, 然后恍然大悟, 工作之外, 做回我自己, 梦想就在眼前.

Ext学习笔记(1

昨天用了一下午学习Ext, 搞了一下午最后连个表格都没搞出来, 今天继续, 顺便记录一下.

中文在线手册 http://www.ajaxjs.com/docs/

这里请大家注意一下, 看手册一定要看源码包里的那个docs目录里的, Ext手册版本差异很大, 不一定最新的就一定适用。

使用Ext之前需要加载Ext库, 昨天直接加载核心, 竟然不好用, 最后看例子里面是加载了两个文件, 原因还没搞清楚, 但先记下来.

<script type=”text/javascript” src=”../ext-2.2/adapter/ext/ext-base.js”></script>
<script type=”text/javascript” src=”../ext-2.2/ext-all.js”></script>

最基础的

1
Ext.onReady(fn);

这个和Jquery的$(fn)是一样的, 就是页面加载完毕执行fn

1
Ext.get('idName');

这个就是Jquery中的$(‘#idName’), 返回一个Ext的Element对象.

Element.dom是该对象的DOM节点, 其他内容看手册里的Element部分

1
Ext.select('p')

这个类似Jquery中的$(‘p’), 但是Ext中没有each, Ext.select(‘p’).methodName()直接就作用在全部对象上.

事件绑定

1
Element.on('click', fn);

获得事件句柄

1
2
3
4
5
clicked = function(e){
Ext.get(e.target).highlight();//e.target为触发该事件的对象id, highlight是高亮闪烁
}

Ext.select('p').on('click',clicked);

消息框
Ext.MessageBox为Ext的消息对象.

Ajax
ajax部分和Jquery非常相像了

1
2
3
4
5
Ext.get('msg').load({
url: 'http://test/ext/data.php',
params: 'name=1',
text: 'Updating...'
});

长城在哪里?

刚刚在玩Google Earth, 在美国逛了一大圈之后又在国内逛, 逛到北京就想起来看看长城什么样子, 从小到大, 我都没出过吉林省. 在北京附近找了好一阵子, 大概20分钟, 才差不多确定长城的位置. 但基本上什么也看不到, 我一直对在太空能看到长城的说法深信不疑, 没想到, 放到最大都看不到.

where is the great wall

谁在上面这个图上看到长城了记得告诉我.

像我这样的好孩子在小的时候就听老师讲在太空能看见的唯一建筑就是长城, 而且不只是老师讲, 教科书上也是这么说的, 真太失望了. 只有google一下, 发现原来这个问题在几年前引发过大规模的讨论.

曾在太空站工作的宇航员威廉·博格在1991年出版的《在太空中如何盥洗》一书中说,在那样的高度上已无法用肉眼看到长城,而需要用望远镜才能看到。

2000年凤凰卫视曾采访第一批登上月球的宇航员之一奥尔德林。他说,在月球上是看不到万里长城的,长城是狭窄而不规则的,在轨道上,很难看到不规则的事物。

2000年5月4日,首位太空游客蒂托在接受记者采访时也说,我从中国上空飞过时看到了中国的河流和山脉,但没有看到中国的长城

2003年10月中国首位宇航员杨利伟返回地球后表示:“看到地球景色非常美丽,但我没有看到我们的长城。”

2004年年初,全国政协委员王翔在政协会议上的提案要求有关部门尽快纠正小学语文课本第七册课文《长城砖》中有关宇航员肉眼能看到长城的错误,教育部对此公开答复表示纠错工作正在进行。

美国宇航员尤金·塞尔南2004年2月访问新加坡时表示,“在高度为160-320公里的地球轨道上,中国的长城的确可以用肉眼看到”。国际空间站远征七队的科学官埃德·刘也赞同他的观点。

2004年5月11日欧洲空间局网站首页以“从太空看中国长城”为题,发布了一张“普罗巴”卫星3月25日过境时获取的高分辨率卫星图像,文字说明指出,该图右上方一条蜿蜒曲折的细线条是延伸7240公里的长城。该公告还认为,如果天气、光照等条件适合,宇航员可以用肉眼看到长城。

公告刊出仅一天后,美国宇航局网站转发了这条信息和图像。两家国际公认的空间科技权威机构发布的信息立刻引起广泛关注,类似“从太空看到长城并非神话”的报道出现于内地多家媒体,还有文章“叫停”政协委员建议小学语文课本应纠错的提案。

与此同时,质疑和否定的意见也纷纷见诸报端和网站。复旦大学和美国加州大学的学者首先提出不可能是长城,根据立体效应和翻转180度看,图像很明显是一条汇聚水流的山沟。

2004年5月19日欧空局发布纠错公告,承认此前公布的图像发生解释错误,把一条注入密云水库的河流误判为长城,至于那条被判为运河的影像是否有错和宇航员能否看到长城等问题则未提及。

2004年5月27日,北京市测绘设计研究院的科技人员用航片、1:1万地形图与欧空局的图像进行叠加分析后提出新的看法,长城、河流之说都不正确,是条山间公路。

真TMD的郁闷被这个谎言忽悠了十几年, 而且深信不疑, 现在这年头, 媒体不可信, 书籍也不可信, 连小学教材都不可信, Chnee 的教育真TMD….. 幸好我学习不太好, 要么现在肯定成白痴了.

面向对象的访问控制

这两天有在看php5的面向对象的一些教程, 因为php4用的比较多,所以对面向对象这个概念并不是很熟悉.

这里只是简单记录一下关于public, private和protected.

public(公共的)应该比较容易理解, 完全公开, 任何地方都可以访问, 包括该类内部, 外部, 子类等等.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
class a{
public $a;

function __construct(){
$this->a = "1";
}

function test(){
echo $this->a;
}
}

class b extends a{
function test2(){
echo $this->a;
}
}

$a = new a;
$a->test();
// 这里说明public属性对象内部可访问, 而该语句没报错是
// 因为test方法也可以访问, 说明方法默认为public

echo $a->a; // 这里说明public属性外部也可以访问
$b = new b;
$b->test2(); // 这里说明public属性在子类中可以访问
echo $b->a; // 这里说明public属性在子类外部也可以访问

private(私有的)可以理解为只有对象的内部可以访问, 但是其中有可比较难理解的概念, 就是继承来的public方法可以访问到父类的private方法和属性, 而且实际上private属性和方法在技术上是无法被覆写的, 这个我目前还没有研究太透彻.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
class c{
private $a;

function __construct(){
$this->a = "2";
}

function test(){
echo $this->a;
}
}

class d extends c{
function test2(){
echo $this->a;
}
}

class e extends c{
private $a="3";
function test2(){
echo $this->a;
}
}

$c = new c;
$c->test();// 这里说明private属性对象内部可访问
// echo $c->a; // 这里会报错说明private属性外部不可以访问
$d = new d;
echo '[';
$d->test(); // 这里输出2,说明在test()中可以访问到class c 的$a
echo ']';
$d->test2(); // 这里没有产生输出说明private属性在子类中不可见
echo $d->a; // 这里也没有产生输出说明private属性在子类外部也是不可见的
$e = new e;
echo '{';
$e->test(); // 这里输出2, 说明该方法可见, 但访问的是父类的$a
echo '}';
$e->test2();
// 这里输出了3说明$a被覆写了, 但其实在class e中
// 其父类的$a并不可见,所以并不是覆写而是创建

protected (受保护的)我个人理解就是在对象和子对象中你想怎么用都可以, 就是不可以在外面用.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
class f{
protected $a = "4";
function test(){
echo $this->a;
}
}

class g extends f{
function test2(){
echo $this->a;
}
}
$f = new f;
$f->test(); // 这里产生了输出,说明protected属性对象内部可以访问
//echo $f->a; // 这里报错说明protected属性对象外部不可以访问
$g = new g;
$g->test2(); // 这里输出4,说明protected属性在子类中可以访问
$g->test(); // 这里输出4,说明protected属性在子类中可以访问
// echo $g->a; //这里报错,说明protected属性在子类的外部不可访问

Sablog-X 1.6 => Wordpress 2.2.3 转换程序 - 080422 测试版

这个转换程序终于算是完成了, 不过我只简单测试了一下, 欢迎各位网友进行测试.

我不建议菜鸟进行这个测试, 因为比较危险, 我当初转了2天, 试了不知道多少次才转过来, 虽然这个是全自动的, 但我也不敢保障, 如果有很需要转换而且觉得不把握的, 可以留言或者发email免费咨询, 如果觉得自己做不了的但很需要转的, 我可以提供收费援助.

注意: 使用前一定要备份! 一定 !!! 否则后果自负 !!!!!

__ 使用说明 __
准备事项:
1)备份要转换的sablog-x数据表及附件
2)准备一个本地php+mysql环境, 推荐xampp 3)创建程序目录结构如下
sa-wp/
sa-wp/sa/
sa-wp/wp/
4)分别在sa/和wp/下安装sablog-x 1.6和wordpress 2.2.3, 要转换其他版本的请对比一下版本之间数据库有没有改动, 没有才可以进行转换, 然后再升级wordpress就可以, 如果数据库结构不同, 那不好意思了. 注意sablog-x的表名前缀要和要转换的设置相同,sa和wp的表要放在同一数据库下.
5)将备份导入sablog-x, 将附件附件放到sablog-x内
6)将转换程序放在sa-wp/目录下

配置参数:
修改转换程序的设置,修改如下内容:

$s[‘hostname’] = ‘localhost’;    # 数据库地址
$s[‘username’] = ‘root’;    # 数据库帐号
$s[‘password’] = ‘’;        # 数据库密码
$s[‘dbname’]   = ‘s-w’;        # 数据库名
$s[‘sa_pre’]   = ‘sablog_’;    # sablog-x表名前缀
$s[‘wp_pre’]   = ‘wp_’;        # wordpress表名前缀
$s[‘sa_dir’]   = ‘sa/‘;        # sablog-x安装目录
$s[‘wp_dir’]   = ‘wp/‘;        # wordpress安装目录
$s[‘wp_url’]   = ‘http://www.foolbird.net/‘;    # 网站访问地址, 注意后面加/

运行转换程序…

收尾工作:

1)进入wordpress后台, 或者使用phpmyadmin导出数据表内容
2)将空间上的sablog-x彻底删除. 全新安装wordpress 2.2.3, 将wp-content/uploads上传到服务器的wp-content下, 然后清空数据库, 导入刚刚导出的数据.

转换程序:

sa-wp_080422