一周tweets更新 [2011-09-26]

GD Star Rating
loading...

Differences Among Greedy, Reluctant, and Possessive Quantifiers (for RexExp in Java)

GD Star Rating
loading...

There are subtle differences among greedy, reluctant, and possessive quantifiers.

Greedy quantifiers are considered “greedy” because they force the matcher to read in, or eat, the entire input string prior to attempting the first match. If the first match attempt (the entire input string) fails, the matcher backs off the input string by one character and tries again, repeating the process until a match is found or there are no more characters left to back off from. Depending on the quantifier used in the expression, the last thing it will try matching against is 1 or 0 characters.

The reluctant quantifiers, however, take the opposite approach: They start at the beginning of the input string, then reluctantly eat one character at a time looking for a match. The last thing they try is the entire input

Finally, the possessive quantifiers always eat the entire input string, trying once (and only once) for a match. Unlike the greedy quantifiers, possessive quantifiers never back off, even if doing so would allow the overall match to succeed.

To illustrate, consider the input string xfooxxxxxxfoo.

Enter your regex: .*foo // greedy quantifier
Enter input string to search: xfooxxxxxxfoo
I found the text “xfooxxxxxxfoo” starting at index 0 and ending at index 13.

Enter your regex: .*?foo // reluctant quantifier
Enter input string to search: xfooxxxxxxfoo
I found the text “xfoo” starting at index 0 and ending at index 4.
I found the text “xxxxxxfoo” starting at index 4 and ending at index 13.

Enter your regex: .*+foo // possessive quantifier
Enter input string to search: xfooxxxxxxfoo
No match found.

The first example uses the greedy quantifier .* to find “anything”, zero or more times, followed by the letters “f” “o” “o”. Because the quantifier is greedy, the .* portion of the expression first eats the entire input string. At this point, the overall expression cannot succeed, because the last three letters (“f” “o” “o”) have already been consumed. So the matcher slowly backs off one letter at a time until the rightmost occurrence of “foo” has been regurgitated, at which point the match succeeds and the search ends.

The second example, however, is reluctant, so it starts by first consuming “nothing”. Because “foo” doesn’t appear at the beginning of the string, it’s forced to swallow the first letter (an “x”), which triggers the first match at 0 and 4. Our test harness continues the process until the input string is exhausted. It finds another match at 4 and 13.

The third example fails to find a match because the quantifier is possessive. In this case, the entire input string is consumed by .*+, leaving nothing left over to satisfy the “foo” at the end of the expression. Use a possessive quantifier for situations where you want to seize all of something without ever backing off; it will outperform the equivalent greedy quantifier in cases where the match is not immediately found

一周tweets更新 [2011-09-12]

GD Star Rating
loading...
  • 一周tweets更新 [2011-09-05] http://t.co/PGxPjAb #tweets #
  • 李双江:儿子从小和我学开车 开起来有一种旋律(组图) // 这篇文章很应景啊,该算是硬文呢,还是软文呢? #
  • Learn #Vim Progressively http://t.co/mXzOTYt #技术生活 #
  • 开会开会,恐怖的印度英语再次袭来…… #
  • 昨夜一场秋雨,天俱凉。今天出门一阵秋高气爽,脑中却满是北航里的气息和影子。秋天真是回忆的季节 #
  • 朱镕基讲话实录:剥夺土地而不安置好农民很危险 http://t.co/iia6duq #
  • 阴雨连绵的假期,在家睡了一下午……睡醒,找另一对无所事事的打麻将去~ #

Learn Vim Progressively

GD Star Rating
loading...

原文在这里

 

Über leet use vim!

tl;dr: Want to learn vim (the best text editor known to human kind) the fastest way possible. I suggest you a way. Start by learning the minimal to survive, then integrate slowly all tricks.

Vim the Six Billion Dollar editor

Better, Stronger, Faster.

Learn vim and it will be your last text editor. There isn’t any better text editor I know. Hard to learn, but incredible to use.

I suggest you to learn it in 4 steps:

  1. Survive
  2. Feel comfortable
  3. Feel Better, Stronger, Faster
  4. Use vim superpowers

By the end of this journey, you’ll become a vim superstar.

But before we start, just a warning. Learning vim will be painful at first. It will take time. It will be a lot like playing a music instrument. Don’t expect to be more efficient with vim than with another editor in less than 3 days. In fact it will certainly take 2 weeks instead of 3 days.

1st Level – Survive

  1. Install vim
  2. Launch vim
  3. DO NOTHING! Read.

In a standard editor, typing on the keyboard is enough to write something and see it on the screen. Not this time. Vim is in Normal mode. Let’s get in Insert mode. Type on the letter i.

You should feel a bit better. You can type letters like in a standard notepad. To get back in Normal mode just tap the ESC key.

You know how to switch between Insert and Normal mode. And now, the list of command you can use in Normal mode to survive:

  • iInsert mode. Type ESC to return to Normal mode.
  • x → Delete the char under the cursor
  • :wq → Save and Quit (:w save, :q quit)
  • dd → Delete (and copy) current line
  • p → Paste

Recommended:

  • hjkl (highly recommended but not mandatory) → basic cursor move (←↓↑→). Hint: j look like a down arrow.
  • :help <command> → Show help about <command>, you can start using :help without anything else.

Only 5 commands. This is very few to start. Once these command start to become natural (may be after a complete day), you should go on level 2.

But before, just a little remark on Normal mode. In standard editors, to copy you have to use the Ctrl key (Ctrl-c generally). In fact, when you press Ctrl, it is a bit like if all your key change meaning. With vim in Normal mode, it is a bit like if your Ctrl key is always pushed down.

A last word about notations:

  • instead of writing Ctrl-λ, I’ll write <C-λ>.
  • command staring by : will must end by <enter>. For example, when I write :q it means :q<enter>.

2nd Level – Feel comfortable

You know the commands required for survival. It’s time to learn a few more commands. I suggest:

  1. Insert mode variations:
    • a → insert after the cursor
    • o → insert a new line after the current one
    • O → insert a new line before the current one
    • cw → replace from the cursor to the end the word
  2. Basic moves
    • 0 → go to first column
    • ^ → go to first non-blank character of the line
    • $ → go to the end of line
    • g_ → go to the last non-blank character of line
    • /pattern → search for pattern
  3. Copy/Paste
    • P → paste before, remember p is paste after current position.
    • yy → copy current line, easier but equivalent to ddP
  4. Undo/Redo
    • u → undo
    • <C-r> → redo
  5. Load/Save/Quit/Change File (Buffer)
    • :e <path/to/file> → open
    • :w → save
    • :saveas <path/to/file> → save to <path/to/file>
    • :x , ZZ or :wq → save and quit ( :x only save if necessary)
    • :q! → quit without saving, also :qa! to even if there are some modified hidden buffers.
    • :bn (resp. :bp) → show next (resp. previous) file (buffer)

Take the time to integrate all of these command. Once done, you should be able to do every thing you are able to do on other editors. But until now, it is a bit awkward. But follow me to the next level and you’ll see why.

3rd Level – Better. Stronger. Faster.

Congratulation reaching this far! We can start the interesting stuff. At level 3, we’ll only talk about command which are compatible with the old vi.

Better

Let’s look at how vim could help you to repeat yourself:

  1. . → (dot) will repeat the last command,
  2. N<command> → will do the command N times.

Some examples, open a file and type:

  • 2dd → will delete 2 lines
  • 3p → will paste the text 3 times
  • 100idesu [ESC] → will write “desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu “
  • . → Just after the last command will write again the 100 “desu “.
  • 3. → Will write 3 “desu” (and not 300, how clever).

Stronger

Knowing how to move efficiently with vim is very important. Don’t skip this section.

  1. NG → Go to line N
  2. gg → shortcut for 1G, go to the start of the file
  3. G → Go to last line
  4. Word moves:
    1. w → go to the start of the following word,
    2. e → go to the end of this word.

    By default, word are composed of letter and the underscore character. Let’s call a WORD a group of letter separated by blank characters. If you want to consider WORDS, then just use uppercases:

    1. W → go to the start of the following WORD,
    2. E → go to the end of this WORD.

    Word moves example

Now let’s talk about very efficient moves:

  • % : Go to corresponding (, {, [.
  • * (resp. #) : go to next (resp. previous) occurrence of the word under the cursor

Believe me, the last three commands are gold.

Faster

Remember about the importance of vi moves? Here is the reason. Most commands can be used using the following general format:

<start position><command><end position>

For example : 0y$ means

  • 0 → go to the beginning of this line
  • y → yank from here
  • $ → up to the end of this line

We also can do things like ye, yank from here to the end of the word. But also y2/foo yank up to the second occurrence of “foo”.

But what was true for y (yank), is also true for d (delete), v (visual select), gU (uppercase), gu (lowercase), etc…

4th Level – Vim Superpowers

With all preceding commands you should be comfortable to use vim. But now, here are the killer features. Some of these features were the reason I started to use vim.

Move on current line: 0 ^ $ f F t T , ;

  • 0 → go to column 0
  • ^ → go to first character on the line
  • $ → go to the last character on the line
  • fa → go to next occurrence of the letter a on the line. , (resp. ;) will seek for the next (resp. previous) occurrence.
  • t, → go just before the character ,.
  • 3fa → search the 3rd occurrence of a on this line.
  • F and T → like f and t but backward. Line moves

A useful tip is: dt" → remove everything until the ".

Zone selection <action>a<object> or <action>i<object>

These command can only be used after an operator of in visual mode. But they are very powerful. Their main pattern is:

<action>a<object> and <action>i<object>

Where action can be any action, for example, d (delete), y (yank), v (select in visual mode). And object can be: w a word, W a WORD (extended word), s a sentence, p a paragraph. But also, natural character such as ", ', ), }, ].

Suppose the cursor is on the first o of (map (+) ("foo")).

  • vi" → will select foo.
  • va" → will select "foo".
  • vi) → will select "foo".
  • va) → will select ("foo").
  • v2i) → will select map (+) ("foo")
  • v2a) → will select (map (+) ("foo"))

Text objects selection

Select rectangular blocks: <C-v>.

Rectangular blocks are very useful to comment many lines of code. Typically: 0<C-v><C-d>I-- [ESC]

  • ^ → go to start of the line
  • <C-v> → Start block selection
  • <C-d> → move down (could also be jjj or %, etc…)
  • I-- [ESC] → write -- to comment each line

Rectangular blocks

Not on windows you might have to use <C-q> instead of <C-v> if your clipboard is not empty.

Completion: <C-n> and <C-p>.

In Insert mode, just type the start of a word, then type <C-p>, magic… Completion

Macros : qa do something q, @a, @@

qa record your actions in the register a. Then @a will replay the macro saved into the register a as if you typed it. @@ is a shortcut to replay the last executed macro.

Example

On a line containing only the number 1, type this:

  • qaYp<C-a>q
    • qa start recording.
    • Yp duplicate this line.
    • <C-a> increment the number.
    • q stop recording.
  • @a → write 2 under the 1
  • @@ → write 3 under the 2
  • Now do 100@@ will create a list of increasing numbers until 103.

Macros

Visual selection: v,V,<C-v>

We saw an example with <C-v>. There is also v and V. Once the selection made, you can:

  • J → join all lines together.
  • < (resp. >) → indent to the left (resp. to the right).
  • = → auto indent

Autoindent

Add something at the end of all visually selected lines:

  • <C-v>
  • go to desired line (jjj or <C-d> or /pattern or % etc…)
  • $ go to the end of line
  • A, write text, ESC.

Append to many lines

Splits: :split and vsplit.

Here are the main commands, but you should look at :help split.

  • :split → create a split (:vsplit create a vertical split)
  • <C-w><dir> : where dir is any of hjkl or ←↓↑→ to change split.
  • <C-w>_ (resp. <C-w>|) : maximise size of split (resp. vertical split)
  • <C-w>+ (resp. <C-w>-) : Grow (resp. shrink) split

Split

Conclusion

That was 90% of commands I use every day. I suggest you to learn no more than one or two new command per day. After two to three weeks you’ll start to feel the power of vim in your hands.

Learning Vim is more a matter of training than plain memorization. Fortunately vim comes with some very good tools and an excellent documentation. Run vimtutor until you are familiar with most basic commands. Also, you should read carefully this page: :help usr_02.txt.

Then, you will learn about !, folds, registers, the plugins and many other features. Learn vim like you’d learn piano and all should be fine.

一周tweets更新 [2011-09-05]

GD Star Rating
loading...
  • 刘翔加油啊! #
  • 罗伯斯最后两栏的小动作有点…… #
  • 一周tweets更新 [2011-08-29] http://t.co/W3C0rd6 #tweets #
  • 乔布斯的10个经营理念成就了今天的苹果 [zz] http://t.co/nfLzNBV #互联网生活 #apple #jobs #
  • 史蒂夫•乔布斯传(Steve Jobs:A Biography)(乔布斯唯一正式授权传记中文版预售中,2011年11月21日全球同步发售) // 瞧不死传中文版已开始预售,但不知道是谁译的 #
  • 《黑客与画家》是本神书 #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/ZHu2y7O #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/YVAbwE6 #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/aRJi93K #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/67ihzAl #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/byeB19W #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/c5uwcK8 #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/TkG808G #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/P0h5sbB #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/Uam4o42 #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/eRj146E #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/cM0aARC #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/JpDaiRN #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/GnIY45C #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/XWNsHzY #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/uPq2BHS #
  • 我刚在 @GooglePlaces 上给福代越南餐厅(成府路店)评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/EvsSNJG #
  • 我刚在 @GooglePlaces 上给福代越式餐厅评了 1 颗星:“踩:今天去吃了团购,春卷拼盘是提前做好直接端上来的,肉不新鲜,有味,现在胃里还翻江倒海的。玉米鱼钟看不钟吃,全是刺。不会再去了。”http://t.co/gn6voS0 #
  • 刑诉法修订被指开倒车 或致“秘密拘捕”泛滥 // “涉嫌危害国家安全犯罪、恐怖活动犯罪”以及“通知可能有碍侦查”的几种情形,均可以成为对当事人实施监视居住、刑事拘留、逮捕等强制措施后,不在24小时内通知家属的理由 #
  • iCloud Web Beta 上線  #
  • Desktoply | Jay Xu // 这个应用有点意思~ #
  • Offline Google Mail // Gears的替代品终于出炉 #
  • 关于『#C++11 中值得关注的几大变化(详解)』 http://t.co/EXCm19y #辩 #java #

关于『C++11 中值得关注的几大变化(详解)』

GD Star Rating
loading...

博客更新得越来越不频繁,一方面是忙+懒,另一方面围脖带来的写作习惯的变化,越来越多的想法使用140字以内的只字片语发布在围脖上。而WP上还 没有像twitter tools一样的围脖反向更新工具,所有的围脖相关工具不是登录绑定就是发博同步至围脖。可见国内互联网产品业余开发人员的同质与乏善可陈,难道要我自己 用PHP去写一个?

最近发现在team里的一些讨论邮件还是有点意思的,我发表了一些观点,也进行了一些讨论。这些邮件算是一个观点展示、碰撞的积累。今天开始转贴一些,当然前提是非IBM confidential的。以下是第一篇

 

C++11 中值得关注的几大变化(详解)

原文出自酷壳

 

Me:Like Java & C#, C++ started to introduce many language sugars into the new version 11 (to make the language up-to-date), esp. for Lambda grammar, which is deferred to Java 8. Another highlight is the standard thread lib, wonder if it supports multi-core architecture well.

Jacob:We took so long time to wait this new standard(1998–>2003–>2011); And we still need some times to wait the compiler to support them. It is a pity that we did not find new “Regular Expression” at C++11; I think it is a very useful specific. Maybe Boost still can be used for it. “wonder if it supports multi-core architecture well”,I am also wondering. Actually, There are some product can support it well: OpenMP(Intel), VS2010. I guess parallel computing especially GPU is a trend in desktop usage.

Me:Agree that more and more programmers have already moved their compute-intensive (C/C++) code to GPU – which provides much more throughput. Hope Java could provide such feature in the future release.

一周tweets更新 [2011-08-29]

GD Star Rating
loading...
  • 一周tweets更新 [2011-08-22] http://t.co/CCVT22f #tweets #
  • @36氪 发布创业公司融资平台“36Tree”,帮助创业公司更快、更好的找到投资 #
  • CEO们应该关注细节,连一个色调都不能放过 // CEO们应该关注细节,连一个色调的误差都不能放过,即便是在周日 #
  • 早期创业公司的十节营销课 #
  • 最近猎头如雨后春笋发来邮件、短信,刚才直接打到办公室来了…… #
  • 看完《桐山毛榉案》,又认识了位美女——Natasha Richardson,上网一搜才知道09年已离我们远去,扼腕 #
  • 海上传奇 // 老上海的故事 #

乔布斯的10个经营理念成就了今天的苹果 [zz]

GD Star Rating
loading...

转自:36氪

 

14年前,苹果还处在破产的边缘,如今,它已成为全球最令人艳羡的科技公司。乔布斯在苹果起死回生再到腾飞的过程中起到了不可替代的作用。然而人们更为关心的是,乔布斯究竟是如何做到这些的呢?

1. 与竞争对手合作

Partner with the enemy

你能想象百事可乐与可口可乐合作的景象吗,当然不能。然而,苹果与微软这两个老冤家在1997年却建立了合作关系,这委实令人诧异。

在苹果经历了12年的经营亏损后,乔布斯需要很快为苹果注入新的资金。因此,他开始向比尔.盖茨寻求合作,盖茨最终向苹果投资了1.5亿美元。

2. 开发亮丽性感的产品

Put sex in products

作为一名伟大的推销员,乔布斯深知产品外观美感的重要性,他也意识到苹果产品看起来已经过时。乔布斯在1998年苹果的一次会议中表示,“你一直公司现在的问题是什么吗?公司的产品外观非常糟糕,没有一点性感美学元素在里面。”如今,苹果开发的产品个个性感十足。

3.变革原始的商业规划,树立新的发展蓝图

Change the original vision and business plan

苹果最初只是一家生产电脑的公司,乔布斯知道如果公司要想取得真正的成功,就必须改变这种单一性。后来,苹果MP3,iPhone,iPad等相继 问世,取得了巨大成功。乔布斯也在2007年将公司的名字从Apple Computer Inc.改为Apple Inc.,这也象征了公司的更新更广阔的发展蓝图。

4. 开创新的解决方案来逾越看似不可逾越的障碍

Create solutions to impossible roadblocks

过去很长一段时间,很多销售商都没有足够重视苹果产品。乔布斯是如果解决这个问题的呢?他开创了苹果商店。现在苹果商店已经遍布全球,成为该领域的佼佼者。

5. 主动告诉消费者他们需要什么,不能消极地等待消费者的信息回馈

Tell customers what they want instead of asking for feedback

乔布斯一向采用的方式是,在消费者知道自己需要什么之前告诉他们需要什么。苹果有能力使用户购买他们曾经认为不需要的产品。

6. 连点成面

Connect dots

苹果推出的产品不仅极具创新性,而且不同的产品之间还能够有机融合。iPod和iTune是完美组合,iPad和iPhone在应用店中也是彼此呼应。乔布斯曾经说过,“创新就是将不同的事物有机连接起来,连点成面,形成合力。”

7. 员工雇佣标准不能千篇一律

Don't hire cookie cutter employees

不是只有常春藤的毕业生才能经营公司。乔布斯曾经就说,“苹果曾经开发的Macintosh计算机之所以能取得巨大的成功是因为计算机开发人员的多样性,有音乐家,诗人,也有艺术家和历史学家,他们最终成为了世界上最出色的电脑专家。”

8. 鼓励别人以不同的方式思考

Encourage others to think differently

苹果在20世纪90年代末发起过一个以“Think Different”为主题的广告设计大赛,并取得了巨大成功,它激起了人们的创新发明意识,也正是这些造就了今天的苹果。

9. 使产品简单化

Don't elaborate

简单的用户体验才是王道。苹果的设计师Jonathan Ives曾说过,“无论我们开发什么产品,我们都会尽最大努力使产品变得简单易用,因为人们天生青睐简单易用的产品。”

10. 销售的是梦想,而不仅仅是产品

Sell dreams, not products

乔布斯总能给人这样一种感觉,用户购买的不是苹果产品本身,而是产品的象征意义。要记住,人们最关心的还在他们自己,所以要让产品与用户产品连接,这样产品对用户就有不一样的意义。

via BI

一周tweets更新 [2011-08-22]

GD Star Rating
loading...
  • Lotus Symphony // IBM's online file sharing app
    http://t.co/3jBMAln #
  • 国税总局:“年终奖计税方法调整”公告系伪造 // 潜台词就是,还是会出现多1块多缴30000的情况呗。想想也是,从国税兜里拿回30000,跟抢劫有什么区别?你们这些屁民不要命了?!
    http://t.co/ky7oOIz #
  • 重听Lou Bega的《I Got Style》。第一句,You are from a royal family tree, and I don't even have a family。高中听时开心地笑笑,现在听着心酸地笑笑。再过10年重听,不知会做何表情 #
  • #Linode 节点速度实测 http://t.co/GbJlJeZ #互联网生活 #
  • 一周tweets更新 [2011-08-15] http://t.co/CtLbFHg #tweets #
  • Google + Motorola | 拈花微笑
    http://t.co/9EsmZAP #
  • CCAV报道李 克 强视察香港,香港30%的人口住公屋,报道中老李亲切看望了一个住公屋的工程师,说中央和香港政府将是你们的坚强后盾,生活会越来越美好。看完之后的感觉是,韦迪探望巴西国家队,亲切地告诉队员,你们踢得不错啊,要再接再厉啊,我们其实差得不是太远…… #
  • CCAV有关京津高铁降速的报道,充满了“才慢了3分钟”,“便宜了5块钱”,“赠送的矿泉水没有取消”等狗屁话。完全就是一篇红果果的狗腿子样板报道。尼玛慢一点没关系干嘛花纳税人的钱修高铁?干嘛把速度拉这么高?你不都世界领先了么,开这么慢不屈才么? #
  • 快看CCAV,焦点访谈曝光“脊梁”奖。奇迹啊,内讧了么,要扒倪奶奶的里子么 #
  • ccav 6,唐伯虎点秋香 #
  • #Google + #Motorola http://t.co/FRLV6Sl #互联网生活 #android #
  • About the OS X Lion v10.7.1 Update // Lion更新至10.7.1
    http://t.co/OIc4WjF #
  • 北航西门终于拆得快差不多了 #

Google + Motorola

GD Star Rating
loading...

昨晚劲爆消息,Google斥资125亿美元以40美元一股的价格收购摩托罗拉移动事业部全部股权。今天一早,各大网站纷纷撰文,对此次收购进行剖析、猜测、展望,现收集如下:

谷奥:Google 收购摩托罗拉移动的赢家和输家

Gigaom:With Motorola, Google TV just got a huge shot in the arm

月光博客:谷歌收购摩托罗拉移动

瘾科技:Google 宣布将收购 Motorola Mobility,后者仍然会继续独立运作

小姜杂谈:Google 买下 Moto,葫芦里到底卖的是什么药?

36氪:Google 收购摩托罗拉,诺基亚、三星、HTC 和其他厂家的回应

收购背后:摩托罗拉移动差点落入微软之手

对牛乱弹琴:有板有眼:Google如何利用Moto的专利来帮助Android开发商?

无觅相关文章插件,快速提升流量