交互设计–听起来很美

概念分析1

简单地说,交互设计是人工制品、环境和系统的行为,以及传达这种行为的外观元素的设计和定义。交互设计首先规划和描述事物的行为的方式,然后描述传达这种行为的最有效形式。   交互设计是一门特别关注以下内容的学科:

  • 定义与产品的行为和使用密切相关的产品形式
  • 预测产品的使用如何影响产品与用户的关系,以及用户对产品的理解
  • 探索产品、人和上下文(物质、文化和历史)之间的对话(Riemann和Forlizzi)

再来看《Interaction Design——Beyond Human-Computer Interaction》一书中作者对交互设计的定义:

交互设计指的是:设计支持人们日常工作与生活的交互式产品。具体地说,交互设计就是关于创建新的用户体验的问题,其目的是增强和扩充人们工作、通信及交互的方式。Winnogard(1997)把交互设计描述为“人类交流和交互空间的设计”

概念分析2

在使用网站,软件,消费产品,各种服务的时候(实际上是在同它们交互),使用过程中的感觉就是一种交互体验。随着网络和新技术的发展,各种新产品和交互方式越来越多,人们也越来越重视对交互的体验。
因 此交互设计(Interaction Design)作为一门关注交互体验的新学科在二十世纪八十年代产生了,它由IDEO的一位创始人比尔•莫格里奇在1984年一次设计会议上提出,他一开 始给它命名为“软面(Soft Face)”,由于这个名字容易让人想起和当时流行的玩具“椰菜娃娃(Cabbage Patch doll)”,他后来把它更名为“Interaction Design”――交互设计。

从用户角度来说,交互设计是一种如何让产品易用,有效而让人愉悦的技术,它致力于了解目标用户和他们的期望,了解用户在同产品交互时彼此的行为,了 解“人”本身的心理和行为特点,同时,还包括了解各种有效的交互方式,并对它们进行增强和扩充。交互设计还涉及到多个学科,以及和多领域多背景人员的沟 通。
通过对产品的界面和行为进行交互设计,让产品和它的使用者之间建立一种有机关系,从而可以有效达到使用者的目标,这就是交互设计的目的。
所谓交互设计,是指设计师对产品与它的使用者之间的互动机制进行分析、预测、定义、规划、描述和探索的过程,简单说,即设计和定义使用者如何使用一产品达到其目标,完成某一任务的过程。

概念分析3

一个交互必须有三个组成部分:一是使用者,二是服务提供(目前大多是内容或者产品功能)三是两者连接的界面.
设计的交互性也就体现在这界面上,所以交互的设计就是设计使用者如何使用内容和功能的方式形式设计.(http://www.online-edu.org/index.php?action/viewspace/itemid/9472

什么是交互设计(Interaction Design)?注重得用户使用,让产品易用,有效而让人愉悦的技术,它致力于了解目标用户和他们的期望,了解用户在同产品交互时彼此的行为,了解“人” 本身的心理和行为特点,同时,还包括了解各种有效的交互方式,并对它们进行增强和扩充。交互设计是一种如何交互设计还涉及到多个学科,以及和多领域多背景 人员的沟通。

相关解释网站

交互设计是什么: http://www.dedream.com/research/archives/2004/09/aeaeeeaec.html
交互设计是什么,不是什么: http://bicespring.blogbus.com/logs/3560156.html
Alan Copper 畅谈交互设计:http://wyle.blogdriver.com/wyle/128790.html
Ivrea的定义:http://pemiamos.blogbus.com/logs/6904050.html
交互设计原则:http://www.shenmeshi.com/Computer/Computer_20070625163124_2.html
为什么要进行交互设计:http://blog.sina.com.cn/s/blog_4bc6be1101000796.html
交互设计7日通:http://www.ucdcn.com/?24/action_viewspace_itemid_265.html

相关图片:

敏捷团队当如群鸟飞

People often try to solve problems by introducing rules in an organization, in the form of “When situation X occurs again, you must do Y.” I admit that I am sometimes guilty of such behavior myself, though I am convinced that it is not the best approach. It is better to leave rule selection to individual team members, and instead focus on imposing the proper constraints. Agile software development should be about setting constraints, not rules.

It has been discovered that the flocking of birds can easily be modeled on a computer. This behavior, which is also apparent in many other kinds of animals, emerges through the application of a few very simple constraints:

  1. Don’t leave the group;
  2. Don’t bump into each other;
  3. Fly in the same direction.

Specific implementations of these constraints are often used in the movie industry to create computer animated birds, bats, fish, penguins, you name it. (An example of such a model of flocking behavior is available here.)

Though we usually don’t talk about flocking when it concerns humans, the differences between a human team and a flock of birds aren’t that big. For a teams of software developers, flocking might roughly translate to these constraints:

  1. Don’t single yourself out;
  2. Don’t fight with team members;
  3. Agree on the team’s direction.

Flocking behavior is often mentioned as an example of how a system can show complex behavior with only a few simple rules. However, I think the termrules here is not correct, or at least imprecise.

Complex Systems, Agents and Rules
Rules in complex systems are the building blocks of stimulus-response mechanisms. An agent receives some input (from other agents), processes it using a number of his own internal rules, and then responds by emitting some output (to other agents). The rules that an agent uses are not much more than a prioritized list of simple If-Then-Else constructs.

Now, I don’t know much about modeling computer generated animals, but I’m sure that the three constraints listed above are insufficient in getting the job done. A lot more actual code is needed to make sure that birds, bats, fish and penguins show behavior that conforms to these constraints. The actual rules, hardwired in tiny animal brains, or written in some programming language, might be something like this:

  1. Calculate the average position of the birds that I can see;
  2. Calculate the average direction of the birds that I can see;
  3. If my distance from the average position > constant A, then adjust my direction towards the average by X degrees;
  4. If the distance between me and some other bird < constant B, then move away from it by Y degrees;
  5. If my direction deviates more than C degrees from the average direction, then adjust my direction by Z degrees towards the average;
  6. Etc…
  7. Repeat until we’ve landed.

Rules like this are a better reflection of what each individual in the group actually does. The result is that each individual won’t go astray, avoids collisions, and keeps up with the group. Which is exactly what evolution and natural selection required them to do, or they wouldn’t survive. But the actual rule selection process, carried out by each individual, is the result of trial-and-error by genetic programming and learning-by-example.

It’s Not About Rules, It’s About Constraints
The mistake people often make is that they directly try to “program” team members by giving them rules to follow. “IF you receive this type of document THEN you must perform that activity,” and “IF the customer wants some new requirement THEN you must start this-or-that procedure.” But the power of complex systems is that agents can manage their own rule selection process. People must restrict themselves to setting constraints, and then allow team members to solve their own problems.

Agile software development is the natural approach to manage software projects. It sets constraints like “collaborate with the customer“, “allow frequent changes” and “only deliver stuff that works“. And then it’s up to the team to select and implement rules like “IF the customer cannot travel THEN we do our demo using Skype,” or “IF there’s change request THEN we create a new branch in source control,” and “IF someone breaks the build THEN he must wear the funny rabbit ears.

This also means that agile software development is not in the first place about pair programmingTDDiterations, and the specific implementations of other rules and practices. (Note: the Agile Manifesto doesn’t mention any of these!) Sure, those practices are interesting and important. But as soon as you’re imposing them as fixed rules, you’re not allowing the agents in your complex system to carry out their own rule selection process.

And then they’ve lost the ability to be really agile.

http://www.noop.nl/2008/12/real-agile-teams-can-flock.html

Jurgen Appelo的部分观点如下:

鸟群行为的基本特点:

  1. 不许离群
  2. 不许相撞
  3. 往一个方向飞

映射到研发段对上:

  1. 不要把自己孤立
  2. 不要跟其他人打架
  3. 与团队的方向保持一致

有兴趣大家还是读一下原文。

我看TMT

酷部落酋长的FriendFeed邀请加入TMT探讨和践行这个房间,让我有了想聊聊TMT的兴致。

TMT这个概念好像是易观中国提出来的。TMT(Technology,Media,Telecom)也叫数字新媒体,是未来电信、媒体\科技(互联网),包括信息技术这样一个融合趋势所产生的大的产业。分开来说TMT本身就是三个完全不同的产业,信息技术,媒体,电信。在几年前这3个产业是完全独立并不相融合,3个企业老总一碰头:甲说:我是电信的,通信设备制造。乙说:偶是搞IT的,软件开发。丙说:俺们是搞传媒的,报纸。就连当初我在电信企业干活的时候,死都不承认自己是IT青年,当时IT名声也不是很好听说搞软件的还不如去筛沙(出自清华夜话)。业界也是这么划分的。简单,上51JOB上招聘个员工,行业分类就分的很清楚。

可能是受杂交水稻产量高的启发,这年头什么都流行一个融合。偶搞电信的时候,一天到晚的说FMC。在后来到了3GPP和3GPP2,在IMS的规范中不但把固定和移动进行了融合还把互联网和IT融合了进来。好像没有提到Media。不记得了。IMS的TS太多,还没来得及看完就转行了。然而TMT在电信行业,国内一直停留在概念上。没有太多实质性的发展,主要是电信这个行业太有钱,赚钱太过于容易,在创新方面也就缺乏了动力。真正把TMT开始融合的估计也主要体现在互联网行业了。没办法谁让咱穷呢,不想办法就饿死了。

记得keso把玩互联网的公司做了一些划分,我对Keso原文的理解是这样的。第一类:完全指望互联网吃饭的,除了通过互联网的产品和服务就挣不到钱的了,第二类:通过互联网改善伙食的,有没有互联网也就是吃肉和肯骨头的区别。玩TMT 的也主要是第一类互联网公司。这些互联网公司从门户开始就开始把技术和媒体融合了进来,产生了新媒体的概念。具有代表性的公司也就是现在的几家门户网站和百度(虽然百度最近的竞价排名很是出糗)。到WEB2.0的出现,TMT完成了从精英到草根的过度。被越来越多的人把玩起来。

WordPress SEO 终极教程

最近开博,沉迷于WordPress的SEO。网上有很多插件。All in one seo等等。可是插件过于耗费资源,况且我有点小小的完美主义。所以就准备自己修改代码来优化。

虽然偶也是搞技术出身,但是不写代码已经很多年。写代码进行WordPress SEO优化谈何容易,幸亏偶动手能力不错,再加上Google和网络上兄弟们的帮忙,耗费了一周的工作闲暇时候,经过上百次的修改和尝试,重于完成了这个艰巨的工作,以下代码Copy过去就可以用。不需要任何修改也不需要任何插件。

生成需要的变量

<?php
if (is_single()) {
$trimmed_title = wp_title(”, false);
$trimmed_title = trim($trimmed_title);
$title = $trimmed_title;
$keywords = “”;
$tags = wp_get_post_tags($post->ID);
foreach ($tags as $tag ) {
$keywords = $keywords . $tag->name . “|”;
}
$title = $title . “|” . $keywords;
}
?>

对于home category archive 使用 网站名|描述的方式来进行优化

<?php if ( is_home()) { ?><title><?php bloginfo (’description’); ?><?php echo (’|'); ?><?php bloginfo(’name’); ?></title><meta name=”description” content=”<?php bloginfo(’description’); ?>” /><?php } ?>
<?php if ( is_category()) { ?><title><?php single_cat_title(”); ?><?php echo (’|'); ?><?php bloginfo(’name’); ?></title><meta name=”description” content=”<?php echo wp_title(”,”); ?>” /><?php } ?>
<?php if ( is_archive()) { ?><title><?php bloginfo(’name’); ?><?php echo (’|'); ?><?php wp_title(”); ?><?php echo (’Archives’); ?></title>< content=”<?php echo wp_title(”,”); ?>” /><?php } ?>

对于Single页面和Page页面,使用 文章标题|Tags|网站名的方式进行优化 比如:IPD研发管理|集成产品开发|IPD|Abuer‘s blog

使用文章的摘要来填充Meta description。

<?php if ( is_single()) { ?><title><?php echo $title; ?><?php bloginfo(’name’); ?></title><meta name=”description” content=”<?php the_excerpt_rss(); ?>” /><?php } ?>
<?php if ( is_page()) { ?><title><?php bloginfo(’name’); ?><?php echo (’|'); ?><?php wp_title(”); ?></title><meta name=”description” content=”<?php the_excerpt_rss(); ?>” /><?php } ?>

禁止google 爬虫 抓取 single page home以外的网页,这是因为home,single, page 的内容和archive category里面的一样,这样会影响页面的PR。
<?php if (is_single() OR is_page() OR is_home()) : ?><meta name=”robots” content=”index,follow,noarchive”/><?php else : ?><meta name=”robots” content=”noindex,follow,noarchive” /><?php endif; ?>
<meta name=”googlebot” content=”noarchive” />
</head>

至于Keyword 我建议你用simple tag吧,主要原因是对Tag的管理很方便

就这么多,绝对比 ALL in One SEO 用的爽。

IPD(集成产品开发)项目管理和绩效管理完全手册

花了基本上一个月的时间整理出来的全套的IPD项目管理和绩效管理流程。在Abuer’s blog上形成了两篇Blog

IPD项目管理和绩效管理(一)

IPD项目管理和绩效管理(二)

本来准备继续以Blog的形式贴出来,但是Blog的格式一直不是很理想,图片也看不清楚。所以把原始的Word文档贴了出来分享:《IPD(集成产品开发)项目管理和绩效管理完全手册》

IPD是华为IBM引入的集成产品开发的方面,是一套非常优秀的管理系统。国内的一些搞IPD咨询的咨询公司大部门都是从华为出来成立的咨询公司。IPD虽好但并不一定适合每一个企业。

希望大家能够根据自己的企业情况进行优化。