msgbartop
用铅笔写日记,记录那最原始的美丽
msgbarbottom

我也来说说射手播放器

最近射手播放器被炒的很火呀,这是不可否认的事实。几乎网上到处是关于它的新闻.
先是什么“在官方博客发表声明谴责QQ player不尊重开源”,后又被细心网友举报自身不遵守开源协议.这次乌龙事件真的搞得射手很没有面子。自己刚刚在大家心目中树立起来的国内开源先行者的高大形象被瞬间击得粉碎.

这也引起了广大的网友的唇枪舌战,很是热闹。
本来我是不打算蹚这趟浑水的,不过心里有些话真的是不吐不快。本人虽说没有对开源事业做过太大贡献,不过也算是一名开源爱好者,对开源的热情也是很高的.

在我看来,这次事件射手的确是不太地道,在自己还没有做到尽善尽美的情况下,还去高调抨击别人。
这种做事手段真的是让明眼人看不过去.

毫无疑问,射手播放器是建立在FFmpeg基础上的,用FFmpeg issue 上某位网友的话来讲,离开了FFmpeg,射手播放器就是一个空壳.而FFmpeg源码本身是基于GPL 和 LGPL 发放的,它要求任何基于它的项目都得按照自身情况,以上述的两个LICENSE中的一个开放项目源码.

网友们发现,射手播放器是遵循前者的,也就是GPL.这点在射手项目的SVN上也是可以看到的。
http://trac.splayer.org/browser/svplayer/License.txt (为此,我还特地的去读了读,为的是看看射手到底是不是被冤枉,还是怎么的.
附 中文译本的地址: http://www.thebigfly.com/gnu/gpl/ )

并且同时发现射手在代码库里面没有提供全部的源码,在某些分支下只提供了编译好的类库.

这个显然是违背GPL协议的(详见第三点的a小点,以及关于源码的定义),当然射手对此也有解释,一堆一堆。
不过纵然你射手有千万个理由,有什么苦衷,你也不能因此不彻底开放源代码。要么你就不要声称自己遵循GPL,你可以去选择更加宽松的LGPL呀,又没人逼你. 古来鱼和熊掌不可兼得. 我认为cnbeta某位仁兄比喻的很恰当,"既想当婊子,又要立牌坊".

为什么人人都能严格遵循(比如大名鼎鼎的Mplayer),而你射手就要搞特殊呢?看到你在FFmpeg issue 上极力的为自己争辩,你要知道你代表是整个中国的开源脸面.我可不希望你也被钉在FFmpeg 的耻辱柱上面。

我认为,作为一个开源爱好者,必须要严格遵循开源协议。如果都像臭名昭著的暴风影音那样,那么开源也就没人再去热衷.

就拿java里面的Spring 框架来讲,如果它是基于GPL发放的话,那么世界上所有的用到它的J2EE项目,都得遵循它,开放所有代码,哪怕没钱赚了也必须得开放源码。
没有为什么,要么你就不要用该框架. 当然也有一些肆意践踏开源协议的,抱着一副死猪不怕开水烫的态度,“我就用了,怎么的吧”.对于这种未开化的野蛮人,我们还能说什么?

当然这只是一个假设,Spring 实际上是基于Apache License Version 2.0 发放的,见下图:

[caption id="" align="alignnone" width="578" caption="spring in frme"]spring in frme[/caption]

这个可比GPL宽松多咯. :)

最后,对射手播放器今后的方向进行观望,不可否认的是,我的情绪已经开始不太稳定了 囧rz

秀一下我的火狐的插件

我不得不说,火狐浏览器是我用过的最爽的浏览器。

而它最吸引人的也就在于她的数以千计插件和在它们背后无数的插件开发者.

今天就来秀一秀我的ff必备的插件,当然,可能还有很多我没用过、没听说过的优秀的插件.

看图(由于一屏截不下来,所以截了两次,后期用PS拼接了一下..破绽百出呀):

[caption id="" align="alignnone" width="536" caption="firefox plugins"]firefox plugins[/caption]

PS:随着win7 发布和 ubuntu 9.10 发布,我已经刻好盘打算安装了. 为了避免重装ff丢三落四的找插件,截图以记录.

在centos上用mod_jk桥接apache与tomcat

最近在搞Volit提供的免费VPS,感觉有了自己的一台24x7不关机的服务器就是不一样,心里很是开心,不过现在的虚拟主机、VPS基本上都是LAMP这样的一个状况,LAMP的这个P就是指php 或者Perl,Python.
php这门语言虽然我草草学过,有了那么一点Base,姑且算是一个php starter吧~~
不过我感觉还是java来的更好一点,不管在写法规范,还是程序思想上,还是java舒服点,于是我便萌发了把java环境搭建到远程的centos系统上。

安装Java并不是什么难事,一个命令 yum install java-VERSION-openjdk 即可,这样的好处是环境变量也会自动配置好的,呵呵
然后就是tomcat(当然java的web容器并不止这一个,不过我比较喜欢),它的二进制程序文件包可以在apache官网下载到。

最后就是如何让apache和tomcat之间开始桥接了,我搜索了一下,用到了apache的一个模块,叫mod_jk.so
关于这个mod_jk,着实让我郁闷了一阵,原来它有两个版本,一个是mod_jk2,一个是mod_jk.
刚开始,从名字上看,我想当然的以为mod_jk2是较新版本。可是我怎么也搜索不到下载地址
后来在apache的Archive镜像里面找到了,一看“最后修改时间”,吓死我了,2004年!!

后来才知道mod_jk2已经停止开发,mod_jk是现行的版本.最新版本是jk-1.2.28。
下载地址:http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/linux/jk-1.2.28/i586/

当然你也可以下载源码进行编译安装,而且呆会用到的workers.properties配置文件的sample也包含在源码包里面。
http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.28/tomcat-connectors-1.2.28-src.tar.gz

搞清楚这些事情,接下来就好办了,复制mod_jk.so 到 apache下的modules目录,在httpd.conf里面load一下.
然后复制源码包里面的workers.properties文件到apache下的conf目录,打开,依照里面的说明和注释大概也可以看懂mod_jk的工作原理.

先指定tomcat的路径
workers.tomcat_home=/usr/local/tomcat
再制定jdk的路径
workers.java_home=/usr
然后就是一个worker的列表
创建一个worker,也可以是多个
worker.list=worker1 (,worker2,worker3...)
指定此worker1的类型
worker.worker1.type=ajp13
指定worker1的端口号
worker.worker1.port=8007
worker.worker1.port=8009
指定worker1的服务器路径
worker.worker1.host=localhost

以及下面一系列属性,可以参照
http://tomcat.apache.org/connectors-doc-archive/jk2/jk/workershowto.html#A%20sample%20worker.properties
去配置

worker.worker1.lbfactor=50
worker.worker1.cachesize=10
worker.worker1.cache_timeout=600
worker.worker1.socket_keepalive=1
worker.worker1.socket_timeout=300

配置好后,在apache的配置文件里面通过
JkWorkersFile /etc/httpd/conf/workers.properties 指定其位置

日志路径
JkLogFile /var/log/httpd/mod_jk.log
日志等级
JkLogLevel info
日志时间格式
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
指定增加或去除哪些功能模块
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
记录请求的格式
JkRequestLogFormat "%w %V %T"
指定哪些目录下的文件要通过tomcat转义,编译并指定列表中的哪个worker
JkMount /examples/servlet/* worker1
JkMount /examples/*.jsp worker1

以上这些建议写在VirtualHost节点里面,如果apache下有多个站点的话。
至此,就算是都配置好了,很多配置节点参见:http://tomcat.apache.org/connectors-doc-archive/jk2/jk/aphowto.html
tomcat目录/ sh startup.sh 启动tomcat.
apache目录/ bin/apachectl start 启动apache.
输入 http://localhost/ 看看吧
_________________________________________
我的jsp站点:http://java.xiazhengxin.com.cn
Servlet测试:http://java.xiazhengxin.com.cn/examples/servlets/
JSP测试:http://java.xiazhengxin.com.cn/examples/jsp/

SourceForge.net 2009社区奖项开始投票啦

[caption id="" align="alignnone" width="205" caption="活动logo"]sf vote logo[/caption]

一年一度的sf.net 社区大奖已经拉开了帷幕,这也是开设这项活动的第四个年头了。

经过了将近一个月的网络提名,从今天(也就是6月24号)开始正式票选最佳项目等奖项了

本次票选将在7月20号截止,而最终的票选结果将会在23号公布.

下面是此次活动的时间表

  • May 6 - 提名开始
  • May 29 - 提名结束
  • June 22 - 候选名单公布,投票开始
  • July 20 - 投票关闭
  • July 23 - 公布获胜者 at OSCON

之前的06,07,08年度获得殊荣的开源项目,像7-zip(这次好像没有进入提名~~)、notepad++、audacity、openoffice等现在依然影响我们的生活.这就是开源软件的魅力,呵呵

本次社区大奖较去年新增了几个奖项,分别是:

Best Commercial Open Source Project (最佳商业开源项目)NEW

Best Project for Academia(最佳项目『学院』) NEW

Best Project for Government(最佳项目『政府』) NEW

Most Likely to Change the Way You Do Everything(最能改变你做事情的方法) NEW

Best Visual Design(最佳设计) NEW

我已经投上了我宝贵的一票,你们呢?? 8-)

SourceForge.net Update: 2009-04-30 Edition

Oh!  We also plan to kick off our2009 Community Choice Awardsprogram next
week.  In the meantime, start thinking about the projects you want to
nominate!

== March Project of the Month: dotProject ==

dotProject is a Project Management tool written in PHP that aims to be a
best-of-breed project management system. Rather than a generic container
approach like a CMS or groupware app, we decided that we would do a generic
project management tool. We are not industry (or use specific), it's not a
project planning tool - it is designed to serve as an information gathering
and progress reporting tool.

Read more: http://sourceforge.net/community/potm-200904/

== Statistics and Top Projects ==

Daily SourceForge.net Stats for 29-Apr-2009:

11,132,493 pages served
2,128,422 files downloaded (25.1 TB)
104 new projects approved

Top 25 Projects on 30-Apr-2009:

1. Openbravo ERP
http://sourceforge.net/projects/openbravo
Openbravo ERP is a Web based ERP for SME, built on proven MVC & MDD
framework that facilitate its customization. | IMPORTANT NOTICE. Openbravo
ERP project has been migrated to a new home
http://forge.openbravo.com/projects/openbravoerp

2. ZK - Simply Ajax and Mobile
http://sourceforge.net/projects/zk1
ZK is Ajax Java framework without JavaScript. With direct RIA, 200+ Ajax
components and markup languages, developing Ajax/RIA as simple as desktop
apps and HTML/XUL pages. Support JSF/JSP/JavaEE/Hibernate/.., and Ajax
script in Java/Ruby/Groovy/Python/..

3. ADempiere ERP Business Suite
http://sourceforge.net/projects/adempiere
ADempiere Business Suite ERP/CRM/MFG/SCM/POS done the Bazaar way in an open
and unabated fashion. Focus is on the Community that includes Subject
Matter Specialists, Implementors and End-Users. We are a community fork of
Compiere.

4. Zenoss Core - Enterprise IT Monitoring
http://sourceforge.net/projects/zenoss
Zenoss Core is an enterprise network and systems management application
written in Python/Zope. Zenoss provides an integrated product for
monitoring availability, performance, events and configuration across
layers and across platforms.

5. Notepad++
http://sourceforge.net/projects/notepad-plus
Notepad++, a source code editor and MS Windows Notepad replacement, has the
mission to offer a greener environment. By optimizing its routines, it
results in reducing CPU power consumption then reducing the world carbon
dioxide emissions.

6. phpMyAdmin
http://sourceforge.net/projects/phpmyadmin
phpMyAdmin is a tool written in PHP intended to handle the administration
of MySQL over the Web. Currently it can create and drop databases,
create/drop/alter tables, delete/edit/add fields, execute any SQL
statement, manage keys on fields.

7. OrangeHRM - Human Resource Management
http://sourceforge.net/projects/orangehrm
OrangeHRM is an Open Source Human Resource Management System that covers
Personnel Information Management, Employee Self Service, Leave, Time &
Attendance, Benefits, and Recruitment. Tags: HRM, HRMS, HCM, HRIS, EHRMS,
Human Capital Management

8. Audacity
http://sourceforge.net/projects/audacity
A fast multi-track audio editor and recorder for Linux, BSD, Mac OS, and
Windows.  Supports WAV, AIFF, Ogg, and MP3 formats.  Features include
envelope editing, mixing, built-in effects and plug-ins, all with unlimited
undo.

9. PostBooks ERP, accounting, CRM by xTuple
http://sourceforge.net/projects/postbooks
Free open source ERP, accounting, CRM package for small to midsized
businesses. ERP client runs on Linux, Mac, and Windows (built with open
source Qt framework). Business logic resides in PostgreSQL database.
International ERP, accounting, and CRM tools.

10. ScummVM
http://sourceforge.net/projects/scummvm
ScummVM is a cross-platform interpreter for several point-and-click
adventure engines. This includes all SCUMM-based adventures by LucasArts,
Simon the Sorcerer 1&2 by AdventureSoft, Beneath a Steel Sky and Broken
Sword 1&2 by Revolution, and many more.

11. Mumble
http://sourceforge.net/projects/mumble
Low-latency
, high-quality voice communication for gamers. Includes game
linking, so voice from other players comes from the direction of their
characters, and has echo cancellation so the sound from your loudspeakers
won't be audible to other players.

12. SW Test Automation Framework
http://sourceforge.net/projects/staf
The Software Testing Automation Framework (STAF) is a framework designed to
improve the level of reuse and automation in test cases and test
environments. The goal of STAF is to provide a complete end-to-end
automation solution for testers.

13. Sweet Home 3D
http://sourceforge.net/projects/sweethome3d
Sweet Home 3D is an interior design Java application for quickly choosing
and placing furniture on a house 2D plan drawn by the end-user, with a 3D
preview.

14. KeePass Password Safe
http://sourceforge.net/projects/keepass
KeePass Password Safe is a free, open source, light-weight and easy-to-use
password manager for Windows. You can store your passwords in a
highly-encrypted database, which is locked with one master password or key
file.

15. ffdshow tryouts
http://sourceforge.net/projects/ffdshow-tryout
ffdshow is a DirectShow filter and VFW codec for many audio and video
formats, such as DivX, Xvid and H.264. Over 70 bugs have been fixed, codecs
have been updated, and support for a few new formats has been added in the
tryouts. Vista is now supported.

16. webERP web-based ERP  Accounting
http://sourceforge.net/projects/web-erp
Integrated accounting ERP system. Multi-language/currency/

inventory
locations. Full double entry. SO/AR/PO/AP/GL/Bank/Sales Analysis.
BOMs/assemblies/kit-sets. Flexible pricing. Emailable pdf reports. Fast PHP
created html for any browser.

17. Scintilla
http://sourceforge.net/projects/scintilla
Scintilla is a free source code editing component which includes useful
features such as syntax styling, error indicators, folding, code completion
and call tips. The project includes SciTE (SCIntilla based Text Editor).

18. xVideoServiceThief
http://sourceforge.net/projects/xviservicethief
xVideoServiceThief is a tool for downloading your favourite video clips
from a lot of video websites. xVideoServiceThief also provide you the
ability to convert each video in most popular formats: AVI, MPEG1, MPEG2,
WMV, MP4, 3GP, MP3 file formats.

19. DeSmuME
http://sourceforge.net/projects/desmume
DeSmuME is a Nintendo DS emulator.

20. net-snmp
http://sourceforge.net/projects/net-snmp
net-snmp
provides tools and libraries relating to the Simple Network
Management Protocol including: An extensible agent, An SNMP library,tools
to request or set information from SNMP agents, tools togenerate and handle
SNMP traps, etc.

21. MediaInfo
http://sourceforge.net/projects/mediainfo
Get technical information and tags of a lot of multimedia files. Supported
formats : - Video : AVI/OGM/MKV/MPG/VOB/MP4/3GP/... - Audio :
MP3/OGG/MKA/MP4/AAC/...

22. PhpGedView
http://sourceforge.net/projects/phpgedview
PhpGedView is a revolutionary genealogy program which allows you to view
and edit your genealogy on your website. It has full privacy functions, can
import from GEDCOM files, and supports multimedia. It also simplifies
family collaboration.

23. XBMC Media Center
http://sourceforge.net/projects/xbmc
XBMC Media Center is a free cross-platform media player and entertainment
hub software for Linux, Mac, Windows, as well as the Xbox game-console.
XBMC is capable of playing back all popular video, audio, and picture
formats out-of-the-box.

24. Fink
http://sourceforge.net/projects/fink
Fink is an attempt to bring the full world of Unix OpenSource software to
Darwin and Mac OS X. Packages are downloaded and built automatically and
installed into a tree managed by dpkg, all with full dependency tracking.

25. aTunes
http://sourceforge.net/projects/atunes
aTunes is a powerful, full-featured, cross-platform player and manager,
with audio cd rip frontend. Currently supported formats are mp3, ogg, wav,
wma, flac, mp4, ape, mpc, mac, radio streaming and podcasts.