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
Internet of Things (IoT)
Internet of Things (IoT) is a concept of a network of physical objects ("things") equipped with built-in technologies for interaction with each other or with the environment, considering the organisation of such networks as a phenomenon capable of restructuring economic and social processes, excluding from the part of actions and operations the need for human participation. For 2018, the term "Internet of Things" extends not only to cyberphysical systems for "home" use, but also to industrial facilities. Means of identification The involvement in the IoT of objects of the physical world, not necessarily equipped with means of connection to data transmission networks, requires the use of technologies for the identification of these items ("things"), as all techs used for automatic identification can be used as such technologies: optical identifiers barcodes, Data Matrix, QR codes), means of locating in real time. With the comprehensive dissemination of the "Internet of things", it is essential to ensure the uniqueness of object identifiers, which, in turn, requires standardisation. Measuring A special role in the Internet of things is played by measurement tools that ensure the information transformation about the external environment into machine-readable data, and thereby fill the computing environment with meaningful information. A wide range of measuring tools is used, from elementary sensors (for example, temperature, pressure, illumination), consumption meters (such as smart meters) to complex integrated measuring systems. Data transmission The range of possible data transmission technologies covers all possible means of wireless and wired networks. For wireless data transmission, qualities such as efficiency at low speeds, fault tolerance, adaptability, and the possibility of self-organization play a particularly important role in building the "Internet of things". Among wired technologies, PLC solutions - technologies for building data transmission networks over transmission lines play an important role in penetrating the "Internet of things", as many applications have access to power networks (for example, vending machines, ATMs, smart meters, lighting controllers are initially connected to the network power supply).
Operating System (OS)
Operating system (OS) - a set of interrelated programs designed to manage computer resources, such as CPU, memory, file storage, input / output (I / O) devices, user interaction, and network connection. Unlike most programs that terminate after completing the task, the OS continues to run and eventually shut down when the computer is turned off. A modern multiprocessing OS allows the execution of processes, each of which belongs to a "thread" of the calculation used to execute the program. One form of multiprocessing is called timesharing, which allows multiple users to access the computer by quickly switching between them. The most sensitive and important task for modern operating systems is to allocate the CPU; Each process is allowed to use the CPU for a limited period, which can be a fraction of a second, and then it must be terminated and suspended until the next cycle. As it switches between processes, it saves all data. Mobile operating system (mobile OS) - an operating system for smartphones, tablets, PDAs or other mobile devices. Although laptops can be attributed to mobile devices, however, the operating systems commonly used on them are not considered mobile because they were originally developed for large stationary desktop computers that traditionally did not have special "mobile" functions, and did not need them. This difference is blurry in some new operating systems, representing a hybrid of both. Mobile OS combines the functionality of the PC OS with functions for mobile and handheld devices: touch screen, Bluetooth, Wi-Fi, GPS navigation, camera, speech recognition, voice recorder, music player, NFC and infrared remote control. Portable mobile devices (for example, smartphones) contain two operating systems: The main software platform for user interaction Low-level proprietary real-time OS. Modern operating systems for mobile devices include Android, iOS, Windows 10 Mobile, and others. Obsolete, now unsupported software platforms: Symbian, Windows Mobile, Palm OS, webOS, BlackBerry OS, Firefox OS, Ubuntu Touch, and others. Functions Execution of program requests (input and output of data, start and stop of other programs, allocation and freeing of additional memory, etc.). Standardized access to peripheral devices (input-output devices). Management of random access memory (RAM) - distribution between processes, organization of virtual memory. Providing a user interface. Saving information about system errors. Additional functions: Parallel or pseudo-parallel execution of tasks (multitasking). Effective allocation of resources of the computing system between processes. Prioritisation of processes and their access to resources. Interaction between processes: data exchange, mutual synchronization. Protection of the system itself, as well as user data and programs from user actions (malicious or ignorant) or software applications. Management of the multi-user access and control of different level of access rights. Special types of software called virtual machines can actually mimic "real" computers and run different operating systems from within them.
Virtual Reality (VR)
Virtual reality (VR) is the computer-generated simulation of a three-dimensional world, which can be experienced by a person through equipement, usually headgear with sensors. VR simulates a realistic environment, in which actions and responses is performed in real time. The objects of VR usually behave closely to that of their counterparts in the real world. The user can act on these objects in accordance with the laws of physics (gravity, water properties, collision with objects, reflection, etc.). However, often for entertainment purposes, users of virtual worlds can go do things that are hitherto not possible in real life (for example: to fly or to rise from the dead.) Do not confuse virtual reality with augmented reality(AR). Their fundamental difference is that the VR constructs a new artificial world, and AR only brings in individual artificial elements into the perception of the real. Implementation Systems of "virtual reality" are devices that simulate interaction with the virtual environment, by affecting all five of the human senses. Currently, there are several basic types of systems that provide the formation and output of images in VR systems: Headset / virtual reality glasses (HMD - display) Modern headsets of virtual reality are glasses rather than a helmet, and contain one or more displays that show images for the left and right eyes, a lens system for adjusting the geometry of the image, and a tracking system for the device orientation in space. MotionParallax3D displays Devices of this type include many different gadgets: from some smartphones to rooms of virtual reality (CAVE). Systems of this type form the user's illusion of a three-dimensional object by outputting specially created projections of virtual objects. These are generated on the basis of information about the position of the user's eyes to one or several displays. Virtual retinal monitor Devices of this type form an image directly on an eye retina. As a result, a user sees an image "hanging" in the air in front of him.
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?