个人微博
最近在搞微博,所以有空大家可以关注我的微博。 我的微博 帐前卒http://weibo.com/logu
另外也附一下 个人网站:chillyc.info
最近在搞微博,所以有空大家可以关注我的微博。 我的微博 帐前卒http://weibo.com/logu
另外也附一下 个人网站:chillyc.info
最近几天看了引爆点这本书。觉得不错,所以谢谢总结。
1. 引爆点中讲到三种人:内行,推销员,联系员。
2. 然后是引爆点本身的属性:附着力
3. 最后是引爆点的环境
内行:就是砖家,叫兽。整天这也倒腾,那也参与。对某些事情特专,你非常相信他们的话。或者新闻联播非常相信他们的话。
推销员:就是传播者。就是整天没事唠嗑,在各种群里、微博里、微信朋友圈里整天八卦、爱传图、爱发小道消息。今天10条佛教真理,明天10条人生必看,后天10条xx必读。
联系员:就是你的大多数非学生时代的朋友,非同事关系的朋友都是他介绍的。一般找他打听个人是没有问题的,他会瞬间把那人的手机名片家庭住址都给你。接触过非常多的人,微信朋友,QQ朋友,人人校友啥的都暴表了。想起我一师兄,人人多个帐号,每个帐号都加满了3000个女同学。
附着力:这个是引爆点的本质属性。也就是说,如果某件事情,你觉得好玩,好笑,非常有意思,那这件事对你而言就有很强的附着力。例如,酒对于酒鬼;烟对于烟鬼;水对于水鬼。
最后是环境:这个环境,是一种风气。环境将在特定的时期,特定的地点对特殊的一堆人产生的影响。比如鸭梨山大的社会就喜欢马舞和狐狸叫;破窗环境;涂鸦环境;而在环境中影响出来的人,又会存在内行、推销员、联系人三种人,这三种人又会扩大环境,这样层层扩散,就形成了流行。
这本书的总结就到这里了。没有啥可以被实践的。感觉自己身边这三种人都有,不过我发微博,对他们来说都没有任何附着力,所以什么时候发都行不成潮流。不知道在我把这书的内容全部遗忘之前能不能使用一次。
另外,感谢一下二师兄…
昨天,同事发现一个这样的问题:java.lang.OutOfMemoryError: unable to create new native thread。发现heap内存还是充足的情况下,free memory还是充足的情况下,thread分配不了了。这个问题在于线程的数量 = (jvm进程内存 - jvm heap size) / 线程stack size. 所以这里解决的办法就是 增加 jvm进程内存,减少Jvm heap size, 以及减少每个thread的stack size.
今天组内有人收到了 “乐云记事”的战书。战书很漂亮。好像里面还有个蛋糕,不过我没有吃到。真希望蛋糕里被下了毒~~~我也不知道我这是抱着怎样的心态在写文章。
上两个照片:
组里没有说不能把图贴出来…所以我就贴一下吧。我想乐云记事也是希望大家知道的。否则下个战书干啥?以后要送蛋糕送大点呀!然后组里的人们都开始关注“乐云记事”这个应用了。才发现原来这货很久前就出来了。只是一直没有到达我们的耳朵。好吧,现在宣传一下。
不过话说回来,我并不是有道云笔记的发言人。所以我也不是应战书的。我只是抱怨一下蛋糕没有吃到。
另外今天上午看了一下 HDIV这个东西。发现真心不错。下次推荐大家使用一下。
顺便看了一下360的年终奖,真是有钱人呀。等我去了360…那奖也不一定是我的。现在回想当年在实验室的生活,还是不错的。使用一个词总结一下:不患寡而患不均。
下午要给大家讲一个ppt, ppt的具体内容我现在还没有理解。嗯,到时候大家一起理解好了。
昨天遇到一个问题,请求发送之后直接返回了500错误,没有过ErrorController。并且Server这边的log里也没有异常。这真的是好奇怪。
产生问题的method是这样写的:
1 |
|
这出问题的地方就在于photo这个参数。如果将这个参数注释掉,一定没有问题。那这里在上传图片时,不会有500错误。但是在上传不含图片的时候,就会有500错误了。这是为啥米?看起来问题应该是required=false时,没有上传参数,直接使用了defaultValue.而我这里的defaultValue是个空字符串就直接挂了。应该使用ValueConstants.DEFAULT_NONE
, 或者"\n\t\t\n\t\t\n\uE000\uE001\uE002\n\t\t\t\t\n" 这个将在Spring框架里作为 null进行处理。
改好后就解决了之前的问题。
我个人不觉得的互联网快速试错是一件称道的事情。甚至我觉得这是一件不光彩的事情。我觉得也没有产品经理看我的blog,所以黑一黑产品经理,也是一件心情愉悦的事情。
开始推出“快速试错”的产品或者通过“快速试错”成功的产品,必然是互联网为数较少的几个。甚至是互联网初期阶段的几个产品。因为怎么试都是一条好路,提前抢占市场才是重要的。但是互联网发展到现在,再提“快速试错”那就大错特错。因为消磨了时间、金钱、精力、激情,甚至机遇。如果自己觉得这个决定可能错误,那为什么不找一个更容易正确的决定呢?所以当做产品的对你说,我们快点推出产品吧,来个“快速试错”。你就要小心了。开发是生产活动中最为稀缺的资源。每个开发都不希望自己做的功能是绝大部分用户永远用不到的功能。如果产品说“快速试错”,那为什么产品经理们不拍拍脑子里进的水,仔细想想怎么做一个基本正确的产品呢?
当然,产品经理们的观点是:1. 产品未推出前,不知道用户的评价。2.产品快速出新,刷存在感。3.产品有反馈,可以更好的改进。
以上三点,貌似是产品经理的盾牌,实际上是薄薄的纸壳。
1. 功能的开发其实完全可以不做的。只需要能做出来让用户觉得是否好用的原型就行。如果产品的定位用户是码农,就首先先听听码农自己们的意见。(给产品经理说句丧气话,基本上互联网上的新产品都是针对码农的。因为非码农也搜索不到你的产品。)码农自己觉得功能不错,那就放心大胆的做。码农自己都觉得这东西根本不会用,那就劝产品经理们三思。如果做出来的demo,连码农自己都觉得别扭,那还是不要推广了。自己心满意足的做做白日梦就可以了。
2. 快速出新是好事,但是快速意味着功能少,改动少,测试不全面。带来的问题总之多多,每次用户更新都是要费时间的。举个例子,Adobe的flash更新。每次都更新,也不知道到底更新了什么了。而且bug fix一轮又一轮,感觉每隔几天提醒一次flash更新。当然Adobe的更新大部分是安全问题,所以还是必须更新的。当你的产品没有做到Adobe的用户量时,那就不要学adobe更新速度。
3. 产品反馈是好事,如果不是烂产品,大家都是带着鼓励加上自己的意见。不过一旦产品选错了路,很难想象用户能纠正,大部分用户都是顺着这条错路给你产品意见的。嗯,你觉得顺着错路做出来的产品再推出时能好用?比如说,手电筒应用。用户提意见:可以做一个应用平台呀,用户量都这么大了。如果手电筒应用做了应用平台,大家又会建议:这个应用平台不能只下应用呀,还要有推荐、有评价、有社交功能。 看客是否觉得这产品该叫豌豆荚了?我个人觉得不要太听用户的意见。虽然用户都是好心。但是嗓门大的那些用户可能并不是你的目标用户。而你的目标用户可能还没有下载你的应用呢。不要认为下载并且评价你的应用的用户就是目标用户。请告诉我,乔布斯是每次听取大家的意见,然后做手机的吗?那他应该做一个防水防尘防摔的山寨nokia呀!而且你看,每次大家都抱怨,iphone不防水不防尘不防摔,为什么他就是不改改呢?人家乔布斯知道真正的目标用户是谁,屌丝手机肯定不是他老人家考虑的范围。
SO,广大的开发者们,当产品经理对你说,咱们做个cool功能吧;当产品经理对你说,咱们来个“快速试错”吧;当产品经理对你说,用户是这样反馈的;开发者呀,你们眼睛要雪亮雪亮的,让这些产品经理先一边拨弄原型自己玩去。
小卒 最近在做头像上传功能,发现对于带有alpha通道的图片,有的会变红,有的会变黑,有时压缩不平滑。发现是有几处程序写错了。
首先贴一下原始的程序,这段程序的功能是将原图的(x,y,w,h)图块,转变为 (0,0,targetW,targetH)图片,并输出为jpg格式
1 |
|
首先是背景有时变黑,这里最简单的做法是将最后的背景图片设置为白色。见下面代码:
1 |
|
加一个Color.white即可。
下面要解决的是图片变红问题。 帐前卒 认为这个问题其实是alpha通道需要变为透明的。而原始程序是判断,如果
该图片是定义为Custom的图片,那么就变为透明。显然custom的图片不一定是透明图片。所以这里需要判断image是否为透明的。代码变为:
1 |
|
然后变红问题就解决了。下面是压缩图片时,发现很多地方不光滑,这里也非常好解决。帐 前卒的代码如下: ```
// graph.drawImage(cropedImage, 0, 0, targetW, targetH, null);
// graph.drawImage(cropedImage, 0, 0, targetW, targetH, Color.white,null);
graph.drawImage(cropedImage.getScaledInstance(targetW, targetH, BufferedImage.SCALE_SMOOTH), 0, 0, Color.white,null);
加入SCALE_SMOOTH参数就完成了~~
有点滴剧透,没看过的误入…那就没有办法了…请增加点击率后,自动退出吧。
私人定制一共讲了五个故事。分别是“xxx”, “性本善”,“一腔俗血”,“有钱”和“道歉”。第四个故事忘记名字了,不过主题意思是道歉。而第一个故事叫什么名字,因为去的晚,没有看到。总感觉这五个故事是不连贯的,虽然反映了社会的方方面面,但是每个人物的性格表现还是太弱了。对于第一个故事不做评价,而第二个故事讥讽力度还是不够的,大多点到为止,笑看官场亦怕官。不过取名“性本善”和孟子的主张是一致的。不过如果每个人都是善的,为何有了恶的根源。突然想起了《黑镜》的第一个故事,每个人都是推波助澜的根源。让我想到集体主义和个人主义冲突的时候…为什么个人主义必须服从集体主义呢?或许是因为个人离开了集体必然会导致死亡。而牺牲了个人,似乎可以让剩余的集体生存,甚至让个人仍能存活下去。所以在生存和屈辱之间,还是毅然决然的选择生存。不过这样说似乎抹灭了先烈们的光辉事迹。嗯,牺牲个人利益的先烈们,仍然是可敬的。
对于第三个故事,一腔俗血。看起来是导演的自嘲。只有在俗中才能生存,而玩弄雅的"1942"必定是死的艺术。不过艺术是什么?是大雅之道还是大俗之路呢?突然想起《战国鬼才传》,物极必反。追求极雅,恍惚之间弄得人物皆非,是可笑的。而真正的雅,仍然在平时的生活之中。
而第四个故事“有钱”。是我和LP大人都觉得不错的故事。钱是生存之物,时间也是。导演没有说金钱乃身外之物,这么俗套的台词。而插曲却明显的表现了这一思路。这有让我想到《时间规划局》这一科幻的题材,时间等价于金钱。想法很好,可惜导演不咋地。对于有钱人的意淫,仍旧是痴人说梦。我们中的大多数都是平凡的人,暴发了几个亿的人,我觉得也不会看到我的blog。我们幻想着以后自己如何如何的有钱,然后不屑于已经有钱的各种作为。然后说一句“金钱乃身外之物,生不带来,死不带去”,自嘲式的让自己活得心安理得。而在故事中也隐隐的提及了亲情和报恩之情。
第二个故事到第四个故事,其实完全可以提高到《黑镜》第二集的高度,不过导演想到如果再高雅起来,票房就会像1942一样难看吧。人生就是一个循环,人永远不知道在为什么干活。知道干活能赚到钱这个简单的目的,从来没有想过干活最终是为谁在干活,以及干活到底是为了什么,对于这个社会而言有什么必要性?但是社会就是一个俗场,不管如何的高雅,最终都会被这社会的俗所淹没。不管人生如何的抗争过,却都会软弱的存活于社会之中。当然真正的高雅之士,真正的抗争之人,真正的正义之士都已经game over了。因为他们都被社会淘汰了。
而第五个故事“道歉”。或许是对自然难以报恩的愧疚之情。不过我和LP大人都觉得这个故事是没有必要的,在第四个故事其实影片就可以结束。而导演又开始玩点雅的,导致
大家莫名其妙。
总结一下:《时间都去哪了》 这个歌不错。来,贴一下歌词和歌的链接: http://music.baidu.com/song/14385500
1 | 门前老树长新芽 |
各位的用户注意一下来自CSDN的邮件 可能含有病毒。 今天上午收到一封来自CSDN的邮件。
标题引起了我的注意。并且它还带有一个附件。没有正文内容。查看了一下信头
1 | Received: from csdn.net (unknown [218.93.225.174]) |
这个看起来是从csdn.net那个域发送过来的。不过unknown意味着没有进行签名。后来觉得是不是CSDN的邮件都是这样的?然后查看了之前几个CSDN邮件的信头:
这个是邀我参加开源中国的邀请邮件:
1 | Received: from mx151.csdn.net (unknown [124.193.87.153]) |
这个看起来是一个csdn的子域发送过来的。然后查看了另外一个csdn的邮件,这个是赠送图书的。这封信来自于mail.csdn.net, 但是真实发出的是
1 | gaoshan-PC (unknown [192.168.4.111]) |
下面是详细内容:
1 | Received: from mail.csdn.net (unknown [211.103.135.164]) |
另外我怀着好奇心,查看一下其他邮箱从QQ那边发来邮件。注意其中含有DKIM签名。这个是验证域用的。里面可以看到来自qq.com。这就可以放心,这封邮件至少不是伪造的。但是很可惜,这里签名用错了。
Received: from smtpbg15.qq.com (unknown [183.60.61.204])
by mx45 (Coremail) with SMTP id X8CowEB5TGDld7FRy8pfBQ--.918S2;
Fri, 07 Jun 2013 14:04:21 +0800 (CST)
虽然下面是qq域的DKIM签名,但是上面还是显示unknown, 这是因为DKIM签名的域是qq.com但是发送的域是smtpbg15.qq.com
1 | DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s0907; |
又看了一下国外的邮件。这封是Apple的。
1 | Received: by 10.52.240.19 with SMTP id vw19csp6991vdc; |
SPF, DKIM非常详细,并且最重要的是 DKIM签名的域就是发送域。所以有这样一句:
1 | Received: from msbadger0406.apple.com (msbadger0406.apple.com. [17.254.6.147]) |
这样的邮件是安心可以点击的邮件。各种unknown域的邮件,大部分是可以造假的。
后来我又从其他邮箱中找到了各种来自豆瓣,知乎,三巨头 阿里,百度,QQ的邮件。所有的邮件中要么没有DKIM,要么DKIM的域和发送的域不一致。导致都是unknown的IP地址。这样的邮件大部分可以伪造,想想如果CSDN/支付宝/百度/腾讯,让你提交个身份证 Or 地址电话什么的。大概也会有人连想都不想直接点开链接,下载其中的附件。所以,国内的email环境实在是不安全。以后,看到CSDN发送过来的邮件,还是三思而后打开吧…
昨天,server调用新浪的OpenAPI功能失效。出现的现象是:服务器上线时是可以正常使用的。但是隔一段时间就变得不可用。刚开始以为是socket连接过多或者socket等资源没有释放。后来查了一下socket连接发现不是这样子的. 下面是连接新浪服务器的tcp。发现只有两个。
1 | $ netstat -np | grep 123.125.29 |
后来还看了HttpClient的源码和PoolingClientConnectionManager, 发现并不是这个引起的。另外给大家说个事情。使用Http Client+PoolingClientConnectionManager,然后再使用HttpGet和HttpPost的话,HttpGet和HttpPost是不需要release的.另外socket也不需要显示的关掉。唯一需要注意的是HttpResponse需要把Entity中的Stream流关掉。否则请求有可能被Hold住。详细的介绍见 HttpClient 卡死 response为null . 如果你不是使用HttpClient+PoolingClientConnectionManager, 而是每次new出来的新HttpClient,那就需要关闭Socket,详细解决方法见 JAVA的HttpClient问题:The server failed to respond with a valid HTTP response 。但是上面都没有解决问题, 最后还是将HTTP的status code打印出来。发现是:
1 | HTTP/1.1 413 FULL head |
这问题出在,有多个线程在往HTTP 请求中增加Header, 而且header一直没有清空。就导致了这个问题。