In web development, hydration or rehydration is a technique in which client-side JavaScript converts a web page that is static from the perspective of the web browser, delivered either through static rendering or server-side rendering, into a dynamic web page by attaching event handlers to the HTML elements in the DOM. Because the HTML is pre-rendered on a server, this allows for a fast "first contentful paint" (when useful data is first displayed to the user), but there is a period of time afterward where the page appears to be fully loaded and interactive, but is not until the client-side JavaScript is executed and event handlers have been attached. Frameworks that use hydration include Next.js and Nuxt. React v16.0 introduced a "hydrate" function, which hydrates an element, in its API. == Variations == === Streaming server-side rendering === Streaming server-side rendering allows one to send HTML in chunks that the browser can progressively render as it is received. This can provide a fast first paint and first contentful paint as HTML markup arrives to users faster. === Progressive rehydration === In progressive rehydration, individual pieces of a server-rendered application are “booted up” over time, rather than the current common approach of initializing the entire application at once. This can help reduce the amount of JavaScript required to make pages interactive, since client-side upgrading of low priority parts of the page can be deferred to prevent blocking the main thread. It can also help avoid one of the most common server-side rendering rehydration pitfalls, where a server-rendered DOM tree gets destroyed and then immediately rebuilt – most often because the initial synchronous client-side render required data that wasn't quite ready, perhaps awaiting Promise resolution. === Partial rehydration === Partial rehydration has proven difficult to implement. This approach is an extension of the idea of progressive rehydration, where the individual pieces (components/views/trees) to be progressively rehydrated are analyzed and those with little interactivity or no reactivity are identified. For each of these mostly-static parts, the corresponding JavaScript code is then transformed into inert references and decorative functionality, reducing their client-side footprint to near-zero. The partial hydration approach comes with its own issues and compromises. It poses some interesting challenges for caching, and client-side navigation means it cannot be assumed that server-rendered HTML for inert parts of the application will be available without a full page load. One framework that supports partial rehydration is Elder.js, which is based on Svelte. === Trisomorphic rendering === Trisomorphic rendering is a technique which uses streaming server-side rendering for initial/non-JavaScript navigations, and then uses service workers to take on rendering of HTML for navigations after it has been installed. This can keep cached components and templates up to date and enables SPA-style navigations for rendering new views in the same session. This approach works best when one can share the same templating and routing code between the server, client page, and service worker.
Couchbase Server
Couchbase Server, originally known as Membase, is a source-available, distributed (shared-nothing architecture) multi-model NoSQL document-oriented database software package optimized for interactive applications. These applications may serve many concurrent users by creating, storing, retrieving, aggregating, manipulating and presenting data. In support of these kinds of application needs, Couchbase Server is designed to provide easy-to-scale key-value, or JSON document access, with low latency and high sustainability throughput. It is designed to be clustered from a single machine to very large-scale deployments spanning many machines. Couchbase Server provided client protocol compatibility with memcached, but added disk persistence, data replication, live cluster reconfiguration, rebalancing and multitenancy with data partitioning. == Product history == Membase was developed by several leaders of the memcached project, who had founded a company, NorthScale, to develop a key-value store with the simplicity, speed, and scalability of memcached, but also the storage, persistence and querying capabilities of a database. The original membase source code was contributed by NorthScale, and project co-sponsors Zynga and Naver Corporation (then known as NHN) to a new project on membase.org in June 2010. On February 8, 2011, the Membase project founders and Membase, Inc. announced a merger with CouchOne (a company with many of the principal players behind CouchDB) with an associated project merger. The merged company was called Couchbase, Inc. In January 2012, Couchbase released Couchbase Server 1.8. In September of 2012, Orbitz said it had changed some of its systems to use Couchbase. In December of 2012, Couchbase Server 2.0 (announced in July 2011) was released and included a new JSON document store, indexing and querying, incremental MapReduce and replication across data centers. == Architecture == Every Couchbase node consists of a data service, index service, query service, and cluster manager component. Starting with the 4.0 release, the three services can be distributed to run on separate nodes of the cluster if needed. In the parlance of Eric Brewer's CAP theorem, Couchbase is normally a CP type system meaning it provides consistency and partition tolerance, or it can be set up as an AP system with multiple clusters. === Cluster manager === The cluster manager supervises the configuration and behavior of all the servers in a Couchbase cluster. It configures and supervises inter-node behavior like managing replication streams and re-balancing operations. It also provides metric aggregation and consensus functions for the cluster, and a RESTful cluster management interface. The cluster manager uses the Erlang programming language and the Open Telecom Platform. ==== Replication and fail-over ==== Data replication within the nodes of a cluster can be controlled with several parameters. In December of 2012, support was added for replication between different data centers. === Data manager === The data manager stores and retrieves documents in response to data operations from applications. It asynchronously writes data to disk after acknowledging to the client. In version 1.7 and later, applications can optionally ensure data is written to more than one server or to disk before acknowledging a write to the client. Parameters define item ages that affect when data is persisted, and how max memory and migration from main-memory to disk is handled. It supports working sets greater than a memory quota per "node" or "bucket". External systems can subscribe to filtered data streams, supporting, for example, full text search indexing, data analytics or archiving. ==== Data format ==== A document is the most basic unit of data manipulation in Couchbase Server. Documents are stored in JSON document format with no predefined schemas. Non-JSON documents can also be stored in Couchbase Server (binary, serialized values, XML, etc.) ==== Object-managed cache ==== Couchbase Server includes a built-in multi-threaded object-managed cache that implements memcached compatible APIs such as get, set, delete, append, prepend etc. ==== Storage engine ==== Couchbase Server has a tail-append storage design that is immune to data corruption, OOM killers or sudden loss of power. Data is written to the data file in an append-only manner, which enables Couchbase to do mostly sequential writes for update, and provide an optimized access patterns for disk I/O. === Performance === A performance benchmark done by Altoros in 2012, compared Couchbase Server with other technologies. Cisco Systems published a benchmark that measured the latency and throughput of Couchbase Server with a mixed workload in 2012. == Licensing and support == Couchbase Server is a packaged version of Couchbase's open source software technology and is available in a community edition without recent bug fixes with an Apache 2.0 license and an edition for commercial use. Couchbase Server builds are available for Ubuntu, Debian, Red Hat, SUSE, Oracle Linux, Microsoft Windows and macOS operating systems. Couchbase has supported software developers' kits for the programming languages .NET, PHP, Ruby, Python, C, Node.js, Java, Go, and Scala. == SQL++ == A query language called SQL++ (formerly called N1QL), is used for manipulating the JSON data in Couchbase, just like SQL manipulates data in RDBMS. It has SELECT, INSERT, UPDATE, DELETE, MERGE statements to operate on JSON data. It was initially announced in March 2015 as "SQL for documents". The SQL++ data model is non-first normal form (N1NF) with support for nested attributes and domain-oriented normalization. The SQL++ data model is also a proper superset and generalization of the relational model. === Example === Like query SELECT FROM `bucket` WHERE email LIKE "%@example.org"; Array query SELECT FROM `bucket` WHERE ANY x IN friends SATISFIES x.name = "Pavan" END; == Couchbase Mobile == Couchbase Mobile / Couchbase Lite is a mobile database providing data replication. Couchbase Lite (originally TouchDB) provides native libraries for offline-first NoSQL databases with built-in peer-to-peer or client-server replication mechanisms. Sync Gateway manages secure access and synchronization of data between Couchbase Lite and Couchbase Server. Couchbase Lite added support for Vector Search in version 3.2, allowing cloud to edge support for vector search in mobile applications. == Uses == Couchbase began as an evolution of Memcached, a high-speed data cache, and can be used as a drop-in replacement for Memcached, providing high availability for memcached application without code changes. Couchbase is used to support applications where a flexible data model, easy scalability, and consistent high performance are required, such as tracking real-time user activity or providing a store of user preferences or online applications. Couchbase Mobile, which stores data locally on devices (usually mobile devices) is used to create “offline-first” applications that can operate when a device is not connected to a network and synchronize with Couchbase Server once a network connection is re-established. The Catalyst Lab at Northwestern University uses Couchbase Mobile to support the Evo application, a healthy lifestyle research program where data is used to help participants improve dietary quality, physical activity, stress, or sleep. Amadeus uses Couchbase with Apache Kafka to support their “open, simple, and agile” strategy to consume and integrate data on loyalty programs for airline and other travel partners. High scalability is needed when disruptive travel events create a need to recognize and compensate high value customers. Starting in 2012, it played a role in LinkedIn's caching systems, including backend caching for recruiter and jobs products, counters for security defense mechanisms, for internal applications. == Alternatives == For caching, Couchbase competes with Memcached and Redis. For document databases, Couchbase competes with other document-oriented database systems. It is commonly compared with MongoDB, Amazon DynamoDB, Oracle RDBMS, DataStax, Google Bigtable, MariaDB, IBM Cloudant, Redis Enterprise, SingleStore, and MarkLogic.
Wiki survey
Wiki surveys or wikisurveys are a software-based survey method that crowdsource discussions and help participants to find areas of agreement. Other names include bridging systems and collective response systems. The approach, inspired by Wikipedia, is to open up surveys where participants can shape the questions, instead of traditional 'closed' surveys where participants can only respond to the questions asked. Wiki surveys have been used for purposes including facilitating deliberative democracy, crowdsourcing opinions from experts and figuring out common beliefs on a given topic. A notable usage of wiki surveys is in Taiwan's government system, where citizens can participate in crowdsourced lawmaking through Pol.is wiki surveys. == Implementations == === All Our Ideas === All Our Ideas founders coined the term "wiki survey," explaining how they took inspiration from the organic evolution of Wikipedia and hoped to create something similar for surveys. They hosted 5000 surveys between 2010 and 2014. A 2020 survey using the tool found 3 of its top 10 findings were user-generated. === Decidim === Decidim has been used by governments throughout Spain and Europe to help with participatory budgeting and other public policy decisions. === Polis === Polis (also known as Pol.is) was developed in 2012. The focus of Polis is to project participants into an 'opinion space' where they can see how their voting behavior compares to other participants. The opinion space clusters participants into groups of similar opinion and is designed in a way to avoid tyranny of the majority by being able to include groups that have small numbers of participants. The questions participants are presented with are agree/disagree/pass on a single 'comment' submitted by a participant. The code for Polis is free and open-source software under the GNU AGPL. === Remesh === Remesh was founded in 2013 and has partnered with the United Nations and Alliance for Middle East Peace efforts to bring peaceful resolutions to conflicts. Participants are anonymous and the algorithm can be fine-tuned to better understand local dialects in specific regions. == Examples == PlaNYC used All Our Ideas to gather ideas on how to establish New York City's sustainability plan vTaiwan, a citizen-lead government process in Taiwan, uses Polis for enabling large amounts of citizens to deliberate and consequently provide input on Taiwan's legislative decisions OECD used All Our Ideas to gather ideas from the public prior to meeting for a forum and meeting on which skills are most important to invest in for the 21st century March On, an offshoot of the Women's March Movement, used Polis to understand the opinions of people wanting to support the movement Residents of Harrogate use Polis to debate issues in their community, with the results being released publicly to everyone == Characteristics == Wiki surveys often have these three characteristics: === Collaborativeness === Wiki surveys allow participants to contribute questions, as well as answer questions created by its participants. === Adaptivity === Wiki surveys adapt to elicit the most useful information from its participants. One example involves changing the ordering of questions based on the voting behavior of previous participants so as to maximize consensus. The heuristic determining the ordering of questions highly values showing the comments that have been voted on the least. === 'Greediness' === In the context of wiki surveys, 'greediness' simply means making full use of information that participants are willing to provide. Wiki surveys do not require participants to answer a fixed amount of questions, so participants can answer as little or as much as they want. This is intended to be more efficient in capturing participants' preferences by allowing more organic sharing of their perspectives. == Traditional survey methods vs. wiki surveys == Questions in traditional survey methods fall into two categories: Open and closed questions. Open questions ask the person taking the survey to write an open response while closed questions give a fixed set of responses to select from. Wiki surveys are like a hybrid of the two, enabling insightful consensus in certain situations where traditional survey methods may lack. Closed questions are easy to analyze quantitively, but the limited options to select from for a given question may cause bias. Open questions are not as subject to bias, but are difficult to analyze quantitatively at scale. Wiki surveys allow for open responses by the users' contribution of survey questions (also called 'items'), and uses machine learning techniques to (at least partially) automate the quantitative analysis of the responses to those questions.
Digital artifact
Digital artifact in information science, is any undesired or unintended alteration in data introduced in a digital process by an involved technique and/or technology. Digital artifact can be of any content types including text, audio, video, image, animation or a combination. == Information science == In information science, digital artifacts result from: Hardware malfunction: In computer graphics, visual artifacts may be generated whenever a hardware component such as the processor, memory chip, cabling malfunctions, etc., corrupts data. Examples of malfunctions include physical damage, overheating, insufficient voltage and GPU overclocking. Common types of hardware artifacts are texture corruption and T-vertices in 3D graphics, and pixelization in MPEG compressed video. Software malfunction: Artifacts may be caused by algorithm flaws such as decoding/encoding audio or video, or a poor pseudo-random number generator that would introduce artifacts distinguishable from the desired noise into statistical models. Compression: Controlled amounts of unwanted information may be generated as a result of the use of lossy compression techniques. One example is the artifacts seen in JPEG and MPEG compression algorithms that produce compression artifacts. Quantization: Digital imprecision generated in the process of converting analog information into digital space, is due to the limited granularity of digital numbering space. In computer graphics, quantization is seen as pixelation. Aliasing: As a consequence of sampling or sample-rate conversion, energy from frequencies outside of the signal frequency band of interest are folded across multiples of the Nyquist frequency. This is typically mitigated by using an anti-aliasing filter. Filtering: The process of filtering a signal, such as using an anti-aliasing filter, causes undesired alterations to the signal due to imperfections in the frequency response magnitude and phase, and due to the time domain impulse response. Rolling shutter, the line scanning of an object that is moving too fast for the image sensor to capture a unitary image. Error diffusion: poorly-weighted kernel coefficients result in undesirable visual artifacts.
Library history
Library history is a subdiscipline within library science and library and information science focusing on the history of libraries and their role in societies and cultures. Some see the field as a subset of information history. Library history is an academic discipline and should not be confused with its object of study (history of libraries): the discipline is much younger than the libraries it studies. Library history begins in ancient societies through contemporary issues facing libraries today. Topics include recording mediums, cataloguing systems, scholars, scribes, library supporters and librarians. == Earliest libraries == The earliest records of a library institution as it is presently understood can be dated back to around 5,000 years ago in the Southwest Asian regions of the world. One of the oldest libraries found is that of the ancient library at Ebla (circa 2500 BCE) in present-day Syria. In the 1970s, the excavation at Ebla's library unearthed over 20,000 clay tablets written in cuneiform script. === Library in Mesopotamia === The Assyrian King Assurbanipal created one of the greatest libraries in Nineveh in the seventh century BCE. The collection consisted of over 30,000 tablets written in a variety of languages. The collection was cataloged both by the shape of the tablet and by the subject of the content. The library had separate rooms for the different topics: government, history, law, astronomy, geography, and so on. The tablets also contained myths, hymns, and even jokes. Assurbanipal would send scribes to visit every corner of his kingdom to copy the content of other libraries. His library contained many of the most important literary works of the day, including the epic of Gilgamesh. Assurbanipal's Royal Library also had one of the first library catalogs. Unfortunately, Nineveh was eventually destroyed, and the library was lost in a fire. === Libraries in Ancient Greece === The Greek government was the first to sponsor public libraries. By 500 BCE both Athens and Samos had begun creating libraries for the public, though as most of the population was illiterate these spaces were serving a small, educated portion of the community. Athens developed a city archive at the Metroon in 405 BCE, where documents were stored in sealed jars. These would have saved the documents, but they would have been difficult to consult regularly. In Paros, around the same time, contracts were placed in the temple for safe keeping, and a book curse was placed for extra protection. === Library of Alexandria === The Library at Alexandria, Egypt, was renowned in the third century BCE while kings Ptolemy I Soter and Ptolemy II Philadelphus reigned. The library included a museum, garden, meeting areas and of course reading rooms. The Great Library, as it is known, was one of many in Alexandria. From its inception around the second century BCE, Alexandria was a well-known center for learning. It earned renown as the intellectual capital of the Western world up through the third century CE. The librarians at Alexandria collected, copied, and organized scrolls from across the known world. According to a primary source, every ship that came to Alexandria was required to hand over their books to be copied, and the copies would be returned to the owner, the library keeping the original. The Library of Alexandria was damaged by various disasters over time, including fire, invasion, and earthquake. Scholars believe the collection slowly diminished over time due to theft and efforts to remove it ahead of invading armies. While there are popular stories about how the library was ultimately destroyed, most of these are more myth than fact. === Libraries in Rome === Julius Caesar and his successor Augustus were the first to establish public libraries in ancient Rome, including the library of Apollo on the Palatine Hill. Several emperors followed suit over the next four centuries, including Hadrian, Tiberius, and Vespasian. Roman aristocrats also had personal libraries, which usually contained works in both Greek and Latin. A valuable example of this has been found at Herculaneum near Pompeii. Papyrus manuscripts in Herculaneum's Villa of the Papyri were encased in ash after the eruption of Vesuvius in 79 CE. Modern archaeology is now able to scan these artifacts and discern their contents, including many writings from Philodemus. The average Roman would not have been familiar with books beyond what they might hear read aloud in the forum. Public figures would pay for particular passages to be read aloud to the public from the steps of a public library. === Libraries in the Middle Ages === In the European Middle Ages, libraries began to become more prevalent, despite a widespread reduction in new writing beyond religious themes. Most libraries were initially connected to monasteries or religious institutions. Scriptoriums copied Christian religious texts to share with other religious centers or to be read aloud to their own parishioners. The Holy Roman Emperor Charlemagne (r. 786-814) had a large impact on the advancement of written culture in the Medieval Christian world, acquiring as many written works as he could, and employing many scribes to copy and recirculate vernacular versions of religious works. Most of the text held in small personal libraries was still religious in nature. == Early modern libraries == === Libraries of the Renaissance === During the Renaissance era the merchant middle class grew, and more people found benefits in education. They relied on libraries as a place to study and gain knowledge. Libraries provided a valuable resource, enriching the culture of those who were educated. Universities that had been started in the Middle Ages, founded their own libraries. Books in these libraries could not be borrowed from these libraries and were generally chained to the shelves to prevent theft. As more of the population became literate, new ideas like Humanism and Natural Law spawned an increase personal libraries, although they remained small. Gutenberg's invention of the printing press in 1456 opened the door to the modern era for libraries. == Oldest working libraries == According to the German librarian Michael Knoche, it is not possible to determine which library is the “oldest”: "Precise year dates are a construct, especially in the case of very old libraries. When a collection of books deserves to be called a library depends very much on the point of view of the observer." Various libraries are referred to as the “oldest”: The library founded in the 6th century of the Saint Catherine's Monastery in Sinai is "reputedly the oldest continuously run library in existence today", according to the Library of Congress. Its collection of religious and secular manuscripts is ranging from Bibles, liturgies and prayer books to legal documents such as deeds, court cases and fatwahs (legal opinions). The Al Qarawiyyin Library was founded in 859 by Fatima al-Fihri and is often regarded as the oldest working library in the world. It is in Fez, Morocco and is part of the oldest continually operating university in the world, the University of al-Qarawiyyin. The library houses approximately 4,000 ancient Islamic manuscripts. These manuscripts include 9th century Qurans and the oldest known accounts of the Islamic prophet Muhammed. The Malatestiana Library (Italian: Biblioteca Malatestiana) is a public library in the city of Cesena in northern Italy. Opened in 1454 it is significant for being the first civic library in Europe open to the general public. == Library history reports and writings of the early 19th and 20th century == In the early 19th and 20th century, representative titles were created reporting library history in the United States and the United Kingdom. American titles include Public Libraries in the United States of America, Their History, Condition, and Management (1876), Memorial History of Boston (1881) by Justin Winsor, Public Libraries in America (1894) by William I. Fletcher, and History of the New York Public Library (1923) by Henry M. Lydenberg. British titles include Old English Libraries (1911) by Earnest A. Savage and The Chained Library: A Survey of Four Centuries in the Evolution of the English Library by Burnett Hillman Streeter. In the beginning of the 20th century, library historians began applying scientific research methodologies to examine the library as a social agency. Two works that demonstrate this argument are Geschichte der Bibliotheken (1925) by Alfred Hessel and the Library Quarterly article from 1931, “The Sociological Beginnings of the Library Movement in America” by Arnold Borden. With the establishment of library schools, master's theses and doctoral dissertations represented the shift in serious research regarding libraries and library history. Two published doctoral dissertations that mark this trend are Foundations of the Public Library: The Origins of the American Public Library Movement in Ne
Film recorder
A film recorder is a graphical output device for transferring images to photographic film from a digital source. In a typical film recorder, an image is passed from a host computer to a mechanism to expose film through a variety of methods, historically by direct photography of a high-resolution cathode-ray tube (CRT) display. The exposed film can then be developed using conventional developing techniques, and displayed with a slide or motion picture projector. The use of film recorders predates the current use of digital projectors, which eliminate the time and cost involved in the intermediate step of transferring computer images to film stock, instead directly displaying the image signal from a computer. Motion picture film scanners are the opposite of film recorders, copying content from film stock to a computer system. Film recorders can be thought of as modern versions of kinescopes. == Design == === Operation === All film recorders typically work in the same manner. The image is fed from a host computer as a raster stream over a digital interface. A film recorder exposes film through various mechanisms; flying spot (early recorders); photographing a high resolution video monitor; electron beam recorder (Sony HDVS); a CRT scanning dot (Celco); focused beam of light from a light valve technology (LVT) recorder; a scanning laser beam (Arrilaser); or recently, full-frame LCD array chips. For color image recording on a CRT film recorder, the red, green, and blue channels are sequentially displayed on a single gray scale CRT, and exposed to the same piece of film as a multiple exposure through a filter of the appropriate color. This approach yields better resolution and color quality than possible with a tri-phosphor color CRT. The three filters are usually mounted on a motor-driven wheel. The filter wheel, as well as the camera's shutter, aperture, and film motion mechanism are usually controlled by the recorder's electronics and/or the driving software. CRT film recorders are further divided into analog and digital types. The analog film recorder uses the native video signal from the computer, while the digital type uses a separate display board in the computer to produce a digital signal for a display in the recorder. Digital CRT recorders provide a higher resolution at a higher cost compared to analog recorders due to the additional specialized hardware. Typical resolutions for digital recorders were quoted as 2K and 4K, referring to 2048×1366 and 4096×2732 pixels, respectively, while analog recorders provided a resolution of 640×428 pixels in comparison. Higher-quality LVT film recorders use a focused beam of light to write the image directly onto a film loaded spinning drum, one pixel at a time. In one example, the light valve was a liquid-crystal shutter, the light beam was steered with a lens, and text was printed using a pre-cut optical mask. The LVT will record pixel beyond grain. Some machines can burn 120-res or 120 lines per millimeter. The LVT is basically a reverse drum scanner. The exposed film is developed and printed by regular photographic chemical processing. === Formats === Film recorders are available for a variety of film types and formats. The 35 mm negative film and transparencies are popular because they can be processed by any photo shop. Single-image 4×5 film and 8×10 are often used for high-quality, large format printing. Some models have detachable film holders to handle multiple formats with the same camera or with Polaroid backs to provide on-site review of output before exposing film. == Uses == Film recorders are used in digital printing to generate master negatives for offset and other bulk printing processes. For preview, archiving, and small-volume reproduction, film recorders have been rendered obsolete by modern printers that produce photographic-quality hardcopies directly on plain paper. They are also used to produce the master copies of movies that use computer animation or other special effects based on digital image processing. However, most cinemas nowadays use Digital Cinema Packages on hard drives instead of film stock. === Computer graphics === Film recorders were among the earliest computer graphics output devices; for example, the IBM 740 CRT Recorder was announced in 1954. Film recorders were also commonly used to produce slides for slide projectors; but this need is now largely met by video projectors that project images directly from a computer to a screen. The terms "slide" and "slide deck" are still commonly used in presentation programs. === Current uses === Currently, film recorders are primarily used in the motion picture film-out process for the ever increasing amount of digital intermediate work being done. Although significant advances in large venue video projection alleviates the need to output to film, there remains a deadlock between the motion picture studios and theater owners over who should pay for the cost of these very costly projection systems. This, combined with the increase in international and independent film production, will keep the demand for film recording steady for at least a decade. == Key manufacturers == Traditional film recorder manufacturers have all but vanished from the scene or have evolved their product lines to cater to the motion picture industry. Dicomed was one such early provider of digital color film recorders. Polaroid, Management Graphics, Inc, MacDonald-Detwiler, Information International, Inc., and Agfa were other producers of film recorders. Arri is the only current major manufacturer of film recorders. Kodak Lightning I film recorder. One of the first laser recorders. Needed an engineering staff to set up. Kodak Lightning II film recorder used both gas and diode laser to record on to film. The last LVT machines produced by Kodak / Durst-Dice stopped production in 2002. There are no LVT film recorders currently being produced. LVT Saturn 1010 uses a LED exposure (RGB) to 8"x10" film at 1000-3000ppi. LUX Laser Cinema Recorder from Autologic/Information International in Thousand Oaks, California. Sales end in March 2000. Used on the 1997 film “Titanic”. Arri produces the Arrilaser line of laser-based motion picture film recorders. MGI produced the Solitaire line of CRT-based motion picture film recorders. Matrix, originally ImaPRO, a branch of Agfa Division, produced the QCR line of CRT-based motion picture film recorders. CCG, formerly Agfa film recorders, has been a steady manufacturer of film recorders based in Germany. In 2004 CCG introduced Definity, a motion picture film recorder utilizing LCD technology. In 2010 CCG introduced the first full LED LCD film recorder as a new step in film recording. Cinevator was made by Cinevation AS, in Drammen, Norway. The Cinevator was a real-time digital film recorder. It could record IN, IP and prints with and without sound Oxberry produced the Model 3100 film recorder camera system, with interchangeable pin-registered movements (shuttles) for 35 mm (full frame/Silent, 1.33:1) and 16 mm (regular 16, "2R"), and others have adapted the Oxberry movements for CinemaScope, 1.85:1, 1.75:1, 1.66:1, as well as Academy/Sound (1.37:1) in 35 mm and Super-16 in 16 mm ("1R"). For instance, the "Solitaire" and numerous others employed the Oxberry 3100 camera system. == History == Before video tape recorders or VTRs were invented, TV shows were either broadcast live or recorded to film for later showing, using the kinescope process. In 1967, CBS Laboratories introduced the Electronic Video Recording format, which used video and telecined-to-video film sources, which were then recorded with an electron-beam recorder at CBS' EVR mastering plant at the time to 35mm film stock in a rank of 4 strips on the film, which was then slit down to 4 8.75 mm (0.344 in) film copies, for playback in an EVR player. All types of CRT recorders were (and still are) used for film recording. Some early examples used for computer-output recording were the 1954 IBM 740 CRT Recorder, and the 1962 Stromberg-Carlson SC-4020, the latter using a Charactron CRT for text and vector graphic output to either 16 mm motion picture film, 16 mm microfilm, or hard-copy paper output. Later 1970 and 80s-era recording to B&W (and color, with 3 separate exposures for red, green, and blue)) 16 mm film was done with an EBR (Electron Beam Recorder), the most prominent examples made by 3M), for both video and COM (Computer Output Microfilm) applications. Image Transform in Universal City, California used specially modified 3M EBR film recorders that could perform color film-out recording on 16 mm by exposing three 16 mm frames in a row (one red, one green and one blue). The film was then printed to color 16 mm or 35 mm film. The video fed to the recorder could either be NTSC, PAL or SECAM. Later, Image Transform used specially modified VTRs to record 24 frame for their "Image Vision" system. The modified 1 inch type B videotape VTRs would record
Kullback–Leibler Upper Confidence Bound
In multi-armed bandit problems, KL-UCB (for Kullback–Leibler Upper Confidence Bound) is a UCB-type algorithm that is asymptotically optimal, in the sense that its regret matches the problem-dependent Lai-Robbins lower bound. == Multi-armed bandit problem == The Multi-armed bandit problem is a sequential game where one player has to choose at each turn between K {\displaystyle K} actions (arms). Behind every arm a {\displaystyle a} there is an unknown distribution ν a {\displaystyle \nu _{a}} that lies in a set D {\displaystyle {\mathcal {D}}} known by the player (for example, D {\displaystyle {\mathcal {D}}} can be the set of Gaussian distributions or Bernoulli distributions). At each turn t {\displaystyle t} the player chooses (pulls) an arm a t {\displaystyle a_{t}} , he then gets an observation X t {\displaystyle X_{t}} of the distribution ν a t {\displaystyle \nu _{a_{t}}} . === Regret minimization === The goal is to minimize the regret at time T {\displaystyle T} that is defined as R T := ∑ a = 1 K Δ a E [ N a ( T ) ] {\displaystyle R_{T}:=\sum _{a=1}^{K}\Delta _{a}\mathbb {E} [N_{a}(T)]} where μ a := E [ ν a ] {\displaystyle \mu _{a}:=\mathbb {E} [\nu _{a}]} is the mean of arm a {\displaystyle a} μ ∗ := max a μ a {\displaystyle \mu ^{}:=\max _{a}\mu _{a}} is the highest mean Δ a := μ ∗ − μ a {\displaystyle \Delta _{a}:=\mu ^{}-\mu _{a}} N a ( t ) {\displaystyle N_{a}(t)} is the number of pulls of arm a {\displaystyle a} up to turn t {\displaystyle t} The player has to find an algorithm that chooses at each turn t {\displaystyle t} which arm to pull based on the previous actions and observations ( a s , X s ) s < t {\displaystyle (a_{s},X_{s})_{s