宜 |

- 锻炼一下身体
- 晚上加班晚上是程序员精神最好的时候
- 浏览成人网站重拾对生活的信心

不宜 |

- 打DOTA你将有如神助
- 上微博今天发生的事不能错过

**座位朝向：**面向东方写程序，BUG 最少。

**今日宜饮：**咖啡，豆奶

**女神亲近指数：**★★☆☆☆

- 本老黄历仅面向程序员；
- 本老黄历内容是程序生成的，因为只有这样程序员才会信。

# 程序员老黄历

该工具已用 react 重写。通识原理，宜忌本身就是伪随机 + 特殊日子加权。"可能"这也是农历宜忌的基本通则。

## Random seed

A **random seed** (or **seed state**, or just **seed**) is a number (or vector) used to initialize a pseudorandom number generator.

For a seed to be used in a pseudorandom number generator, it does not need to be random. Because of the nature of number generating algorithms, so long as the original seed is ignored, the rest of the values that the algorithm generates will follow probability distribution in a pseudorandom manner.

A pseudorandom number generator's number sequence is completely determined by the seed: thus, if a pseudorandom number generator is reinitialized with the same seed, it will produce the same sequence of numbers.

The choice of a good random seed is crucial in the field of computer security. When a secret encryption key "Key (cryptography)") is pseudorandomly generated, having the seed will allow one to obtain the key. High entropy "Entropy (computing)") is important for selecting good random seed data.^{[1]}

If the same *random* seed is deliberately shared, it becomes a secret key, so two or more systems using matching pseudorandom number algorithms and matching seeds can generate matching sequences of non-repeating numbers which can be used to synchronize remote systems, such as GPS satellites and receivers.

Random seeds are often generated from the state of the computer system (such as the time), a cryptographically secure pseudorandom number generator or from a hardware random number generator.

## Pseudorandom number generator

A **pseudorandom number generator** (**PRNG**), also known as a **deterministic random bit generator** (**DRBG**),^{[1]} is an algorithm for generating a sequence of numbers whose properties approximate the properties of sequences of random numbers. The PRNG-generated sequence is not truly random, because it is completely determined by an initial value, called the PRNG's _seed_ (which may include truly random values). Although sequences that are closer to truly random can be generated using hardware random number generators, *pseudorandom* number generators are important in practice for their speed in number generation and their reproducibility.^{[2]}

PRNGs are central in applications such as simulations (e.g. for the Monte Carlo method), electronic games (e.g. for procedural generation), and cryptography. Cryptographic applications require the output not to be predictable from earlier outputs, and more elaborate algorithms, which do not inherit the linearity of simpler PRNGs, are needed.

Good statistical properties are a central requirement for the output of a PRNG. In general, careful mathematical analysis is required to have any confidence that a PRNG generates numbers that are sufficiently close to random to suit the intended use. John von Neumann cautioned about the misinterpretation of a PRNG as a truly random generator, and joked that "Anyone who considers arithmetical methods of producing random digits is, of course, in a state of sin."^{[3]}