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

发现

共 287 篇文章

IT 2013-05-08 13:52:24 / 累计浏览 4,306

谁能看明白这幅Java、PHP、C、Ruby语言相互吐槽的搞笑图片都说的是什么?

这是一篇围绕一张经典编程语言“鄙视链”梗图展开的趣味讨论。作者分享了这张将Java、PHP、C和Ruby四种语言拟人化,让它们“互相吐槽”的搞笑图片,并坦言自己研究很久也未能完全参透图中每一个比喻的深意。 文章详细列出了各语言粉丝眼中的自己与“对手”:Java用户自诩稳定全能,却视PHP为小儿科;PHP爱好者认为Ruby复杂难懂,而自己只是“好用的工具”;Ruby拥趸则觉得Java太商业,PHP是“假超人”。有趣的是,图中为C语言粉丝留下了大量问号,这恰恰成了最大的悬念——那位追求极致性能的“老大哥”,究竟如何看待这些后辈们? 作者将图表和个人解读一并呈现,并非寻求标准答案,而是以一种轻松的方式邀请读者共同“破译”这些技术调侃背后的文化密码。无论你是哪种语言的开发者,都能从中会心一笑,或许还能在评论区贡献出更犀利的解读。

IT 2013-05-08 13:46:50 / 累计浏览 2,449

那些有争议的编程观点

这篇整理汇集了 Stack Overflow 上一个经典讨论帖中,程序员们提出的 28 个颇具争议的编程观点。文章没有提供标准答案,而是将这些尖锐、甚至相互矛盾的看法并列出来,形成一场激烈的观点碰撞。 观点覆盖了软件开发的方方面面。比如,有人认为不在业余时间捣鼓代码的不算好程序员,也有人坚持“软件开发只是一份工作”。在技术实践上,争议同样不少:单元测试未必能帮你写出好代码,过度使用 Getter/Setter 和设计模式反而可能破坏设计,而性能和可读性孰轻孰重也争论不休。甚至对 PHP、XML、Java 作为第一语言等具体选择,也存在明确的批判。 这些观点的价值不在于对错,而在于它们像一面镜子,迫使开发者跳出自己的思维惯性,重新审视行业里那些习以为常的“共识”与“规范”。它们提醒我们,技术世界里很少有放之四海而皆准的银弹,许多最佳实践可能只是特定语境下的解法。读完这些争议,你或许会更清晰地分辨哪些是真正的工程原则,哪些又只是群体性的盲从。

IT 2013-05-01 22:27:35 / 累计浏览 1,310

PFIF网上寻人协议

这篇讲的是PFIF协议在灾难救援中的诞生与演进。从911事件时25个寻人网站各自为战,到卡特里娜飓风期间志愿者手动整合数据的艰难,催生了用标准格式统一信息交换的需求。PFIF协议通过为每条记录附加唯一ID,让不同站点的数据能自动合并与同步。 文章重点梳理了协议从1.1到1.4的关键迭代:1.2版为适应国际救援增加了国家代码、性别等字段;1.3版引入有效期以解决隐私与过期数据问题;1.4版则支持网络身份链接与多照片,进一步便于人员匹配。作者在四川地震后,观察到国内多家企业匆忙上线独立寻人平台,再次面临信息分散的旧问题,由此引出PFIF协议的现实意义。 核心观点是,在突发灾害面前,一个开放的技术标准能有效打破数据孤岛,让各方力量快速协同。文章通过历史案例与具体协议设计,说明了标准化如何将混乱的个体行动,转化为可扩展、可协作的救援网络。

IT 2013-05-01 18:29:35 / 累计浏览 6,067

程序员的样子

这篇用一系列搞笑动图,真实还原了程序员工作中的典型瞬间。从紧张地往运行服务器直接上传文件,到发现未保存代码就关闭文件时的崩溃;从凌晨三点还在与bug死磕,到正则表达式一次命中时的狂喜;既有第一次用CSS美化页面时“我真是个天才”的期待,也有发现上周五还好用的功能周一就罢工时的无奈。 文章没有说教,而是用共情力极强的画面,捕捉了那些让程序员会心一笑或心头一紧的永恒场景——比如老板宣布项目奖金时突然爆发的生产力,或是需要有人站出来修复严重bug时默契的“低头族”现象。最后,那个“如何向市场部同事解释程序员工作”的画面,更是道尽了技术与非技术岗位间有趣又真实的鸿沟。 它像一面镜子,让程序员们会心一笑,也让非技术岗位的同事能更直观地理解他们的日常:那些抓狂的瞬间与小小的成就感,共同构成了这个群体最真实的模样。

IT 2013-04-06 23:01:43 / 累计浏览 16,690

Chrome和goagent的配置方法,你懂的

这篇教程详细讲解了如何利用Google App Engine与GoAgent,在Chrome浏览器中搭建一个自主可控的代理环境。文章从注册GAE账号、创建应用讲起,一步步指导读者下载并配置GoAgent客户端,包括修改proxy.ini配置文件、运行上传脚本将服务端部署到GAE。 在客户端设置部分,教程重点介绍了Chrome插件Proxy SwitchySharp的安装与配置,特别是通过导入预设的配置文件,并立即更新自动代理规则列表,来简化后续的使用。整个过程配有截图,步骤清晰。最终,作者指出当SwitchySharp运行在自动切换模式且GoAgent客户端启动后,配置即告完成。这为需要管理自身网络访问规则的技术用户提供了一个具体的、可复现的操作方案。

IT 2013-04-06 22:42:45 / 累计浏览 36,697

如何高效使用搜索引擎

这篇讲的是如何通过一系列高级搜索指令,将普通搜索变成精准的信息挖掘工具。文章从基础的双引号完全匹配和减号排除,逐步深入到inurl、intitle、site等更具针对性的指令,并清晰指出了它们在百度、Google等不同平台上的支持差异。 作者不仅列出了指令,更侧重于实战组合。比如,通过“inurl:.edu.cn intitle:交换链接”可以精准定位学校网站的链接交换页面;而“site:.com inurl:blog “post a comment””这个组合,则能高效筛选出可评论的博客,为寻找外链资源提供了可复制的模板。 文章的核心价值在于,它将搜索引擎从一个简单的提问工具,转变成了一个能够定向筛选权威信息源(如.gov、.edu域名)、分析竞争对手(通过inanchor、related指令)以及探测内容详情(filetype搜索特定文件)的高效侦察系统。对于需要经常查找特定资料、进行市场调研或SEO优化的读者而言,这些技巧能显著提升搜索效率与结果精度。

IT 2013-03-11 13:40:49 / 累计浏览 4,417

编程珠玑番外篇之番外篇-N 答 UNIX 痛恨者王垠

这篇讨论 UNIX 与 Windows 设计哲学之争的文章,从王垠批评 UNIX 的观点出发,深入剖析了两者的核心差异。作者指出,UNIX 的图形系统(如 X Window)与操作系统内核的松耦合,反而为针对不同设备(如移动平台)定制高效 GUI 提供了灵活性,而微软 NT 内核与 UI 的深度绑定,则导致其在跨平台时面临复杂的兼顾问题,迭代缓慢。 文章进一步探讨了工具设计的复杂性根源。以 TeX 为例,作者认为其“复杂”源于要解决排版领域本身的精确控制问题,而非设计失败。这揭示了一个重要观点:工具设计的简单或复杂,应取决于其要封装的“领域模型”的固有难度,而非简单地追求操作极简。将 Unix 工具比作“魔鬼棋”的类比,可能忽略了这一层因果关系。 最后,作者提出了一个有趣的角度:真正的 Unix 用户恰恰是其“痛恨者”,因为深刻理解其缺陷是高效使用它的前提。这种基于开放环境竞争、不断吸收优秀设计的演进模式,而非某种“宗教”,才是 Unix 家族最终胜出的关键。

IT 2013-03-11 13:38:12 / 累计浏览 4,440

《Rework》摘录及感想

这篇文章源于作者对《Rework》的多次阅读和实践反思,它并非简单的书摘,而是一场对流行工作哲学的“大扫除”。作者从书中的犀利观点出发,结合自身在技术团队管理和个人成长中的见闻,逐一戳破了那些看似理所当然的“现实”泡沫。 核心观点极具冲击力:所谓“现实世界”不过是消极者的借口;从成功中学习远比从错误中学习更能促进进化;长期计划往往是脱离现实的猜测;盲目追求团队扩张未必是荣耀,小而美的目标本身就很伟大。作者尤其批判了以“工作时长”衡量贡献的扭曲价值观,认为那是用蛮力掩盖思维惰性,本质是在训练一匹“更快的马”,而非创造新的交通工具。 文章最打动人的地方在于作者的“翻译”工作——他将书中的理念,精准对接到程序员日常的绩效考核、项目决策、职业选择乃至个人学习动力上。他呼吁读者“挠自己的痒处”,去做真正热爱的事;在资源受限时激发创造力,而非抱怨;树立鲜明立场,即使这会引发争议。通篇没有空洞的口号,而是充满了“用小分队端掉敌军指挥部”这类鲜活比喻,以及关于自动化测试、性能优化等具体技术场景的联想,让理念真正落地。它最终指向一个朴素而有力的建议:停止用“没时间”或“条件不够”作为借口,你的价值正体现在解决不完美条件下的问题。

IT 2013-03-11 13:30:12 / 累计浏览 7,892

Java程序员应该知道的10个eclipse调试技巧

这是一篇面向Java开发者的Eclipse调试技巧系统性梳理。文章开篇就给出了三个高优先级建议:放弃System.out.println,转而启用并分析组件日志。核心内容则围绕十个具体、可操作的调试功能展开。 作者从基础的条件断点、异常断点讲起,逐步深入到监视点、变量值修改等高级操作。特别值得一提的是对“Drop to Frame”(返回堆栈帧)功能的讲解,它能让程序状态“回档”以便重复调试,但作者也提醒了其可能带来的副作用。最后,文章对F5、F6、F7、F8这四个最核心的调试快捷键进行了清晰归类,是入门和巩固的必备知识。 整篇文章的实用性很强,不仅罗列了“是什么”,更通过具体场景说明了“怎么用”以及“注意什么”,旨在帮助开发者更高效、精准地定位代码问题。

IT 2013-03-07 13:47:34 / 累计浏览 1,323

textmate常用快捷键备忘

这篇讲的是TextMate编辑器的常用快捷键,堪称一份详尽的备忘录。文章直接按功能模块,列出了从视图切换、文件导航到代码编辑、查找替换等方方面面的高效操作方式。比如用“Cmd + T”快速定位项目文件,用“Cmd + /”一键注释代码,或是利用“Cmd + Option + A”进行多行同步编辑。 它不仅覆盖了通用操作,还特别整理了针对HTML和Rails开发者的Bundle快捷键,例如自动生成标签或在Controller、View、Model间快速跳转。对于列编辑模式这种特殊技巧也做了说明。对于使用TextMate的开发者而言,这篇文章就像一份随时可查的效率手册,把零散的操作技巧系统化地呈现出来,能有效帮助提升日常编码的流畅度。

IT 2013-03-05 13:29:18 / 累计浏览 2,105

移动产品设计书籍推荐

做移动产品设计该从哪本书读起?这篇作者从自己的实战经验出发,给出了一份扎实的书单。他认为,所有平台的官方设计指南(Guidelines)是绝对的基石,尤其iOS指南编写得最为完整规范,新入行者必须反复熟读,在此之前甚至无需旁骛。在此基础上,他推荐了《简约至上》作为产品设计思维入门,指出其核心是站在用户角度简化设计;《触动人心》则聚焦于从iPhone视角思考应用设计。对于想理解整个移动生态的读者,《移动应用的设计与开发》虽有些年头,但其生态系统概述仍有价值。最后,作为工具书,《移动应用UI设计模式》详细介绍了70种设计模式。文章还附赠了四个精选的APP截图与设计素材网站,方便设计师随时获取灵感。整篇文章剥离了空泛理论,全是从“哪些必须读”和“具体解决什么问题”出发的干货指南。

IT 2013-03-05 13:22:27 / 累计浏览 2,587

选3本书推荐给新入行的PM

这篇文章针对新入行的产品经理,推荐了三本分别覆盖设计、产品与运营核心能力的书籍,并补充了若干拓展读物。 作者从自身经验出发,认为PM的工作大致可拆解为设计、产品、运营三个维度。他首先推荐了《简约至上》,强调其核心在于用最简设计满足用户需求,是本需要反复阅读的交互设计经典。产品层面则首推《启示录》,称其为目前最好的产品设计入门书,内容涵盖需求分析到产品生命周期管理。运营方面,作者选取了以淘宝卖家为原型的《玩法变了》,指出虽聚焦特定领域,但能启发触类旁通的运营与品牌思考。 此外,文章还列举了《金字塔原理》《应需而变》《决策与判断》等书,分别从逻辑表达、同理心培养与心智模型分析等角度提供补充。作者最终点明,读书的关键不在数量,而在于能否启发思考、打通思路——初期可依赖专业书入门,之后则应广泛涉猎、融会贯通。

IT 2013-03-03 23:01:41 / 累计浏览 5,246

给程序员推荐几部电影

这篇文章从程序员视角出发,推荐了六部与编程思维紧密相关的电影。作者的推荐逻辑并非基于票房或类型,而是精准地为每部作品提炼了一个核心编程概念作为关键词:例如《黑客帝国》的“矩阵”、《盗梦空间》的“虚拟化”、《云图》的“并行”,乃至《恐怖游轮》的“递归”与《源代码》的“重入”。 这种关联非常巧妙,它将电影中看似科幻或烧脑的情节,映射为开发者熟悉的抽象模型。比如《恐怖游轮》中不断循环的困局,正是递归函数调用自身直至基线条件的经典体现;而《源代码》里在有限时间切片中反复“重启”寻找答案的过程,则像极了重入操作。文章不仅提供了片单,更提供了一种用专业眼光解读故事的有趣视角。 对于程序员而言,这些电影或许能成为理解抽象概念的另类注解,或在下班后提供一种充满技术梗的放松方式。作者也将完整片单整理成了豆瓣列表,方便读者一键收藏,体现了社区分享精神。

IT 2013-03-03 22:46:36 / 累计浏览 3,525

vimari – safari下的vimium扩展

这篇讲的是作者在Safari浏览器中“拯救”自己习惯的故事。对于用惯了Chrome下Vimium键盘流插件的用户来说,切换到Safari后失去快捷键导航会非常不适应。作者寻找并找到了一个解决方案——vimari。 Vimari本质上是一个从Chrome版Vimium移植而来的Safari扩展,其核心代码大量基于Vimium,目标是为Safari用户提供类似的、基于键盘的网页浏览体验。文章特别强调了它的轻量化定位,即从Vimium中提取最适合Safari的部分功能。 文章提供了实用的配置细节:例如,将“Modifier key to precede commands”选项留空后,按下“f”键就能直接列出并跳转页面链接,复刻了Vimium最经典的操作。作者也给出了关键提醒——安装扩展后务必第一时间升级到最新版本,以解锁全部可定制选项。通过几步简单调整,就能在Safari中找回熟悉的键盘导航效率。

IT 2013-02-27 23:12:12 / 累计浏览 2,892

苹果 Mac OS X 系统下锁屏的快捷键

作者发现了一个看似简单却被广泛误解的技术细节:Mac系统下锁屏快捷键。尽管在Windows上`Win+L`是常识,但许多Mac用户甚至网上教程都给出了复杂答案——或建议合上盖子,或引导创建脚本访问钥匙串,避开了直接回答。作者指出,这种“锁屏是Windows思维”的论调,反而让基础功能变得神秘化。 问题的根源在于,Mac默认未为“锁屏”提供类似Windows的全局快捷键,导致用户和内容创作者绕远路。文章的核心价值在于直接戳破这种信息差,给出最直接的解决方案:**同时按下`Control + Shift + Power (或Eject)`键**即可立即锁屏。这个组合键无需任何设置,真正做到了单手操作,堪比Windows的`Win+L`。 作者用略带调侃的语气批评了那些过度复杂化的回答,强调技术应当服务于效率。这篇短文提醒我们,在寻找技巧时,有时最简单的答案反而被忽视了。对于需要快速锁屏的Mac用户,记住这个快捷键组合就能解决问题,无需那些繁琐的教程。

IT 2013-01-22 14:02:41 / 累计浏览 6,975

Zend Studio 10注册破解

这篇文章提供了一份针对Zend Studio 10的详细注册与破解指南,核心目标是解决开发者在使用这款PHP集成开发环境时遇到的激活障碍。 作者首先明确了教程的交流学习属性,并附上了正版购买链接以供参考。核心方案部分条理清晰:从获取官方安装程序开始,引导至具体的注册破解步骤,特别指出其流程与9.0版本相同,为有基础的用户提供了快速参考路径。关键的技术细节在于提供了精确匹配特定Build ID(20121213)的破解文件,并说明了如果版本不符,应通过软件内的“Check for Updates”功能升级,否则将导致破解失败。 教程还直接提供了一串可用的License Key,并汇总了包括汉化在内的常见问题解答链接。整篇文章像一份清晰的“路线图”,将看似复杂的破解流程分解为下载、匹配版本、覆盖文件、输入注册码等具体步骤,有效降低了操作门槛。按照这份指南,开发者可以顺利激活开发工具,但作者在开头也再次强调了支持正版的重要性。

IT 2013-01-16 14:13:29 / 累计浏览 2,525

Chrome浏览器内部协议Chrome://收集

这篇文章汇总了Chrome浏览器中一系列以“chrome://”开头的内部协议地址,带你探索这个日常工具的“隐藏控制台”。作者从实用角度出发,逐一介绍了书签管理、历史记录、下载管理等基础功能入口,也深入到了网络调试、GPU状态、内存占用监控等专业诊断工具。 特别值得注意的是,文中指出了如chrome://flags这类可能影响浏览器稳定性的实验性选项,并明确建议非必要不要随意改动。同时,对于普通用户可能接触较少的媒体内部数据、应用缓存管理(如AppCache)以及二进制对象(BLOB)存储等概念,文章也给出了简要说明和背景链接。 这些地址构成了一个强大的浏览器自检与调试面板,无论是想快速清理缓存、排查网络故障,还是仅想了解自己的浏览器正在做什么,都能在这里找到入口。文末还附上了查看浏览器及插件版本信息的常用地址chrome://version,是一个非常实用的工具合集。

IT 2013-01-16 14:04:04 / 累计浏览 3,379

为什么会有这么的编程语言

这篇文章用一个独特的视角解释了编程语言为何如此繁多:每一门新语言的诞生,几乎都是为了解决上一门语言的某个痛点。 作者将这种关系归纳为一种“修复视角”,并列出了一串生动的对照表。例如,Fortran因汇编语言“太低级”而生,而Python的出现则是为了解决Perl“太让人受不了”的问题。从C++为改进C,到Java意图摆脱C++的“笨重”,再到C#试图摆脱Sun公司的控制,这份清单清晰地勾勒出一条条语言演进的驱动力线。 这种视角剥离了复杂的语法和特性对比,直指语言设计的核心动机。它告诉我们,编程语言不是凭空创造的炫技,而是对既有工具不足之处的具体回应。对程序员而言,理解这层“前因后果”,或许比单纯掌握一门语言的语法更能洞悉技术选择的本质。

IT 2013-01-16 14:01:57 / 累计浏览 12,873

彻底屏蔽优酷广告

这篇讲的是如何通过修改系统配置与Flash插件,彻底屏蔽优酷视频广告的“江湖秘笈”。 文章先回顾了经典的hosts屏蔽法被优酷用黑屏广告“反制”的历史,随后推出了一个更彻底的两步解决方案。第一步是基础操作,针对不同操作系统修改hosts文件,屏蔽广告服务器IP。文章的核心在于第二步:通过“欺骗Flash”来阻止黑屏。这需要用户找到浏览器Flash插件的本地存储目录(不同系统路径各异),删除名为“static.youku.com”的文件夹,并用一个同名的空文件取而代之,从而从根源上阻止了广告数据的加载。 整个方案思路清晰,实操性强,特别为Chrome用户在Linux、Mac和Windows系统上给出了详细的路径指引。虽然步骤稍显繁琐,但为希望获得纯净观影体验的用户提供了一个完整的“终极”技术路径。

IT 2013-01-16 13:48:45 / 累计浏览 3,474

web开发设计人员不可不用的在线web工具和应用

这篇文章整理了一系列面向 Web 开发与设计者的在线实用工具,覆盖了从代码编写、调试、性能优化到技术调研的多个环节。 在前端开发与调试方面,文章重点介绍了 jsfiddle 和 codepen 这类老牌在线代码沙盒,前者便于快速调试和提问,后者则更侧重社区化展示。同时,也提及了集成于 GB 社区的 gbdebug、专攻正则表达式的 reFiddle+,以及针对 Ruby 语言的 RubyFiddle。对于样式与新特性探索,文中推荐了交互体验新颖的 CSS3 Generator 和作为权威参考的 HTML5 Please。 性能优化部分,文章提到了两个轻量工具:书签工具 DOM Monster 可一键诊断页面 DOM 性能,而 zBugs 则能快速压缩 CSS/JS 文件。最后,BuiltWith 被用来透视任意网站的技术栈构成,从一个独特角度满足技术选型与分析的需求。 整篇文章没有停留在单纯罗列,而是对每个工具的核心功能与适用场景进行了区分,为开发者构建了一个从开发、调试到优化、分析的在线工具箱,有助于提升日常工作效率。