Linux的cycle日历(你懂的)

Linux的cycle日历(你懂的)

这是一个开源项目:http://cycle.sourceforge.net/,其是用python写的。在项目的主页上说,这是一个给妇女用的日历程序,叫cycle,周期,给妇女的,我不多说了,你懂的。下面是一些介绍(请大家注意学习相关的英文单词)

当然,这个小程序不单单只是查看妇女的“周期”(menstruation),其还提供了以下的功能:

  • 第一次的周期 – 在日历上显示为粉色。menstruation周期长度由用户输入的六次周期取平均值确定。
  • 排卵期(Ovulation day)- 在日历上显示为亮绿色,
  • 受精期 (Fertile period)- 在日历上显示为绿色
  • 安全期(Safe Sex)
  • 预产期(Date of birth)
  • 还允许你记一些notes – 医生建议你服用一些荷尔蒙避孕药(hormonal contraceptive)

下面是屏幕截图 ——

Screenshoot

注意以下的免责条款:

  • 本程序并不能成为一种避孕的方法。
  • 本程序也不能阻止各种性传染病,如:AIDS
  • 本程序更不能取代你的妇科医生。

(全文完)

好烂啊有点差凑合看看还不错很精彩 (2 人打了分,平均分: 4.00 )
Loading...
图解SQL的Join

图解SQL的Join

对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇文章(实在不清楚为什么Coding Horror也被墙)通过 文氏图 Venn diagrams 解释了SQL的Join。我觉得清楚易懂,转过来。

假设我们有两张表。

  • Table A 是左边的表。
  • Table B 是右边的表。

其各有四条记录,其中有两条记录是相同的,如下所示:

id name       id  name
-- ----       --  ----
1  Pirate     1   Rutabaga
2  Monkey     2   Pirate
3  Ninja      3   Darth Vader
4  Spaghetti  4   Ninja

下面让我们来看看不同的Join会产生什么样的结果。

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (14 人打了分,平均分: 5.00 )
Loading...
Sony PS3 Root Key 被破解

Sony PS3 Root Key 被破解

著名的黑客George “GeoHot” Hotz(其也帮助破解了iPhone)宣称破解了Sony P3的root key(也称front door key),并将这个key公布于 http://www.geohot.com/ (墙)。不但发布了root key,还做了一个hello world。Youtube上也有一个相关的视频:http://www.youtube.com/watch?v=UkLSXsCKDkg

erk: C0 CE FE 84 C2 27 F7 5B D0 7A 7E B8 46 50 9F 93 B2 38 E7 70 DA CB 9F F4 A3 88 F8 12 48 2B E2 1B
riv: 47 EE 74 54 E4 77 4C C9 B8 96 0C 7B 59 F4 C1 4D
pub: C2 D4 AA F3 19 35 50 19 AF 99 D4 4E 2B 58 CA 29 25 2C 89 12 3D 11 D6 21 8F 40 B1 38 CA B2 9B 71 01 F3 AE B7 2A 97 50 19
 R: 80 6E 07 8F A1 52 97 90 CE 1A AE 02 BA DD 6F AA A6 AF 74 17
 n: E1 3A 7E BC 3A CC EB 1C B5 6C C8 60 FC AB DB 6A 04 8C 55 E1
 K: BA 90 55 91 68 61 B9 77 ED CB ED 92 00 50 92 F6 6C 7A 3D 8D
 Da: C5 B2 BF A1 A4 13 DD 16 F2 6D 31 C0 F2 ED 47 20 DC FB 06 70

之所以叫“front door key”,其是相对于“back door” 而言,传统的破解一般是通过软件的某个 bug或是后门来破解。而这次的PS3走的是前门,这就是说——这已经不是破解了,这是完全意义上的PS3正版了。

为什么呢。这和PS3的开发有关。其很像Symbian 的Sign,也就是说,游戏开发商要想让他们的游戏在PS3上发布,其需要把游戏通过法律流程交给Sony,然后被Sign上一个key,就可以成为正式的发行版并可在所有用户的PS3上运行了。所以,这个key是PS3到今天没有盗版游戏的关键。不过随着这个key被找到,这意味着任何人都可以在PS3上发布软件了。

最要命的是,这个Key和PS3的硬件绑定,也就是说,如果Sony要阻止这个事的话,无法通过升级firmware完成,必需更换硬件!!

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (3 人打了分,平均分: 5.00 )
Loading...
输出从1到1000的数

输出从1到1000的数

有这样一个面试题——请把从1到1000的数打印出来,但你不能使用任何的循环语句或是条件语句。更不能写1000个printf或是cout用C/C++语言

我相信,大多数人一开始你可能想到的是递归算法:

void f(int n){
    printf("%d\n",n);
    (1000-n) ? f(n+1) : exit(0) ;
}
int main(){
    f(1);
}

当然,题目中说了不能使用条件语句,所以,上面那种解法的不符合题意的,因为还是变向地使用了条件表达式。不过,我们可以用别的方法来让这个递归终止,比如:

除以零,当程序crash,呵呵。

void f(int n){
    printf("%d\n",n);
    n/(1000-n);
    f(n+1);
}

还有这样退出递归的:

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (15 人打了分,平均分: 4.67 )
Loading...
一些杂项资源

一些杂项资源

以前给大家介绍过一些非常有意思的杂项资源,今天再给大家介绍一些。(虽然没有上次的多,也算是一个新年礼物吧)

  • 首先,如果你想在你的web页上做一个小提示,你不妨到http://projects.nickstakenburg.com/tipped上看看,各种各样的提示风格,很不错。而且兼容于四大主流浏览器——Chrome, Firefox, IE, Safari。

image_thumb47

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (7 人打了分,平均分: 4.86 )
Loading...
6个有用的MySQL语句

6个有用的MySQL语句

以前本站给大家介绍过《MySQL性能优化的最佳20+条经验》,今天给大家介绍六条比较有用的MySQL的SQL语句,可能很多人都通过PHP来实现这些功能。

1. 计算年数

你想通过生日来计算这个人有几岁了。


SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(now()) - TO_DAYS(@dateofbirth)), '%Y') + 0;

2. 两个时间的差

取得两个 datetime 值的差。假设 dt1 和 dt2 是 datetime 类型,其格式为 ‘yyyy-mm-dd hh:mm:ss’,那么它们之间所差的秒数为:


UNIX_TIMESTAMP( dt2 ) - UNIX_TIMESTAMP( dt1 )

除以60就是所差的分钟数,除以3600就是所差的小时数,再除以24就是所差的天数。

3. 显示某一列出现过N次的值


SELECT id
FROM tbl
GROUP BY id
HAVING COUNT(*) = N;

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (5 人打了分,平均分: 4.60 )
Loading...
偷了世界的程序员

偷了世界的程序员

本文译自美国时代(time.com)的《The Men Who Stole the World》,原作者:Lev Grossman。相当有传奇色彩,读起来很爽,翻译过来。译得不好,还请大家指正。本中的四个程序员可能并不是那么声名显赫,而且也很不老实,或许算不上成功,不过他们的确改变了世界。而本文有分析了互联网上P2P的那些事,相当的有参考价值

2010年12月17日更新:修改了一些错误,理顺了一些语句。
2010年12月19日更新:增加了一些插图。

————————正文————————

十年前,有四个年轻人改变了这个世界的运作方式。他们使用的并不是法律或是武器或是金钱,而是使用软件来改变世界。他们当时有着激进和极具破坏性的想法,并把这些想法付诸于代码,在Internet上以免费自由方式发布。这四个人,没有一个完成了大学学业,却奠定了今天我们习惯的数字媒体环境的基础。然后,因为各种原因,他们也迅速地消失在公众视野中。

1999年,美国东北大学的一个叫Shawn Fanning的一年级新生开发Napster,从此,成为了P2P文件共享和不需要大型机构或零售商就可以获得音乐的先锋和范例。《时代周刊》和《财富》把他放上了封面。那时,他在19岁。

就在同一年,一个挪威的只有十几岁的年轻人 Jon Lech Johansen,他和另两个今天都不为人知的程序员,写下了一个程序解密了商业的DVD,而他成为了全球盛名的“ DVD Jon.”,那年,他只有15岁。

而在1997年,Justin Frankel,一个亚利桑那州塞多纳的18岁的黑客,开发了一个免费的MP3播放器——WinAmp,其成为了Windows操作系统上装机必备的软件,并造就了主流数字音乐的革命。在他发布的第18个月内,1500万人下载了这个软件。而三年后,Frankel 开发了 Gnutella,一个P2P的文件共享协议,没有中心结点,不像 Napster,其不可能被关闭。目前有上百万人还在使用它。

2001年,Bram Cohen, 当年 26 岁,开发了一个P2P的文件传输共享协议—— BitTorrent,其以全新一流的架构全面优化了网络上大文件的共享和传输效率。 BitTorrent 也变成了整个Internet上发布大数据和文件的一个标准。

阅读全文 Read More

好烂啊有点差凑合看看还不错很精彩 (46 人打了分,平均分: 4.91 )
Loading...
Facebook全球关系网

Facebook全球关系网

Paul Butler 是Facebook的Data Infrastructure Engineering Team的一个实习生,他把Facebook 5亿用户的人际关系网给图示了出来(见下图,源图片)挺赞的。从中我们可以看到,某些地方是一片漆黑……

Facebook 全球关系网Facebook全球关系网
(点击看大图,3.8M)

关于Paul是如何产生这个图的,你可以参看:http://www.facebook.com/notes/facebook-engineering/visualizing-friendships/469716398919 (墙)

好烂啊有点差凑合看看还不错很精彩 (9 人打了分,平均分: 4.56 )
Loading...