关于作者

姓名:烟斗

性别:男

出生日期:1900-02-19

地区:北京-海淀

联系电话:

QQ:264041134婚否:保密
用户名:tobaccopipe
笔名:烟斗
地区: 北京-海淀
行业:其他

日历  

快速登录

+ 用户名:
+ 密 码:

在线留言



爱卿如我

爱恨参半

羽毛天下

闲情偶遇

访问统计:
文章个数:94
评论个数:311
留言条数:33




Powered by BlogDriver 2.1

烟草的味道。。。

 

烟草,我喜欢,当我有天不再吸烟的时候,我也就不再会回到博客,不再会回到我的家...虽然我现在没有自己的家。 当我开始的时候,是05年的愚人节的早上。赋闲在家,醒来看看妩媚的阳光点上一只烟,不经意拧拧鼻子,却发现全是血... 我应该很健康,我想,即使鼻子经常出血。常年的锻炼,让我感觉还好,偶尔精神好点的时候也可以做几个单手俯卧撑。 即便如此,我依然想记录下我人生的一些轨迹,从今天开始,从现在开始...... 愚人节,我怎么会有记录的想法?或许人生本身就是上帝的愚人节。

文章

memset用法详解

memest原型 (please type "man memset" in your shell) 

 void *memset(void *s,  int c, size_t n); 

memset:作用是在一段内存块中填充某个给定的值,它对较大的结构体或数组进行清零操作的一种最快方法。

常见的三种错误

第一: 搞反了c 和 n的位置. 

一定要记住 如果要把一个char a[20]清零, 一定是 memset(a, 0, 20) 
而不是 memset(a, 20,  0) 

第二: 过度使用memset, 我想这些程序员可能有某种心理阴影, 他们惧怕未经初始化的内存, 所以他们会写出这样的代码: 

char buffer[20]; 

memset(buffer, 0, sizeof((char)*20)); 
strcpy(buffer, "123"); 

这里的memset是多余的. 因为这块内存马上就被覆盖了, 清零没有意义. 

第三: 其实这个错误严格来讲不能算用错memset, 但是它经常在使用memset的场合出现 

int some_func(struct something *a){ 
 … 
 … 
 memset(a, 0, sizeof(a)); 
 … 

:为何要用memset置零?memset( &Address, 0, sizeof(Address));经常看到这样的用法,其实不用的话,分配数据的时候,剩余的空间也会置零的。

答:1.如果不清空,可能会在测试当中出现野值。 你做下面的试验看看结果() 

char buf[5]; 

CString str,str1; //memset(buf,0,sizeof(buf)); for(int i = 0;i<5;i++) { str.Format(“%d “,buf[i]); str1 +=str ; } TRACE(“%s\r\n“,str1)

2.其实不然!特别是对于字符指针类型的,剩余的部分通常是不会为0的,不妨作一个试验,定义一个字符数组,并输入一串字符,如果不用memset实现清零,使用MessageBox显示出来就会有乱码(0表示NULL,如果有,就默认字符结束,不会输出后面的乱码)

问:

如下demo是可以的,能把数组中的元素值都设置成字符1
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
    char a[5];
    memset(a,'1',5);
    for(int i = 0;i < 5;i++)
      cout<<a[i]<<"  ";
    system("pause");
    return 0;
}
而,如下程序想吧数组中的元素值设置成1,却是不可行的
#include <iostream>
#include <cstring>
using namespace std;
int main()
{
    int a[5];
    memset(a,1,5);//这里改成memset(a,1,5 *sizeof(int))也是不可以的
    for(int i = 0;i < 5;i++)
      cout<<a[i]<<"  ";
    system("pause");
    return 0;
}
问题是:

1,第一个程序为什么可以,而第二个不行,
2,不想要用for,或是while循环来初始化int a[5];能做到吗?(有没有一个像memset()这样的函数初始化)

答:

1.因为第一个程序的数组a是字符型的,字符型占据内存大小是1Byte,而memset函数也是以字节为单位进行赋值的,所以你输出没有问题。而第二个程序a是整型的,使用memset还是按字节赋值,这样赋值完以后,每个数组元素的值实际上是0x01010101即十进制的16843009。你看看你输出结果是否这样? 

2.如果用memset(a,1,20);
就是对a指向的内存的20个字节进行赋值,每个都用ASCII为1的字符去填充,转为二进制后,1就是00000001,占一个字节。一个INT元素是4字节,合一起就是1000000010000000100000001,就等于16843009,就完成了对一个INT元素的赋值了。

- 作者: 烟斗 2008年09月23日, 星期二 13:46  回复(0) |  引用(0) 加入博采

VC++
Message Map

struct AFX_MSGMAP //消息映射表
{
AFX_MSGMAP* pBaseMessageMap; //基类消息映射表的指针;
AFX_MSGMAP_ENTRY* lpEntries; //消息入口表的指针;
};

struct AFX_MSGMAP_ENTRY //消息映射入口表
{
UINT nMessage; //消息;
UINT nCode; //控件的通知码或WM_NOTIFY的通知码
UINT nID; //控件的ID,(0时为 Window 消息)
UINT nLastID; //最后一个控件的ID;
UINT nSig; //信号类型;
AFX_PMSG pfn; //消息函数的指针;
};

typedef void (CCmdTarget::*AFX_PMSG)(void); //消息映射函数;

一、消息映射图
1、DECLARE_MESSAGE_MAP()
展开:
static AFX_MSGMAP_ENTRY _messageEntries[] //消息映射入口表
static AFX_MSGMAP messageMap; //消息映射表;
virtual AFX_MSGMAP* GetMessageMap() const;//返回消息映射 表的指针;

2、BEGIN_MESSAGE_MAP(class_name,base_class_name)
①、定义GetMessageMap()函数,代码如下:
{ return &class_name::messageMap;}
②、初始化消息映射表,代码如下:
AFX_MSGMAP class_name::messageMap={
&(base_class_name::messageMap),
&(class_name::_messageEntries)
}
③、初始化消息入口表
AFX_MSGMAP_ENTRY class_name::_messageEntries[]={
//在这里添加消息和映射函数;

3、END_MESSAGE_MAP()
{0,0,0,0,AfxSig_end,(AFX_PMSG)0}
} ; //该括号和③相对应;


二、消息类型
1、命令消息(WM_COMMAND)
所有派生自 CCmdTarget 的类都有资格接受WM_COMMAND。

2、Window消息(WM_xxx)
所有派生自 CWnd 的类都有资格接受 WM_xxx。

3、控件消息(WM_NOTIFY)
控件向其父窗口通知消息。

三、消息处理
1、WM_xxx 消息处理
窗口类(自身)处理→基类处理→CWnd∷DefWindowProc()处理;
其所对应的宏一般为在消息 WM_ 前面加上 ON_。

2、命令消息处理
命令消息来自命令用户接口对象(菜单、加速键或工具栏按钮)发出的WM_COMMAND消息;
㈠、WM_COMMAND消息
其所包含的类型和对应的宏如下:
①、ON_COMMAND(ID,pfn)
标准的命令消息;

②、ON_COMMAND_EX(ID,pfn)
多个对象对同一个命令 ID 的处理;
其函数的原型如下:
afx_msg BOOL pfn(UINT nID)
说明:
当返回 TRUE 时表示已经处理,不用在消息处理链中继续处理该命令;为 FALSE 时表示继续在消息处理链中处理该命令。
注意:
其一:在多对象处理中一定要使用该宏;
其二:pfn(UINT nID)(消息处理函数)返回值将其类型void改成BOOL,而且必须为FALSE;
其三:多个对象的处理是由高层向低层的过程:即视图类→主框架窗口类→应用程序类;

③、ON_COMMAND_RANGE(nID,nLastID,pfn)
多个命令 ID 提供相同的处理;
注意:
其一:确保nID、nLastID的值在 Resource.h 中是连续的。
其二:一般在函数 pfn(UINT nID) 中加入参数,用来确定那一个按钮点击。

㈡、CN_UPDATE_COMMAND_UI消息
当菜单项、工具栏按钮等[命令用户接口对象]要更新其状态时所对应的消息,它所包含的类型和对应的宏如下:
①、ON_UPDATE_COMMAND_UI(ID,pfn)
其中函数的原型如下:
afx_msg void pfn(CCmdUI* pCmdUI)

②、ON_UPDATE_COMMAND_UI_RANGE(nID,nLastID,pfn)
该函数可以处理一组[命令用户接口对象]的外观;
其中函数的原型如下:
afx_msg void pfn(CCmdUI* pCmdUI)
重要:
CCmdUI 中的 m_nID 成员表示不同的 ID,因此可以利用它来进行区别处理。

3、控件的通知消息
从控件和子窗口发送到父窗口的WM_COMMAND通知消息(即在发送命令消息中加入控件的通知码)。
注意:在 Window9x 新控件中不再传送WM_COMMAND通知消息,而是发送 WM_NOTIFY 消息,但为了兼容,旧有的控件还是传送WM_COMMAND消息。
例如:
CEdit控件向父窗口发送 EN_CHANGE 通知代码的WM_COMMAND消息。
注意:框架像传送其它 WM_ 消息一样传送通知消息,但有一个例外,即由 [按钮] 控件发送的 BN_CLICKED 通知消息,被作为命令消息特别处理。
㈠、WM_COMMAND 其所对应的宏如下:
①、ON_CONTROL(通知码, nID,fn)
②、ON_CONTROL_RANGE(通知码, nFirstID,nEndID,fn)
注意:
这两个宏的应用和 ON_COMMAND、ON_COMMAND_RANGE相同,所不同的是在宏前面加入[通知码]。
注意:可以根据不同的控件的[通知码]派生出特定的宏,其所派生的宏一般为在 [通知码] 前面加上 ON_。
㈡、WM_NOTIFY 其所对应的宏如下:
①、ON_NOTIFY(通知码, nID,fn)
其中函数的原型如下:
afx_msg void fn(NMHDR* pNotifyStruct,LRESULT* result)
其中结构:
typedef struct tagNMHDR {
HWND hwndFrom; //发送通知消息的控件的句柄;
UINT idFrom; //发送通知消息的控件的 ID;
UINT code; //通知码;
} NMHDR;

②、ON_NOTIFY_EX(通知码, nID,fn)
表示一个消息在多个对象的成员函数中进行处理。
其中函数的原型如下:
afx_msg BOOL fn(UINT nID,NMHDR* pNotifyStruct,LRESULT* result)
说明:
它必须返回 BOOL 类型的数值,其意义和 ON_COMMAND_EX 相同。

③、ON_NOTIFY_RANGE(通知码, nFirstID,nEnd,fn)
表示多个控件的通知消息在同一个函数中进行处理。
其中函数的原型如下:
afx_msg void fn(UINT nID,NMHDR* pNotifyStruct,LRESULT* result)
说明:
其意义和ON_COMMAND_RANGE相同。

4、反射消息处理
父窗口在处理控件窗口的通知消息WM_CTLCOLOR、WM_COMMAND、WM_NOTIFY时,会把该消息转化为反射消息,并转交给控件子窗口处理,只有在控件子窗体不处理该消息时,父窗口才有机会处理。
注意:在类的属性对话框中的消息页面可查反射消息(前面有"="标志)
①、WM_CTLCOLOR_REFLECT反射消息
其所对应的宏如下:
ON_WM_CTLCOLOR_REFLECT()
反射消息函数的原型:
HBRUSH class_name∷CtlColor(CDC* pDC,UINT nCtlColor)
{
return NULL;
}
该函数用来重置控件的顔色;注意:必须 return CBrush才有效。


5、自定义的窗口消息
自定义窗口消息的消息标志都大于WM_USER(至少是WM_USER+100,因为许多控件都使用这一范围的WM_USER消息)
使用自定义的消息分为二步:
①、在 Resource.h 中定义消息标记
#define WM_MYMSG (WM_USER+1000)

②、在消息映射表中加入消息映射宏
BEGIN_MESSAGE_MAP()

ON_MESSAGE(WM_MYMSG,fn)
END_MESSAGE_MAP()
说明:
其对应的宏为 ON_MESSAGE(),其成员函数的原型为:
afx_msg LRESULT fn(WPARAM,LPARAM)

6、登记消息
①、在系统中注册并获取一个登记消息的消息标记
UINT RegisterWindowMessage(LPCTSTR)
说明:
通过 API 函数来注册消息标记,其中 LPCTSTR 为用户的任意字符串。例如:
UINT WM_MYMSG=RegisterWindowMessage("MYMSG");
其中 WM_MYMSG 是自定义无符号整型的消息标记。

②、在消息映射表中加入消息映射宏
BEGIN_MESSAGE_MAP()

ON_REGISTERED_MESSAGE(WM_MYMSG,fn)
END_MESSAGE_MAP()
说明:
其对应的宏为 ON_REGISTERED_MESSAGE(),其成员函数的原型为:
afx_msg LRESULT fn(WPARAM,LPARAM)
注意:登记消息可以实现跨进程的数据通讯。

7、线程消息
只有继承自CWinThread类才能允许处理线程消息。
①、定义线程的消息标记
有两种方法:
(1)、使用自定义的消息标记,即:WM_USER;
(2)、使用登记的消息标记,即:RegisterWindowMessage;

②、在CWinThread继承类的消息映射表中添加宏
ON_THREAD_MESSAGE(消息标记,fn) //自定义的消息;
ON_REGISTERED_THREAD_MESSAGE(消息标记,fn) //登记的 //消息
③、其函数的原型如下:
afx_msg void fn(WPARAM wPARAM,LPARAM lParam)

④、引发线程消息
线程消息的引发必须调用 CWinThread 类的PostThreadMessage将消息投递到线程消息队列中。
注意:可以通过 AfxGetApp() 函数获取一个全局的应用对象。
PostThreadMessage(UINT,WPARAM,LPARAM)

8、WM_COPYDATA
操作系统维护一块内存来管理 WM_COPYDATA 消息,该消息主要用于跨进程传递数据,传递的数据量达到 232。
①、定义一个 COPYDATASTRUCT 数据结构
typedef struct tagCOPYDATASTRUCT {
DWORD dwData; //自定义的特殊数据;
DWORD cbData; //以字节为单位的 lpData 的大小;
PVOID lpData; //传送的数据内存块的指针;
} COPYDATASTRUCT;

②、其所对应的宏
ON_WM_COPYDATA()

③、其所对应的函数的原型
afx_msg BOOL OnCopyData(CWnd*,COPYDATASTRUCT*)
说明:
CWnd*:发送该消息的窗口的指针;


9、投递和发送消息
通过向一个窗体投递或发送消息,可以间接地驱动窗体的消息过程。
投递(PostMessage):将消息放到线程的消息队列中,然后不等线程处理该消息就直接返回到调用方。
发送(SendMessage):当一个线程向目标线程发送消息时,该线程要一直等待,直到目标线程处理了该消息为止。
①、投递消息
BOOL CWnd∷PostMessage(UINT,WPARAM=0,LPARAM=0)
说明:
CWnd:目标窗口;
该函数将一条消息放入到应用程序的消息队列,然后不等窗口处理就直接返回。

②、发送消息
LRESULT CWnd∷SendMessage(UINT,WPARAM=0,LPARAM=0)
说明:
CWnd:目标窗口;
该函数将一条消息放入到应用程序的消息队列,等待窗口处理后才返回。
为了避免线程陷入永久等待状态,可以用SendMessageTimeout代替SendMessage:
LRESULT SendMessageTimeout(HWND,UINT,WPARAM,LPARAM,UINT,UINT,PDWORD_PTR)
说明:
HWND:窗口句柄;
UINT:消息发送的选项,为SMTO_BLOCK时,可以防止线程无 限等待,即根据一定的超时值返回。
UINT:超时,以毫秒为单位;
PDWORD_PTR:返回值;
注意:CWnd没有对该函数的包装。

③、投递和发送消息
BOOL CWnd∷SendNotifyMessage(UINT,WPARAM,LPARAM)
说明:
CWnd:目标窗口;
该消息具有SendMessage和PostMessage两种功能:
当目标窗口和发送窗口为同一个线程时,则相当于SendMessage的功能;否则当不为同一个线程时,则为PostMessage的功能。

6-1、投递和发送 WM_XXX 消息
在发送标准的 WINDOW 消息时,只要将该消息的 ID、wParam、lParam参数放在 SendMessage()和PostMessage()函数的相应位置即可。

6-2、投递和发送命令消息和控件的通知消息
在投递和发送命令消息时,消息的 ID为 WM_COMMADN,而对于不同的菜单项、加速键、控件则wParam、lParam的取值不同。
wParam分成低、高两部分,低部分为菜单项、加速键、控件的ID。高部分则:
菜单项:0;加速键:1;控件:通知码
lParam:当控件时是控件的句柄,否则为 NULL。

对于wParam参数可以采用自定义宏:
WPARAM MAKEWPARAM(WORD wLow,WORD wHigh)

6-3、投递和发送自定义的窗口消息
在投递和发送自定义的窗口消息时,参数 wParam、lParam 没有特别的涵义,只和普通函数的形参一样进行数据的传递。
注意:
PostMessage 和 SendMessage 是不同的,前者投递后就返回,而后者必须等到消息处理后再返回;所以在参数是 [局部] 或 [临时]时,使用PostMessage函数会引发错误(除非参数使用 指针,则可避免错误),而必须使用SendMessage函数。
6-4、投递和发送注册的窗口消息
和 6-3 基本一样,但它要特别注意的问题是:在跨进程的处理消息时,如果将消息PostMessage、SendMessage到某个进程 A,则必须在进程 B 中获取进程 A 的窗口类名,并通过窗口类名获取窗口的指针,最后再根据指针调用 PostMessage、SendMessage 函数。
注意:在获取窗口的指针时,可以根据窗口类名或窗口的标题。


6-5、投递和发送WM_COPYDATA消息
SendMessage(消息标记,WPARAM,LPARAM)
其中:
消息标记:WM_COPYDATA;
WPARAM:发送该消息的窗口句柄;
LPARAM:COPYDATASTRUCT结构的指针,先通过(LPVOID)进行转换,再通过(LPARAM)进行转换,如下形式:
(LPARAM)(LPVOID)&cds

- 作者: 烟斗 2008年09月18日, 星期四 16:57  回复(1) |  引用(0) 加入博采

VC++实现CRC32校验值方法

//摘录:文人黑客 0809181652 
//CRCFromASM.H
class CAsm
{
public:
CAsm();
virtual ~CAsm();
void MakeTable(void);
void DelTable(void);

BOOL GetFileCrc(LPCTSTR szFilename, DWORD &dwCrc32);
protected:
DWORD *Crc32Table;
};

//CRCFromASM.CPP
#include "stdafx.h"
#include "CRCFromASM.h"

#define MAX_BUFFER_SIZE 4096

//构造函数
CAsm::CAsm()
{
MakeTable();//生成码表
}

//析构函数
CAsm::~CAsm()
{
DelTable();//释放码表所占内存
}

//生成码表
void CAsm::MakeTable(void)
{
int i, j;

DelTable();
Crc32Table = new DWORD[256];

DWORD dwCrc;
for(i = 0; i < 256; i++)
{
dwCrc = i;
for(j = 8; j > 0; j--)
{
if(dwCrc & 1)
dwCrc = (dwCrc >> 1) ^ 0xEDB88320;
else
dwCrc >>= 1;
}
Crc32Table[i] = dwCrc;
}
}

//函数码表所占内存
void CAsm::DelTable(void)
{
delete Crc32Table;
}

//获取文件的CRC32值
BOOL CAsm::GetFileCrc(LPCTSTR szFilename, DWORD &dwCrc32)
{
if (lstrlen(szFilename)<1)
{
return FALSE;
}

HANDLE hFile = NULL;
dwCrc32 = 0xFFFFFFFF;

try
{
if(Crc32Table == NULL)
{
return FALSE;
}
hFile = CreateFile(szFilename,
GENERIC_READ,
FILE_SHARE_READ,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_ARCHIVE | FILE_ATTRIBUTE_HIDDEN | FILE_ATTRIBUTE_READONLY | FILE_ATTRIBUTE_SYSTEM | FILE_FLAG_SEQUENTIAL_SCAN,
NULL);
if(hFile == INVALID_HANDLE_VALUE)
{
return FALSE;
}
else
{
BYTE buffer[MAX_BUFFER_SIZE];
DWORD dwBytesRead;
BOOL bSuccess = ReadFile(hFile, buffer, sizeof(buffer), &dwBytesRead, NULL);
while(bSuccess && dwBytesRead)
{
__asm
{
push esi
push edi
mov eax, dwCrc32
mov ecx, [eax]

mov ebx, this
mov edi, [ebx]CAsm.Crc32Table

lea esi, buffer
mov ebx, dwBytesRead
lea edx, [esi + ebx]
crc32loop:
xor eax, eax
mov bl, byte ptr [esi]
mov al, cl
inc esi
xor al, bl
shr ecx, 8
mov ebx, [edi + eax * 4]
xor ecx, ebx
cmp edx, esi
jne crc32loop
pop edi
pop esi
mov eax, dwCrc32
mov [eax], ecx
}
bSuccess = ReadFile(hFile, buffer, sizeof(buffer), &dwBytesRead, NULL);
}
}
}
catch(...)
{
return FALSE;
}

if(hFile != NULL) CloseHandle(hFile);
dwCrc32 = ~dwCrc32;
return TRUE;
}

//调用例子:
DWORD dwCrc32;
CAsm CRCINFO;
if (CRCINFO.GetFileCrc(m_FileName, dwCrc32))
{
CString str;
str.Format(_T("%08X"), dwCrc32);
m_CrcValue=str;
}
else
{
m_CrcValue="函数调用错误!";
}
UpdateData(FALSE);
//烟斗探秘0001

- 作者: 烟斗 2008年09月18日, 星期四 16:54  回复(0) |  引用(0) 加入博采

读万卷书,行万里路(转自人大BBS)

(作者云)这是我暑期写的一篇博客,有点长。希望住在东五的师弟,师妹?们能花点时间瞅一眼,但愿它能有助于你们决定是否要飞跃,以及如何规划未来的生活。之所以选择发在这个版,是为了纪念我在东五度过的四年最青春的日子,纪念那些在自己最青春的岁月朝夕相处的名字,尽管今日大家散落在天涯,但每每想起东五,想起102,(今日谁住在102?),都会有黯然的感觉。大家要把握好今日啊,等真正曲终人散的时刻,才能微笑着散场。

读万卷书,行万里路
----2007暑期记事

第一部分:
这是一篇酝酿了太久的文章。这是一篇献给我的爸爸妈妈的文章。
在西雅图的时候,接到我妈妈的电话,她提到说在看我的博客,我很惊讶。记忆中,父母从来不是新技术的拥趸,比如我妈,她似乎永远搞不懂新款的手机跟旧款的到底有什么本质差别。她提到我博客中写到的种种,我的心中各种滋味翻腾。一是觉得父母思念远方的游子,所以尽一切努力在各个渠道去了解任何关于我的消息,而我却只能以这样的方式来告知他们我心中的世界。有的时候,距离确实是个问题。人和人之间的交流和情感,必须通过实际和真切的面谈交流来维系和深化,要不然,在通讯已经如此发达的今天,国家元首们就不必飞跃重洋来参加各个会议而直接通电话就好了。
除了我功课必须的论文外,我已经很久很久没写任何文档。但这并不是我停止思考的标志,事实上,这一段,是我想问题最多最集中也最深入的阶段。读万卷书,行万里路,一直是我的人生目标。记得我曾提过我来美国的目的有三:一是把学位拿到;二是把身体锻炼好;三就是把美国好好走一遍。现在,三个目标都在有条不紊的实现过程中,目标一执行得不错,这个学期的成绩很不错,在很困难的情况下拿到这个成绩,我觉得算是对自己对家人有所交待;目标二一直都在坚持着,而事实上我的身体素质是在不断的变得更好;目标三,就是这个文档主要要说的事情。
这个夏天我花了很多的事情在路上,在两个多月的时间里,累计行程接近4万公里,其中的绝大部分,是我自己一个人完成了。从美国的中轴线往西的本土大陆所有的州,除了北达科他我没去过外,所有的州我都去过。看到了南达科他的美军战略核弹基地,怀俄明的树,蒙大拿的雨,艾达荷的高原湖泊,华盛顿州的西雅图不眠夜,俄勒冈松树上的青苔,加州灿烂的阳光,亚利桑那的大峡谷,新墨西哥的沙漠,得克萨斯的牧场,看到了科罗拉多的雪山,尤他的荒原,内华达的拉斯维加斯,俄克拉何马的油井,密苏里的坎萨斯城和艾荷华的小麦田,还有内部拉斯加的玉米地。穿越崇山峻岭,荒原沙漠,一路沿着美国的太平洋海岸线南下,穿过繁华的世界闻名大都市和寂静的无名小镇,一路上看到了无数震撼人心的自然美景。但这都不是这篇文章的重点。
这篇文章的目的,是人,是描述这一路上看到的人,和他们的生活状态。我尽自己最大的努力,去做到公正客观。这些人,有生活状态非常好的,一般的,不如意的,从某种意义上来说,他们代表了华人各个阶层在美国的奋斗历程和结果。
这真是一篇非常非常难写的文档,事实上,那么多年,我从来没感到过如此困难,去写一篇东西。或许是太多的想法纠结在我的脑海中,以致于真的试图去表达的时候,发现自己如此的词穷且不达意。我无意去以一个教育者的姿态去宣扬什么,但我亦无法以一个单纯的游客身份去描述,因为这就丧失了我写作的全部动力。我希望透过我的眼睛,向你们展示,一个你们从未想像过的世界,华人在美国的世界。
站在旧金山的唐人街的分界线,是一条叫过萨克拉门托的大街,一街之隔,一边的唐人街让我一下子回到我20年前的中国,随地乱泼的脏水,汹涌的人潮,小商小贩,案板上的鱼苍蝇在飞,地摊上的桔子,甚至连味道都很国内,在那你几乎听不到英语,充溢你耳边的是广东话和福建话;街的另一侧,是高楼,大厦,白人们穿得比较体面的衣服拎着公文包进出写字楼。一街之隔,两个世界。这不是个案,事实上,全美的唐人街,几乎都是这样的状态。于是我在想,是不是中国人真的无法自己管理好自己,真的需要强力,需要压制才能展现出一个有序的状态?即便是在美国这么一个法律如此健全的国家,在唐人街,你仍能感到华人们的世界自成一统,一街之外的生活似乎跟他们没有关系,他们只是安心的做着他们的餐馆生意按部就班的生活。
旧金山的一位叔叔,80年代初出的国,英国某著名大学拿的博士,然后在那做到副教授,然后来美国,在美国东部某著名大学的实验室工作三年,而后在某世界著名的大药厂担任过某个项目的主管,后来自己出来做生意,生产的基地在中国。写到这一段,我犹豫了很久,我不知道该不该写,因为我不知道他看到这份文档会做什么样的反应,会伤害到他的自尊心?会打破他的一些幻境?我不知道。我之所以写就这些,是为了你们,为了看到这份文档的我的朋友们,为了给你们一个真切的美国,一个华人生活着的美国,为了责任,我写下来。坦率地说,在旧金山期间,这位叔叔的某些言论,让我很是不快,比如:“我们对大陆已经没什么感情寄托了”之类的言论。谈论时局的时候,从他的言语中,我能听出他对中国的不信任,能听出他的失望他的失落。他像是一个夹在墙缝间的人,他想融入国外的社会和生活,但到头来他全部的希望要寄于国内,因为他生产的资源全部在中国。我在旧金山期间话很少,我听得多,想得多,但很少去表达。事实上,他们的生活相当的可悲,是的,可悲,请原谅我用上这个感情如此强烈的词汇。作为一个学者,他没能最终坚持学术理想,作为一个人,他活得没有气节,一边指责怀疑中国,一边要回到中国找饭吃;对外国的生活,他们是羡慕的,他们是渴望的,但是,当从他们口中说出:“自己是社会的最底层”时,估计他们的心里亦是难受的。当他们强撑着过去的一些光荣试图去换取明日的美好时,世界狠狠的扇了他们一记耳光。很痛。但这才是真切的世界。这才是真正的美国。硬要归类的话,我把他归入想做假洋鬼子的可怜虫。
在硅谷,见到了久违的一位阿姨。她的爱人毕业于清华大学,目前在硅谷做电脑工程师。在硅谷期间,谈到他们的生活状态,那不是简单的两个字唏嘘可以概括的。清华时代的意气风发,到美国现实的柴米油盐,生活的巨大落差让人感觉在做云霄飞车。单单清华一个学校,在硅谷就有近3000人,这些人中的大部分,都是工程师,辛苦的工作,为了生活,为了每个月能付账单,买不起房子,公司没有养老的保险将来一切的费用要靠自己挣,辛苦了一辈子还要努力的去学习为的是不丢工作能生活下去。说真的,我很难过,看到这样的境况我很难过,我甚至都不敢提起清华的校训:“厚德载物,自强不息”,还记得吗?……国内的很多人不了解这样的生活,以自己想像中的美好来到美国,但真的投身其中的时候,却发现过去美好的期许成了永远难以实现的梦境。在硅谷五天,其中不止一次,叔叔阿姨提到,他们就是高级民工,做的是看不到未来亦没有什么成就感的工作,生活仿佛和世界隔绝,全部的重心就是工作时小小的那个格子间和下班后公寓里的餐桌。想回国,但这个年纪又不知道回去能干什么,想留下,却发现留在美国且不说拿绿卡入籍是多么不容易的一件事,即便是留下了,又能做什么,后半生,还是没保障。总结起来一句话,“一生蹉跎”。要归类的话,我把他们归入仍是热爱中国的,仍是珍视自己中国人身份但蹉跎了半生的人。

第二部分:
在国内的时候,支撑我飞越重洋来到这个陌生国度的一个愿望就是,我希望能亲手摸一摸太平洋这一岸的海水。在旧金山,第一次,触摸到了大洋彼岸之水,水很清,也很凉。有心的朋友,应该发现我把博客的背景音乐换了,从激昂的美国国歌换成了《掌声响起来》。其实我是心情的写照。“孤独站在这舞台,听到掌声响起来,我的心中有无限感慨。多少青春不在,多少情怀已更改,我还拥有你的爱。好像初次的舞台,听到第一声喝采,我的眼泪忍不住掉下来。经过多少失败,经过多少等待,告诉自己要忍耐。掌声响起来,我心更明白,你的爱将与我同在……”
这一部分,我想讲的一个问题就是:“美国卖给全世界最贵且卖得最好的一样商品是什么?”经过这段旅途,经过这一年的思考,我告诉你们,不是飞机,不是汽车,不是高科技,而是绿卡。绿卡呀,多少人蜷居在美国,为的就是这个东西。搞笑的,真正的绿卡不是绿色的,而是白色的,不知这是不是也应验了那个暗示,许诺给你一个绿色充满活力的未来结果却是一片空白。在国内听说过不少这样的故事,说某某来了美国之后读了几个硕士,然后读博士,一直在读,为什么?在国内的时候想不明白,来了你就知道了,为了一个合法居留的身份。通常说来,一般的学生拿的是F-1的签证,这是学生签证,访问学者是J-1,这两个签证是无法在校园外合法工作的。一般的签证是无法标示你能在美国合法居留的时间的,有一个文件叫1-20表,那上面会标示你能在美国的合法居留时间。比如硕士,一般来说,学业会在2年内完成,所以I-20通常会给你3年时间的合法居留,在学业完成后,给你1年时间实习。实习期间,需要办理一个叫做OPT的文件,是一个小卡片,全称叫做“有前提条件的见习工作许可”,OPT只给一年,且一年间不能离开美国,否则无法再入境。如果你对公司实在很重要,公司或许会考虑给你办工作签证,即H-1签证,H-1签证能在美国合法居留3年。然后就是绿卡,绿卡能在美国长期合法居留,但没有公民权,比如投票。最终就是加入美籍拿美国护照。但OPT以前都不是特别难,从H-1开始,就很不容易了。首先,有资格给你办H-1以上签证的公司,必须年盈利50万美金以上,另外还有其他诸多的要求。而绿卡办理时间,从2年到若干年不等,还要支付不少的律师费。这就涉及到一个衔接的问题。如果你的F-1到期了,或者OPT到期了,H-1和绿卡还遥遥无期,那怎么办?容易,随便找个学校申请一个博士项目,再拿一个F-1顶几年。所以,以后等你们听说某某某某在美国拿个几个学位的时候,不用太羡慕,很简单,这样的人很有可能是混不下去了只能在学校蹲着。
在洛杉矶,见到了一个朋友。这是真正的华人了,马来西亚华人。我们以前在同一家餐厅作服务生。她能说流利的普通话和粤语,来美国六年,在美国读的本科和硕士。毕业后,决定去从内部拉斯加到洛杉矶见见世面同时找生活。在洛杉矶找到一份推销厨具的工作,做了3个月后,决定辞工回马来西亚发展。有几个原因,一是因为2008年的绿卡名额(绿卡每年都有限额)在开始接受申请之后一天之内全部被干光,这意味着她明年OPT到期后,无法合法居留,反正都是要走那不如早走。二是工作得实在不愉快。通常,如果要申请绿卡,那么在申请期间你是无法换工作的,不管老板多么坑你,工资多低,你受多大委屈你都要挺着,因为一旦换工作,绿卡的申请工作就要推倒重来,这意味着你所有的时间精力和钱财全部浪费同时意味着一个新的几年申请流程。用绿卡来卡人成了在美国的公司(不管它是什么人开的,华人开的也一样)和美国的学校卡学生的一招独门绝技。不管你多牛B的人,一旦进入绿卡申请流程你就等着当几年孙子吧,还要你当得心服口服叫你干这你不敢干那打你骂你剥削你压迫你你连屁都不敢放一个。别看那些回到国内耀武扬威的假洋鬼子,他们当初都曾给他们的美国主子当过奴隶。
在绿卡这个问题上,学校也不是净土,或许是更黑的黑土地。要知道,博士生们的奖学金要比真正雇佣一个员工少多了,一个博士一年撑死也就给了两万五左右美金打住了,但要雇一个人一年至少需要6万以上的美金,还要给员工办保险之类的。所以博士生真是价格便宜量又足啊,导师们用起来得心应手。很多人来美国读博士,对国内的亲戚朋友说自己在美国有多牛B,拿奖学金还读博士。你们要真正来看到了他们的状态,或许你会得出这个结论,其实真的没什么好羡慕的。他们是在美国吗?在怎样的美国呢?一年到头窝在那个小小的实验室里守着机器,连自己住的城市都未必了解的人算是在美国吗?我认识的朋友们,尤其是学工科的,比如热能工程(其实就是空调),一天到晚跑工地,干到晚上10点11点是正常的事。周末也不能休息。一个女生,已经怀孕了导师(也就是老板啦)还逼着上工地,不然就停发奖学金。我操,这事要换了白人指定告他了。但我们是少数族裔,我们是国际学生,研究生院还有特别收拾我们的政策。作为国际学生,如果你的GPA(学分积)低于3.0(满分4分)的话,第一学期你会收到来自学校的留校察看的警告,第二次就会被开除,你的I-20直接作废你就可以滚蛋回国了。这一招很厉害吧,看起来是敦促你好好学习的良药,但到了导师手里就成了整治你让你好好干活的好招。昨晚和几个朋友一起做饭吃,一个学计算机的朋友说这个学期的成绩还在Pending中(意思是导师还没最终给成绩),导师让你赶紧把活干完,不然成绩会有麻烦。这是赤裸裸的,没什么温情可言。于是,有些人直到博士毕业,也没做过太多研究都花在干活上了也是不奇怪的。很多人毕业后,发现自己一缺乏合法身份二缺乏社会资源(海外华人的圈子其实很小,来来去去就那几个华人朋友,老外的圈子我们是进不去的),所以只能到导师的公司去接着干,为了工卡绿卡和生活。这才是产学研一条龙哪。在企业已经高度市场化的美国,学校就成了最后一个作坊,导师就是作坊主,学生就是学徒工,这是法律无法界定的灰色地带,也是无数华人心中痛苦的回忆。为了那个学位,为了生活,为了绿卡,乡音未改鬓毛吹啊。
回到洛杉矶上来,那位马来西亚的女生,六年后,当她要离开这个国家的时候,她怎么想呢?感情是复杂的,青春在这里度过,最好的年华在这里度过。读书,打工,看着朋友们一个一个离开,最终自己也要离开了。就像一个过客,终于到了散场走人的时候。不舍?当然的,美国怎么就不要我了呢?难过?一点点吧,毕竟那么多年了?但最能反映其心态的一个词是什么,她告诉我,是解脱。是的,解脱。终于,结束了。终于不用再担心成绩,担心身份,担心很多没必要却不得不担心的事情,终于结束了。那就,回去吧。挥挥手,再见了美国。曲终人散,青春离场。
   绿卡问题讨论了那么长一段,到了一个关键为题,即,为什么的问题。为什么这些人想要绿卡?我在俄勒冈州的波特兰(portland)的哥伦比亚河,第一次见到了传说中的宙斯盾战舰,我靠,说真的,那玩意,看上去挺猛的。灰亚亚的一大片。就像用类固醇和蛋白粉吹起来的美国肌肉大兵。对于来找生活的而言,美国是很好的地方。这里似乎永远不缺工作的机会,只要你肯干,餐馆,搬运工,开卡车,倒垃圾,种地,剪草,你似乎永远能找到活下去的办法。而且其报酬对于你的母国来说,是不少的。比如我去餐馆打工,全职打的话,一个月也会有两三千美金,对照国内,这个钱是不少的。所以,对于那些来找生活或者受教育程度不太高的人来说,美国还是不错的。但随着我们问题的步步推进,下一阶段的问题又变成了,为什么这样一些层次很低很苦的生活也会有这样不错的报酬?这就是我给你们提到宙斯盾战舰的原因所在了。美国之所以那么牛,除了高科技外,还有一支强大的军队在世界各地驻扎保证其略去全球资源,还有美金作为世界货币从世界市场上得到的铸币税保障其国内的优质生活。对于没学过经济学的同学,简单解释一下铸币税这个概念。举例,印制一张面额为100美金的纸币,成本或许为5美分,然后美国就拿这张100美金的纸币到其他国家,比如中国,购买了价值100美金的实实在在的商品,比如3台微波炉,其实这是美国用5美分的成本拿走了100美金实在的商品和服务。美国是把风险转嫁给了全世界才保证了其国内的疯狂消费。这个时候,或许会有人问问题了,那为什么我们不能多印人民币?因为我们的人民币只能主要在中国境内使用,它不是世界货币,印多了就会有通货膨胀了。讲到这里,我们讨论得已经比较深入了。终结那些美国人的骄傲感和优越感,总结这些华人为了绿卡辛苦的种种,总结这些偷渡或者黑在美国的人的辛劳却不愿离开,最终的最终,是因为在外面,有强大的美军在保护着在攻城掠地;在内,有作为世界货币的美金在保障着低价的相对于其母国要优越的美国式的生活。
前一段,党中央国务院决定上马大飞机项目,有人支持有人反对,反对者的理由是造价很高美国欧洲都在搞根据国际分工我们买就行没必要搞了。这样的人即便不是居心不良也是缺乏远见的。这不仅关系到一个庞大产业的兴起和国家安全的问题,同时也关系到20年后人民币是否能像美金一样坚挺的问题。假若届时我们的大型支柱产业比如飞机,汽车,机械,电子,化学等能达到世界一流的水平,那么在进行国际贸易时,就可以要求用人民并进行结算,从而扩大人民币在世界上的影响力,进而保障子孙后代的幸福生活。还有中国军队的现代化进程问题。伪和平主义者叫嚣着这是对世界和平的伤害,对这样的人我们除了严厉打击无能抱其它幻想。我靠,要说对世界和平的威胁,怎么说也轮不到我们第一个上审判台,有美国这个带头大哥在挺着呢,怎么不说美国研发尖端武器威胁了全世界人民的安全。我会在相册里面发布一个新文件夹,是我在南达科他州参观美军的一个退役的战略核武器基地时拍的照片,那是100万吨级射程8000公里的战略核武器啊,都退役了,可以想象现役的战略核武有多牛B。当年干掉日本人的原子弹也就不到5万吨,一下干光30万人,这是百万吨级,那是什么概念。在那个基地,讲解员说到Utimate Atomic bomb的时候,说到冷战时期,美国和苏联都曾研制过1500万吨级的核武,是否成功不知道,但可以肯定的是几百万吨级甚至上千万吨级的核武是有存在的可能的。像那种大家伙,双方各射一个就能把地球人都干光。相比之下,恐怖分子的AK47实在是太小儿科了。等你们看到我在那拍的照片,镰刀锤子的红旗被美军的核弹洞穿的时候,如果伪爱好和平的青年还在喋喋不休的话就直接把它们扔到太平洋中间去,看看它们的美国主子是否会派航母去救他们。

第三部分:
现在是8月28日的凌晨,我坐在电脑前,写下这篇文档的第一段。
今天是我新学期的第一天,对我而言,是一段告别,也是一段新的开始。24日晚,当我如约出现在徐珂的生日Party上时,我知道,这个暑假,就这样结束了,告别了这个三个月的行走,告别了那些一人孤身上路的日子。27日,星期一,重新走在这个阔别已久的校园,想起一年前,当我第一次走在这个校园时的忐忑,到今日的淡定从容,时间已经过去了整整一年。
万事皆有始有终。记得宋代的大儒张载曾写到:“为天地立心,为生民立命,为往圣继绝学,为万世开太平”。代代相继,成了中国知识分子求知从而干预社会生活的信念根源所在。每个人,再精确一段,每一个读书人,都有其追逐真理的曲折心路,不管曾怎样的狂傲或晦暗,待走到高处看到满城灯火,想必都会有相近的感慨。
这个夏天,我旅途的最后一段,是穿越了东部的十个州,主要目的,是造访大学,造访那些改变了美国历史的大学。
纽约市的纽约大学,错落在纽约市的中城。对这个学校,我没有太多的了解,但深夜,站在哈得逊河的对岸,从28层的高度看曼哈顿的灯火,会去揣度,这所大学的点滴,在这个发育成熟到极致的城市,这里的学生们,是否还能坚持学术的理想,抑或说,从未有过学术的理想?我不知道。在这个灾难瞬间来临时根本无法及时疏散的城市,人们自有自己努力拼搏及时享乐的哲学。只是,如无心灵的沉静,实难在那坚持下去。
纽约州,伊萨卡,三万人的小镇,康奈尔所在地。坦率的说,我实在是不太喜欢康奈尔所处的自然环境,尽管有山有湖,但不知怎的,我总是觉得有种莫名的阴气,一句话,那实在不是个很男人的地方。所以,出了李登辉这样的校友,想来也是不奇怪的了。
在马塞诸萨的剑桥镇,终于见到仰慕已久的麻省理工和哈佛。还是那句话,百闻不如一见,常春藤的领袖哈佛确有世界顶级牛校的风范。如果你硬要问,牛在哪,简单用一句话回答你:“哈佛的历史就是新大陆的文明史,哈佛成熟的历史就是美利坚民族成熟的历史”,这简简单单的一句话,就足够执牛耳。但连今天帐户上有290亿美金的哈佛,也是从只有12个学生一个教员的谦卑上路,走到今日的世界性声誉。中国大学的浮躁,想来解决还需时日,那些高喊着要在XX年之内创办成世界一流牛校的大学们,看来还需要下大力气去做些实实在在的工作。
在康涅狄格的纽黑文,来到了耶鲁。这所创立当初为了“将高等教育之光照耀每一个黑暗的角落”的牛校,选址在了黑人区。今日,校园里的主色调是由米黄色的花岗岩构成的,高耸的塔尖,尽管不能称为入云,但一路向上不断延伸的同时向中心收拢,是否预示了学术研究到了终极必将挤压人类思想,在自由的天空下用孤灯清影的时间和无欲求的血泪的代价换来人生的觉悟?今天,耶鲁越发的牛,但黑人兄弟们仍是穿着大背心大短裤在晃荡,我只能说,原来求知这种欲望,也可能不是人生的必然,不然实在无法解释为何在富有世界性声誉的研究机构面前,黑人兄弟们仍过着晃荡的生活而不是选择走入课堂去改变命运,抑或说这就是他们的命运。
宾夕法尼亚的卡内基梅隆,轻轻的我到了。当初卡内基和梅隆两大财团不知是否预见到了今天,它们公司的辉煌远不及它们所创办的学校的世界性声誉。今日的匹兹堡,钢铁产业已不再,尽管梅隆的大楼仍在下城灯光闪烁,但在不远处,比它高得多的学校大楼明确无误的表达出这已经不再是那个充满着煤灰和铁水的年代。
写到这想起老狼的歌《青春无悔》,开始的开始,是我们唱歌;最后的最后,是我们在走。一路的疲惫,由最后的15个小时不间断的奔驰画上完美的句号。当这个学期的第一堂课,老师问,请说说你最值得骄傲的一件事,我淡然的说,这个夏天四万公里的云和月,以及周围顿然想起的那些激烈的掌声和羡慕的眼神,我知道我自己真的做了一件很了不起的事情,我知道就是在这样的激烈青春中,我的人生升华到了一个新的境界。朦胧之中有点恍惚,隐约又看到当初一路路跌跌撞撞来到美国的那个自己,那个时候的忐忑和今日的从容形成鲜明对比。一上一下之间,很自然的划分出人生的高低。曾有人说过,不管怎样,人生都会是完整的。今日,我想说,这句话,也对也不对。在无穷尽的时间和空间中,我们或许,抑或说必然,都将会是井底之蛙,但井的口径,真的会有不同。如果人生到了最后,能看到的只是天空的一片,那么我也希望看到的会是大的那一片。因为就在那些晦明晃动的光影之间,能理解到时空的无穷和人生的有限,从之了解到人生的真正意义之所在。
这个夏天开始之间,我曾想过,这一段行走,会帮助我做决定,决定下一年,我将会在哪里,做着怎样的事情。经过这一路,我想我有了一些觉悟,就像站在哈佛1669的字样前的沉默不语,今天我也不打算接着写明年的段落,但至少我知道了,我已经准备好迈入一个新的纪元,不管它会有多苦,我能保证的只是一如既往地全力以赴。
回到我们开始曾有过的论述:“完事皆有始有终”。作为人类,我们有着一些不可磨灭的局限,认识到这些局限,并试图去超越它,本身就是学术研究的精神所在。话又说回来,如能一路秉承这种精神,又何必在乎身在何方是否会在校园。自由精神所存之处,就是天堂。哈佛徽标上的拉丁文“真理”和丹佛的美国空军学院墙上的“Bring me man”在我心中交相辉映,大脑和肌肉,一样都不能少。聪明的人,会努力的做到一样都不要少。
当22日告别伊萨卡,告别康奈尔,告别陈老师时,阴沉的天空和红色眼圈,心中百感交集,当日在北京的校园中,我心中那无法超越的师长在今日的分别时刻,表现出的普通人伤感的情怀,让我看到了自己的成长。“功成之日就是分别之时”,有时候,人生路走得曲折些也是乐趣,只要你能去体会。
昨日都将远去,明日仍是无知。把握好今日之时光,潜心求真知,淡然面对每一日的苦痛,并感到由衷的平静和快乐,就是意义所在吧。

烟斗有云:人生漫漫长路,何处才是尽头?追逐生命中的理想,莫非如同飞蛾扑火,刹那间外在的辉煌,心中的感慨与痛楚又能与谁言?

- 作者: 烟斗 2007年11月13日, 星期二 23:57  回复(0) |  引用(1) 加入博采

论人性
人性是什么?在查阅若干资料后,我选择一种接近我想法的观点,人性就是从根本上决定并解释着人类行为的那些固定不变的人类天性。
关于人性的善恶,主要存在以下四种说法: 1.人性善论:中国古代的人性学说发源于孔子,行成于孟荀。2.人性恶论:代表人物有中国古代荀子,西方哲学家奥古斯丁、霍布斯等。3.人性的无善无恶论:这种人性观点主要表现在告子和道家的思想中。4.人性有善有恶论:代表人物有春秋时代的董仲舒。西方哲学家毕达哥拉斯、培根等。
我个人认为,人性无所谓善恶,人性的善恶不过是思维活动的具体表现,其根源在于人做为动物的最高级,同样也会追求自身利益的最大化。现实世界普遍存在的动物虽然没有意识,但依然能靠其本性来实现自身利益最大化,动物世界里占地为王,弱肉强食不过是其一种体现罢了。人性之所以称为人性,不过是动物性上升到人类的高度而已,故而就有了这样的结论:人类行为具有共同倾向,其最终表现方式就是追求自我利益(福利)的最大化。
马克思主义虽承认人性的存在,但否认存在普遍抽象的人性:只有从人的社会性和阶级性出发,才能得出对人性的正确解释。我认为这依然不是问题的根源。从本质存在意义上看,人就是一种能动之物(此“物”以肉体组织作为表现形式);人与物的最本质区别就在于人的能动性(人与生俱来并为其所独有的那种具有明确目的的创造性精神)。由此决定了:人类固然要追求生存以实现其肉体组织的存在,但它同样要追求精神实现以实现其能动的存在。对于现实生活中存在的现实个人则无出其右,无非在生活实际中做出此二中选择而已。
看到一位同学举了给老人让座的例子,我有自己的看法。那位同学原意如下:当在公共汽车上遇到老人时认为人性是美好的那些人会主动把座位让给老人,而潜意识里认为人性本恶的人会认为这么做没什么意思,人不为己天诛地灭嘛。但我认为,无论是哪种人(认为人性美好或者人性本恶者)其实都是在追求自己利益最大化。对于人性美好者而言,让座是公众或者普遍道德观皆认为是美好的行为。与其本身,不过让其觉得心情愉快,为大众出了份薄力,属于精神层次利益最大化,亦就是追求精神实现。而人性本恶者而言,坐位的片刻休闲能让自己获得体力的恢复,其必认为此利益大于其精神层面上的收益,此即为物质层面的实现。所以,无论何种选择不过是追求个人利益最大化的直接表现而已。
从大而言,人类社会的历史是由无数个个人行为合力而组成。个人在社会的不同阶段尽其本能实现追求自我利益(含物质层面和精神层面)的最大化,而其结果就是促进了人类社会的极大发展。而个人在追求其自我利益时,与他人协诚合作,一方面满足了个人追求的层次,另一方面亦极大的促进了他人的利益最大化,形成利益优化配置。同时,个人在利益实现的同时,个人不可避免的需要他人的协从,从某种意义上实现了非自我福利最大化,从而从客观上促进了人类社会进步的效率。所以我认为非自我福利的最大化是自我福利最大化的附属产物。
综上所述,人性就是从根本上决定并解释着人类行为的那些固定不变的人类天性。本无所谓善恶,只是决定了做为人类的我们都有追求自我利益最大化的倾向。而我们探讨人性的目的在于:如何更好地解释、激发、引导、组织人类行为,如何更好地实现人类存在。

- 作者: 烟斗 2007年09月29日, 星期六 10:10  回复(0) |  引用(1) 加入博采

社会安排与民众追求
科学的国家和社会安排(决策、政策、制度)应该立足于大多数人在大多数时候追求。这一命题从理性分析角度来说,可以用来解释人类社会存在的部分现象与问题.另一方面,人类社会存在的众多关于现象与问题从一定意义来说皆来源于此。
乾隆朝是康乾盛世的顶峰,繁荣的表象下面是民众运动的潜流。乾隆朝社会动乱的爆发有其深刻地历史与现实原因。针对频发的社会动乱,清政府制定了种种对策予以镇压和平定。无论从当时的历史实际还是从现在研究角度来看,这些对策是起到了一定作用的。主要表现在乾隆时期社会动乱仅限于局部地区,多数被消弥在萌芽之中,或在极短时间内即被平定。值得注意的是,清朝统治在此后又延续了百余年之久(本段摘于<乾隆朝社会动乱及政府对策研究>作者:张佐良)。从国家与社会对于大多数人追求的肯定来说,康熙,雍正朝在对于民众追求方面有了相对正确与前瞻性的顺应与引导,譬如加强主流意识形态建设,打击以邪教为首的秘密社会,处理好民族宗教问题,这些都满足了普通民众对于国泰民安的理解,并从一定程度上稳定了社会存在,保持了生产力的相对发达,从而良好稳定的进入康乾盛世。从此种意义来说,国家政权在顺应大多数人在大多数时候追求的基础上满足自身对于权力统治的建设达到了对统治与被统治双方都达到了一个共赢的状态。
在当前社会中,一直以来,公众都对通胀,加息、人民币升值预期等语汇不甚了了,经济界的讨论也成了术语对术语之争,事实上,从宏观来看,这些问题与不过是社会安排与民生关系问题的一部分罢了。在当前社会发展相对稳定的情况下,国家机器是顺应民众(大多数人)的意愿的产物,国家与社会此时在立足于民众的合理的追求下,适当对社会安排的决策,政策,制度等进行微调,以期更大程度的满足民众的合理追求。
过去20多年的改革取得了巨大成绩,但在经济高速发展的同时,未能及时重视社会公平问题,其中的教训非常深刻。比如出现了高收入阶层与低收入阶层之间的分化,这固然有客观上难以完全避免的一面。但是,这个分化来得太快太深。更糟糕的是,这种新产生的阶层分化不仅未能取代或减弱原有的城乡差距,反而加大这个差距,于是形成所谓原有的等级分化与新产生的阶层分化相叠加的局面。这种急剧分化的利益引起了很大的社会矛盾,构成进一步改革的巨大制约。要妥善地消除这些分化、对立、矛盾和制约,需要我们构建完整而全面的社会政策(本段摘于<关注民生福利 重构增长方式>南方都市报)。而社会安排的立足点只能是社会民众的基本需求。
从另外一种角度来看,人民群众是社会进步与发展的源泉.做为现实生活中存在的行为主体,首先需要满足其自身的需要,这正是做为统治者的国家政权首先需要考虑到的.做为社会进步与发展的源泉的人民群众,在满足自身需要后充分发挥自己聪明才智,实现自身价值的最大化,从而为社会发展和国家强大做出自己的贡献。
综上所述,科学的国家和社会安排(决策、政策、制度)应该立足于大多数人在大多数时候(理性)追求。

- 作者: 烟斗 2007年09月16日, 星期日 15:16  回复(0) |  引用(1) 加入博采

作业

好久没写字,这次看来没办法逃过,就完成作业吧。(出题人,沫沫,http://100122194.qzone.qq.com
似乎我从来不喜欢别人定的规则,想想,还是擅自改下规则吧。就不给别人出难题了。


1.你认为分手后的男女朋友还能做普通朋友吗?
以前我不能,现在没问题喽。

2.你怎么知道自己喜欢一个人?
呵呵,脸红心跳贝。

3.你最希望从朋友(不包括爱人)那里得到的是什么?
尊重与理解。

4.最近最郁闷的事?
想打球的时候总是不能尽兴。

5.你最想去哪个地方?为什么?
开车去西藏,人生总有许多愿望要实现,这个是其中之一。

6.最受不了自己的哪个缺点?
想法太丰富。

7.推荐一家你认为好吃又实惠的美食店。  
五道口电影院内烤鱼店。

8.最近最快乐的事情是什么?
和志趣相投的朋友开车去青岛度假。

9.你记得父母的生日?
当然。

10. 遇到喜欢的人,你是勇敢表白还是默默关注?  
静下来听听心的声音,然后去表白。

11. 说出点你名的人的3个优点(不可删除题)
(沫沫)感情丰富,感性,待人和善。

12. 最想珍惜的人/事是什么?  
拥有的和曾经失去的。

13. 你最爱的那首歌的名字。
汪峰《生来孤独》

14. 你对你的近况满意吗?有什么需要改变?
基本满意,不过所有事情依然需要努力。

15. 爱人和被人爱,哪一种更幸福?  
爱人会更幸福,所有悲伤甜蜜可以自己一个人品尝。

16. 你现在最想拥有的什么?
积极向上的精神。

17. 最近最糗的事是啥?
刷信用卡居然被消磁。

18. 什么样的异性会比较容易吸引你?
健康运动开朗。

19. 对于一些自己不能认同的观念,有什么看法,或者说你的反应是什么
因人而异。

20. 如果给你一次机会,让你坐时光机,你会去什么地方?
回到童年。长大之后总觉得时间过的很快,转眼之间快到而立。

- 作者: 烟斗 2007年08月20日, 星期一 14:05  回复(4) |  引用(1) 加入博采

酒...

有段日子没写文章了...

最近日子过的有点忙碌,想想河北的项目都觉得有点头晕,不是因为工作,而是因为经常跟地方上官员一起吃饭,每次都醉熏熏的。第一次过去了三天,除了去项目部之外,就一直在宾馆的床上独自神游。

昨天大学同学结婚,没喝多少,就倒在桌上呼呼睡去...

是不是从现在也该控酒了呢?

- 作者: 烟斗 2007年05月28日, 星期一 12:15  回复(3) |  引用(1) 加入博采

《你是我短暂的天使》 文/紫一

曾经相信你就是我的唯一,忘记思考生命其他的路径。不知不觉,陷入爱的浓雾里,竟然发觉我的视线渐渐不清晰......

翻开记忆的相册,我们需要做的只是把悲伤沉淀,让快乐浮起。

忘记了谁说的:得不到的才是最好的。可是,我觉得拥有的才更值得珍惜。毕竟我们一起走过情感的四季;一起看那朝阳与落日;一起听那潮涨潮落;一起疯一起闹一起唱一起欢笑一起悲伤一起幸福着彼此的幸福。还有比这更值得珍惜值得回忆值得把握的吗?

能在茫茫人海中相遇,已经是前世五百次的回眸,那我们能彼此欣赏彼此相爱,又该是上辈子多少回的修炼?

假如有一段缘份放在我的面前,我会感谢上天的厚爱,抓住这个机会,促成这段缘分,珍惜每一段相识相知相恋的日子。曾经相信你就是我的唯一,忘记思考生命中其他的路径。有你的日子梦里都感觉甜蜜。你的笑容,你的执著,你的潇洒,你的爽朗,伴我度过花开花落的岁月,陪我同看云卷云舒的情怀。

有人说:不在乎天长地久,只希望曾经拥有。我想那是怎样的一种心境呢?是对爱情无可奈何的消极退让,还是对世事淡泊坦然的悠闲轻松?我不知道,但我会执著追求那些本来属于我的岁月。

人的一生很短暂,我们有很多追求,有很多理想,假若执著过,反思过,恳求过,却仍不回头,那么是否缘分已尽?相处过一段,从交叉路口渐渐走远,到最后竟然再也看不到你的背影。

想念你,泪儿飞。并非想把你离开的心意扭转回我的生命里。只因为曾经相爱过,是朋友,关心是自然的符号。外面的世界很吵很闹,没有了我的牵手和拥抱,请为我保重自己。

从恋人退回到朋友,仍能轻松自在的闲谈,那该需要多大的勇气。曾经说过要相守一生,可那只是一转身的瞬间,我们的誓言已经逐渐褪色,在一年一年的季风里淡化了,模糊了,然后我们又走到了熟悉的陌生人的位置。

退回到朋友的距离,虽然触手可及,只是心已淡然,我相信从相识到分离都有它的理由。

曾经听人说过:当你感到悲伤或孤单的时候,上天就会派一个天使来守护你。他或许是你的亲人,或许是你的朋友,或许是你的恋人。等你开心了,幸福了,便会离开。我想:也许你就是我生命中的那个天使吧,你教会了我爱,教会了我思考,教会了我怎样去追寻快乐。有了这些,我就不再感觉孤单。

天上有许多星星,我想哪一颗是你呢?是最大最亮的那颗吧。因为记得你曾经说过做什么就要做最好的。

离开的时候,你什么也没有留下,只是微笑着叮咛我一定要幸福,要快乐。

大雁飞过又飞来,花开又花落。光阴在手掌心里滑落,我怎么努力也挽回不了那些幸福或遗憾的碎片。也许该走的一定会走,留也留不住。何必为过去的记忆伤心流泪失望呢?一定要快乐,那是你留下的记忆路轨。我站在路轨的中央,仰望星空,突然觉得开心起来,原来你一直不离我左右。

虽然时光带走了你的躯壳,但幸福的绳索一直牢牢地套在我的手臂。

生命由碎片组成,随着日出日落,一点一点地消失,然后再也看不见,曾经因为如此而迷惶失措。现在突然回想,其实只需要轻轻地给生命中走过的那段岁月一个微笑,便不再有遗憾。

快乐点,幸福点,过好每一天!这是生命路径的最好诠释。

原文地址:http://q.163.com/rudy0627/blog/ziyihappy2005/113052200746102920489/#113052200746102920489

烟斗云:本想自己写篇文章,不料随意逛逛,看到了此篇的文章。我想转过来的原因如下:其一此文确实不错无论文笔与内涵。其二我希望我的朋友可以看到这篇文章,也许这是对曾经的爱情最好的阐释吧。确实,快乐点,幸福点,过好每一天!这是生命路径的最好诠释。

- 作者: 烟斗 2007年05月7日, 星期一 10:32  回复(6) |  引用(1) 加入博采

杂记

前几日去北京延庆县城溜达数天,感受奇特。

先是去康西草原,出乎我的意料,居然马比人多...待骑马溜达一个多小时之后,感觉大腿内侧甚为不爽,且未曾感觉到策马奔腾之爽意。放眼望去,只有寥寥数人,小草似乎还未睡醒,于是打消了吃烤羊腿,睡蒙古包的想法。

随后找了个面包车,去了康庄小镇。找了旅馆像是上个世纪五十年代的产物,门口还有“为人民服务”的字样。找了个屋子一看,里面居然还有霉味,电视小的还不如一本书大... 算了,凑合一夜吧。不想找饭馆吃饭时居然发现了康庄大道,很是现代,很是潮流...

第二天一早去了龙庆峡,找了个合适农家,标间50元,很是干净,还可以洗热水澡,跟前一天真是天壤之别。安顿好之后,故地重游,却发现再没有当时那种震撼的感觉。不过山风徐徐吹来,抬头仰望蓝天、白云,真有种就此悟道的感觉...期间,DA华发来短信,约着晚上打球,得知我正在山上十分诧异,惊呼千万不要被野人抓去。再往上走,看见道观,心想被野人抓去也未尝不好。

过了山尖,寻到以前那条小径,穿过松林再往前就是悬在崖边的那块大石。环顾四周却再没有大学时代的那种勇气爬上去。虽然进来之前买了保险。最后捡了几块石头作为纪念。

最近另有小事烦心,QQ可能被盗。众位卿家请联系我另个号码:71585877。小生在此谢过。

- 作者: 烟斗 2007年04月23日, 星期一 10:49  回复(1) |  引用(1) 加入博采