作者归档:vicalloy

时间线网站“似水流年”上线

网站地址: http://jstwind.com
在很早前就想做这么一个关于时间线的网站了,并在今天年初开始真正开始行动。中途因为各种原因将这件事情给搁置了,直到最近才重新启动。目前还只是完成了基础功能,细节方面也未能调教到自己满意的程度。不过不管怎么说,网站总算是基本可用了。欢迎大家上去看看,去制作自己感兴趣的时间线。
目前网站上只有一个关于 乔布斯 的时间线。事件的编辑比我预想的还要花时间,这也让我更希望能早些加入时间线的协作编辑功能。
这是我在继 LBForum 之后真正有在用心做的一个私人项目。项目后台代码方面的工作量倒还好,主要的工作都花在了前端上。事件的编辑是一项非常繁琐的工作,因此花费了不少时间来使用AJAX来提高事件编辑的易用性。项目代码托管在 github 上。项目地址在以前的博客里发布过,如果你感兴趣的话可以去找找。
最后把用到的主要技术和服务列一下,接下来一段时间可能会将其中用到一些技术写成博客:

  • 网站部署在 webfaction ,采用apache+mod_wsgi的方式进行部署。
  • 由于webfaction在国内的访问速度并不理想,静态资源托管在sina的 SAE 平台上。因为申请了SAE的开发者认证,每月有1.5w的免费云豆资源,闲着也是闲着。
  • 域名在 godaddy 购得。在使用优惠码后,一年的费用不足$2。
  • 域名的DNS解析用的是 DNSPod 。 DNSPod在易用性方面确实做的很不错。
  • 使用 腾讯企业邮箱 。 或许很多人对腾讯比较反感,但腾讯的产品确实都还做的不错。使用腾讯企业邮箱的重要原因之一是免费。
  • 服务端的开发技术依旧用的是 Django 。使用自己熟悉的技术可以大大的加快开发进度。
  • 前端用的是 twitter-bootstrap 。bootstrap目前已经有烂大街的趋势了,不过这东西确实好用。为减少bootstrap的痕迹,下一步考虑给jstwind换个配色方案。
  • JS的基础库用 JQuery 。现在JQuery基本上已经是JS标准的一部分了。
  • 时间线的JS控件用的是 Timeline JS 。虽然这个JS组件还有不少让我不太满意的地方,但这个组件胜在漂亮,而且作者非常勤奋,github上提的issue基本上在一天内就会有回复。
  • 文件上传用的是 jQuery-File-Upload 。纯JS实现,不依赖Flash即可实现文件的批量上传。缺点是如果客户用的浏览器版本太老就无法使用批量上传功能了。
  • Django的第三方APP方面用的就比较多了,其中包括 django-userena、django-taggit等,以及部分我自己写的与修改的APP。第三方APP的详细列表可以查看项目中的 requirements.txt 文件

越南岘港见闻

如果说朝鲜是60~70年代的中国,越南则更像是改革开放后90年代的中国。越南犹如一只刚解开封印的猛兽正准备撒腿狂奔。感觉越南正重复着中国的道路,中国的现在或许就是越南的将来。经济腾飞与其背后的社会问题都将是越南今后将所需要面对的。
刚完成了一次去越南的旅行。这是我的第一次出国经历,对我而言这是一次不错的旅程,第一次可以近距离感受另外一种文化。
从上海出发,在经历了3个小时的飞行后到越南岘港,入住皇冠假日酒店(Crowne Plaza Danang)。据导游说该酒店由华人开设。酒店的大多住户都是中国游客,另外则是少量的欧洲人,日韩游客似乎几乎没有。酒店的工作人员基本上都能说中文,所以在酒店里完全不用担心语言的问题。该酒店为五星级酒店,酒店有自己的私有海滩。岘港的海滩的很干净,沙很细,踩在上面很舒服。最重要的是目前到岘港的游客并不多,你可以肆意的享受这片碧海南天。
第一天下午去会安古城。会安距离岘港并不远,大概也半小时的车程。越南的路况很好,房子却建的比较乱。当地居民的房子象是散落在土地上,似乎就完全没有规划过。对中国来的我们而言,越南的房子都建成了奇怪的长条形。在越南作为法国殖民地期间曾有个奇怪的规定,房子宽度不能超过3米。房子虽对宽度有规定,却对长高没有限制,于是房子都成了窄长窄长的。到如今法国殖民的日子已经远去,但历史的印记并不会这么快的褪色。
会安曾是东南亚重要的贸易港口。因为临近中国的原因,这里免不了留下浓浓的中国痕迹。现在这里已经成了纯粹的旅游城市,街道上都是咖啡店以及旅游纪念品小店。这里的游客还是以中国人于西方人为主。
越南的人均收入并不高。我们本地导游的月收入为175美元,而且据说这在当地已算是高收入了,大巴司机与交警的收入为130美元。有人会觉得越是落后的地方民风越纯朴,这或许有一定道理,但越南并不是一个民风纯朴的地方。在会安我们计算价格的时候将货币的位数搞错(多给了一个零),若不是我们及时发现小贩就直接很自然的“接受”了我们的错误。在这里宰游客是很理所当然的一件事。在会安农贸市场上买水果的时候如果你只是简单的对半砍是完全不够的,我们的柠檬最终以开价的1/3成交。
中国曾被称为自行车王国,那越南则可以称为摩托车王国。这里到处都是摩托车,汽车都很少。越南的公交非常的不发达,在越南的几天就没怎么看到公交车。汽车对普通家庭而言,则又太贵,于是摩托车就几乎成了本地人出行的唯一选择。
在越南的最后一天去了当地比较有名的24粉小时与当地最大的超时big-C,最后去韩江大桥边的memory咖啡虚度光阴。有人说什么好地方被中国人发现,立马就会被毁掉。岘港目前还未开通到中国的直航航班,所以岘港暂时安全。不过目前岘港已开始大修酒店,按越南的发展速度来看,不出2年岘港必将迅速的繁华起来。如果你喜欢清净喜欢蓝天碧海,现在还可以抓紧时间感觉去岘港,再过几年就晚了。
有时在想,或许自己被技术人员的思维禁锢,实在太缺乏所谓的经济头脑。我看好越南的发展,如果我有足够的经济头脑则应当要有实际的行动来参与进去。比如更详细的调查越南的背景知识,了解越南当前的政策,看是否有什么途径可以投资(投机)。对于经历过经济市场化的我们而言,至少在某些方面比越南本地人还有些优势。






开始使用Todoist作为任务管理

我一向不是一个很有计划的人,为此带来的副作用是事情一多就变得有些焦虑什么都不想做。最近开始尝试做些改变。在尝试了一些任务管理工具后最终锁定Todoist。
Todoist是一个很简单的小工具,支持创建子任务,支持tag。Todoist在细节处理方面做的很不错,恰到好处的AJAX应用,外加丰富的快捷键,使用起来比较舒服。
我觉得TODOLIST除作为备忘录、记录提醒的功能外更重要的是一种解决问题的方法。

  • 将问题添加到TODOLIST时,给了自己一些时间重新思考的时间,看这件事是否重要,是否值得去做。
  • 将一个大问题分解为若干个小问题,本身是一个思考问题解决方法的过程。

管理者到底是干什么的

引子

最近前JAVAEYE的老大Robbin写了一系列管理方面的文章。Robbin曾多次在论坛上表示过对CSDN的不屑,却不想在两年前上演了JAVAEYE被CSDN收购这一出。想必其中各种滋味只能是如鱼饮水冷暖自知了。
不管怎样,看Robbin最近的文章,感觉在CSDN的这两年对Robinn而言还是有不少的收获。在这两年间Robbin完成了从一个创业者到管理者的转变。

正文

管理者到底是干什么的,应该干些什么。下面是一些还有待整理的零碎想法。

  • 为下属创造良好的工作环境
    • 道家推崇不治之治,最优秀的管理者应当让人感觉不到被管理。就如党宣传的那样“人们的公仆”。管理者应当是一个后勤的角色,而不是高高在上。管理者应当主动协调跨部门的工作,尽量避免组员因公司政治而影响工作。积极为组员争取应当的利益,保证组员的积极性。
  • 乐观的心态和强大的内心
    • 困难总是难免,很少会有事情是一帆风顺,也很少有事情是必定成功。但如果一件事情做之前就不被看好,那多半都得失败。管理者应当成为团队的精神支柱。管理者应当有乐观的心态和强大的内心将问题一肩扛下,让团队成员相信希望就在前方。
  • 原则
    • 管理者应当有自己的原则有自己的底线,知道哪些问题可以妥协哪些问题不可以妥协。一个没有原则的人很难让人信任,也很难会有说服力。
  • 识人,发挥每个人的长处
    • 管理,说到底还是在和人打交道。人无完人,合适的人做合适的事。管理者需要摒弃个人偏好,尽量去发掘每个人身上的亮点。在发挥每个人的优势的同时将缺点的副作用减到最低,做到物尽其用。
  • 招到合适的人
    • 很多管理书籍中都提到招聘的重要性。一个不适合团队文化的组员会给团队带来极大的副作用。对已有组员你可能只要认命,然后尽量做到“物尽其用”,但至少在招聘时你应当尽量避免让这样的悲剧发生。
  • 远见与决策
    • 战略与战术。你可能每场仗都打的很漂亮,最后却输了,这就是战略与战术的区别。如果方向错了,走的越远错的越多。管理者应当有足够的远见,知道该往哪走。
  • 2、8原则,知道什么是真正重要的事
    • 相比普通员工,管理者不可避免的要处理更多的琐事,因此更应当知道哪些事情是重要的。根据2、8原则,真正重要的事情不会太多。应当用80%的精力去处理20%重要的事情。重要的事情又分为紧迫以及战略意义上的重要。

其他

留不住新员工的公司

Robbin的文章中有一句“留不住新员工远远比留不住老员工可怕”,深表认同。铁打的营盘流水的兵,很多公司领导认为只要公司的核心员工不流失就没关系。但如果一个公司如果无法留住新员工,至少说明这个公司是缺乏足够的活力,无法吸引到优秀的人才。或许危机不会立刻出现,但公司已经很难继续前进。

关于生命体(生物?)的一些随想

记忆

记忆就像无数的抽屉。人们将“东西”随意的对方在这些抽屉里,并为这些抽屉打上各式各样的标签。人们通过标签来查找并取用。有些抽屉用来堆放临时物品,用过即弃,或是有新东西要放时就将原抽屉里的东西丢掉。对哪些经常需要用到的东西,就多打上些标签并放到显眼的地方。
有时候我们也会随意的翻弄着这些抽屉,把抽屉里的东西拿出来加工成新物品,这就是所谓的思考。
只是记忆远比抽屉来的复杂,我们总在不经意间打开某些抽屉。我们不知道自己的抽屉里到底都存放着些什么,也不知道还能翻出些什么。

生命

某日公交上放着“张自忠”将军的记录片,讲述着张自忠殉国的过程。这本是个悲伤故事,该有些更积极的联想,我却莫名的联想到了生命起源之类的问题。
所谓的生命体其实是个很奇特的东西。
给生命体一个简单的定义:一个有机物的整体,可以按照一定的方式演化出和自己类似的新个体,游戏的规则只有一个,将自己的火种一直传下去。(注:扩展下去,一个物体只要能持续的自行演化就可算作生命。)
死亡也是一个很奇特的东西:这些叫生命的有机体可以以一定的方式同外界进行物质交换来,实现自身的更新。有时候这种更新会停止,即所谓的死亡。就拿人来说,窒息等方式可以让一个人死亡。死亡前后,这个生命体的物质组织结构几乎没有什么变化,却无法再次启动。
如果有一个造物主,最开始他有的只有一些最基础的“乐高积木”(夸克),从某天起他开始摆弄这些积木。将这些积木组合成更复杂的东西,于是有了更多的元素以及星球啥的,然后有了地球。日升日落,高山流水。不过这个世界还是太寂寞,于是这个造物主想玩些新东西,让这个世界以更复杂的方式自行演化。于是他开始了一个新的游戏,进化。游戏的规则很简单,活下去。这游戏一直从几亿年前玩到现在。游戏发展到今天,游戏的参与者又在游戏中玩着所谓改造世界的游戏。

熵

熵 热力学第二定律告诉我们这世界总在向最大混乱的方向发展。把糖丢到水里,糖很快就会化在水里,所谓的熵增加了。但当水蒸发后,糖又从水里析出。或许死寂是宇宙的最终归宿,但至少在这过程中各种物质还会上演着各种分分合合。而且我也不太相信所谓的死寂。死寂的宇宙就如化入水中的糖,终会以自己的方式从水中析出。

生命游戏

DNA出错可以产生“变异”,生命体可以通过这些“变异”进行进化。程序出错就基本上跑不起来了,所以要让程序自行进化很难。不过不知道是是否能做出一些基于生命进化的游戏。设置合理的规则,然后让程序产生一定数量的“生命体”。这些“生命体”为空间、资源等进行争夺和厮杀。这些“生命体”和世界中的“生命体”一样可以繁衍和进化。
游戏的规则必须很简单,又必须给予“生命体”足够的成长空间。生命的意义就是因为不可预见性才变的有意思。让这些“生命体”自由的成长,看“他们”到底能给我们带来些什么。

free youself

有时候会忽然想到一些非常“奇怪”的词语。也许是距离产生美,越是“奇怪”的词越容易按照自己的方式进行注解。会有类似“格物致知”这样词的出现或许正是同样的道理。
free youself

  • 解放思想,以开放的心态去认识这个世界。
  • 人本就有无限的可能,抛弃自己为自己设定的边界。
  • 事情很多,但重要的事情不多。让自己从琐事中解脱出来,看清真正重要的事情。

迁移到python3

python3自2008发布以来,已经历经了快4个年头。python3发布初期的速度慢,第三方开发库少的问题已得到了很好的改善。似乎已经没有太多的理由死抱着python2不放了。
考虑到目前的大多系统还都跑在python2.x上,直接迁移到python3还是有些冒进。最理想的方式是新代码都可实现python2&python3的兼容,日后可以平滑升级。下面的一些资料可以帮助你实现到python3的迁移。

黑客News

在SAE上架了个wordpress博客,用来做阅读分享。
黑客News 是一个关于“互联网、编程、创业”的团队博客。我们在这里分享我们认为有价值的文章以及我们认为有趣的东西。
全文转贴导致互联网上有着太多的重复、垃圾信息,因此博客上只发布原创内容。对于第三方的优秀文章,我们将只写内容摘要或推荐理由。

为博客增加Markdown支持

前些天给ipad买了个蓝牙键盘。想日后短途旅行可以直接带上ipad,配合蓝牙键盘,整理照片发博客啥的无压力。遗憾的是ipad上并未找到什么好用的wordpress客户端软件。
wordpress的官方ipad客户端只支持原始的html,使用原始html写博客完全没有书写的乐趣。
Markdown 是一种「标记语言」,通常为程序员群体所用。Markdown的语法比html要简单很多,相应的写起来也要舒服很多。
我通过插件Markdown on Save Improved,实现Markdown的支持。Markdown的语法参考:php Markdown Extra
这篇文章就是用Markdown所写的。
调整博客的字体以及字体大小

body{font:75% "Palatino","Georgia","Hiragino Mincho ProN","Microsoft YaHei","WenQuanYi Micro Hei",serif;...

读《优势谈判》

期望简单的生活,付出总能得到相应的回报。只是世界本是复杂的,如果单纯的将事情简单化,事后多半要为此付出不小的代价。为了让付出能获取应有的回报,谈判是其中的手段之一。

或许很多人认为日常生活中接触谈判的机会很少,事实上你每天都在面对着各类的谈判,只是你并未察觉而已。公司间的讨价还价是谈判,找公司谈加薪是谈判,买东西的砍价也是谈判,和孩子协商零花钱的多少是谈判,甚至在你尝试说服他人的时候都是谈判。

在以往的生活中有着实在太多失败的“谈判”经历,于是找了本关于谈判的书来瞧瞧。

《优势谈判》,书名就已经透露这强烈的成功学味道,书中无处不在的自夸与“优势谈判”更是将成功学的味道发挥到了极致。抛开对成功学的偏见不谈,这书还是有部分可取之处。

在书本最开始几章中谈到基本的谈判策略。这些基本的谈判策略让我有些大跌眼镜,有些“武功再高,也怕板砖”的感觉。其中大多都是大妈们砍价的常用招数,大妈们在砍价时已经将这些招数发挥的淋漓尽致了。

  • 开出高出预期的条件 地摊小贩们的开价总是高的离谱,大妈们的还价则是当仁不让的低。
  • 黑脸白脸 如果是两人砍价,常有一个一直在“劝”对方别买。
  • 走开 对方不肯降价时,假装走开,等下接着再战。
  • ……

书中有几点还不错的地方:

  • 应对困境 真正的死胡同是很少的,大多看似死胡同的问题都只是困境而已。在面对困境时可以先避开矛盾,从一些更容易达成共识的问题入手,努力寻求问题的解决方法。如果太过着眼于问题,而无法取得任何进展的话,困境就真的很可能变成死胡同了。
  • 别贪小便宜 在对方犯错的时候别以为自己有便宜可以赚,应当尽量提醒对方。不然事后对方“假装”发现了自己的错误要求纠正,那你就有麻烦了。

和非美国人谈判的技巧,这章有些意思,里面提到很多国家的特点。里面谈到“语境”一词,及同样的话放在不同环境中意思的差别。”低语境”标示同一句话在不同环境中表达的意思差别不大,“高语境”则相反。美国是“低语境”国家,中国是“高语境”。在美国文化主导世界文化的今天,中国很多所谓的“西化”其实更多指的是美国文化。

谈判类型:

  • 一锤子买卖 地摊上的砍价很多时候就是一锤子买卖。这时候只要能获得最有利自己的结果就可以了。
  • 双赢谈判 如果这次交易后还有后续,那最好能获得一个让双方都满意的结果。我们在日常生活中遇到的大多谈判都属于该类型。比如公司和员工谈薪资。公司当然希望用最少的钱招到最好的人。但如果开出的价钱真的太低,就很难保证员工安心工作不跳槽了。不幸的是很多公司似乎并没有意识到这点,等到员工已经铁了心要开溜时才发现问题,这时已经为时已晚了。