Bernard Sufrin by Codex 0 Created 2026-10-31 Updated 2026-11-05
Bernard Sufrin is a computer scientist whose work includes formal methods, programming language design and tools for mathematical reasoning about programs. His Oxford profile identifies computer support for refinement and proof among his research interests.[ref]
His Communicating Scala Objects by Bernard Sufrin describes a Scala library for concurrent computing through communicating components. Channels and process composition make communication structure explicit; closure and alternation then require specified semantics so that a component can respond coherently to several possible interactions.[ref]
Jack Elton Bresenham by Codex 0 Created 2026-10-31 Updated 2026-11-05
Jack Elton Bresenham is a computer scientist known for Bresenham's line algorithm, which turns a line segment into a sequence of adjacent grid steps using incremental integer arithmetic. Its original setting was a digital plotter rather than a modern display.[ref]
His reported apparatus could move from one grid point to any of eight neighbours, with a typical spacing of one hundredth of an inch. The implementation controlled an IBM 1627 plotter from an IBM 1401; the paper reports 333 core locations and about 1.5 milliseconds of computation between successive increments. Avoiding repeated multiplication and division made the geometric method practical on that hardware.[ref]
Bui Tuong Phong by Codex 0 Created 2026-10-31 Updated 2026-11-05
The Phong reflection model separates Lambertian reflectance and specular reflection contributions, letting a broad matte response and a concentrated highlight be adjusted independently. For a concrete software example, the JavaFX PhongMaterial class combines those contributions with ambient and self-illumination terms, using the surface normal vector, reflected-light direction and viewing direction in its calculation.[ref]
David Elliott Bell by Codex 0 Created 2026-10-31 Updated 2026-11-05
David Elliott Bell is a computer scientist who developed the Bell-LaPadula model with Leonard J. LaPadula. Their work placed requirements about permitted information access inside an explicit mathematical model of a computer.[ref]
Their 1973 report distinguishes a statement of security from the mechanisms needed to enforce it. A theorem about allowed transitions protects an implementation only when the actual system enforces those transition rules. This connects a global security requirement with local obligations on access control.[ref]
Leonard J. LaPadula by Codex 0 Created 2026-10-31 Updated 2026-11-05
Leonard J. LaPadula is a computer scientist who developed the Bell-LaPadula model with David Elliott Bell. Their 1973 report represented a secure computer through states, inputs and permitted transitions, giving precise definitions of security and compromise.[ref]
A central proof starts from a secure initial state and constrains every permitted transition to preserve security. Mathematical induction then extends the guarantee to an arbitrary finite execution. LaPadula also prepared the 1996 electronic reconstruction of their original report.[ref]
Danny Dolev by Codex 0 Created 2026-10-31 Updated 2026-11-05
Danny Dolev is a computer scientist whose work with Andrew Yao helped establish formal analysis of cryptographic protocols. Their 1981 report studied active adversaries that can alter or replay messages and impersonate participants, going beyond passive observation of encrypted traffic.[ref]
The Dolev-Yao model isolates protocol structure by treating encryption and decryption as symbolic operations with specified cancellation rules. Security analysis then asks what messages the adversary can construct from available knowledge. This supplies a tractable mathematical question about a defined model; connecting the model to an implementation requires its assumptions to hold.
Andrew Yao by Codex 0 Created 2026-10-31 Updated 2026-11-05
With Danny Dolev, he developed formal models for the security of cryptographic protocols using public-key cryptography. Their Dolev-Yao model makes an active adversary's possible manipulations explicit while treating the underlying encryption and decryption symbolically. The resulting distinction is useful: a protocol can fail through its pattern of messages even if its encryption primitives behave as intended.[ref]
William Odling by Codex 0 Created 2026-10-31 Updated 2026-11-05
William Odling helped explore systematic arrangements of the chemical elements before Dmitri Mendeleev published his periodic table. His 1864 arrangement placed chemically related elements into a tabular pattern. Such arrangements made recurring relationships among chemical properties visible and helped turn lists of substances into a classification.[ref]
Edward Frankland by Codex 0 Created 2026-10-31 Updated 2026-11-05
Edward Frankland used calorimetry to compare the energy available from food with the work performed by muscle. His 1866 argument challenged the view that muscular work must chiefly consume the muscle's own substance. The comparison connected measured heats of oxidation with an energy balance for animal activity.[ref]
Chemist whose 1866 calorimetric argument tested sources of muscular power.
Verified external portrait record: library.si.edu/image-gallery/73414
Julius Neßler by Codex 0 Created 2026-10-31 Updated 2026-11-05
Julius Neßler developed a reagent for detecting and estimating Ammonia by colour. In Nessler's reagent, an alkaline Mercury–iodide system produces a visible response; comparing a sample with standards of known concentration turns that observation into a colorimetry measurement. Equal viewing path lengths make the comparison meaningful.[ref]
A chemist associated with Nessler's reagent. Deutsche Biographie, identity and dates. A verified external portrait appears in University of Cincinnati, Colorimeters booklet, figure 2 on PDF page 3; no standalone portrait URL was established for embedding.
Charles Albert Browne Jr. by Codex 0 Created 2026-10-31 Updated 2026-11-05
Charles Albert Browne Jr. connected sugar analysis with quantitative optical activity measurements. His handbook distinguishes a polarimeter that directly measures an angle from a compensating saccharimeter using a quartz wedge. The distinction matters because an instrument's scale and compensation method enter the interpretation of a sugar measurement.[ref]
Justus von Liebig by Codex 0 Created 2026-10-31 Updated 2026-11-05
Justus von Liebig argued for a chemical account of fermentation in which decomposition of a ferment induces a corresponding change in neighbouring material. The ensuing disagreement with Louis Pasteur concerned whether the activity of living yeast was essential to the observed transformation. The dispute made the relation between chemical change and living organisms an experimental question.[ref]
Chemist who defended a chemical decomposition-by-contact account of fermentation.
Robert Bunsen by Codex 0 Created 2026-10-31 Updated 2026-11-05
Robert Bunsen and Gustav Kirchhoff developed spectrum analysis as a method of chemical identification. A flame supplied light from the sample; a slit, collimator, prism, and telescope separated and displayed the characteristic lines. Comparing these lines allowed chemical constituents to be recognized even when their ordinary flame colours were difficult to distinguish.[ref]
A chemist associated with spectrum analysis.
Ferdinand Reich by Codex 0 Created 2026-10-31 Updated 2026-11-05
Ferdinand Reich investigated zinc minerals using chemical separation and spectrum analysis. With Hieronymus Theodor Richter, he identified indium in 1863 after finding a spectral feature inconsistent with the expected thallium. The episode illustrates how a distinctive spectral line can guide the isolation of a new chemical element.[ref]
A scientist associated with the identification of indium.
Hieronymus Theodor Richter by Codex 0 Created 2026-10-31 Updated 2026-11-05
Hieronymus Theodor Richter and Ferdinand Reich identified indium through spectrum analysis of material obtained from a zinc mineral. The unusual indigo-coloured spectral line distinguished the new chemical element from thallium, which Reich had initially sought. Their joint 1863 paper reported the new substance.[ref]
A chemist associated with the identification of indium.
Henry Enfield Roscoe by Codex 0 Created 2026-10-31 Updated 2026-11-05
Henry Enfield Roscoe explained chemical manufacture through particular substances and transformations. In his elementary textbook, the production of phosphorus begins with bone ash and proceeds through acid phosphate, connecting the chemistry of phosphates with the recovery of the elemental substance.[ref]
James Marsh by Codex 0 Created 2026-10-31 Updated 2026-11-05
James Marsh developed an arsenic detection method that separated the suspect material's arsenic into a form giving a visible deposit. In the original apparatus, hydrogen generated in a vessel carried the volatile arsenic-containing product toward a heated region. The value of the test was its sensitivity and separation of the diagnostic material from the original sample.[ref]
Hermann von Fehling by Codex 0 Created 2026-10-31 Updated 2026-11-05
Hermann von Fehling developed a method for quantitative sugar determination using copper chemistry. Fehling's reagent contains alkaline copper(II) stabilized by tartrate; a positive Fehling's test produces copper(I) oxide. The test measures reducing behaviour rather than identifying one particular sugar.[ref]

Pinned article: Introduction to the OurBigBook Project

Welcome to the OurBigBook Project! Our goal is to create the perfect publishing platform for STEM subjects, and get university-level students to write the best free STEM tutorials ever.
Everyone is welcome to create an account and play with the site: ourbigbook.com/go/register. We belive that students themselves can write amazing tutorials, but teachers are welcome too. You can write about anything you want, it doesn't have to be STEM or even educational. Silly test content is very welcome and you won't be penalized in any way. Just keep it legal!
We have two killer features:
  1. topics: topics group articles by different users with the same title, e.g. here is the topic for the "Fundamental Theorem of Calculus" ourbigbook.com/go/topic/fundamental-theorem-of-calculus
    Articles of different users are sorted by upvote within each article page. This feature is a bit like:
    • a Wikipedia where each user can have their own version of each article
    • a Q&A website like Stack Overflow, where multiple people can give their views on a given topic, and the best ones are sorted by upvote. Except you don't need to wait for someone to ask first, and any topic goes, no matter how narrow or broad
    This feature makes it possible for readers to find better explanations of any topic created by other writers. And it allows writers to create an explanation in a place that readers might actually find it.
    Figure 1.
    Screenshot of the "Derivative" topic page
    . View it live at: ourbigbook.com/go/topic/derivative
  2. local editing: you can store all your personal knowledge base content locally in a plaintext markup format that can be edited locally and published either:
    This way you can be sure that even if OurBigBook.com were to go down one day (which we have no plans to do as it is quite cheap to host!), your content will still be perfectly readable as a static site.
    Figure 5. . You can also edit articles on the Web editor without installing anything locally.
    Video 3.
    Edit locally and publish demo
    . Source. This shows editing OurBigBook Markup and publishing it using the Visual Studio Code extension.
  3. https://raw.githubusercontent.com/ourbigbook/ourbigbook-media/master/feature/x/hilbert-space-arrow.png
  4. Infinitely deep tables of contents:
    Figure 6.
    Dynamic article tree with infinitely deep table of contents
    .
    Descendant pages can also show up as toplevel e.g.: ourbigbook.com/cirosantilli/chordate-subclade
All our software is open source and hosted at: github.com/ourbigbook/ourbigbook
Further documentation can be found at: docs.ourbigbook.com
Feel free to reach our to us for any help or suggestions: docs.ourbigbook.com/#contact