IT技术博客大学习 共学习 共进步

技术文章

精选技术长文、实践记录与系统化阅读

技术文章精选

低噪声、高可扫读;标题、摘要、来源、标签一目了然。

最新文章

采集自各技术站点的近期文章。

IT 其他/ 2011-05-15 14:26:00 / 累计浏览 5,115

UTF-8编码中BOM的检测与删除

所谓BOM,全称是Byte Order Mark,它是一个Unicode字符,通常出现在文本的开头,用来标识字节序(Big/Little Endian),除此以外还可以标识编码(UTF-8/16/32),如果出现在文本中间,则解释为zero width no-break space。 注:Unicode相关知识的详细介绍请参考UTF-8, UTF-16, UTF-32 & BOM。 对于UTF-8/16/32而言,它们名字中的8/16/32指的是编码单位是多少位的,也就是说,它们的编码单位分别是8/16/32位,换算成字节就是1/2...

IT 系统架构/ 2011-05-15 14:24:01 / 累计浏览 4,310

浅析手机消息推送设计

消息是提醒用户有更新的内容,可能短信、邮件、好友申请和日程安排。消息的作用在于主动提醒用户,不需要主动刷新程序或者网页去检查更新,比如Android的sina微博,必须手动刷新程序才能更新微博或者查看好友申请。这种做法可以节省流量,对于手机包月用户而言非常有必要的。用户专注于当前任务时,可以接收到其他应用程序推送的消息,用户可以及时处理多任务。 推送机制 最基础的方法是程序实时联网获取消息,但是程序会占用内存...

IT 系统架构/ 2011-05-15 14:23:21 / 累计浏览 6,103

各消息队列软件产品大比拼

我花了一周的时间评估比较了一下各种消息队列产品,非常的有趣。我做这个事的动机是因为一个客户有一个很高性能需求。他们的消息信息突破了1百万个并发。目前他们使用的是SQL server,并不理想,我建议他们使用消息队列服务器。 为了对一些相似的候选产品获得一个全面的但是粗浅的性能上的了解,我们它们放在一起做了个测试。我让每个消息产品各发送和接受1百万千条1K的消息...

IT 发现/ 2011-05-15 14:14:46 / 累计浏览 3,255

利用设计工具成为个人设计团队

作为设计者,我们会经常遇到孤立无助的情况。不管是我们是独自工作,亦或是处于在家工作的情况,有些时候我们不得不一个人承担起很多工作角色,这些角色本可以由整个设计团队承担。 最近,也就是在我之前的工作中,我亲身体会到了这种情况。那时候,我所在的雇佣有上千人的公司里,我是唯一一个用户体验设计师。我不得不自己研究,线框图、原型设计、功能规格、视觉效果设计等。没有团队来帮助我完成这些任务,可是我仍然有期限限...

IT 视觉设计/ 2011-05-15 14:09:36 / 累计浏览 4,893

如何创建一个简洁、光滑的web2.0网站页脚

自从Web2.0冲击互联网以来,页脚就变得比以前任何时候都显得重要了,出现了许多非常漂亮的页脚设计。在这个教程中,我将会教给你如何在Photoshop中创建一个简洁、光滑的网站页脚。

IT 系统运维/ 2011-05-08 22:50:26 / 累计浏览 4,360

菜鸟谈HBase之写速度篇

Facebook在谈到其选择HBase作为新的message体系的存储时,提到了一点是hbase的高性能写,那hbase的写性能状况到底如何了,还是需要靠测试来说明,在这篇blog中就以我们目前做的一些测试来看看hbase的写速度,以及分享下我们对于测试中体现出来的数据的分析和测试时碰到的一些问题。

IT 系统架构/ 2011-05-08 22:49:43 / 累计浏览 4,132

PHP在金山游戏运营中的应用

金山游戏官方网站包括用户中心、客服系统、论坛、视频、各游戏官网,以及其他跟游戏相关的一些产品,主要采用64位CentOS Linux系统、Nginx、PHP 5.2版本、MySQL 5.5。

IT 设计思想/ 2011-05-03 23:48:40 / 累计浏览 3,014

也谈:PM与工程师

也谈:PM与工程师看了纯银写的《PM与工程师》,也参加了PMCAFF深圳3月份的活动聚会,就这个话题聊聊自己的感想。PM与工程师最容易产生冲突的地方在于需求和进度:产品需求变更折磨工程师、项目进度延迟、产品质量不过关,影响到产品的上线和运营。大体上,可以通过下面几点来避免:(1) 认同,归属感在产品规划阶段,跟工程师多聊聊,聊一聊项目背景、市场机会、我们做这个产品对公司有什么好处、以及很关键的一点是产品的成败对我...

IT 设计思想/ 2011-05-03 23:47:21 / 累计浏览 3,376

PM与工程师・续

不久前我写了篇日志《PM与工程师》,讲我的一点经验,PM如何与工程师协作。但是知易行难啊,最近我们的工程师也有点小抱怨,认为需求变动较多,太折腾了。我听到以后很警惕,查了一遍,发现变动的需求大部分还算合理。半年多来一直强调敏捷,敏捷,有什么想法就快速发布出来,再根据上线效果进行调整。因此“一步到位”的方案是不可能的,而快速调整是必须的。这时工程师就有意见了,觉得后续的修补太多,浪费时间,希望发布第一个...

IT 设计思想/ 2011-05-03 23:44:47 / 累计浏览 3,860

PM与工程师

过节前看到一篇文章,讲产品项目就应该由工程师来主导,但国内让PM去驱动项目,搞得乱七八糟,很恼火,怎么可能做出一款好产品来呢?很显然,写这篇文章的是一位愤怒的工程师,Angry Engineer!我跟他至少有两点共鸣:1、国内的PM确实常常折腾工程师,甚至不乏“把工程师当工具对待”的情况。2、如果工程师有开阔的产品视野与全面的设计素养,知行合一,由工程师来驱动项目是一个完美的选择。可惜由于教育环境的问题,国内通才太少...

IT 互联网/ 2011-05-03 23:41:18 / 累计浏览 3,475

创业公司该如何应对竞争对手的抄袭?

Twitter、Facebook和Quora的成功例子证明,在这个充满机会的互联网世界里,突破性的idea远比技术重要――至少产品发布早期 是这样的。不可否认的是,有些小型的不知名的创业公司正在做些伟大的事情。他们有理想,有技术甚至有非常好的idea,但是没有名气没有钱。这样,在发布 新产品时,一个好的Idea很容易快速被人抄袭。如果是被原本用户众多、技术先进、财力雄厚的公司抄袭,那是最可怕的。这很可能意味着创...

IT 互联网/ 2011-05-03 23:40:28 / 累计浏览 4,816

如何选择开源许可证?

如何为代码选择开源许可证,这是一个问题。世界上的开源许可证,大概有上百种。很少有人搞得清楚它们的区别。即使在最流行的六种----GPL、BSD、MIT、Mozilla、Apache和LGPL----之中做选择,也很复杂。 乌克兰程序员Paul Bagwell,画了一张分析图,说明应该怎么选择。这是我见过的最简单的讲解,只用两分钟,你就能搞清楚这六种许可证之间的最大区别。

IT 发现/ 2011-05-03 23:39:30 / 累计浏览 5,445

MVC演化史

Martin Fowler在他所写的《企业应用架构模式》一书中感慨道:MVC已经成为我们最常误用的模式。人们之所以常常误用MVC,很大程度上是因为混淆了不同的MVC变体。 Classic MVC 大概上世纪七十年代,Trygve在Xerox PARC提出了MVC的概念,并应用在Smalltalk系统中,为了和其它类型的MVC加以区分,历史上习惯的称之为Classic MVC。 Model:封装领域数据及逻辑 View:查询领域数据并展现给用户 Conctroller:截获用户请求并改变领域数据 ...

IT CSS/HTML/ 2011-05-03 23:36:43 / 累计浏览 1,427

CSS中变化Fixed的实现

有时候,一些看起来很简单的事情在CSS中就特别让人恼火。将页脚固定在页面的底部,但是当页面内容比较长的时候页脚就不固定在屏幕底部而是在内容底部,听起来很简单了,但是用CSS实现起来不是那么轻松了。 下面这个教程就来讨论一下如何实现这样的效果。 首先,这里是一个例子,可以看看。 HTML代码 这部分的代码,跟我们之前的100%高度布局的文章中一样。 额外添加的东西就是一个清除浮动的div和footer的div。

IT 其他/ 2011-05-03 23:32:28 / 累计浏览 2,070

百度site指令查收录的问题汇总

我知道大多数站长,会使用不带关键词的site语法来进行收录量观察。这是一种方法,但很不准确。site语法设定的初衷,其实是期望用户可以设定约束搜索范围,实现更加精准的搜索。这同intitle,inurl,本质上是相同的。而在这些高级语法下的结果数,和常规搜索一样,都是“估值”,而非精确值。因此,很有可能site下的“结果数”减少了,实际被索引数却可能增加了。 更加精确的方法是什么呢? 1,对来自搜索引擎的流量进行监控。这是...

IT 算法/ 2011-04-29 13:41:11 / 累计浏览 3,197

HIVE的CTAS用法探究

最近在使用ADM系统的时候遇到一个问题,ADM在自动将HIVE QL包装成CTAS之后,由于HIVE内部缺省使用’\\N’来存储NULL,这样就会产生一个问题,因为我们处理的很多结果数据是需要导出附件来给下游客户使用的,而导出数据时很少会使用这样一个特殊的字符串来代表NULL值。 这种情况下,HIVE为我们提供了重新定义NULL值存储格式的方法,使用serialization.null.format参数。 一、CTAS功能探究 对于已经创建成功的hive表,如果希望修改NU...

IT 设计思想/ 2011-04-29 13:40:20 / 累计浏览 3,074

用好Axure的协作功能

最近一个项目里,“被迫”开始使用Axure的协作功能,为了保证版本统一和一致的输出。实践的效果不错,在时间短、质量要求高、同时又有多人参与时非常奏效。 为什么说“被迫”,这里当然是个反语,但说实话,做了这么长时间交互设计,参与过大大小小不少项目,能使用到这个功能的情况是屈指可数的。往往都是1个交互设计师对2-3产品经理,来一个需求分一个人跟,出于人员配比的原因,也就很少有机会能出现几个交互设计师攒在一起协作...

IT 视觉设计/ 2011-04-29 13:39:33 / 累计浏览 2,487

移动终端中的视觉引导

在传统网站设计和平面设计中,大量信息的整理规划需要设计者用合理的排版,将信息顺畅的传达给用户,连贯的不间断的视线移动阅读会给人舒适的感觉,反之,视线被引导的满屏幕跳来跳去的,会让用户不知所措,给人乱无章法的感觉,无法更好的接收信息。 在阅读信息的时候,常常受到周围文字和图像的干扰,并不是那么顺畅,根据人眼视觉心理,会有几种容易引导或者说干扰到视觉移动方向的特点。 在上左图中,第一眼...