2012年4月15日星期日

程序员真的很懒

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

  想想看,生物学家要亲自做所有的实验…给数百只小白鼠注射药物不可能自动完成。医生必须给病人进行身体检查;教授每年都要教授同样的课程;建筑师从各个角度制定方案,并手工地将方案一笔一划绘制出来。

  让我们再来看看更为辛苦的一些职业,情况更糟。营销人员要不断重复地进行同样的产品宣传;理发师日复一日地做着同样的事情;收营员每天都以相同的方式对货物进行结算…工厂工人…

  你面前呈现出了一幅图片,世界上有很多这样的人,他们每一小时,每一天,每一年,有些甚至一辈子都在重复做着几乎相同的事情。 

  来看看程序员

  每当我们想连续两次做同样的事情时—我们会尝试想一个方法来自动完成此过程。每当你写的代码是完成同样的一件事时,你会开始寻找一个库;每当你启动一个类似的项目时,你会去寻找一个模板。

  程序员的生活就是致力于消除重复的工作。

程序员真的很懒

  将琐碎地任务从我们的工作流程中剔除,这能让每个人生活得更轻松。这里有一个经典的笑话,说一个程序员情愿用一周的时间来写一个拷贝脚本,也不愿意将相同的文件复制粘贴两次,尽管复制粘贴可能只需要两分钟。

  该死的,我们要遵循DRY(Don’t Repeat Yourself不要重复自己)的原则。这个原则的基本内容是宁愿创建一个令人费解的抽象类,也不要将不相同但非常相似的代码写两次。

  这当然会导致很多问题。

  一般的软件项目充满了在顶层抽象类上构建的抽象类,你慢慢地会不清楚这些顶层抽象类将如何工作。甚至你完全不知道其代码在做什么。”Dizzying but invisible depth“,涉及到这个问题时,你真的应该读读这篇短文。

  另一方面,懒惰本身已经证明了历史上许多科学和工程发展所带来的背后推动力。用有轮子的拖车运东西比人工搬运要轻松;用船在水中前行比游泳来得容易;甚至如果你他妈的想炸掉一座城市,你投掷一颗原子弹也比投掷几千个小炸弹来的容易。

  所以这也许并不是说程序员是懒惰的。也许真正懒惰地是工程师们。只是恰巧在这样一个历史时刻,程序员作为工程师中最鲜明的一类,总是将世界向更好更光明的未来推动。而其它大多数领域已经在某种程度上稳定下来,或者需要更长的时间去适应新的工具。

  这里有一个重要的问题要问:程序员天生就懒吗?聪明懒惰的人容易被编程工作吸引吗,或者这是一种社会效应?懒惰源于最好的编程实践?还是最好的编程实践源于懒惰呢?

   

  一个比较

  最近,我有机会将一个建筑专业学生的一天与一个计算机科学专业的学生(就像我自己)的一天进行比较。

  大多数的建筑系学生的生活充满了这样或那样劳动密集的任务,这些任务是她工作的一部分。在任何时候,她都有可能要对一些模型进行拼凑粘合,在AutoCAD中从50个不同的角度对同一个物体进行绘图,或者在其它3D建模软件中重复相同的事情…然后将这些图片导入到Photoshop中成为真正好看的图。

  这种事会接连不断的发生。我估计她花费在课程作业上的时间比她实际上课的时间多一倍还不止(事实上她说花了5倍还多)。更糟糕的是,更好的完成这些任务并不能真正加快完成任务的进程,这只是意味着你多知道了几个键盘快捷键,意味着下次画图时你可能会少犯几个错误。

  熟练和精通完全无法优化关键的部分。

  相比之下,当我不上课时,我通常都在做自己的项目。因为我可以,因为我有充足的时间。当有作业布置下来时,一般情况下,我都可以在几个小时内完成…即使是最关键最重要的项目,老师也很少给我们超过一周的时间来集中完成作业,最多两周。

  精通编码并不意味着你打字更快(与建筑专业中等同的能力不同)。它意味着想出的解决方案更容易实现,利用工具来达到事倍功半的效果,诸如此类。最终,通过互联网进行测试评判,而实现过程是最无关紧要的部分,因为每个人都会。如果你有一天的时间,你可以实现某些东西。如果你有更多的时间,你可以使这些东西实现得更漂亮,模块化更高,可重用性更强,等等。

  基本上你能够快速地实现眼前的任务,你工作中大部分时间都在致力于使你的任务完成得更加漂亮。但这对于你手头的任务来说其实并不重要,你这样做是因为你可以。

  甚至于当程序员对自己的优化工作都产生厌倦时,他们会立马转而去创建工具来完成优化工作。

  事情就这样周而复始地重复着。

  接下来的家伙会使用他创建的新工具,使实现过程变得更快,接着优化它直到他最终厌倦,然后创建了一个新的更好的工具。

   所以…是辛苦的工作?

  但回到我最初的观点,辛苦工作对程序员的生产效率存在多大的影响?对于那些每天辛苦工作13小时以上,以取得竞争优势的创业者来说,这又意味着什么?这是值得考虑的一种优势吗?

   

  辛苦的工作可能对程序员工作效率产生负面的影响。它掩盖了背后所做的优化工作“哦,我可以手动把它完成,这将只需要10分钟时间”(其实这需要20分钟)。下一次,一个相似的任务到来时,你可能需要再次手动把它完成,长此以往…

  最重要的是,辛勤地工作会使你变得很笨。许多研究表明,持续疲劳的状态会使你做出错误的决策,甚至过多的决策也会让你会出错误的决定(称为决策疲劳)。事情上,这可能是我们喜欢创建抽象类并使用它们的原因—让其它人做大多数的决策,这样我就可以只专注于关键的部分。

  但是,我仍然没弄懂,到底是懒惰的人更喜欢编程,还是编程使他们变得懒惰… 

  原文:Swizec Teller    编译:伯乐在线 – 肖翔

2012年4月13日星期五

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

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

  让我们开门见山吧:做一个iPhone应用需要花多少钱?

  就是这个最常见的问题,我的很多朋友(大多是些西装革履的商务人士),还有我那些个对技术一知半解的客户们,他们都问过我这个的问题。通常,我会先给出一个大致的报价,这个报价并没有细致到需要签合同确认每一个功能点的地步。即便是这样,每当的我报价一出口,对方都毫无例外的给惊着了(当然不是因为便宜)。

  说实话,我没有狮子大开口。看看StackOverflow上这个著名的帖子吧,讨论的是开发Twitterific这样一款应用需要多少钱,后来讨论范围扩展到开发一个iOS应用的合理费用范围。虽然这个帖子是在2008年发布的,而帖子的最佳答案是由一名来自Twitteriffic的开发人员于2010年回答的,但是时至今日,帖子里面讨论的数字仍然是很靠谱的,而且我预计到2012年底依然有效。而我的报价和这个帖子里面的数字比起来,简直是小巫见大巫了。

  现在的趋势是,什么公司什么业务都想搞个iOS客户端,并且这种趋势在2012年看似依然火爆。所以我想起来写这篇博文,我想说一下开发一个iOS应用会碰到的各种细节问题和横生的变数,借此解释为什么iOS应用开发成本这么贵。如果你在考虑搞一个iOS应用,而你本身是搞业务而不是做技术的,如果你目前正在招标或者仅仅是想了解一下,那我这篇博会对你有帮助。当然,我说的东西并不局限于iOS应用开发,对Android、Windows Phone或者是Blackberry(如果RIM还能活的话)等移动应用平台基本上也是适用的。

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

  开发之前需要仔细考虑的

  别做拍脑瓜的决策,在开工之前你需要考虑的比你想象的要多。我通常会帮助或者指导客户把以下几个要素都过一遍:

  一:和客户谈他们的移动应用,最让我吃惊的是他们从来没有想过支撑一个iPhone应用运行,背后需要涉及到的方方面面。他们想象中的iPhone是独立存在于这个宇宙的,是如此的简单,以至于他们要我很快就给出一个项目预算报价,而不用讨论诸多细节。我问他们:“你们是否考虑过后台服务器的事情?你们的应用需要和后端服务器做数据通讯?” 什么,听不懂?好吧,我用地球人的语言再把这个问题讲 一遍:“你们的应用不是需要用户注册嘛,你们考虑过把用户的数据存放在哪里了吗?我们需要一个地方去保存这些以后会用到的数据。” 第一次碰到这样的客户时,哥简直就怒了。后来我发现这不是客户的错:我是搞编程的,CS架构对我来说就像吃饭睡觉一样是不假思索的东西,而我的客户尽是些高富帅,他们懂个毛CS架构!

  所以,如果你不大懂技术,那请仔细听我说:如果你想做的移动应用需要用户注册和登录,或者你想随时控制移动应用的一些输出,甚至是你仅仅是需要一个用户反馈意见调查表这么简单的功能,那么,你得搞一台后端服务器。

  二:好了,现在你知道你需要一台后端服务器。同时你还需要想办法让你的iOS应用和你的服务器能够对话,就是相互间接收数据什么的。不,这个问题不是简答靠什么标准的即插即用的东东就能解决的,不是你们想象的那样!所有的东西都需要定制化开发,这就好比发明一门语言:你希望你的服务器和你的应用之间能够通过一种语言沟通,但是你不希望其他人听得懂这门语言。

  用行话说这就是制定服务器端API接口,或简称API。这些API应该在开发iPhone客户端之前就到位了。为什么?因为你必须先规定好一门语言的单词和语法,然后才能用这门语言说话吧!?好了,这就带出了第三点—如何开发这些API。

  三:API的成功定制是项目成功的一半(反之亦然),所以千万不要掉以轻心。你要考虑你的业务数据模型、业务流程、调用业务需要提供的参数、特定事件发生时数据间该如何互动等等。简单来说,我们要做的就是开发一个网站,上门跑着你的业务流程,只不过这个网站的所有运行结果都不是通过网页形式展现出来,而是呈现在一行行的文本和数字中。举个例子:一个登录成功的反馈页面仅仅包含YES一个单词。

  iPhone应用需要访问这些预先定义好的接口,并且按预定义格式提供必要的输入(比如用户名和密码),然后要对服务器端的反馈(YES或者NO)做出解析处理。所以,没有什么移动应用能够自动的含有用户注册和登录功能。

  服务器端开发需要考虑的问题太多了:选择服务器,选择用什么语言开发,主机放在哪里才能增加访问速度,等等,这里我就不展开了。如果这一切对你来说很陌生,那么你最好去问问团队里的技术负责人,或者干脆让开发人员做决策。

  四: 所以,关于服务器端API,你或者让自己的技术团队把它开发好,再将完善的API文档交给iPhone应用开发人员;或者你支付iPhone应用开发人员额外的报酬来搞定这些。你找的iPhone应用开发人员可能会服务器端开发也可能不会。如果他会的话,我建议最好让他也同时负责服务器端开发,因为他最清楚iPhone应用中需要哪些服务器端API。

  如果你的服务器端API已经存在了,那么除了向iPhone应用开发人员提供相关文档之外,你还要考虑让他能够便捷的同服务器开发团队沟通,因为大多数情况下,iPhone应用需要在已有API基础上增加一些新的接口。

  现在我们来看看iPhone应用开发本身

  扯了大半天,我们终于开始谈iPhone应用开发本身了。一般来说,iOS平台上做所有事情都不能随心所欲。你最好在开发人员写代码之前把所有的需求都确认好好。这和开发网站不一样,按照实现签订的合同开发iOS应用,开发过程中对需求变更的容纳度可能很低:

  用户界面:无论你打算采用iOS标准界面还是自定义元素,在开发开始前一定要确认清楚,因为应用的程序架构是根据界面和用户使用流程来设计的。一个很好的例子就是在界面底部使用了iOS标准的标签栏(Tab Bar),此后如果你想让标签栏里面的图标变成彩色的,这个代码改动量可没你想象的那么小!

  代码之间的耦合:如果是开发网站,你可以随意的添加一个页面或者一处链接。做iOS应用就没有那么简单了,很多东西一开始都要设计好,后期的一处改动会牵连很多东西,具体原因是你无法理解的。iOS应用的代码写好之后,再改动行不行?行!但必须小心。 这就像设计电路板一样, 如果你不小心把那根线搭错了,整块电路板就会不工作。有人说架构优良的程序可以有很高的延展性,那纯属纸上谈兵。在About屏幕上添加一个电子邮件按钮可能只需要几行代码的工作量,而添加一个转发到新浪微薄的按钮(译者注:原文是添加一个Facebook Like)就完全不是那么简单的事儿了! 

  让一个iPhone应用同时也支持iPad:如果要评选最坑爹“需求变更”,那么这个绝对是当之无愧的。理由很简单:支持iPad根本不是TMD什么附加功能!iPad应用基本上都比iPhone应用来得要复杂,界面设计和用户体验也大不一样。我问你,制造一辆电动自行车,然后把它改装成一部烧汽油的摩托车,这能是一回事儿吗!?电动自行车跟摩托车看起来是很像,但是制造它们完全是两码事。

  拿广受欢迎的Facebook官方应用来说,它的iPhone和iPad版本看似相似,实际用户操作流程完全不同。不仅仅是界面上的不同会带来额外的工作,对后台服务器API的需求也可能不一样。拿我熟悉的一个应用Denso来说(我熟悉它因为这是我开发的),它的iPad版本比iPhone多了几个功能,这些都需要额外的服务器端API来支持。记住,iPhone和iPad应用的用户体验需求是完全不一样的。 

  准备好开始了吗?

  希望此文能够帮助你和你的团队了解移动应用开发幕后的方方面面。除非你们要做一个像计算器那么简单的单机应用,否则你们很难用极低的成本搞定。综上所述,如果你觉得外包成本太高,那你只好招人自己开发。

  当然,如果你决定了要外包移动应用开发,那么我还要提醒一点:公司政治。如果你是在一家大公司或者有着严格制度的机构里面干活,那么帮助合同开发者搞定那些个规章制度上的繁文缛节,对你来说是非常重要的一项工作,必要的时候甚至可以做一些政策上的变通。 我同几个大型企业客户接触过,当我要求看他们的服务器端数据接口的时候,他们流露出很不安的表情。我想这或许是因为他们受制于公司规定而不能透露信息,这无可厚非;或者他们还没有想好这种情况下该如何操作;或者他们的品牌制度蛋疼到需要在移动应用的每个屏幕上都摆着公司logo!最终我没有和这样的企业客户合作,因为我无法想象如果有一天我需要增加一些服务器端API接口的话,和他们的规章和流程折腾,那将会是多么悲剧的事情。

  PS:开发移动应用很耗费时间,你最好有耐心。   

  英文原文:Kent Nguyen   编译:伯乐在线 – 陈远

2012年4月12日星期四

中国出现大范围网络故障

  今天早上11点左右,大量中国网络用户反馈出现断网问题,所有的国外网站均无法访问,而国内网站则访问正常。断网涉及到全国大量地区,影响范围十分广泛。

  根据我的实际测试,几乎所有的境外网站均无法从浏览器访问,包括Yahoo,Microsoft、Alexa、Bing、MSN Hotmail等等,而境内网站访问正常。除了HTTP无法访问之外,HTTPS、FTP和SSH等其他协议也无法访问,显示的现象是境外网站全部中断。

  据相关媒体报道,2012年4月12日10:40分左右,中国电信骨干网发生重大问题,导致香港、日本、美国、韩国、荷兰、澳大利亚、新加波都发生访问网站局部无法访问的情况。检测中,发现了谷歌香港地址在全国访问内很多地区都无法访问。此次故障,是由于中国骨干线路故障引起。

中国出现大范围网络故障

  截止到中午时分,部分地区的网络已经逐步恢复正常。

2012年4月11日星期三

Google测试新界面

  今天在Chrome浏览器下使用Google.com.hk的搜索,发现搜索结果的界面发生了重大变化,显示效果令人震惊。

  很多互联网产品都会进行A/B测试,Google这次也可能是在进行A/B测试,来检验搜索结果的新样式,我今天使用Chrome浏览器进行搜索后,搜索内容全部居中显示,文字格式看起来非常混乱,令人感觉非常别扭。而且糟糕的是,找不到如何恢复原有搜索界面的路径。搞不清楚Google为什么设计出这么奇怪的搜索UI界面。

  在IE浏览器下搜索结果依旧是靠左对齐。

  这种居中对其的搜索结果样式我觉得根本就不用测试,用户可能会接受这种界面吗?可能性非常小。

Google测试新界面

  除了Google搜索之外,Google+今天晚上也在小范围内测试新界面,新的Google+界面,将原先的文字链接修改为大按钮,排列在左侧,看起来很别扭,这样的设计显然是为了改善Google+在平板电脑上的使用体验,但是这界面看起来似乎并不太美观。

Google测试新界面

  感觉Google需要招聘一些UI界面设计师了。

2012年4月10日星期二

新一代iPad适配应用之游戏篇

  新一代 iPad 上市半月后其分辨率达 2048 x 1536 的 Retina 视网膜屏幕让众多用户大呼过瘾,与此同时,众游戏开发者和开发商也开始了其应用的更新换代来满足高清屏幕的完显示效果,本文将为你展示都有哪些游戏应用已经完美适配新一代 iPad。

  新一代 iPad(The New iPad)自3月8号上市到现在已经两周了,最新的客户满意度调查显示 98% 的用户对新一代 iPad 比较满意82% 的用户对新一代 iPad感到非常满意,其中用户最喜欢的就是新 iPad 的视网膜屏幕,用户表示分辨率高达 2048 x 1536 的视网膜屏幕给他们带来了全新的体验。而这些体验都是需要开发者将应用重新调整更新的,下面我们看看在牛排面世将近一个月的时间里都有哪些游戏应用已经升级完美适配牛排的高清屏了。

  1.  Infinity Blade II (无尽之刃 II  )

 Infinity Blade II (无尽之剑 II  )

  3D动作游戏《Infinity Blade II》在牛排的 Retina 显示效果下更加美轮美奂,赶紧下载体验一下这款号称 iOS 平台上面画面最绚丽的游戏吧。

  2. Real Racing 2 HD (真实赛车2高清版)

Real Racing 2 HD (真实赛车2高清版)

  完全支持 2048*1536 视网膜显示屏及 4 倍抗锯齿,“iPad 最佳的竞速游戏”、“视觉效果近乎于完美”,准备好体验这款 iOS 平台上终极赛车 Real Racing 2 了没。

  3. Modern Combat 3: Fallen Nation (现代战争3:堕落国度)

Modern Combat 3: Fallen Nation (现代战争3:堕落国度)

  Gameloft 出品,曾经智能手机上最好最真实的FPS系列游戏王者,说 Modern Combat 3 是 iOS 平台上最好的第一人称射击游戏也不为过,支持单人或多人对战。

  4. Mass Effect ™ Infiltrator  (质量效应3:渗透者)

Mass Effect ™ Infiltrator  (质量效应3:渗透者)

  EA 出品,一款角色扮演和射击游戏,采用全新的游戏剧情,游戏画面细腻,并且支持全中文,Mass Effect 的操作在 iOS 的游戏中数一数二的方便顺手。其新版也已经为全新 iPad 优化过,能够以前所未有的方式探索高分辨率游戏。

  5. Sky Gamblers: Air Supremacy (搏击长空:制空权) 

Sky Gamblers: Air Supremacy (搏击长空:制空权)

  曾在 The New iPad 发布会上作为画面演示作品,搏击长空-制空权是第一个真正展现新iPad图形运算能力的游戏,也是目前 iOS 平台上最好的 3D 空战类游戏。

  6. EPOCH. (纪元)

EPOCH. (纪元)

  EPOCH (纪元)- 世界末日后的机器人大战,“iOS上的完美完美掩体射击”,“多种电子设备上的新掩体射手之王”,“将华丽的外观与反应精准的触屏完美结合,精彩而又独特的iOS动作游戏”。

  7. Order & Chaos© Online(混沌与秩序© Online)

7. Order & Chaos© Online(混沌与秩序© Online)

  Gameloft 出品,目前 iOS 和 Android 平台最出色的大型 3D 网络游戏,广受赞誉的 MMORPG 实时多人在线角色扮演游戏,新增地下城萨兰。全新的 New iPad Retina 显示技术让混沌与秩序的世界焕然一新。

  8. Labyrinth 2 HD 

Labyrinth 2 HD

  经典滚球迷宫游戏的续作,包含完美适配更大屏幕的全新关卡,是 App Store 中最好的游戏之一,如果你之前喜爱滚球迷宫游戏,那么 Labyrinth 2 是你必须拥有的游戏。

  9. Angry Birds Space HD(愤怒的小鸟太空版 HD)

Angry Birds Space HD(愤怒的小鸟太空版 HD)

  关于愤怒的小鸟就不多解释了,走向太空的愤怒小鸟吸金依旧,发布后四天下载量突破1000万,一周后下载量突破2000万次。无重力模式值得体验一番。

  10. Diamond Dash

Diamond Dash

  曾经每月的Facebook用户量超过1000万的 Diamond Dash 的 iOS 版,与宝石迷阵相比,添加了动态元素,更添游戏趣味性。新版为全新 iPad Retina 显示屏优化,有着更加华丽的效果。

  11. Touchgrind BMX (极限单车)

 Touchgrind BMX (极限单车)

  当你熟练运用你的双指做出各种极端的动作时,你会感觉世界都在你的”指“下。这款特技小轮车有着人惊叹的 3D 华丽图像和绝佳的物理游戏体验与现实音效,是一款有着快节奏又略带疯狂、令人上瘾的有趣游戏。

  12. Foosball HD

Foosball HD

  Illusion Labs 出品,也是上面 Labyrinth 2 和 Touchgrind BMX 的开发者。Foosball HD 是一款专为 iPad 或 iPhone 开发的口袋版桌面足球游戏,使用 OpenGL ES 2 着色引擎,有着令人惊艳的图形,可单机亦可联机对战。

  13. Flight Control Rocket(航空指挥官:飞向宇宙)

Flight Control Rocket(航空指挥官:飞向宇宙)

  Firemint 开创的游戏类型之冠军热销作品《航空指挥官》的进化版:《航空指挥官:飞向宇宙》,除了经典的已有游戏体验外新增了独特的复古科幻风和节奏,全新的线路绘画游戏方式令人欲罢不能。

  来源: AppAdviceGizmodoMashableWired 、中文翻译:原文链接

 

独立博客搭建教程

  博客,又译为网络日志、部落格或部落阁等,是一种通常由个人管理、不定期张贴新的文章的网站。博客上的文章通常根据张贴时间,以倒序方式由新到旧排列。许多博客专注在特定的课题上提供评论或新闻,其他则被作为比较个人的日记。一个典型的博客结合了文字、图像、其他博客或网站的链接、及其它与主题相关的媒体。能够让读者以互动的方式留下意见,是许多博客的重要要素。大部分的博客内容以文字为主,仍有一些博客专注在艺术、摄影、视频、音乐、播客等各种主题。博客是社会媒体网络的一部分。

  博客最初的名称是 Weblog,由web和log两个单词组成,按字面意思就为网络日记,后来喜欢新名词的人把这个词的发音故意改了一下,读成we blog,由此,blog这个词被创造出来。中文意思即网志或网络日志,不过,在中国大陆有人往往也将 Blog 本身和 blogger(即博客作者)均音译为“博客”。“博客”有较深的涵义:“博”为“广博”;“客”不单是“blogger”更有“好客”之意。看Blog 的人都是“客”。而在台湾,则分别音译成“部落格”(或“部落阁”)及“部落客”,认为Blog本身有社群群组的意含在内,借由Blog可以将网络上网友集结成一个大博客,成为另一个具有影响力的自由媒体。

  如果要建立一个博客,有两大类方法:

  A是可以在一些大型的门户站,如新浪,搜狐,百度,腾讯等免费注册申请一个人博客,这样的好处是申请即用,无需建站知识,而且可以即时与众多网友互动,提高博客的访问量。

  B是建立一个自己的独立博客。

  独立博客的好处在于:

  a、拥有自己的自主域名,域名可以是你的名字,网名或其他有含义的词语:dingkee(定可),而申请门户站的博客则是二级或是三级域名,没有自主权,这也是大部分人独立博客的初衷——品牌资产。

  b、博客个性化程度高,门户站的博客通常都做了一些限制,而独立博客则是我的地盘我做主,可以通过添加插件实现某些功能,也可以任意修改博客的主题模板,使你的博客独一无二,更加出众。

  c、博主本人就是博客最高管理员,发表博客无需经过他人审核。

  d、可以升级博客域名的PR值,在博客任意位置挂广告赚钱而不是像韩寒那样为新浪免费打工等等。

   要搭建一个完整的独立博客,分为三大步:域名、主机的配备,系统的设置和博客内容的充实,以下一 一道来:

  一、系统的配备

  主要分为两部分:域名、主机,和博客程序。

  1.域名

  即顶级域名,平常我们遇到的一般是耳际甚至三级域名,如weibo.com/cndenver(其实不算),cndenver.blog.sina.com.cn,或applequan.spaces.live.com等,这样有个不好的就是域名太长而且所有权不属于自己,如果什么时候因为有关部门的临时工一不小心失误,你几十年的精力就可能付诸东流。

  言归正传,最好拥有自己的顶级域名如笔者的dingkee.com,当然 .net, .org 甚至 .info .me也都行,关键看自己的喜好和对博客的定位(如广受赞誉的经典案例del.icio.us),域名需要反映出博客的品味与风格,同时规避可能的风险,一个好的域名应该具备六个基本要素:短小、容易记忆、不容易与其它域名混淆、不容易拼写错误、与公司名称/商标或核心业务相关、尽量避免文化冲突。可参考以下几位的观点:选择域名的一般原则 域名选择的五个要点  从六间房看域名选择和推广

  综合起来,也就是说最好是短小有涵义不易混淆的.com域名,虽然能够满足这些条件的域名可能早就名花有主了,这就要看个人创造了,体现了决策的艺术性。

godaddy

  2.主机,即host,即用来运行博客的服务器,可以分为几种类型:自己的服务器、托管、合租、虚拟主机、VPS等,分别适用于不同的类型,区别的话见西部数码的说明。一般情况下,博客的话,选择虚拟主机或VPS合租性能、流量就完全够了。

  在确定了域名和主机类型之后,就是去选购了。在选择服务商的时候,由于信息的不对称和市场的快速变化,最好选择那些口碑较好、经营时间较长的SP,可以选择域名主机搭配销售,当然也可以分开购买。国内的主流有万网,新网、易联主机等,非主流有Wopus 、合租庙等,国外的godaddy,bluehost等,都比较值得信赖。主机的选择可参见 《独立博客主机推荐与总结》。

host

  3.博客程序的选择

  当然,牛人可以自己写一个定制化的出来,但如果时间不够或技术不行的话,也可以选择已有的模板框架,国内国外都有,常见的有wordpress,Blogger,Movable Type,Drupal,Expression Engine等,貌似近来Zblog也比较火,最出名的采用者之一就数月光博客。这方面的选择主要要考虑用户人数、主题插件定制、社区支持、编程语言(PHP,ASP等,不要求精通,但是了解一点更好)和与主机类型的协同作用等。

   二、系统的设置

  所谓设置,也包含两大步:服务器的配置、博客程序的设置。

  1.服务器的配置

  首先,我们要明白,我们已经拥有了三大部件:域名,主机和博客程序,但问题在于他们现在还是分散孤立的,不会自己联合起来(除非我们一起打包购买,SP会可以帮助我们搭建),我们现在要做的是就是把他们联接起来,以构建完备的个人博客。

  联接域名与主机的叫做DNS,简单地说,DND就是在我们输入域名在浏览器时,帮助读者将域名指向主机的环节。DNS可以选择域名服务商自己的,当然也可以选择独立DNS服务商的更专业稳定一点,如openDNS和国内的DNSpod等,配置好主域名的A记录(将域名指向主机ip)就行了,需要额外功能的可以还配置CName和MX记录,但不是必须的。

  这需要三方面的调整:

  (1)域名服务商那里设置好DNS Server服务器

  (2)在DNS服务商那里设置好A记录等

  (3)在主机服务商那里设置绑定域名

dnspod

 

  2.博客程序的配置

  一切就绪后,就可以用FTP软件或主机的Cpanel程序将博客程序上传到host根目录那里了。同时准备好主机的数据库及其账号,直接访问域名就可以开始安装了。可参见《WordPress的安装过程

  安装完成之后,可以点击进入Dashboard设置相关参数,选择主题并安装需要的插件即可。

  如图:

wordpress

   用法及教程可参考 wpcoursewordpress详细教程,插件的话请参考《十大最佳WordPress插件推荐》,《20款最佳WordPress插件推荐》。

  值得留意的是,新手最好不要吧wordpress安装到host的子目录,这样极可能导致出现一些bug或问题,笔者之前就是专门建立一个blog目录希望能够以blog.dingkee.com作为博客域名,然后主域名用来干干其他事情,结果安装wp-cache之后与主题冲突导致不能评论,最后不得不重新安装,所以在此奉劝大家,搭建过程中,如果不是绝顶高手的话,其实随大流还是没错的!

  三、内容的充实

  辛苦搭建博客,都希望能够很好的发展,高的流量,高的认可,那倒不一定是为了赚些广告费(有也不错^_^),只是这也是对个人努力的认可,这方面哥也是新手,不过过来人的意见可以参考一下:

  1,有一定专业的内容。内容不限,只要是自己喜欢、爱好的方面能写文章的方面就可以了。要不断的进行原创的更新,加以适当的宣传,就能不断的积累用户不断地发展。

  2,要经过时间的考验。著名的博客都是经过时间考验的,坚持按照上面第一条大约三四年左右,你的博客必将有很多人访问,也能结交很多朋友。但是绝大多数人是无法坚持写下去的。

  当然,在文章写得很好之后,考虑赚些外快也不算罪过,以下为可能的盈利模式:

  第一种:也是最多人采用的一种-广告联盟

  第二种:广告主

  第三种:卖链接

  第四种:推广产品(也叫产品的博客营销)

  第五种:软文服务(也叫软公告,植入性广告)

  另外,在埋头耕耘的同时,考虑下SEO常见的技巧,还是会取得事半功倍的效果,毕竟,写出来没人看也是有点小挫折的。

  来源:投稿,作者:北京大学 Steven,原文链接

2012年4月9日星期一

开发商对Android兴趣持续下降

  来自IDC 的最新报告显示:开发商对Android手机及平板电脑应用的开发兴趣正持续下降,本次调查“围绕开发商最想为哪些平台开发应用”而访问了1869位开发商。更多信息,请看下图。

  在这个季度,开发商对Android手机应用的开发兴趣下降了4.7个百分点,降到78.6%,对Android平板电脑应用开发的兴趣下降了2.2个百分点,降到65.9%.虽然调查存在一些误差,但这也表明了一个趋势,虽然Android设备销量在增长,仍旧留不住开发商的心,开发商对Android的兴趣在过去四个季度持续下降。

  这个调查对不论对iOS还是对Android都非常重要,关系到两大移动平台大战谁胜谁负,之前施密特还有许多媒体都对Android平台信心满满,认为它会取代iOS成为移动平台的主导,然而,现在相反的事情发生了。

  当然,这里存在一个重要因素,由于HTML 5的兴起,各大开发商开始考虑开发能够跨平台运行的应用。

开发商对Android兴趣持续下降

  来源:BI 、雷锋网