一日黄山

由于我悲剧的手机线充,去黄山的这两天不敢随意上推,也就无法随时记录这次黄山一日的一些感受想法,下面这些字是回来后回想,些许带着情绪。标题很明显就带着情绪。

  1. 坐车真累,17 号早上 7 点出发,12 点才到汤口,这一路车坐的屁股疼。由于不能手机上网玩,真的很无趣,只有睡觉。所以说,手机在有些时候是打发时间的绝佳武器。
  2. 一路上的风景远观都很不错,很多油菜花,黄灿灿一片非常漂亮。
  3. 往南走,能看到很多跟北方不一样的东西,比如建筑,两层尖顶小楼,应该是南方雨水多带来的特色建筑。
  4. 旅游团订的午餐很烂,而且量很少,我们一桌人几乎都没吃饱。
  5. 导游吃饭前是说先到宾馆,然后再计划下一步是休息还是宏村转转,结果吃了饭把你装上车就跟你耗着,不去宏村就不回宾馆,当然,去宏村的门票要再算。还好老板说给报销,不然估计得在大巴上憋几个小时。
  6. 宏村的设计相当赞,非常的系统化。村子保存的很不错,虽然现在人工修复的痕迹很浓,依然能看出几百年前的样子。
  7. 在宏村想去买点纪念品,但都知道旅游时候买这种东西就是明摆着让人宰,一个木工艺品要价 15,最后 5 块钱入手。
  8. 晚上住宿就是个杯具,先是我们 43 个人被分成两批,说一个宾馆住不下,13 个人出去另一个宾馆,半路上又把我们 13 个人再次劈开,6 个人去一民宅,另外 7 个去另外一小区民宅,完全让导游宰割,你却没啥办法。
  9. 早上 3 点起床,早餐,然后换乘黄山旅游大巴上山,盘山路真险,绝对十八弯。
  10. 缆车上山,开始发现人多,接下来一整天的感受就是人多。
  11. 风景确实很美,只可惜 18 号天公不作美,早上阴天,远景看的不是太清楚。临时充当领队,拍了不少照片,可惜不是自己的相机,还没拿到照片。嗯,在黄山上,真的想要一个相机。
  12. 八点不到的样子,阵雨如期而至。只见满山上都是雨衣,很好很强大。
  13. 雨中感到光明顶,风大,只拍了几张。
  14. 漫长的前山到后山之行,人挨着人,人挤着人,想走快是妄想,想慢走看景也是不可能。就这么“被”走了三公里到迎客松。
  15. 人真多真多!玉屏峰全是人!下山口严重拥堵,据前方导游说中午时分上山的人依然很多,下山和上山的人在黄山狭窄的石道上堵住了。
  16. 人太多,完全没有兴致玩了,排队下山。下山到天都峰路口时候,天气放晴,云雾飘渺,漂亮。
  17. 上山容易下山难,生生走了两个小时,累的腿都要断掉。
  18. 导游安排到一茶楼品茶,还是有不少同事被营销,纷纷出手买茶叶,可惜咱乡下人,不懂品茶,省掉。
  19. 走了一天真累,粗略算下来有 20 里山路,所以回来的车上歪头就睡着了。
  20. 十点半到合肥,打车回到家,洗洗睡吧。

景色真的很不错,只可惜人太多,又下着雨,完全没法去观景,就被挤着走路了。回头跟老婆挑个好时节好天气再去一番。

Update:今早看新闻,发现自己一不小心还参与创造黄山游客记录,四月这种淡季居然赶上五一十一黄金周的人流量了,其实原因很简单,黄山这一天门票半价,我也是上山后听导游说才知道的。

Missing

刚送老婆上车,心里就空落落的。顺着那条破路往家走。

到楼下,不想上去,一个人呆在屋里不好玩,就去老梁那边串门,扯淡到九点,还是得回去。

肯定睡不着,所以就看无聊的肥皂剧。一集、两集,其实我是在等老婆上火车,顺便等我生物钟赶紧到,这样就可以倒头就睡着。

半夜醒来无数次,一个人的被窝太冷。

早上六点半闹钟,我还是习惯性的关掉,然后再眯一会。

可惜眯一会就没人再叫我了,所以我七点二十惊醒,然后飞奔到公司。

老婆赶紧回来。

PHP 里常量和变量的区别

  1. 常量前面没有美元符号($);
  2. 常量只能用 define() 函数定义,而不能通过赋值语句;
  3. 常量可以不用理会变量范围的规则而在任何地方定义和访问;
  4. 常量一旦定义就不能被重新定义或者取消定义;
  5. 常量的值只能是标量。

Delphi ADOTable 增删查改

//添加记录

ADOTable1.AppendRecord([val1,val2]);

//删除记录

 ADOTable1.Filter :='SaleID='''+text+'''';
 ADOTable1.Filtered := true;
 if ADOTable1.RecordCount = 0 then
      begin
          ADOTable1.Filtered := false;
      end;
 else
      begin
          ADOTable1.Filtered := true;
          ADOTable1.Delete;
          ADOTable1.Filtered := false;
      end;

//查找记录

ADOTable1.Filter := 'SaleID='''+text+'''' ;
ADOTable1.Filtered :=True;

//更新记录

ADOTable1.Edit;
ADOTable1.FieldByName('SaleID').Asstring := text;
ADOTable1.Post;

Delphi ADODataset 增删查改

//Select/Refresh

ADODataset1.Active := false;
ADODataset1.CommandText := 'select *  from Table_1';
ADODataset1.Active := true;

//Add

ADODataset1.Append;
ADODataset1.Fieldbyname('ID').Value := edit1.Text;

//Delete

ADODataset1.Delete;

//Update

ADODataset1.Edit;
ADODataset1.Fieldbyname('ID').Value := edit1.Text;
ADODataset1.Post;

Why GAE?Why Picky?

Why GAE?为什么用 GAE 做 Blog 平台,参见 Livid 的把博客架在 Google App Engine 上的好处,自己的观点:

  1. WP 越来越庞大。WP 的功能强大和定制性毋庸置疑,但是随着 WP 的功能强大,效率和安全性越来越是个问题;
  2. 主机服务器的问题,在国内要备案要审查,这也是为啥我放弃了之前在国内的博客停止更新;
  3. GAE 是免费,并且满足自己折腾。

在放弃 WP 转战“云博客”的时候,也考虑过 Blogger、WP.com、Posterous 这种 BSP,不过还是放弃了,原因:

  1. Blogger、Posterous 虽然也可以自己绑定域名,但你能够折腾的只有内容和样式布局上,在整体功能上还是受限,参考上面第三条;
  2. WP.com 可以让我无痛转移之前博客过去,但不能绑定域名;
  3. GAE 的强大免费以及对 Google 的中毒,:)

Why Picky?Blog system powered by GAE 有很多,其中徐明的 Micolog 和丛林大侠的 iHere 异常强大,最吸引我的就是都支持 WP 导入,但是这两个的强大带来的一个问题就像是 WP 的庞大,有很多自己不非常需要的功能。另外,Picky 有很多非常吸引我的地方;

  1. Clean,no unnecessary visual noises,focus on writing;
  2. Employ sexy technologies like HTML5,Twitter;
  3. Integrated Twitter client,synchronize to Twitter automatically.

至于 appspot 被墙,这年头谁上网还没几个翻墙的家伙什?!

这就是为什么我选择 GAE+Picky 作为自己的发布平台,Easy to share my thought and opinion。

Delphi ADOQuery查询、插入、删除、修改

//查询记录

with ADOQuery do begin
    Close;
    SQL.Clear;
    SQL.Add('Select * From Table');
    Open;
end;

//插入记录

with ADOQuery do begin
    Close;
    SQL.Clear;
    SQL.Add('Insert Into Table(val1,val2) values(:val1,:val2)');
    Parameters.ParamByName('val1').Value := Trim(Edit1.Text);
    Parameters.ParamByName('val2').Value := Trim(Edit2.Text);
    ExecSQL;
end;

//删除记录

with ADOQuery do begin
    Close;
    SQL.Clear;
    SQL.Add('Delete from TABLE where val1=:val1'); // =: 前后都不可有空格;
    Parameters.ParamByName('val1').Value := Trim(Edit1.Text);
    ExecSQL;
end;

//修改记录

with ADOQuery do begin
    Close;
    SQL.Clear;
    SQL.Add('Update TABLE Set Key=:val1');
    Parameters.ParamByName('val1').Value := Trim(Edit1.Text);
    ExecSQL;
end;

Open 有记录集返回,ExecSQL 没有记录集返回;Select 常用 Open,Delete/Insert/Update 常用 ExecSQL。

忙碌的愚人节

今天我开始培训工作,碰巧愚人节,够巧的。

一上午就在帮他们整理资料,下午网络布线,累死个人了,真比做项目都累。

挑战很大,要加把劲,加油加油!~

Picky 改动记录

先谢国家,再谢 picky,简洁而强大的 Blog powered by GAE。自己做了一点点改动,记录一下,下次升级时候备忘。

  1. main.py - 添加全局变量 template_values = {}. RobotsHandler 生成 robots.txt 的时候没有对 template_values 定义赋值,造成 robots.txt 生成不能。
  2. robot.txt 修改 sitemap.xml 为绝对地址,跟第一个有关.
  3. 删掉了 default 主题 sidebar.html、article.html 两个模板文件里的 Google Ads。
  4. header.html 追加 Google Webmaster Meta 验证。
  5. 换了 Favicon。

Google.cn is leaving

So earlier today we stopped censoring our search services—Google Search, Google News, and Google Images—on Google.cn. Users visiting Google.cn are now being redirected to Google.com.hk, where we are offering uncensored search in simplified Chinese, specifically designed for users in mainland China and delivered via our servers in Hong Kong.

I love Google.