2011年8月27日星期六

Introduction to Egg

Introduction to Egg

Work in Progress


Introduction

Egg is an Emacs interface to git. It's a suite composed of a minor-mode and various special-buffers presenting different UIs to help the user performing many git operations.
  • egg-minor-mode: providing git-specific vc-look-alike interface including similar key-bindings, a minor-mode menu and history annotations (blame).
  • egg's status-buffer:
    • index manipulation/commit preparation
    • interactive rebase stepping
    • merge conflict resolution
    • stashing work-in-progress
    • adding ignore pattern
    • staging new files
    • ediff or ediff3 launching. (e.g. 3-way ediff of work-dir/INDEX/HEAD, 3-way ediff of work-dir/theirs/ours)
  • egg's log-buffer
    • browse repo's history
    • ref (tag, branch, etc) creation and deletion
    • push and fetch
    • start merge/rebase/interactive-rebase session
    • attach/detach HEAD
    • search history (pickaxe)
    • compare revisions
  • egg's file-log-buffer: restricted version of the log-buffer, used to browse history of a single file.
  • egg's reflog-buffer: restricted variation of the log-buffer, used to browse the git's reflog and re-attach HEAD.
  • egg's query:commit-buffer: restricted variation of the log-buffer, used to browse history-search's results (pickaxe)
  • egg's stash-buffer: a log-buffer look-a-like, used to browse and apply stash entries to work-dir
  • egg-grep: a compile-mode which can grep files in non-checkout git revisions.
  • egg's commit-log-edit buffer: used to compose the commit-message for the upcoming commit. it can do some minor index manipulation.
  • egg's tag:msg-buffer: used to compose the message of an annotated tag
  • egg's diff-buffer: used to view the delta between file or repo revisions
Prerequisites
Egg doesn't provide an abstraction on top of git. Instead it assumes the user is familiar with git (and of course, emacs). Thus, egg claims it shares the same goals as git's aliases and is not another git porcelain.


Installation
  1. download egg.el (and egg-grep.el)
  2. compile it and put int somewhere in your emacs's load-path.
  3. put(require 'egg) in your .emacs
  4. run M-x customize-group egg at least once.
    • egg-git-command should be set to the proper command to invoke git. The default is "git". Same deal for egg-patch-command, although it's not as critical to egg as the first one.
    • turn-on egg-enable-tooltip to help self-familiarizing with egg. Egg's keymap is very context dependent. Tooltip balloons will shows the local keymap at the location of the cursor (point).
    • disable egg-confirm-next-action once familiar with egg. egg-next-action will then execute its guessed action immediately.
    • egg-minor-mode prefix is defaulted to "C-x v". However one can change the value by customizingegg-mode-key-prefix.
Minor-mode
When properly activated, open a file from a git repository would showGit:branch-name or (Egg, if egg hasn't yet had a chance to query the repo-status) in the mode-line and Egg (Git) menu on the menu-bar.

The menu show many of the git operations mapped by Egg and their invocation keys. Egg tries to keeps the key bindings similar to VC: "C-x v =". The most interesting command is egg-next-action and its keys "C-x v v". Using the menu-bar, egg-next-action will execute without confirmation (because it already showed the user what the next action is in menu.) If invoked using the keyboard, egg-next-action will ask the user for confirmation before executing the guessed next-action. The user then has the choice of accepting the guess or request egg to show a list of action candidates actions with the guessed candidate on the top.

It has always been the design objective of Egg:
  • help users to familiarize themselves with egg (using menu, help text, tooltip, etc.)
  • make the common operations a couple of keystrokes away and expeditive.

The Status Buffer

The most important egg's special buffer is the status-buffer. It's launched by typing "C-x v d" when editing with egg-minor-mode. The status-buffer contains 4 sub-sections: the repo section, the unstaged section, the staged section and theuntracked section.

The repo section shows the name of the branch on which HEAD is attached to. Otherwise, it will says that HEAD is detached. There's also a Help section showing the bindings available in the buffer. Many blocks in the status buffer (and other egg special buffers) can be hidden. The picture on the right show the Help block was hidden and well as the delta of the file README.markdown and the first hunk of egg.el in the unstaged section. The "h" key and the middle mouse button toggle the hidden/shown state of a block. The customizable variable egg-buffer-hide-section-type-on-start can be used to control the initial (hidden/shown) state of different section types in egg's special buffers. In the status-buffer, as in other egg's special-buffers, the "n" and "p" keys let you navigate to the next and previous blocks while the "g" will refresh the display and the "q" will quit the window. If there was a rebase session in progress, the repo section will also show the current rebase step and more binding will be available to support rebase operations.

The two unstaged and staged sections let user do 3-way manipulation of the trio work-dir/INDEX/HEAD using the mostly "s" key and sometimes the "u" key. The "s" key behaves differently in the staged and unstaged section. In the unstaged section, it will stage the block (a file or a hunk) into which it was typed. In the staged section, it will unstage the block instead. A block of changes is ether a file-delta or a hunk. By example, in the unstaged section, typing the "s" key (stage) on the diff header of a file will add the contents of the file from the work-dir to the index. If "s" was typed into a hunk, then that hunk instead of the entire file-delta will be applied to the index. Typing "u" into the a diff-header in the unstaged section will basically restore the contents of the file back into its state in the INDEX. Typing "u" in an unstaged hunk will undo the changes shown by that hunk. Finally, typing the RET key will try to locate the line in the delta hunk back into its original file.


The Diff Buffer

Another common command is the diff command. It's bound to "C-x v =" in egg's minor-mode use the egg's diff-buffer to show the difference between the file or repository revisions. When editing a file, "C-x v =" (egg-file-diff), by default will show the delta between the current in the work-dir and its contents in the INDEX. With a prefix (i.e. "C-u C-x v ="), the command will prompt for the oldversion (the new version of the file being its contents in the work-dir).

The diff-buffer is similar to a restricted version of the status buffer. The status-buffer shows two comparisons, work-dir vs INDEX and INDEX vs HEAD. The diff-buffer only show one comparison and depending on the actual entities being compared, the "s" and the "u" key will behave differently. By example, when showing the diff between two arbitrary revisions, the "s" and "u" keys will be inactive. As in the status-buffer, there's a little block of help text show the key binding on different parts of the buffer. The "n", "p", "g" and "q" In the diff-buffer, and other egg buffers, the "n" and "p" keys move the cursor from one block to the other.

The Commit Buffer

The commit buffer is launched by the keys "C-x v c" in egg-minor-mode or "c" from the status-buffer. At the top of the commit-buffer, egg informs the user the branch the commit will be add to. The commit message shall be typed between the two dashed lines. That space will expand automatically when the users type newline. Below the message input area is the 3 sections already seen in the status-buffer: unstaged, staged and untracked. They are shown in the commit-buffer to let the user a overview on what will and will not be in the new commit. They also let the user do minor last-minute INDEX manipulations if required. If launched with a prefix, i.e. "C-u C-x v c" or "C-u c", the upcoming commit operation will amend the last commit of the branch. Egg will also pre-load the last-commit's message into the input area so the user can re-edit it if required. In the input area, the "M-n" and "M-p" keys will cycle through the previously typed commit messages while the usual keys "n", "p", "s", "u", "g" and "q" are active outside the input area and they behave similarly as in the status-buffer.

The Log Buffer

One of git's best features is its design of the refs system: simple, efficient and powerful. Egg's log-buffer let the user tap into that resource. The log buffer provide bindings to let user manipulate and control git's refs (branch, tag, annotated tags),: creating and removing, pushing and fetching, merging and rebasing, attaching and detaching HEAD, etc.

to be completed...

要有自己的观点

面试豆瓣网产品经理的题目,你能答出来么?
经过长达一周的时间,我终究还是没能弄明白这道题目,在我面试史上那个光灿灿的问题!

话说给豆瓣投了移动产品经理职位的简历,当天收到人力回信,让提交一个豆瓣社区或是类街旁LBS产品的研究报告,心想,哇!“豆瓣”,多么金光闪闪的互联网招牌,不能怠慢呀。于是开始细心收集LBS的相关数据、案例,觉得这还不够,又自己用fireworks画了一个原型,提出的方案是结合豆瓣同城,如何能够让用户满意又能赚钱的LBS方案。

准备完毕,让在豆瓣的老朋友推荐过去(理论上应该提升被面试的几率),果然,当天人力就约了面试,于是噩梦开场了.......

进了会议室,一位大眼睛哥哥进来了,一口广式普通话,应该是豆瓣的产品经理吧,我正在填表,

我道:抱歉我先把表填完,这个比较费时间。

大眼哥哥:没关系。

(因为他也没自我介绍,所以就叫大眼哥哥吧)

过3分钟....

我道:抱歉,快填完了,这也是没办法,人力他们其实都是比较重视这个形式化的东西,从这个表的完成度来看你的求职诚意...

大眼哥哥:是么,从来没听说过。

我内心独白:汗...这不是常识么。

终于填完,

大眼哥哥:我也每看你的简历,太长了,你就自我介绍吧。

我小郁闷,心想没关系,于是开始自我介绍,大眼哥哥边听边频频点头。

完毕,于是一道道金光闪闪的问题开场了...

大眼哥哥:你觉得产品经理是一个什么样的角色?

我道:比如说一个团队中,每个人都很专业,专攻于自己的点,那么每个人的状态就如同一个圆锥型,那么在这个空间中,势必会有很多空隙,产品经理就是填充各个空隙的一个角色。也就是说,产品经理既要照顾道领导层的战略需求,又要结合技术团队的实现的细节,还要考虑到竞争对手,UI设计,用户反馈等多方的信息,最终推动了整个项目,成为一个成功的项目。

大眼哥哥:那么一个成功的产品的标准又是什么?

我道:理想的情况是,既让用户满意,得到了用户的美誉,又完成了领导的战略,达到了比如说赚钱这种目标,这就是一个很不错的产品。

大眼哥哥:不错是什么,如果必须界定成功或失败呢?

我道:那么就说是一个成功的产品吧。

大眼哥哥:哦,这样就是成功的,那按照你这么说,腾讯的QQ秀之类的,都是成功的产品咯?

我道:嗯,虽然是运营为主的一个产品,但是也不算失败吧。

大眼哥哥:什么叫不算失败,是成功还是失败,我需要知道你的标准!

我内心独白:汗......

我道:非要这么界定的话,那就算是成功的产品吧。

大眼哥哥:那么按照你的标准,随便来一个人,只要他做得产品是符合领导需求的,用户也很喜欢,那就是成功的产品经理咯?那么是不是说一个SP的彩信做得很赚钱,也是一个成功的产品经理?

我道:这种情况,要看一个前提,看是否运营层面占主流,比如类似新浪微博这样的产品,可能产品上并没有多大的创新,但是运营的好,所以产品水平一般,但是也很受欢迎。

(此时,我似乎看到了大眼哥哥眼中金光一闪,犹如老鹰看到了脱兔的眼神!)

大眼哥哥:所以,你觉得新浪微博是一个成功还是失败的产品?

我内心独白:汗啊......又来这种非黑即白的题目了。

我道:新浪微博是一个运营强势的产品,名人效应搞得非常好,如果我说,运营占了7成的成功。产品嘛,一般般吧,不差,也不算突出。

大眼哥哥道:不不不,我就是问你,新浪微博,是一个成功的,还是一个失败的产品?

我内心道:MD,怎么感觉循环了....

我道:非要按照你这个成功失败的逻辑评判,那么就算成功吧。

大眼哥哥:不不不,不是按我的逻辑,是按照你的逻辑,到底是不是成功的,你不要被我带着走。

我道:按我的逻辑,我已经说过了啊,就是一个一般般的产品。

大眼哥哥:好,我这么问好了,新浪微博、twitter、腾讯微博,哪个是成功的产品,哪个是失败的产品?

我道:我的标准的话,twitter是很成功的创新产品。新浪、腾讯都一般般。

大眼哥哥:所以你的标准是,只要是创新的,搞出一个别人没搞过的,就是成功的产品?

我道:没有啊。我没这么讲,我觉得创新是一个大大加分的事情,twitter的成功也是运营的特别好,其实twitter之前也有类似记录自己在想什么的类似的产品,但是没有twitter运营的好,比如那个Ashton Kucher跟某个电视台比赛粉丝数的案例,说明twitter也是很好的利用了名人的效应。

大眼哥哥:那你为什么说twitter是成功的产品?成功在哪?

我道:twitter的体验非常好啊,我自己就在用,收购了tweetie之后,体验就更好了,iPhone客户端很多细节让人难忘。

大眼哥哥:所以细节的体验上有些不错的地方,就是一个成功的产品?

我内心独白:你有病啊!算了,毕竟是面试官....忍....

我道:我没这么说,这是一个大大加分的元素嘛,不能作为一个唯一性的评判标准。

大眼哥哥:那你是怎么知道twitter的体验好,新浪微博和腾讯微博的体验不好的?

我道:这个很简单,比如观察我的同事,他们在用微博,我就随便问问好用么,他们会说,没啥感觉啊,就是看看名人的照片啥的,挺好玩的。这就可以很好的判断,这个产品没有惊喜感,没有带来美誉度,但是并没有妨碍用户的正常使用,所以只能说一般般嘛。

大眼哥哥:所以这就是失败的产品?这跟你刚刚的标准不一样啊

我内心独白:我擦,这算是挖个陷阱么......继续忍....

我道:不,还是一个成功的产品

我内心独白:这TMD真是打肿脸充胖子了

....... 一个小时关于各种产品的成功还是失败的话题,过后 .......

大眼哥哥:好,我们换个话题吧。

我内心独白:终于!

大眼哥哥:你觉得一个成功的产品经理是一个什么样的人?嗯,这么问不好,免得你被我带进去了,你觉得比如有几个产品经理聚在一起,哪个人有什么样的特质,会让你觉得他很成功,很出类拔萃?

我内心独白:我X! 又来了,非黑即白题!

我无力的道:正如我之前所讲的,一个上,能够达成公司的战略业绩走向,下能够把每个产品执行下去到细节,就是一个很好的产品经理的基本功。如果说个人的取向的话,几个产品经理之中,如果交谈中能够一起聊聊美国的最新的一些产品,知道最新的一些资讯,会让我觉得这人不错。

大眼哥哥:所以一个知道最新的资讯的产品经理就是一个成功的产品经理是么?

我内心独白:我X!你没病吧!我......此处省略50字.......

(过了1分钟...)

我道:我没这么说,我是说,这样补充一下,一个产品经理,如果能够了解很多新的资讯,且能够通过独立的思考,用一句话概括一个产品的理念,这样的人,我会很欣赏,觉得有共同语言。

大眼哥哥:所以一个能够知道资讯,且能够一句话概括此模式的人,就是一个成功的产品经理?

我内心独白:突然觉得有点冷...有点想家...

我道:还是我之前的标准,但是这是一件非常锦上添花的事情。

....... 一个小时关于什么样的人是成功还是失败的产品经理的话题过后 .......

大眼哥哥:最后一个问题,你跟技术之间的沟通的方式是怎样的?

我(霜打茄子状)道:我觉得最重要的就是沟通。最常见的状态就是技术从优化效率的角度,觉得某某功能或是某某设计是多余的,那么你就要耐心的跟他解释,这个这么设计的意义何在。因为技术没有参与过需求收集或是设计的流程,所以不理解你的设计也是很正常的情况。只要保持耐心,把你设计的原因传递给他,让他明白其中的意义就OK了。

大眼哥哥:那么遇到不可沟通的人该怎么办?

我道:不可沟通?那就只能更耐心一些啦。关键还是你的这个设计是有原因的,有道理的,就能说服他。

大眼哥哥:不不不,我就是说,这个人,不可沟通,你讲了,没用。怎么办?

我道:完全不可沟通?我真没遇到这样的人。怎么说大家都是为了做好这个产品,不至于吧。

大眼哥哥(难掩得意):那你是没去过百度吧,那里的技术很强势的。

我无力:确实没去过。那么这种情况,为了保证产品的效果,就必须坚持己见吧。

大眼哥哥:坚持己见也没用呢?人家就是不听你的。

我绝望:那就跟上级领导沟通吧.....

大眼哥哥一派失望的表情,我无地自容。

大眼哥哥:好,你有什么问题问我?

我道:其实我做了一个针对豆瓣LBS产品的提案,我本来以为我们今天会围绕这个产品聊,结果也没聊到,我很想听听您的意见。

大眼哥哥:哦?你还做了个提案?

我惊讶道:不会吧。我给了人力和推荐我的朋友,应该都发给你了呀。

大眼哥哥:哦,那我之后找人力要来看看吧。

我内心独白:X,做了一整个周末啊...看都不看一眼啊,您真牛X,豆瓣真牛X...让我交提案,然后根本不看是么...

我道:那好吧。其实就是一个结合豆瓣的同城的LBS产品的提案。

大眼哥哥:嗯,是一个挺好的结合点

我看出大眼哥哥已经不耐,心想应该告吹了吧。果然大眼哥哥起身,说,你先等一下,我去问问人力还有要问的么

我脱力,无所谓了....

之后又是一个豆瓣负责社区的产品经理进来,这次倒是自我介绍了,一进来就说,抱歉我真的没时间,也没看你的简历,我就简单问你几个问题,3、4个问题之后也就撤退了。我已经不记得问什么了,当时大脑基本当机状态。

面试结束了,大眼哥哥送我出门,最后送了我一句“保持联系吧,就算没机会来这边,还是可以保持交流” 。 嗯,应该是被否了,我想。

面试结束了,也过去了一个星期,豆瓣果然没有联系我。

其实被否也不要紧,又不是一个找不到工作的人,我但是最近几天午夜梦回,还总是想起那几个牛逼闪闪的问题,谁到底能不能告诉我

新浪微博,到底是不是一个成功产品啊啊啊啊啊??!!!???!!!

什么样的人才是成功的产品经理啊啊啊啊啊??!!!???!!!

技术就是不能沟通该怎么办啊啊啊啊啊??!!!???!!!

光咆哮了也没有意义,其实想问问大家,

这样的问题怎么回答?这样的面试官怎么应对??整个过程中,哪里出了问题??


====================

 

hi,我是文中的面试官,来和作者聊两句,相关产品经理技能当时聊了几句您就过关了,于是整个面试根据我的风格,重点测了两个问题:一是判别事情的标准和方法;二是在多种PK下产品经理的压力反应。

测完我对你的判断迟疑了,但又担心错过您这个人才,因为我认为您考虑事情的思维还是值得赞赏的,只是方法不认同,所以让另外一位资深的豆瓣同事与您聊聊,加强判断。

关于您用心准备的体验报告,在这里诚恳地向您道歉。那天您的邮件是内部同事推荐过来的附着评语,重点看了评语,漏了正文内容和附件,同事推荐过来的我都是先约再看,面试最后也没仔细看,是前面的判断已出。

很惊讶那天的邂逅您都记得一清二楚,虽然很多地方表达的语气加入了您丰富的情感,但也基本属实。不管怎样,感谢您曾经的作客,您的能力毋庸置疑,只是和我的团队“+”“-”没有成功连结而已,祝您展翅!

那些题目不是豆瓣风格,是我的风格,偏激进,也刚加入这个团队。您末尾提到几个问题在我问你时都没有答案,您不用想太多,我的建议是清楚的表达自己最重要,底下大伙的建议也蛮好,您可以看看。

ps.有空可以来找我吃饭,闲扯工作、生活:)

 

====================

我觉得这是“压力测试”:
在你面前的是一个喋喋不休,满嘴跑火车的蛮横leader,你如何通过逻辑、数据、理论和耐心说服TA,这是关键。整个过程考察你的分析能力、反应能力、沟通能力和情绪控制能力,至于问题是什么,怎么回答,都不重要。
产品经理的大部分能力是“软能力”,比如沟通、执行、控制、领导等,所以我猜他是在考察你这方面的东西。让你写东西,却不看你写的提案,貌似是压力测试的必然环节,比如去通用电器笔试,答了3个小时的卷子,期间窗户突然破碎,大娘进来打扫卫生,喇叭突然响起摇滚乐等等,这期间考官会记录每个人的表现,看了几次表,情绪是否表现出烦躁,注意力是否不集中等,至于卷子,扭头就扔了。

PS:
大眼哥哥:坚持己见也没用呢?人家就是不听你的。
我绝望:那就跟上级领导沟通吧.....
大眼哥哥一派失望的表情,我无地自容。

这轮交锋基本决定了你无法达到做产品经理的要求,确实很失败。
楼主说“坚持己见”,但没说怎么坚持的。如果只是说,“我觉得就得这样”,开发不认账,最后成了农村妇女吵架了。如果楼主能描述一下所谓“坚持己见”指的是用数据、用竞品、用调研,据理力争,实在不行先上一些功能,线上观察做AB测试,面试官可能会有不同的反映。
如果还说技术还是不听你的,好的方法是利用“技术leader在场的场合”,比如每周项目组例会(没有例会制度的话,一定要建立这样的沟通机制),把事情再说一遍,让技术的leader去给工程师施加压力,比产品管用。
如果还说技术不听你的,好吧,我觉得不用找领导了,直接找HR问,这种人怎么招进来的,呵呵 : )

 

====================

 

你没有拿好剑,更可怕的是不知道自己没有拿好剑。

其实就三个问题:什么是成功的产品,什么是好的产品经理,和技术的沟通方式,都是产品工作里相当根本的问题。对于它们,展开的话可以写一大篇,简短回答的话也可以一二三四五。你要是一时没想好,哪怕是现场提出想10分钟再回答一二三四五,都比这么挤牙膏强。大眼哥无非是希望你给出一个能自圆其说的系统答案,你却不断转进。那些被你理解成连续无关联追问的问题,其实背后都是同一个问题。下次再碰到类似情况,无论你前面有多乱,最后务必针对这背后的“一个问题”总结一下,呈现一个完整的答案。

在这里非黑即白是需要的,因为自己就是执行者,每个节骨眼上做什么,做和不做,怎么做,只能有一种选择,判断即执行力。模棱两可的立场是评论家的事儿。

====================

个人感觉是这样,如果觉得沟通有问题,一定会是双方的问题,要么双方的需求不在一个点上,要么就是双方的理解不在一个层次上。

在沟通当中,面试官出现了几次非此即彼或者概括性的情形,这种问答方式对于面试者来说过于咄咄逼人,并不利于面试者的发挥,但是,这种压力测试必然存在,尤其是在PK需求的时候,楼主不知道有没有碰到过这种情况,这种情况其实很多,其实,个人感觉,面试官是在扮演一个外行的角色,来模拟PK需求或者是说服老板的过程。

楼主回答问题的时候可以考虑从以下方面改进:

1.在填表时,发现对方的情绪并不特别集中时,在回答问题的时候就需要集中注意力,因为往往这种情况下,面试官会提出较多让你不可接受的问题,需要小心应对,尤其是他的语气存在着一定不耐烦时,要小心应对。

2.在回答过程中,一定杜绝答非所问,比如说,对方问对于成功和失败的界定时,可以突出你的逻辑性,一二三四五,能自圆其说即可,不要给对方太多发挥的空间。再比如问QQ秀时,这个问题完全是可以参照你对成功产品的理解来套模式,少讲也许、可能、应该之类的词,会让人觉得你不够坚定。

3.  在发现对方比较强调他问的问题时,要稍微警醒一点,不要点燃他的情绪,会导致你后续的对答越来越累。

4. 他问的问题一定跟他的经历,以及豆瓣的企业文化有关,讨巧一点,可以往豆瓣的企业文化、产品气质上靠一靠。

5. 不要灰心,呵呵,这种情况很正常。

一家之言,马后炮,见笑:)

 

====================

这是知乎目前为止出现的第一个神贴了吧。看了半天,没忍住,想说2句
1、楼主其实从一开始就没看清楚对方用的什么招数,要刺你什么地方。所以,你后续所有的答案都是虚的;
2、对方其实就2招,你是产品经理,你最主要的一个工作就是“做决策”,另外一个工作是“沟通”。
要做决策就会经常面对各种的是非题,1就是1,2就是2,工程师最听不得的话就是,“其实这样也可以”,“要不就这样吧”;
要沟通就会经常跟不同的人PK,有的比你职位高,有的比你气势强。但是,他强由他强,你需要有自己的一套逻辑。
很显然,这这招楼主都没接好。关于什么是好产品的题目,作者恍恍惚惚说了很多,观点不一;关于好产品经理这事,其实都在表层上看且也不坚定。

说点建议,不一定对:
1、有不少题目可以需要从多个维度去界定,比如什么是好的产品经理,这个评价没有一个唯一的标准,比较明智的答复就是列出1,2,3,4.....
2、很多时候答案是A还是B不是很重要,重要的是对方要考察你选择这个答案的逻辑是什么,这是重点
3、记住,千万不要摇摆不定,尤其是PM这个角色

以上,一点浅见,如果觉得不对,就当我没说,呵呵

 

====================

就像被拒绝一样
个人觉得你可以心安理得的不选择这个职位
每个团队都要选择Match的成员,而每个人也要选择Match自己的团队

风格:如果面试前没看人家简历,至少不是件光彩的事情,即使不道歉,也不至于大张旗鼓的说我没看你简历。就像做产品经理,和人沟通时,也是这样的风格么?就算真是考察压力,也应该在结束后对人有更好的表现。

国内很不健康的文化就是这样所谓的PK,仿佛是谁更横一些,谁就能做好产品经理。
(也有某些公司的人以把产品经理骂哭为乐...)

某一次同事面试一个人,刚面了10分钟就觉得整个人不太合适,但是又觉得这么短的时间结束会很伤害人,于是请我帮忙,再和他多聊一会,聊聊他职业的发展,给他提点建议之类。面试官和面试者都是平等的,你付出时间面试人家,人家同样也花了更多的时间准备和跑去见你。面试不是一个让面试官觉得自己很爽的机会,居高临下咄咄逼人谁都会。豆瓣的工作氛围不至于到了需要这么压力...的地步吧?

每个人都有适合自己的舞台,不必为了一份工作太委屈自己。我隐约的觉得我去面试也通过不了... 因为不喜欢将来成为战友的人是这样的风格。

(以上只针对这样的风格,不对具体的人。我们很难评判一个人如何,也许都是很Nice)

P.S. 这里的很多回答都很不错,但是直率的说,难免感觉有些事后诸葛亮。大家在面对这种情况时,真的都能如回答中所说的那样镇定自如、有条有理、侃侃而谈么?

也看到很多回复里对于这种面试方式的肯定。但是如果是故意的,这种方式真有效么?
借用用户研究的方法来说,研究用户时最好能够让他们在真实的Context之下,观察他们的反馈和态度,这样才能投射出真实的需求来。无论是用户访谈还是可用性测试,Warm up都是非常重要的,目的在于让用户尽量放松,尽量贴近平时的状态。

类似这样的面试里,面试官希望通过模仿包括难以说服的开发人员在内的各种角色和场景,考察面试者的“各种”素质。但是对面试者来说,他自己的Context却仍然在“这是一个将来我要一起合作来做产品的人”,并且“我很喜欢这份工作,我的表现会被看成...”,完成这样角色的投射其实挺难的,如果面试者当时就猜到你是这样的意图可能还会好一些,但是这样就更有违初衷。

我也曾一个人在一堆大老板面前挑战过Senior Manager(同样因为研发的问题),气氛更加紧张,让我感觉很好的是我直接报告的老板第二天一大早就跑过来找我,问我能不能挺的住,她支持我。如果在面试时我就发现会和自己并肩奋战的人都需要这样的状态,可能更想的就是赶快结束面试,因为觉得彼此不Match就是浪费时间。(但是也许这个公司和团队的风格其实完全不是这样,凭白多了误解)

很多人当他们面对正确的挑战时,他们能表现的很好。也许这个面试者在真的面对难以对付的研发Leader、工程师时,会很坚定,但是当她发现自己未来做产品的同事/老板也这么难以沟通时,要么你给了她Offer也不一定去,要么在这个过程中情绪就受影响,难以正常的发挥了。毕竟招的是产品经理,不是特战队员。带情绪时谁都会容易出问题,再高级别的人我也见过因为情绪的影响而出现判断问题的,何况只是招初级的产品经理。

所以给面试者创造一个好的面试氛围,让他/她充分展示自己的能力和气场,这样对寻找好的团队成员来说可能更好一些。

(后面这部分是纯技术讨论,只讨论面试的方法,没有动机对公司和个人做出评价)

 

====================

个人感觉,楼主有点过于油滑了,可能是个能力很强的人,也许在很多公司都会很有用武之地,但从字面上看,不是面试官喜欢的类型。

每一个真正热爱产品的产品经理,对待自己的产品应该如数家珍,所有关于这个产品的前世今生(包含前期的用户研究、需求调研、市场环境、竞争性分析、后期的运营策略、数据反馈)都应该烂熟于胸,可以经得起所有不同岗位的人挑战,同时,又对很多问题的看法是一针见血、“非左即右”的,请注意,在这里非左即右是说你必须作出一种倾向性判断的意思,不容许有任何含糊不清和犹豫不决。这是一种做产品的气质,呵呵,也许我描述得不够清晰,但你可以想象Mark在facebook上的独断专横和一意孤行。

另外,判断一个产品是否成功的标准,我想有太多了,但别人的看法不重要,用户和数据,都是最重要的。用户喜欢,数据反馈良好,会得到大多数人的承认。

和技术如何沟通的问题,更多的是需要提供翔实的论据和数据,同时给出科学的推论过程。对于面试官提问的,技术太强势的问题,当所有的理性用尽的时候,一个产品经理发自内心的坚持就极为重要了,如果你对这个产品有真爱,你可以用尽你所有的资源去协调,去找到所有的人来支持你,说服他,甚至,你可以拉公司的高管、CEO来帮助PK对方,这是一个产品经理最负责任的态度。hoho,我有过之前一些产品的同事,曾经因为某些问题的讨论,就去直面负责技术的副总裁,效果还是非常不错的。希望楼主能明白,做产品经理,不一定会很儒雅很高尚,但一定需要极负责任的心,需要去力争,需要去奋斗。

 

====================

你觉得产品经理是一个什么样的角色?

�品�理不是�理(manager),而是��者(writer)。她的工作不是管理(manage),而是��西(write)。她和程序�的��在於程序�用形式�言�,她用自然�言�。

那么一个成功的产品的标准又是什么?

什�是成功?

腾讯的 QQ 秀之类的,都是成功的产品咯?

QQ 秀是成功的�品。但我�法泛泛�「之�的」。

按照你的标准,随便来一个人,只要他做得产品是符合领导需求的,用户也很喜欢,那就是成功的产品经理咯?

在��不是傻�的情�下,是的。

那么是不是说一个 SP 的彩信做得很赚钱,也是一个成功的产品经理?

是的。

你觉得新浪微博是一个成功还是失败的产品?

新浪微博是一�成功的�品。

新浪微博、twitter、腾讯微博,哪个是成功的产品,哪个是失败的产品?

新浪微博是一�成功的�品,��微博是一�失�的�品。目前�止,Twitter 不是�品,而是��。��怎��不知道。

只要是创新的,搞出一个别人没搞过的,就是成功的产品?

否。

细节的体验上有些不错的地方,就是一个成功的产品?

否。

你是怎么知道 Twitter 的体验好,新浪微博和腾讯微博的体验不好的?

我�有用���微博。新浪微博在加速自己的熵的�程,看到它的介面我想像《�下的房客》中的最後一幕一�,拿�根��戳入自己的眼球。看到 Twitter.com 的介面我�想去舔屏幕。

你觉得一个成功的产品经理是一个什么样的人?嗯,这么问不好,免得你被我带进去了,你觉得比如有几个产品经理聚在一起,哪个人有什么样的特质,会让你觉得他很成功,很出类拔萃?

��不�自己��品�理的那�。

一个知道最新的资讯的产品经理就是一个成功的产品经理是么?

否。

一个能够知道资讯,且能够一句话概括此模式的人,就是一个成功的产品经理?

如果他的�品是以�粹的自然�言�成的文字作品的�,是的。

最后一个问题,你跟技术之间的沟通的方式是怎样的?

主要用 Skype 和��,有�也用 audio note(WhatsApp 或 TalkBox)。

那么遇到不可沟通的人该怎么办?

���通。

不不不,我就是说,这个人,不可沟通,你讲了,没用。怎么办?

���。

那你是没去过百度吧,那里的技术很强势的。

�,我�去�百度。

坚持己见也没用呢?人家就是不听你的。

要����通,要�先略�����。

 

====================

O(∩_∩)O哈哈~,楼主的提问笑死我了,尤其你心理的OS,O(∩_∩)O哈哈~,所有都觉得面试者答题不太成功,但是我觉得这个大家都是在闲着X疼的时候,才能这么潇潇洒洒的叙述,估计每个人再去面试的时候都有这样的纰漏,而且你们没遇到过那种趾高气昂的面试官吧,我遇过,我可以告诉你们真实的感受(当然我不是说大眼哥哥趾高气昂,但是通过描述可以看到确实不是怎么认真),在这种时候面试官不但是考核者,同时也是你面试公司的代表者,面试官的态度和诚意对于被面试者都是有心理影响的(大眼哥哥显得有点没诚意)。这个时候面试者不但要想问题的答案,同时要在心理上和面试的态度做斗争。这种时候的心理——复杂,紧张,矛盾,纠结……
至于那些破题,神马答案呀神马的是非,根本没有任何关系。有么有共同语言和思想上的碰撞是至关重要的,既然他给你面试,那么将来就是你的合作伙伴,你们在这些观点上都存在分歧,说明你们有些话不投机(面试者也要知道你在被面的同时也在面试你的面试官),所以这样的结局不在于你的回答有多烂,而是不太投机。所以不要追求啥正确答案了,继续找和你投缘的工作才是正解。
至于公司是好是坏,你可能觉得豆瓣是个好公司错过了有点可惜,可是好公司多的是,你怎么能为了一个豆瓣错过整个互联网森林。还有呀天下公司一般黑,再好的公司你也有气的跺脚的时候,说白了这还是一个心态问题,好的心态不管你在任何公司都可以开心的工作,拿出自信的心态去挑战更好的公司吧,O(∩_∩)O哈哈~,谢谢楼主给无聊的夜晚带来这么多快乐。还有楼主很幽默,面试的时候可以好好利用一下^_^。

 

====================

你觉得产品经理是一个什么样的角色?产品经理大致可以分为三种类型,founder型、数据分析型、落实型。前两者根据需求来源来区分。自己发现需求,可能是一idea,最终创造�来。或是根据现有产品的数据进行统计分析,发现潜在不足进行改进,从外界来获得需求,主要在数据上。不可否认,一些PM并不会跟进一线产品资讯,也不会分析数据,但是他们有很强的落实能力,控制各下游环节的时间成本,完成目标。这也是一种能力。PM在不同时间扮演不同角色,没有什么绝对一种,只是看你更倾向哪种。豆瓣会喜欢founder型么?不清楚。

那么一个成功的产品的标准又是什么?
成功产品就是完成了既定目标。包括时间成本、资源成本。没有既定目标情况下没有标准。

不错是什么,如果必须界定成功或失败呢?
在没有前提的情况下,没法界定成功或失败!没有必须,这么问有问题。

这样就是成功的,那按照你这么说,腾讯的QQ秀之类的,都是成功的产品咯?
QQ秀就是成功的产品。达到了盈利的目的,并且是持续盈利。主动性付费。

那么按照你的标准,随便来一个人,只要他做得产品是符合领导需求的,用户也很喜欢,那就是成功的产品经理咯?那么是不是说一个SP的彩信做得很赚钱,也是一个成功的产品经理?
混淆了“人”成功还是“产品”成功。如果符合上下需求,的确可以说是成功了。SP做彩信赚钱了,也算成功。SP公司的目的和方向就是赚钱,从消费诱导,到渠道落实,这些完成了盈利目的的PM们,就是成功的

好,我这么问好了,新浪微博、twitter、腾讯微博,哪个是成功的产品,哪个是失败的产品?
没法说的问题。国内的微博才1年左右的真正推广时间,里边又有战略布局需求,资源重整需求,这根本不是一句两句能说清楚也不是一个绝对答案能满足的。

至于后边的开发沟通问题,我也不知道怎么回答。

你应该从开始的几个问题就摸清面试官的目的是什么?他在干什么。如果你搞不清楚,他又一再纠结绝对性的答案,那你应该适当反问。

整个过程中问题在哪?
1.面试官在准备上有欠缺,cv和project都没看,面试者体验上就有了情绪。
2.面试者情绪存在对立,沟通上欠缺方法。在面试官没有抓住重点的时候也跟随在这些似是而非的问题上纠结。整个面试过程中,你们讨论的都是虚的。一般讨论虚的都是看人品如何。那只能说明你的人品不是面试官需要的。
3.面试官如果提出了这样的问题,在面试结束的时候如果能够说一下为什么这么问,这么问有什么目的是最好的。
4.面试者评价面试官是有失偏颇的,这就象面试问题微博究竟成功还是失败?一样,在不知道面试官用意前提下,这些判断不成立。
5.面试官挖了几个坑,几次以片面答案来反问这就是××么?这些坑你一个都没跳过去。
6.想说一下前边说的压力测试,以豆瓣的风格,不会这样。如果真的是压力测试,那面试官的压力题太糟糕了。问题都要绝对话。产品不可能有绝对理想环境!!!所有的问题都要权衡后抉择。

 

====================

整个过程中,哪里出了问题?

学生:"老师,什么是人?"
柏拉图:"人为两腿直立,身上无毛者也."
第二天,学生提着一只扒光毛的鸡来到柏拉图面前----"老师","这就是人吧?" 

大眼哥哥:那么一个成功的产品的标准又是什么?
我道:理想的情况是,既让用户满意,得到了用户的美誉,又完成了领导的战略,达到了比如说赚钱这种目标,这就是一个很不错的产品。
大眼哥哥:哦,这样就是成功的,那按照你这么说,腾讯的QQ秀之类的,都是成功的产品咯?

有木有发现逻辑惊人相似,首先大眼哥哥问了你一个定性的问题,你给了一个定量的描述,然后他用你的定量描述来下一个定性结论。你一听就觉得这个结论荒缪,补充一个定量描述,他又来一个定性结论。呵呵,万劫不复。
这种判断逻辑本身就是有问题的,人是xxx,并不代表xxxx就是人。成功产品要xxxx,并不代表xxxx就是成功产品。
所以第一个第二问题你如果基于这个逻辑去回答基本上是跑不出来的。这根本就不是什么黑白题的问题,是逻辑本身的问题。

第三个问题,基本上就是让你举起一块你举不起的石头。当你说找别人帮忙的时候,对方会表示失望呵呵。说白了搞定一个人无非两种渠道,1是逻辑理性2是人性的权利情感。无法沟通就是排除了第一种,果断用第二种找领导,要不开掉他没什么好说的。你要坚定一点。

我有一次也碰到过类似的面试官,他一直用他的逻辑问我,我就按我的逻辑答不管他。最后火药味很浓,他问我我为什么那么没逻辑,呵呵。我就说我很有逻辑只是碰巧和你不一致而已。最后给我offer了但我也决定不去了。

这个问题的本质是面试的时候你希望得到这份工作,就需要让面试官认可你。这样面试官就处在主导和强势的位置,面试官的逻辑也主导。但是你不要试图去迎合面试官,而是按照你逻辑把想说的说清楚。不然你发现你一直在临时想出对方想知道的答案,那样就变得被动了。

大眼哥哥:“所以让另外一位资深的豆瓣同事与您聊聊,加强判断。”说明他还是相对客观的。呵呵

 

====================

感觉楼主的面试技巧和心态都不过关。在回答中用了很多答非所问去应对,这样必定大打折扣。一定要有自己的立场,一定要耐心。
在他开始讨论“怎么定义一个成功的产品”的时候,你心目中就应该订立了一个成功产品的标准,并且当他每提供一个产品进行对比的时候,就按照你刚开始订立的标准一直判断下去。
面对这种带有辩手气质的面试官的时候,如果没有自己的立场,你就输了~

 

====================

客观的讲,我觉得这种面试方法对于产品经理的面试有一定的可取性,很好的考察了几个重要特性:
1.逻辑
2.原则
3.沟通
4.耐心
5.自信

给楼主一个建议:如果你在判断问题的时候没有标准或者不坚持标准,执行标准的时候不坚持,总是模棱两可,那你就不会是一个好的管理者和领导者,和你这样的人沟通会很累。

 

====================

聊聊个人的看法,我觉得整个面试过程面试官其实是想了解你对一些问题的主观看法。是非题其实也没什么,为什么好或为什么不好说明自己的观点就可以了。

如果我碰到这样的面试官我会跟面试官问一些有关豆瓣的企业文化,结合企业文化也可以聊聊自己的兴趣爱好,通过兴趣爱好拉近与面试官的距离。就像豆瓣网站本身一样。

如果说问题出在哪里的话我觉得“技术就是不能沟通该怎么办”这个问题在回答上可能还不是很完美。产品经理需要穿针引线去疏通各个环节,与开发人员的沟通则是当中比较难处理的。以前我也是个开发人员,可能了解一些开发人员的心理。开发人员并不是要故意刁难产品人员,只是他找不到一个这样做的理由。

与开发人员相处其实很简单,首先你要在日常的工作中建立信任。自己想好并且确定的事情再去告诉他,不要频繁的需求变更。开发人员性格大多数都很内向,你需要在工作之余多跟他们在一起吃饭、喝酒、聊天彼此之间互相了解。有时候也许开发人员不会赞同你的观点,但是他还是会按照你的意思去做。我想这就是朋友之间的信任吧。

 

====================

我个人的感觉,是需要坚定自己的想法,很清晰明白的说出来,直接表明自己的立场。比如你可以直接说明很多问题不是那么绝对化的,他在说概念,你也可以说逻辑说哲学,你可以说,事实上在生活中有很多类型:非A即B,既A又B,既不A也不B,A即是B,也可以绕晕他么,他的思维模式是非A即B,你就同他说既A又B,充分不必要条件,必要不充分条件,充要条件,等等,不能抓住一点不及其余。

还有和技术无法沟通交流,可以小范围测试啊,套有个广告语,“用事实说话”。

关键是要自信坚定,敢于说出自己的想法。

 

====================

LZ遇到的问题其实挺正常的,之所以你会觉得被绕进去或者非黑即白,原因在于貌似你没有一个完整的产品价值观。

比如一开始都挺好,当被问到什么是成功产品的时候你其实给出了明确的回答,但用词有些闪烁。对用户有价值,完成公司战略意图,至少我觉得这足够成为一个产品成功的标准,但你采用了“不错”这样模糊的词语。本来这问题也不大,但是当对方用 “那按照你这么说……” 这样的语气的时候,你没有坚持自己的看法,而是有些顾左右而言它了。

成功有很多的角度来看待,从搜索角度看百度贴吧那是绝顶成功,从视觉审美角度来说百度贴吧则是坨屎。按我的看法,当时你应当不受面试官的口气影响,完全可以直截了当地说,“没错我觉得QQ秀是成功的产品”,或者“成功有很多角度,至少在我的评价标准里QQ秀是成功的。” 最糟糕的则是“不能算失败吧”这样的反问语气。

成功与否的标准每个人理解都不同,其实面试官只是想知道你的标准而已,说白了这是个价值观方面的问题。

不过面试官后面的话则是个大陷阱——“那么按照你的标准,随便来一个人,只要他做得产品是符合领导需求的,用户也很喜欢,那就是成功的产品经理咯?”

刚才不是在说成功的产品么,怎么一下就变成成功的产品经理了= =

后面也基本一样,我没有看到LZ自己的价值体系,说白了是你每次的回答不够明确和斩钉截铁,存在模糊地带,所以才会导致面试官不断追问以至于你觉得被“绕进去” 。

其实我觉得吧,面试的过程往往就是双方就价值观的一个求同的过程,而非问答。如果有自己的一套价值体系,很多问题完全没必要处处顺着对方来答。比方说

“那么遇到不可沟通的人该怎么办?”

换我的话我就会说,我不希望在公司里遇到这样的人。如果 是一个靠谱的公司,大家有着共同的目标和信念,应该就不会允许这样的人存在,如果公司中确实存在 “绝对不可沟通” 的人,那么我会认为这个公司不是我的目标。

求职不是“求着别人给职位”,而是”谋求别人的职位“ ,前者没有底线,后者则有。

 

====================

虽然我不是“产品经理”也从未想过成为所谓的“产品经理”,但是我觉得一个公司不光它的产品,还有它的面试、入职、离职的用户体验都无不透露出它独特的气场和行事风格…

面试本来就是个让你和求职的地方双向了解的渠道,也是一个让双方判断是否愿意与对方共事的过程

如果你能判断一个公司好还是坏,那么你也能判断一个产品成功还是失败,道理有很多,看自己认同的是哪一种 :)

 

====================

我说一下我对成功产品的理解吧。我认为成功的产品有三重境界:
第一重:能够创造性地改变用户生活方式的某一方面,且被广泛接受的的产品。以这个标准来看,twitter,新浪微博,在各自的市场上成功创造出了大众传播的新方式,且抓住了大众传播在当前信息泛滥的时代,需要简洁、快速的内在需求,毫无疑问,非常成功。
第二重:能够便利用户的某一方面工作和生活,提升效率,并被广泛应用。以这个标准来看,Quora,知乎,在普通论坛的基础上,加上了社会化网络的元素,加强了用户的沟通效率,因此正走在通向成功的道路上。还有一些传统软件公司如金蝶,用友的管理、财务软件等。
第三重:盈利能力强。有一些产品,没有太多创造性,但是通过好的运营,确实能盈利,客观上也为社会创造了价值。比如现在的互联网游戏产品,QQ的一系列产品,都属此类。腾讯微博是否成功,还不明朗,要看运营的成效(互联网产品的成功,七八成在于运营)。如果成功,也只能归类为这一类,因为它不是这个市场上创造这种模式的产品,它只能以赚钱多少来衡量成败。

三重境界是自然向下兼容的,即处于第一重境界的产品,必然具备后面两重的属性。

因此,如果我参加面试,我会肯定地说,面试者提到的那三个产品,都是成功产品,但是境界不同。

 

====================

### 随便来一个人,只要他做得产品是符合领导需求的,用户也很喜欢,那就是成功的产品经理咯?

我觉得是成功的产品经理。

* 领导总是提出一个大方向,要悟透这个大方向,需要深入的思考,以及与领导的沟通。这不是随便找一个人就能做到的。
* 领悟到了上层的战略意图,构思出产品原型,需要跟公司原有的体系相融合,需要请求美工的帮助,需要一次又一次的迭代。这不是随便找一个人就能做到的。
* 原型出来之后,跟技术人员合作,会遇到各种各样的问题:技术不配合,技术实现不了,技术不认同你的体验,等等,需要产品经理耐心地与他们沟通。这不是随便找一个人就能做到的。
* 终于把产品熬出来了,用户用着不习惯,经常抱怨,又要对产品进行进一步的改造,直到让用户真正喜欢这个产品。这不是随便找一个人就能做到的。

所以命题不成立

### 你觉得新浪微博是一个成功还是失败的产品?

* 如果我是新浪微博的普通用户,我觉得新浪微博是一个成功的产品: 用着很方便,朋友们也都在用
* 如果我是一个重度twitter用户,我觉得新浪微博是一个失败的产品: 太媒体化了,乱七八糟的功能太多,审核一个app都那么麻烦
* 如果我是新浪微博的后台技术人员,我甚至都不关心这是不是一个成功的产品

### 腾讯的QZone / 新浪微博 之类的,是不是成功的产品?

是。理由同上:符合领导需求,用户喜欢。在这两个前提下进行创新,加分

### 技术就是不能沟通该怎么办?

证明自己是对的。技术人员通常会有个习惯:按照自己的使用习惯来揣测普通用户的使用习惯,可以尝试从这个层面入手,来解释产品为什么要做成这样。

 

====================

1、果断的打打断大眼哥哥近乎于无理取闹的逼问
评论中吕兄指出:“大哥哥明显是在压力面,有一定的道理在里面,不能简单的判断为无理取闹”。我在回答中做一些扩展的解释:
我可以理解大眼哥哥的面试方法,其实大眼哥哥模拟的是产品经理经常会碰到的场景:面对毫无技术背景的客户和百般刁难的投资方。
在这种场景下,我会选择的手段就是帮着他们整理逻辑,把他们从揪住一点不放和非黑即白的“牛角尖”中解脱出来,然后用我的逻辑去回应。这是我所谓的“无理取闹”

2、指出其这种非黑即白、以点概面的方式本不是做产品的态度

3、快速整理自己的思路以一二三四的形式表述,

4、借用面试现场的 白板或者手边的纸笔以图表的形式协助表述

 

====================

呵呵,这是我在知乎看到的最有趣的一个问题。不过遇到这种情况,无论是谁也难以应对,毕竟甲乙双方地位不对等。要做有效的回答,必须要有能跳出这种制约的思路。看完之后,有点想法可以参考:
1,从面试过程来看,对方要找的可能只是一个听话的、能干活的产品助理或者产品专员,虽然叫产品经理,当时问的问题明显要求偏低,适合刚刚入门的新人回答。两边对位没有对上。
2,永远一问一答的情况,会让被动方永远被动,应该偶尔反问。比如:你问我是不是成功的产品,那么请教成功的标准和定义是什么?
3,整个过程来看,你是个不错的产品经理,至少具有潜质。认真负责,多角度考虑问题,同时经常尝试新产品,与人沟通也很好,不愁找到好工作。希望未来有机会加入我们公司吧,呵呵。

 

====================

哈哈,大眼哥哥真幽默。。
个人认为来说,成功是一个模糊的定义,如果单纯说某个产品是成功还是失败的这个未免太笼统了,我们可以说twitter的创新是成功,新浪微博的运营是成功的,腾讯微博人数增长的方法是成功的,但是我就能说twitter比新浪微博更成功吗?

实际使用来说,新浪微博更为符合国人使用,对于“转发“和”评论“的定义更符合市场,功能设计和细节处理也不错。twitter的社会化设计也没有新浪微博来得丰富,对于腾讯微博来说,个人使用感觉不佳,对于其”转播“和”点评“(最近点评改成评论了)的设计一直很纠结,界面风格也不如新浪微博的大方,也算是一直在追赶着新浪吧,但它就算不成功吗?当然不是,它有机结合了qqim和qq空间,也在某些细节方面设计很不错,把握住了其强大的im用户群。

所以成功不是轻易的定义,我们可以说某某产品研发成功了,当然也可能某某产品却在运营方面确实非常糟糕,失败了。可能有的产品是模仿了,但是在创新和推广当中很成功,我们可以说它一时是成功的,但不是一直都是成功的对待,它可能被强大的对手模仿了,或者内部出现策略失误了等等,都可能导致对手比它更成功,这时候它算是不成功了。这么来说,对于发展中事物,我们要定义它成功还是失败的难免为时过早,事物会有你追我赶,我们倒是可以分析它之中的所做得不错的方面,需要改进的方面,做得失败的方面,不断的对产品进行反省,才能在滚烫的世界中不断成功。

对于产品能不能赚钱的问题,有的产品做得实在差劲,没用人,有的产品很满足了用户需求,体验也做得不错,但是还没有盈利的方法,我个人更倾向去做后者,当用户不断累积,知名度提高了,赚钱的问题可以不愁了,只是赚多赚少方法的差别了。

跟技术人员沟通不来,我想先听听技术人员他想说什么吧,他想怎么做好了,如果不想说什么的,这样的技术人员就性格很怪了,如果技术不是很牛,不是做好产品的人,跟团队的人也沟通不来的,考虑向上司建议炒掉吧。如果很牛又很会做产品,那研究下他跟什么人沟通得来,学习他们的方式,慢慢磨,多倾向交朋友的方式,总有天会沟通来的吧!

 

====================

1、根据你的帖子,能证明你做产品经理有想法,但是推动力有待商榷。
职业经理人(包括产品经理)其中一个经常被忽略的能力是“管理领导的能力”,这也是前一个公司的boss教我的——具体指的是什么,字面上就可以看出来了。
2、根据你的帖子,还没办法证明你的面试官是不是好的面试官。
因为不知道他到底是真的在测试你呢,还是如你想要暗示的那般其实很傻……

 

====================

个人感觉楼主的回答给人的印象是不太有主见,自己的定位不够明确。再说了,你讲围脖,显然应该拿豆瓣说做做分析啊。说完你的问题,我觉得这个面试官也很不尊重,首先自己准备不充分,其次面试时候带情绪。

 

====================

我曾经面试过一些产品,换我面试的话,模拟以上场景,我会问以下问题或部分:

1.你做过哪些产品,参与过哪些细节,

2.对产品总监的概念(认识),这个产品(被面试的)有没有想做总监的“理想”

3.具体产品内容,这个需要具体的细节,最好带有作品

4.指出当前具体产品的缺陷(比如豆瓣的某个产品)

5.产品体系的考量,产品的内部分工,协调,包括和技术

6.产品的知识视野...你要招的人是负责很狭窄的产品,还是带产品团队的(潜力挖掘)

7.产品(被面试者)自己的思想...这点或许最重要,由第六点来完成...

8.欢迎补充

2011年8月8日星期一

native application development for Android

/android



This page is dedicated to native application development for Android (primarily using C/C++).


Required software

Optional software

Contents
  1. Hello, world
  2. Reading the keypad
  3. Building SDL
  4. Dynamic linking
  5. Using OpenGL ES
  6. Debugging
  7. Bitmap color reduction and GIF encoding
  8. A practical example


Hello, world

Let's start off with the trivial "Hello, world!" example. There's nothing special about doing this on Android, other than perhaps how you compile and deploy the program.

hello.c
#include   int main(int argc, char **argv) { 	printf("Hello, world!\n"); 	return 0; } 
Compile with arm-none-linux-gnueabi-gcc -static -o hello hello.c

After starting the Android device/emulator you need to push your program to the file system using the adbtool located in the tools directory of the Android SDK.
From the command line, do:

adb push hello /data/misc/hello

You can push the program to some other directory if you prefer. If adb complains about the file system being read-only (or "no such file or directory"), try remounting it in read-write mode. For example, if you wanted to be able to push the program to somewhere in /system:

adb shell mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system

The next thing to do is to make sure that your program has the right attributes to be executed:

adb shell chmod 777 /data/misc/hello

Then you can execute your program through the shell:

adb shell /data/misc/hello


Reading the keypad

Getting input from the shell can be done simply by reading from stdin. It might be more interesting, however, to get input from the device's keypad, and this requires some extra steps. The keypad is located at/dev/input/event0, so what you want to do is read from that device. Below I show one way of doing this:

andkeys.h
#ifndef ANDKEYS_H #define ANDKEYS_H  #include <stdlib.h> #include <stdio.h> #include <errno.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h>  typedef struct {         struct timeval time;         unsigned short type;         unsigned short code;         unsigned int value; } input_event;   // Opens the Android keypad device for reading void andkeys_open();   // Polls the Android keypad device for new data. Returns 0 if there was no new data. // Otherwise non-zero is returned and the input_event struct pointed to by 'ie' is // filled with the latest data. int andkeys_get(input_event *ie);