如何设计一个好的Windows 8应用

虽然 Windows 8 刚上市只有半个月多一点,但 Windows 8 之父,同时也是 Windows 和 Windows Live 部门的总裁、微软下一代 CEO 热门人选的史蒂芬・辛诺夫斯基却已经离开了微软, Windows 8 的设计语言名称也从最初的 Metro 先是变为 Modern 接着变为 Windows 8 Style,最后变为目前微软中国官方所称的 Microsoft Design(本文依旧延用旧名称 Metro 表示 Microsoft Design Language/Style),但 Windows 8 依旧在按照之前微软的规划一步步往前走着,Windows 应用商店的数量从最初的几百个应用迅速增长到了目前的接近 1.5 万,虽然到今天增长已经趋缓但依然强劲,预计十一月底能达到 2 万个。

一个门外汉的产品设计漫谈

本文纯属门外汉YY的结晶,如有低级问题,敬请行家里手批评指正;如果文中煞有介事得出的结论与设计学科的经典理论不谋而合,则不胜荣幸。本文目的是闲侃软件产品尤其是互联网产品的设计,多处以传统产品甚至不登大雅之堂的东东来举例,这顺带也在证明设计无处不在,以及软件设计与传统设计在理念和方法上融会贯通。

高效代码审查的十个经验

代码审查(Code Review)是软件开发中常用的手段,和QA测试相比,它更容易发现和架构以及时序相关等较难发现的问题,还可以帮助团队成员提高编程技能,统一编程风格等。

设计思维与出稿方法

笔者初入交互设计行业,在工作的各种锻炼中发现设计的 sense 是初级设计师最需要提高的方面。从前只是在书本或文章里接受理论教育,而在实操时才正在体会到交互设计师的职责与处境。在这里想跟各位分享下自己的想法,抛砖引玉求大神指点。

关于产品的若干思考

本文将要论述的话题是围绕着如今繁多的互联网产品展开的,笔者将会尽可能的做以精要的说明,从逐点优化的产品优势开始说起,最终聊到卓越产品乃至极致产品所需要具备的要素。

为什么要少用Iframe

iframes 提供了一个简单的方式把一个网站的内容嵌入到另一个网站中。但我们需要慎重的使用iframe。iframe的创建比其它包括scripts和css的 DOM 元素的创建慢了 1-2 个数量级。

SPDY 是什么?如何部署 SPDY?

SPDY 是 Google 开发的基于传输控制协议 (TCP) 的应用层协议 ,开发组正在推动 SPDY 成为正式标准(现为互联网草案)。SPDY 协议旨在通过压缩、多路复用和优先级来缩短网页的加载时间和提高安全性。(SPDY 是 Speedy 的昵音,意思是更快)

移动应用设计中应避免的十种错误

导读:本文是来自移动应用开发公司Sourcebits系列文章Mobile App Trends Series(译者:此网站要梯子)中的一篇,文章内容适合初涉此领域的读者,现翻译如下。

MGC:机器生成内容

本文试图探讨一个新的互联网领域,通过几个例子来说明其可能性,并定义了其关键因素。

互联网项目管理要点

互联网项目,会定一个计划发布日期,然而这个项目有个隐藏的实际合理发布日期。因为软件开发并不是一个直接添加资源就可以加快速度的过程,所以这个实际合理发布日期是在现实资源合理利用前提下一个客观存在的最可能早的完成时间。项目进展的过程,其实也是发现这个隐藏的合理发布日期的过程。

构建移动Web应用程序的技术堆栈

编写web应用程序时,有很多的技术决策。笔者最近回来编写现代Web应用程序,并希望总结一些曾经在开发周期过程中做了记录零散的想法。这篇文章是关于一套对笔者最近开发的项目有帮助的框架。笔者重温了一些最重要的框架类型,其中每一个可以展开来写一篇文章。这并不是一个广泛的现有产品相比,只是一个笔者最近使用的部分技术。

一个杀手移动用户界面的七个步骤

有些微妙,你有一个智能手机,而没有意识到你个人和它已经发展出一种特殊的关系。我们最近了解到,史蒂夫·乔布斯掌管的他自己组建的团队,创建了第一代iPhone——“人们会爱上的电话。”无论我们承认与否,我们与我们的iPhone,黑莓,Android或Windows Phone有着特殊的联系。

HTML5能取代Android和iOS应用程序吗?

大量新生移动设备的兴起,改变了互联网的未来。在技术的发展上,HTML5会取代App应用吗?或者说能够在多大程度上取代呢?在HTML5规范中,已经加入了相机、磁力罗盘、GPS信息的支持。很多新兴浏览器也已经开始支持这些新特性。能否用一个统一的HTML5来替代android和ios并行开发的双重成本呢?以下译自Michael Mahemoff的一篇文章,详细分析了HTML5能否取代Android和iOS应用程序。

程序员真的很懒

可能除了哲学家以外,笔者认为程序员是最懒的一群人。他们的职业看起来又似乎有一定的劳动强度。

开发一个iOS应用没有那么容易

导读:这是来自新加坡的 iOS 开发者 Kent Nguyen 发表在1月底的一篇博文。这篇吐槽文在 iOS 开发圈子里流传甚广,从原文150多个评论就可见一斑,现翻译如下。

国外程序员推荐:每个程序员都应读的书

编者按:2008年8月4日,StackOverflow 网友 Bert F 发帖提问:哪本最具影响力的书,是每个程序员都应该读的?

十六个快速启动项目样板

样板是可以重用在许多地方的一套代码文件,只需很少或根本不需修改。然而,这里我们正在谈论的boilerplates通常可以作为您项目的坚实基础。另外,这也是学习编码技巧和窍门的好地方。

使用HTML5的十大原因

你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因;它现在还没有被广泛的支持,在IE中不好使,或者你就是喜欢写比较严格的XHTML代码。HTML5是web开发世界的一次重大的改变,事实上不管你是否喜欢,它都是代表着未来趋势。其实HTML5并不难理解和使用。我们这里能列出许多原因为什么现在要开始使用HTML5。

如何在Google成为一名优秀的产品经理?

在 Google ,我(前 Google 工程师 Edward Ho)和我最优秀的产品经理一起工作过,我会根据自己的经历出一个列表。由于我不是项目经理,所以这些结论都是我在 Google 观察最优秀的产品经理后的结果。

移动开发中HTML5能否替代本地程序?

随着移动设备越来越先进,对HTML5的支持度越来越高,我们进军移动领域的时候,都会遇到一个问题,是选择HTML5和还是Native(用原生代码编写的本地程序)?HTML5的前景无疑是诱人的,一句“Write once, run anywhere”就可以秒杀一切。笔者最近两年来对HTML5与Native有较为深入的研究,觉得两者之间不能仅仅是二分法来选择,还要根据企业自身的情况、团队的构成、公司的战略以及产品的特点来综合选择。

技术演讲的技巧和经验

导读:如果你在编程大会上发表演讲,不论是开放式的BarCamp或是像OSCON那样精心组织的大型会议,你只有很短的一段时间将脑中的信息传达给听众,所以请仔细把握。

怎样打造高性能的移动用户体验

在人际关系中,良好的第一印象是非常重要的,人们愿意在彼此身上寻求信任与诚实,并期望在接下来的经历中重现和增强这些好感。同样的道理也体现在移动应用或互联网产品中。在打造良好的品牌信誉及其与终端用户之间持久信任关系的过程中,“设计”扮演着极其重要的角色。

为什么程序员的社会地位不高?

到目前为止,在过去60年中在世界排名前20的国家中,没有哪条街是以程序员或者计算机科学家的名字命名的。没有任何一个世界主要城市拥有程序员或者计算机科学家的雕像。没有程序员或者计算机科学家获得过总统奖章(Presidential Medal)或者国会金质奖章(Congressional Gold Medal)。没有国家级别的针对程序员或者计算机科学家的颁奖典礼。

HTML5未来发展的六大趋势

HTML 5从根本上改变了开发商开发Web应用的方式,从桌面浏览器到移动应用,这种语言和标准都正在影响并将继续影响着各种操作平台。

IT工作者是21世纪的矿工吗?

几星期前,笔者向大家介绍了我的朋友Shawn。他是个强壮的系统思想家,一名退伍军人,一个在我少年时就尊敬与钦佩的人。Shawn在网络时代中成长,开始是一名程序员,然后是普通的技术人员,再之后成为了IT经理,而现在我不太清楚。最后一次见他时,他是一家IT管理服务公司的客户代表,那种在传统IT部分很吃得开的人。

程序员的本质

很多人认为计算机变得如此智能,所以在不久的未来将不再需要程序员。另外一些人认为程序员是天才,他们在电脑前能不断地解决复杂的数学难题。甚至不少程序员对他们是做什么的都没有清晰的概念。

关于编程,大学没有传授的十件事

笔者依然记得当年完成学业时,深信自己已经准备好进入任何一家软件公司,并开始成为一个顶级的开发人员。显然,开始工作后没多久,笔者就意识到,还有很多事是我所不了解的。

一个软件工程师在北京的反省

我(软件工程师berlin)于2007年来到北京,在北京工作这些年,先后在NEC、风行、百度几家公司担任软件工程师的职务。NEC是一家具有百年历史的传统日企,在知春路的分公司叫日电电子,我们部门主要从事机顶盒、数字电视上嵌入式软件的研发。风行是一家成立于2005年的在线视频公司,主要做P2P视频点播的业务,而我主要从事P2P后台服务器的开发。百度是一家在纳斯达克上市的互联网公司,我主要在客户端部门的百度影音项目组从事P2P后台服务器开发。

Web是开源最大的成功

开源运动广受欢迎,并且在软件开发史上写下了浓重一笔。但是它影响最深远的地方在哪呢?有史以来,最成功的开源“项目”又是什么呢?

Web应用程序的开发步骤

如今已进入了web2.0高速发展的互联网时代,各种互联网的Web应用程序如雨后春笋般出现。那么作为一名Web开发人员,怎样去开发一款优秀的 Web应用程序呢?这个问题没有一个简单的答案,甚至那些教育机构都未必能清楚的知道。所以,像大多数在这个领域里的web开发人员一样,我们只是通过去 做, 去实验才学会了这些。没有人告诉我们如何去做,我们从给自己做点什么东西开始,学会如何开发web应用程序是在这个过程中的一个副产品。这是学习任何语言 的一个非常有效的方法。

写给新手程序员的一封信

首先,欢迎来到程序员的世界。在这个世界上,不是有很多人想创造软件并解决问题。你是一名hacker,属于那些愿意做一些有挑战性的事情的人。

老板会因为你拼命写代码而感谢你吗?

程序员热衷于长时间地工作。我想说的是,你就承认吧,你的工作/老板并没有让你这样做,你自己要这样做而已。当然,我知道,也许并非所有程序员都喜欢长时间的编程。不过肯定的是,随着加班成为业内的普遍现象,至少一半的程序员必须喜欢加班,不是吗?

PhoneGap移动开发框架

移动这一块目前是iPhone遥遥领先,程序员是爱买Android,一般老百姓还是偏向iPhone。现在做手机程序的统统是iPhone优先策略——做一个程序,先写iPhone版,第二才考虑Android。在iPhone的带动下,Mac OS 在美国市场占有率都上升到9%了,相当可怕,有人认为苹果将成为九十年代带的微软

开源史上的八大交易

前些日子,InfoWorld的Test Center揭晓了本年度开源相关5个大奖:最佳开源应用程序、最佳开源应用程序开发软件、最佳开源软件、最佳开源网络软件和最佳开源平台与中间件。本文将讲述开源史上8大交易。

成为高效程序员的搜索技巧

对于缺乏编程知识的人来说,完全有可能编写一个网页或小程序。如果在用Google搜索相关示例时幸运的话,可以搜到现成的代码。即使是经验丰富的程序员,通常也会为了节省时间和精力而在网上搜索解决方案。

编程给程序员带来哪些坏习惯

似乎任何职业都会给从业人员带来这样那样的习惯。国外某网站上有位朋友(应该也是程序员)想了解其他程序员在投身堆码事业后有什么样的坏习惯。结果一呼百应,很多程序员纷纷自爆自己的坏习惯和糗人糗事。编程无国界,相信国内堆码界的朋友,也会有同感。

明星软件工程师的十种特质

如今,每家公司都似乎成了科技公司。从软件创业公司到投机性投资公司、制药巨头和媒体巨头,它们都越来越多地加入到软件业务行列。

我所积累的20条编程经验

编者按:原文作者乔纳森·丹尼可(Jonathan Danylko)是一位自由职业的web架构师和程序员,编程经验已超过20年,涉足领域有电子商务、生物技术、房地产、医疗、保险和公用事业。正如乔纳森在文中所言,本文适合刚毕业的大学生和刚入门的程序员。如果你已是高级开发人员,或许你能在本文中看到自己的身影。

非技术人员无法理解的十个软件概念

如果你是在开发消费级软件(Consumer Software),那你必须清楚,在对计算机的理解上,你跟你的大多数客户处在完全不同的等级。当你开始对你的软件进行技术支持的时候,你可能会对这种差距的巨大感到非常震惊。这并非说明你的用户都是傻瓜,只是因为他们没有像你一样在电脑上花了无数时间。下面笔者总结了一些通过回答我的排座软件成千上万个技术问题得到的经验。

你有重构的勇气么?

项目发展到一定程度,因为功能的增多,就会变得越来越臃肿,原来的架构,就会不能满足现有的需求,因为我们有很多最初规划的时候没有想到的事情,比如说在网站或者软件规模小的时候,我们并没有考虑到国际化,但随着发展,我们走出亚洲奔向世界了,这个时候我们需要全世界的人来用我们的产品,这个时候就需要重构了。

互联网常见Open API文档资源

所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列API(Application Programming Interface,应用编程接口)开放出去,供第三方开发者使用,这种行为就叫做开放网站的API,所开放的API就被称作OpenAPI(开放API)。

获得来自搜索引擎的关键字

一般情况下通过关键词进入的页面都是用户想要的内容,对于某些搜索搜录与关键词相关度不是很高的页面(例如列表页),我们需要根据用户搜索的关键词对用户进行引导,从而提高用户的体验,也可以提高网页的PV。