AI Face Swap Gif

AI Face Swap Gif — independent reviews, comparisons, pricing and step-by-step guides on Aizhi.

  • Application software

    Application software

    Application software is software that is intended for end-user use – not operating, administering or programming a computer. It includes programs such as word processors, web browsers, media players, and mobile applications used in daily tasks. An application (app, application program, software application) is any program that can be categorized as application software. Application is a subjective classification that is often used to differentiate from system and utility software. Application software represents the user-facing layer of computing systems, designed to translate complex system capabilities into task-oriented, goal-driven workflows. Unlike system software, which focuses on hardware orchestration and resource management, application software is centered on problem abstraction, user interaction, and domain-specific functionality. The abbreviation app became popular with the 2008 introduction of the iOS App Store, to refer to applications for mobile devices such as smartphones and tablets. Later, with the release of the Mac App Store in 2010 and the Windows Store in 2011, it began to be used to refer to end-user software in general, regardless of platform. Applications may be bundled with the computer and its system software or published separately. Applications may be proprietary or open-source. == Terminology == === Meaning program and software === When used as an adjective, application can have a broader meaning than that described in this article. For example, concepts such as application programming interface (API), application server, application virtualization, application lifecycle management and portable application refer to programs and software in general. === Distinction between system and application software === The distinction between system and application software is subjective and has been the subject of controversy. For example, one of the key questions in the United States v. Microsoft Corp. antitrust trial was whether Microsoft's Internet Explorer web browser was part of its Windows operating system or a separate piece of application software. As another example, the GNU/Linux naming controversy is, in part, due to disagreement about the relationship between the Linux kernel and the operating systems built over this kernel. In some types of embedded systems, the application software and the operating system software may be indistinguishable by the user, as in the case of software used to control a VCR, DVD player, or microwave oven. The above definitions may exclude some applications that may exist on some computers in large organizations. For an alternative definition of an app: see Application Portfolio Management. === Killer application === A killer application (killer app, coined in the late 1980s) is an application that is so popular that it causes demand for its host platform to increase. For example, VisiCalc was the first modern spreadsheet software for the Apple II and helped sell the then-new personal computers into offices. For the BlackBerry, it was its email software. === Software suite === As software suite consists of multiple applications bundled together. They usually have related functions, features, and user interfaces, and may be able to interact with each other, e.g. open each other's files. Business applications often come in suites, e.g. Microsoft Office, LibreOffice and iWork, which bundle together a word processor, a spreadsheet, etc.; but suites exist for other purposes, e.g. graphics or music. == Ways to classify == As there so many applications and since their attributes vary so dramatically, there are many different ways to classify them. === By legal aspects === Proprietary software is protected under an exclusive copyright, and a software license grants limited usage rights. Such applications may allow add-ons from third parties. Free and open-source software (FOSS) can be run, distributed, sold, and extended for any purpose. FOSS software released under a free license may be perpetual and also royalty-free. Perhaps, the owner, the holder or third-party enforcer of any right (copyright, trademark, patent, or ius in re aliena) are entitled to add exceptions, limitations, time decays or expiring dates to the license terms of use. Public-domain software is a type of FOSS that is royalty-free and can be run, distributed, modified, reversed, republished, or created in derivative works without any copyright attribution and therefore revocation. It can even be sold, but without transferring the public domain property to other single subjects. Public-domain software can be released under a (un)licensing legal statement, which enforces those terms and conditions for an indefinite duration (for a lifetime, or forever). === By platform === An application can be categorized by the host platform on which it runs. Notable platforms include operating system (native), web browser, cloud computing and mobile. For example a web application runs in a web browser whereas a more traditional, native application runs in the environment of a computer's operating system. There has been a contentious debate regarding web applications replacing native applications for many purposes, especially on mobile devices such as smartphones and tablets. Web apps have indeed greatly increased in popularity for some uses, but the advantages of applications make them unlikely to disappear soon, if ever. Furthermore, the two can be complementary, and even integrated. === Horizontal vs. vertical === Application software can be seen as either horizontal or vertical. Horizontal applications are more popular and widespread, because they are general purpose, for example word processors or databases. Vertical applications are niche products, designed for a particular type of industry or business, or department within an organization. Integrated suites of software will try to handle every specific aspect possible of, for example, manufacturing or banking worker, accounting, or customer service. === By purpose === There are many types of application software: Enterprise Addresses the needs of an entire organization's processes and data flows, across several departments, often in a large distributed environment. Examples include enterprise resource planning systems, customer relationship management (CRM) systems, data replication engines, and supply chain management software. Departmental Software is a sub-type of enterprise software with a focus on smaller organizations or groups within a large organization. (Examples include travel expense management and IT Helpdesk.) Enterprise infrastructure Provides common capabilities needed to support enterprise software systems. (Examples include databases, email servers, and systems for managing networks and security.) Application platform as a service (aPaaS) A cloud computing service that offers development and deployment environments for application services. Knowledge worker Lets users create and manage information, often for and individual media editors may aid in multiple information worker tasks. Content access Used primarily to access content without editing, but may include software that allows for content editing. Such software addresses the needs of individuals and groups to consume digital entertainment and published digital content. (Examples include media players, web browsers, and help browsers.) Educational Related to content access software, but has the content or features adapted for use by educators or students. For example, it may deliver evaluations (tests), track progress through material, or include collaborative capabilities. Simulation Simulates physical or abstract systems for either research, training, or entertainment purposes. Media development Generates print and electronic media for others to consume, most often in a commercial or educational setting. This includes graphic-art software, desktop publishing software, multimedia development software, HTML editors, digital-animation editors, digital audio and video composition, and many others. Engineering Used in developing hardware and software products. This includes computer-aided design (CAD), computer-aided engineering (CAE), computer language editing and compiling tools, integrated development environments, and application programmer interfaces. Entertainment Refers to video games, screen savers, programs to display motion pictures or play recorded music, and other forms of entertainment which can be experienced through the use of a computing device. == Taxonomy == This section is a taxonomy of kinds of applications. This organization is but one of many different ways to organize them. A kind is included in only one category even if it logically fits in multiple. === General-purpose === Calculator Spreadsheet Web browser Web mapping E-commerce Social media === Communication === Chat Email Presentation software Phone Messages Networking software Web conferencing === Documentation === Desktop

    Read more →
  • SitePal

    SitePal

    SitePal is a speaking avatar platform for small and medium-sized businesses developed by Oddcast. SitePal allows users to deploy "virtual employees" on websites that can welcome visitors, guide them around the site and answer questions. The use of SitePal on commercial websites has been controversial because many visitors report finding them annoying. Some research has shown that they can increase sales in comparison to using static photographs. == Development == The technology used was the result of more than 4 years of research at Stanford University. The research was based on a literature review and other previous work in the field of artificial intelligence research. The SitePal AI option uses the AIML programming language, which is partially editable by users. This allows web designers to simulate normal human conversation by using keywords or key phrases that the bot can respond to. == Features == The company provides web designers with options to customize the chosen avatar. A large selection of faces, clothing, hair, backgrounds, voices and other details are available. If a web designer wants to use a particular face, Sitepal can create one from a photo. Thus, a mascot or a known face can be simulated. == Speech == Sitepal avatars talk through text-to-speech (tts) software. A short paragraph can be written (up to 900 characters) and the text-to-speech engine will compile the actual speech, which can be reproduced and edited. The tts engine is not perfect, but it comes close to actual speech and is easy to understand. Tts can be further enhanced by some commands, like /laugh and /loud which make the avatar laugh or talk loud. Even pronunciation is possible. The web designer can record and upload his or her own audio messages. Alternatively Sitepal offers professional voice acting service at extra cost. == User interaction == The company provides 5 options for visitor interaction: No interaction. The avatar simply says a pre-fixed message. FAQ mode. Questions can be configured, which are clickable and the user can hear the answer. Lead mode. The avatar prompts the user to type his email and short message, so it can be sent to the webmaster (usually used on a "contact us" page) Chatbot mode. The avatar greets the user, and he can type his questions and have a conversation with the bot. With predetermined replies, this can work as an FAQ as well. API customization. Experienced programmers can make their avatar interact with their website, making it talk when the user clicks on a link or when other triggers occur. Even dual avatar conversations can be created, like a talk show. == Posting options == The company provides five options for posting the avatar: Embed in webpage (via javascript) Embed in HTML Send by email Publish to eBay Embed in Flash == Criticism == Early reviews, such as one by Troy Dreier published in PC World in 2002 were positive and described SitePal as: "an engagingly simple and personal tool, and the price is reasonable for what it adds to a site". Although Dreier did note that the program had "bugs that suggested it hadn't been tested thoroughly". In more recent years, reaction to SitePal has been much more negative with reviews such as Tom Spring writing in a PC World review citing SitePal ads and described his reaction as "Not so nice". Paul Bissex, writing in E-Scribe News described SitePal as "heinous... and embarrassing if anyone is within earshot...they creep me out" == Research on effectiveness == In one single-website research project Anita Campbell had half the visitors to Small Business Trends see a SitePal and the other half see just a static photograph. Over 11,000 visitors the SitePal avatar improved sign-up for a newsletter 144% over the control condition.

    Read more →
  • Information element

    Information element

    An information element, sometimes informally referred to as a field, is an item in Q.931 and Q.2931 messages, IEEE 802.11 management frames, and cellular network messages sent between a base transceiver station and a mobile phone or similar piece of user equipment. An information element is often a type–length–value item, containing 1) a type (which corresponds to the label of a field), a length indicator, and a value, although any combination of one or more of those parts is possible. A single message may contain multiple information elements. The abbreviation IE is found in many technical specification documents from 3GPP. It is not uncommon for a single specification document to contain thousands of references to IEs.

    Read more →
  • M-DISC

    M-DISC

    M-DISC (Millennial Disc) is a write-once optical disc technology introduced in 2009 by Millenniata, Inc. and available as DVD and Blu-ray discs. == Overview == M-DISC's design is intended to provide archival media longevity. M-Disc claims that properly stored M-DISC DVD recordings will last up to 1000 years. The M-DISC DVD looks like a standard disc, except it is almost transparent with later DVD and BD-R M-Disks having standard and inkjet printable labels. The patents protecting the M-DISC technology assert that the data layer is a glassy carbon material that is substantially inert to oxidation and has a melting point of 200–1000 °C (392–1832 °F). M-Discs are readable by most regular DVD players made after 2005 and Blu-Ray and BDXL disc drives and writable by most made after 2011. Available recording capacities conform to standard DVD/Blu-ray sizes: 4.7 GB DVD+R to 25 GB BD-R, 50 GB BD-R and 100 GB BDXL. == History == M-DISC developer Millenniata, Inc. was co-founded by Brigham Young University professors Barry Lunt, Matthew Linford, CEO Henry O'Connell and CTO Doug Hansen. The company was incorporated on May 13, 2010, in American Fork, Utah. Millenniata, Inc. officially went bankrupt in December 2016. Under the direction of CEO Paul Brockbank, Millenniata had issued convertible debt. When the obligation for conversion was not satisfied, the company defaulted on the debt payment and the debt holders took possession of all of the company's assets. The debt holders subsequently started a new company, Yours.co, to sell M-DISCs and related services. As of the 2020s, there are only 2 licensed manufacturers of M-Discs: Ritek, sold under the Ritek and RiDATA brands, and Verbatim with co-branded discs, marketed as the "Verbatim M-DISC". 128 GB BDXL never made it to market due to the 2016 bankruptcy. Early in 2022, Verbatim changed the formulation of their M-DISC branded Blu-rays. These new discs could be written at a faster rate than the previous ones – 6× speed instead of 4×. The new discs also had different colouration and markings compared with older version. Later in the year customers accused Verbatim of selling an inferior product and deceptive marketing. Verbatim responded that the new discs were a further development of the older discs and should have the same longevity, and that the technical changes therein were responsible for the altered appearance and higher write speeds. The updated M-DISC currently sold on the market uses the same metal ablative layer (MABL) metal oxide inorganic recording layer used in many of Verbatim's regular Blu-ray products. == Durability claims == The original M-DISC DVD+R was tested according to ISO/IEC 10995:2011 and ECMA-379 with a projected rated lifespan of several hundred years in archival use. The glassy carbon layers, in theory if preserved correctly in an environment like a salt mine, could store the data for over 10,000 years before going outside of readable specifications. However, the polycarbonate plastics, which are commonly used by almost all optical media and heavily in CBRN and ballistic protective equipment due to their optical, physical impact and chemical resistant properties, have a lifespan rating of only around 1000 years before degradation. Verbatim Japan claims that M-DISCs now use a titanium layer to prevent moisture ingression and to provide environmental stability. M-DISCs sold in Japan are advertised to have a projected lifespan of 100 years or more based on internal ISO/IEC 16963 testing, while other regional Verbatim websites claim that M-DISCs have a projected lifespan of "several hundred years" based on ISO/IEC 16963 testing. == Durability testing == In 2009, testing was done by the US Department of Defense (DoD) producing the China Lake Report testing Millenniata's M-Disk DVD to current market offerings from Delkin, MAM-A, Mitsubishi, Taiyo Yuden and Verbatim with all brands using organic dyes failing to pass the series of accelerated aging tests. From 2010 to 2012, the French National Laboratory of Metrology and Testing (LNE) used high-temperature accelerated aging testing, at 90 °C (194 °F) and 85% relative humidity inside a CLIMATS Excal 5423-U, for 250 to 1000 hours with a mix of inorganic DVD+R discs from MPO, Verbatim, Maxell, Syylex and DataTresor. The summary of the tests states that Syylex Glass Master Disc was rated for 1000+ hours, DataTresor Disc 250 hours+ and M-Disk under 250 hours. The Syylex disc was a custom-ordered product that could not be burned in a consumer player when they were still purchaseable from Syylex before their bankruptcy, so it was not truly in the same category as the others. In 2016, a consumer Mol Smith did real world stress testing on the 25 GB BD-R M-Disc alongside TDK's standard BD-R 25 GB disc using a copied movie, which demonstrated the reliability of M-Disc's molding compared to standard discs; after 60 days of outdoor direct exposure the M-Disk was played without error, while the TDK disc was physically destroyed. In 2022, the NIST Interagency Report NIST IR 8387 listed the M-Disc as an acceptable archival format rated for 100+ years, citing the aforementioned 2009 and 2012 tests by the US Department of Defense and French National Laboratory of Metrology and Testing as sources. == Commercial support == While recorded discs are readable in conventional DVD and BD drives, M-disc DVDs can only be burned by drives with firmware that supports the slightly higher power mode that M-Disk requires for burning its inorganic layers, as such writing speed is typically 2× speed. Blu-ray M-discs can be both written and read in most standard Blu-ray drives and are certified by the Blu-ray Disc Association to meet all current standard specifications as of 2019. Typically, the M-Discs cost 1.5–3× the price of standard Blu-Ray discs with DVD M-Discs now having sparse availability. With the first-generation DVD M-DISCs, it was difficult to determine which was the writable side of the disc due to being near fully translucent, until coloring and later labels similar to that on standard DVD discs was added to discs to help distinguish the sides preventing user error. Asus, LG Electronics, Lite-On, Pioneer, Buffalo Technology, and Hitachi-LG produce drives that can record M-DISC media while Verbatim and Ritek produce M-DISC discs. == Adoption == The regional government of the U.S. state of Utah has used M-Disc since 2011. Some consumers and avid datahoarders have adopted the format for cold digital data storage. == Alternative technologies == === Optical === Syylex Glass Master Disc: these discs use etched glass and are only typically degradable by physical or chemical damage, but not by normal ageing inside an archival environment. Current BD 25 GB, BD-R DL 50 GB & BDXL 100 GB (three layer) and Sony's BDXL 128 GB (four layer) discs are rated for up to 50 years (Standard inorganic HTL discs). Sony's Optical Disc Archive, is an optical competitor to the LTO tape-based data storage system, currently with up to 5.5 TB cartridges of dual-sided 120mm discs, with desktop readers and automated rackmount standard archival systems allowing for large scale archival and data retrieval rated for an estimated 100+ years. Pioneer DM for Archive is a disc media and drive combination developed by Pioneer to meet the requirements laid out by the Japanese government for preservation of financial data for a minimum of 100 years. The discs use a MABL type recording layer and are manufactured with tight tolerances. Although burnable in any BD Writer, when burned in Pioneers DM for Archive writers using the DM Archiver software the media and burn quality meet ISO/IEC 18630 which defines the testing methods needed for ensuring media and burn quality. === Magnetic === Linear Tape-Open (LTO) is rated for up to 30 years in a climate-controlled environment and is currently in use by most industries, including broadcast and corporate digital data systems. The latest generation released in 2026 is LTO-10, it defines two unique cartridge types which can hold 30 TB or 40 TB each Hard disk drives are currently available up to 30 TB (HDD) capacity in 3.5-inch format and 5 TB in 2.5-inch laptop format. However, unlike optical media, they are limited to 5–25 years of operation lifespan due to inevitable mechanical failure or magnetic instability. == Gallery ==

    Read more →
  • Floyd–Steinberg dithering

    Floyd–Steinberg dithering

    Floyd–Steinberg dithering is an image dithering algorithm first published in 1976 by Robert W. Floyd and Louis Steinberg. It is commonly used by image manipulation software, for example, when converting an image from a Truecolor 24-bit PNG format into a GIF format, which is restricted to a maximum of 256 colors. == Implementation == The algorithm achieves dithering using error diffusion, meaning it pushes (adds) the residual quantization error of a pixel onto its neighboring pixels, to be quantized after. It spreads the debt out according to the distribution (shown as a map of the neighboring pixels): [ ∗ 7 16 … … 3 16 5 16 1 16 … ] {\displaystyle {\begin{bmatrix}&&&{\frac {\displaystyle 7}{\displaystyle 16}}&\ldots \\\ldots &{\frac {\displaystyle 3}{\displaystyle 16}}&{\frac {\displaystyle 5}{\displaystyle 16}}&{\frac {\displaystyle 1}{\displaystyle 16}}&\ldots \\\end{bmatrix}}} The pixel indicated with a star () indicates the pixel currently being scanned, and the blank pixels are the previously scanned pixels. The specific values (7/16, 3/16, 5/16, 1/16) were originally found by trial-and-error, "guided by the desire to have a region of desired density 0.5 come out as a checkerboard pattern". The algorithm scans the image from left to right, top to bottom, quantizing pixel values one by one. Each time, the quantization error is transferred to the neighboring pixels, while not affecting the pixels that already have been quantized. Hence, if a number of pixels have been rounded downwards, it becomes more likely that the next pixel is rounded upwards, such that on average, the quantization error is close to zero. The diffusion coefficients have the property that if the original pixel values are exactly halfway in between the nearest available colors, the dithered result is a checkerboard pattern. For example, 50% grey data could be dithered as a black-and-white checkerboard pattern. For optimal dithering, the counting of quantization errors should be in sufficient accuracy to prevent rounding errors from affecting the result. For correct results, all values should be linearized first, rather than operating directly on sRGB values as is common for images stored on computers. In some implementations, the horizontal direction of scan alternates between lines; this is called "serpentine scanning" or boustrophedon transform dithering. The algorithm described above is in the following pseudocode. This works for any approximately linear encoding of pixel values, such as 8-bit integers, 16-bit integers or real numbers in the range [0, 1]. for each y from top to bottom do for each x from left to right do oldpixel := pixels[x][y] newpixel := find_closest_palette_color(oldpixel) pixels[x][y] := newpixel quant_error := oldpixel - newpixel pixels[x + 1][y ] := pixels[x + 1][y ] + quant_error × 7 / 16 pixels[x - 1][y + 1] := pixels[x - 1][y + 1] + quant_error × 3 / 16 pixels[x ][y + 1] := pixels[x ][y + 1] + quant_error × 5 / 16 pixels[x + 1][y + 1] := pixels[x + 1][y + 1] + quant_error × 1 / 16 When converting grayscale pixel values from a high to a low bit depth (e.g. 8-bit grayscale to 1-bit black-and-white), find_closest_palette_color() may perform just a simple rounding, for example: find_closest_palette_color(oldpixel) = round(oldpixel / 255) The pseudocode can result in pixel values exceeding the valid values (such as greater than 255 in 8-bit grayscale images). Such values should ideally be handled by the find_closest_palette_color() function, rather than clipping the intermediate values, since a subsequent error may bring the value back into range. However, if fixed-width integers are used, wrapping of intermediate values would cause inversion of black and white, and so should be avoided. The find_closest_palette_color() implementation is nontrivial for a palette that is not evenly distributed, however small inaccuracies in selecting the correct palette color have minimal visual impact due to error being propagated to future pixels. A nearest neighbor search in 3D is frequently used.

    Read more →
  • CodePen

    CodePen

    CodePen is an online community for testing and showcasing user-created HTML, CSS and JavaScript code snippets. It functions as an online code editor and open-source learning environment, where developers can create code snippets, called "pens," and test them. It was founded in 2012 by full-stack developers Alex Vazquez and Tim Sabat and front-end designer Chris Coyier. Its employees work remotely, rarely all meeting together in person. CodePen is a large community for web designers and developers to showcase their coding skills, with an estimated 330,000 registered users and 14.16 million monthly visitors.

    Read more →
  • Timeline of operating systems

    Timeline of operating systems

    This article presents a timeline of events in the history of computer operating systems from 1951 to the current day. For a narrative explaining the overall developments, see the History of operating systems. == 20th Century == == 1940s == 1949 EDSAC was considered the first operating system developed by Maurice Wilkes and manufactured by the University of Cambridge == 1950s == 1951 LEO I 'Lyons Electronic Office' was the commercial development of EDSAC computing platform, supported by British firm J. Lyons and Co. 1953 DYSEAC - an early machine capable of distributing computing 1955 General Motors Operating System made for IBM 701 MIT's Tape Director operating system made for UNIVAC 1103 1956 GM-NAA I/O for IBM 704, based on General Motors Operating System 1957 Atlas Supervisor (Manchester University) (Atlas computer project start) BESYS (Bell Labs), for IBM 704, later IBM 7090 and IBM 7094 1958 University of Michigan Executive System (UMES), for IBM 704, 709, and 7090 1959 SHARE Operating System (SOS), based on GM-NAA I/O == 1960s == 1960 IBSYS (IBM for its 7090 and 7094) 1961 CTSS demonstration (MIT's Compatible Time-Sharing System for the IBM 7094) MCP (Burroughs Master Control Program) for B5000 1962 Atlas Supervisor (Manchester University) (Atlas computer commissioned) BBN Time-Sharing System GCOS (GE's General Comprehensive Operating System, originally GECOS, General Electric Comprehensive Operating Supervisor) 1963 ADMIRAL AN/FSQ-32, another early time-sharing system begun CTSS becomes operational (MIT's Compatible Time-Sharing System for the IBM 7094) JOSS, an interactive time-shared system that did not distinguish between operating system and language Titan Supervisor, early time-sharing system begun 1964 Berkeley Timesharing System (for Scientific Data Systems' SDS 940) Chippewa Operating System (for CDC 6600 supercomputer) Dartmouth Time-Sharing System (Dartmouth College's DTSS for GE computers) EXEC 8 (UNIVAC) KDF9 Timesharing Director (English Electric) – an early, fully hardware secured, fully pre-emptive process switching, multi-programming operating system for KDF9 (originally announced in 1960) OS/360 (IBM's primary OS for its S/360 series) (announced) PDP-6 Monitor (DEC) descendant renamed TOPS-10 in 1970 SCOPE (CDC 3000 series) 1965 BOS/360 (IBM's Basic Operating System) DECsys TOS/360 (IBM's Tape Operating System) Livermore Time Sharing System (LTSS) Multics (MIT, GE, Bell Labs for the GE-645) (announced) Pick operating system SIPROS 66 (Simultaneous Processing Operating System) THE multiprogramming system (Technische Hogeschool Eindhoven) development TSOS (later VMOS) (RCA) 1966 DOS/360 (IBM's Disk Operating System) GEORGE 1 & 2 for ICT 1900 series Mod 1 Mod 2 Mod 8 MS/8 (Richard F. Lary's DEC PDP-8 system) MSOS (Mass Storage Operating System) OS/360 (IBM's primary OS for its S/360 series) PCP and MFT (shipped) RAX Remote Users of Shared Hardware (RUSH), a time-sharing system developed by Allen-Babcock for the IBM 360/50 SODA for Elwro's Odra 1204 Universal Time-Sharing System (XDS Sigma series) 1967 CP-40, predecessor to CP-67 on modified IBM System/360 Model 40 CP-67 (IBM, also known as CP/CMS) Conversational Programming System (CPS), an IBM time-sharing system under OS/360 Michigan Terminal System (MTS) (time-sharing system for the IBM S/360-67 and successors) ITS (MIT's Incompatible Timesharing System for the DEC PDP-6 and PDP-10) OS/360 MVT ORVYL (Stanford University's time-sharing system for the IBM S/360-67) TSS/360 (IBM's Time-sharing System for the S/360-67, never officially released, canceled in 1969 and again in 1971) WAITS (SAIL, Stanford Artificial Intelligence Laboratory, time-sharing system for DEC PDP-6 and PDP-10, later TOPS-10) 1968 Airline Control Program (ACP) (IBM) B1 (NCR Century series) CALL/360, an IBM time-sharing system for System/360 HP Real-Time Executive (HP RTE) – Hewlett-Packard HP Time-Shared BASIC (HP TSB) – Hewlett-Packard (time-sharing system for the HP 2000) THE multiprogramming system (Eindhoven University of Technology) publication TSS/8 (DEC for the PDP-8) VP/CSS 1969 B2 (NCR Century series) B3 (NCR Century series) GEORGE 3 For ICL 1900 series MINIMOP Multics (MIT, GE, Bell Labs for the GE-645 and later the Honeywell 6180) (opened for paying customers in October) RC 4000 Multiprogramming System (RC) TENEX (Bolt, Beranek and Newman for DEC systems, later TOPS-20) Unics (later Unix) (AT&T, initially on DEC computers) Xerox Operating System == 1970s == 1970 DOS-11 (PDP-11) 1971 EMAS Kronos RSTS-11 2A-19 (First released version; PDP-11) RSX-15 OS/8 1972 B4 (NCR Century series) COS-300 Data General RDOS Edos MUSIC/SP OS/4 OS 1100 OS/2000 (Honeywell 2000-series) Operating System/Virtual Storage 1 (OS/VS1) Operating System/Virtual Storage 2 R1 (OS/VS2 SVS) PRIMOS (written in FORTRAN IV, that didn't have pointers, while later versions, around version 18, written in a version of PL/I, called PL/P) Virtual Machine/Basic System Extensions Program Product (BSEPP or VM/SE) Virtual Machine/System Extensions Program Product (SEPP or VM/BSE) Virtual Machine Facility/370 (VM/370), sometimes known as VM/CMS 1973 Эльбрус-1 (Elbrus-1) – Soviet computer – created using high-level language uЭль-76 (AL-76/ALGOL 68) Alto OS CP-V (Control Program V) RSX-11D RT-11 VME – implementation language S3 (ALGOL 68) 1974 ACOS-2 (NEC) ACOS-4 ACOS-6 CP/M DOS-11 V09-20C (Last stable release, June 1974) Hydra – capability-based, multiprocessing OS kernel MONECS Multi-Programming Executive (MPE) – Hewlett-Packard Operating System/Virtual Storage 2 R2 (MVS) OS/7 OS/16 OS/32 Sintran III 1975 BS2000 V2.0 (First released version) COS-350 ISIS NOS (Control Data Corporation) OS/3 (Univac) VS/9 (formerly RCA's TSOS, later named VMOS) Version 6 Unix XVM/DOS XVM/RSX 1976 Cambridge CAP computer – all operating system procedures written in ALGOL 68C, with some closely associated protected procedures in BCPL Cray Operating System DX10 FLEX TOPS-20 TX990/TXDS Tandem Nonstop OS v1 Thoth 1977 1BSD AMOS KERNAL OASIS operating system OS68 OS4000 RMX-80 System 88 (Exec) System Support Program (IBM System/34 and System/36) TRSDOS Virtual Memory System (VMS) V1.0 (Initial commercial release, October 25) VRX (Virtual Resource eXecutive) VS Virtual Memory Operating System 1978 2BSD Apple DOS Control Program Facility (IBM System/38) Cray Time Sharing System (CTSS) DPCX (IBM) DPPX (IBM) HDOS KSOS – secure OS design from Ford Aerospace KVM/370 – security retro-fit of IBM VM/370 Lisp machine (CADR) MVS/System Extensions (MVS/SE) OS4 (Naked Mini 4) PTDOS TRIPOS UCSD p-System (First released version) Z80-RIO 1979 Atari DOS 3BSD CP-6 Idris MP/M MVS/System Extensions R2 (MVS/SE2) NLTSS POS Sinclair BASIC Transaction Processing Facility (TPF) (IBM) UCLA Secure UNIX – an early secure UNIX OS based on security kernel UNIX/32V DOS/VSE Version 7 Unix == 1980s == 1980 86-DOS AOS/VS (Data General) Business Operating System CTOS DOSPLUS (TRS-80) MVS/System Product (MVS/SP) V1 NewDos/80 OS-9 RMX-86 RS-DOS SOS Virtual Machine/System Product (VM/SP) Xenix 1981 Acorn MOS Aegis SR1 (First Apollo/DOMAIN systems shipped on March 27) CP/M-86 DRX (Distributed Resource Executive) iMAX – OS for Intel's iAPX 432 capability machine MCS (Multi-user Control System) MS-DOS PC DOS Pilot (Xerox Star operating system) UNOS UTS V VERSAdos VRTX VSOS (Virtual Storage Operating System) Xinu first release 1982 Commodore DOS LDOS (By Logical Systems, Inc. – for the Radio Shack TRS-80 Models I, II & III) PCOS (Olivetti M20) pSOS QNX Stratus VOS Sun UNIX (later SunOS) 0.7 Ultrix Unix System III VAXELN 1983 Coherent DNIX EOS GNU (project start) Lisa Office System 7/7 LOCUS – UNIX compatible, high reliability, distributed OS MVS/System Product V2 (MVS/Extended Architecture, MVS/XA) Novell NetWare (S-Net) PERPOS ProDOS RTU (Real-Time Unix) STOP – TCSEC A1-class, secure OS for SCOMP hardware SunOS 1.0 VSE/System Package (VSE/SP) Version 1 1984 AMSDOS CTIX (Unix variant) DYNIX Mac OS (System 1.0) MSX-DOS NOS/VE PANOS PC/IX ROS Sinclair QDOS SINIX UNICOS Venix 2.0 Virtual Machine/Extended Architecture Migration Assistance (VM/XA MA) 1985 AmigaOS Atari TOS DG/UX DOS Plus Graphics Environment Manager Harmony MacOS 2 MIPS RISC/os Oberon – written in Oberon SunOS 2.0 Version 8 Unix Virtual Machine/Extended Architecture System Facility (VM/XA SF) Windows 1.0 Windows 1.01 Xenix 2.0 1986 AIX 1.0 Cronus distributed OS FlexOS GEMSOS – TCSEC A1-class, secure kernel for BLACKER VPN & GTNP GEOS Genera 7.0 HP-UX MacOS 3 SunOS 3.0 TR-DOS TRIX Version 9 Unix 1987 Arthur (much improved version came in 1989 under the name RISC OS) BS2000 V9.0 IRIX (3.0 is first SGI version) MacOS 4 MacOS 5 MDOS MINIX 1.0 OS/2 (1.0) PC-MOS/386 Topaz – semi-distributed OS for DEC Firefly workstation written in Modula-2+ and garbage collected VxWorks Windows 2.0 1988 A/UX (Apple Computer) AOS/VS II (Data General) CP/M rebranded as DR-DOS Flex machine – tagged, capability machine with OS and other software written

    Read more →
  • Mike Little

    Mike Little

    Mike Little (born 12 May 1962) is an English web developer and writer. He is the co-founder of the free and open source web publishing software WordPress. == Biography == Mike Little was born in Manchester, England in 1962 to a Nigerian father, who was a mathematics lecturer and musician, and an English mother who worked as a primary school teacher. Little was placed into foster care when he was four months of age, and was later adopted by the same family. He grew up on a council estate in Brinnington, Stockport, and was educated at Stockport School. In 2003, Little and Matt Mullenweg started working on a project in which they built on b2/cafelog and later named it WordPress, releasing the first version on 27 May 2003. Little states that, despite not being invited to join his co-founder's for-profit business Automattic, he and Mullenweg remain on good terms. He clarified: "I don’t want it to sound like he cheated me out of something or ripped me off in some way. He didn’t." In June 2013, Little was awarded the SAScon's "Outstanding Contribution to Digital" award for his part in co-founding and developing WordPress. Little has been described as "modest" and living in "virtual anonymity". He has one daughter. He identifies as a follower of Stoicism and a humanist, and in 2021, he became a patron of charity Humanists UK.

    Read more →
  • Foreign key

    Foreign key

    A foreign key is a set of attributes in a table that refers to the primary key of another table, linking these two tables. In the context of relational databases, a foreign key is subject to an inclusion dependency constraint that the tuples consisting of the foreign key attributes in one relation, R, must also exist in some other (not necessarily distinct) relation, S; furthermore that those attributes must also be a candidate key in S. In other words, a foreign key is a set of attributes that references a candidate key. For example, a table called TEAM may have an attribute, MEMBER_NAME, which is a foreign key referencing a candidate key, PERSON_NAME, in the PERSON table. Since MEMBER_NAME is a foreign key, any value existing as the name of a member in TEAM must also exist as a person's name in the PERSON table; in other words, every member of a TEAM is also a PERSON. == Summary == The table containing the foreign key is called the child table, and the table containing the candidate key is called the referenced or parent table. In database relational modeling and implementation, a candidate key is a set of zero or more attributes, the values of which are guaranteed to be unique for each tuple (row) in a relation. The value or combination of values of candidate key attributes for any tuple cannot be duplicated for any other tuple in that relation. Since the purpose of the foreign key is to identify a particular row of referenced table, it is generally required that the foreign key is equal to the candidate key in some row of the primary table, or else have no value (the NULL value.). This rule is called a referential integrity constraint between the two tables. Because violations of these constraints can be the source of many database problems, most database management systems provide mechanisms to ensure that every non-null foreign key corresponds to a row of the referenced table. For example, consider a database with two tables: a CUSTOMER table that includes all customer data and an ORDER table that includes all customer orders. Suppose the business requires that each order must refer to a single customer. To reflect this in the database, a foreign key column is added to the ORDER table (e.g., CUSTOMERID), which references the primary key of CUSTOMER (e.g. ID). Because the primary key of a table must be unique, and because CUSTOMERID only contains values from that primary key field, we may assume that, when it has a value, CUSTOMERID will identify the particular customer which placed the order. However, this can no longer be assumed if the ORDER table is not kept up to date when rows of the CUSTOMER table are deleted or the ID column altered, and working with these tables may become more difficult. Many real world databases work around this problem by 'inactivating' rather than physically deleting master table foreign keys, or by complex update programs that modify all references to a foreign key when a change is needed. Foreign keys play an essential role in database design. One important part of database design is making sure that relationships between real-world entities are reflected in the database by references, using foreign keys to refer from one table to another. Another important part of database design is database normalization, in which tables are broken apart and foreign keys make it possible for them to be reconstructed. Multiple rows in the referencing (or child) table may refer to the same row in the referenced (or parent) table. In this case, the relationship between the two tables is called a one to many relationship between the referencing table and the referenced table. In addition, the child and parent table may, in fact, be the same table, i.e. the foreign key refers back to the same table. Such a foreign key is known in SQL:2003 as a self-referencing or recursive foreign key. In database management systems, this is often accomplished by linking a first and second reference to the same table. A table may have multiple foreign keys, and each foreign key can have a different parent table. Each foreign key is enforced independently by the database system. Therefore, cascading relationships between tables can be established using foreign keys. A foreign key is defined as an attribute or set of attributes in a relation whose values match a primary key in another relation. The syntax to add such a constraint to an existing table is defined in SQL:2003 as shown below. Omitting the column list in the REFERENCES clause implies that the foreign key shall reference the primary key of the referenced table. Likewise, foreign keys can be defined as part of the CREATE TABLE SQL statement. If the foreign key is a single column only, the column can be marked as such using the following syntax: Foreign keys can be defined with a stored procedure statement. child_table: the name of the table or view that contains the foreign key to be defined. parent_table: the name of the table or view that has the primary key to which the foreign key applies. The primary key must already be defined. col3 and col4: the name of the columns that make up the foreign key. The foreign key must have at least one column and at most eight columns. == Referential actions == Because the database management system enforces referential constraints, it must ensure data integrity if rows in a referenced table are to be deleted (or updated). If dependent rows in referencing tables still exist, those references have to be considered. SQL:2003 specifies 5 different referential actions that shall take place in such occurrences: CASCADE RESTRICT NO ACTION SET NULL SET DEFAULT === CASCADE === Whenever rows in the parent (referenced) table are deleted (or updated), the respective rows of the child (referencing) table with a matching foreign key column will be deleted (or updated) as well. This is called a cascade delete (or update). === RESTRICT === A value cannot be updated or deleted when a row exists in a referencing or child table that references the value in the referenced table. Similarly, a row cannot be deleted as long as there is a reference to it from a referencing or child table. To understand RESTRICT (and CASCADE) better, it may be helpful to notice the following difference, which might not be immediately clear. The referential action CASCADE modifies the "behavior" of the (child) table itself where the word CASCADE is used. For example, ON DELETE CASCADE effectively says "When the referenced row is deleted from the other table (master table), then delete also from me". However, the referential action RESTRICT modifies the "behavior" of the master table, not the child table, although the word RESTRICT appears in the child table and not in the master table! So, ON DELETE RESTRICT effectively says: "When someone tries to delete the row from the other table (master table), prevent deletion from that other table (and of course, also don't delete from me, but that's not the main point here)." RESTRICT is not supported by Microsoft SQL 2012 and earlier. === NO ACTION === NO ACTION and RESTRICT are very much alike. The main difference between NO ACTION and RESTRICT is that with NO ACTION the referential integrity check is done after trying to alter the table. RESTRICT does the check before trying to execute the UPDATE or DELETE statement. Both referential actions act the same if the referential integrity check fails: the UPDATE or DELETE statement will result in an error. In other words, when an UPDATE or DELETE statement is executed on the referenced table using the referential action NO ACTION, the DBMS verifies at the end of the statement execution that none of the referential relationships are violated. This is different from RESTRICT, which assumes at the outset that the operation will violate the constraint. Using NO ACTION, the triggers or the semantics of the statement itself may yield an end state in which no foreign key relationships are violated by the time the constraint is finally checked, thus allowing the statement to complete successfully. === SET NULL, SET DEFAULT === In general, the action taken by the DBMS for SET NULL or SET DEFAULT is the same for both ON DELETE or ON UPDATE: the value of the affected referencing attributes is changed to NULL for SET NULL, and to the specified default value for SET DEFAULT. === Triggers === Referential actions are generally implemented as implied triggers (i.e. triggers with system-generated names, often hidden.) As such, they are subject to the same limitations as user-defined triggers, and their order of execution relative to other triggers may need to be considered; in some cases it may become necessary to replace the referential action with its equivalent user-defined trigger to ensure proper execution order, or to work around mutating-table limitations. Another important limitation appears with transaction isolation: your changes to a row may not be able to fully cascade because the row is ref

    Read more →
  • WEA Manufacturing

    WEA Manufacturing

    WEA Manufacturing was the record, tape, and compact disc manufacturing arm of WEA International Inc. from 1978 to 2003, when it was sold and merged into Cinram International, a previous competitor. The last owner when the plant closed was Technicolor. == History == WEA Manufacturing Inc. was created in 1978–1979 when Warner Communications Inc. purchased two of its longtime suppliers: the record pressing plants Specialty Records Corporation (Olyphant, Pennsylvania) and Allied Record Company (Los Angeles). The company was headquartered in Olyphant, where the original plant was replaced in late 1981 by a new facility which retained the name Specialty Records Corporation. The Specialty Records Corporation name was dropped in 1996 in favor of WEA Manufacturing. The company invested in CD manufacturing in 1986, matching a $247,000 contribution by economic development corporation Ben Franklin Technology Partners to develop and implement new processes of manufacturing audio CDs and CD-ROMs. BFTP assembled a team of experts in physics, electrical engineering, and thin film technology from the University of Scranton and Lehigh University to carry out the research and development. The Olyphant plant and another plant in Alsdorf, Germany, were expanded to support CD pressing that year, with the Olyphant facility's production commencing first in September 1986. WEA Manufacturing grew to become one of the largest manufacturers of recorded media in the world. The company began manufacturing Laserdiscs in July 1991. The company's DVD division, Warner Advanced Media Operations (WAMO), helped design the high-density format used in DVDs, and manufactured some of the first DVDs in the late 1990s. The company was sold to Cinram International in October 2003 and no longer exists under the name WEA Manufacturing, but the Olyphant plant continued to operate under its new ownership. In 2005, the company was Lackawanna County's largest employer, with over 2,300 people working at the Olyphant plant. Cinram closed the former Allied plant in 2006, while Technicolor (which purchased Cinram's assets in 2015) closed the Olyphant plant in 2018. == Patents == WEA Manufacturing held U.S. patents related to compact disc manufacture: Print scanner, (1993). Interference of converging spherical waves with application to the design of light-readable information-recording media and systems for reading such media, (2004). Method of manufacturing a composite disc structure and apparatus for performing the method, (2005). Methods and apparatus for reducing the shrinkage of an optical disc's clamp area and the resulting optical disc, (2005). == Litigation == In 1990, WEA Manufacturing was sued by a Canadian firm, Optical Recording Co. (ORC), for alleged infringement of two 1971 patents related to glass mastering equipment which was used by Time Warner and WEA Manufacturing in the manufacture of approximately 450 million CDs. ORC contended that unlike five other major CD manufacturers in the U.S., Time Warner had refused to license the technology from ORC. In 1992, a jury assessed damages of 6 cents per disc, plus $4–5 million in interest.

    Read more →
  • Motion picture film scanner

    Motion picture film scanner

    A motion picture film scanner is a device used in digital filmmaking to scan original film for storage as high-resolution digital intermediate files. A film scanner scans original film stock: negative or positive print or reversal/IP. Units may scan gauges from 8 mm to 70 mm (8 mm, Super 8, 9.5 mm, 16 mm, Super 16, 35 mm, Super 35, 65 mm and 70 mm) with very high resolution scanning at 2K, 4K, 8K, or 16K resolutions. (2K is approximately 2048×1080 pixels and 4K is approximately 4096×2160 pixels). Some models of film scanner are intermittent pull-down film scanners which scan each frame individually, locked down in a pin-registered film gate, taking roughly a second per frame. Continuous-scan film scanners, where the film frames are scanned as the film is continuously moved past the imaging pick up device, are typically evolved from earlier telecine mechanisms, and can act as such at lower resolutions. The scanner scans the film frames into a file sequence (using high-end computer data storage devices), whose single file contains a digital scan of each still frame; the preferred image file format used as output are usually Cineon, DPX or TIFF, because they can store color information as raw data, preserving the optical characteristics of the film stock. These systems take a lot of storage area network (SAN) disk space. The files can be played back one after each other on high-end workstation non-linear editing system (NLE) or a virtual telecine systems. The playback is at the normal rate of 24 frames per second (or original projection frame rate of: 25, 30 or other speeds). Each year hard disks get larger and are able to hold more hours of movies on SAN systems. The challenge is to archive this massive amount of data on to data storage devices. The scanned footage is edited and composited on work stations then mastered back on film, see film-out and digital intermediate. Scanned film frames may also be used in digital film restoration. The film may also be projected directly on a digital projector in the theater. The data film files may be converted to SDTV (NTSC or PAL) video TV systems. Film recorders are the opposite of film scanners, copying content from a computer system onto film stock, for preservation or for display using film projectors. Telecines are similar to film scanners. == Imaging device == The front end of a motion picture film scanner is similar to a telecine. The imaging system may be either a charge-coupled device (CCD), a complementary metal–oxide–semiconductor (CMOS) or photomultipliers imaging pick up. A lamp is used as the light source in a CCD imaging front end. The CCDs convert the light to the video signals. In a cathode-ray tube (CRT) imaging system the CRT (also called a Flying spot tube) is used as the light source and part of the scanning system. Photomultipliers or avalanche photodiodes are used to convert the light to electrical video signals. A prism and/or dichroic mirrors or color filters are used to separate the light into the three: red, green and blue, imaging pick up devices. == Image processing == The three color signals (RGB) are electronically processed and color graded. A 3D look up table (3D LUT) is usually applied to the RGB values before it is coded into the DPX output files. The DPX files are usually made output through a network port cable or an optical fiber port: HIPPI, Fibre Channel or newer systems like gigabit Ethernet. A computer then stores the files on to hard drives of a storage area network for later processing and use. Modern motion picture film scanners many have an option for an infrared CCD channel for dirt mapping, that can be used to automatically or in post manually remove dirt-dust spots on the film. The IR camera channel can be used with IR dirt and scratch removal system or made output on a four IR channel for downstream dirt and dirt and scratch removal systems. Popular downstream dirt and dirt and scratch removal systems are PF Clean and Digital ICE. HDR or high dynamic range is a new system, using a compositing and tone-mapping of images to extend the dynamic range beyond the native capability of the capturing device. This may be done by using a triple exposure for the film and then compositing the three back together. Compositing can be done in a workstation in none real time or in the scanner in real time. == Models == Bold indicates a currently produced model Single frame intermittent pull-down: ARRI - Arriscan Cintel - diTTo Filmlight - Northlight 1 (up to 6K, 16mm to VistaVision), Northlight 2 (up to 8K, 16mm to VistaVision) Imagica scanner, single frame intermittent scanner. Kodak - Cineon, the first system designed for DI work, included a scanner, tapes drives, workstations and a film recorder. Lasergraphics Director 13.5K, 8mm to 70mm, IMAX & VistaVision) Continuous motion scanning: Arri - ARRISCAN XT (up to 6K, S35 down to 16mm) Cintel's C-Reality/DSX and ITK - Millennium/dataMill. Under ownership of Blackmagic Design, the Cintel Scanner was released, with the current 3rd generation capable of up to 4K scans at 30 fps. DFT - Spirit Classic (up to 2K), Spirit 4k/2k/HD (up to 4K), POLAR HQ (up to 8K, 8mm to S35), OXScan 14K (up to 14K, 16mm to 70mm), Scanity HDR (up to 4K, 16mm to S35) Filmfabriek - HDS+ (up to 4k), Pictor Pro (up to 2.7K), Pictor (up to 1080p). Filmfabriek scanners can only scan 17.5mm or smaller film formats. GE4 - Golden Eye Four - Filmscanner, 38 Mega Pixel camera. LED light source and continuous film transport using Capstan. From Digital Vision. Lasergraphics ScanStation (6.5K, 8mm to 70mm, IMAX & VistaVision) Lasergraphics Archivist (up to 5K) MWA Nova Vario series with patented laser-based, sprocket and claw free transport for 16/35mm for realtime (24/25fps) scanning with sensors for either 2K+ 2236 x 1752, or 2.5K+ HDR High Dynamic Range at 2560 x 2160, direct optical and magnetic sound on and 16 and 35mm. MWA Nova Choice 2K+ patented laser-based, sprocket and claw free transport for 8/Super8, 9.5mm, 16mm realtime (24/25fps) scanning w at 2K+, 2236 x 1752 with direct optical and magnetic sound on 16mm, magnetic from main and balance stripes on 8, Super8. Faster than real time scanning at lower resolution. P+S Technik - SteadyFrame Universal Format Film Scanner Walde - FilmStar 4K UHD 2K @ 25fps, 4K UHD @ 6fps. 35mm/16mm/8mm archive quality, continuous motion capstan driven.

    Read more →
  • UCSD Pascal

    UCSD Pascal

    UCSD Pascal is a Pascal programming language system that runs on the UCSD p-System, a portable, highly machine-independent operating system. UCSD Pascal was first released in 1977. It was developed at the University of California, San Diego (UCSD). == The p-System == In 1977, the University of California, San Diego (UCSD) Institute for Information Systems developed UCSD Pascal to provide students with a common environment that could run on any of the then available microcomputers as well as campus DEC PDP-11 minicomputers. The operating system became known as UCSD p-System. There were three operating systems that IBM offered for its original IBM PC: the UCSD p-System, CP/M-86, and IBM PC DOS. Vendor SofTech Microsystems emphasized p-System's application portability, with virtual machines for 20 CPUs as of the IBM PC's release. It predicted that users would be able to use applications they purchased on future computers running p-System; advertisements called it "the Universal Operating System". PC Magazine denounced UCSD p-System on the IBM PC, stating in a review of Context MBA, written in the language, that it "simply does not produce good code". The p-System did not sell very well for the IBM PC, because of a lack of applications and because it was more expensive than the other choices. Previously, IBM had offered the UCSD p-System as an option for IBM Displaywriter, an 8086-based dedicated word processing machine. (The Displaywriter's native operating system had been developed completely internally and was not opened for end-user programming.) Notable extensions to standard Pascal include separately compilable Units and a String type. Some intrinsics were provided to accelerate string processing (e.g. scanning in an array for a particular search pattern); other language extensions were provided to allow the UCSD p-System to be self-compiling and self-hosted. UCSD Pascal was based on a p-code machine architecture. Its contribution to these early virtual machines was to extend p-code away from its roots as a compiler intermediate language into a full execution environment. The UCSD Pascal p-Machine was optimized for the new small microcomputers with addressing restricted to 16-bit (only 64 KB of memory). James Gosling cites UCSD Pascal as a key influence (along with the Smalltalk virtual machine) on the design of the Java virtual machine. UCSD p-System achieved machine independence by defining a virtual machine, called the p-Machine (or pseudo-machine, which many users began to call the "Pascal-machine" like the OS—although UCSD documentation always used "pseudo-machine") with its own instruction set called p-code (or pseudo-code). Urs Ammann, a student of Niklaus Wirth, originally presented a p-code in his PhD thesis, from which the UCSD implementation was derived, the Zurich Pascal-P implementation. The UCSD implementation changed the Zurich implementation to be "byte oriented". The UCSD p-code was optimized for execution of the Pascal programming language. Each hardware platform then only needed a p-code interpreter program written for it to port the entire p-System and all the tools to run on it. Later versions also included additional languages that compiled to the p-code base. For example, Apple Computer offered a Fortran Compiler (written by Silicon Valley Software, Sunnyvale California) producing p-code that ran on the Apple version of the p-system. Later, TeleSoft (also located in San Diego) offered an early Ada development environment that used p-code and was therefore able to run on a number of hardware platforms including the Motorola 68000, the System/370, and the Pascal MicroEngine. UCSD p-System shares some concepts with the later Java platform. Both use a virtual machine to hide operating system and hardware differences, and both use programs written to that virtual machine to provide cross-platform support. Likewise both systems allow the virtual machine to be used either as the complete operating system of the target computer or to run in a "box" under another operating system. The UCSD Pascal compiler was distributed as part of a portable operating system, the p-System. == History == UCSD p-System began around 1974 as the idea of UCSD's Kenneth Bowles, who believed that the number of new computing platforms coming out at the time would make it difficult for new programming languages to gain acceptance. He based UCSD Pascal on the Pascal-P2 release of the portable compiler from Zurich. He was particularly interested in Pascal as a language to teach programming. UCSD introduced two features that were important improvements on the original Pascal: variable length strings, and "units" of independently compiled code (an idea included into the then-evolving Ada (programming language)). Niklaus Wirth credits the p-System, and UCSD Pascal in particular, with popularizing Pascal. It was not until the release of Turbo Pascal that UCSD's version started to slip from first place among Pascal users. The Pascal dialect of UCSD Pascal came from the subset of Pascal implemented in Pascal-P2, which was not designed to be a full implementation of the language, but rather "the minimum subset that would self-compile", to fit its function as a bootstrap kit for Pascal compilers. UCSD added strings from BASIC, and several other implementation dependent features. Although UCSD Pascal later obtained many of the other features of the full Pascal language, the Pascal-P2 subset persisted in other dialects, notably Borland Pascal, which copied much of the UCSD dialect. == Versions == There were four versions of UCSD p-code engine, each with several revisions of the p-System and UCSD Pascal. A revision of the p-code engine (i.e., the p-Machine) meant a change to the p-code language, and therefore compiled code is not portable between different p-Machine versions. Each revision was represented with a leading Roman Numeral, while operating system revisions were enumerated as the "dot" number following the p-code Roman Numeral. For example, II.3 represented the third revision of the p-System running on the second revision of the p-Machine. === Version I === Original version, never officially distributed outside of the University of California, San Diego. However, the Pascal sources for both Versions I.3 and I.5 were freely exchanged between interested users. Specifically, the patch revision I.5a was known to be one of the most stable. === Version II === Widely distributed, available on many early microcomputers. Numerous versions included Apple II ultimately Apple Pascal, DEC PDP-11, Intel 8080, Zilog Z80, and MOS 6502 based machines, Motorola 68000 and the IBM PC (Version II on the PC was restricted to one 64K code segment and one 64K stack/heap data segment; Version IV removed the code segment limit but cost a lot more). Project members from this era include Dr Kenneth L Bowles, Mark Allen, Richard Gleaves, Richard Kaufmann, Pete Lawrence, Joel McCormack, Mark Overgaard, Keith Shillington, Roger Sumner, and John Van Zandt. === Version III === Custom version written for Western Digital to run on their Pascal MicroEngine microcomputer. Included support for parallel processes for the first time. === Version IV === Commercial version, developed and sold by SofTech. Based on Version II; did not include changes from Version III. Did not sell well due to combination of their pricing structure, performance problems due to p-code interpreter, and competition with native operating systems (on top of which it often ran). After SofTech dropped the product, it was picked up by Pecan Systems, a relatively small company formed of p-System users and fans. Sales revived somewhat, due mostly to Pecan's reasonable pricing structure, but the p-System and UCSD Pascal gradually lost the market to native operating systems and compilers. Available for the TI-99/4A equipped with p-code card, Commodore CBM 8096, Sage II/IV, HP 9000, and BBC Micro with 6502 second processor. == Further use == The Corvus Systems computer used UCSD Pascal for all its user software. The "innovative concept" of the Constellation OS was to run Pascal (interpretively or compiled) and include all common software in the manual, so users could modify as needed.

    Read more →
  • Capture the flag (cybersecurity)

    Capture the flag (cybersecurity)

    In computer security, Capture the Flag (CTF) is an exercise in which participants attempt to find text strings, called "flags", which are secretly hidden in purposefully vulnerable programs or websites. They can be used for both competitive or educational purposes. In two main variations of CTFs, participants either steal flags from other participants (attack/defense-style CTFs) or from organizers (jeopardy-style challenges). A mixed competition combines these two styles. Competitions can include hiding flags in hardware devices, they can be both online or in-person, and can be advanced or entry-level. The game is inspired by the traditional outdoor sport with the same name. CTFs are used as a tool for developing and refining cybersecurity skills, making them popular in both professional and academic settings. == Overview == Capture the Flag (CTF) is a cybersecurity competition that is used to test and develop computer security skills. It was first developed in 1996 at DEF CON, the largest cybersecurity conference in the United States which is hosted annually in Las Vegas, Nevada. The conference hosts a weekend of cybersecurity competitions, including their flagship CTF. Two popular CTF formats are jeopardy and attack-defense. Both formats test participant’s knowledge in cybersecurity, but differ in objective. In the Jeopardy format, participating teams must complete as many challenges of varying point values from a various categories such as cryptography, web exploitation, and reverse engineering. In the attack-defense format, competing teams must defend their vulnerable computer systems while attacking their opponent's systems. The exercise involves a diverse array of tasks, including exploitation and cracking passwords, but there is little evidence showing how these tasks translate into cybersecurity knowledge held by security experts. Recent research has shown that the Capture the Flag tasks mainly covered technical knowledge but lacked social topics like social engineering and awareness on cybersecurity. == Educational applications == CTFs have been shown to be an effective way to improve cybersecurity education through gamification. There are many examples of CTFs designed to teach cybersecurity skills to a wide variety of audiences, including PicoCTF, organized by the Carnegie Mellon CyLab, which is oriented towards high school students, and Arizona State University supported pwn.college. Beyond educational CTF events and resources, CTFs has been shown to be a highly effective way to instill cybersecurity concepts in the classroom. CTFs have been included in undergraduate computer science classes such as Introduction to Information Security at the National University of Singapore. CTFs are also popular in military academies. They are often included as part of the curriculum for cybersecurity courses, with the NSA organized Cyber Exercise culminating in a CTF competition between the US service academies and military colleges. == Competitions == Many CTF organizers register their competition with the CTFtime platform. This allows the tracking of the position of teams over time and across competitions. These include "Plaid Parliament of Pwning", "More Smoked Leet Chicken", "Dragon Sector", "dcua", "Eat, Sleep, Pwn, Repeat", "perfect blue", "organizers" and "Blue Water". Overall the "Plaid Parliament of Pwning" and "Dragon Sector" have both placed first worldwide the most with three times each. === Community competitions === Every year there are dozens of CTFs organized in a variety of formats. Many CTFs are associated with cybersecurity conferences such as DEF CON, various editions of SANS Institute's NetWars, HITCON, and BSides. The DEF CON CTF, an attack-defence CTF, is notable for being one of the oldest CTF competitions to exist, and has been variously referred to as the "World Series", "Superbowl", and "Olympics", of hacking by media outlets. The NYU Tandon hosted Cybersecurity Awareness Worldwide (CSAW) CTF is one of the largest open-entry competitions for students learning cybersecurity from around the world. In 2021, it hosted over 1200 teams during the qualification round. In addition to conference organized CTFs, many CTF clubs and teams organize CTF competitions. Many CTF clubs and teams are associated with universities, such as the CMU associated Plaid Parliament of Pwning, which hosts PlaidCTF, and the ASU associated Shellphish. Some community CTFs are online and open to all participants. The SANS Institute Holiday Hack Challenge and TryHackMe Advent of Cyber. === Government-supported competitions === Governmentally supported CTF competitions include the DARPA Cyber Grand Challenge and ENISA European Cybersecurity Challenge. In 2023, the US Space Force-sponsored Hack-a-Sat CTF competition included, for the first time, a live orbital satellite for participants to exploit. === Corporate-supported competitions === Corporations and other organizations sometimes use CTFs as a training or evaluation exercise, with benefits similar to those in educational settings. In addition to internal CTF exercises, some corporations such as Google and Tencent host publicly accessible CTF competitions. == In popular culture == In Mr. Robot, a qualification round for the DEF CON CTF competition is depicted in the season 3 opener "eps3.0_power-saver-mode.h". The logo for DEF CON can be seen in the background. In The Undeclared War, a CTF is depicted in the opening scene of the series as a recruitment exercise used by GCHQ. Go Go Squid!, a Chinese television series, is based around training for and competing in highly stylized CTF competitions .

    Read more →
  • User-generated content

    User-generated content

    User-generated content (UGC), alternatively known as user-created content (UCC), is content generated by users of the Internet such as images, videos, audio, text, testimonials, software, and user interactions. Online content aggregation platforms such as social media, discussion forums and wikis by their interactive and social nature, no longer produce multimedia content but provide tools to produce, collaborate, and share a variety of content, which can affect the attitudes and behaviors of the audience in various aspects. This transforms the role of consumers from passive spectators to active participants. User-generated content is used for a wide range of applications, including problem processing, news, entertainment, customer engagement, advertising, gossip, research and more. It is an example of the democratization of content production and the flattening of traditional media hierarchies. The BBC adopted a user-generated content platform for its websites in 2005, and Time magazine named "You" as the Person of the Year in 2006, referring to the rise in the production of UGC on Web 2.0 platforms. CNN also developed a similar user-generated content platform, known as iReport. There are other examples of news channels implementing similar protocols, especially in the immediate aftermath of a catastrophe or terrorist attack. Social media users can provide key eyewitness content and information that may otherwise have been inaccessible. Since 2020, there has been an increasing number of businesses who are utilizing User Generated Content (UGC) to promote their products and services. Several factors significantly influence how UGC is received, including the quality of the content, the credibility of the creator, and viewer engagement. These elements can impact users' perceptions and trust towards the brand, as well as influence the buying intentions of potential customers. UGC has proven to be an effective method for brands to connect with consumers, drawing their attention through the sharing of experiences and information on social media platforms. Due to new media and technology affordances, such as low cost and low barriers to entry, the Internet is an easy platform to create and dispense user-generated content, allowing the dissemination of information at a rapid pace in the wake of an event. == Definition == The advent of user-generated content marked a shift among media organizations from creating online content to providing facilities for amateurs to publish their own content. User-generated content has also been characterized as citizen media as opposed to the "packaged goods media" of the past century. Citizen Media is audience-generated feedback and news coverage. People give their reviews and share stories in the form of user-generated and user-uploaded audio and user-generated video. The former is a two-way process in contrast to the one-way distribution of the latter. Conversational or two-way media is a key characteristic of so-called Web 2.0, which encourages the publishing of one's own content and commenting on other people's content. The role of the passive audience, therefore, has shifted since the birth of new media, and an ever-growing number of participatory users are taking advantage of these interactive opportunities, especially on the Internet, to create independent content. Grassroots experimentation then generated an innovation in sounds, artists, techniques, and associations with audiences, which then are being used in mainstream media. The active, participatory, and creative audience is prevailing today with relatively accessible media, tools, and applications, and its culture is in turn affecting mass media corporations and global audiences. The Organisation for Economic Co-operation and Development (OECD) has defined three core variables for UGC: Accessible Content: User-generated content (UGC) is publicly produced through platforms located on the Internet and is available to any individual browsing such a publicly accessible website or a public social media account. There are other contexts where users must remain in a community or closed group to access and publish on such platforms (for example, wikis). This is a way of differentiating that although the content is accessible to the audience, there are certain restrictions for the users who generates the content. Creative effort: Creative effort was put into creating the work or adapting existing works to construct a new one; i.e. users must add their own value to the work. UGC often also has a collaborative element to it, as is the case with websites that users can edit collaboratively. For example, merely copying a portion of a television show and posting it to an online video website (an activity frequently seen on the UGC sites) would not be considered UGC. However, uploading photographs, expressing one's thoughts in a blog post or creating a new music video could be considered UGC. Yet the minimum amount of creative effort is hard to define and depends on the context. Creation outside of professional routines and practices: User-generated content is generally created outside of professional routines and practices. It often does not have an institutional or a commercial market context. In extreme cases, UGC may be produced by non-professionals without the expectation of profit or remuneration. Motivating factors include connecting with peers, achieving a certain level of fame, notoriety, or prestige, and the desire to express oneself. == Media pluralism == According to Cisco, in 2016 an average of 96,000 petabytes was transferred monthly over the Internet, more than twice as many as in 2012. In 2016, the number of active websites surpassed 1 billion, up from approximately 700 million in 2012. Reaching 1.66 billion daily active users in Q4 2019, Facebook has emerged as the most popular social media platform globally. Other social media platforms are also dominant at the regional level such as: Twitter in Japan, Naver in the Republic of Korea, Instagram (owned by Facebook) and LinkedIn (owned by Microsoft) in Africa, VKontakte (VK) and Odnoklassniki (eng. Classmates) in Russia and other countries in Central and Eastern Europe, WeChat and QQ in China. However, a concentration phenomenon is occurring globally giving dominance to a few online platforms that become popular for some unique features they provide, most commonly for the added privacy they offer users through disappearing messages or end-to-end encryption (e.g. Jami, Signal, Snapchat, Telegram, Viber, and WhatsApp), but they have tended to occupy niches and to facilitate the exchanges of information that remain rather invisible to larger audiences. Production of freely accessible information has been increasing since 2012. In January 2017, Wikipedia had more than 43 million articles, almost twice as many as in January 2012. This corresponded to a progressive diversification of content and an increase in contributions in languages other than English. In 2017, less than 12 percent of Wikipedia content was in English, down from 18 percent in 2012. Graham, Straumann, and Hogan say that the increase in the availability and diversity of content has not radically changed the structures and processes for the production of knowledge. For example, while content on Africa has dramatically increased, a significant portion of this content has continued to be produced by contributors operating from North America and Europe, rather than from Africa itself. == History == The massive, multi-volume Oxford English Dictionary was exclusively composed of user-generated content. In 1857, Richard Chenevix Trench of the London Philological Society sought public contributions throughout the English-speaking world for the creation of the first edition of the OED. As Simon Winchester recounts: So what we're going to do, if I have your agreement that we're going to produce such a dictionary, is that we're going to send out invitations, were going to send these invitations to every library, every school, every university, every book shop that we can identify throughout the English-speaking world... everywhere where English is spoken or read with any degree of enthusiasm, people will be invited to contribute words. And the point is, the way they do it, the way they will be asked and instructed to do it, is to read voraciously and whenever they see a word, whether it's a preposition or a sesquipedalian monster, they are to... if it interests them and if where they read it, they see it in a sentence that illustrates the way that that word is used, offers the meaning of the day to that word, then they are to write it on a slip of paper... the top left-hand side you write the word, the chosen word, the catchword, which in this case is 'twilight'. Then the quotation, the quotation illustrates the meaning of the word. And underneath it, the citation, where it came from, whether it was printed or whether it was in manuscri

    Read more →
  • Flapit

    Flapit

    Flapit is a split-flap display that reveals real-time social media statistics such as Twitter followers or Yelp ratings. The product is designed to show off a bricks-and-mortar company's online community and increase its online presence by letting offline customers interact with the connected counter. The idea came from a product launched by the retailer C&A called the Fashion Like. The device can be customised via a web app and API to display any promotional messages, internal stats or discounts. It has 7 digits including numbers, letters and currency symbols Special messages such as Thank You or Like Us can be displayed on the first flap and are translated into Italian, German, French, Chinese, Japanese, Russian, Portuguese, Spanish and English. The Flapit counter was officially presented to the press at the CES Las Vegas 2015 and received favorable reviews from major specialised press

    Read more →