Topic: Computing (Page 38)
You are looking at all articles with the topic "Computing". We found 481 matches.
Hint:
To view all topics, click here. Too see the most popular topics, click here instead.
π VisiCalc
VisiCalc (for "visible calculator") was the first spreadsheet computer program for personal computers, originally released for the Apple II by VisiCorp. It is often considered the application that turned the microcomputer from a hobby for computer enthusiasts into a serious business tool, prompting IBM to introduce the IBM PC two years later. VisiCalc is considered the Apple II's killer app. It sold over 700,000 copies in six years, and as many as 1 million copies over its history.
Initially developed for the Apple II using a 6502 assembler running on the Multics time sharing system, VisiCalc was ported to numerous platforms, both 8-bit and some of the early 16-bit systems. In order to do this, the company developed porting platforms that produced bug compatible versions. The company took the same approach when the IBM PC was launched, producing a product that was essentially identical to the original 8-bit Apple II version. Sales were initially brisk, with about 300,000 copies sold.
VisiCalc used the A1 notation in formulas.
When Lotus 1-2-3 was launched in 1983, taking full advantage of the expanded memory and screen of the PC, VisiCalc sales ended almost overnight. Sales declined so rapidly that the company was soon insolvent. Lotus Development purchased the company in 1985, and immediately ended sales of VisiCalc and the company's other products.
Discussed on
- "VisiCalc" | 2015-03-24 | 17 Upvotes 7 Comments
π Constraint Logic Programming
Constraint logic programming is a form of constraint programming, in which logic programming is extended to include concepts from constraint satisfaction. A constraint logic program is a logic program that contains constraints in the body of clauses. An example of a clause including a constraint is A(X,Y) :- X+Y>0, B(X), C(Y)
. In this clause, X+Y>0
is a constraint; A(X,Y)
, B(X)
, and C(Y)
are literals as in regular logic programming. This clause states one condition under which the statement A(X,Y)
holds: X+Y
is greater than zero and both B(X)
and C(Y)
are true.
As in regular logic programming, programs are queried about the provability of a goal, which may contain constraints in addition to literals. A proof for a goal is composed of clauses whose bodies are satisfiable constraints and literals that can in turn be proved using other clauses. Execution is performed by an interpreter, which starts from the goal and recursively scans the clauses trying to prove the goal. Constraints encountered during this scan are placed in a set called constraint store. If this set is found out to be unsatisfiable, the interpreter backtracks, trying to use other clauses for proving the goal. In practice, satisfiability of the constraint store may be checked using an incomplete algorithm, which does not always detect inconsistency.
Discussed on
- "Constraint Logic Programming" | 2022-04-11 | 21 Upvotes 3 Comments
π How a Buffer Overflow Works
In information security and programming, a buffer overflow, or buffer overrun, is an anomaly where a program, while writing data to a buffer, overruns the buffer's boundary and overwrites adjacent memory locations.
Buffers are areas of memory set aside to hold data, often while moving it from one section of a program to another, or between programs. Buffer overflows can often be triggered by malformed inputs; if one assumes all inputs will be smaller than a certain size and the buffer is created to be that size, then an anomalous transaction that produces more data could cause it to write past the end of the buffer. If this overwrites adjacent data or executable code, this may result in erratic program behavior, including memory access errors, incorrect results, and crashes.
Exploiting the behavior of a buffer overflow is a well-known security exploit. On many systems, the memory layout of a program, or the system as a whole, is well defined. By sending in data designed to cause a buffer overflow, it is possible to write into areas known to hold executable code and replace it with malicious code, or to selectively overwrite data pertaining to the program's state, therefore causing behavior that was not intended by the original programmer. Buffers are widespread in operating system (OS) code, so it is possible to make attacks that perform privilege escalation and gain unlimited access to the computer's resources. The famed Morris worm in 1988 used this as one of its attack techniques.
Programming languages commonly associated with buffer overflows include C and C++, which provide no built-in protection against accessing or overwriting data in any part of memory and do not automatically check that data written to an array (the built-in buffer type) is within the boundaries of that array. Bounds checking can prevent buffer overflows, but requires additional code and processing time. Modern operating systems use a variety of techniques to combat malicious buffer overflows, notably by randomizing the layout of memory, or deliberately leaving space between buffers and looking for actions that write into those areas ("canaries").
Discussed on
- "How a Buffer Overflow Works" | 2009-04-01 | 17 Upvotes 6 Comments
π John von Neumann
John von Neumann (; Hungarian: Neumann JΓ‘nos Lajos, pronouncedΒ [ΛnΙjmΙn ΛjaΛnoΚ ΛlΙjoΚ]; December 28, 1903Β β FebruaryΒ 8, 1957) was a Hungarian-American mathematician, physicist, computer scientist, engineer and polymath. Von Neumann was generally regarded as the foremost mathematician of his time and said to be "the last representative of the great mathematicians"; who integrated both pure and applied sciences.
He made major contributions to a number of fields, including mathematics (foundations of mathematics, functional analysis, ergodic theory, representation theory, operator algebras, geometry, topology, and numerical analysis), physics (quantum mechanics, hydrodynamics, and quantum statistical mechanics), economics (game theory), computing (Von Neumann architecture, linear programming, self-replicating machines, stochastic computing), and statistics.
He was a pioneer of the application of operator theory to quantum mechanics in the development of functional analysis, and a key figure in the development of game theory and the concepts of cellular automata, the universal constructor and the digital computer.
He published over 150 papers in his life: about 60 in pure mathematics, 60 in applied mathematics, 20 in physics, and the remainder on special mathematical subjects or non-mathematical ones. His last work, an unfinished manuscript written while he was in hospital, was later published in book form as The Computer and the Brain.
His analysis of the structure of self-replication preceded the discovery of the structure of DNA. In a short list of facts about his life he submitted to the National Academy of Sciences, he stated, "The part of my work I consider most essential is that on quantum mechanics, which developed in GΓΆttingen in 1926, and subsequently in Berlin in 1927β1929. Also, my work on various forms of operator theory, Berlin 1930 and Princeton 1935β1939; on the ergodic theorem, Princeton, 1931β1932."
During World War II, von Neumann worked on the Manhattan Project with theoretical physicist Edward Teller, mathematician StanisΕaw Ulam and others, problem solving key steps in the nuclear physics involved in thermonuclear reactions and the hydrogen bomb. He developed the mathematical models behind the explosive lenses used in the implosion-type nuclear weapon, and coined the term "kiloton" (of TNT), as a measure of the explosive force generated.
After the war, he served on the General Advisory Committee of the United States Atomic Energy Commission, and consulted for a number of organizations, including the United States Air Force, the Army's Ballistic Research Laboratory, the Armed Forces Special Weapons Project, and the Lawrence Livermore National Laboratory. As a Hungarian Γ©migrΓ©, concerned that the Soviets would achieve nuclear superiority, he designed and promoted the policy of mutually assured destruction to limit the arms race.
Discussed on
- "John von Neumann" | 2015-06-26 | 20 Upvotes 3 Comments
π You ain't gonna need it
"You aren't gonna need it" (YAGNI) is a principle of extreme programming (XP) that states a programmer should not add functionality until deemed necessary. XP co-founder Ron Jeffries has written: "Always implement things when you actually need them, never when you just foresee that you need them." Other forms of the phrase include "You aren't going to need it" and "You ain't gonna need it".
Discussed on
- "You ain't gonna need it" | 2010-02-23 | 20 Upvotes 3 Comments
π Water Based Analog Computer
The Water Integrator (Russian: ΠΠΈΠ΄ΡΠ°Π²Π»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΎΡ) was an early analog computer built in the Soviet Union in 1936 by Vladimir Sergeevich Lukyanov. It functioned by careful manipulation of water through a room full of interconnected pipes and pumps. The water level in various chambers (with precision to fractions of a millimeter) represented stored numbers, and the rate of flow between them represented mathematical operations. This machine was capable of solving inhomogeneous differential equations.
The first versions of Lukyanov's integrators were rather experimental, made of tin and glass tubes, and each integrator could be used to solve only one problem. In the 1930s it was the only computer in the Soviet Union for solving partial differential equations.
In 1941, Lukyanov created a hydraulic integrator of modular design, which made it possible to assemble a machine for solving various problems. Two-dimensional and three-dimensional hydraulic integrators were designed.
In 1949β1955, an integrator in the form of standard unified units was developed at the NIISCHETMASH Institute. In 1955, the Ryazan plant of calculating and analytical machines began the serial production of integrators with the factory brand name βIGLβ (russian: ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΎΡ ΠΠΈΠ΄ΡΠ°Π²Π»ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΡΠΊΡΡΠ½ΠΎΠ²Π° - integrator of the Lukyanov hydraulic system). Integrators were widely distributed, delivered to Czechoslovakia, Poland, Bulgaria and China.
A water integrator was used in the design of the Karakum Canal in the 1940s, and the construction of the BaikalβAmur Mainline in the 1970s. Water analog computers were used in the Soviet Union until the 1980s for large-scale modelling. They were used in geology, mine construction, metallurgy, rocket production and other fields.
Currently, two hydraulic integrators are kept in the Polytechnic Museum in Moscow.
Discussed on
- "Water Based Analog Computer" | 2020-11-23 | 22 Upvotes 1 Comments
π BBC Micro
The British Broadcasting Corporation Microcomputer System, or BBC Micro, is a series of microcomputers and associated peripherals designed and built by Acorn Computers in the 1980s for the BBC Computer Literacy Project. Designed with an emphasis on education, it was notable for its ruggedness, expandability, and the quality of its operating system. An accompanying 1982 television series, The Computer Programme, featuring Chris Serle learning to use the machine, was broadcast on BBC2.
After the Literacy Project's call for bids for a computer to accompany the TV programmes and literature, Acorn won the contract with the Proton, a successor of its Atom computer prototyped at short notice. Renamed the BBC Micro, the system was adopted by most schools in the United Kingdom, changing Acorn's fortunes. It was also successful as a home computer in the UK, despite its high cost. Acorn later employed the machine to simulate and develop the ARM architecture.
While nine models were eventually produced with the BBC brand, the phrase "BBC Micro" is usually used colloquially to refer to the first six (Model A, B, B+64, B+128, Master 128, and Master Compact); subsequent BBC models are considered part of Acorn's Archimedes series.
Discussed on
- "BBC Micro" | 2023-10-07 | 12 Upvotes 11 Comments
π Download Valley
Download Valley is a cluster of software companies in Israel, producing and delivering adware to be installed alongside downloads of other software. The primary purpose is to monetize shareware and downloads. These software items are commonly browser toolbars, adware, browser hijackers, spyware, and malware. Another group of products are download managers, possibly designed to induce or trick the user to install adware, when downloading a piece of desired software or mobile app from a certain source.
Although the term references Silicon Valley, it does not refer to a specific valley or any geographical area. Many of the companies are located in Tel Aviv and the surrounding region. It has been used by Israeli media as well as in other reports related to IT business.
Download managers from Download Valley companies have been used by major download portals and software hosts, including Download.com by CNET, Softonic.com and SourceForge.
π Charles Babbage
Charles Babbage (; 26 December 1791Β β 18 October 1871) was an English polymath. A mathematician, philosopher, inventor and mechanical engineer, Babbage originated the concept of a digital programmable computer.
Considered by some to be a father of the computer, Babbage is credited with inventing the first mechanical computer that eventually led to more complex electronic designs, though all the essential ideas of modern computers are to be found in Babbage's Analytical Engine. His varied work in other fields has led him to be described as "pre-eminent" among the many polymaths of his century.
Parts of Babbage's incomplete mechanisms are on display in the Science Museum in London. In 1991, a functioning difference engine was constructed from Babbage's original plans. Built to tolerances achievable in the 19th century, the success of the finished engine indicated that Babbage's machine would have worked.
Discussed on
- "Charles Babbage" | 2015-08-17 | 17 Upvotes 5 Comments
π Unix philosophy
The Unix philosophy, originated by Ken Thompson, is a set of cultural norms and philosophical approaches to minimalist, modular software development. It is based on the experience of leading developers of the Unix operating system. Early Unix developers were important in bringing the concepts of modularity and reusability into software engineering practice, spawning a "software tools" movement. Over time, the leading developers of Unix (and programs that ran on it) established a set of cultural norms for developing software; these norms became as important and influential as the technology of Unix itself; this has been termed the "Unix philosophy."
The Unix philosophy emphasizes building simple, short, clear, modular, and extensible code that can be easily maintained and repurposed by developers other than its creators. The Unix philosophy favors composability as opposed to monolithic design.
Discussed on
- "Unix philosophy" | 2017-02-24 | 20 Upvotes 2 Comments