debian系linux使用的包管理工具是apt-get或升级版的aptitude。node.js相关的有2个包:nodejs和nodejs-legacy。为什么会有两个?

首先,nodejs安装完成后,大部分系统的默认的运行名称为“node”,于是很多nodejs的脚本文件都会以“node”作为运行名,如果没有找到,就无法执行。而debian上有个老软件包叫“node”,这与nodejs的默认运行名称“node”重名了,所以在debian系linux上,安装nodejs包后的默认运行名是“nodejs”,这会导致很多npm包里的软件找不到“node”。

解决方法1,就是安装nodejs-legacy,不过要把以前的nodejs和其他相关删除掉。

sudo apt-get --purge remove node
sudo apt-get --purge remove nodejs-legacy
sudo apt-get --purge remove nodejs

sudo apt-get install nodejs-legacy
# 确认能用
node --version       # v0.10.13
ls -la `which node`  # ... /usr/bin/node -> /etc/alternatives/node

解决方法2,仍然使用nodejs包,但是建立一个硬链接,目前测试暂未发现问题。

cd /usr/bin
sudo ln nodejs node

2b(to business)产品有其2b之处。

1. 用户选择和实施产品的成本非常高。企业产品对企业来说,很可能涉及全公司员工的使用。企业在选择时,就特别谨慎,表现在选择对比的周期长,审批环节多,要求产品提供方长期维护能力强,反应速度快。企业选择产品少则数天,多则数月。此时往往需要专人跟踪。

2. 用户、客户、决策者角色分离,也就是使用的、给钱的、做决定的都不是一个人。这是常见的情况,无须赘述。作为产品来说,就算只卖一个产品,你需要搞定的都不是一个人。

3. 使用者(用户)对业务不一定熟悉,有的用户甚至提不出问题,更遑论给出要求。这有多种原因,首先,熟悉业务的更多是安排事情的领导,而使用者多数可能是普通员工,也就是“做事的”,开始时并不熟悉业务;其次,普通员工公司内、公司间的流动性比上层员工大,可能是新员工刚来,也可能是老员工要走,我在半年时间内,已经见到好几个公司的前台用户换岗离职,频率不可谓不高;再次,公司业务发展快、调整快、文件多,一种制度不适用了、或没有制定好会很快换另一种,负责的员工熟悉上手都需要时间;最后,很多客户只是觉得这个产品概念不错,或者很流行,或者看到别的公司有使用,但这个产品对他们究竟有哪些用处,还需要很多学习了解。

4.  不同公司的习惯和要求千奇百怪千差万别,有些习惯和要求可以改变但要花费精力解释引导灌输,有的习惯和要求就很难统一改变。如果产品要都适应,就要做出多种多样的设置选项。而设置多了以后,如何让用户找到哪个设置适用于自己,又是一个新的问题。这也是以前企业产品多定制的原因。

5. 企业产品要求连通性。这一点要求其实也挺强,但是一直都没有很好解决,因为毕竟没有一家企业产品的开发公司能做好方方面面的,另外在企业的连通性方面又缺乏协议和标准。连通性最起码的是账号鉴权、组织架构,其次是业务流程、审批流程。华为以前用IBM lotus Notes做基本的工具,又有很多专门的IT开发人员基于notes做二次开发,甚至ERP等方方面面都是用IBM产品,以求联通。但绝大多数公司也没有华为的财力人力,也就习惯了吃百家饭,然后自己人工消化。所以目前企业产品即使不连通,很多用户也愿意自己人工化解。

6. 企业产品的安全性、可用性要求也高于个人产品。个人泄露了点信息可能是多接几个骚扰电话,应用一两个小时不可用也就等一等或用别的;企业的信息泄露可能事关存亡,应用用不了也没有替换方案,相关人等的相关工作都要停滞。

综上所述,一个企业产品如果不解决上面几点问题,就很难有爆发力,不免陷入泥潭。

对于创业公司只有少数几个人的团队来说,要做也只能做小而美的产品,我试着给出几个产品定义的方式,解决上面的问题:

1. 设计针对某一岗位的某一类员工个人使用的通用、共性需求的产品,对员工个人有价值,从个人方面赚取费用。这个能规避企业产品选择成本高、角色分离、要求多样化的问题。他自己觉得合适,就能选择来用,不合适就不用。如墨刀modao.io是针对产品经理制作APP原型的工具,产品经理觉得好用就马上可以用,用段时间对有些付费新功能有需要就会付费。

2.做工具类产品而不是社交类、连通性产品。同上。对于社交,很多小创业公司还是用的QQ,很多大公司还是用的Email,要做OA审批的话,就要有一堆的连通性问题,需求就会层出不穷,很难好好满足。

3.如果是确实要针对全公司大范围使用的产品,产品应针对小微企业,而不是大企业。因为小微企业决策快且激进,大企业慢且保守。最近和一个一千多员工的公司HR聊,他们会更倾向于使用传统保守的软件,而不是新兴软件,即使新软件的体验更好。我说的是金蝶云之家和阿里钉钉。其实阿里人更多实力更强,但它之前并没有做过企业类产品,传统的大企业还是会更相信金蝶。

4.要做足文档和培训,做好售后支持和及时响应。企业中每天遇到的问题都可能是新的,更别提你解决新问题的产品。从各家SaaS产品来看,工具类产品小到墨刀leangoo,社交综合类产品大到钉钉云之家,文档帮助总是时时处处,甚至400热线也毫不吝惜的处处出现,培训消息通知也时不时能看到。

其他方面:

1.设计好盈利模式。你看去年快的被收购了,今年优步中国被收购了,赔本赚吆喝的生意总是不能一直做下去的,况且咱创业又没那么多钱用来烧。这里面还有一点,如果没人愿意付费,千万别死脑筋觉得产品做得不够好,赶快看看是不是产品方向就有问题。大多数创业者愿意说产品不够好,因为产品不够好可以改;但大多数人不愿说方向有问题,因为方向有问题,前面就白做了。不过,白做三个月总好过白做一年。

2.做好营销。如今说“酒香不怕巷子深”,完全是在放屁。如今还说放到网上,有人说好就有口碑就有粉丝,更是痴人说梦。网上的流量都是被各路巨头把控,要流量就要付费。既要流量,又不想给钱或者少给钱的方法是越来越少,也越来越奇葩。连优衣库也要运作个不雅视频门,洗个车还要弄比基尼女郎,你就看着办吧。

除了关注很久的leancloud,闹着风风雨雨的APICloud,最近又有一个野狗,做实时BaaS;通过它又知道谷歌在两年前收购了一家做BaaS的Firebase....APP和各种应用开发似乎要越来越容易了。

物联网方面,Wifi和Zigbee曾经是最火的两个协议。去年深圳的物联网实现的一些智能家居产品都是用这两个协议做的。去年典型的是Zigbee的芯片贵,据说是实现起来比较复杂。现在又有了两个新底层协议,一个是z-wave,另一个是thread,还有上层协议COAP。后两者是google的NEST背景,希望这些会为物联网注入活力。

说多一些物联网。智能家居闹了这么久,似乎也只是些噱头。除了用户体验方面,让大家一直怀疑有必要让个温度计湿度计智能起来吗?另一方面,室外定位从卫星到技术大发展,美国GPS、俄国Glonass、中国北斗纷纷上线,而室内定位似乎还没有一个好的技术标准。

腾讯视频绑定小米路由,利用用户路由器带宽和硬盘P2P,变成VPN,还能让用户分享点儿收益。以后会不会产生各个公司争抢用户家里资源的情况?从带宽到硬盘到CPU到电能?在用户获取良好收益的情况下,会不会像比特币一样挖矿造矿机?会不会颠覆数据中心?相比电脑笔记本,路由器的优势是不掉线不断电,更为此提供了可能。

最高昂的成本是什么?做沟通和做决策。眼红的决定是追高、跟风或恐惧时候做的决定。

看雅虎收购Flickr后,Flickr85%的时间再和雅虎做沟通,一项决定层层审批;而只有15%的时间在做产品,创业明星Flickr就此消失;另外雅虎当年看不起、后来买不起谷歌,匆忙收了技术并不咋样的Overtune,却没有做成。

做创业需要降低高昂的成本,就要减少决策,要有能力的人往前冲;就要当面沟通,办公租金成本和交通成本可能是低于远程沟通的时间成本。如果试错速度足够快,那么多试错好过多决策。

然后不能去跟风去追,除非你能有更便宜更好的东西。

创造需要激情和感性,需要独断专行,理性得有别太多,沟通决策太理性,不需要做就别做,必须要做就快做。

1. 搜索并替换
sed /要操作的行包含的内容/s/搜索内容/替换内容/g
s代表搜索并替换,/g代表搜索并替换所有
搜索内容和替换内容可以使用正则表达式
s/xx/xxx/g可以用“”括起来, 但用引号括起来有时候会产生问题;

如:

echo "!  asdf" | sed s/a/b/g

输出:!  bsdf
2. 删除包含指定内容的行
sed /要操作的行包含的内容/d
3. 删除不包含指定内容的行
sed /要操作的行包含的内容/!d
!表示否
注意, 感叹号有时候会被错误识别,这时候用\!代替

mac上不像windows上有tortoiseSVN的图形界面, 还蛮好用. 我们的UI设计师用MAC要上传UI切图, 在MAC上苦于找不到好用的上传工具. 我就给她写了个svn脚本, 双击上传, 好用得不要不要的.

如下, 实现增加所有文件, 删除所有不存在的文件, 并上传文件. 如果需要更新的话, 把后面两句注释掉的去掉就可以了.

脚本第三行, 进入目录, 需要替换为自己实际的目录.

#! /bin/sh
echo '进入工作目录'
cd /users/apple/Desktop/UISVN/trunk
echo '增加所有新的文件'
svn add * --force
echo '删除所有不存在的文件'
svn rm $( svn status | sed -e '/^!/!d' -e 's/^!//' -e 's/$/@/g')
echo 'commit上传文件'
svn commit -m "add by me"
: echo 'update 更新'
: svn update

上述代码保存为.sh文件, 如"svn_upload.sh", 在mac上使用终端打开运行即可. 以后鼠标双击就行了.

linux上, chmod 777 这个文件, 改为可运行, linux控们都懂得. 如:

chmod 777 svn_upload.sh

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

有的亲不知道svn怎么从头开始取文件? 创建一个存储SVN文件的目录, 用下面的命令就可以了.

svn checkout URL地址

 

时而缥缈不定,时而遮天蔽日,时而有,时而无。

时而重重叠叠,时而淡淡轻轻,时而黑,时而白。

云之变,变之易,揣测实难。

概莫如心境,阴阴郁郁,几时放晴?概莫如生计,忙忙碌碌,几时得闲?概莫如人欲,纷纷扰扰,几时方休?概莫如世界,来来去去,几时消停?

人之变,变之易,揣测实难。

标题党: 产品做不好的原因竟然是这个!

好的产品,精确,智慧,而又人性,说白了就是智商高情商也高。

做好的和不好的产品都需要两样东西:人和机器(计算机)。

然而人与机器相比,健忘,爱出错,运算慢,思考慢,交流充满误解,一句话,笨。

机器与人相比,精确,理智,然而一根筋,情商为零。一句话,轴。

做好产品,就是把这么两种又笨又轴的玩意儿弄一块,做出来又聪明又体贴的产品。所以才这么难。

更难的是,产品经理也是这个笨物种中的一员。

最近发现自己愈发有些焦虑, 焦虑起来的时候就做个低头族, 埋头在手机里面看一些可有可无的东西.以前可能不怎么长期焦虑, 现在一焦虑, 倒是焦虑出来一些心得.

作为神经症的一大病症, 全球终身患病率是13.6%, 大约相当于每七个人里面就有一个人终身焦虑(数据来源于百度焦虑症吧).不说终身的话, 可能每个人都有过或重或轻的焦虑. 现代城市人焦虑症又会更重一层.

不记得是谁曾经说过, 有一点焦虑有助于生存, 就跟痛觉一样.另外我认为焦虑症可能像其他的身体类疾病一样, 可以作为癔症的一种表现形式. 就像极度渴望休息就会生病, 极度渴望怀孕就会假孕一样.

拿咱们的社会现实来说, 周围的生活工作环境中的人群,会给自己一些直接间接的压力和期待, 这些压力和期待又往往长远而脱离实际,超出能力。于是自己就焦虑了,一直焦虑到周围的人感觉不能再给他压力为止。这个时候,虽然焦虑是一种痛苦的状态,并且自我的能力无法通过解决现实问题的方式消除焦虑,于是就不再想要消除焦虑,而是把自己压抑在焦虑的病态中,以解除四周的压力,长期形成像慢性病一样的习惯性焦虑。

焦虑的人无法停止思考和幻想,认为停止下来就是不够努力,会有愧于期待,会使压力卷土重来。于是,手机是一种很好的解脱。手机产生无休止的信息,让大脑一直处在忙碌状态,让自己认为至少在做事情,去抵御愧疚感。

如此说来,极大的压力和期待导致了无力感,无力感导致必须时刻要做些什么的忙碌感,停下来就会导致愧疚感。这就是焦虑的过程之一种。

编程、工作与生活一样,真正有价值的道理简单而朴素,我们在一开始就已经知道,但从来不去好好遵守它。

这些天一直在看和实践敏捷开发,2005年以后,还没有再看过源代码了,现在又在看,并帮助工程师们提高。这个过程中就发现,工程师们对一些编程基本原则的反应是“太理想化”,“确实应该是那样的,但实际因为种种问题是不可能完全做到的”,这些原则“可能并没有那么重要”……

什么原则呢?比如代码应该有高可读性,比如变量命名应该遵循统一原则(驼峰或下划线),比如应该写充足的注释,比如应该做到逻辑代码与界面的 分离(MVC/MVVM)……为了说服大家,我不得不买上几本经典书,把《代码大全》里面的一段章节翻出来给他们看。

然而,这可能并不能起到立竿见影的效果。人们总是知道道理,却却在实践中大打折扣。

在《程序员修炼之道》的中文序言《程序员心里的小声音》中,指出了这种现象,以编程DRY(Don't repeat youself)原则举例,指出“能不能用正确的原则知道正确的行动本身,其实就是区分是否是高手的一个显著标志”。

我觉得这种现象可以称之为编程界的“人格分裂”,知道什么是正确的但不去做或不好好做。

我们每个人或多或少都有些这方面的分裂。全世界人类或多或少都有这方面的分裂。什么原因?对人来说,知道并不等于懂得,特别是实践欠缺,还没有踩到足够的坑来说明不遵循会产生多少问题。

对我国人来说,国民教育环境也促使了这种分裂。思想品德课本上的道理讲着诚实守信,哲学课本讲着全面和联系的观点,历史课本上却讲着和谐过的抗日战争。国家人格分裂,我们每一个人自然而然也跟着一起分裂了。

有什么好的方法治疗?世界上没有银弹,那么路只有三个:一个是按正确的道理办事;一个等自己踩了足够多的坑后再去领悟,“不到黄河心不死,不见棺材不掉泪”嘛;最后一个是,到了黄河也不死心——彻底没救了。

前两天看新闻,真的有这个地方,真在中国,真的焚尸炉。就这个月开业,开业日期是清明节。这就是上海的4d死亡体验馆。

写遗嘱,进棺材,遗体告个别,然后丢进焚尸炉。哦,叫火化炉好了,焚尸的感觉好像对我们自己的尸体不够尊重一样。

据说还不少人,想“死”还得排个队。不过中国现实更有趣,那个放盒子的地儿太贵,可能还死不起。

开设的体验馆的人有心理学背景,焚尸哦不对火化完之后还安排了投胎转世的重生环节,把体验者的心理重新拉回人世。

这家体验馆正式名称是4d死亡体验馆,不少媒体报道时变成了生死体验馆或者生命体验馆,这或许就是人对死亡有意无意的回避态度。

不知怎么,一讲到生死,我想到了两个哲学命题,一个是加缪的西西弗斯,一个是叔本华的钟摆。前一个每天推石头上山,石头石头推到顶又滚下来,因为太无聊也毫无意义,西西弗斯变着花样推,每天都给自己找点儿乐子。后一个说,人生满足了就无聊,无聊了就没事找事,找到事了就痛苦,一辈子这两种状态,像钟摆一样摆来摆去,不是在去无聊的路上,就是在去痛苦的路上。一个是瞎乐观的无聊,一个是穷悲观的无聊。这就是没事找事的人生。