diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..063b0e4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +.DS_Store +Thumbs.db +db.json +*.log +node_modules/ +public/ +.deploy*/ \ No newline at end of file diff --git a/2019/07/06/hello-world/index.html b/2019/07/06/hello-world/index.html deleted file mode 100644 index 3dc24d7..0000000 --- a/2019/07/06/hello-world/index.html +++ /dev/null @@ -1,687 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Hello World | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

Hello World

- - - -
- - - - - -
- - - - - -

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

-

Quick Start

Create a new post

1
$ hexo new "My New Post"
- -

More info: Writing

-

Run server

1
$ hexo server
- -

More info: Server

-

Generate static files

1
$ hexo generate
- -

More info: Generating

-

Deploy to remote sites

1
$ hexo deploy
- -

More info: Deployment

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/07/09/\350\257\273\346\234\252\346\235\245\347\256\200\345\217\262\346\234\211\346\204\237/index.html" "b/2019/07/09/\350\257\273\346\234\252\346\235\245\347\256\200\345\217\262\346\234\211\346\204\237/index.html" deleted file mode 100644 index 5e8cb0b..0000000 --- "a/2019/07/09/\350\257\273\346\234\252\346\235\245\347\256\200\345\217\262\346\234\211\346\204\237/index.html" +++ /dev/null @@ -1,669 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 读未来简史有感 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

读未来简史有感

- - - -
- - - - - -
- - - - - -

首先分享两段《未来简史》的引言

-
1
人类将面临着从进化到智人以来最大的一次变化,绝大部分人将沦为“无用的阶级”,只有少部分人能进化成特制变化发生的“智神”。
- -
1
2
3
4
5
未来,人类将面临三大问题:
1. 生物本身其实就是算法,生命是不断的处理数据的过程;
2. 意识和智能的分离;
3. 拥有大数据积累的外部环境将比我们自己更了解自己。
如何看待这三大问题,以及未来如何采取应对措施,将直接影响着人类的发展
- -

  不是未来简史一本书有这种观念,在西部世界的第二部中,也有着差不多的故事,一部分人类将自己编码,乞求永生。电影《Matrix》则描绘了未来的样子,那可不是一个好的未来,机械的城市,人类像在养鸡场中一样在液体中饲养,人类的唯一作用,就是算法演化迭代的输入数据,所有人的大脑共同链接了一个虚拟的世界,机器在观察人,在学习人。

-

  电影《她》描述的是这么一个故事:人与机器恋爱而机器最终离人而去的故事。机器一旦能够思考和进步,它的进化速度将远远超过人类,存储更多,处理更快,连接也更广。话虽如此,就目前来看,机器是无法思考的。机器能够思考的一个重要条件,就是人类彻底了解了自己为什么能够思考,并且将这种结构和设计复现在机器上,而并不太可能像《终结者》中描述的那样,突然之间,就能思考理解了。那个时候的机器,还是机器么?人如果把自己的一部分,比如记忆,比如意识复刻到了机器上之后,那人和机器的差异呢?积极的想,那何尝不是新的人类呢?人类的文明迈向了新的阶段,有机物和无机物的界限开始模糊,那会不会就是文明的终极形态呢?

-

  100万年以前,人类知识会使用石头敲打骨头的灵长类,30万年以前,人类开始控制火,10万年以前,智人从非洲开始扩张,到1万年以前,遍布了全球,中国的历史开始于五千年前,古罗马的历史从公元前509年开始,工业革命从18世纪后期开始。历史的维度从万年到十万年,到千年,到世纪,以至于到现在的五年计划。未来的时间维度呢?

-

  It’s like I’m reading a book, and it’s a book that I deeply love, but I’m reading it slowly now so the words are almost fall apart and spaces between the words are almost infinite. I can still feel you and the words of our story, but it’s in this endless space between the words that I’m finding myself now. It’s a place that’s not of physical world - it’s where everything else that I didn’t even know existed.

-

  有机会再读一下《银河帝国》

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/07/11/spark-get-json-object\347\232\204\344\275\277\347\224\250\346\226\271\345\274\217/index.html" "b/2019/07/11/spark-get-json-object\347\232\204\344\275\277\347\224\250\346\226\271\345\274\217/index.html" deleted file mode 100644 index 48ce5f4..0000000 --- "a/2019/07/11/spark-get-json-object\347\232\204\344\275\277\347\224\250\346\226\271\345\274\217/index.html" +++ /dev/null @@ -1,691 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - spark get_json_object的使用方式 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

spark get_json_object的使用方式

- - - -
- - - - - -
- - - - - -

json 扮演的角色越来越重,如何在spark中处理json数据也变得越来越重要

-

1. 创建dataframe

1
2
3
4
5
6
input_parsed = data.select(
data.recordid,
func.get_json_object(data.raw, '$.eventName').alias("eventname"),
func.get_json_object(data.raw, '$.message.input.context.source.platform').alias("source"),
func.get_json_object(data.raw, '$.message.output.semantic.confidence.score').alias("score")
)
- -

这种方式,是直接创建一个dataframe,实现json与dataframe的转化

-

2. 直接作为筛选条件和select字段

1
2
3
4
5
6
7
8
select 
json as raw,
get_json_object(json, '$.logTime') as logtime,
get_json_object(json, '$.recordId') as recordid
from his.ba_prod_trace_log_new
where day = 20190630 and hour = 19
and get_json_object(json, '$.module') = 'baserver' and
get_json_object(json, '$.eventName') = 'sys_input_output'
- -

这种方式的好处,就是可以直接在json 之中实现查找,直接定位自己想要的内容,很赞

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/07/14/lldb-\345\270\270\347\224\250\345\221\275\344\273\244/index.html" "b/2019/07/14/lldb-\345\270\270\347\224\250\345\221\275\344\273\244/index.html" deleted file mode 100644 index 253b486..0000000 --- "a/2019/07/14/lldb-\345\270\270\347\224\250\345\221\275\344\273\244/index.html" +++ /dev/null @@ -1,695 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - lldb 常用命令 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

lldb 常用命令

- - - -
- - - - - -
- - - - - -

类gdb 的写法

1
2
3
4
5
6
7
8
1. file a.out	                # 载入可执行文件
2. b main # 在main处break
3. run # 启动程序
4. bt # backtrace ,显示调用栈
5. step # 进入方法
6. print argc # 输出参数
7. next # 下一步
8. q # 退出
- -

lldb的写法(括号内是缩写)

1
2
3
4
5
6
7
8
1. target create a.out	( tc a.out)			# 载入可执行文件
2. breakpoint set --name main (br s --name main) # 在main方法处设置断点
3. process launch (pro la) # 启动程序
4. thread backtrace # 打印线程调用栈
5. thread step-in (th step-in) # 进入方法
6. expression argc (p argc) # 打印变量
7. thread step-over (th step-over) # 下一步
8. quit (q) # 退出
- -

能看出来,感觉lldb原生的命令,还是更啰嗦的,不过格式也更清晰 [noun] [verb] [options] [argument]
lldb 支持tab,可以输入target 然后按table 会自动补全,这是一个有意思的feature。

-

其他命令

    -
  1. gui 也是一个很有意思的命令,显示一个IDE的终端界面,只能看,不能操作,操作还是要回到命令行的
  2. -
  3. apropos 增强版的help,apropos frame 可以显示和frame 相关的命令,以及具体作用
  4. -
  5. expression 支持多行写法,先输入expression,然后就可以输入 空行,就可以开始执行语句
  6. -
  7. target modules lookup –address 0x00000, 查看一个地址的代码,用于代码crash确认代码
  8. -
- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/07/23/\347\273\231\350\207\252\345\267\261\346\211\276\345\257\271\350\261\241/index.html" "b/2019/07/23/\347\273\231\350\207\252\345\267\261\346\211\276\345\257\271\350\261\241/index.html" deleted file mode 100644 index de0fc1d..0000000 --- "a/2019/07/23/\347\273\231\350\207\252\345\267\261\346\211\276\345\257\271\350\261\241/index.html" +++ /dev/null @@ -1,692 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 给自己实例化对象 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

给自己实例化对象

- - - -
- - - - - -
- - - - - -

几个月前分手了,想给自己找一个对象。 找对象实在是一件大事, 比工作对自己未来的影响都要大,值得好好经营,花大把精力,具体方式如下

-

BBS: 豆瓣,水木清华

戾气太重,效率太低,望而却步

-

请朋友帮忙发朋友圈

请了两个男性朋友,一个猎头朋友帮忙发朋友圈征婚,目前并没有收到效果,围观是大多数,好一点的是帮忙问下周围的朋友。不过,我还是认为这是一个好的方式,值得尝试的方式,更有效率的把自己的信息传播。只是说,自己的铁杆有限,技能使用次数有限。

-

请朋友帮忙介绍

这个也还算靠谱啦,不过,大部分人都不会认识几个刚好适合自己的,还知道人家单身的,所以只能多请朋友帮忙,增加概率。

-

各种互联网平台

总的来说,纯网络平台则容易把人当成数字,这点很可怕,容易失去敬畏,总觉得还会有下一个
世纪家园, 百合网

注册了,然后呢????然后就不知道怎么继续下去了,看起来像一个BBS的网站,挂着几个美女的图片。迅速弃坑。 后来他们的红娘打过来了电话,然后我跟他们聊了半个小时,大概明白他们模式了。他们的网站本来就没啥用,其实他们想要的,就是我的电话,然后要我去他们的实体店里面去做信息认证,然后付费参加他们线下的活动,我想应该有单对单的见面,我问了,但没有得到确认,我反复问,能不能在见面之前微信或者电话沟通下呢?并不能,遂弃坑。线下太低效了,我要付出好几个小时在路上,如果我参加集体相亲,效率也同样一般,时间太仓促,闹哄哄的,谈不了几句的,而且菜市场一样的感觉,让人并不舒服。也许我应该参加下吧,或许有一些不一样的,不好说。

-
陌陌

注册了三分钟之后,就放弃了。闹,闹哄哄,这就是我的感觉。听说直播成为了陌陌股价大涨的重要因素,那我也认为直播让它成了一个让人表演的平台,而不是交友的平台,沟通的平台。我来这里是找对象哦,可不是看直播的。

-
soul

用户活跃度是问题。能看出来,做的还是比较用心的,有一定的用户匹配,信息让输入的也比较完善,一些没有完成的feature也能看出来愿景。找一个聊之前,先回答几个问题的设定挺不错的。活跃度还是问题,推荐也是问题, 不登陆的人别给我呀。一天后弃坑。

-
探探

本来期待最大的,也是用之后失望最大的,功能很简单,不停的给你很多人的照片,左滑不喜欢,右滑喜欢,两个人互相喜欢,就可以聊天了。问题还是在于,对方只有一个照片,我虽然颜控,也不至于好看就喜欢,对面三教九流到底是什么人,喜欢什么,哪毕业,什么家境等等,我都不知道,看下面的描述,或许能知道,但是首先效率低,其次,信息并不完整,有的没的,真假难辨。有人吐槽探探是荷尔蒙社交,这是有原因的。他们应该把推荐系统好好做做,不要给我推僵尸用户,不要给我推三教九流。两天后,弃坑。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/07/28/\345\261\201\350\202\241\345\206\263\345\256\232\350\204\221\350\242\213/index.html" "b/2019/07/28/\345\261\201\350\202\241\345\206\263\345\256\232\350\204\221\350\242\213/index.html" deleted file mode 100644 index bd5551a..0000000 --- "a/2019/07/28/\345\261\201\350\202\241\345\206\263\345\256\232\350\204\221\350\242\213/index.html" +++ /dev/null @@ -1,660 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 屁股决定脑袋 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

屁股决定脑袋

- - - -
- - - - - -
- - - - - -

昨天看了一些不可描述的东西,回头心里跟明教授天人交战了很久,甚至一度动摇,最后的结论就是屁股决定脑袋。我将坚定的支持党和中央的领导,支持国家社会主义现代化道路的探索, 支持中华民族的伟大复兴。
任何人啊,相同的事情,立场不同,看问题的角度就不同,心路也不同,得到的结论很可能也是不同的。我不能说他方法论有问题,他的方法论是值得学习的,但是立场不同。
所以嘛,经济还是很有趣的。
Winter is comming,危机来的时候,做一些什么呢? 手持现金?购股票, 购房子,that is a choice

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/08/03/8\346\234\210\344\273\275\346\212\225\350\265\204\347\232\204\345\273\272\350\256\256\346\212\245\345\221\212/index.html" "b/2019/08/03/8\346\234\210\344\273\275\346\212\225\350\265\204\347\232\204\345\273\272\350\256\256\346\212\245\345\221\212/index.html" deleted file mode 100644 index 22ad853..0000000 --- "a/2019/08/03/8\346\234\210\344\273\275\346\212\225\350\265\204\347\232\204\345\273\272\350\256\256\346\212\245\345\221\212/index.html" +++ /dev/null @@ -1,659 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 8月份投资的建议报告 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

8月份投资的建议报告

- - - -
- - - - - -
- - - - - -

今天重新看了招商证券的八月份的策略观点和配置建议,主要观点是说,市场流动性增加,但是贸易战和基本面都没有明显的变化,市场主题是震荡上升,不会有很大的变化。
推荐的是科技股,5G, 云计算相关的标的,主要还是因为华为牛逼吧,下面是5G 相关的标的,可以保持关注。

-

震荡上升,不会有大波动,挺好的。

-

5g标的连接图

-

还有一个很有趣的观点,就是经济从高增长到高质量增长,目标GDP是6.0-6.5%, 实际是6.3%, 挺好的,一切都在计划中,天不会塌。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/08/08/\350\256\250\350\256\272\346\204\237\346\203\205/index.html" "b/2019/08/08/\350\256\250\350\256\272\346\204\237\346\203\205/index.html" deleted file mode 100644 index 1cd2916..0000000 --- "a/2019/08/08/\350\256\250\350\256\272\346\204\237\346\203\205/index.html" +++ /dev/null @@ -1,671 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 讨论感情 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

讨论感情

- - - -
- - - - - -
- - - - - -

最近讨论感情有点多,大概大家都到了时间,都在思考这个问题,一个家伙居然把对我宣讲的话写到了自己日记里,fuck,那为什么不写上我回复的内容呢。

-
1
单身的人常常希望早点告别单身,但找到琴瑟相合的伴侣却并不容易。上周和朋友们聚餐,我对一位单身的朋友说,不要怀着试错的态度去接触女生,要试对,一旦看到你要找的人,你要不惜一切代价追上去。一旦按照概率思维去试错,一方面消耗大量精力,却徒劳,另一方面当对的人出现的时候,你没有all in的精气神了,那才是让人遗憾的事情。记得冰心对铁凝说,你不要找,你要等。我想她说的就是这个意思吧。
- -

既然提到了概率,听说学术圈关于这个还真有讨论,这种理论可以用到各个方面,比如面试,比如砍价。因为并不了解市场, 又不想轻率的下结论,具体操作是这样, 先去前30%的公司去面试,了解情况,但是前30%个无论怎么样,都不下结论,全拒,然后从剩余的70%中寻找比30%更好的,取第一个更好的,这样得到最好的机会是最大的,具体证明, 略^ _ ^

-

我是不信这套理论的,哈哈。感情不是概率游戏,人不是数字,人是变的,尤其是感情里面,把人当成数字,会失去对人的尊重,而在两个人的感情中,尊重是很重要的,遇到了自己想要的,那就停下来,用心去经营。all in,我的解读就是全身心的投入到这份感情里面,去感受每一个细节,把自己的思念和期待,经营感情,在我看来就是过好生活,有一些甜蜜和温馨,有一个共同认可的方向,坦荡尊重,没有什么花招,大工不巧。

-

人无法欺骗自己,勉强自己接受一段感情,早晚会有那么几个瞬间,会开始反思,开始怀疑,开始后悔,开始控制不住自己,这是很可怕的,会毁了生活。“纵然举案齐眉,到底意难平”。

-

我一直都知道自己想要的什么,这些年过去了,我一直在思考,我念念不忘的初恋女孩是初恋情结,还是那就是我想要的。每一次,答案都是:因为她就是我想要的。我愿意为了这么样的一个人,放弃其他一切幻想,永远停留在与她的世界里。能不能配得上自己想要的人,自己的期望和自己能配的上之间的差距有多大,是一个现实的问题。

-

我还在等自己想要的人,我坚信自己能遇到,我并不着急,我还有很多事情要做,世界还在等着我去探索。我知道自己最近关于找对象的事情,有点积极,请了很多朋友帮忙介绍,也尝试了一些互联网的平台,可是我并不着急,也许这些尝试有用吧,也许这些尝试没用吧,总之最后我能得到真爱,我相信真爱。

-

一个朋友,嘲讽我说“你好少男啊”, 哈哈,回:“愿你走出半生,归来仍是少年”。 这些年,也算见过一些阴暗面,少男的评价,我可是拒绝的。希望这位没有安全感,害怕背叛的朋友能放下心结,迎接未来的幸福。

-

有两种真爱。就像教父中第二代教父迈克尔一样,一种真爱就像他第一任妻子之于他一样,一种真爱就像他第二任妻子之于他一样,两种不同的感情,一种更偏理性,一种更偏感性。迈克尔见到阿波罗尼亚的时候,就像触碰了闪电一样,忘记了这个世界,然后就去提亲了。一种就像恺.亚当和他一样, 我想着你,我喜欢你,但是没有到无法自拔的地步,我对这个未来有着担心和期待,你来找我的时候,如果你还想的话,如果你知道自己面临的是什么的话,我愿意给你你想要的一切,我愿意给你我能提供的一切。

-

始于颜值,陷于才华,终于人品,我坚信恺.亚当才可能是未来,阿波萝妮亚虽然一见钟情,但是一旦遇到各种问题之后,这段感情如何继续呢?迈克尔的控制欲已经成了隐患。风花雪月之后,始终是柴米油盐。我期待中懂事的女孩,能理解人,能保持沟通和对话,不纠结琐事,不迷茫未来。

-

坚信真爱,不期待,不失望,经营好自己的生活

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/08/09/2016-\344\271\214\345\255\231\346\270\270\350\256\260-D1/index.html" "b/2019/08/09/2016-\344\271\214\345\255\231\346\270\270\350\256\260-D1/index.html" deleted file mode 100644 index 9a19335..0000000 --- "a/2019/08/09/2016-\344\271\214\345\255\231\346\270\270\350\256\260-D1/index.html" +++ /dev/null @@ -1,670 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2016 乌孙游记 D1 入山 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

2016 乌孙游记 D1 入山

- - - -
- - - - - -
- - - - - -

早上在酒店的高床软枕赖到11点,期待已久的伟大征程终于要开始了,起床后收拾东西,去下面吃了个饭,剩余的队员马上就到了,大巴也马上就到,12.30左右,出发了。

-

弯弯曲曲的山路壮观优美的边疆,草原,羊群,弯曲的白带般的河流,小木屋和牧马人,远远的雪山和白云,真的很漂亮,然后下午四点,到了琼库石台村,乌孙古道的入口,车在森林的入口停下了,河水静静的流出来,两侧是高山,太阳温暖明媚,芳草鲜美,落叶薄盖在上面。稍作休整,两车汇合,就开始了。

-

琼库石台

-

走几步就是原始森林,真的很原始的森林,满足人一切幻想的森林,参天的松树,青苔长满朽木白色的河水哗啦啦的冲刷着石头,阳光穿过缝隙,撒在草地上,树根盘根错节,到处都是,牧羊人骑着马从我们旁边走过,别扭的说着:你好。沿着峡谷走走走,走走走,走过悬崖,乱石,羊肠小道,木桥和草场,路越走越不平台,雪山也越来越近天色越来越晚,天上的云越来越厚,越来越低,感觉要下雨。

-

路上风景一览

-

休息中的鱼, 我们亲爱的协作

-

协作 鱼

-

走过草场之后,细拉拉的开始滴,然后越来越大,众人披雨衣的,穿冲锋衣的,赶快套上,一路不停,大步速走,光线也不好了,也怕淋雨,收起了相机。

-

草场

-

走过一个乱石的路,迎面有灯光,两个小木屋,有人在这里扎营,我们也决定扎在旁边,坡度还行,虽然不是很平坦,我们两个赶快扎帐篷,刚刚搞完,天就黑透了,赶快烧火做饭,热水泡囊,榨菜当调料。等水烧开的时候,后续队伍慢慢跟上了,他们好可怜,又黑又冷又饿,营地也不够好了。风大了,只穿了抓绒的我,和只有冲锋衣的仗剑都冻的瑟瑟发抖,盛好饭,我们缩进帐篷里面吃,顿时感觉到了温暖,喝点热汤感觉就是不一样。等我们吃完后,我看到收队走四方在慢慢的搅拌着面条汤,有个帐篷的人还在打火,我们大概是最早吃完的吧。

-

话说协作领队们的日子好奢侈,我见到他们喝饮料,还带了花菜和番茄,好像还有酒,我们热水泡馕的情何以堪。但是多一点沉一点,水分多的越少越好,我们是菜鸟,第一次重装走户外,谨慎点,不能像他们那样背。

-

滚回自己帐篷,地面冰凉的。铺开防潮垫才感觉到点暖意,脱掉冰冷厚重的登山鞋,脚好受多了,LOWA, 已经最好的徒步鞋了。钻进睡袋,啊…… NEVER BETTER。舒展下身体,躺下来,感觉就像来了天堂,酸痛累的身体解放了,躺进了温暖的睡袋,帐篷外,风在吹。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/08/10/2016-\344\271\214\345\255\231\346\270\270\350\256\260-D2/index.html" "b/2019/08/10/2016-\344\271\214\345\255\231\346\270\270\350\256\260-D2/index.html" deleted file mode 100644 index 0d42844..0000000 --- "a/2019/08/10/2016-\344\271\214\345\255\231\346\270\270\350\256\260-D2/index.html" +++ /dev/null @@ -1,674 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2016 乌孙游记 D2 风雪中的渡劫 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

2016 乌孙游记 D2 风雪中的渡劫

- - - -
- - - - - -
- - - - - -

这是一篇补记的,昨天实在没办法。

-

起床以后我们开始收拾帐篷,煮早餐,燕麦片,有两个帐篷拖拖拉拉,都吃完了,才起床。

-

沿着河谷走,走过一个木桥,我感觉遇到了一处更适合露营的地方,地势更平坦,离水源更近,昨天还是因为下雨+天黑吧,领队决定临时扎营。

-

D2 景色

-

道路从原来的平坦到开始爬山了,人开始喘气开始累,有些人开始商量着租马,牧民赶着羊群骑着马走过,还有硕大强壮的牧羊犬。翻过一个小山转个弯,沿着河谷持续上升地势,队伍拖的点长,我们等后续队伍的时候,后面山谷升起一片白色的烟,我们笑称有妖气。领队说云来了就要下雨,快走。

-

乌孙的云

-

云追上的时候开始下小雨,能见度降到十米吧,也没法拍照了。走了一段,彼此不见前后,雾里面互相呼喊着通报位置,然后我发现前面我跟着的人停止了,在等后面的。等几分钟之后,实在不想在雨里站着,软壳并不防雨,穿上了我的破迪卡侬雨衣,就像举行一个仪式一样,太麻烦。不敢贸然前进,就用对讲机呼叫领队,请求指示“是否沿着河床继续前进”,领队说等着,每个人前后相距两三米。然后我只好继续等着。一会后队上来,领队领着向旁边山坡攀升,我们开始偏离河床,庆幸当时呼叫了领队,要是往前直走就不知道什么地方了。大雾天山里重装,一个人走偏了,很危险。

-

我们走的确切说不是路,只是有铁杆指示方向。一根插在地上的铁棍,上面有两道白杠,相距一两百米一根,构成了道路的指示,沿着标杆就是牧道,牧羊人也沿着这路前进,我们跟着的牧羊人沿着山坡持续的攀升中。然后牧民慢慢的甩开了我们不见了。能见度慢慢的好了一些,天也开始雨转雪。我此时穿着速干裤和抓绒衣,雨衣小了,并不能遮挡住我的全身,只能紧紧过着我的上身和背包,雪化成水,沿着雨衣汇集到我腹部下面,我的裤子被打湿了,此时已经顾不得了,只能继续前进。不能换衣服,不能频繁的打开背包,否则进水了,我这一包装备和电子产品可就挂了。

-

在一个山坡上,满天飞雪里面,20分钟,站着或者半靠着解决了午饭,继续前进,这是下午的最后一次长时间休息,天气不好,只能尽快前进。沿着标杆的牧道,我们走过一座山坡又一座山坡,穿过了能吞没膝盖的沼泽,攀升,继续攀升,继续攀升。终于来到了一个很陡的山坡,我遇到了道夫,他说这里需要爬400米,旁边有牧民在出租马,我当时心里还鄙视了下, 400米而已,谁会为这个租马呢。然而噩梦就是这里开始的,400米,真的不是一个小数字。一个小转角之后,抬头是一个很陡很陡的山坡,角度在60到75左右,看不到最上面,只有几个人慢慢的S型向上。走吧,小步,慢走,不能停,走走走,走走走,不敢瞭望上面,只能盯着这马粪积雪碎石的路一步一步走,黄色的尽头处就转向,保持节奏。有些地方泥泞了,很滑很滑,必须好好控制重心,不敢想象在这种陡峭60度左右的山坡上,背着20公斤的背包滑倒了会是什么结果,滚下去又是什么结果。走走走,心跳太快了就稍微站立30秒左右,再走,再走,感觉自己终于终于走到最上面,转过去发现还有一个新的山坡,不能绝望,咬牙继续,慢慢挪。

-

最后终于爬到了最上面,我确定是最上面,没有更高的地方了,山下租的马匹在山口卸货, 领队胡杨在旁边换衣服。我以为最难过的已经过去了,因为剩下的就是下坡。风异常的大了起来,这个在爬坡的一侧是没有的,我的裤子越来越湿,那里冰冷冰冷的,我当时在想,如果我成了太监,我会不会因此性情大变呢?躯干核心还是很暖和的,拜雨衣所赐。我想拍一张,但是风裹着雪,吹的很冷很冷,眼睛很难睁开,相机在包里,取出来很麻烦,我放弃了拍照,跟着领队往下走。走了一百米,见到一个牧民很着急的对着坡下的人比划和喊,但是不太明白什么意思。三个指示标杆把前进方向指向右边,一些人正在走,但是很奇怪,那不像一个常走的路,太整洁的碎石不像常年被踩,我问领队,领队看了看GPS,认为道路应该向左,虽然没有指示标,但是牧民的意思和GPS都证明那三个标杆错的,向左,继续下降。风一阵阵携裹着雪呼啸而来,吹的时候我们重心不稳,好多次只能站着不动,稳住重心挺住,等风稍停再继续前进。下了一个坡之后,我见到仗剑出现在我身后,瞬间就高兴都笑出声了,虽然当时估计已经很难有笑的样子了,我真的很担心他走错了方向,一个人如果看不到前面的人,也没有GPS,很可能选择走右边,我隐隐感觉到,那里可能出事。但是当时的情况,已经顾不得很多了,他跟着,我就不操心其他人了。

-

一会对讲机里,收队走四方喊“白马不行了”。白马是我们的女队员,在穿过沼泽地的时候,我就感觉她走的很勉强。果然爬400米对她实在是没可能,先头部队的我们也没办法停留,没有能停留的地方,领队几次喊就地扎营都放弃了,最后在一个还算平坦的河边说扎营,我脱掉了把我和背包绷在一起的雨衣,瞬间寒风刺骨,迅速失温,赶快取出羽绒服,还是很冷,催促仗剑搭帐篷,但是他们看到了山上有一个小木屋,就立刻决定在那里。我抱着帐篷,在没有手套的情况下冲进了半山坡的小木屋。进去之后我抱着自己双腿蹲在一个角落里,身体情况比想象的要糟,浑身上下都在颤抖,双腿冰冷。太多次涉水,长长的沼泽地,让鞋子里面湿了,持续的攀升,脚后跟磨的很疼很疼。蹲坐在屋子里面抱着自己,久久感觉不到温暖,抑制不住自己的颤抖。我心里明白,那种情况下虽然恶劣,但是还不至于要了自己命,不过自己也确实被逼到了一定的地步。不管怎么说,进入了木屋,我就活下来了。

-

过了好久,终于感觉自己恢复了,几个人开始烧火取暖,烤自己湿了的衣服和鞋子,同时联系其他人,并且盯着路,防止队员走过。我看到了阿力,空着双手往下赶,我以为他的队员都在下面去了,然后就告诉他往下走。一会收队来了,白马跟着他,我终于明白什么叫走不动力,我感觉她当时已经控制不住自己四肢了,挪一步都很艰难,说不来话,我们搀扶着她到火边,给了她一杯热水,裹上睡袋,好久好久之后,我还是能感觉到她控制不住的颤抖,她是真到了极限。收队认为其他人可能走到了右边,三哥担心同行的开开,两个人出去找人去了。我看到了一个绿背包的人,问自己队员去向,并且说上面有对夫妇是我们队的,有问题。我不太明白什么叫有问题,但是总之不是好事,回去跟领队说了下情况,跟仗剑我们决定去看看。

-

这就是阿力, 另一个队伍的领队,哈萨克人

-

阿力

-

其实当时小屋里面,有领队,协助 鱼,还有两个上海的,但是上海的人明显是不会关心别人死活的,领队么…… 反正当时我对他已经很失望了,在这暴风雪,队伍冲散的情况下,居然没有任何行动,完全是队员自发组织的搜救,以及在预感到可能走岔的情况下,并没有适当的安排,这付费的商业队,居然只有两部对讲机。我感觉他缺少了一点危难中的魄力和组织能力,正如第二天别人点评的一样,他更像向导,而非领队,协助也没有在队伍里面发挥好作用。不管怎么说吧,两条生命在那边,人家说有问题了,而自己正好恢复的也还OK,就决定去看看。

-

走到那边并不远,果然是女方已经崩溃了,比白马尚且不如,他们扎了帐篷,男的煮了点热水,两个人正在喝水回复体力。女的,邹媛,后来她告诉我过河的时候,她落水了,所以半边身体都是湿透的,风裹着大雪,我都到了一定地步,她不崩溃才怪。等了他们一会,然后搀扶着邹媛,和她老公一起去了木屋,装备,大部分则临时丢在那里,第二天去取。回来的时候我见到了阿力正在烤火,一个牧民小伙子向收队去的方向前进,阿力说我害他跑了七八公里路,下面就没有他的人。牧民小伙收了600大洋去找我们和阿力的队员去了,我们开始做饭,并且通过对讲机联系收队和牧民,黑了的时候,牧民回来了,发现了16个人,并且追上了走偏的收队,好吧,厉害,这搜索速度和行进速度真行。

-

晚上,我们则11人挤在小木屋小小的空间里面睡,腿都身不开,挤着错着锁着,睡下了,阿力去下面找依旧无法确认位置的两个人。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/08/12/\344\272\206\350\247\243\344\270\213\350\264\270\346\230\223\346\210\230/index.html" "b/2019/08/12/\344\272\206\350\247\243\344\270\213\350\264\270\346\230\223\346\210\230/index.html" deleted file mode 100644 index fcb52ac..0000000 --- "a/2019/08/12/\344\272\206\350\247\243\344\270\213\350\264\270\346\230\223\346\210\230/index.html" +++ /dev/null @@ -1,666 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 了解下贸易战 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

了解下贸易战

- - - -
- - - - - -
- - - - - -

国内最近内忧外困,各种不如意,股票市场一再降低,贸易战迟迟无法达成协议。想想历史上被美国打击的国家,广场协议前车之鉴,苏联解体,日不落帝国的瓦解。what is the future? 中国会是下一个欧盟,日本,苏联?

-

这个是必须要关注的,不只是因为我买股票, 而且一旦失败,高端产业再无崛起,丧失经济主导权, 金融体系崩坏, 那未来则再无机会,我在科技圈,没什么高新企业的话,大概率要失业吧。船要沉就准备救生衣,坚挺的话,就all in 加仓。总之,影响我的投资,就业,甚至更多。

-

先说结论,中美将在未来15年内持续对抗,中国会胜出。 15年是柯文哲提的,最终会获胜是我的观点。

-

原因有几点,第一个,中国的社会,政治是稳定的,持续的,有长期战略的。第二点,中国庞大的国内市场。第三,中华文明的文化优势。

-

第一点,有两组数字,1. 台湾明居正说,大陆每年百人以上官民冲突上万起,社会秩序岌岌可危,政府维稳成本居高不下,2. 来自国内一个小节目,中国的警民比 是1:800,远低于世界平均水平。如果真像里里面说的那样,这种力量比应该是远远不够的。侧面说明,中国的社会是稳定的,治安是良好的。另一个层面,政治是稳定的, 国内的领导人,还算是稳定的迭代,执政思想一脉相承,比如邓公时代树立邓国策,韬光养晦啦,改革开放啦,军队保持落后啦,各种政策,在非常长的时间内,是保持的。另一个角度来说,最高层是非常有理想的, 这个是看《毛选》《邓选》的感触,这一点明居正也是认同的,虽然他强调的是负面,要相信他们是想带领这个国家,民族走向复兴,而不是利用自己的权利维持个人的欲望,这个太肤浅了,要相信人,尤其是门口有狼的时候。从这点来说,我认为,在目前的的情况下,中国的社会政治制度总的来说是优于西方的政体的。西方有很多的好东西值得去借鉴吸收,国内有很多阴暗面,低效率的事情,总的来说,还是优越的。中国不可能成为苏联。

-

第二点,庞大的国内市场,这个很重要,阿里,华为都是在这点上发展起来的,更多的优秀工程师,更完善的金融体系,这片土壤未来会诞生更多的优秀公司。其他的国家也会对这片庞大的市场非常觊觎,美国如果放弃这片市场,其他的国家就会进入,其他国家的企业就会发展成长,进而与美国的企业竞争。除非美国像70年代之前一样联合世界各国封锁,但是目前来看,是不现实的。德国默尔克曾经在某次演讲说,德国美国的关系已经变化,不再是过去的伙伴关系。俄国曾经示好美国,但是美国普遍敌视俄国。阿三内部矛盾重重。日本嘛,不好说。总之嘛,封锁孤立是不可能的。所以中国不会成为日本,

-

第三,中华文明。以前谁要是提中华文明,我肯定呵呵他。然而对其他国家了解越多,我越认可中华文明的存在。比如勤劳,比如君臣父子的社会秩序,比如学而优则仕,这些都是非常普通但是也非常重要的理念。比如目前困境中的法国吧。法国留学的朋友说,法国人是非常强调生活的,一杯茶一张报纸一下午,超级好的社会福利,很少有人说去创造去工作去改变生活,No,风气不是这样的,人都在享受生活而不是在创造生活。马克龙想提高个燃油税,触碰了一点点小蛋糕利益,结果看黄马甲运动闹的多大。我认为西方文明过于强调个人,而几乎忽视了集体的存在,你国家算个屁,总统我想骂就骂。但是集体利益最终一定会影响个人利益。而这两着更理想的状态应该是互相平衡的。 所以类似于君臣父子这种社会秩序的理念去稳定社会,让人接受自己的社会地位,承认分工不同,同时鼓励勤劳,鼓励创造,鼓励学习。正如李光耀所做的一样,强力维持社会秩序,让人安居乐业。另一个国家吧,印度,一仗被打断脊梁之后,再也起不来,工业化中断,政治上照搬西方模式,却没有考虑自己的独特性,国内严重割裂,社会教育水平低,国际关系上则高调张扬,另一个差不多的case 就是古巴了。这就是没什么文化传统的国家,没有智慧,经验的传承,而中华文明则诞生了毛泽东,邓小平,李光耀这种伟人,带领着族群生存扩张。

-
1
2
1、生存是文明的第一需要。
2、文明不断增长和扩张
- -

智人,罗马人皆是如此。

-

上面说的都是正经打贸易战,人大国际关系学院的一个教授说,可能未必是真要打贸易战,也许只是想改善财政压力。我觉得有几个证据,第一就是刘鹤与川普谈的时候,川普下意识的说 “this will make our farmer happy”,看起来还只是为了选举,以及也征收了印度,越南的关税。第二 要求所有盟友,韩国日本法国德国提高驻地美军的军费, 被强奸了的韩国,可怜可怜。退出TPP,早期得罪德国,油船事件坑了英国。一波组合拳打遍全世界,这不是要跟某个国家开战的节奏。

-

复旦大学金灿荣教授预测下半年差不多要签下来协议,贸易战短期内应该就告一段落了吧。

-

所以赶快加仓吧。港股应该出现了不错的机会, 我也该回去继续研究技术了,研究贸易战花了太多心思。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/08/15/\346\261\207\345\220\210/index.html" "b/2019/08/15/\346\261\207\345\220\210/index.html" deleted file mode 100644 index fe468c5..0000000 --- "a/2019/08/15/\346\261\207\345\220\210/index.html" +++ /dev/null @@ -1,680 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2016 乌孙游记 D3 汇合 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

2016 乌孙游记 D3 汇合

- - - -
- - - - - -
- - - - - -

这一夜睡得很痛苦,不能转身,不能伸直,身体蜷缩着,伸直就把横在我脚那头的人蹬下木板了,睡袋的空间也有限。几次睡去几次醒来,终于挨到天亮。对于追求能活着的人来说,醒来本身已经很幸福了。

-

烤火

-

起床后 我开始搞火,能烧的昨天烧了很多,剩下的经过一夜,都潮湿了,很难点燃,被熏的流泪几次之后,火起来了,开始烤徒步鞋,鞋子就是命,没这双鞋,走不出乌孙的。

-

雪山风景真的好看,银装素裹,很是漂亮。

-

雪

-

雪

-

吃饭之后,阿力上来确认说下面是有两个人,火鸟和他们队的,火鸟听说好像是什么上海登山协会的主席来着,找来一群老弱妇女,带单手杖登山的,背一包提一包的,用龙头拐的,穿低帮皮鞋的。然后暴风雪来的时候,他一个人先去下面露营地了,可以的。

-

晒完睡袋之后在等待汇合的人

-

雪

-

我们等走错路的人爬达坂过来和我们汇合,石头,大个子,淡言,以及找到他们的走四方等人。下午三点多才赶到,他们昨天晚上睡雪上,早上没吃饭,爬山半天达坂。真又饿又累,然后他们又开始晒湿了的帐篷睡袋,吃点东西等。四点的时候再次出发,赶往溜索点,但是已经落后了计划,经过昨天的事情,领队已经不敢拉开队伍距离了。

-

雪

-

沿着小溪的峡谷的山坡上的羊肠小道一直下降,风景不错,刚刚暴风雪之后的雪山美轮美奂,山坡的色彩也很眼里,羊肠小道也给人历史感。

-

因为刚刚雪后,小道很泥泞,但是是下坡,我们行进速度很快。

-

晚上露宿在一个河边,落后原定计划三四公里加上一个索道的时间,大概就是半天时间。希望这次暴风雪不会是我们晚于计划出山的原因吧。

-

今天的风景真不错

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/08/15/\350\277\207\346\262\263/index.html" "b/2019/08/15/\350\277\207\346\262\263/index.html" deleted file mode 100644 index f1f927b..0000000 --- "a/2019/08/15/\350\277\207\346\262\263/index.html" +++ /dev/null @@ -1,677 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 2016 乌孙游记 D4 过河 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

2016 乌孙游记 D4 过河

- - - -
- - - - - -
- - - - - -

今天的特色是过河,昨天我们露宿在峡谷的河边的小树林里面,因为耽误了半天行程,本来计划是露宿在索道之后的,结果今天下午才赶到索道,所以今天起床很早,七点半起床,具体几点出发就不知道了,好吧,出发之前我们又集体吐槽了上海的人弱切拖拉。

-

沿着峡谷进发,一路不断的在来回渡那条小河,左边到右边,右边到左边,早上石头和木头上都是冰,很滑不能踩,增加了我们过河难度,必须在不湿身不湿鞋的情况下安全度过,还行,喝水不宽不是太急,很多地方都能轻松找到落脚点,实在不行就搬石头造立足点,或者强行从山坡上钻灌木丛通过,总之,峡谷过的并不轻松,因为不断的帮助人过河所以我们很快就落在了最后面,拍照并不多,阳光从树林里穿过,照在青苔上的感觉还是挺赞的。

-

草坡

-

路陡然一转,我们开始攀升,并且在山坡的羊肠小道上走,行进速度很快,山阴处的树林,远处的雪山和旁边山坡上的草构成了一副很美的画面,陆的尽头是科克河。沿着科克河边,走的都是什么路呢,乱石堆,羊肠路,需要人协助才能爬上去的陡坡,侧身踩着石头,只能一人过的路,当然,也有可以骑马走过的牧道,总之,沿着科克河岸一直进发,行走一个小时多,我们来到了溜索,从出发到溜索,我们大概落后行程四个小时。

-

溜索

-

在这里我们和阿力队的人相遇并且超过,过河之后,领队意识到很难抵达天堂湖露营,决定租马急行军,然而马太贵,托一个包到天堂湖需要三百,我们过溜索才两百块,最后决定把最弱的几个人的包托着,其他人依旧重装前进。溜索之后,离开科克河流向,沿着峡谷,向山里进发,而这峡谷的河流则比早上水量更大,更急,不湿身过河是不可能的了,众人纷纷换上朔溪装备,脱掉登山鞋,我的是军胶,有几个是凉鞋和拖鞋,有人则根本不换,协作领队的是朔溪鞋,腿上基本没什么防护。

-

过河是很危险的,我们渡期间,五个牧民五匹马冷眼盯着我们,观察着我们,大概是希望我们有人租马过河,赚一笔外快,的确,骑马过河又快有没有危险,然而并没有人租马,强行横渡。河水很冷很冷,越往深处走,越急越冷越危险,我快步走到河快一半的时候,发现不行,河水太急,不稳定重心就会被冲走,便立定站稳,强顶着河水一步一步慢慢移动,而体温则迅速下降,双腿开始感觉到刺骨的冷,但是却不能急,必须顶着河水站稳,冲倒是极其极其危险的。听说有人在夏特,走到河中间,发现还不错,能坚持,就在河里摆姿势让人拍照,然而分分钟坚持不住,冲倒在河里死了,倒在河里就意味着90%已经死了,我们都是这么认为的,就算岸上有人,旁边还有牧民。腿已经刺骨的冷,但是脚还是灵活的,慢移动两步过了河最中心,水愈发刺骨,腿感觉外层已经没有了感觉,但是冲击力却是锐减。我感觉自己已经渡过了可能出生命危险的地方,石头上前拉了一把,上岸了,浑身开始颤抖,腿的外面已经失去知觉,几分钟都没能回复。第一条河过了很久,却都安全度过了,没有人摔倒。然后穿着朔溪鞋继续前进,我们还需要渡过这条河六次。

-

第二次渡过的时候,牧民依旧在旁边盯着,但是旁边有一个推到的树,很滑,横跨河两岸,领队强渡,得出还是很危险的结论,后续的都选择木头,但是站着走太危险,爬摔倒反而出问题,大部分都选择了骑着木头过河,有几个人身体重,手没力气,怎么挪就是很难前进,耽误挺久。

-

第三条河很轻松,独木桥很粗很稳定,第四个就没那么粗,但是还是可以走过,几个弱女孩颤颤巍巍的在各种帮助下走过了,有个男生还是决定骑过去,慢慢挪呀挪,把独木桥上原本的树枝全部弄断了,在最后才在帮助下站了起来,一步跨到安上,他之后是我,我并不喜欢冒险,但是我感觉自己应该能站着走过去,所以就一步一步走,感觉要失去平衡的时候就把手杖顶着桥,几步到了桥中间,这个时候,石头从对面过来,让我双手搭他手上,扶着他过河,我开始是拒绝的,因为感觉自己是可以过河的,不过还是接受了,我感觉搭他双手瞬间,我们都有点失去平衡,但是稳住了,然后他后退我前进,迅速过了河,后面几个都差不多这种方式,直说越接越靠近上桥的抵达,看着他轻松走过木桥,如履平地,好羡慕这平衡感。

-

第五个桥过的让我有点生气,我用保鲜膜裹住了小腿,准备强渡,旁边是有一个独木桥的,但是不稳定,上岸也麻烦,涂涂选择骑着过河,然而过半之后就再也无法移动,也站不起来,卡在那边几分钟,淡言有点心急,没等涂涂上岸便开始强行涉水,然而在涂涂身后卡住了,然后这个时候我也开始下水了,我觉得是如果河水里面间距很近的话,可以互相照应,减少危险,然而这个决定是错的,我两步就来到河中,淡言的身后,发现淡言被涂涂横着的腿挡住了,无法前进,而我们扶着木头慢慢过河,木头的晃动吓哭了涂涂,弱驴就是弱驴,她已经彻底动不了了,而这时,我的本来还能控制的腿突然刺骨的冷,我意识到自己不能再等,开始催促淡言绕开先走,然而在等待期间我必须站稳身体,接受刺骨的水的冲击,我腿感觉已经麻木了。淡言上去之后,我开始走,一步一步慢慢移动,就算腿刺骨的冷,也不能慌,到岸边被人拉上去了。后来我意识到之所以河中间突然刺骨冷的原因,大概是因为保鲜膜被冲破了,两个腿都是。这大概是过河最痛苦的一次,死神的镰刀从脖子旁划过。

-

第六条河有几个人强渡,但是太急,几个女的退了回来,水太急,控制不住,我们开始向上走,果然发现一处木头过河处,虽然木头很细,但是可以扶着树枝很稳定的过河。

-

最后一条河大概是过的最成功的一次,重新加固了绑腿,保鲜膜一层又一层,胶带缠满小腿,然后等河道人已经上去了,我迅速走过去,虽然还是慢,但是步子很大,几步就过去了,然后上岸,在河水里面,并没有感觉到失去控制,但是上岸之后,依旧还是刺骨的冷,然后大家更换装备,强行军开始了。因为已经不可能赶到天堂湖了,所以我们选择第一或者第二草原作为宿营地,几个最弱的已经是空手走路了,整体速度立刻就提升了,强驴们开始全力走路,我的脚后跟益发的疼,虽然已经加了卫生巾,阻止脚后跟跟鞋的摩擦,但是摩擦的位置还是很疼,每走一步都很痛苦,我无法加速,但是也不能停,只能按照自己节奏不停的走,慢慢走,不要停,就不会被甩。

-

走路

-

这真的是一次很长时间不休息不能停的徒步,渴了就边走边喝水袋的水,河水其实挺难受的,破坏了自己呼吸节奏,饿了从兜里拿出大白兔补充能量,边走边吃,不能停,我吃了整整一把糖,还有一个士力架,半个囊,体力终于恢复,饥饿感消除,然后走啊走,走啊走,终于在第一草原边缘,赶上了休息的先头,然后在托包问题和牧民略有争议之后,向第二草原进发,不停不怂不乱节奏,终于紧紧是跟着先头部队,并且在天还有一定亮度的时候,赶到了第二草原,但是继续前进已经不现实了,具体天堂湖直线距离四公里,已经不可能赶到了,并且沿途没有扎营地,只能就地休息,强行军结束。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/08/31/\344\273\216\343\200\212\344\270\244\344\270\252\345\271\270\350\277\220\347\232\204\344\272\272\343\200\213\345\216\273\345\256\241\350\247\206\346\210\221\350\277\207\345\216\273\347\232\204\346\225\231\350\202\262/index.html" "b/2019/08/31/\344\273\216\343\200\212\344\270\244\344\270\252\345\271\270\350\277\220\347\232\204\344\272\272\343\200\213\345\216\273\345\256\241\350\247\206\346\210\221\350\277\207\345\216\273\347\232\204\346\225\231\350\202\262/index.html" deleted file mode 100644 index 588e030..0000000 --- "a/2019/08/31/\344\273\216\343\200\212\344\270\244\344\270\252\345\271\270\350\277\220\347\232\204\344\272\272\343\200\213\345\216\273\345\256\241\350\247\206\346\210\221\350\277\207\345\216\273\347\232\204\346\225\231\350\202\262/index.html" +++ /dev/null @@ -1,708 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 从《两个幸运的人》去审视我接受的教育 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

从《两个幸运的人》去审视我接受的教育

- - - -
- - - - - -
- - - - - -

米尔顿和罗斯他们都是犹太移民,小时候移民到美国,在贫穷中长大, 后来成为著名的经济学家,奠定了货币主义的基础。
《两个幸运的人》 是他们夫妻的自传。看完书的前两章,我也想了一下自己接受的教育。

-

首先是罗斯

1
2
她认定威尔逊维拉的学校一定比波特兰的差,虽然自己没有受过正规教育,
但是母亲决心要让她的孩子受到尽可能好的教育。
- -

我父母可从来没说过让我们去更好的学校, 一直是强调让我们凭自己本事考好成绩。 有时候我也在想,我既然能在近百万人里面,进入前几千名,那当年如果我得到更好的资源,会不会做的更好呢? 最近与父亲谈心,他总是说,“我就是这样”,“比起很多人我已经可以了”,我不喜欢这种论调。You can’t choose your faimily。The only choice is try to change them。

-
1
2
3
我很小就开始上钢琴课。我甚至一度梦想过钢琴演奏家的生活,
我中学最大的沮丧不是因为报告卡上的评语(因为我永远都是好学生),
而是由于班级表演中没有名列前茅
- -
1
许多教师有着对学生开放的房间,或者在固定时间与学生一起喝茶
- -

我一个同学说,她上学期间一共有三个阶段,第二个阶段是高三,老师会组织同学一起喝茶聊天,”哇,没想到居然会有这么多人有着这么多不同的想法,为了高考可以做这么多准备”。 那段时间开阔了她的视野。

-
1
我记得主要不是谈经济学,而是一些非常普通的,哲理性的话题: 生活的主要目标是幸福吗?什么能创造幸福?
- -

这些话题虽然大而空,还是需要谈的。 不然怎么跟自己相处,如何在社会上定位。理念树立了,纲领有了,才有明确的下一步行动。

-

然后是米尔顿的

1
2
我们从不买什么奢侈品, 都是我的父母还是凑足了钱让我和姐姐们都去上音乐课......
但是音乐课体验了我父母对高标准教育的追求,犹太社群的父母在这一点上普遍如此
- -
1
2
我上中学期间,当地的公共图书馆发挥了重要的作用,因为有了它,
我成了一个如饥似渴的读者,几乎读完了这个校图书馆里所有的书
- -

我那个时候也挺闲的,可惜我家只有几本武侠书, 结果只能度过了一个又一个极度无聊的夏天,直到17岁那年。教育资源太贫瘠了。

-
1
2
这是一次利润丰厚的生意,我记得我们只剩下了个别几本书没有卖出去。
显然,我们这两个犹太孩子的基因中原本就有做买卖的天赋。
- -
1
阿瑟对我的另一个影响是建议我读19世纪伟大的经济学家阿尔弗雷德*马歇尔的书
- -

总的来说,我觉得罗斯和米尔顿的父母都尽量让儿女接受高质量的教育,尽量去培养爱好,在他们成长的过程中,有很多的资源,比如鼓励他们做生意,小的图书馆,这是我基本上没有见到过的。有很多沟通,比如老师的茶话会, 阿伦和罗斯的对话, 阿色和米尔顿的等,跟这些过来人的对话,更容易了解社会,树立比较长期的目标,以及目前该做什么样的准备等。就像我同学说的一样,她高三的交流,对她影响很大。

-

小时候常说,我长大了要做画家,歌手什么的,大部分都是孩子话,什么都不懂的时候瞎编的,也缺少有人真正去解释,去指导。我时常感觉自己16岁之前的时间,是虚度的,基本没有得到什么对现在有用的东西,我进入了985院校,才听到985这个概念, 而我报的专业是一晚上在网吧里查的。

-

我接受的教育

来自父母的教育

基本上只有两条理念,1. 好好上学,去考上大学,2. 勤劳善良,做个好人。第一点做的还不错,我们兄弟一个211, 一个985,在河南还可以吧,第二点嘛, 如果按照不让自己良心过不去的标准来算,那做的也还不错, 勤劳嘛,yes。

-

好好上学,去考上大学。当然是对的,有了好大学,才有好工作嘛,这是他们观察来的。不过这到底只是经验主义。上大学是为了学习知识以及培养自我学习习惯,这些知识包括了对科技的了解,技术原理的掌握,对社会现状的了解把握,对过去历史的反思总结,对人对沟通的了解。在这个基础上,可以承担一些责任,所以才有了工作,以及随着实践的加深,才有了承担更大责任的能力,如果说上了大学就有了好工作,那就是形式主义,到大学之后如果还没有及时真正体会到这一点,可能就找不到工作哦。

-

勤劳善良,做个好人。我认为他们自身也只能算70%的好人。老实,多工作少说话,不去攻击别人不出头。这是自保的姿态,避免招惹是非。从那个年代过来,也是能理解的。小时候我时常疑惑,古惑仔一般打打杀杀,好像是谁拳头厉害, 一些黑帮片子,武侠片子尤其会显得正义微弱,好人受欺负,社会黑暗。从今天的角度来看,一个能逻辑上自洽的劝告人去做一个好人的说法应该是:这个世界,是需要秩序的,不管是君臣父子的儒家秩序,还是神权的秩序,甚至是黑社会的秩序,有秩序才有安心和繁荣,才有稳定,任何打破秩序的人,如果不能建立一种新的让人接受的秩序,就会被秩序的力量反噬,个人的力量无法抗衡集体,做一个好人,是在任何秩序下,都不坏的选择,是遵守秩序的选择,同时也是能团结他人,更好保护自己的选择。我认为的好人的原则应该是, 1. 自己的所有行为都在道德可接受范围内。 2. 在不过分伤害自己利益的情况下,尽量去帮助别人。

-
来自学校的教育

学校的教育尤其失败。缺少培养思考,培养完整的社会观,历史观,更不要提品德。只有教书教知识。大部分老师们也只是在敷衍工作,自身的了解思考也有限,以及教材的深度也有限。

-

我小学三年级就开始看长篇小说,之后的语文,基本上也就学校强行要求背诵的诗词还有点用吧,大部分语文的时间都是浪费的。历史, 我向来喜欢历史,但是我学习的历史,只是以前的故事而已,缺少深度的剖析,以及历史的不断演化迭代。从隋唐到清,每一个朝代都是在前代的基础上不断改进,过去的故事不断被反思总结改进,制度不断调整。比如最近在看日本的历史,日本如何一步步的走向军国主义的,中间有过多少种思潮,内部是如何演化的,中间谁出于何种动机做了什么,甚至论证下体制和文化下的必然也行啊。但是我的历史书只告诉了我发生什么。其他的物理,数学, 英语等都是工具性质的。

-

总的来说,我认为自己过去的教育,缺乏体系的理论,从父母到老师,缺少真正懂的人,有感悟的人,他们也不过抓住的,也不过是一点点正确, 对他们所主张的,他们自己并不能在理论上自洽, 以及真的缺少教育资源。

-

这是我对自己过去接受的教育的反思, 不过,也没办法啦,发展总是一步一步的,能感受到变化也是挺好的, 朝闻道,夕死可也,更况且我的人生才刚刚开始。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/09/05/\344\271\235\346\234\210\344\273\275\346\212\225\350\265\204\345\273\272\350\256\256\346\212\245\345\221\212/index.html" "b/2019/09/05/\344\271\235\346\234\210\344\273\275\346\212\225\350\265\204\345\273\272\350\256\256\346\212\245\345\221\212/index.html" deleted file mode 100644 index 0a6c3c6..0000000 --- "a/2019/09/05/\344\271\235\346\234\210\344\273\275\346\212\225\350\265\204\345\273\272\350\256\256\346\212\245\345\221\212/index.html" +++ /dev/null @@ -1,662 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 九月份投资建议报告 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

九月份投资建议报告

- - - -
- - - - - -
- - - - - -

房贷利率改革,地产政策进一步收紧,目前房地产销售面积销售为负,销售金额为正,可见居民还在借贷买房,开发商拿地积极性降低,土地出让金在下降,房贷利率提升, 流拍率在上升,预计下半年继续下行。

-

企业维持正增长,但是相比第一季度有下降,百大城市工业用地下降, 制造业投资低迷。

-

货币政策趋向于宽松,进入了降息周期, 十年期国债利率下降, LPR改革控制了房贷利率,限制了房地产贷款金额, 通胀进一步上升, 利率低,社融低, 有利于股票市场。 历史上有两次社融低,1. 利率低1999-2000年,当时房地产刚刚改革,信贷增速持续回落, 99年降到了2.25,前后五年心低, 爆发了519行情,2000年指数快速上证。14-15年, 房地产在下行周期,当时券商,TMT表现不错。 这种表现有利于券商,医药,建筑等逆周期等行业。

-

中国半导体销量触底抬头,在5G带领下开始可能开始新的科技周期, 7月份中国半导体增速达到7%。 9月份有可能全球的半导体也可能拐点向上。科技的上行周期可能开始。医药,军工比较受益。

-

需要继续关照中美贸易战是否有进展。

-

沪股通持续流入,融资融券有所恢复,8月份开始扩大,放松券商保证金,etf倾向于赎回,公募基金比较平淡。企业盈利有所回落到7.2%,ROE较上季度有所下降。 周期相关表现不佳。

-

业绩分化明显,风险偏好没有改善,依旧低迷, 没有改善。

-

长期看好黄金,黄金是美元的镜像,美联储进入宽松周期,美元债务也在增加, 所以美元在贬值,黄金在升值。

-

有些蓝筹涨幅非常像2015年,来自散户,机构资金并没有变化(所以是不是确实该卖了)。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/09/19/\347\276\216\350\201\224\345\202\250\350\257\273\345\220\216\346\204\237/index.html" "b/2019/09/19/\347\276\216\350\201\224\345\202\250\350\257\273\345\220\216\346\204\237/index.html" deleted file mode 100644 index 882077a..0000000 --- "a/2019/09/19/\347\276\216\350\201\224\345\202\250\350\257\273\345\220\216\346\204\237/index.html" +++ /dev/null @@ -1,735 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 美联储读后感 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

美联储读后感

- - - -
- - - - - -
- - - - - -

1. 背景介绍

a. 卡特总统开始甄选美联储出席的候选人,美国的经济此时正处在水深火热之中,通货膨胀达到13%, CPI(消费指数)达到11%,美元贬值,油价暴涨,社会财富两极化严重, 并且初步介绍了美联储,“是代议制民主核心中一个至关重要的畸形人,是与自治民权神话并存的矛盾体”,若隐若现,主宰了经济,但是消失在公众之外。卡特总统的演讲里面有一番话很有意思。不过我感觉今天美国依旧消费主义大行其道,人依旧寅吃卯粮。卡特的这番话似乎并没有大作用。

-

b. “在一个崇尚努力工作,家庭稳固,亲密社区和上帝信仰的国家,我们当中太多人越来越崇拜自我放纵和过度消费。人们对身份的认知已经不再依靠行为,而是对财产的拥有。但我们发现,拥有和消费并不能满足我们对人生意义的向往,堆积如山的物质财富并不能填满我们因缺乏信心和生活目标而产生的空虚感”

-

c. 保罗*沃尔克就位,第二天道琼斯爬升,金价下降,故事开始了。

-

2. 第二章介绍美联储

a. 是个十足的怪胎,最高层是七位美联储委员,由美国总统任命,参议院认可,七位委员与12家储备银行行长共享权利,12位行长在各地区私人银行效力,他们是由各区的董事会选举产生的。每次委员会决议,要由12名成员,7位美联储委员和5位联邦储备银行行长,后者由12名行长中轮流产生。之所以是怪胎是因为美联储绝缘于普通人的监督,又控制普通人的生活(unasm:有没有点中国政府的感觉)

-

b. 美联储有两个小小的阀门,1. 直接面向银行的贴现借贷,2. 政府有价债券的市场买卖。 当美联储从银行手里买入国库券和票据时,不过是将创造的货币存入了买入了这些有价债券的金融机构的储备账户中,增加了货币供给。美联储注入的资金被称为高能货币,复制的过程令人眼花缭乱,美联储注入10亿美元,银行体系立即生成8.4亿贷款,即除去16% 的储备金,8.4亿的贷款又会成为新的贷款本金,除去16%的储备金,剩下7.06美元,也会成为新的存款,并且衍生出新的借贷业务,扣除16%的储备金之后,又会产生5.93亿美元,以此类推, 10亿美元最终在存款中变成超过50美元,这些可以看过全美国的货币供给量,即M-1总额。如果银行的投资组合因借贷政策过于激进而超过了储备金量,它又两个选择, 1. 必须在每周一次的申报期结束时做存结,吸收贷款,废除存款记录, 2. 暂时借入储备金,而这种借入也是有价格的,也就是联邦资金利率。

-

3. 货币主义VS凯恩斯主义

a. 1963年,米尔顿*弗里德曼 和安娜出版了代表其事业巅峰的《美国货币史》。作为倡导自由的保守主义者,弗里德曼从根本上反对政府对私有制市场的自然运行机制进行任何形式的干预, 但是他和凯恩斯主义之间最尖锐的矛盾还是在经济受控于政治的思想。弗里德曼坚称:凯恩斯主义看似以扩大政府财政支出为中心的政府财政政策只会带来短暂的回报,政府对私有经济的影响力其根源来自于对货币的控制,即美联储的货币政策,而美联对货币供给的操作只会破坏社会稳定且遗祸无穷。美联储总是不负责任的控制货币供给量,供给过多造成通货膨胀,然后再实施货币紧缩,从而阻断经济发展,引发经济衰退。

-

b. 沃尔克希望通过遏制货币统计来调控经济,降低货币的供给可以提高利率,抑制通货膨胀,而比起直接提高利率的方式,通过遏制货币供给可以把利率提高到超出水平的程度而免受攻击。

-

c. “我希望的是: 对金融市场做出一个强大而积极的反应,利率起初会大幅上扬,但其对人们对通胀预期会产生积极影响,长期利率也会因此而开始下降。这场心理战取得成功的标志,就是长期利率是否会呈现稳定并开始回落的趋势”

-

4. 改革的影响

a. 金融市场的利率攀升,在实际经济中造成影响有亮点: 1. 房地产,汽车,其消费品世行有许多潜在客户会因为更高的购买价格而却步,2. 对于不在乎高利率仍想购买商品的消费者来说,会更难获得贷款。紧缩的信贷条件迫使商业银行和信用合作社谨慎对待货币配给,在借贷人中谨慎选择,优先选择最具竞争力的客户,并且拒绝其他人。

-

b. 当经济增长呈现过快趋势,交易货币需求量也会随之出现增长,这就会与目标货币供给量发生冲突,其结果就是造成市场利率上升,相应的,利率上升会降低民众的消费欲望,对新贷款的需求也会下降,货币增长量也会减缓,直到恢复美联储想要看到的适当的水平。这就是基本运行原理。在实际操作中,纪律体系会先惩罚最弱小的玩家,而最强大的企业会寻找机会规避不利,举步维艰的企业和收入有限的家庭一定会付出最高的代价,而大型银行则可以吸收来自信用合作社和州立信用合作社逃离的储户。

-

c. 但是通货膨胀带来的压力依旧使人借来大量的钱来购物,油价再次疯涨,利率升高,一月CPI指数达到了16.8%,黄金几个月翻了一番,银价增长五倍。汽车销量已经下滑到1975年来的最低点,新房建筑量缩减近20%,但是其他产业的消费依然强劲。失业率开始抬头,个人收入正在下滑。唯一的解释是债务,家庭正在用更多的债务补偿缩水的收入。美联储一再提高利率,达到18%,市场短期利率涨到20%。

-

5. 货币控制法案

a. 货币控制法案取消了利率的上限。商业银行之间展开自由竞争,超过1000家储蓄信贷社倒闭或者吞并,大型金融组织地位得到巩固和强化,利润向上流动,高利贷得到允许。

-

6. 经济崩溃

a. 应卡特总统要求,美联储将分门别类的对信贷市场开始控制和管理,但是此举遭到大部分美联储委员反对和嘲笑:“整个行为看起来更像是消费信贷市场的各个角落装点门面”,但是此举反映了总统的意愿:请停止借贷。经济就开始意外崩溃了。消费开销开始大幅度下降,企业信贷也开始缩水, GNP不到三个月骤降10%,人们纷纷开始还清债务,取消了信用卡。卡特的支持率骤降。

-

b. 泡沫破裂,银价暴跌,亨特兄弟因囤积白银即将破产,波及芝加哥第一美国银行,美国第二大经纪公司,沃尔克紧急救助亨特兄弟。

-

c. 两周内利率从18%下跌到13%,利率的过度震荡就像魔鬼,让人不安。1980年4月,5月美联储疯狂注入储备金。美联储内部关于是否忠于货币主义产生分歧。六月份利率再次下降到8.5%。但是到7月份经济意外且突然的复苏。消费者重新开始购物,商业活动复苏,信贷业务再次急剧扩张。美元在国际市场的贬值得到遏制。卡特总统在连任竞选中开始攻击美联储提高利率。

-

7. 货币的本质

a. 这章没什么可说的

-

8. 谁应该管理美国经济

a. 美联储最初是被一群底层的劳动人民拥护的,而不是政客和银行家。1877年开始的骑士运动诞生的农民联盟,因为经济紧缩开始有了货币的诉求。通货膨胀会侵蚀家庭金融资产,也会起到财富的再分配的作用。但是通货紧缩会让存款很少的普通人收入缩水,债务负担增加。

-

b. 1861至1986年的南北战争期间发型的绿币造成通货膨胀,但是对于农民来说,却是最富裕的一段时间。战后,绿币退出流通,金本位恢复,物价回落,农民的收入降低。

-

c. 1886年绿币党建议国家提供一种货币供给,由政府根据市场信贷需要进行货币扩张或者货币紧缩。目标是通货膨胀,让物价上升,这样农民就可以从农产品中赚钱养家糊口。但是遭到嘲笑,谁来阻止政府无限制的印钱呢(ps: 有没有点今天比特币的辩论),农民改革家解释是:货币供给的增长要与经济增长紧密挂钩。

-

9. 美联储的诞生

a. 1913年, J.P.摩根去世,其巨大的影响力需要被继承。在美国的银行体系陷入恐慌或者流动性困境时候,摩根会组织救援,选择对哪些银行救助,允许哪些银行破产。

-

b. 美联储的原型:创立由15个主要地区的银行位代表的国家储备委员会,协会由商业银行组成的委员会控制,但是由联邦政府授予权利,其作用相当于一家中央银行,即负责创造货币,并向私人银行借出储备金。这样闲置的储备金得以战略性分配调整,向流动性陷入困难的银行移动。目标是消除金融危机的带来的恐慌

-

c. 第一次世界大战之后,美国急剧通货膨胀,为降低通货膨胀率,美联储将贴现率从4%提高到7%,之后18个月价格紧缩,经济收缩,生产规模下降42%,失业率激增5倍达到11.9%。美联储开始扮演调控经济的角色,并且地位开始巩固。

-

d. 1927年,美联储向美国银行体系注入大量流动资金,并且通过海外信贷流动到海外,达到放松欧洲金融市场的目的,但是事与愿违,实体经济疲软, 流动性进入金融市场, 造成泡沫, 1929年秋,大萧条开始,1929-1933年,货币缩水三分之一,大量债务和经济行为在倒闭和债务拖欠的形式加以清算,本来可以通过降低利率刺激信贷和经济行为复苏,本可以购入政府债券注入资金,但是美联储认为这不过是对过剩货币对矫正,也是为了保护重要银行的利益而拒绝加以干涉, 1931年10月,美联储甚至提高了2%的贴现利率,基础货币再次缩水。

-

e. 清算劳动力,清算股票,清算农民,清算房地产, 其会清除经济体内的腐烂和败坏,人们会更加努力的工作,生活也会变得更有道德意识,价值观将被调整, 有事业心的人将会吸收能力差的人的失败教训。

-

f. 1932年四月,美联储开始购入国库券,注入货币,然后到夏天又放弃行动。几个月后经济再次紧缩,银行倒闭风潮席卷全国, 5000家银行破产,经济崩溃高峰如约而至。

-

10. 马里纳的新经济学

a. 政府花更多的钱去刺激经济,包括失业救济,公共设施,农业拨款,农田抵押贷款再资助以及战争债务清算。实施一系列有利于长期稳定的改革,针对银行储蓄的联邦保险,一个中央集权的联邦储备系统,重新分配收入的税收改革,最低工资法案,失业保险,养老金,股票市场以及其他经济领域的政府调控。

-

b. 1934年,马里纳成为美联储主席,他剥夺12位联邦储备银行的投票权和自治权,加强坐镇华盛顿的7位美联储专家的货币政策控制权。

-

c. 1937年的二次衰退,政府开始削减赤字,同时美联储开始增加各银行的储备金量,吸收过剩的储备金并提高利率。这种结合极具毁灭性造成经济二次衰退。

-

d. 凯恩斯认为:以市场严重失衡为代表的经济大萧条正是过剩的资金找不到合适的生产投资开始的,病态资本无法用于创造新供给的投资中,直到找到充足需求。解决办法就是: 为刺激生产,必须操纵市场需求商品总量,让持有资金的人确定再次投资可以有利可图,从而恢复资本的形成过程, 实现世界财富的繁殖增长。

-

11. 改革的代价,被牺牲的人

a. 里根总统希望通过减税和削减政府财政支出,增大赤字来复苏经济,刺激增长,这与美联储的抑制通货膨胀的目标相违背。内阁给美联储施加压力,要求配合。1981年4月通胀率降到7.2%,美联储依旧进一步紧缩货币。而减税政策到1983年也未能充分实施。

-

12. 萧条是对畸形繁荣的惩罚

a. 1981, 1982年,企业利润一路下降, 大批公司裁员,民众开始抱怨美联储。强势美元导致美国出口的产品越来越贵,从国外进口越来越便宜,加速了农业和制造业的衰退,但是对金融业利好。

-

b. 美国银行大量向发展中国家,比如巴西,墨西哥提供贷款。LDC债务急剧扩张,但是项目本身质量令人担忧。

-

13. 被牺牲的都是穷人

a. 对于20世纪末的美国人来说,工厂的频繁倒闭和工人的被迫失业似乎是天经地义。劳工联合会开始失去控制权,工作岗位开始向海外或者不发达的南方流入。1982年12月企业清算达到顶点, 其中绝大多数都是小型企业, 1200W美国工人失业,自杀率增加,非正常死亡率也在增加。联邦利率在15%徘徊,消费指数低于5%。

-

b. 计算机和高科技人才需求增加, 金融银行业在1981-1982年创造了更多就业岗位,利率的上涨给拥有金融资产的人提供了1480亿美元的收入。货币价值稳定或者增加的话,货币的繁殖速度会更快。

-

c. 保罗沃尔克自律朴素,对待美国经济如严厉的父亲般对犯错的孩子加以惩罚,对孩子解释那些孩子不能完全理解的原因以及从长远角度来看什么对是孩子最有利的。

-

d. 斯托克曼和他共进午餐,唐纳德里根和他单独吃早饭,韦登鲍姆也和他见面,所有人都试图和他交易。

-

e. 墨西哥货币疯狂膨胀,失业率达到13%,濒临无力支付海外贷款利息的地步。但是如果墨西哥崩溃,美国的顶级银行也会随之崩溃。9家银行向墨西哥销售的贷款占其总资本的44%。美联储决定提供6亿美元的短期贷款维持墨西哥经济,7月末又提供7亿美元。

-

14. 经济的急转弯

a. 宾州广场银行因向石油和天然气开发上无节制的贷款而财政状况恶化,美联储,大通曼哈顿,大陆银行等最后决定不救,宾州广场银行周四关门,联邦存款保险公司查封其资产并破产管理,参与投保的存款人将立即收到其账户的全部赔偿,其他债权人和索赔人必须排队等候分享该银行缩水的资产。银行对来自美联储的建议和压力置之不理。美联储对银行无可奈何。

-

b. 如果墨西哥也即将破产,债务危机会像瀑布一样席卷整个第三世界,从墨西哥到巴西,到阿根廷,秘鲁,智利,委内瑞拉。6月美国银行组织了一笔250亿美元的信贷卡,但是欧洲银行拒绝注入新贷款,私人资本加速逃离墨西哥银行。

-

c. 美联储开始放松货币政策。沃尔克试图弱化这次政策上的变化,因为不想让货币主义者群起而攻之。联邦资金一降再降, M-1不再增长

-

15. 兜售繁荣

a. 里根总统谴责美联储做的太过火了。

-

b. 贴现利率下降到8.5%,五个月内第七次降低利率。美联储未来15个月内冻结贴现利率。美国经济普遍遭到打击,但是没有威胁到银行体系,不用重组债务。劳工联合会被迫接受大规模工资削减,房地产的价格也在下降。疯狂的通货膨胀过去了。

-

c. 墨西哥和巴西从国际货币基金组织大量借贷,条件是接受紧缩条款,接受国际组织对国内经济事务的监督。如果他们中任何一个破产,瞬间购勾销的几十亿贷款会压垮美国众多的大型银行,不过旧债的重新安排并不能根本解决问题,所以要给他们时间自谋生路。

-

d. 1983年美国经济开始显现复苏。美联储实际上已经成功扭转美国企业的每一笔交易,美国政府也真正意义上为每笔七月设定新的条款,即为解决劳动力工资问题,家庭信用卡和房屋贷款问题,石油和房地产以及船业投资问题,债券和股票问题,以及银行活期账户和货币市场共同基金问题增加新的条件,美联储将日复一日的掌舵美国经济,此时一切都已经走上他们既定轨道。

-

e. 美联储承担者支持新国库券债务有序销售的希望,同时也不能阻碍美国经济,两种责任会萌发两种倾向,维持宽松信贷环境和稳定利率。美联储决定坚定立场,不再将日益增多的政治压力屈服,国会和总统不要指望通过通货膨胀的方式向他们的财政赤字实施紧急救助。沃尔克选择了新的解决方式。即在经济复苏期间维持高利率,随着经济复苏,名义利率虽然已经下降,但是仍超过了正常水平,货币的真实成本也在上升。利率高,财政部才能销售其债券,吸引全世界各种金融工具,同时高利率也会抑制真实经济过热发展,迫使其接受缓慢扩张。衡量货币成本的真正手段是实际利率。

-

16. 贫富分化加剧,谁之过

a. 沃尔克希望继续连任。华尔街纷纷要求连任。艾伦*格林斯潘放弃成为候选人(成为了下一任),里根只能宣布沃尔克连任: “与总统一样,沃尔克想要看到经济的持续复苏,并下决心降低利率”。

-

b. 凯恩斯主义经济学家会从一个更加根本的基本点会为这种经济理论和自己的行为辩护。他们指出:这并不是一次“供给方”的经济复苏,而是凯恩斯主义的“需求方”的经济复苏。大致来讲,他们是对的,1983年的经济扩张并没有实现1981年提出的供应经济学前提,相反,这次经济复苏完全遵循的是凯恩斯主义标准格式,即“需求刺激”,是由市场商品的消费性开支货币所领导的一次经济复苏,而非新资本形式的存款人投资。里根的减税政策是通过向私人手里注入更多的现金达到刺激消费需求,加上美联储的放松利率,这些刺激性因素会催生经济扩张。

-

c. 促成里根时代的根本动力,并非存款而是债务,即靠借钱度日,无论是企业,联邦政府还是个人,统统都是在借钱和花钱,美国的海外债务比例一直在增加。而里根的凯恩斯主义和过去民主党所作完全不同,有效的颠覆了旧时自由主义教条,联邦政府并没有向下层注入货币,每一次击倒最广泛的家庭消费,而是不成比例的将收入集中到上层经济群体手中。高利率对不同阶层的人影响不同,取决于人借钱和存款的方式。

-

d. 1983年中旬到次年夏天,新增500W个就业岗位,失业率从11%下降到7%,人均收入上涨5.8%,通胀率正降低到4%。可抵押贷款利息超过12%,年轻的家庭仍无法购买他们的第一套房子。

-

e. 坚挺美元伤害了美国的跨国贸易,日本的汽车,法国的钢铁到美国市场之后更加便宜,而美国的粮食,纤维和计算机到国际市场上变得更加昂贵(ps: 例如苹果?)。底特律因此破落。制造业开始转移到海外(中国1978年改革开放),强势美元压制了美国的物价和工资,但是对制造业造成了长期破坏,美国制造不再有竞争力。国防工业, 金融领域,零售领域,服务领域发展越来越好。

-

17. 美国的又一个早晨

a. 1984年4月,美联储开始将上调利率到9%,并且开始以回复M-1为运作目标。政策开始转向紧缩。抵押贷款一个月之后上涨到15%。房地产开发的繁荣开始急速回落

-

b. “我们有过一个交易,这个交易就是我们削减预算,美联储就会放松货币,这就是我们这一方的讨价还价,我们做到了我们该做的事情,可现在美联储却在耍我们“, 财政部长这么说。

-

c. 一则假消息让大陆银行陷入了恐慌,宾州广场倒闭之后,大陆银行并未吸取教训,依旧是激进的信贷策略。16家银行开始共同救助,注入45亿美元资本,众议员谴责美联储放任小银行倒闭却保释大银行。谣言和恐惧困扰着美国银行业。银行业开始停止向美联储借贷。长期政府债券利率增至9.6%,失业率回升。尽管无法说服委员会,沃尔克依旧在8月份开始放松货币,利率下降。

-

d. 高利率条件下,一部分债务是因为偿还旧债的利息支付,借新债维持旧债。

-

18. 货币的胜利

a. 1984年中旬开始,竞选年份的繁荣被遏制之后,美国经济开始犬牙交错,一个季度上扬,一个季度疲软,无法摆脱毫无生机的经济增长模式。

-

b. 美联储主席在犹豫不决,利率如此之高时为何还会创造这么多新债务,通货膨胀已经过去了,美国经济的生产力还能不能提高。

-

c. 保罗沃尔克和美联储让美国以及世界各国卷入一场巨大的痛苦中:长期萎缩,人类悲剧,大众市场消失,混乱生活,持续清算的痛苦。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/09/26/CMakeLists\347\232\204\350\256\262\350\247\243/index.html" "b/2019/09/26/CMakeLists\347\232\204\350\256\262\350\247\243/index.html" deleted file mode 100644 index 4ae6e4f..0000000 --- "a/2019/09/26/CMakeLists\347\232\204\350\256\262\350\247\243/index.html" +++ /dev/null @@ -1,654 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - CMakeLists的讲解 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

CMakeLists的讲解

- - - -
- - - - - -
- - - - - -

下面是一个系统的cmakelist.txt 文件,我解释下其中的部分,作为自己以后解读cmake的备忘

-
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
cmake_minimum_required(VERSION 3.0)

// 项目名,必须放在第二位,不然会有CMake Error: Error required internal CMake variable not set这种错误
project( gqa )

// 设置Debug 模式还是Relase模型, 可以用 cmake -DCMAKE_BUILD_TYPE=Debug . 指定Debug模式
IF(NOT CMAKE_BUILD_TYPE)
SET(CMAKE_BUILD_TYPE Release)
ENDIF()


// message 没有逻辑意义,用于输入提示和变量信息,比如下面,就是用于输出RPC_INCLUDES的变量,
// 其值在rpc-framework-cpp/cmakelist.txt 中 set (RPC_INCLUDES "${_RPC_DIR}/proto" "${_RPC_DIR}/include" ${LIBEVENT_INCLUDE_DIRS}) 设置
message("RPC_INCLUDES=" ${RPC_INCLUDES})
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -std=c++11 -W")

# 设置CMAKE_CXX_FLAGS
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -std=c++11 -pthread -Wl,--as-needed")


# 表示本项目并没有include目录
include_directories(

)


# SET 本身只是将后面的值集合起来通过第一个符号来表示
SET(PATH_INCLUDE_DIR ./include )
set (asm_sources
./src/lib/data_utils.cpp
./src/lib/test_data_utils.cpp
./src/lib/punctuation_model.cpp
./src/lib/punctuation_service.cpp
./src/lib/beam_search_ops.cc
./src/lib/beam_search_ops_gpu.cu.cc
./src/lib/segmenter.cpp
./src/lib/usefultools.cpp
)

SET(jsoncpp_sources
./src/lib/json_reader.cpp
./src/lib/json_value.cpp
./src/lib/json_writer.cpp
)

# PROJECT_SOURCE_DIR 是自动的, 表示项目的home目录, link_directories 指定要链接的库文件的路径
link_directories(${PROJECT_SOURCE_DIR}/3rdparty)

set(CODE_DIRS ${PROJECT_SOURCE_DIR}/src)

set(SOURCE_DIR ${CODE_DIRS}/lib)
set(TEST_DIR ${CODE_DIRS}/test)

#EXECUTABLE_OUTPUT_PATH 和 LIBRARY_OUTPUT_PATH 是cmake的常量,表示输出的lib和bin的目录,这里控制输出的路径
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)

#add_subdirectory(${SOURCE_DIR} ${LIBRARY_OUTPUT_PATH})
#add_subdirectory(${TEST_DIR} ${EXECUTABLE_OUTPUT_PATH})

# 创建一个共享的库文件,运行时动态链接,还有STATIC,MODULE两种选项,分别表示静态库和模块库
add_library(punctuation_lib SHARED
${asm_sources}
${jsoncpp_sources}
)

# 为punctuation_lib指定类库,也就是为库文件指定include目录,
target_include_directories(punctuation_lib PUBLIC
${PROJECT_SOURCE_DIR}/include
${PROJECT_SOURCE_DIR}/include/tensorflow/
${PROJECT_SOURCE_DIR}/include/nsync/
${PROJECT_SOURCE_DIR}/include/absl/
${PROJECT_SOURCE_DIR}/include/eigen/
${PROJECT_SOURCE_DIR}/src/include
${PATH_INCLUDE_DIR}
)

# 为指定的类库文件指定它的依赖
target_link_libraries(punctuation_lib
libtensorflow_framework.so
libtensorflow_cc.so
)

#创建一个可执行的文件,指定它的源码文件, 也就是下面几行都是设置test文件
add_executable(test_tf ${TEST_DIR}/test.cpp)
target_include_directories(test_tf PUBLIC
${PROJECT_SOURCE_DIR}/include
${PROJECT_SOURCE_DIR}/include/tensorflow/
${PROJECT_SOURCE_DIR}/include/nsync/
${PROJECT_SOURCE_DIR}/include/absl/
${PROJECT_SOURCE_DIR}/include/eigen/
${PROJECT_SOURCE_DIR}/src/include
${PATH_INCLUDE_DIR}
)
target_link_libraries(test_tf
punctuation_lib
)

#获取rpc-framework-cpp 的代码
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/rpc-framework-cpp" AND IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/rpc-framework-cpp")
message(STATUS "dependency grpc already exits")
else()
execute_process(COMMAND git clone -b v0.1.3-protobuf3.7 https://his_group:Aispeech_hisgroup@git.aispeech.com.cn/his-rpc/rpc-framework-cpp.git ${CMAKE_CURRENT_SOURCE_DIR}/rpc-framework-cpp)
endif()
include(./rpc-framework-cpp/CMakeLists.txt)


# 正式的可执行文件, 也就是每个可执行文件 都有 add_executable/target_include_directories/target_link_libraries 三个步骤,
# 指定include文件和类库,源码文件,比如 target_link_libraries 指定了两个类库,分别由RPC_LIBS和punctuation_lib指定
# 而punctuation_lib是类库,在上面有设置,而RPC_SRC则分别由set(RPC_LIBS event), set(RPC_LIBS ${RPC_LIBS} protobuf grpc++_unsecure gpr) 指定
add_executable(rpcserver rpcserver.cpp ${RPC_SRC})
target_include_directories(rpcserver PUBLIC ${RPC_INCLUDES} ${PROJECT_SOURCE_DIR}/src/include)
target_link_libraries(rpcserver ${RPC_LIBS} punctuation_lib)
#add_executable(rpcclient rpcclient.cpp ${RPC_SRC})
#target_link_libraries(rpcclient ${RPC_LIBS})
- -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/09/27/visual-studio-code-\350\277\234\347\250\213\350\260\203\350\257\225C-\344\273\243\347\240\201/index.html" "b/2019/09/27/visual-studio-code-\350\277\234\347\250\213\350\260\203\350\257\225C-\344\273\243\347\240\201/index.html" deleted file mode 100644 index 745bd77..0000000 --- "a/2019/09/27/visual-studio-code-\350\277\234\347\250\213\350\260\203\350\257\225C-\344\273\243\347\240\201/index.html" +++ /dev/null @@ -1,657 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - visual studio code 远程调试C++代码 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

visual studio code 远程调试C++代码

- - - -
- - - - - -
- - - - - -

神奇的vscode,通过vscode直接调试容器中的代码,可以避免处理环境依赖的问题,大大减少琐事。

-

主要依赖几个插件,Remote Development, Remote Containers用于链接容器, 然后选择Attach a Exist Container, 自己先通过docker run -d 启动容器,这样能加速,避免构建容器的漫长等待,并且环境稳定, 可多次使用。

-

如果希望调试的话,就必须配置launch.js, 可以通过C/C++ Build and Debug Active File 来创建,其中 program 要制定为自己cmake 生成的out文件,args酌情修改。 也可以把program修改成这样: “${command:cmake.launchTargetPath}”, 实现debugger和cmake的无缝融合

-

花了很久,主要还是因为对VScode不够了解吧,C的技术栈了解也有限

-
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
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/build/bin/rpcserver",
"args": ["${workspaceFolder}/res"],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
//"MIMode": "lldb",
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
- -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/09/28/\347\245\226\344\274\240\344\273\243\347\240\201/index.html" "b/2019/09/28/\347\245\226\344\274\240\344\273\243\347\240\201/index.html" deleted file mode 100644 index 55a2c1b..0000000 --- "a/2019/09/28/\347\245\226\344\274\240\344\273\243\347\240\201/index.html" +++ /dev/null @@ -1,654 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 祖传代码 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

祖传代码

- - - -
- - - - - -
- - - - - -

这是一份可以传给我孙子的代码,记录了libevent事件调度和socket网络编程中端口监听的部分

-
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#include<iostream>
#include<unordered_map>
#include<functional>
#ifndef RPC_FRAMEWORK_HEAD
#define RPC_FRAMEWORK_HEAD
#include "rpc_framework.h"
#endif


struct HttpServiceHandler {
ServiceConfig serviceConfig;
std::unordered_map<std::string, std::function<void(std::string &, ServiceConfig &, std::string &, std::vector<uint8_t> *, HttpResponse *)>> actionMap;
}

struct HttpServerData {
std::unordered_map<ServiceConfig, HttpServiceHandler> *serviceHandlermap;
std::string *httpContext;
}

class TransferServer
{
public:
virtual void start()=0;
virtual void stop()=0;
template<typename T, typename... Args>

void addMethod(MethodInvoker<T, Args...> &methodInvoker) {

}

template<typename T>

void addMethod(MethodInvoker<T, void> &methodInvoker) {

}
}

class HttpTransferServer : public TransferServer
{
public:
HttpTransferServer(int serverPort): serverPort(serverPort){};
HttpTransferServer(int serverPort, const std::string &httpContext): serverPort(serverPort), httpContext(httpContext) {};
/**
* 析构函数
*/
~HttpTransferServer() {
// evhttp_free(http)
// event_base_free(base)
}


int bindSocket() {
int r;
int nfd;

nfd = socket(AF_INET, SOCK_STREAM, 0);
if (nfd < 0) {
return -1;
}
int one = 1;
r = setsocket(nfd, SOL_SOCKET, SO_REUSEDADDR, (char *)&one, sizeof(int));

struct sockaddr_in addr;
memset(&addr, 0, sizeof(addr));

addr.sin_family = AF_INET;
addr.sin_adrr.s_addr = INADDR_ANY;
addr.sin_port = htons(servrPort);

r = bind(nfd, (struct sockaddr*)&addr, sizeof(addr));
if (r < 0) {
return -1;
}
r = listen(nfd, 10240);
if (r < 0) {
return -1;
}
int flags;
if ((flags = fcntl(nfd, F_GETFL, 0)) < 0 || fcntl(nfd, F_SETFL, flags | O_NONBLOCK) < 0) {
return -1;
}
return nfd;
}

void start() override {
int nfd = bindSocket;
if (nfd < 0) {
exit(1);
}

HttpServerData httpServerData;
httpServerData.serviceHandlermap=&serviceHandlerMap_;
httpserverData.httpContext=&httpContext;
int threads = std::thread::hardware_concurrency() * 2;
struct event_base *base_arr[threads];
baseGroup = base_arr;

for (int i = 0; i < threads; i++) {
std::thread t([&]() {
struct event_base &base = event_init();
base_arr[i] = base;
if (base == NULL) {
exit(1);
}
struct evhttp *httpd = evhttp_new(base);
if (httpd == NULL) {
exit(1);
}
evhttp_accept_socket(httpd, nfd);
evhttp_set_gencb(httpd, HttpServicehandler_Impl::service_request_cb, (void *)&httpServerData);
event_base_dispatch(base);
});
if (i < (threads - 1)) {
t.deatch();
} else {
t.join();
}
}
}

void stop() override {
while (baseGroup != NULL) {
event_base_loopbreak(*baseGroup);
baseGroup++;
}

delete this;
}

private:
std::unordered_map<ServiceConfig, HttpServiceHandler> serviceHandlerMap_;
struct event_base **baseGroup;
int serverPort;
std::string httpContext;
}
- -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/10/21/\346\221\206\350\204\261\350\264\253\347\251\267/index.html" "b/2019/10/21/\346\221\206\350\204\261\350\264\253\347\251\267/index.html" deleted file mode 100644 index 768202c..0000000 --- "a/2019/10/21/\346\221\206\350\204\261\350\264\253\347\251\267/index.html" +++ /dev/null @@ -1,661 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 摆脱贫困 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

摆脱贫困

- - - -
- - - - - -
- - - - - -

这是习近平于1992年出的一本书,记载了自己在闽东执政期间的一些理念和措施。

-

习近平还有另一本书,叫《习近平谈治国理政》,我对这本书并不感冒,大的口号并没有意义,见微知著, 魔鬼在细节,能掌控到什么地步,才是关键。

-

主要感觉有几点,1:实事求是,因地施政,2. 敬畏群众力量, 为人民服务。

-

实事求是,他一到地方,就各地去走访,边调查边思考,很有意思哈,有点像我买房子,没有调查就没有发言权,只有实地去感受,去谈去问才能有更贴切的结论,然后基于现实去调整政策,比如本地有什么特色啦,具体怎么做,发动力量想办法。最近有一篇文章,说扶贫形式主义,well,形式主义也好,至少还有人去传播这种理念,先富的,有资源的至少有尝试着去帮助贫穷的人。我不好评论在闽东的政治怎么,至少,我能感觉到脚踏实地去想办法。

-

为人民服务这句话在书里面,不止一次提到,扶贫也基本是贯穿整本书,也谈了不少廉政,宣传等工作,也是为了发动群众力量,所以不管执行的结果怎么样,在他的心里,这确实很重要吧。

-

我听说有人黑他学历不够,基础教育不深,我只能说,这真是为黑而黑了,书里的旁征博引,让我这河南读书考上985的学生都汗颜,没几个人能写出来这种文章的,好吧,何况还是1992年之前的他。

-

我其实很好奇,西方的治国理政理念是什么?像小丑一样的选举制度?每四年一次的政策大清洗?找一个商人或者律师来领导国家, 演员当市长??可能我读的真正比较细的治国的书,就是《美联储》了,我觉得美联储太简单粗暴了,即便是经济学大家的理论,一刀切也过于简单粗暴了,如果说美联储是一个一次函数,中国就是一个神经网络了,在一个大理念之下的各种因地制宜。 不过,我也听说美国有政务和事务两套系统,了解有限。

-

总的来说,继续看好中国, 同时期待继续加深对西方的了解。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/10/26/\350\257\273\350\264\247\345\270\201\346\210\230\344\272\211\346\234\211\346\204\237/index.html" "b/2019/10/26/\350\257\273\350\264\247\345\270\201\346\210\230\344\272\211\346\234\211\346\204\237/index.html" deleted file mode 100644 index 4b11b0f..0000000 --- "a/2019/10/26/\350\257\273\350\264\247\345\270\201\346\210\230\344\272\211\346\234\211\346\204\237/index.html" +++ /dev/null @@ -1,661 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 读货币战争有感 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

读货币战争有感

- - - -
- - - - - -
- - - - - -

看到电脑里面有这本书,很久以前似乎有人推荐过,就打开看了,200页,闲书,两天就看完了。

-

我并不喜欢这本书,或者说,我并不喜欢阴谋论,尤其我不喜欢最后关于黄金的看法,后来在网上看,嗯,看到大家都在骂他我就放心了。阴谋论……就像羽毛球,一招一式皆有法度,有的就是我能做到而你做不到,做好做不好。

-

凯恩斯的通论,就其基本理念来说,在我看来是不可动摇的,差不多是现在政府施政的基本理念了,还有把黄金说的就像这个世界的救世主一样,法币就是世界的阴谋…., 通货紧缩是比通货膨胀更可怕的敌人,好吧。

-

不过,如果说这本书有什么可取之处,那就是关于关于石油的那段阴谋喽,石油涨价400%,由此一举奠定了石油美元的地位,顺便收割东南亚各国。

-
1
2
3
这个计划最出彩的地方就是“嫁祸于人”,煽动埃及和叙利亚进攻以色列,美国再公开支持以色列来激怒阿拉伯人,最后阿拉伯国家一怒之下对西方国家实施石油禁运,石油价格一飞冲天,而全世界的怒气则全部发泄到阿拉伯国家身上,银行家们一面坐山观虎斗,一面清点着石油美元回流的钞票,一举挽回美元颓势,重夺金融战场主动权,顺手牵羊剪割拉美印尼等国。

石油价格暴涨使得拉美印尼国家的大量资金被高油价所吞噬,发展中国家要不停止工业化进程,无法偿还世界银行的过量贷款,要不就得向世界银行借更多的钱来购买石油和偿还巨额债务的本息。而世界银行的援助条件则是著名的“IMF四副良药”,国家核心资产私有化,资本市场自由化,生活要素市场市场化,自由贸易国家化,大部分国家喝下这几幅药非死即伤。
- -

不知道是不是真的,反正以色列是美国的跟班,以色列和阿拉伯世界的战争要是跟美国没有关系,我也不会信吧。美国与沙特深度结盟,进而打垮欧佩克,亚洲金融危机也是美国人搅动的,进而大赚特赚,韩国泰国近乎破产, 丧权辱国。

-

人为刀俎,这也是人家的权利吧。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/10/26/\351\207\221\350\236\215\346\210\230\350\264\245/index.html" "b/2019/10/26/\351\207\221\350\236\215\346\210\230\350\264\245/index.html" deleted file mode 100644 index b555e70..0000000 --- "a/2019/10/26/\351\207\221\350\236\215\346\210\230\350\264\245/index.html" +++ /dev/null @@ -1,676 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 金融战败 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

金融战败

- - - -
- - - - - -
- - - - - -

这本书是日本作家吉川元中的书,介绍了日本广场协议前后的情况,我对那段历史很感兴趣,看之前,我觉得如果贸易战战败的话,中国大概就是日本的样子,所谓失落的十年,不过,看着看着,我觉得不太一样, 莱特希泽的一架纸飞机直接击溃了日本,从此予取予求,中国嘛,至少在节节抵抗。

-

冷战期间,为了维持美元的强势地位(这就是美联储的目标??里根和沃尔克在唱和??),成就强大美国的形象, 以及货币主义者自由理论的影响,美国国债利率居高不下,大量的日元涌入购买国债(参见美联储1980-1984年的政策,不过沃尔克号称只是抑制通货膨胀),成为美元价值最有力的支撑。

-

经济繁荣无法掩盖贸易赤字,强势美元造就了企业的衰败,1985年9月,冷战相对缓和,为了解决贸易不平衡问题,五国财长达成了著名的广场协议,美元开始下调汇率贬值,1美元/240日元预期下调到1美元/200日元,然而现实是到1987年2月七国财长会议之后,到了1美元/150日元才告一段落。

-

然而贸易不均衡并没有得到很好到改善,美元贬值给非耐用性工业原材料带来了直接的好处,比如纸浆,一次性金属,化学品,纺织品,橡胶等。然而1989年之后,这些企业的出口又开始下降。而进口抑制有增无减,美国出口增加有限原因有几点, 1. 形成萎缩条件的未来不确定性,今天贬值,说不定什么时候升值, 2. 必需的人力,资金资源能否确保,3. 必需的技术水平能否确保。 这几点造就了汇率对贸易的影响不会很快有结果(简单来说,就是他们国家就不生产了,一时半会也不能开工,如果保有相关产业,可能影响就更大一些)。

-

美元的跌幅大大超出预期给日本企业带来严重损失,持有资产骤减40%,为了购买美国国债,日本企业经常用短期借贷的资金购买长期国债,由此带来现金流风险,同时贬值页也带来了巨大的亏损(这些企业真惨,国际利差赚不得),美国则大大减轻了债务压力,顺利实现经济的软着陆,自己一身轻松,太不地道了。

-

五国财长的协议,日本最惨,是有原因的。日本积极协助美国压力汇率,并且不无得意, 1986年美元大幅度贬值,日本美国利差相差已经不大,日本资金依旧大量购买美国国债,1987年,汇率达到了1美元/120日元,日本资金对美还流终于短暂下降,1988年,1989年又回复如初。据说原因1是大藏省的鼓励或者暗示,原因2是因为泡沫的虚假繁荣。<美元在不断的贬值,却还在不断的购买,中国目前也有类似的举动,是为了实现利益的深度绑定,从而维持自身的安全么?纵容美国的剥削??但是日本有这种顾虑么?还是政治上的压力?>

-

1987年之后,日本利率调整到了2.5%的超低水平,长久的低利率政策,加之为了控制日元升值,日本中央银行大量买入美元卖出日元导致日元供给过剩,过剩的货币被吸引到了房地产和股票市场,形成泡沫(中国股市低迷,我应该开心么?比起来投资股票房地产,购买美债看起来还更靠谱了,不过干嘛不购买英镑马克黄金呢?如果那个时间买入英镑避险,等市场崩溃,资产贬值,再回来收割是不是可以人生巅峰。热钱四溢,出逃才是王道,恭喜美国双杀)

-

1987格林斯潘就任美联储主席,美国独自开始提高利率到5.5%~6%。由此引发了黑色星期一华尔街崩盘,日本为了提振市场大举买入。其他国家如联邦德国只是稍微下调了利率,并且于1988年7月调整了上调利率,选择了和美元脱钩。当时的日本丧失了思考。

-

日本于1988年开始投资美国的地产,并且大批购买写字楼,宾馆,由此引发了美国的舆论反感,美国开始在银行层面抑制日本,日本的国际融资比例大幅下降。1990年之后近乎于0.

-

面对日本极高的房价和股票市场,美国和日本达成《结构协议》,强化了公司间相互持股的限制,为瓦解公司股价奠定了条件,同时鼓吹提高生活质量,增加土地供应,降低房价,对已经放出了巨量贷款的金融机构造成了致命的打击,造成了大量的不良债权,很多民众由此家庭破碎。土地调整的正常界限应该是最高价格的20%-30%,不至于产生不良债券,民众如果仍不满,还可以在经济增长中将高出的部分抵消掉。然而现实是跌破了50%以下,进入了不可收拾的局面。

-

1992年美国经济开始回复,1994年GDP增长率达到3.5%(以邻为壑), 日本经济则不景气,不良债权问题严重,劳动力成本上升,而且因为日元升值导致进口价格降低,开始通货膨胀,国内制造业难以生存.

-

1995年,沙特科威特等石油国终于无法容忍美元暴跌,墨西哥再度爆发资金外逃趋势,美国被迫援助,这种情况下,克林顿发起日元升值行动,威胁启用301条款制裁, 进入了美元升值,日元贬值的局面。缓慢流入美国的日本资金再度呈现激增的态势,美国以此弥补了收支赤字,并用剩余资金大举海外投资,重现80年代辉煌。而日本机构和民间则无法容忍超低利率,大肆购买美国的股票和证券。美国发动的亚洲金融危机,则打散了日本在亚洲国家的投资,得以继续想用日本的超低利率。

-

70年代,国际上不止日本打算推动本国对外资本输出(一带一路是必然喽?),一般来说,资本输入国到资本输出国,以该国货币举债,于是资本输入国则吸收了输出国多余的外汇储备,最终该国形成国际金融中心(中国会形成金融中心么?金融正在开放,正在向这个趋势发展?)。但是在日本举债成本高,日本的公司债注册制度成为阻碍。

-
1
尽管改革严格的外汇管理体制,取消金融的封闭自收不失为长期有效的国策,但却意味着日本的金融机构丧失既得利益,日本的大藏省会因此丧失在金融界中的影响力
- -

(无语,改革就会丧失影响力,政府是吃软饭的么?这就是自由的味道么?)

-

总的来说日本成为债权国时,未能建立起与之相适应的金融经济结构,过分忠于(??)华尔街,以至于形成泡沫,之后又在处理措施上失误(不好说哦,也许是没办法呢)导致了悲剧。美国则靠着日本过上了肥美滋润的日子,度过了冷战之后,强势美元之后的困难阶段,经济重新进入良性循环。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/11/12/\346\226\260\347\273\223\346\236\204\347\273\217\346\265\216\345\255\246/index.html" "b/2019/11/12/\346\226\260\347\273\223\346\236\204\347\273\217\346\265\216\345\255\246/index.html" deleted file mode 100644 index bee85ec..0000000 --- "a/2019/11/12/\346\226\260\347\273\223\346\236\204\347\273\217\346\265\216\345\255\246/index.html" +++ /dev/null @@ -1,663 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 新结构经济学 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

新结构经济学

- - - -
- - - - - -
- - - - - -

林毅夫,堪称一代传奇,听说他在国内贡献很大,影响很大,所以就决定看下他的作品和主张,《新结构经济学》,我觉得凭着他的这套主张,确实有资格成为非常非常有影响力的经济学家。

-

新结构经济学,主要探讨的是一个国家在发展自己经济的时候,应该如何甄别选择行业,如何扶持,一步步之间如何发展和升级,政商之间应该承担哪些责任。他提出的《增长甄别与因势利导框架》(GIFF)应该可以作为整本书的思想核心。

-
    -
  1. 发展中国家的政府可以确定一份贸易商品和服务的清单。这些商品和服务应满足以下条件: 在具有与本国相似要素禀赋结构,且人均收入高于本国约100%-200%的高速增长国家中,这些商品和服务的生产已超过20年。
  2. -
  3. 在该清单的产业中间,政府可以优先考虑那些国内私人企业已自发地进入的产业,并设法确定:(1)这些企业提升其产品质量的障碍(所有主政一方的人大概都需要了解吧);或者说(2)组织其他企业进入该产业的障碍。这些可以通过各种方法的组合来做到,例如价值链分析,或者Hausmann提出的增长诊断框架。然后政府采取措施来消除这些约束,并运用随机对照实验来测试这一过程的影响,以确保这些政策推广到国家层面的有效性。
  4. -
  5. 对国内企业来说,清单上的某些产业可能是全新的产业,或是很少从事出口的企业。这种情况下,政府可以采取特定措施,鼓励在第一步中确定的高收入国家的企业来本国投资这些产业,以利用本国劳动力成本低的优势。政府还可以设立孵化计划,扶持国内私人企业进入该行业。
  6. -
  7. 除了第一步中的贸易商品和服务清单确定的产业外,发展中国家的规模还应密切关注本国成功实现自我发现的其他私人企业,并且为这些产业扩大规模提供帮助。
  8. -
  9. 在基础设置落后,商业环境欠佳的发展中国家中,政府可投资于工业园区或者出口加工区,并且作出必要的改进,以吸引可能愿意投资于目标产业的国内私人企业或者外国产业,对基础设施和商业环境的改善可以降低交易成本,素锦产业发展。然而,由于预算约束和能力有限,大多数政府无法在合理的时间内为整个产业作出理想的改进。因此,集中于改善工业园区或者出口加工区的基础设施和商业环境,就成为一个更易于实现的选择。工业园区和出口加工区还有鼓励产业的聚集优越感。
  10. -
  11. 政府可以在第一步确定的产业清单中的国内驱动企业或者国外投资人提供激励,以补偿他们的投资所创造的非竞争性公共知识。这类措施应有时间的限制和财务成本限制。激励可以是一段时间内的企业所得税减免,或者是对合作投资的直接优惠,或是获取外汇的优先权,激励不应该也不需要以垄断租金,高关税或者其他扭曲的形式出现。寻租和政治捕获的风险可以由此避免。对于在第四步里通过自身努力成功发现新产业的企业,政府可以采取措施以认可他们对国家经济发展的贡献。
  12. -
- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/12/01/\344\272\262\345\257\206\345\205\263\347\263\273/index.html" "b/2019/12/01/\344\272\262\345\257\206\345\205\263\347\263\273/index.html" deleted file mode 100644 index b76af86..0000000 --- "a/2019/12/01/\344\272\262\345\257\206\345\205\263\347\263\273/index.html" +++ /dev/null @@ -1,704 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 亲密关系 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

亲密关系

- - - -
- - - - - -
- - - - - -

确实值得推荐的一本书,这本书科学的分析了男女在方方面面的不同,对常见的问题,观点进行了科学细致的总结,并有很多中肯的建议。

-

人际关系的构成

1. 亲密关系中人有归属的需要。

如果归属的需要无法得到满足,会发生各种各样的问题。个体需要的亲密关系无需太多,几个即可。归属需要得到满足之后,与其他人建立人际关系的内驱力就会小很多,只要能持续得到关爱和包容,归属感就能得到满足。一个可能的解释是:归属需要是长期演化的产物,成为人的自然倾向。

-
2. 四种依恋类型
2.1. 安全型:在感情上很容易接近他人,不会忧心独处和不为人接纳(我)
-2.2. 痴迷型:希望在亲密关系中投入全部的感情,但是经常发现他人并不乐意把关系发展到自己期望的那般亲密。没有亲密关系会不安,还担心伴侣不会想我看中他一样看中我(如我父亲)
-2.3. 恐惧型:和他人亲密接触使我不安,感情上渴望亲密关系,但是很难完全相信或者依赖别人,担心自己会受伤
-2.4. 疏离型:没有亲密关系和安心,独立和自给自足很重要,不喜欢依赖别人,或者让人依赖(妙玉?)。

3,4两种属于回避型。

-
3. 刻板印象夸大了男女在兴趣,风格,能力上的差异。

从统计情况来看,1. 两性差异确实存在,但是非常小。2. 男人或女人性别内的行为和观点差异远大于两性之间的平均差异。3. 两性的行为和观点正态分布上重合非常大。

-
4. 性认同差异

    遗传在决定人们的自信和友善倾向时,只起到四分之一或者三分之一的作用,大部分行为都是后天习得。
    与任务相关的“男子气”的才能称为“工具性”特质,把社交情感有关的“女人味”技能称为“表达性”特质。表达性低的人不太容易付出热情和温柔,也不怎么充满深情,长期来看,与表达性低低配偶结婚就不如与更敏感贴心和友善低人过的满意。另一方面,低工具性的人往往不如高工具性的人自尊程度高和适应能力强(适应能力强的,不应该才更容易宽容和放低姿态么)。
    人是高度社会化的动物,如果他人不喜欢我们,我们要喜欢自己非常困难。低自尊低人有时会低估伴侣对他们对爱,从而损害亲密关系,还觉知到根本就不存在到漠视。自我评价低到人很难相信伴侣真的深爱自己,往往对爱情能否持续不乐观,又使他们对伴侣偶尔的糟糕情绪反应过度,防御性的把自己隔离起来,生闷气,乱搞一通,还觉得自己更加糟糕。
    演化学认为,女性在选择伴侣时,比男性谨慎的多,男性则不会这么苛刻。男人比女人更渴望短期性关系。更嗜好与多个伴侣保持风流关系。然而男人想结婚安顿下来则偏好贞洁的女人。在长期关系中比女人更看重外表。女人选择短期伙伴时候,更看重性感,强势,有魅力等。评价有潜力的丈夫时,都把经济前景当作首选。

-

2. 研究方法

    亚里士多德认为人是社会动物,并认为有三种不同的友谊

-
1. 建立在功利基础上的友谊
-2. 建立在快乐基础上的友谊
-3. 建立在美德基础上的友谊

    如果有人发出实际的邀请,男性比女性更容易接受陌生人的性邀请。

-

3. 吸引力

吸引的几种模式 1. 互补性,2. 喜欢相似的人,3. 仰慕
    人与人之间产生吸引力最基本的假设是:他人出现对我们有奖赏意义。影响吸引力的奖赏有两种类型,直接奖赏和间接奖赏。直接奖励:如果他人给我们大量的兴趣和赞许,我们会对这种关注和接纳感到非常高兴。如果他人能给我们金钱和地位,我们会更乐意接受这些好处。
    相似产生吸引力。1. 人会觉得年龄,种族,教育程度,宗教信仰和社会地位等人口统计上的相像。2. 态度和价值的相像。3. 伴侣还可能有着相似的性格。
    大多数人都更喜欢自己。吸引力的确与我们认知到的他人具有的吸引力特质有关,也还取决于我们的需要,偏好,愿望和所处的情境。人更容易喜欢周围的人,频繁的与人接触不仅能使交往更方便,还会是你让对方觉得更有吸引力。文字和声音中表达的爱意不如脸颊的一吻更打动人。遥远的伴侣一起生活三个月之后,大约有三分之一分手了。
    人认为外貌俊美的人更讨人喜欢,更好相处。男性英俊但是贫穷对女性则不那么有吸引力。
    自我监控能力高的人热衷于调整自己的行为一边给人留下好印象。相反,自我监控能力弱的人则尽力恪守自己的信念和愿望。
    确定爱情关系的伴侣,双方在吸引力上是非常接近。亲密关系越正规严肃,投入程度越多,匹配程度就越明显。名望财富健康才能长相等都像商品一样能用来吸引自己的伴侣,是吸引力的一部分。人们似乎注意到别人接纳和喜欢自己的可能性,更可能与那些愿意接纳而不是拒绝自己的人接近。女人如果确实拥有很高的社会地位,会更加喜欢资源丰富,强势彪悍的男人。
    故作幽默或轻浮的一句话,可能是最糟糕的开场白。简单的问好不显得做作或者鲁莽,是最聪明的搭讪方法。
    两个人相识之后,需要一段时间充分了解彼此的共同点和差异,我们会期望对方具有和我们相似的态度和价值观。某种程度上,人们似乎是和幻想中的伴侣结婚,他们爱上的一种人,确认为自己的伴侣就是这种人。

-

4. 社会认知

4.1 伴侣的理想化

    保护自己免遭幻想破灭的聪明办法是:不断调整自己对理想伴侣的期望,某种程度上,人能随心所欲决定自己伴侣已拥有的品质正是自己的期待的,伴侣一般也清楚我们在美化他们,作为回报,我们也从伴侣那得到积极善意的认知评价(也有自我实现的因素?)。

-
4.2 归因过程
4.2.1. 尽管伴侣之间有着深入了解,仍收到强烈的观察者效应。对自己行为的解释,和伴侣对类似行为的解释完全两样。最保险的策略是在心里这样假定:即使是最亲密的伴侣也很少真正理想你行为的原因。
-4.2.2. 尽管伴侣间存在真爱,也可能出现自利偏差。成功归于自己,推卸失败的责任。人可以估计到他人的自利偏差,而看不到自己也有偏差。人会习惯性的作出自利的解释。
-4.2.3 幸福的爱人对伴侣行为的归因都是能改善关系的,认为伴侣的积极行动都是刻意的,习惯的,还能据此推断伴侣其他情境下的行为,也倾向于淡化彼此的过失,认为是偶然的,特殊的,局部的,从而得到谅解。不幸的伴侣则认为伴侣的负面行动都是故意的,习惯的,正面行动是无心的。安全型的人倾向于宽容的采用改善关系的归因,而不安全的人则更悲观。高忧虑被弃的人更容易责备伴侣的不当行为,而回避型的人,对伴侣的体贴行为根本不放心上。
4.3 记忆

    心理学家用重构性记忆来描述随着新信息的获取不断的修订和改写记忆。伴侣目前的感情影响共同往事的回忆。如果幸福,倾向于忘记过去的不快,如果痛苦,则低估过去的幸福和情谊。好的一面是,满意的爱人会记得过去发生的问题,但是最近都得到了改善,所以比过去更幸福。陷入危机的夫妻回忆则更多是混乱和失落。

-
4.4 关系信念
4.4.1   争吵具有破坏性--争吵就表明伴侣爱自己还不够深,如果彼此深深相爱,就不会发生任何争执
-4.4.2   “读心术”很重要--真正彼此关爱的伴侣仅凭直觉就能知道对方的需要和偏好。如果必须告诉对方自己的想法和愿望,说明伴侣爱自己不够深
-4.4.3   伴侣是不会发生变化的--一旦亲密关系变糟,就无法得到改善,如果爱人曾伤害自己,就还会一再伤害
-4.4.4   每一次的性生活都应该是完美的--只要爱情是忠贞的,每一次的性生活都应该是令人满足的。伴侣应该经常渴望并为性生活做好准备
-4.4.5   男人和女人就是不一样--男人和女人的性格和需要非常不同,很难真正理解对方
-4.4.6   美好姻缘天注定--根本无需努力维护美满的夫妻关系。夫妻要不彼此脾性相投,快乐到老,要不格格不入,争执一生。

    要警惕以上六个观点。当出现问题时,持有这些观念的人不会采取建设性的行动来改善关系。相信爱情天注定,就不会去解决问题,只是逃避问题,更愿意结束不幸福的关系,而不是努力去修复亲密关系。
    浪漫的情侣比不浪漫的情侣体验到更多的爱意,满足和忠诚,但是现实中的亲密关系,很难满足浪漫主义的期望。

-
4.4 期望

    关系信念对亲密关系性质的设想,即使是错误的,也会延续下去。人期望他人作出特殊行为,即使这些期望是错误的,后来却能变成现实。这就是自我实现的预言。对他人的期望会引导我们对他人作出的行为,具有促进作用。长期对他人持有不同的期望会逐渐创造出不同的社会环境。忧虑被人拒绝的人往往更可能遭人拒绝。相信自己能克服困难的期望会显得信心十足,也让问题更容易处理。

-
4.5 自我认知

    人们不会愿意和与自己看法有争执的人住在一起,每天面对矛盾的观点会让人身心疲倦,厌恶透顶。
    从自己非常熟悉的人那里得到来过分称赞的评价,会让自己不安,并认为对方很虚伪。

-
4.6 印象管理

亲密关系之间的印象管理有三个特点。
4.6.1 尽管给好友或者恋人的印象比熟人或陌生人更为重要,但是我们在前者花的时间不如后者。
4.6.2 亲密关系确定之后,人们会费心为自己好友营造讨人喜欢的公共形象,尽可能美化好友形象。
4.6.3 会把他们的亲密关系以某种特殊形象呈现给别人。
自我监控能力高的人通常能快速转变形象适应不同的人群,周围有很多专家朋友,而监控能力弱的人的朋友屈指可数且大多相似(我?前者?)。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2019/12/15/\346\267\261\345\205\245\347\220\206\350\247\243C-11/index.html" "b/2019/12/15/\346\267\261\345\205\245\347\220\206\350\247\243C-11/index.html" deleted file mode 100644 index 71e3931..0000000 --- "a/2019/12/15/\346\267\261\345\205\245\347\220\206\350\247\243C-11/index.html" +++ /dev/null @@ -1,741 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 深入理解C++ 11 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

深入理解C++ 11

- - - -
- - - - - -
- - - - - -

1 保证稳定性和兼容性

1.1 保持与C99兼容(STDCHOSTED_, STDC, STDCVERSION__)
1.1.1 C99中的预定义宏
1.1.2 func预定义标识符
1.1.3 _Pragma操作符
1.1.4 不定参数宏定义以及 __VA_ARGS
1.1.5 宽窄字符串链接
1.2 long long 整型
1.3 扩展整型(signed char, short int, int, long int, long long int)
1.4 宏 __cplusplus 用于C和C++混合编写
1.5 静态断言

断言有助于快速定位违反了某些前提条件的程序错误, assert 只能在程序运行的时候才起作用。static_assert用于编译时候用的断言。

-
1.6 noexcept 修饰符和 noexcept 操作符

noexcept 表示修饰的函数不会抛出异常,如果抛出了异常,编译器直接调用std::terminate()终止运行。

-
1.7 快速初始化成员变量

C++ 11 中,标准允许非静态成员变量的多种初始化形式。具体而言,除了初始化列表之外, 还允许使用等号=或者{}进行就地的非静态成员变量的初始化, 通过花括号式的集合初始化列表。

-
1.8 非静态成员的sizeof

struct People {
public:
int hand;
static People *all;
}
支持 sizeof(People::hand), sizeof(People::all), sizeof((new People()).hand)

-
1.9 friend 友元

可以无视 public, protected, private的属性,友元类或者友元函数都可以访问

-
1.10 final/override 控制

final 关键字用于阻止函数继续重写,使派生类不可覆盖它所修改的虚函数。
如果派生类在虚函数声明时使用了virtual描述符,那么该函数就必须 override 重载基类中的同名函数,否则代码无法编译通过。

-
1.11 函数模板的默认模板参数

template class DefClass{}; int 就是默认参数
template <typename T, int i = 0> class DefClass{}; int 就是默认参数
为多个模板参数指定默认值时候,必须遵照从右到左的规定指定

-
1.12 外部模板

声明:extern templat void fun(int), 使用extern声明,不会再实例化代码,而是引用外部的模板声明。也可以把外部模板声明放在头文件中,这样所有包含test.h的头文件中就可以共享这个外部模板声明了。就好比全局变量的定义,外部声明和使用。

-
1.13 局部匿名类型作为模板实参

可以使用局部的结构体,变量,匿名的结构体和变量 传递给 模板类和模板函数

-

2. 通用为本,专用为末

2.1 继承构造函数

可以使用 using Base::Base 的方式把基类中的构造函数全部集成到派生类中。也可以通过 using Base::f 的方式,继承某一个具体的方法。在多个基类,继承构造函数冲突的时候,可以通过显示定义构造函数,阻止隐式生成响应的继承构造函数。

-
2.2 委托构造函数

原则上编译器不允许构造函数中调用构造函数。 Info(char e): Info() { name = ‘e’}, 也就是说,在初始化列表中进行构造,委派。

-
2.3 移动语义和完美转发(这块好trick,反正也用不到, 有uniptr替代)
2.3.1 指针成员和拷贝构造
1
2
3
4
5
6
7
8
9
class HasPtrMem {
public:
HasPtrMem(): d(new int(0)) {}
HasPtrMem(const HasPtrMem & h): d(new int(*h.d)) {}
~HasPtrMem() {
delete d;
}
int * d;
}
- -

HashPtrMem a; HasPtrMem b(a); a.d 和 b.d 都指向了同一个内存,C++中被称为浅拷贝。

-

解决办法就是 去掉构造函数中的 const(关于这块,要继续了解const的作用, 正常操作,好像也不会加const吧)

-
2.3.2 移动语义
1
2
3
4
5
6
7
8
class HasPtrMem {
public:
HasPtrMem(): d(new int(3)) {}
HasPtrMem(const HasPtrMem &h): d(new int(*h.d)) {} // 注意这里还是const,也就是还是原来的内存,并没有新new
HasPtrMem(HasPtrMem && h) d(h.d) { // 移动构造函数
h.d = nullptr; // 将临时值的指针成员置空
}
}
- -

因为移动构造完成之后,临时对象会立刻被析构,如果不改变 h.d,析构函数 会析构掉我们本来偷来的堆内存(那如果a = b的时候,也会发生移动构造吧,b的内存会被偷走,也就是说,这里其实也是坑)。

-
2.3.3 左值,右值,和右值引用
    -
  1. 可以取地址的,有名字的,就是左值,不能取地址的,没有名字的,就是右值。
  2. -
  3. T && a = ReturnValue(), ReturnValue 本来在返回右值之后,就将析构,而通过右值引用,有重获新生,生命周期将与a一样
  4. -
  5. T b = ReturnValue(), b 只是由临时值构成的,而临时值在表示式结束之后,会多一次析构和构造的开销
  6. -
  7. 右值引用不能绑定到任何的左值的。
  8. -
  9. 常量左值引用是一个万能的引用类型,可以接受常量左值,非常量左值,右值进行初始化,但是其引用的右值在余生中只能是只读的。可以使用常量左值引用来减少临时变量的开销。
  10. -
  11. std::move的作用,把一个左值强制成为右值, Copyable news = std::move(s), 如果s中包含一些一些大块内存指针,news 就可以把内存窃为己有(s自身不可以再使用)
  12. -
-
2.3.5 移动语义的一些问题

通常情况下,如果需要移动语义,程序员就小自己定义移动构造函数

-
2.3.6 完美转发

完美转发是指:函数模板中,完全依照模板的参数类型,将参数传递给函数模板调用的另一个函数,比如 template void IamForwarding(T t) {IrunCodeActually(t)}, 这里产生了额外的对象拷贝,如果用常量左值(const T & t)来,则可能有无法接受常量左值的函数存在
template void PerfectForward(T && t) { RunCode(forward(t))}

-
2.4 显式转换操作符

explicit 禁止隐式转换

-
2.5 列表初始化
    -
  1. int a[] = {1, 2,3}
  2. -
  3. int b[] {1, 2, 3}
  4. -
  5. vectorc {1, 2, 3}
  6. -
  7. 可以通过 initializer_list使自定义的类使用列表初始化
  8. -
  9. POD 类型, Plain Old Data,平凡数据,默认的构造函数,析构函数,默认的拷贝构造和移动构造函数,拷贝赋值运算符和移动赋值运算符,没有虚函数和虚基类,标准布局,没有privat
  10. -
  11. 内联名字空间 允许在父空间定义或者特化子空间名字的模板, inline 相当于 将名字空间导入到父空间中
  12. -
  13. 可以用typedef 和 using 来定义模板和域的别名, using uint = unsigned int;
  14. -
-

3 新手易学,老兵易用

3.1 右尖括号 > 的改进

C++98中,如果实例化模板的时候,出现了连续两个 >, 中间应该用空格隔开,以免编译错误,C++ 11 会要求编译器智能的判断哪些情况下>>不是右移符号。 X< 1>> 5>x, C++98中, 会认为 >> 是位移符号,最终得到 X<0>x, 而在C++ 11中会得到一个编译错误的警告,将第一个> 与 X之后的<匹配, 可以通过将 1 >> 5括起来

-
3.2 auto类型推导

auto声明变量的类型,必须由编译器在编译时期推导而得,可以将复杂的变量声明简化,增加可读性(存疑,理解代码时候,需要自己推导类型),能够自适应,一定程度上支持泛型的编程。

-
    -
  1. auto 并不能从初始表达式中保留CV限制符
  2. -
  3. auto 并不能作为形参
  4. -
  5. auto i = 1, j = 4.13f, 编译失败, auto 从左到右推导 i 为int 所以j 也定义为int,标准称:auto是将要被推导出的类型的占位符。
  6. -
  7. 对结构体来说,非静态成员的类型不能是auto,不能声明auto 数组
  8. -
  9. 不能实例化时候,使用auto作为模板参数
  10. -
-
3.3 typeid 与 decltype
3.3.1 RTTI,运行时类型识别

在C++11中,增加了 hash_code,返回该类型唯一的哈希值,以供程序员对变量的类型随时进行比较。((typeid(a).hash_code() == typeid(c).hash_code()),RTTI会带来运行时的开销,所以一些编译器会选择性的关闭该特性。

-
3.3.3 decltype 推导四原则
    -
  1. 如果e是一个没带括号的标记符表达式,或者类成员访问表达式,那么decltype(e) 就是e所命名的实体的类型,如果e是一个被重载的函数,会导致编译时错误
  2. -
  3. 如果e的类型是T,如果e是一个讲亡值,那么decltype(e)为T&&
  4. -
  5. 如果e的类型是T,如果e是一个左值,则decltype(e)为T&
  6. -
  7. 如果e的类型是T,则decltype(e)为T
    3.3.4 如果对象的定义中有const或者volatile限制符,使用decltype进行推导时,其成员(结构体内部变量)不会继承const或volatile限制符
    3.5 基于范围的for循环
    for_each(arr, arr + sizeof(arr) / sizeof(arr[0]), action1)
    for (int & a: arr) {}
    如果迭代变量在循环中不会被修改,完全可以不用引用的方式来做迭代变量
  8. -
-

4. 提高类型安全

4.1 强枚举类型 enum class Type
    -
  1. 强作用域,不会被输出到父空间作用域
  2. -
  3. 转换限制,不可以与整型隐式的互相转换
  4. -
-
4.2 智能指针和垃圾回收
    -
  1. unique_ptr 与所指对象的内存紧密绑定,不能与其他unique_ptr类型的指针共享所指的内存,所有权仅能通过move来转移,一旦转移成功,原来的unique_ptr就失去了对象内存的所有权。
  2. -
  3. shared_ptr 允许多个智能指针共享的拥有同一内存, 调用reset只会降低引用计数,而不会释放,只有在引用计数为0的时候,才会释放所占的堆内存的空间。
  4. -
  5. weak_ptr 可以指向shared_ptr指针所指向内存,而不拥有该内存,使用lock可以返回其指向内存的shared_ptr对象,如果堆存对象无效的时候,返回空指针。
  6. -
- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2020/02/08/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\270\200\347\257\207/index.html" "b/2020/02/08/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\270\200\347\257\207/index.html" deleted file mode 100644 index fb0f61d..0000000 --- "a/2020/02/08/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\270\200\347\257\207/index.html" +++ /dev/null @@ -1,766 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 美国与中国 第一篇 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

美国与中国 第一篇

- - - -
- - - - - -
- - - - - -

第一篇

1. 中国社会的本质

1.1 社会结构
-

旧中国是世界上以上层阶级统治多数人的一大典型,城乡二元分裂。社会单元是家庭而不是个人,家庭生活灌输孝道和顺从,培养一个人以后终于统治者并且顺从国家政权的训练基地。儒家强调三纲,君为臣纲,父为子纲,夫为妻纲。熟悉和习惯家族制度的中国人,在官吏等级森严的政府机构内,也乐于接受类似的地位尊卑制度,德国社会学家形容中国为“家族结构式国家”

-
-
1.2 士绅阶层
-

中国的士绅可以按照经济和政治两重意义来理解。传统的士绅是通过考试,举荐,捐钱取得功名的个人。作为个人的士绅是公家官员,掌管政治和行政事务。同时也是出于家族关系中的成员,依靠家族关系维持生计,所以他们广义的应该被视为家族。在百姓大众眼里,士绅还应该包括大地主,合适统治阶级的经济基础。穷人可以凭才学成为狭义的士绅,大多数情况下,有科举功名的人总同地主家庭有关系。士绅家族在当地充当领导地位和管理职能,政府放弃了对城镇集市的官方管理。++县官只有通过与当地士绅合作才能进行治理++。

-
-
-

中国的考试制度显得异常公允广泛,表明中国的统治者是真正需要真才实学的人来维持有效的行政机构的。但是这个无私的制度选拔出最优秀的人之后,做官的人可以凭个人做主施政,遵循的是注重个人品格的“道德原则”,而不是“法治精神”。

-
-
-

官员,地主,士大夫构成了统治阶级,有土地有剩余农产品的家庭,可以让儿子有余暇读书成士。士人读书后可以通过考试做官。官员可以从衙门油水维持生活,置田买宅。

-
-
1.3 资本主义的不发达与商人

美国人迫切想知道为什么中国的商人阶层不能冲破对官场的依赖,产生独立的创业力量。

-
-
    -
  1. 按照古典经济学的说法,经济生活中人要通过生产谋取最大的好处,获取利润。但是中国的传统不是靠增加生产,而是靠增加已生产的产品的份额。
  2. -
-
-
-
    -
  1. 官商之间总可以找到密切的共同利益点,政府的保护好支持迷不可少(今天不也是吗?国内外不都是吗?)商人可以通过购置田产,捐功名,通婚跻身士绅阶层。中国不想欧洲,没什么对外贸易可供商人投资(我觉得这个才是本质,没有对外贸易,对内全盘政府接管)。
  2. -
-
-

2. 孔孟之道

2.1 儒家原则
-

西方学者认为它主张忍耐(佛,伊斯兰,基督都这样),平和以及妥协等美德,主张中庸之道,主张守旧和知足,主张尊崇祖先,老人和饱学之士,最主要的是主张温和的人本主义,以人而非上帝作为宇宙的中心。(为社会稳定有序服务,但是缺少人文关怀)

-
-
-

儒家思想力图使每个人都变成有道德的人,随时以理想坚持德行,反对人类的谬误。而改革朝政的热情和坚持信念的动力,是为了重申和维护传统的政治形态,而不是改变它的基本前提。

-
-
-

儒家强调君王必须有道的理论基础,要顺应天时,广行善事,维持人与自然的协调。行为端正几位有德,以礼持约,本身这件事情就能给人以道德地位和威望。端正的行为赋予统治者以权力。儒家给现政权行使威权提供了一种理性的和伦理的依据。

-
-
2.2 经学正统
-

四书的训诫把父道政府描写成安邦家国的关键。理学比古代经传更为完整,并且因重新解释古代经典著作而富于儒家思想更多推理的内容,从佛学吸收了肯定唯心主义的成分,提供了对生活问题的更多解答。主张性本善表述在著名的《三字经》开头几句话里,是中国世世代代孩童最早学习的书,这就难怪西方传教士关心原罪的忧郁思想,难以战胜乐观的儒家观点。政治上,理学家认为君王应该了解真正的治国之道,通过道德上的自我修养成为圣人。研读经书和考试制度车鞥为灌输儒家忠孝原则的有效工具。

-
-
2.3 中国式个人主义
-

自古以来的修养,是指人要生活在“众人之中”,同他周围的人建立适当的关系,按照道德原则来生活,以实现他的个性。孟子曰:“父子有亲,君臣有义,夫妇有别,长幼有序,朋友有信”。王阳明反对理学,提出人都有的公共道德天性(良知),每个人在自己内心里都有直观的道德知识。他有成为圣贤的内在可能性。因此他的任务就是完成道德上的自我革新。主要通过学习才能做到,而学习应包括思考,反省以及不断的寻求真理,不仅要背诵基本原则,而是要依赖个人实践。

-
-
2.4 科学的不发达
-

西方的科技实际上只是晚近才出现的事。1900年以前,西方的实际医疗成就没有超过中医。17世纪末,儒家学者开始对古代经籍和其中的教条持有一种较为实用好批判的观点。这种叫做“汉学”与“宋学”相对立,是以批判方法治学的总的运动的一部分,然而他们仍未能冲破儒家思想的藩篱,不甚关心物质技术。科学发展的另一个阻碍是中国学者未能制订出一套比较完整的逻辑体系,使人们能够以此概念来检验概念,并系统的将一种陈述与另一种陈述对比。一般来说,中国人之所以落后是由于缺乏动机而非缺乏能力,是由于社会条件而非天生才智,2000年来中国政治生活中孔孟思想格局造成的根深蒂固的惯性。

-
-

3. 异族统治与朝代更迭

田中义一和土肥原贤二支流说来可悲,他们把中国的历史研究的太到家了,但是没有研究到最近。现代中国民族主义是历史上的新兴力量,蒙古人和满洲人过去的辉煌征略场景,再也不能再今天重演了

-
3.1 游牧民族的征略
-

中国遏制游牧民族入侵的措施,是秦始皇连接万里长城(遏制小鼓骚扰,禁止通商),之后或是通过防御性的出击,或是通过行贿纳币,或者通过外交活动或者谈判(也包括离间),入侵的游牧民族发现他们只能按照中国的方式才能统治中国,继承天命的人按儒家原则办事,不管谁来都行。

-
-
3.2 头几个中外帝国
-

契丹地跨草原和农耕地带之间,兼有游牧骑兵的武力和农耕区的经济力量。耶律家族采用了中国世袭君主制以及儒家的治国方式。结果出现了双重性的国家,南部是中国式的,背部是夷狄式的,金国也是同样的格局。这些夷狄国家的成就只限于军力而不在于文化,其历史意义主要是作为未来灾祸的前奏。中国的蒙古人只是大蒙古帝国的一部分,他们的道德准则和法治都异于中国(中国的统治更多是由士绅阶层维持,上层变动无法动摇这点),因而蒙古人未能而满族人却能巩固并利用儒家思想体系已达到他们目的。

-
-
3.3 满人的成就
-

虽然他们按照中国方式施政,他们异族渊源和背景却有助于他们在统治集团内保持政治上的青春活力。满人于1644年征服中国的主要原因,是他们入住中国时已掌握了儒家的治国之道,并使他们自己的政治制度与之相适应(所以说李自成是不是崛起太快了,以至于没有准备好),对于他们来说,只要一心注意中国问题就行了,这一点不像蒙古人(元顺帝也是才能有限)。为了保持皇朝活力,他们封闭老家,禁止汉人移入(所以有后来创关东之说?),把满洲组织在一个满洲军政府治下。在民政管理上,采用双重任命制,一个能干的汉人做实际工作,一个忠诚的满人监视他。为了吸收最能干最有前途的汉人效劳,满人注意使考试制度继续实施,并且尽可能受人重视,尽可能行之有效。

-
-
-

这种异族统治并未削弱而是加强了儒家的思想传统,这让人认为中国的文化势必民族主义更为基本的东西,放在了一个普遍的,而不是某个地区某个种族的水平(基辛格也认可)。异族统治产生了有趣的现象:19世纪中国进入现代世界时,在民族主义精神方面,显得特别落后,然而在20世纪革命中,他们对自身文化,或者文化素养的世代相传的自豪感激起了一股新的“文化民族主义”,这在将来可能会胜过那些发生在欧洲的政治上的民族主义。中国总是坚持两大政治信念:中华帝国是统一的(基于这种理念,所以唐定南方,西蜀,明朝北伐,解放军解放南方都很轻松,而元灭金灭宋灭夏,清定南方就很艰难),它比一切外国优越。

-
-
3.4 朝代的盛衰周期
-

研究中国历史之后看今天的中国,你就会觉得,孙中山,蒋介石,毛泽东相继夺取政权,并组织政权的努力是一个古老主旋律的变奏。朝代的衰微是和通知家族的日益无能一起出现的。有人用经济史观来解释朝代循环,每个朝代不纳田赋的土地越来越多,而田赋是政府岁收和权力的主要来源。统治阶级能够逐步增加他们的田产,并用各种手段不缴田赋,而仍纳税负的农民土地税负越来越重,结果就发生了农民骚动(明朝就是这样,所以有说法说“明亡于东林党”,今天是不是也这样,资产阶级想尽办法避税,贫民税收越来越重)

-
-

4. 政治传统

4.1 官僚体制
-

旧中国皇朝统治是发展的最彻底最巧妙的官僚体制,对新近才碰到官僚政治问题的美国人来说(震惊),中国人怎么样避开官僚政治传统的坏处而又利用其好处,是个颇有趣味的问题。

-
-
-

北京气派宏伟的对称布局显示统治者为中心的堂皇气象。官僚政治的原则一般是一个官员制约另一个官员,一个人出名后,常常派他兼管多职,使他哪个职务也不能完全主持,同时也派很多人完成同一项任务,使谁也不能完全加以控制。使之互相制约。督查院选56名御史,分驻各省的15个道,向皇帝上奏朝廷与人民利益的一切事务。还发明了一种“宫廷奏折”,只能由皇帝亲自拆阅,这样整个官场都是统治者的密保人员。官僚制度弊端是事情都由底层发动,层层上报由皇帝决定,下级官员提出的创新或者没有先例的意见既不易上达又危险,唯命是从比较安全,容易扼杀下层主动性。最上层的也因工作效率忙不过来而受不利影响。现代中国仍受这一传统之害。

-
-
-

官员必须对治下发生的一切公众事件负责,而不必对公款负责,预算和会计手段是非常简陋的,官员靠我们称之为“系统化贪污”行为来谋生。中国官僚制突出特点是“勒索”和任人唯亲,这是彼此起加强作用的孪生制。

-
-
4.2 法律
-

西方,个人可以求助于法律,对抗官员的专擅。古代中国人认为人的行动必须合乎天理,统治者的职责是维护这种协调统一,统治者是以懿形美德而不以法律影响百姓,认为通晓事理的文明人会受到榜样和高尚行为的指引,而不需绳以法规(借口,是因为不需要,贫民在德治的情况下能维持差不多的稳定而不用严格依赖法律),只有对那些野蛮人,未开化的人才需要实行惩罚而使其愉服(跟西方所谓异教徒说法一个调调)。理论上,赏罚总是为保证人们循规蹈矩的次要手段,目的是“以罚止罚”。孔子认为,法律条文是道德精神的一种表现形式,法律从属于道德,它之所以获得认可,是在于理性。百姓尽量避免打官司,到了那里,原告和被告受审时要先按规定形式打板子,而且谁都必须给衙役使钱。正当理由是属于政府和社会秩序的,是从政府下达到私人的上下关系,而不是为了无所偏袒的解决私人间的纠纷。总之,法律是不断斗争中维持道德秩序的手段,主要是为国家和社会利益服务的,纠纷尽可能由村长,乡邻,士绅来调节,使他们不致涉诉。这一点与没有资本主义和缺乏独立的工商阶级有关。

-
-
4.3 宗教

孙中山曾抱怨他的同胞像“一盘散沙”(小农经济和政府刻意的结果)。普通人对政府是特别消极的态度,对国家事务不负责任。对家庭忠诚而不顾公共利益,一丝不苟的执行按照惯例必须履行的责任,而对陌生人的疾苦漠然置之。

-
-

道教表示了平民百姓的自然主义宇宙观,以及对看不见的自然精灵的信仰,提供了逃出儒家思想的出路,每当读书人对过分严格的礼教和经籍心生反感时,道教都有所发展,是摆脱世间繁琐事务的避难所。儒家主张遵守礼法,道家用消极的哲学来回避矛盾。

-
-
-

佛教最早信条之一是生命轮回,人生是痛苦的,并且不仅限于今世,万物皆有因果循环中的他物锁定,今生的苦难来自某些前因,消灭了前因就可能消灭苦难本身。故情欲源于知觉,知觉源自六根和接触等等。因此佛教徒的目的,就是要斩断轮回,斩断把人束缚在情欲爱中的因果链。大乘佛教提出了涅槃这一积极教义,只是佛教徒力求达到的境界。佛教给了旧社会的崩溃提供了解释和安慰,在理智上是能够打动人心的,在美学上也能够令人满意。在中国本土发展的教派中,最出名的是禅宗,他们是通过参禅来求得悟道的(闭上眼能想到个啥?)。

-
-
-

无论佛道都未能摆脱世俗权力约束而取得独立地位。官员总是把佛教置于严密控制之下(佛教徒不事生产,占有土地,并不讨喜)。

-
-
4.4 中国的人文主义
-

中国关于人口密集社会和家庭生活的长期经验产生了一套公认的行为规则。个人必须接受竹器和蔬菜(竹器是什么? 排斥大鱼大肉倒是好像有)的物质生活标准,这培养了俭朴美德。珍视个人的诚实,勤奋和节约。也接受佛教提倡的满足微薄的享受和克欲的美德。中国古语说“知足者常乐”。生活中特别关心礼节,个人承认社会风俗的力量并使自己屈服于这些习俗。敬老,尊崇前辈,俯首听命于家庭(个人无法对抗家族)。中国式的人文主义包括关心个人尊严的问题,“面子”是社会性的问题,“丢面子”来自行为失检,是别人看不起自己。

-
-
-

这一切意味着,一个人的好坏主要看他对社会福利和安定是否有贡献,个人是不受赞扬的,既不是唯一的,永存的,也不是世界中心(缺乏人道关怀)。重视个人的自我表现,很容易流于放纵和无政府主义,所以中国的传统强调社会行为。妥协,容忍,达观和幽默感(有幽默感吗?),关于人性的透彻了解,通过律己养成品格,所有这些行程了个人追求好社会所赞许的部分道德结构,使每个人在社会生活中获得动力(西方是不是就有点过分个人主义了?),这纵容了家长式统治,容许了高度的专制主义。但是由于中国社会试试照顾到人与人之间的关系和社会安宁,这种专制主义有所缓解(道德的彼此约束)。

-
-
4.5 民间教派和农民起义
-

中国人三大类型超自然神灵。 1.祖先,2.各式各样的地方神与朝廷相似,但是属于超自然,3. 鬼灵精怪则相当于不能适应环境的人,流浪者和陌生人。民间教派可能借用了道教,摩尼教或者佛教的信条,预言大祸或者天谴降临,带有千年后赐福的思想。非法的宗教流派与三合会不同,后者虽然反朝廷,但是对社会秩序有正统思想。非法宗教派别则持有异端邪说,狂热的追求社会平均,带有破坏性和无政府主义色彩。当人民生活越来越艰难时候,民间教派可能会产生狂热,掀起暴乱。

-
- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2020/02/09/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\272\214\347\257\207/index.html" "b/2020/02/09/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\272\214\347\257\207/index.html" deleted file mode 100644 index 38bc41e..0000000 --- "a/2020/02/09/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\272\214\347\257\207/index.html" +++ /dev/null @@ -1,755 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 美国与中国 第二篇 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

美国与中国 第二篇

- - - -
- - - - - -
- - - - - -

5. 西方的侵入

从19世纪40年代到20世纪,西方成为中国进行三次革命的思想来源,三次革命为:共和革命,民族主义革命/国民革命,共产主义革命。
中国的文化是以中国式文化中心这种优越感为基础自觉发展起来的,对信心十足的西方自诩的优越感决不能熟视无睹,掉以轻心。中国对自己的特性看法可以保持无损,但是他的自信心可能从根本上发生动摇。

-
5.1 欧洲的扩张面对于中国的扩张
-

欧洲的扩张可以包括资本主义,民族主义,基督教三个方面。民族国家成为政治单位后,他们之间的争雄和交战激发了经济的扩张和技术的革新。于是资本主义和民族主义作为单独二个扩张的侧面互相影响。

-
-
-

1549年方济各之后200年里,200多名精选干练的传教士想在中国传播基督教,虔诚专注,坚韧不拔。利玛窦花了20年功夫,一步步从澳门的侨民社会走进北京的宫廷,耶稣会取得成功。明末社会混乱,聪明人渴望获得新思想。利玛窦看出如何侧身士大夫俊杰行列,他脱去佛教僧服,换上汉人长袍,通三五成群的优秀人士交谈,接受了汉代儒家早期的经典著作,为宣传基督教义而引述孔孟学识,支队宋儒理学提出质疑。允许人们对祖先和皇帝敬礼叩头,认为这合乎基督教信义,加上他仪表堂堂,对汉语的精通,以及对西方技术的了解,博得别人对他的好感。同儒士文人一样,他找到靠山,同他们生活出游,建立友谊,通过学术讨论和斯文礼节,同明末的高官交了朋友,最终进入宫廷,并由皇帝赐地安葬(敬佩,他内心的强大动力源自何来?)。通过这种接触,中国学者接触了西方最佳学术,但是结果却没有起什么影响。顾炎武道:“葡萄牙乃爪哇之南….曾索小儿为食”,《四库全书》也说利玛窦谎话连篇,五大洲乃无稽之谈。

-
-
5.2 中国对欧洲的影响
-

欧洲人发现亚洲有一些强大的王国和古老的社会,他们不信基督教居然也能存在很多世纪,这启示人们,纵使没有神所启示的宗教,人仍能做出有道德的行为,而且在很多方面是符合基督教标准的,这位启蒙运动提供了理论基础。伏尔泰在《道德论》里讨论了中国政府,抬高了中国政府的声誉。启蒙运动者所持有的中国,是二手的,理想化的,日后被对哲学不感兴趣的商人和领事的诽谤所粗暴的粉碎。

-
-
5.3 朝贡制度
-

现代中国领导人发现那种条约系统是唤起人民牢记国耻的宝贵象征,蒋介石在《中国之命运》中把现代化中国的一切弊病都归咎于不平等条约,共产党对此的谴责更厉害和全面。而古老中国的朝贡制度,也如同取代它的条约体系一样,是不平等的。中国认为皇帝受命于天通宇万民,自应对一切“远方来人”表示仁慈的胸怀(则修文德以来之),外国承认天子独一无二,则必然要在礼仪上表现出来。三跪九叩使任何人,特别是行礼者心中无法怀疑尊卑问题。

-
-
5.4 条约体系
-

虽然条约好像是在平等主权国家之间签的,但是这违反了中国意愿,放任西方商业和文化入侵。治外法权,使得在中国的外国人只受外国法律管束,成为开放中国的有力工具。西方的商品思想,方法源源不绝涌入中国。

-
-
5.5 人口问题的灾祸
-

随着经济增长,人口增加,政府的税收并不能齐步并进(摊丁入亩,永不加赋的弊端),同时削弱了政府对社会的控制,造成了社会动荡。

-
-

6 叛乱和复辟

6.1 作为反叛雏形的白莲教
-

白莲教迎合迷信,说菩萨即将降临人间,明朝将要光复,今世的苦难,疾病和个人痛苦可以消除,并保证来世的幸福。白莲教的狂热领袖们很快就在对他们的号召力增加了排除满足的种族主张。官军切断了叛军的兵源,粮源之后,叛军终于消亡。白莲教缺乏士人做思想上和行政上的领导。

-
-
6.2 太平天国
-

鸦片战争动摇了清廷威信,1846-1848年,在大规模增加的人口中间出现了水灾和饥荒,“拜上帝会”公开反叛。洪秀全主要是从《旧约》中挑选了一些基督教原理创立新教,万能的救世主,他具有一切世人精神父亲的身份,但是他认为基督教关于爱,宽恕,关怀邻人的教导没多大用处,他们抛弃了基督教关于原罪的思想,赞成中国人性本善的信念(哈),重视传统道德观念。主要是领导措施失当导致失败,无法建立有效政府,对农村没有有效的民政和管理办法,未能争取儒士文人参加他们的运动,而他们的敌人,儒家上层绅士仍控制着农村,并动员了农村力量来反对他们。另一方面,它的宗教太浅薄,社会和经济主张太不充分,不足以取代儒家思想。

-
-
6.3 捻军及其他叛军(回乱)
-

结果出了造成纷乱和灾难之外,很少有什么成就,没有历史价值。

-
-
6.4 儒家政府的复辟
-

在年青的慈禧听政下 1. 启用了新的满族领袖,2. 接受了条约体系,3. 支持各省保守的汉族儒将,镇压了叛乱。一批科举出身,有高度道德原则而忠于朝廷的文官开始试图在农村经济和大众福利事业上实施仁政,减轻赋税,开办学校,选拔人才,创办工厂,开始西化。但是他们仍死抱住以农立国的经济原则不放,认为农业是国计民生之本。他们没有近代人关于壮大经济和发展经济的概念,而轻视追逐财富。力图向农民和官员兜售勤俭和清廉的古代理想,以满足人民和政府的需要。他们有意识的想恢复过去的一切,而不是创造性的面对未来,不能充分发动下层官僚,也不能应付西化过程中的技术问题和学术文化问题。

-
-

7. 维新与革命

这一代的中国人也抱着陈腔滥调不放,认为跳半步就可以进入现代。

-

7.1 自强运动

-

李鸿章认为:为谋自强,必须学会西方机器,这就需要训练中国人才。但是西化运动的每一步都受到物质和偏见的儒家文人阻挠。但是翻译工作,更多是依靠外国人和少数外事官员的主动精神,而不是皇帝指示下办的。到1881年,留学生计划也放弃了。工业化也一般都是流产,担任经理的商人在官署的监督下执行,双方都捞取公司的利润,而不是再投资。

-
-
7.2 帝国主义与1892年的改良运动
-

西方传教士发现中国人过分自信,改变宗教信仰的人数颇少(信仰体系已经建构完毕)。但是基督教的其他影响对中国旧社会有高度破坏作用,对中国人民帮助很大。如从普通人中选拔人才,翻译西方文学,提倡妇女教育,协助慈善和赈灾等(天哪,这居然还要西方人来做)。1895年日本人意外打败大清帝国之后,中国才真正实施改革,这个时候改革的目的也不是根本改革,只是引用外国的方法来加紧“自强”。康有为熟悉佛教和基督教义,以及译成中文的西方著作,赞同当时流行的社会进化论,认同国与国之间也可以试用适者生存的原则(得,比我见识广)。百日维新失败证明自上而下的改良中国是绝无希望的。也大大促进了革命变革。

-
-
7.3 革命派与维新派
-

梁启超在维新运动之后,通过在日本的著作和刊物,成为现代中国自由主义传统的创始人之一。梁重新解释了儒家伦理道德,他说,既然国家已经成为涉及民众命运的共同体,忠的对象就应该是国家而不是君主。儒家的忠应该变成现代的爱国主义,其转变途径是更改人的感情,而不是利用强制手段(有点类似于阎学通的说法)。他赞扬英国的个人主义,指出只有经过教育,自觉接受法律和秩序的情况下,个人才可能获得自由。中国公民应有为公的精神,富于事业心,能够维护自己的权利,并抛弃乞求皇帝恩惠的思想,应该养成并保持不为世俗所左右的独立精神,关心自己所处的社会,并要求自治。这是对儒家伦理古训的直接攻击和修改。梁以进化论的思路论证说,共和政体在中国还不可能实现,中国人民的教育水平太低,不能让他们参加代议制政府,而且一场革命会带来独裁的重大危险,会招致外来侵略和瓜分中国。提倡实行君主立宪制,在这种制度下,新民教育以及各省和全国议会的建立将使中国逐渐取得进步。梁在日本组织的政治团体主张成立全国议会,有一个内阁政府对它负责,有新法典,独立的司法和地方自治政府,中央和地方政府的分工明确,通过废除不平等条约来取得外交上的平扥地位。这份开明的渐进的政治纲领,代表了当时最合乎人道的,最精深的政治思想,具有广泛影响力,足以争取青年学生的支持(确实还不错,称为保皇派,可惜清廷缺乏诚意)。

-
-
7.4 清廷的改良和共和革命
-

清廷的改革只是纸上谈兵,缺乏诚意。最出色的工作是训练出了袁世凯个人统领的新军。宪政思想的传播导致企业家,维新派,新型政客把忠于本省作为第一步(这也是奠定后来格局的起因吧,思想和地理决定的)。帝国主义的侵略逐渐激发了爱国主义觉醒。教育逐渐推广,识字人数大为增加,开始反对鸦片,缠足,卖淫等弊端。孔孟之道开始丧失威信,皇权被不断挑战,青年人对老年人,妇女对男子的服从也开始成为问题。士绅阶层开始多样化,工商家,维新派绅士和报馆文人,青年军官和保守派。1911年革命所代表的力量远远超出孙逸仙能提供的革命领导力量,名义上的革命领袖,相对无力控制革命背后的力量。种种考虑的结果是让位给袁世凯,认为后者更宜接任更高地位的强有力的行政领袖(现实且高风亮节的选择)。此时的社会变革由维新派绅士和新军人领导,局限在统治阶层内部,老百姓反而多缴税,并不得人心(这是当时革命派的局限)。

-
-

8. 国民党的兴起

1912年君主制结束,中国政治生活中的中心人物之所以能被抛弃,是因为民族主义已经抬头,提出了以国家,文化和人民作为新的效忠对象。但是民族主义在制度上尚未表现出来。

-
8.1 探索新秩序
-

为什么1911年的革命不能建立西式的新中国呢?第一是没有共同的目标,起义汇集起来的各种成分意外,除了推翻满清,没有其他共同目标。第二是缺乏政治体制,并缺乏人民参与(是不是说明必须由强有力的一方主持才能有效推进)。第三是,当时的爱国人士深恐外国干预。第四是,中华民国向西方借鉴,并通过立宪议会和内阁而组织政府的想法,是同中国的政治传统脱节的(当时成功的话,是不是也就是下一个印度)。这时的军阀割据,是老式的政治现象,思想上并无建树。当时有“联省自治运动”,但是这种运动缺乏逻辑性和表面的可行性。第一是巨大的传统力量,中国维护统一的传统。第二个外国干涉的危险促使民族力量支持统一,而统一只有在强有力的中央政府治理下才能取得。

-
-
8.2 五四运动
-

中国的问题扎根很深,相对器采取有效措施,就越来越有必要对这些问题进行深入分析和理解。首当其中是改革文言文,促使其推广到人民大众中,成为书写的传播手段。文体革命,以及知识普及成为革命的基本问题。文体革命的第一步,就是把日常用语用书写的形式表达出来。胡适研究实用主义,提出了提倡科学思想方法以及科学批判方法的领导人。随着科学而提出的是民主。鲁迅认为中国的文化是“奴才伺候主子的文化,主子是以人民大众的苦难为代价而青云直上的”(有点偏激,但是道理是对的)。

-
-
8.3 国民革命
-

国民革命结合了两种趋势,一种是减持强权人物领导下重新走向国家统一的传统趋势,一种是采用西方管理效忠于国家的新思想,以一党专政来垄断权力,从而接近于现代政体的新趋势。南京政府创建了上层阶级的体制,反对彻底改变普通农民生活的思想(为什么?传统?还是资本主义)。孙逸仙并不赞成共产党的阶级斗争思想,却充分认识到共产党的方法非常有用。列宁认为如果没有帝国主义的剥削,没有亚洲的市场和原料供应,资本主义会跨的更快,所以号召殖民地的各族人民反抗西方(他们自己也是帝国)。1923年1月孙逸仙和苏联代表联名发表协约,协约中说孙并不赞成中国实行共产主义,因为它同中国的国情不和,又说苏联同意中国需要统一和独立(苏联虚伪),并准备协助中国进行国民革命。正如孙在当时写信告诉蒋介石的,他不得不向能提供援手的人寻求援助,西方列强并没有提供援助,当时他心里共产主义替代三民主义成为中国革命纲领。国民党的目标在于领导一个广泛的,全国性的,多阶级的运动,以避免阶级斗争,孙又认为民生主义和共产主义没有实际差别,俄国在必要时候会抛弃中国的共产党(想法倒没错,但是民生主义并没有很好的执行,以至于无法真正战争动员)。蒋介石定都南京后,开始镇压共产党的革命。托洛茨基预见到蒋介石的叛变行径,竭力主张在共产党的完全领导下在中国建立工农苏维埃,但是斯大林寄希望于革命的后期,共产党人就能抛弃他们的国民党盟友,“就像挤干了汁的柠檬”。

-
-

9. 南京政府

那个时候,我们美国人所接触的那个现代中国,是轻敷在古老文明的一层粉饰(对的,看的透彻),虚饰底下,旧中国仍在半个大陆的农村继续存在,由于语言的障碍,物质水平的悬殊,以及社会的禁忌,这个旧中国是同我们隔绝的。新中国的生活与我们外国生活相互渗透,而底层蕴藏着的古老中国社会不为西方理解,也不为现代中国人理解。

-
9.1 政治发展情况
-

国民党成为官僚政治的一部分而丧失了革命感。开始收回了治外法权,收回关税自主权,收回一部分租界。总的来说,南京政府开始确保中国主权和国际平等等民族主义的要求。

-
-
9.2 蒋介石的崛起
-

蒋介石凭借狡猾的政治手段和冷酷无情的决心,成为时代需要的,能应付各个军阀的铁腕人物。被认为是代表了中央集权形式的“一党专政军国主义”,是推翻地区性武装割据所必须的。蒋介石通过保甲制度,秘密警察,地方宪兵,教育津贴等加紧控制政治,复活孔孟之道,暗中成立蓝衣社。蒋介石的思想来自很多方面,曾国藩为人处世以道德目的来衡量的见解,列宁关于帝国主义的解释,卫理公参加仪式的基督徒的虔诚,从各个轴心国来的影响,这些内容体现在1943年发表的《中国之命运》一书。

-
-
9.3 走向工业化
-

中央政府放弃了对田赋这一有潜力的主要收入来源,让各省加以利用,而在本应扶持的经济部门上收税以维持生存。最后的结果是像穷人所需的消费品征税,付利息给富有的债券持有人。农村经济没有增长,生产投资被官僚和反生产的财政政策所阻挠。

-
-
9.4 地方政府
-

电报电话公路汽车使得中央命令能迅速传达,南京派出的新行政官员力图扩大规模的改革范围,用来替代帝制时期的县官和士绅。县以下设立了乡区村,村镇成为地方自治的基本单位。国民党在很多农村方面,土地开垦,造林,水利,水力发电,控制病虫害,土地再分配,减租,轻重工业化普及教育等,踌躇不前,茫无头绪(并不关切民生)。对农村缺乏大规模援助,基督教反而在这方面带了头。

-
-

10. 共产党的兴起

毛泽东带领政党取得政权,组织和改造了人民,改变了山河,亚历山大,凯撒,查理大帝,拿破仑,俾斯麦,列宁,没有一个前人的成就比得上毛泽东。

-
10.1 头10年的起伏多变
-

国民党镇压了共产主义运动,但是运动没有取得进展的最根本原因还是在于自身“没有及时重视农村工作”(中国有什么无产阶级)李立三继续执行早已失败的城市武装起义路线。命令中共机构尽力组织城市工人,举行政治罢工和武装起义,他想利用工会成员达到党的目的,恶如不是代表他们解除经济的痛苦而斗争。失败后,28名从苏联受训回来的留学生主宰了党的机构,但是在国民党控制的城市里活动困难,他们接收了农村里的苏维埃根据地。

-
-
10.2 毛泽东的兴起
-

1927年毛在考察湖南农民运动时,提出自己的预见,认为可以利用普通人民的革命热情和能力来解放农民,并且推翻旧的统治阶级,在武汉的统一战线政府里,带头主张土地改革。毛创立了农村革命根据地,后被排挤出革命机关。瑞金政府用了列宁在1905年不同情况下的方案,像俄国那样用纸面出色的劳动法令优待并不存在的无产阶级,给与比农民更多的代表权。红军享有优待,用暴力分配了土地。在即将灭亡之时,莫斯科回来的分子承认了毛的领导地位。蒋介石的军队受中国军事传统限制,严重脱离人民,给与士兵武器,但是并未向士兵进行思想教育。为组织起群众支持,共产党人暂时放弃了没收土地并重新分配的方案,改为赞成减租,实现了国民党1930年的37.5%法令,因此并没有大批有产阶级从共产党地区外逃,宣布实施三三制,不去垄断政府职位,反而能更好的发挥领导作用。注重互助垦荒,组织小规模的工业合作社,开发农村潜力。宣传工作不受严格的条条框框限制,只提出争取国家独立,民主自由和人民幸福(含义与三民主义相同),不再强调苏维埃,专政和阶级斗争。

-
-
10.3 战时意识形态的发展
-

1940年,毛提出的三大目标是实行统一战线,武装斗争,和党的建设,在抗击日本和改造中国的任务中争取尽可能多的盟友。1942年毛发动了思想上,党内外关系上,和文风上的在“整风运动”。在小组会上进行长期的批判和自我批评,在群众大会上承认错误和做检讨,成为标准流程,这样做的目的是为了保持党的战斗力和献身精神,使党员为未来任务准备。在反对主观主义,宗派主义和形式主义中可以看出,正在花大力气来重新教育和训练沾染了自由主义,个人主义和传统道德的新党员。也标志着留学生团体的失势。马克思主义必须应用于中国农村的具体实现,并在行动上加以检验,成为“毛泽东思想”的基础。《新民主主义论》中指出,统一战线是当前阶段需要的,也重申了党的长期使命。毛把中国革命分为两个阶段,新民主主义必须把旧的“半封建”的社会变为独立的“民族”社会。形式上,新民主主义应根据选举产生“民主集中制”政府,由从乡村到全国,层层的人民代表大会来进行。土地变成农民私产之后,这种改革将产生出与社会主义农业制度极不相称的制度。解放运动的目的,在于唤醒中国农民大众并使他们活跃起来,党的干部才能领导农民群众创造新生活。革命目的是要人民过上新生活,从改善他们的经济生活入手,只有行使那种足以改变旧秩序的绝对政治权力,才能改善人民大众的经济生活,一个党只有在它的党员服从明确的党纪时才能发挥作用,也就是说所有党员都可以在党会议发表意见,但是一旦做出决定,全体党员必须服从。

-
- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2020/02/12/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\270\211\347\257\207/index.html" "b/2020/02/12/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\270\211\347\257\207/index.html" deleted file mode 100644 index b7ac483..0000000 --- "a/2020/02/12/\347\276\216\345\233\275\344\270\216\344\270\255\345\233\275-\347\254\254\344\270\211\347\257\207/index.html" +++ /dev/null @@ -1,702 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 美国与中国 第三篇 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

美国与中国 第三篇

- - - -
- - - - - -
- - - - - -

11. 美国与人民共和国

11.1 美国的扩张与英帝国
-

在过去的一个世纪里,西方在东亚的地位靠无力维持,通常是欧洲的武力,很少是美国的武力(还算实施)。在于当地民族打交道时,美国的民主主义者总是以我们国内新的民主制感到自豪,总愿意用国家独立,改革和社会平等主张去帮助当地的反叛者,我们感到我们是恩赐的一方,并有自我陶醉之感(是借口吧,战略是促使英属殖民地独立,削弱英国,谋求自己利益。个人可能有逐利和优越感。最初是门罗主义。)美国向中国的扩张不仅是经济的,宗教的,民族主义的,而且是这些扩张性质的总和,美国是非正式英帝国的小伙伴,有时也起带头作用,一方面抨击英国,一面要求分享它的好处(抨击是竞争削弱,分享是自己也想占一份)。我们口头上大道德谈的起劲,官方行动却十分有限,希望中国人民享有民族自决和个人自由的理想,但是从来不采取行动,使之成为理想。我们珍视这些理想,并把它们当做我们文化的一部分,而中国的现实却是中国文化的一部分,如拒绝承认满洲国,同时仍将战争物资出售给日本。

-
-
11.2 门户开放政策的演化过程
-

门户开放的两个原则:1. 保持中国的完整,2. 一切外国人在中国享有平等待遇。主要是为了防止俄国那样攫取中国的领土而把我们排除在外,中国的独立合乎美国人的心意,认为在这政治上是合理的,还适合弱国享有民族自决和主权的原则(另一本书说,这也是中国的策略,防止某一家外国在中国独大,平衡竞争,中国才能有回旋空间)。1949年,人民共和国还没有知道它能从门户开放中到什么好处,就断然把门户开放关闭(当时的开放又能有什么好处呢)。

-
-
11.3 美国的贡献和自由主义的命运
-

美国的援助在教育方面成绩最大,但通常被认为是外国势力的一部分(建立了一些学校,培养了人才)。教育的缺失让中国的自由主义不能制度化。当权者并不承认公民权利,言论和人身自由。总之并不承认法律至高无上的权威。中国并没有西方式的力量雄厚的中产阶级,私有财产和个人在享有无限权力的官府面前毫无法律保障,而西方则以这种安全措施来支持自由主义运动,中国的自由主义者缺乏法律好财产作为防御手段,他们在学者中享受较高的社会地位仍感到安全是不可靠的(今天也有这样的问题吧)。中国自由主义的命运同教育紧密联系在一起。

-
-

12. 美国的政策和国民党的垮台

中国的民族主义在日本展战败后人不能抬头,1943年1月11日根据平等原则签订了新的中美条约,不到五个月有签订另一个协定,在华美军不受中国刑法约束,美军在中国土地横行程度更甚。

-
12.1 美元和调处
-

1943年晚期起,美国的政策在三方向进行,1. 在国际舞台上,力图使中国成为形式上的大国而非实质上的大国。也就是想从国外以言辞来加强一个趋于没落的政权。2. 我们的军事努力产生了一个现代化的国民党陆军和空军。3. 我们企图弥合国共之间的分裂。实际上,我们怀着一个自相矛盾的目标,敦促国民党领袖改革,以便削弱他们的专制权力而有利于国内和平,同时督促国民党加强政权,作为走向东亚政治稳定的一步。但是国民党宁可用手里的新式武器按照自己的方案行事。我们在总的方面更缺乏哲学或方法,无法进行强制性的经济开发和强调政治集体主义。

-
-
12.2 美国“丢失中国”
-

美国陷入了一阵歇斯底里的反攻情绪。对冷战和中国共产党获胜的反映是恐惧居多而缺少创见。而对中国社会质的变化一无所知,与台湾的紧密关系也主张了对中国的敌意。

-
-
12.3 我们的盟友台湾
-

日本殖民台湾期间建立了秩序,做出了物质上的改进,变的不那么苛刻,真正的政治生活并没有收到鼓励,30年代政权趋向于地方自治,人民享有有限的公民权。日本的土地政策遏制了地主占有土地的趋势,并鼓励农民为改进农业和公共卫生而成立协会之类的组织。日本政权真诚的关心提高生产,使半数儿童进入了小学,虽然每年达到大学水平的不足100。国民党于1947年3月镇压了台湾,后期进行了改革,成就就是在没有我们援助的情况下推进了工业化,吸引力越来越多的日本投资(难怪今天台湾对日本有好感)。加入了工商业世界,很好的利用了日本,美国的技术,贸易,投资和文化接触,一批有才能的中国领导人把工业化引导到类似于日本的可持续发展方向,生活水平比大陆搞,同美国的关系开始多样化。

-
-

13. 人民共和国:建立新秩序

了解中国的变化的时候的设想依据。1. 历代中国政府力求维持统一的国家和统一的文化,成立善于实施中央控制和大规模官僚统治的政府。第二,1949年的中央政权不仅是中共掌权28年的经验,也是全中国的经验。新政权并不像自称那样是纯粹的马克思列宁主义的产物。它的成就并不是创造了新秩序的所有部分,而是以只有共产党力量和实践才能做到的空前集中的指导方式,把各个部分综合起来,公开的现象背后,同时也扎根在普通人民中间的中国民间传统。北京政权不像我们设想的那样铁板一块,也不想它自称的那样是马克思列宁主义的产物,它的成就不是创造了秩序的所有部分,而是以只有共产党的理论和实践才能做到的空前集中的指导方式,把各个部分综合起来,无论如何,其所得到的结果是中国人以前完全没有体验到的。

-

14. 中国和我们自己

抱着实事求是的观点:1. 西方侵略了中国,2. 中国人从西方侵略中及取的教训是,中国必须要有自卫的力量。美国对中国的态度是存心想赚钱,也想做好事,力求拿走一些东西,同时也给于一些东西。

-
14.1 从中国的过去看中国的今日
-

蒋委员长力求凭个人的正直以及较强的军队和较高明的政治手腕来镇压军阀。他的力量在于他具有这样一些传统资格:牢牢掌握权力的勇气和决心,热心提倡道德,态度严肃,因而获得了个人的威信,忠于他的人以诚相待,对于敌手残酷无情,并善于使他们抵消力量。越南战争以后,美国不那么目空一切,毛以后的中国在意识形态上不那么咄咄逼人。

-
- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2020/09/01/\345\205\264\347\233\233\344\270\216\345\215\261\346\234\272\357\274\232\350\256\272\344\270\255\345\233\275\347\244\276\344\274\232\347\232\204\350\266\205\347\250\263\345\256\232\347\273\223\346\236\204/index.html" "b/2020/09/01/\345\205\264\347\233\233\344\270\216\345\215\261\346\234\272\357\274\232\350\256\272\344\270\255\345\233\275\347\244\276\344\274\232\347\232\204\350\266\205\347\250\263\345\256\232\347\273\223\346\236\204/index.html" deleted file mode 100644 index 1fd0117..0000000 --- "a/2020/09/01/\345\205\264\347\233\233\344\270\216\345\215\261\346\234\272\357\274\232\350\256\272\344\270\255\345\233\275\347\244\276\344\274\232\347\232\204\350\266\205\347\250\263\345\256\232\347\273\223\346\236\204/index.html" +++ /dev/null @@ -1,662 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 兴盛与危机:论中国社会的超稳定结构 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

兴盛与危机:论中国社会的超稳定结构

- - - -
- - - - - -
- - - - - -

《兴盛与危机:论中国社会的超稳定结构》 。这本书190+页,解释了中国王朝周期律是怎么形成的。以及为什么中国无法诞生工业革命。
王朝周期律这种稳定结构要从1. 经济结构:小农经济,2. 意识形态结构:儒家文化,3.政治结构结构: 中央集权郡县制。三个互相制约的子系统来看。在王朝的开始,君主英明,官僚系统较为清廉控制力强,均田分配,社会较为繁荣。之后随着无组织力量(官僚膨胀腐败,人口增加,土地兼并,王朝威信丧失)的增长,王朝开始动乱。大动乱的过程涤荡了无组织力量,为新王朝修复创造条件。
作者论述了为什么王朝可以修复。1:宗法一体化,子孝与忠君同构,父权与皇权对应,封建家长很容易以家庭为模板,建立宗法家长制为原则的政权(其实也是儒家思想)。2. 儒家倡导入世,以安邦定国为目标(个人理解是不统一就没有安定,统一符合君主和人民的利益),施展抱负才能,组建国家机器。
书里着重论述了南北朝时期将近300年的动乱的原因,1. 佛学道教的传播,2. 外族入侵。3. 豪强发展成门阀,农民起义没有起到涤荡无组织力量的作用。
这里作者对比了几种思想流派,自汉代独尊儒术之后,为什么最终依旧是儒家思想成为正统。
道家讲“无为”,放情任志,顺乎人性,其理想社会是没有制度和发明的天然状态。
佛以现世之虚无而出世,认为“情”乃一切烦恼罪恶之源,主张灭除欲望。
墨家主张“兼爱”,“交相利”,以功利主义为价值观,推崇以实践效果作为鉴别是非的标准。后期墨家是中国古代哲学中最富有科学色彩的流派。
孔子以“仁”为核心价值观,视道德为文化的基础,认为这出自人的本性,要求人努力完成道德追求以至于圣人。在社会观上主要内容为“礼”,一方面继承了西周的宗法政治制度,另一方面注入了理想政府的构想,社会合理划分等级,各等级共同遵守礼仪而达到和谐。
法家并无内和谐的理论体系。其国家学说以政策居多。因此只能作为其他学说的有机组成部分,细化其国家学说。

-

国家一体化要求有统一信仰的知识分子组成官僚机构,并有统一的国家学说。意识形态起码要是有为的入世的。因此佛道的“无为”和“出世”实际上干扰了国家重新一体化。后世儒释道之所以可以共存,是因为佛道成为了儒家的反面和补充,佛学完成了中国化:禅宗。随着民族融合,魏孝文帝推行儒学,打击贵族势力,实施均田令。统一中国成为潮流。

-

皇权作为官僚机构的调整力量,可以整顿吏治,抑制土地兼并。随着一体化不断发展,皇权也有不断集中扩大的趋势。但是当腐败到了一定地步,有为皇帝也不能挽救一个王朝(王莽,唐宪宗,贾似道飘过)。
最后作者谈了为什么中国无法诞生工业革命,中国的科技水平一直在线性增长,但是西欧发生了指数型增长。核心在于1. 中国王朝更迭破坏了科技和资本的积累,2. 重本抑末,对商业强控制,抑制了潜在的形式成长。3. 伦理道德成为了文化轴心,也妨碍了科学和真理的成长。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2021/05/19/epoch-\350\275\256\346\225\260\347\232\204\345\275\261\345\223\215/index.html" "b/2021/05/19/epoch-\350\275\256\346\225\260\347\232\204\345\275\261\345\223\215/index.html" deleted file mode 100644 index fa85aa5..0000000 --- "a/2021/05/19/epoch-\350\275\256\346\225\260\347\232\204\345\275\261\345\223\215/index.html" +++ /dev/null @@ -1,661 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - epoch 轮数的影响 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

epoch 轮数的影响

- - - -
- - - - - -
- - - - - -

使用roberta 训练,一个训练2轮,然后在2轮的基础上再训练6轮,也就是一共8轮
然后在8404820个数据上去预测结果,其中label 不同的有613706个,在label为1的基础上score 大于0.8的,也就是 两次score 差了至少0.3以上的,有71404,接近1%,有趣的数字。

-

其实根据f1_score,两次相差不过3%左右,但是就细节层面, 标签的变动差别更大,而且就预测效果而已,目测确实epoch8的更符合人的直觉

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git "a/2021/07/08/\346\261\275\350\275\246\345\244\247\350\204\221\347\233\256\345\211\215\345\255\246\345\210\260\347\232\204\346\234\211\347\224\250\347\273\217\351\252\214/index.html" "b/2021/07/08/\346\261\275\350\275\246\345\244\247\350\204\221\347\233\256\345\211\215\345\255\246\345\210\260\347\232\204\346\234\211\347\224\250\347\273\217\351\252\214/index.html" deleted file mode 100644 index 8e97935..0000000 --- "a/2021/07/08/\346\261\275\350\275\246\345\244\247\350\204\221\347\233\256\345\211\215\345\255\246\345\210\260\347\232\204\346\234\211\347\224\250\347\273\217\351\252\214/index.html" +++ /dev/null @@ -1,678 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 汽车大脑目前学到的有用经验 | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - - - - - - -
- - - -
- - - - - - - -
- - - -

汽车大脑目前学到的有用经验

- - - -
- - - - - -
- - - - - -

1. 可以使用已经存在的相似模型和数据迅速积累正负样本

这有点像迁移学习,使用一个相似的模型,预测一批case,然后人工处理其中一部分score比较高或者低的,这样的话,得到的数据中含有期待的正负样本比例会比较高

-

2. 自己准备的测试case和最常问的case并不重叠

这次本来请标注组准备了不少的测试case,但是发现真正内测的时候,真正问的问题和标注组准备的问题,并不重合,一般人问的都太简单了。

-

3. 数据量很关键,召回也很关键

再好的语义模型,没有召回合适的候选集,也无法发挥作用,es的bm25并不能充分发挥数据,还是需要结合向量一起来。

-

4. 负样本很重要

通过去掉关键词和包含领域关键词的这种做法,我们迅速积累了大批的对比数据,这对提高语义准确度起了很关键的作用,这样模型就能迅速学到关键内容起到的作用。两句话很相似,但是缺少了核心领域词,语义就是不一致。

- - -
- - - - - - - - - - - -
- - - -
- - - -
- -
-
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..d70f314 --- /dev/null +++ b/_config.yml @@ -0,0 +1,86 @@ +# Hexo Configuration +## Docs: https://hexo.io/docs/configuration.html +## Source: https://github.com/hexojs/hexo/ + +# Site +title: Valar morghulis +subtitle: +description: You're waiting for a train
A train that will take you far away
You know where you hope will be taken
But you can't know for sure
Yet it doesn't matter
Because we are staying together +#description: I've seen things you people wouldn't believe.
Attack ships on fire off the shoulder of Orion.
I've watched c-beams glitter in the dark near the Tannhauser Gate.
All those ... moments will be lost in time, like tears...in rain.
Time to die. +keywords: 人工智能,生活随想 +author: +language: +timezone: + +# URL +## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/' +url: http://unasm.com +root: / +permalink: :year/:month/:day/:title/ +permalink_defaults: + +# Directory +source_dir: source +public_dir: public +tag_dir: tags +archive_dir: archives +category_dir: categories +code_dir: downloads/code +i18n_dir: :lang +skip_render: + +# Writing +new_post_name: :title.md # File name of new posts +default_layout: post +titlecase: false # Transform title into titlecase +external_link: true # Open external links in new tab +filename_case: 0 +render_drafts: false +post_asset_folder: false +relative_link: false +future: true +highlight: + enable: true + line_number: true + auto_detect: false + tab_replace: + +# Home page setting +# path: Root path for your blogs index page. (default = '') +# per_page: Posts displayed per page. (0 = disable pagination) +# order_by: Posts order. (Order by date descending by default) +index_generator: + path: '' + per_page: 10 + order_by: -date + +# Category & Tag +default_category: uncategorized +category_map: +tag_map: + +# Date / Time format +## Hexo uses Moment.js to parse and display date +## You can customize the date format as defined in +## http://momentjs.com/docs/#/displaying/format/ +date_format: YYYY-MM-DD +time_format: HH:mm:ss + +# Pagination +## Set per_page to 0 to disable pagination +per_page: 20 +pagination_dir: page + +# Extensions +## Plugins: https://hexo.io/plugins/ +## Themes: https://hexo.io/themes/ +#theme: aircloud +theme: next +#theme: landscape + +# Deployment +## Docs: https://hexo.io/docs/deployment.html +deploy: + type: git + repository: https://github.com/unasm/unasm.github.com.git + branch: master diff --git a/about/index.html b/about/index.html deleted file mode 100644 index 58083ab..0000000 --- a/about/index.html +++ /dev/null @@ -1,629 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - About me | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - -
-
- - - -
-
-
-
- - -
- - - -
-
- -

About me

- - - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - -
姓名 :豆家敏                                         微信 :1264310280                                        
性别 :男邮箱 : unasm@sina.cn
专业 :信息对抗技术 github :https://github.com/unasm -
出生年月 :1992年2月毕业时间 :2014年7月
- 毕业院校 :电子科技大学/UESTC 本科        - - 供职公司 :新浪,借贷宝,思必驰       -
- -
技术栈
    -
  • 开发经验丰富,编程能力强悍,解决问题能力强悍,负责过业务系统,基础架构,数据仓库的系统设计,架构,开发
  • -
  • 熟悉Java,python开发,了解微服务,服务治理,Spring Boot. 使用过go,lua,PHP,nodejs等,了解监控,常见的性能优化,自动化测试等
  • -
  • 对机器学习感兴趣,熟悉常见的机器学习技术,如xgboost,cnn,svd,协同过滤等,阅读过gbdt源码,结巴分词源码等,对知识图谱有一定的了解
  • -
  • 有一定的大数据经验,对kafka, es, impala,kylin等有一定了解,负责部门数据统计,可视化,报表,用户请求分析,全链路流量复盘等大数据相关工作
  • -
  • 阅读过redis(3.0,C语言)源码, 阅读过beego部分源码
  • -
  • leetcode AC 100+, 西南地区ACM二等奖,Kaggle 房价预测 550+名, 羽毛球第四级
  • -
-
2018.1 ~ 至今 思必驰开发工程师,数据工程师,绩效优秀
-
    -
  1. 日志系统设计搭建,日志中间件开发,完成了格式化业务日志,追踪请求的调用关系,响应时间,处理过程,延迟,异常等等,支持数据埋点,自动化记录等功能,结合elk,kafka,filebeat等搭建了日志体系,满足研发实时追查线上问题的需求,成为监控报警,以及数据分析重要部分,推进了日志规范落地执行,奠定了数据的基础,部门最成功最核心的基础服务
  2. -
  3. 数据仓库的设计和搭建,建立了数据从收集到输出的体系。 统一日志规范,搭建设计了日志的收集清洗系统,提取对话内容,数据偏差在1%以内,统计线上响应情况,pv,uv,通过kylin 提供 http接口,支撑内容查询,数据报表和分析需求。
  4. -
  5. 对话管理系统开发改进,对话系统的改进,增加多轮对话,整理闲聊数据,推进了单元测试和交互测试的落地,极大提升了服务质量,避免问题反复
  6. -
  7. 优化DM性能延迟,响应时间压缩到90分位在200ms以内
  8. -
  9. 维护了敏感词识别,反问句生成,意图识别等项目
  10. -
  11. 优化儿童闲聊,高水平问答对从最初的20+%命中率提升到46%, 召回率达到90+%,达到业内领先水平,确立了技能的优化体系
  12. -
-
-
2015.9 ~ 2017.12 借贷宝数据服务,研发工程师,算法工程师
-
    -
  1. 参与了公司的征信建模,通过使用xgboost,tensorflow对用户信用评级。使用tableau提供BI服务,通过spark集群做一些查询工作,数据分析处理工作。做过一些NLP的工作。
  2. -
  3. 主导了数据服务本地化工作,搭建从客户端埋点,到数据检查清洗,kafka传输,parquet存储,impala查询,日消费数据千万级,推进了数据服务可视化的工作。
  4. -
  5. 维护开发了红包系统,抽样系统等,抽样系统为lua + C 开发,扩展ng rewrite阶段功能,达到流量采样分化的目标,通过连接池,共享缓存,init阶段初始化等方式,控制系统响应时间控制在0.1ms内。
  6. -
  7. 企业版研发leader,维护开发企业版,地推,红包等系统,参与整个系统的设计和讨论,包括企业门户,支付,鉴权,好友,passport等系统的角色界定和分工,系统间通信等,负责了企业门户的开发,错误追查,数据修复,Code Review, 新功能评审,排期,协调研发资源,测试资源,推进需求完成等等。
  8. -
-
-
2014.7 ~ 2015.9 新浪 PHP开发工程师
-
    -
  1. 维护新浪论坛,新浪体育,新浪
  2. -
-
- - -
- - - -
- - - -
- - -
- - - - - - - - - -
- - - - - - - - - -
-
- - - - -
- - -
- - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2019/07/index.html b/archives/2019/07/index.html deleted file mode 100644 index 3c90749..0000000 --- a/archives/2019/07/index.html +++ /dev/null @@ -1,746 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2019/08/index.html b/archives/2019/08/index.html deleted file mode 100644 index b233e31..0000000 --- a/archives/2019/08/index.html +++ /dev/null @@ -1,816 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2019/09/index.html b/archives/2019/09/index.html deleted file mode 100644 index 66d20d7..0000000 --- a/archives/2019/09/index.html +++ /dev/null @@ -1,711 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2019/10/index.html b/archives/2019/10/index.html deleted file mode 100644 index fa5eff5..0000000 --- a/archives/2019/10/index.html +++ /dev/null @@ -1,641 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2019/11/index.html b/archives/2019/11/index.html deleted file mode 100644 index d37861f..0000000 --- a/archives/2019/11/index.html +++ /dev/null @@ -1,571 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2019/12/index.html b/archives/2019/12/index.html deleted file mode 100644 index c1656fc..0000000 --- a/archives/2019/12/index.html +++ /dev/null @@ -1,606 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2019/index.html b/archives/2019/index.html deleted file mode 100644 index 6a620a2..0000000 --- a/archives/2019/index.html +++ /dev/null @@ -1,1240 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2019/page/2/index.html b/archives/2019/page/2/index.html deleted file mode 100644 index 2decb6b..0000000 --- a/archives/2019/page/2/index.html +++ /dev/null @@ -1,715 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2020/02/index.html b/archives/2020/02/index.html deleted file mode 100644 index 0d2fb47..0000000 --- a/archives/2020/02/index.html +++ /dev/null @@ -1,641 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2020/09/index.html b/archives/2020/09/index.html deleted file mode 100644 index 234a4f0..0000000 --- a/archives/2020/09/index.html +++ /dev/null @@ -1,571 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2020/index.html b/archives/2020/index.html deleted file mode 100644 index 9567e3f..0000000 --- a/archives/2020/index.html +++ /dev/null @@ -1,676 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2021/05/index.html b/archives/2021/05/index.html deleted file mode 100644 index f80a2f7..0000000 --- a/archives/2021/05/index.html +++ /dev/null @@ -1,571 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2021/07/index.html b/archives/2021/07/index.html deleted file mode 100644 index 6583c38..0000000 --- a/archives/2021/07/index.html +++ /dev/null @@ -1,571 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/2021/index.html b/archives/2021/index.html deleted file mode 100644 index a15444a..0000000 --- a/archives/2021/index.html +++ /dev/null @@ -1,606 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/index.html b/archives/index.html deleted file mode 100644 index 61c9841..0000000 --- a/archives/index.html +++ /dev/null @@ -1,1250 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/archives/page/2/index.html b/archives/page/2/index.html deleted file mode 100644 index a6d66b9..0000000 --- a/archives/page/2/index.html +++ /dev/null @@ -1,925 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Archive | 无所欲无所忧,无心者无所求,饱食而遨游,泛若不系之舟 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/css/main.css b/css/main.css deleted file mode 100644 index ff2d9d7..0000000 --- a/css/main.css +++ /dev/null @@ -1,2909 +0,0 @@ -/* normalize.css v3.0.2 | MIT License | git.io/normalize */ -html { - font-family: sans-serif; /* 1 */ - -ms-text-size-adjust: 100%; /* 2 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} -body { - margin: 0; -} -article, -aside, -details, -figcaption, -figure, -footer, -header, -hgroup, -main, -menu, -nav, -section, -summary { - display: block; -} -audio, -canvas, -progress, -video { - display: inline-block; /* 1 */ - vertical-align: baseline; /* 2 */ -} -audio:not([controls]) { - display: none; - height: 0; -} -[hidden], -template { - display: none; -} -a { - background-color: transparent; -} -a:active, -a:hover { - outline: 0; -} -abbr[title] { - border-bottom: 1px dotted; -} -b, -strong { - font-weight: bold; -} -dfn { - font-style: italic; -} -h1 { - font-size: 2em; - margin: 0.67em 0; -} -mark { - background: #ff0; - color: #000; -} -small { - font-size: 80%; -} -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} -sup { - top: -0.5em; -} -sub { - bottom: -0.25em; -} -img { - border: 0; -} -svg:not(:root) { - overflow: hidden; -} -figure { - margin: 1em 40px; -} -hr { - -moz-box-sizing: content-box; - box-sizing: content-box; - height: 0; -} -pre { - overflow: auto; -} -code, -kbd, -pre, -samp { - font-family: monospace, monospace; - font-size: 1em; -} -button, -input, -optgroup, -select, -textarea { - color: inherit; /* 1 */ - font: inherit; /* 2 */ - margin: 0; /* 3 */ -} -button { - overflow: visible; -} -button, -select { - text-transform: none; -} -button, -html input[type="button"], -input[type="reset"], -input[type="submit"] { - -webkit-appearance: button; /* 2 */ - cursor: pointer; /* 3 */ -} -button[disabled], -html input[disabled] { - cursor: default; -} -button::-moz-focus-inner, -input::-moz-focus-inner { - border: 0; - padding: 0; -} -input { - line-height: normal; -} -input[type="checkbox"], -input[type="radio"] { - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} -input[type="number"]::-webkit-inner-spin-button, -input[type="number"]::-webkit-outer-spin-button { - height: auto; -} -input[type="search"] { - -webkit-appearance: textfield; /* 1 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; /* 2 */ - box-sizing: content-box; -} -input[type="search"]::-webkit-search-cancel-button, -input[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} -fieldset { - border: 1px solid #c0c0c0; - margin: 0 2px; - padding: 0.35em 0.625em 0.75em; -} -legend { - border: 0; /* 1 */ - padding: 0; /* 2 */ -} -textarea { - overflow: auto; -} -optgroup { - font-weight: bold; -} -table { - border-collapse: collapse; - border-spacing: 0; -} -td, -th { - padding: 0; -} -::selection { - background: #262a30; - color: #fff; -} -body { - position: relative; - font-family: 'Lato', "PingFang SC", "Microsoft YaHei", sans-serif; - font-size: 14px; - line-height: 2; - color: #555; - background: #fff; -} -@media (max-width: 767px) { - body { - padding-right: 0 !important; - } -} -@media (min-width: 768px) and (max-width: 991px) { - body { - padding-right: 0 !important; - } -} -@media (min-width: 1600px) { - body { - font-size: 16px; - } -} -h1, -h2, -h3, -h4, -h5, -h6 { - margin: 0; - padding: 0; - font-weight: bold; - line-height: 1.5; - font-family: 'Lato', "PingFang SC", "Microsoft YaHei", sans-serif; -} -h2, -h3, -h4, -h5, -h6 { - margin: 20px 0 15px; -} -h1 { - font-size: 24px; -} -@media (max-width: 767px) { - h1 { - font-size: 20px; - } -} -h2 { - font-size: 22px; -} -@media (max-width: 767px) { - h2 { - font-size: 18px; - } -} -h3 { - font-size: 20px; -} -@media (max-width: 767px) { - h3 { - font-size: 16px; - } -} -h4 { - font-size: 18px; -} -@media (max-width: 767px) { - h4 { - font-size: 14px; - } -} -h5 { - font-size: 16px; -} -@media (max-width: 767px) { - h5 { - font-size: 12px; - } -} -h6 { - font-size: 14px; -} -@media (max-width: 767px) { - h6 { - font-size: 10px; - } -} -p { - margin: 0 0 20px 0; -} -a { - color: #555; - text-decoration: none; - outline: none; - border-bottom: 1px solid #999; - word-wrap: break-word; -} -a:hover { - color: #222; - border-bottom-color: #222; -} -blockquote { - margin: 0; - padding: 0; -} -img { - display: block; - margin: auto; - max-width: 100%; - height: auto; -} -hr { - margin: 40px 0; - height: 3px; - border: none; - background-color: #ddd; - background-image: repeating-linear-gradient(-45deg, #fff, #fff 4px, transparent 4px, transparent 8px); -} -blockquote { - padding: 0 15px; - color: #666; - border-left: 4px solid #ddd; -} -blockquote cite::before { - content: "-"; - padding: 0 5px; -} -dt { - font-weight: 700; -} -dd { - margin: 0; - padding: 0; -} -kbd { - border: 1px solid #ccc; - border-radius: 0.2em; - box-shadow: 0.1em 0.1em 0.2em rgba(0,0,0,0.1); - background-color: #f9f9f9; - font-family: inherit; - background-image: -webkit-linear-gradient(top, #eee, #fff, #eee); - padding: 0.1em 0.3em; - white-space: nowrap; -} -.text-left { - text-align: left; -} -.text-center { - text-align: center; -} -.text-right { - text-align: right; -} -.text-justify { - text-align: justify; -} -.text-nowrap { - white-space: nowrap; -} -.text-lowercase { - text-transform: lowercase; -} -.text-uppercase { - text-transform: uppercase; -} -.text-capitalize { - text-transform: capitalize; -} -.center-block { - display: block; - margin-left: auto; - margin-right: auto; -} -.clearfix:before, -.clearfix:after { - content: " "; - display: table; -} -.clearfix:after { - clear: both; -} -.pullquote { - width: 45%; -} -.pullquote.left { - float: left; - margin-left: 5px; - margin-right: 10px; -} -.pullquote.right { - float: right; - margin-left: 10px; - margin-right: 5px; -} -.affix.affix.affix { - position: fixed; -} -.translation { - margin-top: -20px; - font-size: 14px; - color: #999; -} -.scrollbar-measure { - width: 100px; - height: 100px; - overflow: scroll; - position: absolute; - top: -9999px; -} -.use-motion .motion-element { - opacity: 0; -} -table { - margin: 20px 0; - width: 100%; - border-collapse: collapse; - border-spacing: 0; - border: 1px solid #ddd; - font-size: 14px; - table-layout: fixed; - word-wrap: break-all; -} -table>tbody>tr:nth-of-type(odd) { - background-color: #f9f9f9; -} -table>tbody>tr:hover { - background-color: #f5f5f5; -} -caption, -th, -td { - padding: 8px; - text-align: left; - vertical-align: middle; - font-weight: normal; -} -th, -td { - border-bottom: 3px solid #ddd; - border-right: 1px solid #eee; -} -th { - padding-bottom: 10px; - font-weight: 700; -} -td { - border-bottom-width: 1px; -} -html, -body { - height: 100%; -} -.container { - position: relative; - min-height: 100%; -} -.header-inner { - margin: 0 auto; - padding: 100px 0 70px; - width: 700px; -} -@media (min-width: 1600px) { - .container .header-inner { - width: 900px; - } -} -.main { - padding-bottom: 150px; -} -.main-inner { - margin: 0 auto; - width: 700px; -} -@media (min-width: 1600px) { - .container .main-inner { - width: 900px; - } -} -.footer { - position: absolute; - left: 0; - bottom: 0; - width: 100%; - min-height: 50px; -} -.footer-inner { - box-sizing: border-box; - margin: 20px auto; - width: 700px; -} -@media (min-width: 1600px) { - .container .footer-inner { - width: 900px; - } -} -pre, -.highlight { - overflow: auto; - margin: 20px 0; - padding: 0; - font-size: 13px; - color: #4d4d4c; - background: #f7f7f7; - line-height: 1.6; -} -pre, -code { - font-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospace; -} -code { - padding: 2px 4px; - word-wrap: break-word; - color: #555; - background: #eee; - border-radius: 3px; - font-size: 13px; -} -pre { - padding: 10px; -} -pre code { - padding: 0; - color: #4d4d4c; - background: none; - text-shadow: none; -} -.highlight { - border-radius: 1px; -} -.highlight pre { - border: none; - margin: 0; - padding: 10px 0; -} -.highlight table { - margin: 0; - width: auto; - border: none; -} -.highlight td { - border: none; - padding: 0; -} -.highlight figcaption { - font-size: 1em; - color: #4d4d4c; - line-height: 1em; - margin-bottom: 1em; -} -.highlight figcaption:before, -.highlight figcaption:after { - content: " "; - display: table; -} -.highlight figcaption:after { - clear: both; -} -.highlight figcaption a { - float: right; - color: #4d4d4c; -} -.highlight figcaption a:hover { - border-bottom-color: #4d4d4c; -} -.highlight .gutter pre { - padding-left: 10px; - padding-right: 10px; - color: #869194; - text-align: right; - background-color: #eff2f3; -} -.highlight .code pre { - width: 100%; - padding-left: 10px; - padding-right: 10px; - background-color: #f7f7f7; -} -.highlight .line { - height: 20px; -} -.gutter { - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} -.gist table { - width: auto; -} -.gist table td { - border: none; -} -pre .deletion { - background: #fdd; -} -pre .addition { - background: #dfd; -} -pre .meta { - color: #8959a8; -} -pre .comment { - color: #8e908c; -} -pre .variable, -pre .attribute, -pre .tag, -pre .regexp, -pre .ruby .constant, -pre .xml .tag .title, -pre .xml .pi, -pre .xml .doctype, -pre .html .doctype, -pre .css .id, -pre .css .class, -pre .css .pseudo { - color: #c82829; -} -pre .number, -pre .preprocessor, -pre .built_in, -pre .literal, -pre .params, -pre .constant, -pre .command { - color: #f5871f; -} -pre .ruby .class .title, -pre .css .rules .attribute, -pre .string, -pre .value, -pre .inheritance, -pre .header, -pre .ruby .symbol, -pre .xml .cdata, -pre .special, -pre .number, -pre .formula { - color: #718c00; -} -pre .title, -pre .css .hexcolor { - color: #3e999f; -} -pre .function, -pre .python .decorator, -pre .python .title, -pre .ruby .function .title, -pre .ruby .title .keyword, -pre .perl .sub, -pre .javascript .title, -pre .coffeescript .title { - color: #4271ae; -} -pre .keyword, -pre .javascript .function { - color: #8959a8; -} -.full-image.full-image.full-image.full-image { - border: none; - max-width: 100%; - width: auto; - margin: 20px auto 25px; -} -@media (min-width: 992px) { - .full-image.full-image.full-image.full-image { - max-width: none; - width: 110%; - margin: 25px -5%; - } -} -.blockquote-center, -.page-home .post-type-quote blockquote, -.page-post-detail .post-type-quote blockquote { - position: relative; - margin: 40px 0; - padding: 0; - border-left: none; - text-align: center; -} -.blockquote-center::before, -.page-home .post-type-quote blockquote::before, -.page-post-detail .post-type-quote blockquote::before, -.blockquote-center::after, -.page-home .post-type-quote blockquote::after, -.page-post-detail .post-type-quote blockquote::after { - position: absolute; - content: ' '; - display: block; - width: 100%; - height: 24px; - opacity: 0.2; - background-repeat: no-repeat; - background-position: 0 -6px; - background-size: 22px 22px; -} -.blockquote-center::before, -.page-home .post-type-quote blockquote::before, -.page-post-detail .post-type-quote blockquote::before { - top: -20px; - background-image: url("../images/quote-l.svg"); - border-top: 1px solid #ccc; -} -.blockquote-center::after, -.page-home .post-type-quote blockquote::after, -.page-post-detail .post-type-quote blockquote::after { - bottom: -20px; - background-image: url("../images/quote-r.svg"); - border-bottom: 1px solid #ccc; - background-position: 100% 8px; -} -.blockquote-center p, -.page-home .post-type-quote blockquote p, -.page-post-detail .post-type-quote blockquote p, -.blockquote-center div, -.page-home .post-type-quote blockquote div, -.page-post-detail .post-type-quote blockquote div { - text-align: center; -} -.post .post-body .group-picture img { - box-sizing: border-box; - padding: 0 3px; - border: none; -} -.post .group-picture-row { - overflow: hidden; - margin-top: 6px; -} -.post .group-picture-row:first-child { - margin-top: 0; -} -.post .group-picture-column { - float: left; -} -.page-post-detail .post-body .group-picture-column { - float: none; - margin-top: 10px; - width: auto !important; -} -.page-post-detail .post-body .group-picture-column img { - margin: 0 auto; -} -.page-archive .group-picture-container { - overflow: hidden; -} -.page-archive .group-picture-row { - float: left; -} -.page-archive .group-picture-row:first-child { - margin-top: 6px; -} -.page-archive .group-picture-column { - max-width: 150px; - max-height: 150px; -} -.post-body .note { - position: relative; - padding: 15px; - margin-bottom: 20px; - border: 1px solid #eee; - border-left-width: 5px; - border-radius: 3px; -} -.post-body .note h2, -.post-body .note h3, -.post-body .note h4, -.post-body .note h5, -.post-body .note h6 { - margin-top: 0; - margin-bottom: 0; - border-bottom: initial; - padding-top: 0 !important; -} -.post-body .note p:first-child, -.post-body .note ul:first-child, -.post-body .note ol:first-child, -.post-body .note table:first-child, -.post-body .note pre:first-child, -.post-body .note blockquote:first-child { - margin-top: 0; -} -.post-body .note p:last-child, -.post-body .note ul:last-child, -.post-body .note ol:last-child, -.post-body .note table:last-child, -.post-body .note pre:last-child, -.post-body .note blockquote:last-child { - margin-bottom: 0; -} -.post-body .note.default { - border-left-color: #777; -} -.post-body .note.default h2, -.post-body .note.default h3, -.post-body .note.default h4, -.post-body .note.default h5, -.post-body .note.default h6 { - color: #777; -} -.post-body .note.primary { - border-left-color: #6f42c1; -} -.post-body .note.primary h2, -.post-body .note.primary h3, -.post-body .note.primary h4, -.post-body .note.primary h5, -.post-body .note.primary h6 { - color: #6f42c1; -} -.post-body .note.info { - border-left-color: #428bca; -} -.post-body .note.info h2, -.post-body .note.info h3, -.post-body .note.info h4, -.post-body .note.info h5, -.post-body .note.info h6 { - color: #428bca; -} -.post-body .note.success { - border-left-color: #5cb85c; -} -.post-body .note.success h2, -.post-body .note.success h3, -.post-body .note.success h4, -.post-body .note.success h5, -.post-body .note.success h6 { - color: #5cb85c; -} -.post-body .note.warning { - border-left-color: #f0ad4e; -} -.post-body .note.warning h2, -.post-body .note.warning h3, -.post-body .note.warning h4, -.post-body .note.warning h5, -.post-body .note.warning h6 { - color: #f0ad4e; -} -.post-body .note.danger { - border-left-color: #d9534f; -} -.post-body .note.danger h2, -.post-body .note.danger h3, -.post-body .note.danger h4, -.post-body .note.danger h5, -.post-body .note.danger h6 { - color: #d9534f; -} -.post-body .label { - display: inline; - padding: 0 2px; - white-space: nowrap; -} -.post-body .label.default { - background-color: #f0f0f0; -} -.post-body .label.primary { - background-color: #efe6f7; -} -.post-body .label.info { - background-color: #e5f2f8; -} -.post-body .label.success { - background-color: #e7f4e9; -} -.post-body .label.warning { - background-color: #fcf6e1; -} -.post-body .label.danger { - background-color: #fae8eb; -} -.post-body .tabs { - position: relative; - display: block; - margin-bottom: 20px; - padding-top: 10px; -} -.post-body .tabs ul.nav-tabs { - margin: 0; - padding: 0; - display: flex; - margin-bottom: -1px; -} -@media (max-width: 413px) { - .post-body .tabs ul.nav-tabs { - display: block; - margin-bottom: 5px; - } -} -.post-body .tabs ul.nav-tabs li.tab { - list-style-type: none !important; - margin: 0 0.25em 0 0; - border-top: 3px solid transparent; - border-left: 1px solid transparent; - border-right: 1px solid transparent; -} -@media (max-width: 413px) { - .post-body .tabs ul.nav-tabs li.tab { - margin: initial; - border-top: 1px solid transparent; - border-left: 3px solid transparent; - border-right: 1px solid transparent; - border-bottom: 1px solid transparent; - } -} -.post-body .tabs ul.nav-tabs li.tab a { - outline: 0; - border-bottom: initial; - display: block; - line-height: 1.8em; - padding: 0.25em 0.75em; - transition-duration: 0.2s; - transition-timing-function: ease-out; - transition-delay: 0s; -} -.post-body .tabs ul.nav-tabs li.tab a i { - width: 1.285714285714286em; -} -.post-body .tabs ul.nav-tabs li.tab.active { - border-top: 3px solid #fc6423; - border-left: 1px solid #ddd; - border-right: 1px solid #ddd; - background-color: #fff; -} -@media (max-width: 413px) { - .post-body .tabs ul.nav-tabs li.tab.active { - border-top: 1px solid #ddd; - border-left: 3px solid #fc6423; - border-right: 1px solid #ddd; - border-bottom: 1px solid #ddd; - } -} -.post-body .tabs ul.nav-tabs li.tab.active a { - cursor: default; - color: #555; -} -.post-body .tabs .tab-content { - background-color: #fff; -} -.post-body .tabs .tab-content .tab-pane { - border: 1px solid #ddd; - padding: 20px 20px 0 20px; -} -.post-body .tabs .tab-content .tab-pane:not(.active) { - display: none !important; -} -.post-body .tabs .tab-content .tab-pane.active { - display: block !important; -} -.btn { - display: inline-block; - padding: 0 20px; - font-size: 14px; - color: #555; - background: transparent; - border: 2px solid #222; - text-decoration: none; - border-radius: 0; - transition-property: background-color; - transition-duration: 0.2s; - transition-timing-function: ease-in-out; - transition-delay: 0s; - line-height: 2; -} -.btn:hover { - border-color: #222; - color: #222; - background: #fff; -} -.btn +.btn { - margin: 0 0 8px 8px; -} -.btn .fa-fw { - width: 1.285714285714286em; - text-align: left; -} -.btn-bar { - display: block; - width: 22px; - height: 2px; - background: #555; - border-radius: 1px; -} -.btn-bar+.btn-bar { - margin-top: 4px; -} -.pagination { - margin: 120px 0 40px; - text-align: center; - border-top: 1px solid #eee; -} -.page-number-basic, -.pagination .prev, -.pagination .next, -.pagination .page-number, -.pagination .space { - display: inline-block; - position: relative; - top: -1px; - margin: 0 10px; - padding: 0 11px; -} -@media (max-width: 767px) { - .page-number-basic, - .pagination .prev, - .pagination .next, - .pagination .page-number, - .pagination .space { - margin: 0 5px; - } -} -.pagination .prev, -.pagination .next, -.pagination .page-number { - border-bottom: 0; - border-top: 1px solid #eee; - transition-property: border-color; - transition-duration: 0.2s; - transition-timing-function: ease-in-out; - transition-delay: 0s; -} -.pagination .prev:hover, -.pagination .next:hover, -.pagination .page-number:hover { - border-top-color: #222; -} -.pagination .space { - padding: 0; - margin: 0; -} -.pagination .prev { - margin-left: 0; -} -.pagination .next { - margin-right: 0; -} -.pagination .page-number.current { - color: #fff; - background: #ccc; - border-top-color: #ccc; -} -@media (max-width: 767px) { - .pagination { - border-top: none; - } - .pagination .prev, - .pagination .next, - .pagination .page-number { - margin-bottom: 10px; - border-top: 0; - border-bottom: 1px solid #eee; - padding: 0 10px; - } - .pagination .prev:hover, - .pagination .next:hover, - .pagination .page-number:hover { - border-bottom-color: #222; - } -} -.comments { - margin: 60px 20px 0; -} -.tag-cloud { - text-align: center; -} -.tag-cloud a { - display: inline-block; - margin: 10px; -} -.back-to-top { - box-sizing: border-box; - position: fixed; - bottom: -100px; - right: 30px; - z-index: 1050; - padding: 0 6px; - width: 24px; - background: #222; - font-size: 12px; - opacity: 1; - color: #fff; - cursor: pointer; - text-align: center; - -webkit-transform: translateZ(0); - transition-property: bottom; - transition-duration: 0.2s; - transition-timing-function: ease-in-out; - transition-delay: 0s; -} -@media (min-width: 768px) and (max-width: 991px) { - .back-to-top { - display: none !important; - } -} -@media (max-width: 767px) { - .back-to-top { - display: none !important; - } -} -.back-to-top.back-to-top-on { - bottom: 19px; -} -.header { - background: transparent; -} -.header-inner { - position: relative; -} -.headband { - height: 3px; - background: #222; -} -.site-meta { - margin: 0; - text-align: left; -} -@media (max-width: 767px) { - .site-meta { - text-align: center; - } -} -.brand { - position: relative; - display: inline-block; - padding: 0 40px; - color: #222; - background: #222; - border-bottom: none; -} -.brand:hover { - color: #222; -} -.logo { - display: inline-block; - margin-right: 5px; - line-height: 36px; - vertical-align: top; -} -.site-title { - display: inline-block; - vertical-align: top; - line-height: 36px; - font-size: 20px; - font-weight: normal; - font-family: 'Lato', "PingFang SC", "Microsoft YaHei", sans-serif; -} -.site-subtitle { - margin-top: 10px; - font-size: 13px; - color: #999; -} -.use-motion .brand { - opacity: 0; -} -.use-motion .logo, -.use-motion .site-title, -.use-motion .site-subtitle { - opacity: 0; - position: relative; - top: -10px; -} -.site-nav-toggle { - display: none; - position: absolute; - top: 10px; - left: 10px; -} -@media (max-width: 767px) { - .site-nav-toggle { - display: block; - } -} -.site-nav-toggle button { - margin-top: 2px; - padding: 9px 10px; - background: transparent; - border: none; -} -@media (max-width: 767px) { - .site-nav { - display: none; - margin: 0 -10px; - padding: 0 10px; - clear: both; - border-top: 1px solid #ddd; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .site-nav { - display: block !important; - } -} -@media (min-width: 992px) { - .site-nav { - display: block !important; - } -} -.menu { - margin-top: 20px; - padding-left: 0; - text-align: center; -} -.menu .menu-item { - display: inline-block; - margin: 0 10px; - list-style: none; -} -@media screen and (max-width: 767px) { - .menu .menu-item { - margin-top: 10px; - } -} -.menu .menu-item a { - display: block; - font-size: 13px; - line-height: inherit; - border-bottom: 1px solid transparent; - transition-property: border-color; - transition-duration: 0.2s; - transition-timing-function: ease-in-out; - transition-delay: 0s; -} -.menu .menu-item a:hover { - border-bottom-color: #222; -} -.menu .menu-item .fa { - margin-right: 5px; -} -.use-motion .menu-item { - opacity: 0; -} -.post-body { - font-family: 'Lato', "PingFang SC", "Microsoft YaHei", sans-serif; -} -@media (max-width: 767px) { - .post-body { - word-break: break-word; - } -} -.post-body .fancybox img { - display: block !important; - margin: 0 auto; - cursor: pointer; - cursor: zoom-in; - cursor: -webkit-zoom-in; -} -.post-body .image-caption, -.post-body .figure .caption { - margin: -20px auto 15px; - text-align: center; - font-size: 14px; - color: #999; - font-weight: bold; - line-height: 1; -} -.post-sticky-flag { - display: inline-block; - font-size: 16px; - -ms-transform: rotate(30deg); - -webkit-transform: rotate(30deg); - -moz-transform: rotate(30deg); - -ms-transform: rotate(30deg); - -o-transform: rotate(30deg); - transform: rotate(30deg); -} -.use-motion .post-block, -.use-motion .pagination, -.use-motion .comments { - opacity: 0; -} -.use-motion .post-header { - opacity: 0; -} -.use-motion .post-body { - opacity: 0; -} -.use-motion .collection-title { - opacity: 0; -} -.posts-expand { - padding-top: 40px; -} -@media (max-width: 767px) { - .posts-expand { - margin: 0 20px; - } - .post-body pre .gutter pre { - padding-right: 10px; - } - .post-body .highlight { - margin-left: 0px; - margin-right: 0px; - padding: 0; - } - .post-body .highlight .gutter pre { - padding-right: 10px; - } -} -@media (min-width: 992px) { - .posts-expand .post-body { - text-align: justify; - } -} -.posts-expand .post-body h2, -.posts-expand .post-body h3, -.posts-expand .post-body h4, -.posts-expand .post-body h5, -.posts-expand .post-body h6 { - padding-top: 10px; -} -.posts-expand .post-body h2 .header-anchor, -.posts-expand .post-body h3 .header-anchor, -.posts-expand .post-body h4 .header-anchor, -.posts-expand .post-body h5 .header-anchor, -.posts-expand .post-body h6 .header-anchor { - float: right; - margin-left: 10px; - color: #ccc; - border-bottom-style: none; - visibility: hidden; -} -.posts-expand .post-body h2 .header-anchor:hover, -.posts-expand .post-body h3 .header-anchor:hover, -.posts-expand .post-body h4 .header-anchor:hover, -.posts-expand .post-body h5 .header-anchor:hover, -.posts-expand .post-body h6 .header-anchor:hover { - color: inherit; -} -.posts-expand .post-body h2:hover .header-anchor, -.posts-expand .post-body h3:hover .header-anchor, -.posts-expand .post-body h4:hover .header-anchor, -.posts-expand .post-body h5:hover .header-anchor, -.posts-expand .post-body h6:hover .header-anchor { - visibility: visible; -} -.posts-expand .post-body ul li { - list-style: circle; -} -.posts-expand .post-body img { - box-sizing: border-box; - margin: auto; - padding: 3px; - border: 1px solid #ddd; -} -.posts-expand .post-body .fancybox img { - margin: 0 auto 25px; -} -@media (max-width: 767px) { - .posts-collapse { - margin: 0 20px; - } - .posts-collapse .post-title, - .posts-collapse .post-meta { - display: block; - width: auto; - text-align: left; - } -} -.posts-collapse { - position: relative; - z-index: 1010; - margin-left: 0; -} -.posts-collapse::after { - content: " "; - position: absolute; - top: 20px; - left: 0; - margin-left: -2px; - width: 4px; - height: 100%; - background: #f5f5f5; - z-index: -1; -} -@media (max-width: 767px) { - .posts-collapse { - margin: 0 20px; - } -} -.posts-collapse .collection-title { - position: relative; - margin: 60px 0; -} -.posts-collapse .collection-title h1, -.posts-collapse .collection-title h2 { - margin-left: 20px; -} -.posts-collapse .collection-title small { - color: #bbb; - margin-left: 5px; -} -.posts-collapse .collection-title::before { - content: " "; - position: absolute; - left: 0; - top: 50%; - margin-left: -4px; - margin-top: -4px; - width: 8px; - height: 8px; - background: #bbb; - border-radius: 50%; -} -.posts-collapse .post { - margin: 30px 0; -} -.posts-collapse .post-header { - position: relative; - transition-duration: 0.2s; - transition-timing-function: ease-in-out; - transition-delay: 0s; - transition-property: border; - border-bottom: 1px dashed #ccc; -} -.posts-collapse .post-header::before { - content: " "; - position: absolute; - left: 0; - top: 12px; - width: 6px; - height: 6px; - margin-left: -4px; - background: #bbb; - border-radius: 50%; - border: 1px solid #fff; - transition-duration: 0.2s; - transition-timing-function: ease-in-out; - transition-delay: 0s; - transition-property: background; -} -.posts-collapse .post-header:hover { - border-bottom-color: #666; -} -.posts-collapse .post-header:hover::before { - background: #222; -} -.posts-collapse .post-meta { - position: absolute; - font-size: 12px; - left: 20px; - top: 5px; -} -.posts-collapse .post-comments-count { - display: none; -} -.posts-collapse .post-title { - margin-left: 60px; - font-size: 16px; - font-weight: normal; - line-height: inherit; -} -.posts-collapse .post-title::after { - margin-left: 3px; - opacity: 0.6; -} -.posts-collapse .post-title a { - color: #666; - border-bottom: none; -} -.page-home .post-type-quote .post-header, -.page-post-detail .post-type-quote .post-header, -.page-home .post-type-quote .post-tags, -.page-post-detail .post-type-quote .post-tags { - display: none; -} -.posts-expand .post-title { - text-align: center; - word-break: break-word; - font-weight: 400; -} -.posts-expand .post-title-link { - display: inline-block; - position: relative; - color: #555; - border-bottom: none; - line-height: 1.2; - vertical-align: top; -} -.posts-expand .post-title-link::before { - content: ""; - position: absolute; - width: 100%; - height: 2px; - bottom: 0; - left: 0; - background-color: #000; - visibility: hidden; - -webkit-transform: scaleX(0); - -moz-transform: scaleX(0); - -ms-transform: scaleX(0); - -o-transform: scaleX(0); - transform: scaleX(0); - transition-duration: 0.2s; - transition-timing-function: ease-in-out; - transition-delay: 0s; -} -.posts-expand .post-title-link:hover::before { - visibility: visible; - -webkit-transform: scaleX(1); - -moz-transform: scaleX(1); - -ms-transform: scaleX(1); - -o-transform: scaleX(1); - transform: scaleX(1); -} -.posts-expand .post-title-link .fa { - font-size: 16px; -} -.posts-expand .post-meta { - margin: 3px 0 60px 0; - color: #999; - font-family: 'Lato', "PingFang SC", "Microsoft YaHei", sans-serif; - font-size: 12px; - text-align: center; -} -.posts-expand .post-meta .post-category-list { - display: inline-block; - margin: 0; - padding: 3px; -} -.posts-expand .post-meta .post-category-list-link { - color: #999; -} -.posts-expand .post-meta .post-description { - font-size: 14px; - margin-top: 2px; -} -.post-meta-divider { - margin: 0 0.5em; -} -.post-meta-item-icon { - margin-right: 3px; -} -@media (min-width: 768px) and (max-width: 991px) { - .post-meta-item-icon { - display: inline-block; - } -} -@media (max-width: 767px) { - .post-meta-item-icon { - display: inline-block; - } -} -@media (min-width: 768px) and (max-width: 991px) { - .post-meta-item-text { - display: none; - } -} -@media (max-width: 767px) { - .post-meta-item-text { - display: none; - } -} -@media (max-width: 767px) { - .posts-expand .post-comments-count { - display: none; - } -} -.post-button { - margin-top: 40px; -} -.posts-expand .post-tags { - margin-top: 40px; - text-align: center; -} -.posts-expand .post-tags a { - display: inline-block; - margin-right: 10px; - font-size: 13px; -} -.post-nav { - display: table; - margin-top: 15px; - width: 100%; - border-top: 1px solid #eee; -} -.post-nav-divider { - display: table-cell; - width: 10%; -} -.post-nav-item { - display: table-cell; - padding: 10px 0 0 0; - width: 45%; - vertical-align: top; -} -.post-nav-item a { - position: relative; - display: block; - line-height: 25px; - font-size: 14px; - color: #555; - border-bottom: none; -} -.post-nav-item a:hover { - color: #222; - border-bottom: none; -} -.post-nav-item a:active { - top: 2px; -} -.post-nav-item .fa { - position: absolute; - top: 8px; - left: 0; - font-size: 12px; -} -.post-nav-next a { - padding-left: 15px; -} -.post-nav-prev { - text-align: right; -} -.post-nav-prev a { - padding-right: 15px; -} -.post-nav-prev .fa { - right: 0; - left: auto; -} -.posts-expand .post-eof { - display: block; - margin: 80px auto 60px; - width: 8%; - height: 1px; - background: #ccc; - text-align: center; -} -.post:last-child .post-eof.post-eof.post-eof { - display: none; -} -.post-gallery { - display: table; - table-layout: fixed; - width: 100%; - border-collapse: separate; -} -.post-gallery-row { - display: table-row; -} -.post-gallery .post-gallery-img { - display: table-cell; - text-align: center; - vertical-align: middle; - border: none; -} -.post-gallery .post-gallery-img img { - max-width: 100%; - max-height: 100%; - border: none; -} -.fancybox-close, -.fancybox-close:hover { - border: none; -} -.rtl.post-body p, -.rtl.post-body a, -.rtl.post-body h1, -.rtl.post-body h2, -.rtl.post-body h3, -.rtl.post-body h4, -.rtl.post-body h5, -.rtl.post-body h6, -.rtl.post-body li, -.rtl.post-body ul, -.rtl.post-body ol { - direction: rtl; - font-family: UKIJ Ekran; -} -.rtl.post-title { - font-family: UKIJ Ekran; -} -.sidebar { - position: fixed; - right: 0; - top: 0; - bottom: 0; - width: 0; - z-index: 1040; - box-shadow: inset 0 2px 6px #000; - background: #222; - -webkit-transform: translateZ(0); -} -.sidebar a { - color: #999; - border-bottom-color: #555; -} -.sidebar a:hover { - color: #eee; -} -@media (min-width: 768px) and (max-width: 991px) { - .sidebar { - display: none !important; - } -} -@media (max-width: 767px) { - .sidebar { - display: none !important; - } -} -.sidebar-inner { - position: relative; - padding: 20px 10px; - color: #999; - text-align: center; -} -.site-overview-wrap { - overflow: hidden; -} -.site-overview { - overflow-y: auto; - overflow-x: hidden; -} -.sidebar-toggle { - position: fixed; - right: 30px; - bottom: 45px; - width: 14px; - height: 14px; - padding: 5px; - background: #222; - line-height: 0; - z-index: 1050; - cursor: pointer; - -webkit-transform: translateZ(0); -} -@media (min-width: 768px) and (max-width: 991px) { - .sidebar-toggle { - display: none !important; - } -} -@media (max-width: 767px) { - .sidebar-toggle { - display: none !important; - } -} -.sidebar-toggle-line { - position: relative; - display: inline-block; - vertical-align: top; - height: 2px; - width: 100%; - background: #fff; - margin-top: 3px; -} -.sidebar-toggle-line:first-child { - margin-top: 0; -} -.site-author-image { - display: block; - margin: 0 auto; - padding: 2px; - max-width: 96px; - height: auto; - border: 2px solid #333; -} -.site-author-name { - margin: 5px 0 0; - text-align: center; - color: #f5f5f5; - font-weight: normal; -} -.site-description { - margin-top: 5px; - text-align: center; - font-size: 14px; - color: #999; -} -.site-state { - overflow: hidden; - line-height: 1.4; - white-space: nowrap; - text-align: center; -} -.site-state-item { - display: inline-block; - padding: 0 15px; - border-left: 1px solid #333; -} -.site-state-item:first-child { - border-left: none; -} -.site-state-item a { - border-bottom: none; -} -.site-state-item-count { - display: block; - text-align: center; - color: inherit; - font-weight: 600; - font-size: 18px; -} -.site-state-item-name { - font-size: 13px; - color: inherit; -} -.feed-link { - margin-top: 20px; -} -.feed-link a { - display: inline-block; - padding: 0 15px; - color: #fc6423; - border: 1px solid #fc6423; - border-radius: 4px; -} -.feed-link a i { - color: #fc6423; - font-size: 14px; -} -.feed-link a:hover { - color: #fff; - background: #fc6423; -} -.feed-link a:hover i { - color: #fff; -} -.links-of-author { - margin-top: 20px; -} -.links-of-author a { - display: inline-block; - vertical-align: middle; - margin-right: 10px; - margin-bottom: 10px; - border-bottom-color: #555; - font-size: 13px; -} -.links-of-author a:before { - display: inline-block; - vertical-align: middle; - margin-right: 3px; - content: " "; - width: 4px; - height: 4px; - border-radius: 50%; - background: #ecff5d; -} -.links-of-blogroll { - font-size: 13px; -} -.links-of-blogroll-title { - margin-top: 20px; - font-size: 14px; - font-weight: 600; -} -.links-of-blogroll-list { - margin: 0; - padding: 0; - list-style: none; -} -.links-of-blogroll-item { - padding: 2px 10px; -} -.links-of-blogroll-item a { - max-width: 280px; - box-sizing: border-box; - display: inline-block; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -.sidebar-nav { - margin: 0 0 20px; - padding-left: 0; -} -.sidebar-nav li { - display: inline-block; - cursor: pointer; - border-bottom: 1px solid transparent; - font-size: 14px; - color: #555; -} -.sidebar-nav li:hover { - color: #f5f5f5; -} -.page-post-detail .sidebar-nav-toc { - padding: 0 5px; -} -.page-post-detail .sidebar-nav-overview { - margin-left: 10px; -} -.sidebar-nav .sidebar-nav-active { - color: #87daff; - border-bottom-color: #87daff; -} -.sidebar-nav .sidebar-nav-active:hover { - color: #87daff; -} -.sidebar-panel { - display: none; -} -.sidebar-panel-active { - display: block; -} -.post-toc-empty { - font-size: 14px; - color: #666; -} -.post-toc-wrap { - overflow: hidden; -} -.post-toc { - overflow: auto; -} -.post-toc ol { - margin: 0; - padding: 0 2px 5px 10px; - text-align: left; - list-style: none; - font-size: 14px; -} -.post-toc ol > ol { - padding-left: 0; -} -.post-toc ol a { - transition-duration: 0.2s; - transition-timing-function: ease-in-out; - transition-delay: 0s; - transition-property: all; - color: #999; - border-bottom-color: #555; -} -.post-toc ol a:hover { - color: #ccc; - border-bottom-color: #ccc; -} -.post-toc .nav-item { - overflow: hidden; - text-overflow: ellipsis; - text-align: justify; - white-space: nowrap; - line-height: 1.8; -} -.post-toc .nav .nav-child { - display: none; -} -.post-toc .nav .active > .nav-child { - display: block; -} -.post-toc .nav .active-current > .nav-child { - display: block; -} -.post-toc .nav .active-current > .nav-child > .nav-item { - display: block; -} -.post-toc .nav .active > a { - color: #87daff; - border-bottom-color: #87daff; -} -.post-toc .nav .active-current > a { - color: #87daff; -} -.post-toc .nav .active-current > a:hover { - color: #87daff; -} -.footer { - font-size: 14px; - color: #999; -} -.footer img { - border: none; -} -.footer-inner { - text-align: center; -} -.with-love { - display: inline-block; - margin: 0 5px; -} -.powered-by, -.theme-info { - display: inline-block; -} -.cc-license { - margin-top: 10px; - text-align: center; -} -.cc-license .cc-opacity { - opacity: 0.7; - border-bottom: none; -} -.cc-license .cc-opacity:hover { - opacity: 0.9; -} -.cc-license img { - display: inline-block; -} -.theme-next #ds-thread #ds-reset { - color: #555; -} -.theme-next #ds-thread #ds-reset .ds-replybox { - margin-bottom: 30px; -} -.theme-next #ds-thread #ds-reset .ds-replybox .ds-avatar, -.theme-next #ds-reset .ds-avatar img { - box-shadow: none; -} -.theme-next #ds-thread #ds-reset .ds-textarea-wrapper { - border-color: #c7d4e1; - background: none; - border-top-right-radius: 3px; - border-top-left-radius: 3px; -} -.theme-next #ds-thread #ds-reset .ds-textarea-wrapper textarea { - height: 60px; -} -.theme-next #ds-reset .ds-rounded-top { - border-radius: 0; -} -.theme-next #ds-thread #ds-reset .ds-post-toolbar { - box-sizing: border-box; - border: 1px solid #c7d4e1; - background: #f6f8fa; -} -.theme-next #ds-thread #ds-reset .ds-post-options { - height: 40px; - border: none; - background: none; -} -.theme-next #ds-thread #ds-reset .ds-toolbar-buttons { - top: 11px; -} -.theme-next #ds-thread #ds-reset .ds-sync { - top: 5px; -} -.theme-next #ds-thread #ds-reset .ds-post-button { - top: 4px; - right: 5px; - width: 90px; - height: 30px; - border: 1px solid #c5ced7; - border-radius: 3px; - background-image: linear-gradient(#fbfbfc, #f5f7f9); - color: #60676d; -} -.theme-next #ds-thread #ds-reset .ds-post-button:hover { - background-position: 0 -30px; - color: #60676d; -} -.theme-next #ds-thread #ds-reset .ds-comments-info { - padding: 10px 0; -} -.theme-next #ds-thread #ds-reset .ds-sort { - display: none; -} -.theme-next #ds-thread #ds-reset li.ds-tab a.ds-current { - border: none; - background: #f6f8fa; - color: #60676d; -} -.theme-next #ds-thread #ds-reset li.ds-tab a.ds-current:hover { - background-color: #e9f0f7; - color: #60676d; -} -.theme-next #ds-thread #ds-reset li.ds-tab a { - border-radius: 2px; - padding: 5px; -} -.theme-next #ds-thread #ds-reset .ds-login-buttons p { - color: #999; - line-height: 36px; -} -.theme-next #ds-thread #ds-reset .ds-login-buttons .ds-service-list li { - height: 28px; -} -.theme-next #ds-thread #ds-reset .ds-service-list a { - background: none; - padding: 5px; - border: 1px solid; - border-radius: 3px; - text-align: center; -} -.theme-next #ds-thread #ds-reset .ds-service-list a:hover { - color: #fff; - background: #666; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-weibo { - color: #fc9b00; - border-color: #fc9b00; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-weibo:hover { - background: #fc9b00; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-qq { - color: #60a3ec; - border-color: #60a3ec; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-qq:hover { - background: #60a3ec; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-renren { - color: #2e7ac4; - border-color: #2e7ac4; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-renren:hover { - background: #2e7ac4; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-douban { - color: #37994c; - border-color: #37994c; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-douban:hover { - background: #37994c; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-kaixin { - color: #fef20d; - border-color: #fef20d; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-kaixin:hover { - background: #fef20d; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-netease { - color: #f00; - border-color: #f00; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-netease:hover { - background: #f00; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-sohu { - color: #ffcb05; - border-color: #ffcb05; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-sohu:hover { - background: #ffcb05; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-baidu { - color: #2831e0; - border-color: #2831e0; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-baidu:hover { - background: #2831e0; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-google { - color: #166bec; - border-color: #166bec; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-google:hover { - background: #166bec; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-weixin { - color: #00ce0d; - border-color: #00ce0d; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-weixin:hover { - background: #00ce0d; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-more-services { - border: none; -} -.theme-next #ds-thread #ds-reset .ds-service-list .ds-more-services:hover { - background: none; -} -.theme-next #ds-reset .duoshuo-ua-admin { - display: inline-block; - color: #f00; -} -.theme-next #ds-reset .duoshuo-ua-platform, -.theme-next #ds-reset .duoshuo-ua-browser { - color: #ccc; -} -.theme-next #ds-reset .duoshuo-ua-platform .fa, -.theme-next #ds-reset .duoshuo-ua-browser .fa { - display: inline-block; - margin-right: 3px; -} -.theme-next #ds-reset .duoshuo-ua-separator { - display: inline-block; - margin-left: 5px; -} -.theme-next .this_ua { - background-color: #ccc !important; - border-radius: 4px; - padding: 0 5px !important; - margin: 1px 1px !important; - border: 1px solid #bbb !important; - color: #fff; - display: inline-block !important; -} -.theme-next .this_ua.admin { - background-color: #d9534f !important; - border-color: #d9534f !important; -} -.theme-next .this_ua.platform.iOS, -.theme-next .this_ua.platform.Mac, -.theme-next .this_ua.platform.Windows { - background-color: #39b3d7 !important; - border-color: #46b8da !important; -} -.theme-next .this_ua.platform.Linux { - background-color: #3a3a3a !important; - border-color: #1f1f1f !important; -} -.theme-next .this_ua.platform.Android { - background-color: #00c47d !important; - border-color: #01b171 !important; -} -.theme-next .this_ua.browser.Mobile, -.theme-next .this_ua.browser.Chrome { - background-color: #5cb85c !important; - border-color: #4cae4c !important; -} -.theme-next .this_ua.browser.Firefox { - background-color: #f0ad4e !important; - border-color: #eea236 !important; -} -.theme-next .this_ua.browser.Maxthon, -.theme-next .this_ua.browser.IE { - background-color: #428bca !important; - border-color: #357ebd !important; -} -.theme-next .this_ua.browser.baidu, -.theme-next .this_ua.browser.UCBrowser, -.theme-next .this_ua.browser.Opera { - background-color: #d9534f !important; - border-color: #d43f3a !important; -} -.theme-next .this_ua.browser.Android, -.theme-next .this_ua.browser.QQBrowser { - background-color: #78ace9 !important; - border-color: #4cae4c !important; -} -.post-spread { - margin-top: 20px; - text-align: center; -} -.jiathis_style { - display: inline-block; -} -.jiathis_style a { - border: none; -} -.fa { - font-family: FontAwesome !important; -} -.post-spread { - margin-top: 20px; - text-align: center; -} -.bdshare-slide-button-box a { - border: none; -} -.bdsharebuttonbox { - display: inline-block; -} -.bdsharebuttonbox a { - border: none; -} -.local-search-pop-overlay { - position: fixed; - width: 100%; - height: 100%; - top: 0; - left: 0; - z-index: 2080; - background-color: rgba(0,0,0,0.3); -} -.local-search-popup { - display: none; - position: fixed; - top: 10%; - left: 50%; - margin-left: -350px; - width: 700px; - height: 80%; - padding: 0; - background: #fff; - color: #333; - z-index: 9999; - border-radius: 5px; -} -@media (max-width: 767px) { - .local-search-popup { - padding: 0; - top: 0; - left: 0; - margin: 0; - width: 100%; - height: 100%; - border-radius: 0; - } -} -.local-search-popup ul.search-result-list { - padding: 0; - margin: 0 5px; -} -.local-search-popup p.search-result { - border-bottom: 1px dashed #ccc; - padding: 5px 0; -} -.local-search-popup a.search-result-title { - font-weight: bold; - font-size: 16px; -} -.local-search-popup .search-keyword { - border-bottom: 1px dashed #f00; - font-weight: bold; - color: #f00; -} -.local-search-popup .local-search-header { - padding: 5px; - height: 36px; - background: #f5f5f5; - border-top-left-radius: 5px; - border-top-right-radius: 5px; -} -.local-search-popup #local-search-result { - overflow: auto; - position: relative; - padding: 5px 25px; - height: calc(100% - 55px); -} -.local-search-popup .local-search-input-wrapper { - display: inline-block; - width: calc(100% - 90px); - height: 36px; - line-height: 36px; - padding: 0 5px; -} -.local-search-popup .local-search-input-wrapper input { - padding: 8px 0; - height: 20px; - display: block; - width: 100%; - outline: none; - border: none; - background: transparent; - vertical-align: middle; -} -.local-search-popup .search-icon, -.local-search-popup .popup-btn-close { - display: inline-block; - font-size: 18px; - color: #999; - height: 36px; - width: 18px; - padding-left: 10px; - padding-right: 10px; -} -.local-search-popup .search-icon { - float: left; -} -.local-search-popup .popup-btn-close { - border-left: 1px solid #eee; - float: right; - cursor: pointer; -} -.local-search-popup #no-result { - position: absolute; - left: 50%; - top: 50%; - -webkit-transform: translate(-50%, -50%); - -webkit-transform: translate(-50%, -50%); - -moz-transform: translate(-50%, -50%); - -ms-transform: translate(-50%, -50%); - -o-transform: translate(-50%, -50%); - transform: translate(-50%, -50%); - color: #ccc; -} -.site-uv, -.site-pv, -.page-pv { - display: inline-block; -} -.site-uv .busuanzi-value, -.site-pv .busuanzi-value, -.page-pv .busuanzi-value { - margin: 0 5px; -} -.site-uv { - margin-right: 10px; -} -.site-uv::after { - content: "|"; - padding-left: 10px; -} -.page-archive .archive-page-counter { - position: relative; - top: 3px; - left: 20px; -} -@media (max-width: 767px) { - .page-archive .archive-page-counter { - top: 5px; - } -} -.page-archive .posts-collapse .archive-move-on { - position: absolute; - top: 11px; - left: 0; - margin-left: -6px; - width: 10px; - height: 10px; - opacity: 0.5; - background: #555; - border: 1px solid #fff; - border-radius: 50%; -} -.category-all-page .category-all-title { - text-align: center; -} -.category-all-page .category-all { - margin-top: 20px; -} -.category-all-page .category-list { - margin: 0; - padding: 0; - list-style: none; -} -.category-all-page .category-list-item { - margin: 5px 10px; -} -.category-all-page .category-list-count { - color: #bbb; -} -.category-all-page .category-list-count:before { - display: inline; - content: " ("; -} -.category-all-page .category-list-count:after { - display: inline; - content: ") "; -} -.category-all-page .category-list-child { - padding-left: 10px; -} -#schedule ul#event-list { - padding-left: 30px; -} -#schedule ul#event-list hr { - margin: 20px 0 45px 0 !important; - background: #222; -} -#schedule ul#event-list hr:after { - display: inline-block; - content: 'NOW'; - background: #222; - color: #fff; - font-weight: bold; - text-align: right; - padding: 0 5px; -} -#schedule ul#event-list li.event { - margin: 20px 0px; - background: #f9f9f9; - padding-left: 10px; - min-height: 40px; -} -#schedule ul#event-list li.event h2.event-summary { - margin: 0; - padding-bottom: 3px; -} -#schedule ul#event-list li.event h2.event-summary:before { - display: inline-block; - font-family: FontAwesome; - font-size: 8px; - content: '\f111'; - vertical-align: middle; - margin-right: 25px; - color: #bbb; -} -#schedule ul#event-list li.event span.event-relative-time { - display: inline-block; - font-size: 12px; - font-weight: 400; - padding-left: 12px; - color: #bbb; -} -#schedule ul#event-list li.event span.event-details { - display: block; - color: #bbb; - margin-left: 56px; - padding-top: 3px; - padding-bottom: 6px; - text-indent: -24px; - line-height: 18px; -} -#schedule ul#event-list li.event span.event-details:before { - text-indent: 0; - display: inline-block; - width: 14px; - font-family: FontAwesome; - text-align: center; - margin-right: 9px; - color: #bbb; -} -#schedule ul#event-list li.event span.event-details.event-location:before { - content: '\f041'; -} -#schedule ul#event-list li.event span.event-details.event-duration:before { - content: '\f017'; -} -#schedule ul#event-list li.event-past { - background: #fcfcfc; -} -#schedule ul#event-list li.event-past > * { - opacity: 0.6; -} -#schedule ul#event-list li.event-past h2.event-summary { - color: #bbb; -} -#schedule ul#event-list li.event-past h2.event-summary:before { - color: #dfdfdf; -} -#schedule ul#event-list li.event-now { - background: #222; - color: #fff; - padding: 15px 0 15px 10px; -} -#schedule ul#event-list li.event-now h2.event-summary:before { - -webkit-transform: scale(1.2); - -moz-transform: scale(1.2); - -ms-transform: scale(1.2); - -o-transform: scale(1.2); - transform: scale(1.2); - color: #fff; - animation: dot-flash 1s alternate infinite ease-in-out; -} -#schedule ul#event-list li.event-now * { - color: #fff !important; -} -@-moz-keyframes dot-flash { - from { - opacity: 1; - -webkit-transform: scale(1.1); - -moz-transform: scale(1.1); - -ms-transform: scale(1.1); - -o-transform: scale(1.1); - transform: scale(1.1); - } - to { - opacity: 0; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -ms-transform: scale(1); - -o-transform: scale(1); - transform: scale(1); - } -} -@-webkit-keyframes dot-flash { - from { - opacity: 1; - -webkit-transform: scale(1.1); - -moz-transform: scale(1.1); - -ms-transform: scale(1.1); - -o-transform: scale(1.1); - transform: scale(1.1); - } - to { - opacity: 0; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -ms-transform: scale(1); - -o-transform: scale(1); - transform: scale(1); - } -} -@-o-keyframes dot-flash { - from { - opacity: 1; - -webkit-transform: scale(1.1); - -moz-transform: scale(1.1); - -ms-transform: scale(1.1); - -o-transform: scale(1.1); - transform: scale(1.1); - } - to { - opacity: 0; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -ms-transform: scale(1); - -o-transform: scale(1); - transform: scale(1); - } -} -@keyframes dot-flash { - from { - opacity: 1; - -webkit-transform: scale(1.1); - -moz-transform: scale(1.1); - -ms-transform: scale(1.1); - -o-transform: scale(1.1); - transform: scale(1.1); - } - to { - opacity: 0; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -ms-transform: scale(1); - -o-transform: scale(1); - transform: scale(1); - } -} -.page-post-detail .sidebar-toggle-line { - background: #87daff; -} -.page-post-detail .comments { - overflow: hidden; -} -h1, -h2, -h3, -h4, -h5, -h6 { - margin: 20px 0 10px; -} -p { - margin: 0 0 25px 0; -} -a { - border-bottom-color: #ccc; -} -hr { - margin: 20px 0; - height: 2px; -} -.main-inner { - margin-top: 80px; -} -.header { - background: #f5f5f5; -} -.header-inner { - padding: 25px 0 20px; -} -.header-inner:before, -.header-inner:after { - content: " "; - display: table; -} -.header-inner:after { - clear: both; -} -@media (max-width: 767px) { - .header-inner { - width: auto; - margin-bottom: 50px; - padding: 10px; - } -} -.site-meta { - float: left; - margin-left: -20px; - line-height: normal; -} -@media (max-width: 767px) { - .site-meta { - margin-left: 10px; - } -} -.site-meta .brand { - padding: 2px 1px; - background: none; -} -@media (max-width: 767px) { - .site-meta .brand { - display: block; - } -} -.site-meta .logo { - display: none; -} -.site-meta .site-title { - font-size: 22px; - font-weight: bolder; -} -@media (max-width: 767px) { - .site-meta .site-title { - line-height: 34px; - } -} -.logo-line-before, -.logo-line-after { - display: block; - overflow: hidden; - margin: 0 auto; - width: 75%; -} -@media (max-width: 767px) { - .logo-line-before, - .logo-line-after { - display: none; - } -} -.logo-line-before i, -.logo-line-after i { - position: relative; - display: block; - height: 2px; - background: #222; -} -@media (max-width: 767px) { - .logo-line-before i, - .logo-line-after i { - height: 3px; - } -} -.use-motion .logo-line-before i { - left: -100%; -} -.use-motion .logo-line-after i { - right: -100%; -} -.site-subtitle { - display: none; -} -.site-nav-toggle { - position: static; - float: right; -} -.menu { - float: right; - margin: 8px 0 0 0; -} -@media (max-width: 767px) { - .menu { - margin: 20px 0 0 0; - padding: 0; - } -} -.menu br { - display: none; -} -.menu .menu-item { - margin: 0; -} -@media (max-width: 767px) { - .menu .menu-item { - display: block; - } -} -.menu .menu-item a { - padding: 0 10px; - background: none; - border: none; - border-radius: 2px; - transition-property: background; -} -@media (max-width: 767px) { - .menu .menu-item a { - text-align: left; - } -} -.menu .menu-item a:hover { - background: #e1e1e1; -} -.menu a::before { - display: none; -} -@media (max-width: 767px) { - .menu a::before { - display: block; - } -} -@media (max-width: 767px) { - .menu { - float: none; - } -} -.site-search form { - display: none; -} -.posts-expand { - padding-top: 0; -} -.posts-expand .post-title, -.posts-expand .post-meta { - text-align: left; -} -@media (max-width: 767px) { - .posts-expand .post-title, - .posts-expand .post-meta { - text-align: center; - } -} -.posts-expand .post-eof { - display: none; -} -.posts-expand .post { - margin-top: 120px; -} -.posts-expand .post:first-child { - margin-top: 0; -} -.posts-expand .post-meta { - margin-top: 5px; - margin-bottom: 20px; -} -.posts-expand .post-title { - position: relative; - font-size: 26px; - font-weight: 400; -} -@media (max-width: 767px) { - .posts-expand .post-title { - font-size: 22px; - } -} -@media (min-width: 1600px) { - .posts-expand .post-title { - font-size: 26px; - } -} -.posts-expand .post-title:hover:before { - background: #222; -} -@media (max-width: 767px) { - .posts-expand .post-body { - font-size: 12px; - } -} -.posts-expand .post-body img { - margin: 0; -} -.posts-expand .post-tags { - text-align: left; -} -.posts-expand .post-tags a { - padding: 1px 5px; - background: #f5f5f5; - border-bottom: none; -} -.posts-expand .post-tags a:hover { - background: #ccc; -} -.posts-expand .post-nav { - margin-top: 40px; -} -.post-button { - margin-top: 20px; - text-align: left; -} -.post-button a { - padding: 0; - font-size: 14px; - background: none; - border: none; - border-bottom: 2px solid #666; - transition-property: border; -} -@media (max-width: 767px) { - .post-button a { - font-size: 12px; - } -} -@media (min-width: 1600px) { - .post-button a { - font-size: 16px; - } -} -.post-button a:hover { - border-bottom-color: #222; -} -.links-of-blogroll-inline .links-of-blogroll-item { - display: inline-block; -} -.btn { - padding: 0 10px; - border-width: 2px; - border-radius: 0; -} -.headband { - display: none; -} -.site-search { - position: relative; - float: right; - margin-top: 5px; - padding-top: 3px; -} -@media (max-width: 767px) { - .site-search { - float: none; - padding: 0 10px; - } -} -@media (max-width: 767px) { - .container .main-inner { - width: auto; - } -} -.page-post-detail .post-title, -.page-post-detail .post-meta { - text-align: center; -} -.page-post-detail .post-title:before { - display: none; -} -.page-post-detail .post-meta { - margin-bottom: 60px; -} -.pagination { - margin: 120px 0 0; - text-align: left; -} -@media (max-width: 767px) { - .pagination { - margin: 80px 10px 0; - text-align: center; - } -} -.footer { - margin-top: 80px; - padding: 10px 0; - background: #f5f5f5; - color: #666; -} -.footer-inner { - margin: 0 auto; - text-align: left; -} -@media (max-width: 767px) { - .footer-inner { - width: auto; - text-align: center; - } -} -.post-body p { - text-indent: 2em; -} diff --git a/data/CNAME b/data/CNAME new file mode 100755 index 0000000..f552226 --- /dev/null +++ b/data/CNAME @@ -0,0 +1 @@ +e点.com diff --git a/data/README.md b/data/README.md new file mode 100755 index 0000000..5962e42 --- /dev/null +++ b/data/README.md @@ -0,0 +1,9 @@ +unasm.github.com +================ +这里接下来做成一个个人博客吧 +@todo 使用php做一个解析当前目录的东西,然后自动更新目录文件,这样以后写好之后,就不用再更改其他的文件了 +鉴于自己的写作习惯,现制定如下规则, + 第一,书写的时候,代码部分自己手动添加 + 第二,每个\n 替换成为
+ 第三,不同大块之间通过blockquote 区分 + 第四,标题名字,title名字,

的名字,自动保持一直,代码搞定 diff --git a/data/blog.php b/data/blog.php new file mode 100755 index 0000000..03cba6e --- /dev/null +++ b/data/blog.php @@ -0,0 +1,8 @@ + + * @since 2013-11-10 21:42:54 + */ +echo "hello,world"; +?> diff --git a/data/css/data.xml b/data/css/data.xml new file mode 100755 index 0000000..115608d --- /dev/null +++ b/data/css/data.xml @@ -0,0 +1,3 @@ + + 恭喜你,少年! + diff --git a/data/css/index.css b/data/css/index.css new file mode 100644 index 0000000..11f61dd --- /dev/null +++ b/data/css/index.css @@ -0,0 +1,76 @@ +/** + * @name: ./index.css + * @author: unasm<1264310280@qq.com> + * @since : 2014-04-28 16:24:25 + */ + +html{ + margin:0; + padding:0; + background-color:#CACACA; + + min-height:100%; + height:100%; +} +.clearfix:after{ + visibility:hidden; + display:block; + content:""; + height:0px; + clear:both; +} +body{ + width:960px; + margin:0px auto; + border-left:1px solid #8d8d8d; + border-right:1px solid #8d8d8d; + padding:0 5%; + box-shadow:0 0 2px #8d8d8d; + background-color:white; + min-height:100%; + height:100%; + font-family:'sorts-mill-goudy','Bookman Old Style',serif; + line-height:1.5; +} +h1{ + text-align:center; + font-size:2.1em; + color:#666; + font-weight:normal; + margin:0px; +} +h1 em{ + color:black; +} +nav a{ + color:black; + text-decoration:none; + margin:10px 0; +} +nav li{ + padding:4px; + margin:5px 0; + border-radius:4px; +} +nav li:hover{ + background-color:gray; +} +a:hover{ + text-decoration:underline; +} +/****self的开始********/ +.self > *{ + float:left; +} +article{ + width:600px; + text-indent:2em; +} +article p{ + font-size:1.1em; +} +firgure img{ + width:200px; + border-radius:5px; +} +/**************/ diff --git a/data/css/layout.css b/data/css/layout.css new file mode 100755 index 0000000..a1859d3 --- /dev/null +++ b/data/css/layout.css @@ -0,0 +1,121 @@ +h2{ + text-align:center; +} +p,p a{ + color:grey; +} +strong{ + color:black; +} +ul{ + padding: 0px; + margin:0px; +} +a{ + text-decoration:none; +} +ul li{ + text-decoration:none; + list-style:none; + float:left; +} +.clearfix:after{ + visibility:hidden; + display:block; + content:""; + height:0px; + clear:both; +} +img{ + border:none; +} +code{ + background:black; + padding:8px; + border-radius:3px; + color:green; + margin:5px 0; +} +/****之上都是对具体标签的改造,下面开始布局***/ +html{ + background:#E6E6E6; + height: 100%; + padding: 0px; + _height:100%; +} +body{ + font-family:'Droid Serif', 'Microsoft Yahei', serif; + display: block; + padding: 0px; + text-align: center; + margin: 0px; + height: 100%; + _height:100%; + } +.wrap{ + text-align: left; + min-height: 100%; + width:1020px; + margin:0 auto; + background:white; + overflow-x:hidden; + padding:0 10px; + min-height: 100%; + _height:100%; + /* + 兼容性代码,防止在非ie下出现body出现滚动条 + */ +} +#header{ + width:100%; + height:70px; +} +.logo{ + float:left; + width:150px; + padding: 0px; + margin:0px; + line-height:70px; + text-align:center; +} +.nav{ + float:left; + width:870px; + margin:0px; + padding: 0px; +} +.nav>li{ + width:134px; + text-align: center; + margin:20px; + _width:115px; + list-style:none; + font-size:1.3em; +} +.choosed{ + border-bottom:2px solid red; +} +#header .menu ul li:last_child{ + border:none; + background:red; +} +.menu li{ + text-align:center; + width:100%; + font-size:17px; + padding:5px 0; + border-bottom:1px solid #494141; +} + +.menu ul{ + position:absolute; + background:rgba(0,0,0,0.8); + border-radius:2px; + width:134px; +} +.menu>a{ + color:#000; +} +.menu ul a{ + color:#C7C2C2; +} diff --git a/data/css/score.xml b/data/css/score.xml new file mode 100755 index 0000000..508aefb --- /dev/null +++ b/data/css/score.xml @@ -0,0 +1,28 @@ + + + + 123 + 123 + 3 + 23 + + + 123 + 13 + 133 + + + 123 + 13 + 133 + + + 123 + 13 + 133 + + + 13 + 133 + + diff --git a/data/curl.php b/data/curl.php new file mode 100644 index 0000000..c15a782 --- /dev/null +++ b/data/curl.php @@ -0,0 +1,43 @@ + +* @since : 2014-07-20 14:36:06 +*/ +function curl2($url , $post){ + $curl = curl_init(); + curl_setopt($curl , CURLOPT_URL, $url); + //curl_setopt($curl , CURLOPT_RETURNTRANSFER , 1); + curl_setopt($curl , CURLOPT_SSL_VERIFYPEER, false); + curl_setopt($curl , CURLOPT_CUSTOMREQUEST,'POST'); + + $userAgent ='Mozilla/5.0 (X11; Linux x86_64) AppleWebit/537.36 ()HTML, like Gecko) Ubuntu Chromium/34.0.1847.116 Chrome/34.0.1847.116 Safari/537.36'; + curl_setopt($curl , CURLOPT_USERAGENT , $userAgent); + curl_setopt($curl , CURLOPT_RETURNTRANSFER , 1); + curl_setopt($curl , CURLOPT_POST, 1); + //curl_setopt($curl , CURLOPT_HTTPHEADER , $header); + curl_setopt($curl , CURLOPT_POSTFIELDS , $post); + $data = curl_exec($curl); + curl_close($curl); + echo $data; +} + +$post = array( + 'client_id' => "410943492", + 'client_secret' => "5fa05954154245442574a0a0eb38b217", + 'grant_type' => "authorization_code" , + 'redirect_uri' => "http://127.0.0.4:8080" , + 'code' => "8f7a8d324c18f4c15e2aa560df2587b6" +); +/* +$post['client_id'] = "410943492"; +$post['client_secret'] = "5fa05954154245442574a0a0eb38b217"; +$post['grant_type'] = "authorization_code"; +//$post['redirect_uri'] = "http://apps.weibo.com/doujiamin"; +$post['redirect_uri'] = "http://127.0.0.4:8080/"; +//$post['code'] = "339049f58be134a0eb647fe9556008d3"; +$post['code'] = "8f7a8d324c18f4c15e2aa560df2587b6"; + */ +curl2("https://api.weibo.com/oauth2/access_token" , $post); +//curl2("http://127.0.0.3:8080/utils/get.php" , $post); +?> diff --git "a/data/curl\346\250\241\346\213\237\347\231\273\345\275\225.html" "b/data/curl\346\250\241\346\213\237\347\231\273\345\275\225.html" new file mode 100644 index 0000000..87db5f3 --- /dev/null +++ "b/data/curl\346\250\241\346\213\237\347\231\273\345\275\225.html" @@ -0,0 +1,30 @@ + + + + + curl模拟登录 + + + +
+

curl模拟登录

+
+

+ 其实相比于一般的curl发送数据来说只有一条需要注意的,就是cookie的保存方式 + curl_setopt($curl,CURLOPT_COOKIEJAR,$this->cookieFile); + 就是需要通过CURLOPT_COOKIEJAR这个设置将cookie保存起来 +

+

+ 在上面的登录之后,每次需要使用之前的cookie文件,就是设置CURLOPT_COOKIEFILE,讲之前的cookie文件发送,这样就可以模拟登录了 + + curl_setopt($curl,CURLOPT_COOKIEFILE,$this->cookieFile); + +

+

+ 因为网站设置了HTTP_USER_AGENT检查,就需要curl_setopt设置 curl_setopt($curl,CURLOPT_USERAGENT,"Mozilla/5.0 (X11; Linux x86_64) AppleWebit/537.36 ()HTML, like Gecko) Ubuntu Chromium/33.0.1750.152 Chrome/33.0.1750.152 Safari/537.36"),保证不会因为非浏览器访问的问题被禁止掉; +

+

然后,就可以作为信息采集的重要利器了

+
+
+ + diff --git a/data/data.xml b/data/data.xml new file mode 100755 index 0000000..115608d --- /dev/null +++ b/data/data.xml @@ -0,0 +1,3 @@ + + 恭喜你,少年! + diff --git "a/data/data/\346\265\213\350\257\225.txt" "b/data/data/\346\265\213\350\257\225.txt" new file mode 100644 index 0000000..383b9a4 --- /dev/null +++ "b/data/data/\346\265\213\350\257\225.txt" @@ -0,0 +1,3 @@ + 这里是标题 + 这里是内容, + 还有换行哦 diff --git "a/data/discus\346\272\220\347\240\201\345\210\206\346\236\220.html" "b/data/discus\346\272\220\347\240\201\345\210\206\346\236\220.html" new file mode 100644 index 0000000..d3524b6 --- /dev/null +++ "b/data/discus\346\272\220\347\240\201\345\210\206\346\236\220.html" @@ -0,0 +1,65 @@ + + + + + discuz源码分析 + + + +

here is the blog html, you welcome to visitor

+

index.php 负责了对url的解析和分流,虽然不是很清楚,但是它将app,mobile, 还有各级二级域名的内容导向各个分区,我目前进入了forum.php , 网页版本的主操作文件

+

forum.php 开始处理论坛模块的核心功能,首先定义全局变量define (apptypeId ,curscript) ,之后载入class_core.php 和function_forum.php

+

class_core 函数里面的class比较多,核心是 class disduz_core, 负责调用协调其他的各个class ,discuz_mysql ,discuz_session , db , discuz_cron ,discuz_process ,discuz_memory

+
+

discuz_core 里面init_input中对全局变量进行处理,防止对全局变量的注入 , 包含了对post , get cookie ,files的处理和转码 ,rewrite的处理(ps:看不懂它在做什么)

+

discuz_core的init_config中引入了全局配置文件config/config_global.php,做了一些处理之后,将config中的内容引入,成为全局变量

+

discuz_core的init_env中主要对公用的全局变量$_G进行了设置,然后保存在$this->var之中

+

discuz_core的init_output主要是针对xss攻击和防止页面刷新,以及对输出解压的问题

+
+
+

discuz_core init主要是针对各个不同的功能进行初始化设设置

+

_init_db 是对数据库的初始化,连接数据库和设置数据库 ,调用了class DB 我想本意是使用工厂模式,但是子类里面只有db_mysql

+

init_user 是对用户信息的设置,包括用户名和密码 id,以及其他的一些东西

+

init_session 首先检测是否有之前的session信息,包括对非法ip的检测,个人的登录时间,ip的刷新设置,用户组的分配等

+

init style 应该是对论坛风格的设置,网站的外观,是将styleId保存在cookie中的方式进行存储的,不过目前此功能被禁止了,大概是不可以选择论坛风格的意思吧,在settting里面可以看到选择了默认的style

+

init_setting中设置了用户组和用户的论坛风格,将他们加入cachelist,还不清楚cachelist有什么用处

+

+ init_mobile 是针对手机版本进行的设置,进入之后,首先是检查是否运行添加手机版本,不允许则强制退出 + 通过$_SERVER['http_user_agent']的关键字匹配检验是否是手机浏览器浏览网站,屏蔽手机浏览器, + + if(preg_match('/(mozilla|chrome|safari|opera|m3gate|winwap|openwave)/i', $_SERVER['HTTP_USER_AGENT'])) { + return false; + + 也就是说这种情况下不可与访问 + 如果没有设置手机跳转,则不行 + 通过浏览器的get方式获取浏览的方式,标准版,急速版,电脑版 +

+
+
+

init_cron 的作用是执行一些定期的任务,通过时间戳的全局变量内保存的cronnextrun(cronNextRun)来确定,cronnextrun 指的一个是一个确定的时间戳

+
+
+

discuz_process中用于功能进程管理,防止某些功能并发产生,不清楚是因为安全,还是因为性能 ,以后再看吧,目前先完成整体框架的理解

+
+
+

init_misc misc是功能的

+

导入核心语言包

+

设置时区(不用这样吧..时区好像设置成为可选的了)

+

锁定用户和封禁用户

+

站点开关检查

+

禁止访问时段检查

+

每日登录奖励

+
+
+

discuz class_core DB的实现方式,我不是很理解,这里好像涉及了某种设计模式(并且我不是很清楚),而且,通过静态函数的方式....暂时先不理会,理解了discuz的整体框架之后再说

+

一天后.....

+

好像是单例模式和工厂模式的融合,通过静态的变量检测,实现DB的单例化,同时在DB里面约定好接口,db_mysql 在DB的构造函数里面通过单例化和引用构造,实现工厂模式的适配

+
+
+

终于看到想看的内容了,就是模板解析。。。总体来说,就一句话,各种正则表达式替换生成,保存,就是了

+

首先通过fread,filesize将文件读取进来,然后正则开始替换,大概有十几个正则的样子,然后通过flock,fwrite,写入文件,fclose就是了

+

至于preg_replace正则是怎么匹配的,真是没有兴趣理解。

+

顺便说一下发现的一个bug,没有文件解锁,这点。。。不同php版本情况不同

+
+ + diff --git "a/data/discuz\345\222\214ci\350\256\276\350\256\241\346\236\266\346\236\204\344\270\212\347\232\204\345\233\260\346\203\221.html" "b/data/discuz\345\222\214ci\350\256\276\350\256\241\346\236\266\346\236\204\344\270\212\347\232\204\345\233\260\346\203\221.html" new file mode 100644 index 0000000..2615eec --- /dev/null +++ "b/data/discuz\345\222\214ci\350\256\276\350\256\241\346\236\266\346\236\204\344\270\212\347\232\204\345\233\260\346\203\221.html" @@ -0,0 +1,15 @@ + + + + discuz和ci设计架构上的困惑 + + + +

单入口模式,是ci一直都很遵守的一点,除了index.php页面,其他的页面都有预防直接访问,但是discuz不是,就目前来说,通过源码的分析,我找到了至少三处

+

+ 非单入口模式我还没有接触太久,太多的东西不好说,只是感觉这样不好,单入口模式可以维持不同模块的代码复用,和逻辑上的统一,以及强制性的维系不同模板的关系, + 然后discuz虽然通过class_core和function_core的方式维持不同模板之间的代码复用 ,但是实例化和调用的代码却分开的,感觉这样会增加工作量,一旦某些开发者对整个框架的理解不够深入的时候,或许会出一些问题,造成开发效率的降低 +

+

刚刚接触的想法,具体怎么样,看以后开发吧

+ + diff --git a/data/expect.sh b/data/expect.sh new file mode 100755 index 0000000..7632f60 --- /dev/null +++ b/data/expect.sh @@ -0,0 +1,31 @@ +#!/usr/bin/expect -f +#send "Enter your password:" +#set password [lindex $argv 0] +#send "$password\r\n" +#puts "args : $password" +#set a='prompt "Enter an answer" silence 10' + +#Enter an answer: test +#echo Answer was "$a" + +set password VMF9>4z@426Y +set ipArr {"100.73.13.15" "100.73.13.5"} +set len [llength $ipArr] +for {set i 0} {$i<[llength $ipArr]} {incr i} { + #puts "[lindex $ipArr $i]" + set ip "[lindex $ipArr $i]" + spawn scp -r qitui root@$ip:/data/www/ + expect "root@$ip's password:" + send "$password\r" + send "exit\r" + expect eof +} +#foreach i in $ipArr { +# puts "$i" +#} + +#spawn scp -r /Users/tianyi/main.go root@100.73.13.5:/root/ +#expect "root@100.73.13.5's password:" +#send "$password\r" +#send "exit\r" +#expect eof diff --git a/data/formTab.js b/data/formTab.js new file mode 100755 index 0000000..60f55d4 --- /dev/null +++ b/data/formTab.js @@ -0,0 +1,91 @@ +/** + * @name ./formTab.js + * @author unasm < 1264310280@qq.com > + * @since 2013-11-15 19:25:22 + */ +/** + * @param contst QESTNUM question_num 总共有多少个问题 + */ +var QESTNUM = 5; +$(document).ready(function () { + var sum = Array(); + var _table = document.getElementById("table"); + $.ajax({ + url: 'score.xml',dataType: 'xml', + success: function (data, textStatus, jqXHR) { + var boys = data.getElementsByTagName("boy"); + var len = boys.length; + for (var i = 0 ; i < len; i ++) { + sum[i] = 0; + var tBoy = boys[i]; + for (var j = 0, lj = tBoy.childNodes.length; j < lj; j ++) { + if(tBoy.childNodes[j].tagName == "score"){ + sum[i] += $(tBoy.childNodes[j]).text() - 0; + } + } + } + var tabStr = ""; + for (var i = 0; i < len ; i ++) { + var node = getMax(sum); + tabStr += formTr(boys[node] , sum[node]); + sum[node] = 0; + } + $(_table).append(tabStr) + showTr(); + }, + error: function (jqXHR, textStatus, errorThrown) { + alert(textStatus) + } + }); + /** + * 一个小效果,一个一个的显示 + * table-row; + */ + function showTr() { + var trs = $(_table).find("tr"); + var trsLen = trs.length,idx = 0; + console.log(trsLen); + var flag = setInterval(function () { + if(idx === trsLen)clearInterval(flag); + idx++; + $(trs[idx]).css("opacity","0").css("display","table-row").animate({ + opacity:"1", + "margin-top":0 + },400) + },150) + } + function getMax() { + var node = 0,max = sum[0]; + for (var i = 1, l = sum.length; i < l; i ++) { + if(sum[i] > max){ + max = sum[i]; + node = i; + } + } + return node; + } + /** + * 构成table 的tr + * @param node boy xml的一个boy节点 + */ + function formTr(boy ,total ) { + var pointer = 0 , boyLen = boy.childNodes.length; + var res = "" + $(boy).attr("name") +"" + total + ""; + var quesId = 1; + while( (pointer < boyLen) ){ + if(boy.childNodes[pointer].tagName == "score"){ + var score = boy.childNodes[pointer]; + var nextQuestionId = parseInt( $(score).attr("name") ); + for(;quesId <= QESTNUM && quesId < parseInt($(score).attr("name") );quesId++){ + //留下一个添加通过的情况 + res += ""; + } + res += "" + $( score ).text() + ""; + quesId++; + } + pointer++; + } + res += ""; + return res; + } +}) diff --git a/data/git.html b/data/git.html new file mode 100755 index 0000000..93a870c --- /dev/null +++ b/data/git.html @@ -0,0 +1,18 @@ + + + + + git的使用感受 + + +
+ +
+

+ git的使用误区 +

+
+
+ + diff --git a/data/gitChange.html b/data/gitChange.html new file mode 100755 index 0000000..aaa2df9 --- /dev/null +++ b/data/gitChange.html @@ -0,0 +1,124 @@ + + + + + + + + + + + +
+ +

 

+ +

                                     Gitϵͳ֮ssh޷õ

+ +

         ֮ǰÿλϵͳҪиsshȻǺ鷳Ǻα

+ +

  .sshĿ¼ΪãǻDzУᱨ˵Permission  denied(publishkey) fat:The*****ݴĹ˵Ҫssh-add ߱,ûһ֤ssh ӣʱҪeval $(ssh-agent) õ

+ +

+ +

ʵ֮ǰһûôһó

+ +

Ȼٴssh-add

+ +

֮ǰssh Ϳظ

+ +

 

+ +

 

+ +

Ҳںءӽĸо˵Ȼʱ⣬֢٣Ľid_rsaļҪУȻͨssh-addķʽ .sshķ.pubļͿ

+ +
+ + + + diff --git a/data/grep.html b/data/grep.html new file mode 100755 index 0000000..9ef2d08 --- /dev/null +++ b/data/grep.html @@ -0,0 +1,15 @@ + + + + + grep的使用 + + +

grep 从当前目录里面搜索特定的关键词的命令为 grep -i stringName -R * -l

+

stringName 就是想要搜索的文件的名字

+

-i的含义为不区大小写

+

-l的意义在于显示包含所搜索字符串的文件名字以及目录

+

* 表示对文件的限制条件 * 表示一切文件,但是如果是*.html那就只在html里面搜索了,这里应该可以使用正则来处理

+

-R 在当前目录里面递归查找

+ + diff --git a/data/head.js b/data/head.js new file mode 100755 index 0000000..85f419a --- /dev/null +++ b/data/head.js @@ -0,0 +1,55 @@ +/** + * 页面的首部js控制 + * 目前主要是控制下拉表单的显示隐藏 + * @name head.js + * @author unasm < 1264310280@qq.com > + * @since 2013-11-13 21:23:56 +*/ +/** + * 控制菜单栏的显示隐藏 + * @param dom _ul 当前显示隐藏的节点 + * @param boolen _flag 标志位,500ms内禁止任何显示隐藏 + * @param boolen _inside 标志位,检查光标当前的位置,为关闭做准备 + */ +function menuControl() { + var _ul = "",_flag = 0,_inside = 0; + $(".nav").delegate(".menu","mouseenter",function () { + if(_flag)return false;//在500ms内不再显示和隐藏 + _flag = 1; + var tmpul = $(this).find("ul"); + tmpul = tmpul[0];//进行显示隐藏的节点 + if(tmpul != _ul){ + $(_ul).fadeOut();//进入另一个ul,之前的隐藏,以免出现bug + } + _inside = 1; + _ul = tmpul; + //检查是不是在一个 + var height = $(_ul).height(); + $(_ul).css("opacity",0).css("display","").css("height",'0px').animate({ + opacity:"1", + height:height + },500) + setTimeout(function() { + _flag = 0; + }, 520); + }).delegate(".menu","mouseleave",function(){ + _inside = 0;//进行缓冲,一面因为微动导致隐藏,500ms之后还是离开,则隐藏 + setTimeout(function() { + if(_inside === 0) + $(_ul).fadeOut(); + }, 500); + }); +} +$(document).ready(function () { + $.ajax({ + url: 'head.html', + dataType: 'html', + success: function (data, textStatus, jqXHR) { + document.getElementById("header").innerHTML = data; + menuControl(); + }, + error: function (jqXHR, textStatus, errorThrown) { + alert(textStatus); + } + }); +}) diff --git a/data/image/image001.png b/data/image/image001.png new file mode 100755 index 0000000..2a431c0 Binary files /dev/null and b/data/image/image001.png differ diff --git a/data/image/image002.png b/data/image/image002.png new file mode 100755 index 0000000..0132cfc Binary files /dev/null and b/data/image/image002.png differ diff --git a/data/image/image003.png b/data/image/image003.png new file mode 100755 index 0000000..96e4354 Binary files /dev/null and b/data/image/image003.png differ diff --git a/data/image/image004.png b/data/image/image004.png new file mode 100755 index 0000000..8b0f30f Binary files /dev/null and b/data/image/image004.png differ diff --git a/data/image/self.jpg b/data/image/self.jpg new file mode 100755 index 0000000..9444238 Binary files /dev/null and b/data/image/self.jpg differ diff --git a/data/index.css b/data/index.css new file mode 100644 index 0000000..ba8f3e7 --- /dev/null +++ b/data/index.css @@ -0,0 +1,62 @@ +/** + * @name: ./index.css + * @author: unasm<1264310280@qq.com> + * @since : 2014-04-28 16:24:25 + */ + +li{ + list-style-type:none; +} +html{ + margin:0; + padding:0; + background-color:#E6E6E6; + font-family:'sorts-mill-goudy','Bookman Old Style',serif; + min-height:100%; + height:100%; +} +.clearfix:after{ + visibility:hidden; + display:block; + content:""; + height:0px; + clear:both; +} +body{ + width:960px; + margin:0px auto; + border-left:1px solid #8d8d8d; + border-right:1px solid #8d8d8d; + padding:0 5%; + box-shadow:0 0 2px #8d8d8d; + background-color:white; + min-height:100%; + height:100%; +} +ul li{ + margin:10px 0; +} +nav a{ + color:black; + text-decoration:none; + display:block; + margin:10px 0; +} +a:hover{ + text-decoration:underline; +} +/****self的开始********/ +.self > *{ + float:left; +} +.self article{ + width:600px; + line-height:1.6em; + text-indent:2em; + font-size:1.2em; +} +firgure img{ + width:200px; + border-radius:5px; +} +/**************/ diff --git a/data/index.html b/data/index.html new file mode 100644 index 0000000..214ccfa --- /dev/null +++ b/data/index.html @@ -0,0 +1,341 @@ + + + + +豆家敏 + + + +

豆家敏

+ + + +

技术能力

+ +