信件
关于《Linux Journal》的黄金时代
在过去的几期《LJ》中看到读者对杂志内容感到失望后,我觉得我必须提出不同的观点。
就像Silverton先生在2007年1月刊中描述的设置一样,我从1995年开始使用Linux,最初安装Red Hat失败,最终选择了令人惊叹的Slackware发行版,它来自无数个碰运气的软盘。同样,我也以相当业余的方式使用了Linux多年。那时,我订阅了《Linux Journal》,但只发现一两篇文章能吸引我的注意力。后来,我创办了一家基于Linux的公司,为各种类型的企业设计基于Linux的解决方案。即使成为Linux“专业人士”之后,我也并没有更被《Linux Journal》的整体质量所吸引。
然而,最近几个月,我一直对大多数文章的质量感到非常惊讶。我现在从头到尾阅读这本杂志。即使是那些对我来说“浅显”的文章,也常常包含着一些我可能会觉得有趣的信息瑰宝。
更吸引人的是近期主题的惊人及时性。《LJ》从来都不是真正的前沿刊物。毕竟,这是一本月刊。然而,最近,我有连续几期杂志的主题与我当前的个人兴趣非常契合,我对你们报道的广度感到高兴。你们充分满足了业余爱好者(我对更多桌面类型的问题是业余爱好者)和专业人士(我对开发和服务器问题是专业人士)的需求。
总而言之,在我订阅的十年里,我从未对《Linux Journal》的多样性、范围、深度和准确性感到如此满意。请继续保持出色的工作。
—
Sean C. McCord
朋友之间,几个零算什么?
引自2007年2月刊《Linux for Suits》:“他们为互联网服务预留的15mbps带宽不到其容量的1%。”
每秒15兆比特确实太可怜了。
—
Ian Stirling
显然,那应该是Mbps。—编者注。
朋友之间,几个字母算什么?
在“White Box Phone”[2007年2月刊]中,您说OpenMoko手机来自Funambol。我认为您想说的是FIC。
Funambol是SyncML和推送移动电子邮件背后的公司。
—
Bill Weinberg
总有一天别人可能需要解读你的代码
我已经对Dave Taylor的专栏发表了评论,您知道我支持他做这个专栏以及它所教的内容。我的评论不是对该专栏的批评,而是我希望被视为对其的补充。
当人们“匆忙”或做一些“快速而肮脏”的事情时,将一系列操作放在“一行”上(通过管道连接在一起)的冲动是崇高的,也是可以理解的。但这对于初学者或“半生产”工作来说并不是最明智的选择。
是的,这有争议,但我想引用贵杂志中的另一篇文章,第14页,“他们说过”[2007年2月刊],第三句话,“编写最简单的东西……”
随着时间的推移,我了解到,作为“下一个家伙”,试图阅读和理解“在我之前的那个家伙”编写的代码,将这样的步骤序列分解成组成部分,可以使可维护性和可支持性大大提高。
虽然原始状态“足够容易”使用,特别是对于演示,但在工作场所,我们应该鼓励每个人在编写脚本时记住“下一个家伙”(而且总会永远有下一个家伙)。
在可能被其他人使用且不是每五分钟运行一次的环境中,我会使用以下添加内容重写此脚本
# Comment this line out for debugging. trap "/bin/rm -f $Tmp1 $Tmp2 $Tmp3 $Tmp4" exit Tmp1=/tmp/tmp.1.$$ Tmp2=/tmp/tmp.2.$$ Tmp3=/tmp/tmp.3.$$ Tmp4=/tmp/tmp.4.$$ grep 'google.com/search' $ACCESSLOG | \ awk '{print $11}' > $Tmp1 < $Tmp1 cut -d\? -f2 | cut -d\& -f1 > $Tmp2 sed 's/+/ /g;s/%22/"/g;s/q=//' < $Tmp2 >$Tmp3 sort $Tmp3 | uniq -c > $Tmp4 sort -rn $Tmp4 | head -5
是的,这似乎很浪费。(我上面提到五分钟是为了指出,如果运行频率高于每半小时一次,在负载适中的机器上,可能需要调整方法。)许多人会指出这种操作方法存在许多问题,其中之一将是“写入磁盘太多会浪费大量时间”。是的,确实如此。我从来都不是“保存PID”一派的成员,也不是“为了工作安全而使故障排除变得困难”一伙的。写入磁盘的成本远低于我的工资。如果运行时间增加20%,只要它能可靠地给出正确的答案,谁会在乎呢?
使用我上面展示的步骤序列,那些必须弄清楚我到底做了什么的人可以快速找到问题的根源。现在,他们所要做的就是注释掉trap行,并查看临时文件的输出,以了解发生了什么以及如何修复它。trap行在脚本退出时执行临时文件的rm(也就是说,它在自身之后进行清理)。他们还可以更好地了解流程的流程,并更快地获得理解。
感谢你们的精彩文章和有益的见解!
—
Michael C. Tiernan
此时此地,彼时彼地
在/var/opinion [2007年2月刊]中,Nick Petreley提出了进一步进入大众桌面市场的策略。除其他外,他说,“不要删除功能”。
我完全同意。KDE已经看到了源源不断的新增功能,但不幸的是,一些旧功能被删除了。现在已经不可能将最大化的窗口部分移出视口。你必须先取消最大化,就像微软一样。你也不能像过去那样双击顶部的栏来将其缩小到只有栏。Konqueror不再允许你右键单击文件并看到删除它的选项,而只是将其移动到回收站。(幸运的是,有一种方法可以做到这一点:选择文件并按Shift-Delete。)
据推测,该策略是在一定程度上向微软靠拢。如果桌面级Linux变得完全相同,那么人们为什么要购买它而不是现成的微软产品呢?
当微软从命令行(MS-DOS)转向Windows时,Linux也朝着相同的方向扩展,保留了旧的功能。这是其优势的一部分。同样的逻辑也适用于桌面Linux:如果我们删除功能,我们就会走向失败。
—
Chris Trayner
据我所知,您关于将文件移动到回收站的说法是正确的。但是,我刚刚将一个最大化的窗口部分移出了虚拟桌面,并且我也通过双击标题栏来着色(将窗口缩小到其标题)。我从KDE镜像获得了KDE 3.5.6,并在Kubuntu 6.10 AMD64上运行它。—编者注。