呦呦鹿鸣

穷则独善其身,达则兼济天下
私信 关注
happydeer
码龄20年

一路向前

  • 2,038,167
    被访问量
  • 60
    原创文章
  • 1,481
    作者排名
  • 3,899
    粉丝数量
  • 毕业院校 南京大学
  • 于 2001-03-13 加入CSDN
获得成就
  • 博客专家认证
  • 获得1,644次点赞
  • 内容获得1,482次评论
  • 获得341次收藏
荣誉勋章
TA的专栏
  • Coding Horror
    102篇
  • Johanna Rothman
    7篇
  • 我的书
    25篇
  • 多媒体
    30篇
  • 管理
    27篇
  • 杂译
    18篇
  • 其他
    15篇
我的著作和译作
《程序员的修炼——从优秀到卓越》
《高效能程序员的修炼》
《代码之道》
《脚本驱动的应用软件...》
《Windows Media编程导向》
《DirectShow实务精选》
《DirectShow开发指南》
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

FFmpeg滤镜:制作图片视频流(续)

一年前写过一篇文章,讲的是用FFmpeg制作图片视频流,大致的思路是:先将单张图片转成一个3秒的视频文件,再在视频的首尾分别加上淡入、淡出效果;每张图片都这么处理后,再把所有小视频文件连接、合并成一个大视频文件。图示:这种方法比较初级!今天,咱们玩一个更高级的。想法是,怎么让相邻两张图片之间有一个交叉转场效果?就是这样的效果:我们拿3张图片素材来演示。分四步来制作。第一步:把图片素材分别转成3秒长度的小视频文件。执行的3条命令如下:ffmpeg -f image2 -framerat
原创
377阅读
0评论
1点赞
发布博客于 4 月前

用FFmpeg制作WebP动图

之前写过一篇文章,是教大家用FFmpeg制作GIF动画的。今天在讨论到项目中碰到的一个.apng动画素材引起的程序崩溃时,有位同学建议:我们为啥不用WebP来代替.apng?是啊,why not?网上搜到一篇文章。自己试了一下,发现强大的FFmpeg果然支持制作WebP动图,于是顺手做了些笔记。先来试一下这条命令:ffmpeg -ss 25 -t 5 -i D:\Media\bear.wmv -vf scale=240:-1 -r 10 -lossless 1 -loop 0 -y D:\bea
原创
2295阅读
5评论
4点赞
发布博客于 4 月前

FFmpeg滤镜:使用colorkey抠图

今天介绍一下colorkey滤镜。通过使用这个滤镜,可以把图像中指定的颜色(或者在一定相似度范围内)的像素替换成透明色——说白了,就是把符合条件的像素抠掉。官网说明:http://ffmpeg.org/ffmpeg-filters.html#colorkey这个滤镜有三个参数。第一个(color)用于指定要抠掉的颜色;第二个(similarity)是相似度,意思是“差不多”的像素也会被抠掉...
原创
17496阅读
2评论
1点赞
发布博客于 2 年前

FFmpeg滤镜:制作图片视频流

iPhone相册有个“为你推荐”功能,它会挑选一些照片形成一个主题,点击后可以像视频一样播放。那么,怎样才能把多张照片转成一个视频文件呢?使用FFmpeg可以这么来做:ffmpeg -f image2 -framerate 0.5 -i D:\MTest\IMG%02d.jpg -s 720x480 -r 15 D:\MTest\outimgs.mp4首先,你要把源图片放在同一个文件夹...
原创
14472阅读
1评论
2点赞
发布博客于 2 年前

FFmpeg滤镜:去台标

今天扫了一眼FFmpeg文档,发现居然有去台标(delogo)功能。它的原理是:在画面中指定一个矩形区域(x,y,w,h),区域内的每个像素都与相邻像素做插值混合处理,以达到模糊化的效果。此功能实乃搬运工之福音啊!官网地址:http://www.ffmpeg.org/ffmpeg-filters.html#delogo为了验证这个滤镜效果,我找来了一段含有CCTV-5台标的视频,如下:...
原创
14056阅读
0评论
2点赞
发布博客于 2 年前

简单四步抓取腾讯视频MP4文件

1. 获取视频播放页地址,如:https://v.qq.com/x/page/j0329yq5lu0.html2. 视频正片开播后,在H5播放器的右键菜单中选择“复制调试信息”。注意,一定要是H5播放器!不是Flash播放器!复制出来的信息如下:{"pid":"5ec03277ec8ad8779a3b0556a6dece20","url":"https%3A%2F%2Fv.qq.com%...
原创
45670阅读
10评论
5点赞
发布博客于 3 年前

HDR到底是什么?

此文章转发自互联网...先感谢论坛好友@xiaoyuer520的耐心讲解及推荐这篇文章给我。我愿意分享给大家一起共同进步。谢谢。大家如果有像我一样的,看到文字多的帖子就看不下去,但又很想知道HDR是什么Dolby Vision和HDR10的区别,那么就看一下@xiaoyuer520他的解释:http://www.hao4k.com/thread-13685-1-1.html自9月去日本东京参加索尼...
转载
19979阅读
0评论
6点赞
发布博客于 3 年前

如何做好二线经理

管理的团队和人数越来越多了,你退居二线了,你是否适应自己的角色改变?作为二线经理,你的工作模式也应该调整一下了...
翻译
1941阅读
0评论
0点赞
发布博客于 4 年前

从来没做过管理

献给刚刚走上管理岗位的开发同学... 成为优秀的管理者,说穿了就是要服务于你的团队成员,和团队一起成功
翻译
1541阅读
0评论
0点赞
发布博客于 4 年前

要么听我的,要么走开(摘自《代码之道》第8章)

跨团队合作有多难?很简单的三步:消除威胁,满足需要,以建立信任。“哈佛谈判项目”推荐的ACBD是什么?Always Consult Before Deciding
翻译
1371阅读
0评论
1点赞
发布博客于 4 年前

美联航事件的系统思考

从美联航事件里学到的经验教训:要秉承简单开放的原则构建系统,要让组织专注于客户满意度,不要让系统100%满负荷运转,团队要充分授权等
翻译
1751阅读
0评论
0点赞
发布博客于 4 年前

黑客当勇于自黑

算法速度越快越好吗?其实未必!关于密码哈希的基础认知,以及开发者应该具备的严谨务实精神。做一个负责任的程序员,自己写的代码加强自测!
翻译
6542阅读
8评论
12点赞
发布博客于 4 年前

扯蛋的密码规则

当我们在设置密码时,网站/App要求我们遵循的各种稀奇古怪的密码规则真的有用吗?
翻译
10381阅读
17评论
17点赞
发布博客于 4 年前

纵谈进程枚举

关于进程枚举的4种方法... 在网上搜到的10几年前的文章,转过来保存~
原创
3659阅读
1评论
1点赞
发布博客于 4 年前

Intel IA架构

科普一下啥叫IA?IA服务器与普通PC机的差异...
转载
3906阅读
1评论
0点赞
发布博客于 4 年前

让我们加密一切

了解Let’s Encrypt这个组织,迎接HTTPS时代!
翻译
4045阅读
3评论
7点赞
发布博客于 5 年前

使用FFmpeg转录网络直播流

爱奇艺万能播放器的最新版本增加了一个播放网络流的功能。不过,入口藏在播放器区域的右键菜单里,不太好找:找来一个直播流URL,比如东森新闻 http://60.199.188.151/HLS/WG_ETTV-N/index.m3u8,试了一下,还不赖呢!有时候,看到精彩的直播内容,想把某些片段保存到本地。无奈播放器不提供这样的功能。那么,开个小窗给FFmpeg吧,它可以搞定!命令行如...
原创
463097阅读
49评论
45点赞
发布博客于 5 年前

多线程多少算多?

关于多线程的一点思考:真正干活的不是线程,而是CPU;线程越多,干活不一定越快
原创
4814阅读
0评论
2点赞
发布博客于 5 年前

FFmpeg视频转码技巧之二次编码

在转码的应用场景中,有时候我们非常在意目标文件的大小,在这个前提之下,再力求画质的完美。希望通过一种方法能够“精确”计算关键的编码参数,而不想一次一次的试。有办法吗?答案是肯定的。这里可以用到二次编码(two-pass encoding)的技术。关于二次编码,百度百科上是这么说的:二次编码VBR, (2-pass VBR), 在第一次其实是检测收集运动啊亮度等相关数据,这样在第二次编码的时...
原创
17508阅读
0评论
8点赞
发布博客于 5 年前

FFmpeg视频转码技巧之-crf参数(H.264篇)

 昨天,有个朋友给我出了个难题:他手上有一个视频,1080P的,49秒,200多兆;要求在确保质量的情况下把文件压缩到10M以内。这是什么概念呢?按照文件大小10M来计算,码率是:10 x 8 / 49 = 1.6 Mbps。也就比VCD的质量略好一点(注:VCD的标准码率是1150 Kbps)。谈何“确保质量”?mission impossible啊!咱还是现实一点吧。在不明显损失画...
原创
71071阅读
7评论
12点赞
发布博客于 5 年前

Linus谈优秀程序员的三种品质

Linus认为优秀程序员的三种品质;40+岁的程序员,路在何方?
转载
4416阅读
1评论
0点赞
发布博客于 5 年前

软件可以让你少一点种族歧视吗?

你在坚持什么哲学?这些哲学渗透在软件设计里吗?永远不要以貌取人!通过软件改变世界!
翻译
2816阅读
0评论
1点赞
发布博客于 5 年前

【主题演讲】程序员,不是码农

视频地址:http://www.iqiyi.com/w_19rswg9skh.html
原创
4526阅读
5评论
0点赞
发布博客于 5 年前

所有网络通信都应该加密吗?

为已登录的用户采用加密的网络连接会成为一个标准,这是通向网络世界未来最健康的一个方向。我们应该致力于使得HTTPS更加易用、更加快速,最为重要的是,使它默认为已登录的用户服务
翻译
7086阅读
0评论
2点赞
发布博客于 5 年前

软件开发不可与建筑类比

不要盲目地拿软件与建筑来类比,建筑是有几百年历史的成熟行业,而软件才几十年... 在软件行业,我们不是在建造,而是在探索!
翻译
7874阅读
4评论
4点赞
发布博客于 5 年前

Scrum是用来发现问题的

请记住,Scrum是一种发现问题的工具,而不是解决问题的工具。
翻译
4488阅读
1评论
0点赞
发布博客于 5 年前

每日站会是在浪费时间...吗?

每日站会不是状态汇报会!它的主要目的有3个:(1)让团队为一天的合作做好准备;(2)帮助团队感知他们是否能够达成Sprint目标;(3)发现任何让团队慢下来的事情。
翻译
12252阅读
0评论
3点赞
发布博客于 5 年前

单单Scrum是不够的

Scrum只是一个基础框架,是变革的起点!
翻译
7564阅读
0评论
0点赞
发布博客于 5 年前

敏捷实施时的五个不当做法

如何正确实施敏捷?可别误入歧途!你知道的错误做法越多,在具体实施时,你就越能成竹在胸。
翻译
2128阅读
2评论
1点赞
发布博客于 5 年前

敏捷虽好勿盲从

很多公司正在往陷阱里掉,常常表现为,“我们的合作伙伴(或竞争对手)采用了敏捷,因此我们也需要采用敏捷。”请不要盲从...
翻译
3056阅读
1评论
1点赞
发布博客于 5 年前

Sprint回顾会议的一种简单玩法

sprint回顾会议的一种简单开法——只须问团队成员3个问题:他们想开始做什么?他们想停止做什么?他们想继续做什么?
翻译
7755阅读
1评论
4点赞
发布博客于 5 年前

Scrum中的产品需求预审

为了保持产品待办事项(product backlog)的整洁有序,我们需要在sprint计划会议之前召开product backlog refinement会议
翻译
2640阅读
0评论
2点赞
发布博客于 5 年前

最有效地使用PNG之续篇:Zopfli优化

Zopfli的最大特色是,假设你不介意极高的CPU要求,它就是“用完就丢”的一次性优化步骤,你可以应用在任何地方,而且不会受到任何伤害。
翻译
6180阅读
5评论
3点赞
发布博客于 5 年前

最有效地使用PNG:PNGOUT优化

PNG是一种主流的静态图像文件格式,无损压缩。使用PNGOUT工具可以把PNG文件尺寸优化得更小!
翻译
5873阅读
2评论
4点赞
发布博客于 5 年前

传统的项目经理可以担当Scrum Master吗

一个传统的项目经理,只有当他接受改变,并且对变化保持着开放心态和积极态度,他才能做好Scrum Master。
翻译
3245阅读
4评论
2点赞
发布博客于 6 年前

你不会因为实施了Scrum而变敏捷

Scrum不等于敏捷!仅仅在软件开发部门实施Scrum是不够的,这不足以达成真正的敏捷。很多公司忽视了在企业文化、管理风格、流程以及项目执行方法上的必要改变。
翻译
3255阅读
1评论
2点赞
发布博客于 6 年前

我体验过VR,还行吧

对VR的大肆宣传有点过头了。VR相关的技术挑战是深层次的、难以攻克的。当今的VR头戴装置像20世纪90年代的大哥大一样。问题是,它们需要多久来走完手机从1990年到2007年的发展历程?
翻译
9419阅读
3评论
2点赞
发布博客于 6 年前

程序员要有持续产出

优秀的程序员都是行动派!要坚持写代码,最起码要确保用在“做”上面的时间与用在“讨论”上的时间是相当的。
翻译
5027阅读
8评论
11点赞
发布博客于 6 年前

边开火边移动

每天你都得前进一点点。当竞争者对你开火的时候要注意。他们可能只是想逼你忙着应付,让你不能继续前进。
转载
2415阅读
3评论
0点赞
发布博客于 6 年前

FFmpeg续篇:截取视频片段转成GIF动画

前段时间写过一篇文章,介绍了FFmpeg的几个常用的命令行。最近,项目里需要做一个把视频片段转成GIF动画的功能,便于用户分享到微博。惊奇地发现,原来强大的FFmpeg是支持的!可以简单地执行下面的命令行:ffmpeg -ss 25 -t 10 -i D:\Media\bear.wmv -f gif D:\a.gif意思是:将D:\Media目录下的源文件bear.wmv,从第25秒的...
原创
20092阅读
0评论
4点赞
发布博客于 6 年前

管理神话之23:随便多少人你都能管

你所处的管理位置(不管是否在一线),就是要求你去建立信任关系。如果你管理的人数超过了9个,你就在冒着风险不能建立好那种关系。
翻译
2499阅读
1评论
0点赞
发布博客于 6 年前

管理神话之八:我还能做大量的技术工作

管理者之所以存在,就是要有目的地组织。作为管理者,我们最好去创造一个能让人们在其中施展才能、做好工作的环境。别再一头扎进技术细节去解决具体的技术问题,这些事要交给团队去做。
翻译
6702阅读
10评论
8点赞
发布博客于 6 年前

技术宅学会几招FFmpeg

有些时候,我需要对某个视频文件做一些简单的处理。也或者是受亲戚朋友的委托吧(又不好意思推辞,因为人家觉得你是搞技术的,这点小事应该能轻松搞定)。但是,我犯不着为这点事去安装一个笨重的多媒体软件。我也不想去网上随便找个免费的小工具,怕它不干净。总之,我不想安装没有足够信誉的软件。不过,国外的开源软件还是可以信一信的,比如FFmpeg。矫情吧?FFmpeg都是命令行的,用起来肯定不方便。但是,这对...
原创
15196阅读
4评论
12点赞
发布博客于 6 年前

管理神话之三:人人都须被同等对待

人与人是不一样的。我们都是独特的个体。如果我们同等地对待每一个人,我们最终会落入一个不平等的处境。但如果我们公平地对待每一个人,我们将营造一个公平的工作环境。
翻译
2776阅读
0评论
0点赞
发布博客于 6 年前

管理神话之二:只有专家才能做这事

你需要做一件特定的事情,但是平常做那个工作的人偏偏不在——在你的项目里,你碰到过多少次这种情况?你的项目受到什么影响?是不是只能等着那位专家回来?
翻译
5883阅读
4评论
3点赞
发布博客于 7 年前

管理神话之一:100%利用

程序员的工作必须被排得满满的,必须工作在一种100%忙碌的状态吗?
翻译
4897阅读
8评论
3点赞
发布博客于 7 年前

日常管理的五条小建议

有时候,你需要为工作理一理头绪。你需要给自己一些喘息的机会,停下来,思考一会儿。这里有一些小建议,可以帮助你处理好日常管理工作。
翻译
4014阅读
2评论
1点赞
发布博客于 7 年前

谨防串行的状态报告会

怎么做好高管?怎么有效地解决组织里的管理问题?
翻译
2590阅读
2评论
0点赞
发布博客于 7 年前

与客户患难与共

如果你不身体力行地去表现帮助客户有效使用软件的意愿——更重要的是,弄明白他们为什么需要帮助——你不能算是真正完成了软件开发!
翻译
2782阅读
2评论
2点赞
发布博客于 7 年前

那不是Bug,是新需求

我希望,我们全行业都能少花点时间在概念的口舌之争上,别再煞费苦心地把用户反馈区分成“Bug”或是“功能需求”。面对用户反馈,我们应该多花点时间做一些有建设性的事情。
翻译
6011阅读
8评论
7点赞
发布博客于 7 年前

没人比程序员更讨厌软件

我讨厌绝大部分软件,尤其是我自己的,因为我知道做好一个软件有多难!这听起来有些奇怪,但对于软件开发者来说,这却是一种自然而健康的态度。你会发现,这是所有有能力的程序员的共识,也是成长的必经之路。
翻译
7359阅读
11评论
9点赞
发布博客于 7 年前

精益之美甚于帕斯雀(摘自《代码之道》第2章)

精益定义了7种类型的破坏客户价值流的浪费:过量生产、运输、多余动作、等待、过程不当、库存、缺陷;这在软件开发领域又有什么意义呢?
翻译
3718阅读
1评论
4点赞
发布博客于 7 年前

将软件说明书游戏化

我把软件开发称作为一种协作游戏。Stack Overflow就是把软件开发的在线讨论重塑成一种协作游戏;在游戏里,想要“获胜”的唯一方法就是相互学习。
翻译
5608阅读
5评论
2点赞
发布博客于 7 年前

以互联网思维做好客户端软件

加入爱奇艺的时间不长,但我感受到的震撼却不小。在外企打拼了10几个春秋,今年终于有机会进入一家国内顶尖的互联网企业,真真切切地有一番不太一样的体验。
原创
7561阅读
25评论
23点赞
发布博客于 7 年前

训练你的用户

说起用户界面设计,我并不是专家,但我确实有一条自己总会尽力遵循的黄金法则:让正确的事情容易做,并让人难以犯错。
翻译
3291阅读
0评论
2点赞
发布博客于 7 年前

每天专注三件事

你应该问自己这样一个问题:今天我需要做哪三件事?保持简单,专注在重要的事情上!
翻译
5695阅读
1评论
7点赞
发布博客于 7 年前

待办事项不靠谱

工具如同浮云,但是你的大脑和内心将会伴随你一生。学会相信它们。如果你办不到,那就想尽办法去锻炼它们,使得你最终可以信赖它们。如果一件事情真的很重要,你会记得去做的。如果你忘记了,也许有一天你还是会记起来的。如果你一直没有记起来,那也不错啊!
翻译
7570阅读
14评论
8点赞
发布博客于 7 年前

我不需要你喜欢我

在团队管理方面,不要无原则地讨好员工。我不需要你喜欢我!我要赢得的,是你的尊敬!
原创
3820阅读
11评论
5点赞
发布博客于 7 年前

CSDN社区之星专访:我的蜕变之路

原文链接:http://www.csdn.net/article/2014-06-18/2820155
转载
21802阅读
1评论
0点赞
发布博客于 7 年前

并不是所有的程序员都适合做技术管理

我相信,很多程序员都想转做管理。一方面,做管理可以拿到更高的薪水(这在国内基本上也是事实),另一方面,觉得做管理很风光,工作起来很轻松(只须使唤别人干活)。我想提醒这些程序员的是...
原创
4629阅读
6评论
7点赞
发布博客于 7 年前

所有编程皆为Web编程

桌面应用软件已经完蛋了!!!几年来,大部分桌面应用软件都被Web应用代替了。随着网络浏览器进化得越来越强大和健壮,每天都有更多的桌面应用被取代。
翻译
19156阅读
56评论
43点赞
发布博客于 7 年前

程序员大牛 Jeff Atwood 的两本中文书

程序员大牛,StackOverflow.com创始人之一——Jeff Atwood英文博客:http://blog.codinghorror.com 《高效能程序员的修炼》,人民邮电出版社,2013英文原版:Effective Programming: More Than Writing Code购买链接 >>>互动出版网:http://produc...
原创
15459阅读
12评论
13点赞
发布博客于 7 年前

破窗理论

编程是非常注重细节的!如果你不能够掌控这些细节,你就会有一种失控的感觉,而你的项目失控也只是一个时间问题。或许,我们就应该谨小慎微。
翻译
6190阅读
1评论
13点赞
发布博客于 7 年前

网站的评判标准

2011年的时候,我曾经受邀担任Rails Rumble大赛的评委。遗憾的是,因为工作太忙,那年我没有参加。次年,我又一次收到了他们的邀请,于是欣然接受了。Rails Rumble是一个分散式的编程竞赛,每个团队有1 ~ 4名成员,他们来自世界各地,需要在48小时之内用Ruby on Rails做出一个有创意的Web应用,或者开发出另一种Ruby应用框架。在48小时之后,一组专家评委将评选出10名
翻译
3224阅读
0评论
3点赞
发布博客于 7 年前

解决执行力问题的思路

最近见了一位老朋友,闲聊间他提到,他觉得他们公司的执行力不行。虽然他没有问我的建议,但我的心头却留下了这个问题:如果一个公司来找我解决执行力的问题,我该如何着手呢?执行力差是一个结果,但它是由什么造成的呢?只有知道了原因,才能对症下药。我想,首先要搞清楚的是“什么是执行力”。我发现网上有人这样定义:执行力指的是贯彻战略意图,完成预定目标的操作能力。大家可以注意到几个关键词:战略意图、目标和能力。下
原创
6052阅读
3评论
3点赞
发布博客于 7 年前

如何成为优秀的管理者?(摘自《代码之道》第9章)

这是我最喜欢的一篇文章!如何成为优秀的管理者?其实很简单,做好两件事:(1)确保团队能够工作;(2)关心他们,把他们当人看。
翻译
4359阅读
0评论
4点赞
发布博客于 7 年前

敏捷子弹(摘自《代码之道》第二章)

最近面试了几家公司,感觉大家对采纳Scrum流程还是挺感兴趣的。5年前,我翻译了《代码之道》这本书;其中,第二章有一篇文章谈到了敏捷方法。文章的后半部分还对Scrum做了重点介绍。作者原是微软员工,他的一些观点和建议难免会结合微软公司的实践,但总体上来说,他的观点公允,值得大家借鉴,因此也可以算是不错的入门读物吧。(只是我有点汗颜,因为现在重读这篇文章,感觉我当年的翻译确实有点生硬……)
翻译
5047阅读
0评论
6点赞
发布博客于 7 年前

App会取代网站吗?

手机和平板上的应用会取代网站吗?有一些会吧;这也在情理之中。但只有在网站表现得愚蠢之极时,它们才会有机可乘。
翻译
9042阅读
1评论
10点赞
发布博客于 7 年前

《程序员的修炼:从优秀到卓越》译者序

翻译是一件“感动自己、惠及大众”的事情,不仅在于图书面世时的片刻成就感,更在于翻译过程中的专注与坚持。
原创
4678阅读
0评论
7点赞
发布博客于 7 年前

关于多任务的神话

根据Weinberg的计算,哪怕只是在你的工作负荷中增加一个项目,也会严重地影响你的效率。你会损失20%的时间。当你增加第三个项目的时候,你有将近一半的时间浪费在任务切换上面。
翻译
3846阅读
0评论
4点赞
发布博客于 7 年前

程序员的《权利法案》

程序员应有的权利你都要去争取!而且记住:你可以让公司做出改变,要不然你就换一家公司。
翻译
9126阅读
15评论
16点赞
发布博客于 7 年前

95%的bug是由程序员造成的

你应该知道那种感觉。我们所有人都曾碰到过这样的事情:你已经盯着代码看了无数遍,但还是没有发现任何问题。然而,有个故障或者错误始终挥之不去。于是你开始怀疑,一定是你开发程序所用的那台机器出了问题,也可能是操作系统的问题,或者是你使用的工具和库出了问题。肯定是它们的原因!
翻译
5146阅读
3评论
6点赞
发布博客于 7 年前

Jeff Atwood:软件工程已死?

软件工程——这个概念流行过,但现在已经过时了。我们所做的是技艺,而不是工程。在软件开发项目上,控制其实是一种错觉——这是要让项目经理失业的节奏啊!
翻译
6598阅读
12评论
13点赞
发布博客于 7 年前

编程行业里的新行话

Stack Overflow上曾经出现过(后来被删了)的问题:你杜撰过什么编程行话吗?
翻译
13711阅读
9评论
21点赞
发布博客于 7 年前

倾听社区的声音,但别被他们牵着鼻子走

Jeff Atwood带你探索社区的真谛……
翻译
4535阅读
0评论
3点赞
发布博客于 7 年前

《C语言点滴》书评

说起C语言方面的书,你最先想到的是哪一本?不论图书本身是好是坏,反正我想到的是谭浩强的《C程序设计》。那么,为什么赵岩老师还要写一本《C语言点滴》呢?带着这个问题,我翻开了这本书。等一等,我为什么要读这本书?赵老师说,本书的读者对象是各种层级的C语言学习者。我已经学过C/C++,我也不想再学了,不是因为我自命不凡,而是因为我已经不再是程序员了……读这本书,也许我只是为了解开上面的疑惑吧。还有一个问
原创
6018阅读
6评论
8点赞
发布博客于 7 年前

程序员要懂得“大道至简”

程序员有写上一大堆代码的自然倾向,我们应该控制住!我们要意识到,我们所做的每个决定都是一个折中。每一行你欣然带到这个世界来的新代码都需要被调试,需要被其他开发者阅读和理解,并且被维护和支持。如果你不得不写代码,你也须从简洁开始!
翻译
6177阅读
5评论
6点赞
发布博客于 7 年前

程序员要学会读源代码

我们必须阅读别人的代码,因为我们只有理解了那些代码之后才能把我们自己的事情做好。请你不要害怕阅读源代码——不管它看起来有多么可怕,也不管它会把你带向何方,跟它去吧!
翻译
25184阅读
35评论
56点赞
发布博客于 7 年前

低保真的可用性测试

牛人,给你来个突击测验:你怎么知道你的应用程序能够正常工作?当然,也许你的程序通过了编译。也许它通过了所有的单元测试。也许它还成功通过了QA的严酷考验。也许它被成功部署到了一个正式的服务器,或者被打包成了一个安装程序。也许连Beta测试人员都签字认可了。然而,所有这些都不能说明你的程序能够正常工作。用户真的能理解你的应用程序吗?他们能够使用你的程序去完成他们的工作吗?这才是“能工作的应用程序”的定
翻译
4137阅读
0评论
2点赞
发布博客于 7 年前

Tom DeMarco:软件工程这个概念已过时?

在过去的40年里,我们一直在折磨着自己——我们始终无法在预算之内按时完成一个软件项目。但是,正如我前面暗示的那样,这也绝不应该成为最高的目标。实际上,更重要的目标是“改革”——创建能够改变世界、或者让一个公司脱胎换骨或改变其运营方式的软件。
翻译
5339阅读
1评论
2点赞
发布博客于 7 年前

程序员的5个阶段

程序员的5个阶段:新手(Novice),高级初学者(Advanced Beginner),胜任的(Competent),精通的(Proficient),专家(Expert)。流程的提高依赖于“人”的提高;程序员所处的阶段不同,他们需要的激励方式也不同;大部分人都停留在第二阶段:高级初学者。为什么?看看InfoQ上的这个演讲吧:Developing Expertise: Herdin...
原创
470阅读
1评论
0点赞
发布博客于 7 年前

怎样激励程序员?

怎样才能激励程序员呢?有这么一个谬论由来已久……
翻译
7981阅读
10评论
6点赞
发布博客于 7 年前

今天我成为了CSDN博客专家

刚刚收到了来自CSDN的回复,正如我的期待: 尊敬的用户happydeer:您好!您的CSDN博客专家身份已添加。如果有问题请随时与我们联系。感谢您对CSDN博客的支持和贡献!CSDN博客管理员www.csdn.net 我随即回到自己的博客页面,欣喜地看到“专家”徽标被点亮了。Yeah~
原创
8050阅读
32评论
28点赞
发布博客于 7 年前

你是数字佃农吗?

说到底,你必须自己判断哪个更重要:树立起你自己的品牌,还是为别人网站的品牌添砖加瓦?尽管这两个概念未必是矛盾的,我仍然强烈建议读完这篇文章的每一个人,如果条件允许的话,站到“树立自己的品牌”那一边去。
翻译
3875阅读
6评论
2点赞
发布博客于 7 年前

别为了学编程而学编程

请不要为了学编程而学编程!更别为了高工资而从事编程这个行当。我诚挚的建议是,我们应该把时间花在:(1)学习如何贪婪地做研究,并对我们周围的事物是如何工作的有个基本的理解;(2)学习如何有效地与别人沟通。这些技能比单单学会编程要强得多,而且会让你在生活的方方面面受益。
翻译
21187阅读
31评论
79点赞
发布博客于 7 年前

互联网驾驶证

为了让互联网变得更加美好,我们唯有坚持不懈地追求更好的、更简单的、可以重复使用的第三方在线证件。这也是为什么我要敦促大家加入我们的阵营,一起来支持OpenID、OAuth 2.0以及任何其他有前景的“互联网驾驶证”的实现形式。
翻译
4701阅读
2评论
2点赞
发布博客于 7 年前

OpenID倡议:别再创建新的用户名和密码

我已经有50对用户名/密码了。我根本记不住它们。再多一对又何妨?……如果你是一位软件开发者、你在做一个需要用户登录的应用程序,请考虑采用OpenID,而不是让用户创建新的用户名/密码来继续玷污这个世界。在眼下,我看到的唯一有希望的只有OpenID(尽管它饱受非议)。
翻译
10654阅读
4评论
5点赞
发布博客于 7 年前

我在年会上的“吐槽”致辞

挥手告别2013~ 让阳光照进2014!
原创
3732阅读
0评论
0点赞
发布博客于 7 年前

真相了!关于“写书”这件事

有生以来,你干过的最后悔的10件事有哪些?如果要问我,“写书”必定是其中之一。为什么呢?
翻译
5920阅读
14评论
19点赞
发布博客于 7 年前

从Perforce到Git的迁移

公司经过多次兼并、收购之后,开发团队使用的工具自然会出现鱼龙混杂的现象。就拿源代码管理工具来说,我们同时在使用的就有Perforce、Team Foundation、Subversion等。为了节省成本,也为了统一工程实践(以提高工作效率),我们决定让所有团队迁移到Git。
原创
9908阅读
4评论
2点赞
发布博客于 7 年前

版本控制之最佳实践(Git版)

现如今,应该每个开发者都在使用版本控制工具了吧。然而,如果你理解版本控制的基本规则,你便能更好地发挥它的效用。在此,我们汇总了一些最佳实践,希望你在使用Git做版本控制时能够了然于心。
翻译
9319阅读
2评论
4点赞
发布博客于 7 年前

Gitflow工作流程

在工作场合实施Git的时候,有很多种工作流程可供选择,此时反而会让你手足无措。本文推荐了一种最常用的Git工作流程。
翻译
24930阅读
3评论
9点赞
发布博客于 7 年前

无我编程:你的工作不代表你

如果你的工作不代表你,接受别人对你工作的批评就要容易得多了!
翻译
4984阅读
1评论
6点赞
发布博客于 8 年前

《程序员的修炼:从优秀到卓越》目录及部分精彩内容

《高效能程序员的修炼》之续集——《程序员的修炼:从高效到卓越》目 录1.    绝地反击之术待办事项不靠谱今天上班可以放羊你没有说服我真正失败的项目激情造就天才勿以专家自居行百里者半九十管理中要有信任博伊德迭代法则十年磨一剑 2.    编程之道切忌一根筋破窗理论要么热爱,要么离开简单之美乐于删代码你是程序员这块料吗你循规蹈矩吗科里定律:坚守一个目标最牛的编码套路孤独的人是可耻的你有编程伙伴吗软件
原创
6603阅读
7评论
4点赞
发布博客于 8 年前

别盲目听从你的用户

你的应用程序或网站开始以一种合理的方式收集有用的用户活动数据了吗?忽略用户反馈可能让你最终难逃失败的命运,但盲目地听从每一个用户的请求也会让你必败无疑。
翻译
3403阅读
1评论
3点赞
发布博客于 8 年前

一个好的创意值多少钱?

如果你想取得成功,不要再担心没有伟大的创意了,转而去专注于培养卓越的团队吧!
翻译
6843阅读
11评论
8点赞
发布博客于 8 年前

你的团队能通过电梯测试吗?

你团队里的每个人都应该能通过由陌生人主持的“电梯测试”——在60秒之内,清晰地解释他们在做什么,以及为什么人们会在意他们正在做的事情。
翻译
7621阅读
8评论
17点赞
发布博客于 8 年前

最有效的一种技术领导是“以身作则”

对于软件开发者来说,以哄骗或痛斥的方式让他们服从不是一个有效的激励方法。如果你想提高团队的工程水平,你需要一个领导,而不是靠一个训导员去强制执行。
翻译
4984阅读
0评论
6点赞
发布博客于 8 年前

磨刀不误砍柴工

作为一名软件开发人员,你该如何磨快你的锯子?
翻译
9513阅读
24评论
26点赞
发布博客于 8 年前

费茨定律的另一面

如果我们想要用户点击某些UI元素,为了获得最大的点击率,我们应该把它们做得大一点,并且尽可能把它们放在屏幕的角落或边缘。接下来的问题是,如果我们不想让用户点击某些UI元素,我们应该做些什么呢?
翻译
4933阅读
0评论
3点赞
发布博客于 8 年前