更多

精选译文

Linux什么时候才能足够完美?

前几天,我的同事Ken Starks在FOSS Force上发表了一篇文章,内容依然是他喜欢谈的老调:在 Linux 上掉链子的倒霉玩意儿。这次他抱怨的是在 Mint 上使用 KDE 时出现的字体问题。这种文章不是 Ken 第一次写了。过去他写过一堆文章来抨击 Linux 不同发行版上一直未曾修复过... 详情»
01月30日 14:28 更多相关: 10,495

如何使用NetCat或BASH创建反向Shell来执行远程Root命令

反向shell(Reverse shell)是一种往远程机器发送shell命令的技术,当远程机器处在防火墙等其它东西后面时,这种技术会变得非常有用。你也许会说,“一个普通的shell或简单的SSH通道不是也能实现这些吗?”不,无法实现。在网上,我看到很多人对普通shell和反向shell... 详情»
12月20日 8:35 更多相关: 8,706

Go语言之于系统管理员

“就算我从来没有直接接触过Go并发原语,为了其部署的随意性,我确信我会用Go重写所有我的命令行程序。”这是我以前说过的话。我认为这句话值得写一篇更详细的博文。NKOTB大多深入了解我的人都知道关于我的两件事情:对技术决策,我是相当实... 详情»
08月20日 9:21 更多相关: 8,735

人性化的编程语言

这是事实,不少程序员在编程工作中痛苦的压抑着自己某些强烈的情绪。就我所知,以及基于这些年在这个行业里的观察发现,其中一个原因归咎于我们使用的这些纯理性风格的编程语言。在软件开发世界里,我们的“语言”里所有带感情色彩的词汇全部被丢弃,剩下的“词... 详情»

为什么程序员会被当作异类

我有不少这样的经历,朋友给介绍了一个女孩,我们初次见面,当我说起我是程序员时,对方都露出一种异样的表情,有些比较心直口快的女孩会直接问:我听说你们做程序员的都有些那个…. 她们所说的那个我想应该是“木纳”,“内向”,“不爱说话&r... 详情»
06月28日 8:26 更多相关: 8,936

声明式编程和命令式编程的比较

先统一一下概念,我们有两种编程方式:命令式和声明式。 我们可以像下面这样定义它们之间的不同:命令式编程:命令“机器”如何去做事情(how),这样不管你想要的是什么(what),它都会按照你的命令实现。 声明式编程:告诉“机器”你想要的是什么(what),... 详情»
06月27日 8:24 更多相关: 6,987

结对编程——我的噩梦

自从极限编程诞生起,我就一直在听说结对编程是个好东西。所有的敏捷传教士们都在告诉我们:结对编程能提高代码质量,有助知识共享,甚至激发开发效率,同时,还能深度拉近程序员之间的感情关系。 那些拒绝结对编程的人都被认为是独行客,懒蛋,或社交恐惧症患者。然而,我不属... 详情»
06月25日 8:42 更多相关: 7,499

程序员如何成功的假装在很努力的工作

这篇文章要讲的是程序员如何假装在很努力的工作。有两种完全不同的动机会促使一个程序员做这种假装: 第一种,你是个懒货——想不劳而获。如果你是这种人,我和你同事都会鄙视你。你不需要看下面的内容了。这篇文章完全不是为你写的!图1:适当的带一个眼镜,你可... 详情»
06月24日 9:17 更多相关: 8,372

Linux知识:为什么要用字符~来表示home目录

在Unix风格的操作系统里(包括BSD, GNU/Linux 和 Mac OS X),通常用波浪号~来表示当前用户的主目录(home目录):例如,如果当前用户的home目录是/home/bloggsj,那么,输入cd或cd ~或cd /home/bloggsj或cd $HOME都是等效的。这种习惯源自于1970年代流行的Lear-Siegler ADM-3A... 详情»
06月19日 8:46 更多相关: 8,943

提升软件开发者生产力的 10 个提示

在参加了一些以生产力和时间管理为主题的研讨会并阅读了一些关于这个话题的图书以后,我了解了一些深奥的概念并且对我曾经的工作方法产生了一些深刻的领悟。运用这个新的知识,我完全重新设计了我的工作流框架,而这极大地推动了我的生产力。 我想与你分享一些最重要的技巧,它... 详情»

Linux命令行里的“瑞士军刀”

这里说的“瑞士军刀”是指那些简单的一句命令就能完成其它高级语言一大片代码才能完成的工作。 下面的这些内容是Quora网站上Joshua Levy网友的总结: 通过sort/uniq获取文件内容的交集、合集和不同之处:假设有a、b两个文本文件,文件本身已经去除了重复内容。下面是... 详情»

代码里的命名规则:错误的和正确的对比

编程初学者总是把大量的时间用在学习编程语言,语法,技巧和编程工具的使用上。他们认为,如果掌握了这些技术技巧,他们就能成为不错的程序员。然而,计算机编程的目的并不是关于精通这些技术、工具的,它是关于针对特定领域里的特定问题创造出相应的解决方案,程序员通过相互... 详情»

网络里的“逆世界”

邻居偷用我的无线网,我可以设置访问密码,但我决定捉弄他们。 拆分网络 我先把网络分成两部分——一部分受信,一部分不受信。受信的部分使用一个网段,不受信的是其它网段。我使用DHCP服务器限制MAC地址,过滤无关地址。 /etc/dhcpd.conf ddns-updates off; ddns-... 详情»
06月06日 19:44 更多相关: 4,603

“不穿裤子”驱动开发——企业文化很重要!

在SEP公司,我们非常喜欢谈论我们的企业文化和我们这个大家庭。我们不是光说不练,我们有各种的活动、聚会,和出游。所有的这些活动里都少不了一样东西,那就是吃的,这是我们都能滔滔不绝的事情——我们爱吃,爱吃好吃的! 这里面我最喜欢的一项活动是公司举办的创... 详情»

结对编程是每个软件公司都该采用的开发方式

如果说这世界上有一家公司懂“软件开发”,那非 Pivotal Labs 莫属。Pivotal公司的Edward Hieatt和他的同事都是从事敏捷开发培训,指导结对编程工作,在跟客户合作中,他们发现有大量的创业公司在成长壮大的过程中,都会经历不同程度的企业开发文化上的变质侵蚀。跟P... 详情»
06月04日 17:09 更多相关: 3,516