Browse Definitions by Topic


WYSIWYG (pronounced [wɪziwɪɡ], is an abbreviation of What You See Is What You Get) it’s the property of application programs or web interfaces in which content is displayed during editing and looks as close as possible to the final product. The result can be a printed document, web page or presentation. The term "visual editor" is also widely used for such programs.

Most of the modern content management systems(CMS) are implemented as a WYSIWYG.


The phrase was coined by the engineer from Information International, Inc. (Triple-I) Larry Sinclair to express the idea that what the user sees on the screen, he gets on the printer.

Before the advent of WYSIWYG technology for creating formatted documents, programs using the markup language were used. In these programs, to format the document, it was necessary to specify special codes (tags) that were invisible in the final result of work. Tags defined the style of the text (bold, oblique, etc.), font changes, the location of text and illustrations, and so on.

The first program that uses WYSIWYG is the text editor Bravo. Bravo was developed in Xerox PARC for Alto computers. The program was developed by Butler Lampson, Charles Simonyi and others in 1974. Bravo was not released to the market, however, the software of Xerox Star computers is probably a direct descendant of this editor.

In the 1970s and early 1980s, popular home computers lacked the graphics capabilities required to display WYSIWYG documents. Such apps, as a rule, were used quite seldom, mainly on powerful workstations, which were too expensive for wide distribution. However, by the mid-1980s everything began to change. Improved technology allowed the production of cheap graphic displays, and programs with WYSIWYG began to appear on cheaper and more popular computers, including LisaWrite for Apple Lisa, released in 1983, and MacWrite for Apple Macintosh, released in 1984.

List of WYSIWYG text editors

  • Microsoft Word (from the Microsoft Office suite)
  • Pages from iWork
  • AbiWord (from GNOME Office)
  • Writer (from the package)
  • ONLYOFFICE text editor (from ONLYOFFICE office suite)
  • KWord (from the KOffice package)

…and others

Some of the site constructors, like Web Builder, are implementing the HTML tags, based on the user’s interface, where authors add the elements, implementing drag and drop technologies. So, the web pages can be created without the programming knowledges and/or HTML-technologies.

Additional Terms
is a large, high-performance, fault-tolerant server with significant I/O resources, large amount of operational and external memory, designed for mission-critical software applications supporting hundreds of users simultaneously. Features and Characteristics The lead time till failure of modern mainframes is estimated at 12-15 years. Such reliability is the result of almost 60-years of improvements. The VM / ESA operating system development team spent 20 years troubleshooting and as a result a system was created that can be used in the most critical cases. Increased system stability. Mainframes can isolate and fix most hardware and software errors by using the following principles: Duplication: two standby processors, redundant memory modules, and alternative paths to peripheral devices. Hot swapping of all elements down to channels, memory cards and CPUs. Data Integrity. Mainframes use memory with error correction. Errors do not lead to the destruction of data in memory or data waiting to be output to external devices. Disk subsystems, built on the basis of RAID-arrays with hot swapping and built-in backups, protect against data loss. Workload. The mainframe workload can be 80-95% of their peak performance. The mainframe operating system will process everything at once, and all applications will work closely together and use common software components. Throughput. Mainframe I/O subsystems are designed to work in an environment with the highest workload of I/O data. Access to data. Because the data is stored on a single server, application programs do not need to collect source information from multiple sources, no additional disk space is required for their temporary storage, there is no doubt about their relevance. It requires a small number of physical servers and much simpler software. All this, in total, leads to an increase in the processing speed and efficiency. Protection. The built-in security features, such as cryptographic devices and Logical Partition, and operating system protection, supplemented with RACF or VM: SECURE software, provide reliable protection. User interface. The user interface of mainframes has always been its weakest point. Now it has become possible for mainframe applications to provide a modern web interface in the shortest possible time and at minimal cost. Mainframes and supercomputers Supercomputers are machines that are at the peak of computing power available today, especially in the field of operations with numbers. Supercomputers are used for scientific and engineering purposes (high-performance computing, for example, in the field of meteorology or modeling of nuclear processes), where the limiting factors are processor power and the amount of RAM, while mainframes are used for integer operations, demanding data rate, reliability and simultaneous processing of transactions (ERP, online booking system, automated banking systems).
Material Design
- the design of software and applications for Android operating systems. First introduced at the Google I/O conference on June 25, 2014. Initially, within the company, it was invented under the codename "quantum paper.” The main metaphor of material design is flat paper, located in three-dimensional space. The idea of this design can be seen in applications that open and collapse like cards, using the effects of shadows. According to the idea of Google's designers, apps should not have sharp corners; cards should switch smoothly and almost imperceptibly. Material design in Applications The material design is used fully in the operating systems Android Lollipop, Android Marshmallow, Android Nougat, Android Oreo and also in some apps of previous versions. Why apps need a material design It serves two purposes: the standardisation of numerous products of the company; the unification of app user interfaces for Android. After the dominance of “skeuomorphism,” the web and the interfaces tilted toward a radical flattening, but it turned out to be just one more extreme. In order to be understandable and international, the objects of the interface should have an analogue, a metaphor in the real world. Such a metaphor was paper. Thin, flat, but located in three-dimensional space and having shadows, speed of movement, and acceleration. 4 principles of Material Design Material Design is based on four basic principles: Tactile surfaces. The interface is composed of tangible layers of so-called "digital paper". These layers are located at different heights and cast shadows on each other, which helps users to better understand the anatomy of the interface and the principle of interaction with it. Polygraphic design. If we count the layers as pieces of "digital paper", then, as regards "digital ink" (all that is depicted on "digital paper"), an approach is taken from traditional graphic design: for example, magazine and poster. Meaningful animation. In the real world, objects do not arise from nowhere and do not disappear into anywhere. Therefore, in Material Design, we always think about how to use the animation in layers and in "digital ink" to give users hints about the interface. Adaptive design. It's about how we apply the previous three concepts on different devices with different resolutions and screen sizes. The material design is one of the modern trends in the visualisation of mobile applications whose popularity is growing day by day.
A pattern (design pattern) in software development, is a repetitive architectural solution to a common problem, which often arises within a design context. Typically, a pattern is not a complete template that can be directly converted to code. Rather, it is just a fragment of the design, which  can be used as a sample for creating similar constructions on different program areas. Object-oriented patterns show the relationships and interactions between classes or objects, without defining which end classes or application objects will be used. "Low-level" patterns, which take into account the specifics of a particular programming language, are called idioms. These are good design solutions specific to a particular language or software platform, and therefore are not universal. At the highest level, there are architectural patterns that cover the architecture of the entire software system. Algorithms are also inherently computing templates, because they solve developmental problems. Pros In comparison with fully independent design, patterns have several advantages. The main benefit of using templates is to reduce development complexity by ready-made abstractions that solve a whole class of problems. The pattern gives its name to the solution, which facilitates communication between developers, referring to known templates.Thus, at the expense of patterns details unification of decisions is made: modules, elements of the project, - the number of bugs decreases. The use of patterns conceptually akin to the use of ready-made code libraries. Having found a successful solution, a correctly formulated design pattern can be reused over and over again. A set of templates helps the developer to choose the most suitable design option. Cons Although a slight change in code under a well-known pattern can simplify the understanding of code, according to Steve McConnell two difficulties can be associated with the use of templates. First, blindly following a selected pattern the global structure of the program can be bloated, exploiting unnecessary code repetitions and increasing the complication of the program. Secondly, the developer may have a desire to implement some patterns without special reasons, instead of creating a new laconic solution.
Additional Terms of Software Design
See more words
Net Promoter Score (NPS)
Net Promoter Score (NPS) is an index that identifies customer loyalty to a product or company and is used to assess readiness for re-purchases. How It Works Measuring the NPS loyalty index involves several steps: Consumers are asked to answer the question “What is the probability that you would recommend a company/product/brand to your friends/acquaintances/colleagues?” On a 10-point scale, where 0 corresponds to the answer “I will not recommend it in any way”, and 10 - “ I will surely recommend. " Based on the estimates obtained, all consumers are divided into 3 groups: 9-10 points - product/brand promoters, 7-8 points - passives, 0-6 points - detractors. Calculation of the NPS index itself. NPS =% supporters -% critics As a result, the the user’s loyalty score calculated on the scale from -100 to 100. If all the customers are willing to recommend the product, the score will be about 90-100, if they are not willing to recommend it - the NPS will drop to -90-100 points.   NPS trade mark was registered for the marketing tool, which automates the calculation of the above mentioned data. History Frederick Reichheld is considered the founder of the method, who first announced the method in the article “One Number You Need to Grow”, published in the Harvard Business Review in December 2003. In 2006, he released a book entitled “The Ultimate Question: Driving Good Profits and True Growth”. He continued his arguments on the loyalty, profitability and growth of the company. In 2010, Reichheld conducted research in more than 400 American companies, where the main task was to measure the influence of customer loyalty (measured by NPS) on its growth rate. The main result was the conclusion that the average NPS by market in the industry was 16%, but for companies such as eBay and Amazon NPS it was 75%. Reichheld does not say that communication is present everywhere: it is absent altogether in monopolistic markets. However, industries such as passenger air travel, insurance, and car rental have become a prime example of interconnection. This is obvious, since these companies are service providers, where customer satisfaction and loyalty depend on the level of customer service. As a result, many companies have become adherents of this technology, including Apple, American Express,  eBay, Amazon, Allianz, P & G, Intuit,, Philips, etc. For certain industries, especially software, it has been proven that detractors often stay with the company while passives leave.  This seems to be a relatively high barrier to trade. Faced with criticism of the promoter's score, proponents of the network promoter's approach stated that the proposed statistical analysis only proved that the "recommendation" problem was similar to other indicators in predictive capacity, but failed to solve the real problem and this is the core of the argument presented by Reichheld. Proponents of the method also argue that third-party data analysis is not as good as analyzing the company in its own set of customers, and the actual benefits of the method (simple communication concepts, short survey, customer follow-up features ) exceed any statistical disadvantage of the approach. They also allow inquiries using any other issues to be used in the net promotion system, as long as it meets the criteria to securely classify customers as promoters, passives and detractors.
Headless browser
is a web browser, which communicates with the user in the command-line mode, without a traditional graphical interface. Headless browsers can automate the controls of a web page in an environment similar to some popular browsers. They are particularly useful for testing web pages because they correctly interpret HTML, style sheets and JavaScript execution with AJAX - such functions that are not always available during testing. In 2009, Google began using headless browsers to help its search engine index AJAX3 sites. Headless Browsers Use Cases Headless browsers can be used for: Web app tests automation. Web page screenshots. Automated tests for JavaScript libraries. Web scraping to data recovery. Website interaction automation. Malicious Use Cases Headless browsers can also be used to: Perform DDOS attacks against websites. Increase the number of views. Automatically search for sites for fraudulent use, for example, confidential identifiers. List of Headless Browsers Here is a list of browsers offering headless functions: PhantomJS - a headless browser using the WebKit engine for rendering its pages and JavaScriptCore for javascript execution. PhantomJS was originally developed in 2010. HTMLUnit - also headless, written in Java. HTMLUnit uses Rhino for the JavaScript. TrifleJS - a version of the scriptable Internet Explorer browser that uses the Trident rendering engine and the V8 JavaScript engine. TrifleJS uses the same API as PhantomJS and, works by using the WebBrowser object of the .NET WebBrowser framework to control the version of IE installed on the machine. Splash - it has HTTP API, Lua scripting and an IPython IDE. Splash is written in Python and uses the WebKit rendering engine. Weboob - a Python library. Emulated Headless Browser These browsers emulate the environment of a browser Zombie.js. a navigation environment for Node.js20,21. ENVJS. a navigation environment is written in JavaScript for the Rhino engine. While they are able to support common browsing functions (HTML parsing, XHR, cookie support, etc.), they can not render and have limited support for DOM events. They usually run faster than a typical browser, but are unable to correctly interpret many sites.
is a unit of digital data transmission in computer and telecommunication networks. In a packet-switched system, a frame is a simple container for a network. In other telecommunication systems, frames are repeating structures that support time division multiplexing. Frame (HTML) - in web-design: the presentation of multiple HTML documents on a separate web page. Frame rate is the number of images displayed on the screen per time unit, usually expressed in FPS (frames per second) Frame (GUI), a box to save other widgets in the graphical user interface A frame typically includes a synchronization feature that has a sequence of bits, ‘or symbols’, indicating the receiver, the received symbol, or the beginning and end of the upload data in the bit stream. If the receiver is connected to the system during transmission, it will ignore the information until it detects a new frame synchronization sequence. Packet switching In the OSI model of a computer network, a frame is a data unit of the link layer. The frame is the result of the last encapsulation layer before the data is transferred by the physical layer. Each frame is separated from the next frame by an interval. It is a series of bits, usually consisting of a frame synchronization, a packet payload, and a frame check sequence. Examples include Point-to-Point Protocol  frames,Fiber Channel frames, Ethernet frames, and V.42 modem frames. Typically, several frames of different sizes are nested within each other. For example, when using the PPP protocol in asynchronous serial communication, the 8 bits of each byte consist of a start bit and a stop bit, and the payload data bytes in the network packet are framed by the header and footer, several packets can be framed with bound bytes. Time division multiplexing In telecommunications, particularly time division multiplexing (TDM) and time division multiple access variants (TDMA), a frame is a cyclically repeated block of data consisting of a fixed number of time slots; each interval is time used for Logical TDM channels or TDMA transmitters. In this context, a framework is usually an entity at the physical layer. Examples of TDM applications are SONET / SDH circuit-switched B channels and ISDN, while TDMA examples are circuit-switched data used in early cellular voice services. This frame is also an entity for time division duplexing, wherein the handset can transmit during certain time slots while receiving other slots.
View all IT-related terms
Results for "DEV"
Logo Magora LTD
Get in touch
Do you agree to the personal data processing?

Logo Magora LTD
Thank you very much.

Your registration to the webinar on the 27th of September at 2 p.m. BST was successfuly completed.
We will send you a reminder on the day before the event.
Magora team
Registration for a webinar

"Let Smart Bots Speed up your Business"
Date: 27.09.2018 Time: 2 p.m. BST
Do you agree to the personal data processing?