Submitted by gouki on 2011, September 29, 5:10 PM
坚持是第一要素,其他就开始转贴了,原文请看:http://www.aqee.net/the-long-grind-before-you-become-an-overnight-success/
据说该文是从这里(The Long Grind Before You Become an Overnight Success )翻译而来:
上原文:
“那你现在在做什么?”
唉,我讨厌这个问题。
事实上,我正在努力做一个新的项目,但没有取得任何的进展。
但是,我并没有抱怨什么,相反,我鼓起精神,热情的推销这个计划。人们都点头称是,但他们脸上狐疑的表情我不能视而不见。
当我说完后,人们有时会打击我一下,说:“难道这就是你整天在做的事情吗?”哈,他们的真正意思是:你是在说你把你所有的时间都花在这个荒诞的想法上了吗?
埋头苦干
2007年夏天,在放弃了给我们带来稳定收入的工作后,我们非常非常辛苦的创业着。到2010年二月,持续将近2年半没有任何收入。而我们又做出了什么能向人展示的成果吗?没有。
我们没有挣到一分钱。我们去找的投资者全部都拒绝了我们。我们不能招到任何愿意加入这个团队的人。我们没有吸引到任何人注意我们的这个创意。
这两年里我们想了各种办法,但我们的Yipit网站的月独立访问量始终没有超过1万。我们一直的低位徘徊:

从我个人而言,我的积蓄慢慢的在消失。我的信用卡因为逾期不还款而被冻结。并不是我没有现金去还,只是我们没有时间考虑它。看着我努力工作积累起来 的银行存款慢慢在耗尽,那是一种十分沮丧的感觉。我记得当把存款从我的退休金401K账户上取出时,我再次确认了一下自己是否知道这样做带来的严重后果。
老实的说,我有可能早就放弃了。唯一让我坚持下来的原因是,我忠实的创业伙伴——Jim——他也是辞职出来的。他放弃了很多十分诱人的工作机会,和我一起工作,我不能抛弃他。
一切全变了
这样到了2010年2月份,距离我们开始创业2年半之后,我们又产生了另外一个想法:收集那些正在兴起但发展迅速的日常交易信息。这个想法来的很及时,正合我们的特长。因为最近9个月里我们一直在做本地交易信息收集。
只用了3天时间,一切全变了。

3天的仓促编码,我们上线了这个新功能,做了一些简单宣传,用户十分喜欢这个功能,4个月后,吃惊的投资者向我们注入了1百万美元。一年之后,我们募集到了6百万美元,我们盈利了,我们吸引到了成百万的用户,我们招到了优秀的人才加入了我们的团队(我们正在招聘!加入我们! )。并且,最重要的是,我们的事业才刚刚开始。
那么,这3天里究竟发生了什么?
我相信,如果我们早在2007年或2008年、甚至2009年就开始上这个日常交易收集功能,我们不会取得成功,反而会把事情弄糟。
但是,经过了2年半的失败和教训,我们完全知道了该怎么做:
- 产品策略。我们成了精益(lean)创业运动的一分子。我从一开始就参加纽约精益创业洽谈会,阅读Four Steps to Epiphany,我们认识到,我们要做的是一个最简化功能的产品。
- 做原型样品。近几年我一直在自学Web开发技术,而Jim也在自学前端的程序开发。我们不需要找人去做原型,我们能自己快速的开发出来。
- 设计用户界面。我们设计了大量的原型,我们很清楚如何设计登录页面来收集用户的email,我们设计在注册流程中收集用户信息并让人们向他们的朋友们散布我们的信息。
- 找到启动动力. 我们知道如何加工我们的故事,让新闻记者注意到我们。我们在TechCruch成了重要话题,这给我们吸引了大量的初始用户。
- 让投资者感兴趣。过去两年里我们和很多纽约的天使资金投资者保持着良好的关系,我们能很快的争取到对我们感兴趣的投资者,因为他们很熟悉我们。
- 培养名声. 我一直参与纽约科技界的活动,业内的朋友们在给Yipit创造话题的事情上帮了很大的忙。
现在,回顾往事,我认识到我错了,那挣扎的两年里我们并不是拿不出任何的成绩。从外面看来,我们没有任何可以成功的迹象,但我们学到了一些非常重要的东西:开创新事业的艺术和技术。我们花了差不多3年的时间才真正的明白在那3天里我们应该怎么去做。
所以,对于那些还在挣扎中,觉得自己拿不出任何成绩的人,我希望这篇博客能帮助你们坚持下去。你每天都在学习进步。你要知道,当灵机闪现时,你已经准备好捕捉它了。
----------
不管怎么样,坚持到底才是胜利。
Misc | 评论:0
| 阅读:16562
Submitted by gouki on 2011, September 28, 2:28 PM
小技巧,属于自己记录一下
windows下面是win+D,很方便,按键距离也相对较近。
可是mac下面不一样,找了一下是Command+F3,如果需要动画效果,就是Command+shift+F3
当然,在触摸版上,四个手指放上,一个和三个分开也OK,一般是大拇指+其他三个手指,很方便。
Flutter | 评论:0
| 阅读:25450
Submitted by gouki on 2011, September 28, 1:29 PM
远程管理数据库的时候,以前都是用phpmyadmin,后来就再也不用这种了,一来是因来速度慢,二来扔在服务器上,人人都可以访问太危险了。。所以我现在在用navicat的ssh方式访问。其实我比较喜欢用SQLyog的,但是它没有mac的版本。
OK,现在我们开始用nvaicat来访问吧。
一台服务器正常了,二台正常了,结果,第三台不正常了。报错:
XML/HTML代码
- Lost connection to MySQL server at 'reading initial communication packet', system error: 0
然后找资料了。
1、有人说,在mysqld启动的时候加入skip-name-resolve,于是我在my.cnf加上,也没用。。。
2、又有人说,需要在/etc/hosts.allow里加上mysqld:allow,好吧,我继续加上,仍然没用。参考:http://www.bramschoenmakers.nl/en/node/595
3、最后找不同点。突然发现,原来连接不上的那台服务器的my.cnf里居然有一个bind-address:xx.xxx.xxx.xxx,绑定了IP,所以ssh通道连接的时候,不能工作,改成127.0.0.1后一切正常
4、结果改完后发现,本地代码连接远程的时候,连接不上数据库了,代码里写死IP的所以无法改变。最终再找资料把bind-address改为0.0.0.0,然后一切都正常了(这个只适合在局域网测试上,其他情况下尽量不要改,出了问题可不要找我。。。。)
Tags: mysql, connection, navicat
Baby | 评论:2
| 阅读:45688
Submitted by gouki on 2011, September 27, 12:07 PM
在cnbeta上看到这个新闻的时候,震精了啊。
新闻不知道是真是假,所以我纯转贴,莫找我啊,原文来自:http://www.cnbeta.com/articles/156424.htm
Amorize的安全研究人员最近表示,已经确认黑客入侵mysql.com,并通过iframe的方法让用户感染了恶意代码,他们已经追踪到佛罗里达和瑞典两个恶意软件托管地,在当地时间周一下午依然在对mysql.com的访客实施攻击,用户凭据可能已经遭到了窃取,因此建议mysql.com注册过的用户修改自己与此相同的密码。
更糟的是研究发现,mysql.com的root权限似乎已经开始在俄罗斯的地下黑客论坛挂牌出售,价格3000美元,黑客们只要给钱就可以获得访问mysql.com的权限,可见问题的糟糕程度。

Tags: mysql, root, 黑客
Baby | 评论:0
| 阅读:18422
Submitted by gouki on 2011, September 27, 12:10 AM
事实上,我一般用的最多的就是Post-Commit,因为用来将SVN里的代码提交到测试机的项目里。其实也听过用svn来检测代码的可执行性。不过我是没有用过啦。
老王在博客里写的这篇文章就是讲pre-commit。有借鉴意义,以后可以悄悄的程序里用。不过,我觉得检查语法这种事情其实可以忽略了,毕竟现在都是用IDE的,一般语法问题IDE都能认出来。。
注:我开始看文章的时候没有仔细看CodeSniffer,我起初认为是语法检测,事实并非这样,是指代码是否按规范来写代码。如果是这样,那值得搞一搞啊
OK,上原文:Subversion钩子
Subversion本身有很好的扩展性,用户可以通过钩子实现一些自定义的功能。
所谓钩子实际上是一种事件机制,当系统执行到某个特殊事件时,会触发我们预定义的动作,这样的特殊事件在Subversion里有很多,默认有如下模板可供选择:
XML/HTML代码
- shell> ls /path/to/repository/hooks
- post-commit.tmpl
- post-lock.tmpl
- post-revprop-change.tmpl
- post-unlock.tmpl
- pre-commit.tmpl
- pre-lock.tmpl
- pre-revprop-change.tmpl
- pre-unlock.tmpl
- start-commit.tmpl
其中最常用的是pre-commit和post-commit,也就是提交前后的钩子,下面以pre-commit为例来说明一下如何自定义Subversion钩子。
假设有一个PHP项目使用Subversion做版本控制,使用中发现了一些问题,比如程序员不写日志,或者提交的文件有BOM,或者提交的文件有语法错误,或者提交的文件不符合编码规范等等,这些问题都可以利用pre-commit钩子来解决,实际上已经有人写了解决类似问题的工具php-svn-hook,不过我们这里选择自己实现:
XML/HTML代码
- shell> cat /path/to/repository/hooks/pre-commit
- #!/bin/bash
-
- REPOS="$1"
- TXN="$2"
-
- SVNLOOK="/usr/bin/svnlook"
- PHP="/usr/bin/php"
-
- LOG=$($SVNLOOK log -t "$TXN" "$REPOS")
-
- if [ "$LOG" = "" ]; then
- echo "Please input log" 1>&2
- exit 1
- fi
-
- FILES=$($SVNLOOK changed -t "$TXN" "$REPOS" | awk '/^[AU]/ {print $NF}')
-
- for FILE in $FILES; do
- CONTENT=$($SVNLOOK cat -t "$TXN" "$REPOS" "$FILE")
-
- if echo "$CONTENT" | grep -q $'\xEF\xBB\xBF'; then
- echo "Please remove BOM from $FILE" 1>&2
- exit 1
- fi
-
- if [[ "$FILE" =~ \.(php|html)$ ]]; then
- MESSAGE=$(echo "$CONTENT" | $PHP -l 2>&1)
-
- if [ $? -ne 0 ]; then
- echo "$MESSAGE" | sed "s/ -/ $FILE/g" 1>&2
- exit 1
- fi
- fi
- done
-
- /path/to/PHP_CodeSniffer/scripts/phpcs-svn-pre-commit "$REPOS" -t "$TXN" 1>&2 || exit 1
-
- exit 0
注:代码里使用PHP_CodeSniffer检查编码规范。
配置好脚本后,一定要记着给脚本加上可执行属性,不然脚本执行后会显示不知所云的错误信息:svn: Commit blocked by pre-commit hook (exit code 255) with no output。
本文以pre-commit为例说明了一下钩子的用法,实际上其他脚本也很有用,比如说如果你想在提交代码后发一条微博,就可以利用post-commit来解决,大家自己领悟吧。
--------
主要还是对bash不熟,否则post-commit里的代码我也不至于是直接改成svn-update的代码了。
学习学习
PHP | 评论:0
| 阅读:18748