MindSpore

MindSpore

MindSpore is an open-source software framework for deep learning, machine learning and artificial intelligence developed by Huawei. == Overview == MindSpore provides support for Python by allowing users to define models, control flow, and custom operators using native Python syntax. Unlike graph-based frameworks that require users to learn DSL or complex APIs, MindSpore adopts a source-to-source (S2S) automatic differentiation approach, allowing Python code to be automatically transformed into optimized computational graphs. It has support for custom OpenHarmony-based HarmonyOS NEXT single core framework system built for HarmonyOS, includes an AI system stack that comes with Huawei's built LLM model called PanGu-Σ with full MindSpore framework support. Alongside, OpenHarmony Native device-side AI support for training interface and ArkTS programming interface for its NNRt (Neural Network Runtime) backend configurations via MindSpore Lite AI framework codebase introduced in API 11 Beta 1 of OpenHarmony 4.1. MindSpore platform runs on Ascend AI chips and Kirin alongside other HiSilicon NPU chips. CANN (Compute Architecture of Neural Networks), heterogeneous computing architecture for AI developed by Huawei. With CANN backend in OpenCV DNN, giving developers ability to run created AI models on the Ascend, Kirin and other HiSilicon NPU enabled chips. It supports cross platform development such as Android, iOS, Windows, global OpenHarmony-based distro, Eclipse Oniro, Linux-based EulerOS alongside OpenEuler Huawei's server OS platforms, macOS and Linux. == History == On April 24, 2024, Huawei's MindSpore 2.3.RC1 was released to open source community with Foundation Model Training, Full-Stack Upgrade of Foundation Model Inference, Static Graph Optimization, IT Features and new MindSpore Elec MT (MindSpore-powered magnetotelluric) Intelligent Inversion Model.

BeReal

BeReal (stylized on the app logo as BeReal.) is a French social-networking app released in 2020, developed by Alexis Barreyat and Kévin Perreau. Currently, it is owned by Voodoo. Its main feature is a daily notification that encourages users to share photos of themselves in their day-to-day life, on any randomly selected two-minute window every day. Critics noted its emphasis on authenticity, which some felt crossed the line into the mundane. The primary reference of its name relates to its focus on users uploading unpolished photos, with it being a pun of the term B-reel. According to the app's description on Apple's App Store, BeReal encourages its users to "show their friends who they really are, for once," by removing filters and opportunities to stage or edit photos. After a couple of years of relative obscurity, it rapidly gained popularity in early and mid-2022 growing from 21.6 million to 73.5 million users between July and August, before experiencing a decrease in use in 2023 and continuing to decline to 23 million users at the beginning of 2024. == History == The app was developed by Alexis Barreyat, a former employee at GoPro, and Kévin Perreau, a graduate from 42 in Paris. Initially released in 2020, it first gained widespread popularity in early 2022. It first spread widely on college campuses, partially due to a paid ambassador program. In late August 2022, the application had over 10 million active daily users and 21.6 million active monthly users. As of February 2023, the app has grown to 13 million active daily users and 47.8 million active monthly users. In June 2021, BeReal received a $30 million funding round led by Andreessen Horowitz and Accel. In May 2022, BeReal secured $85 million in a funding round led by Yuri Milner's DST Global, increasing its valuation to about $600 million. On July 25, 2022, BeReal topped Apple's free app list in the iOS App Store, and remained until September 2022. BeReal also received Apple's iPhone App of the Year in 2022. By late spring 2023, the app's momentum was waning, as daily users dropped to about 6 million, from 15 million in October 2022. In August 2024, there was a resurgence after a campaign at the Paris Olympics 2024, with the app reportedly gaining 1000 users. In June 2024, BeReal was acquired by the French company Voodoo for a reported €500 million. Alexis Barreyat is set to step down after a transition period. == Features == Once per day, BeReal notifies all users that a two-minute window to post is open. It asks users to create a post (known eponymously as a "BeReal") which, using mandatory simultaneous photos and now short videos from both the front and back cameras, provides a visual depiction of what they are doing at that moment, with an option to caption their post. The given window varies from day to day, and is not known to users before the notification is received. Once the daily notification is sent, users lose the ability to see others' BeReals from the previous day. Furthermore, users cannot see any of the current day's BeReals until they upload their own. On-time BeReals show the time it was uploaded, meanwhile, late BeReals uploaded after the two-minute window shows how late the BeReal was taken, but the user has to long-press the BeReal to reveal the time it was uploaded. Other users can also see how many attempts the poster took to take the BeReal, as well as their location when the BeReal was taken. Users only get one chance to delete their BeReal and post another one, and they used to not be able to post more than one at any time. However, in 2023, a feature was added that allowed users to post up to two extra BeReals on days when they posted their first BeReal within the 2-minute window. In July 2024, the number of bonus BeReals was increased to 5. [1] BeReal also features a "Discovery" section, wherein users are given the option to share to a much wider, public audience. This feature, however, is limited, as users are not able to interact with the posts through commenting—unlike the "My Friends" feature. In August 2023, in an attempt to make BeReal more social, another feature was added so that users are now able to see their friends of friends' BeReal. The app reportedly uses HiveAI to automate its image moderation process. However, there is also a report function that allows users to report a photo or another user if they are posting inappropriate content. === Comparison to other platforms === Because of its daily cycle of engagement, it has been compared to Wordle, which gained popularity earlier in 2022. It also supports a platform similar to Snapchat with a theme of impermanence and brevity. BeReal has been described as designed to compete with Instagram while simultaneously de-emphasising social media addiction and overuse. The app does not allow any photo filters or other editing, and has no follower counts. Marketing material from the company said that the app "can be addictive" and that "BeReal won't make you famous." Jacob Arnott, managing director of social agency We the People, describes BeReal as "an anti-Instagram" due to its raw and unedited nature. The app's foundation on friends rather than followers resembles Facebook's platform of adding friends, which comprise the content of a user's feed. This also resembles Instagram's "close friends" story feature. Further, rather than "liking" posts, BeReal uses "RealMojis" which involves taking a photo to interact with other posts. With the popularity of BeReal, other providers have launched similar features. In July 2022, Instagram launched a "Dual Camera" feature similar to BeReal, and in August 2022 it began testing a feature called "IG Candid Challenges", where users are prompted to post once a day within two minutes. As of September 2022, TikTok has also launched a feature called TikTok Now, following the same concept. In December 2022, similar to Spotify's "Wrapped," BeReal launched a feature involving a video of a compilation of users' BeReal posts of 2022. == User characteristics == BeReal is considered to be targeted towards Generation Z users, and attempts to minimise "social media fatigue", a feeling of numbness and disconnection from reality caused by constant interaction with an idealised version of others. This is a "core generational value" that this demographic holds compared to Millennials. Further, BeReal's users have been particularly strong across universities and university-aged students, and the majority of users are in the United States, the United Kingdom, and Germany. In 2022, the majority of users were female, with 43.2% of users falling within the age range of 16 to 25 and 55.1% of users being 26 to 44 years old. BeReal, the platform encourages users to share their real time moments by sending a daily notification that gives a least two minutes to post a unedited photo using bot the front and back camera, although users can post later and retake photos from when the notification happens, this action are still visible to friends, reinforcing transparency and genuine in the moment sharing. == Reception == Jason Koebler, a writer for Vice, wrote that in contrast to Instagram, which presents an unattainable view of people's lives, BeReal instead "makes everyone look extremely boring". Niklas Myhr, a professor of social media at Chapman University, argued that depth of engagement may determine whether the app is a passing trend or has "staying power". Kelsey Weekman, a reporter for BuzzFeed News, noted that the app's unwillingness to "glamorise the banality of life" made it feel "humbling" in its emphasis on authenticity. Niloufar Haidari for The Guardian comments similarly that where the app succeeds in being "drab" in perhaps a positive way, it fails in potentially "un-inspiring" users. Likewise, Dr. Brad Ridout, a behavioral psychologist at the University of Sydney, emphasizes that the "boring" experience is what the creators are targeting for the app and, in response to Instagram's platform of flawlessness, that "perfection is the enemy of happiness". === Criticisms === Some people regularly post after the two-minute notification expires, leading to some criticism of the app, as the ability to post late undermines its aims of authenticity. In addition, BeReal's daily two-minute window has been argued to contribute to social media fatigue and a need for self-exposure, as well as constant access to phones.

Mashup (web application hybrid)

A mashup (computer industry jargon), in web development, is a web page or web application that uses content from more than one source to create a single new service displayed in a single graphical interface. For example, a user could combine the addresses and photographs of their library branches with a Google map to create a map mashup. The term implies easy, fast integration, frequently using open application programming interfaces (open API) and data sources to produce enriched results that were not necessarily the original reason for producing the raw source data. The term mashup originally comes from creating something by combining elements from two or more sources. The main characteristics of a mashup are combination, visualization, and aggregation. It is important to make existing data more useful, for personal and professional use. To be able to permanently access the data of other services, mashups are generally client applications or hosted online. In the past years, more and more Web applications have published APIs that enable software developers to easily integrate data and functions the SOA way, instead of building them by themselves. Mashups can be considered to have an active role in the evolution of social software and Web 2.0. Mashup composition tools are usually simple enough to be used by end-users. They generally do not require programming skills and rather support visual wiring of GUI widgets, services and components together. Therefore, these tools contribute to a new vision of the Web, where users are able to contribute. The term "mashup" is not formally defined by any standard-setting body. == History == The broader context of the history of the Web provides a background for the development of mashups. Under the Web 1.0 model, organizations stored consumer data on portals and updated them regularly. They controlled all the consumer data, and the consumer had to use their products and services to get the information. The advent of Web 2.0 introduced Web standards that were commonly and widely adopted across traditional competitors and which unlocked the consumer data. At the same time, mashups emerged, allowing mixing and matching competitors' APIs to develop new services. The first mashups used mapping services or photo services to combine these services with data of any kind and therefore to produce visualizations of data. In the beginning, most mashups were consumer-based, but recently the mashup is to be seen as an interesting concept useful also to enterprises. Business mashups can combine existing internal data with external services to generate new views on the data. There was also the free Yahoo! Pipes to build mashups for free using the Yahoo! Query Language. == Types of mashup == There are many types of mashup, such as business mashups, consumer mashups, and data mashups. The most common type of mashup is the consumer mashup, aimed at the general public. Business (or enterprise) mashups define applications that combine their own resources, application and data, with other external Web services. They focus data into a single presentation and allow for collaborative action among businesses and developers. This works well for an agile development project, which requires collaboration between the developers and customer (or customer proxy, typically a product manager) for defining and implementing the business requirements. Enterprise mashups are secure, visually rich Web applications that expose actionable information from diverse internal and external information sources. Consumer mashups combine data from multiple public sources in the browser and organize it through a simple browser user interface. (e.g.: Wikipediavision combines Google Map and a Wikipedia API) Data mashups, opposite to the consumer mashups, combine similar types of media and information from multiple sources into a single representation. The combination of all these resources create a new and distinct Web service that was not originally provided by either source. === By API type === Mashups can also be categorized by the basic API type they use but any of these can be combined with each other or embedded into other applications. ==== Data types ==== Indexed data (documents, weblogs, images, videos, shopping articles, jobs ...) used by metasearch engines Cartographic and geographic data: geolocation software, geovisualization Feeds, podcasts: news aggregators ==== Functions ==== Data converters: language translators, speech processing, URL shorteners... Communication: email, instant messaging, notification... Visual data rendering: information visualization, diagrams Security related: electronic payment systems, ID identification... Editors == Mashup enabler == In technology, a mashup enabler is a tool for transforming incompatible IT resources into a form that allows them to be easily combined, in order to create a mashup. Mashup enablers allow powerful techniques and tools (such as mashup platforms) for combining data and services to be applied to new kinds of resources. An example of a mashup enabler is a tool for creating an RSS feed from a spreadsheet (which cannot easily be used to create a mashup). Many mashup editors include mashup enablers, for example, Presto Mashup Connectors, Convertigo Web Integrator or Caspio Bridge. Mashup enablers have also been described as "the service and tool providers, [sic] that make mashups possible". === History === Early mashups were developed manually by enthusiastic programmers. However, as mashups became more popular, companies began creating platforms for building mashups, which allow designers to visually construct mashups by connecting together mashup components. Mashup editors have greatly simplified the creation of mashups, significantly increasing the productivity of mashup developers and even opening mashup development to end-users and non-IT experts. Standard components and connectors enable designers to combine mashup resources in all sorts of complex ways with ease. Mashup platforms, however, have done little to broaden the scope of resources accessible by mashups and have not freed mashups from their reliance on well-structured data and open libraries (RSS feeds and public APIs). Mashup enablers evolved to address this problem, providing the ability to convert other kinds of data and services into mashable resources. === Web resources === Of course, not all valuable data is located within organizations. In fact, the most valuable information for business intelligence and decision support is often external to the organization. With the emergence of rich web applications and online Web portals, a wide range of business-critical processes (such as ordering) are becoming available online. Unfortunately, very few of these data sources syndicate content in RSS format and very few of these services provide publicly accessible APIs. Mashup editors therefore solve this problem by providing enablers or connectors. == Mashups versus portals == Mashups and portals are both content aggregation technologies. Portals are an older technology designed as an extension to traditional dynamic Web applications, in which the process of converting data content into marked-up Web pages is split into two phases: generation of markup "fragments" and aggregation of the fragments into pages. Each markup fragment is generated by a "portlet", and the portal combines them into a single Web page. Portlets may be hosted locally on the portal server or remotely on a separate server. Portal technology defines a complete event model covering reads and updates. A request for an aggregate page on a portal is translated into individual read operations on all the portlets that form the page ("render" operations on local, JSR 168 portlets or "getMarkup" operations on remote, WSRP portlets). If a submit button is pressed on any portlet on a portal page, it is translated into an update operation on that portlet alone (processAction on a local portlet or performBlockingInteraction on a remote, WSRP portlet). The update is then immediately followed by a read on all portlets on the page. Portal technology is about server-side, presentation-tier aggregation. It cannot be used to drive more robust forms of application integration such as two-phase commit. Mashups differ from portals in the following respects: The portal model has been around longer and has had greater investment and product research. Portal technology is therefore more standardized and mature. Over time, increasing maturity and standardization of mashup technology will likely make it more popular than portal technology because it is more closely associated with Web 2.0 and lately Service-oriented Architectures (SOA). New versions of portal products are expected to eventually add mashup support while still supporting legacy portlet applications. Mashup technologies, in contrast, are not expected to provide support for portal standards. == Business mashups

Access-independent services

Access-independent service (AIS) is a service concept in which a service does not depend on guaranteed access network cooperation for service delivery. Telecommunications industry analyst Dean Bubley first used the term in a report on Telco-OTT in February 2012. Traditionally, most telecom company or internet service provider services are access-dependent, because they rely heavily on guaranteed access cooperation on the network the service is delivered over. For instance, traditional IP-based TV service (IPTV) delivered by a telecom company is generally a managed service. This means that IPTV service assumes the IPTV service provider has control over the access network that the IPTV service is delivered over, and network quality of service (QoS) guarantees are available for IPTV service delivery. As a result, the reach of a telecom company's IPTV service is generally restricted by the reach of the telecom company's access network. In contrast, services offered by non-traditional video content delivery service providers such as Netflix, Hulu, and Amazon Video are considered access-independent services. Netflix's video content streaming service, for example, dynamically adapts to network conditions in real-time to strive for the best overall quality of experience (QoE) and does not assume guaranteed cooperation from the underlying IP network, such as QoS. As a result, without considering content rights and different countries' government restrictions, the reach of Netflix's video content streaming service is, in theory, the reach of the Internet. Skype is another example of AIS, because Skype offers an IP-based telephony service over the Internet without depending on IP network cooperation guarantees other than basic IP network connectivity. In the context of telecom service delivery, the concept of access independent services is also commonly described by the term "over-the-top" (OTT) services. OTT service providers such as but not limited to Facebook, WeChat, and Netflix generally do not own or directly manage any wide-area access network to begin with, so they design their services for overall quality of experience, with no assumptions on guaranteed access network cooperation.

Digital video recorder

A digital video recorder (DVR), also referred to as a personal video recorder (PVR) particularly in Canadian and British English, is an electronic device that records video in a digital format to a disk drive, USB flash drive, SD memory card, SSD or other local or networked mass storage device. The term includes set-top boxes (STB) with direct to disk recording, portable media players and TV gateways with recording capability, and digital camcorders. Personal computers can be connected to video capture devices and used as DVRs; in such cases the application software used to record video is an integral part of the DVR. Many DVRs are classified as consumer electronic devices. Similar small devices with built-in (~5 inch diagonal) displays and SSD support may be used for professional film or video production, as these recorders often do not have the limitations that built-in recorders in cameras have, offering wider codec support, the removal of recording time limitations and higher bitrates. == History == In the 1980s, prototype high-definition (HD) digital video recorders were developed by Fujitsu, Hitachi, Sanyo and Canon Inc. In 1985, Hitachi demonstrated a prototype digital video tape recorder (VTR) that used digital recording video tape as storage media to record digital HD video content. In 1987, the first commercial digital video recorder was the Sony DVR-1000, a digital video cassette recorder (VCR) that recorded digital video content on D-1 (Sony) digital video cassettes. === Hard-disk-based DVR === In early 1995, Tektronix introduced the "Profile" series PDR100 Video Disk Recorder, which recorded and played back video stored on hard disk as motion JPEG. In 1996, Sweden's TV4 used the PDR100 extensively in building a new facility in Stockholm, and NBC used PDR100s at the Olympic games in Atlanta Georgia. The Tektronix Profile disk recorder won an Engineering, Science & Technology Emmy Award for "Outstanding Achievement in Engineering Development" at the 1996 Primetime Emmy Awards. In 1997 the U.S. Patent Office granted Tektronix patent 5,642,497 for two claims key to Profile. In 1998, Tektronix introduced two Profile models which were combined VDRs and file servers: the PDR200 and PDR300. The PDR300 stored its compressed video as MPEG-2 (ISO/IEC 13818-2) A working disk-based DVR prototype was developed in 1998 at Stanford University Computer Science department. The DVR design was a chapter of Edward Y. Chang's PhD dissertation, supervised by Professors Hector Garcia-Molina and Jennifer Widom. Two design papers were published at the 1998 VLDB conference, and the 1999 ICDE conference. The prototype was developed in 1998 at Pat Hanrahan's CS488 class: Experiments in Digital Television, and the prototype was demoed to industrial partners including Sony, Intel, and Apple. Consumer digital video recorders ReplayTV and TiVo were launched at the 1999 Consumer Electronics Show in Las Vegas, Nevada. Microsoft also demonstrated a unit with DVR capability, but this did not become available until the end of 1999 for full DVR features in Dish Network's DISHplayer receivers. TiVo shipped their first units on March 31, 1999. ReplayTV won the "Best of Show" award in the video category with Netscape co-founder Marc Andreessen as an early investor and board member, but TiVo was more successful commercially. Ad Age cited Forrester Research as saying that market penetration by the end of 1999 was "less than 100,000". In 2001, Toshiba introduced a combination DVR that allows video recording on both DVD recordable and hard disk drive. Legal action by media companies forced ReplayTV to remove many features such as automatic commercial skip and the sharing of recordings over the Internet, but newer devices have steadily regained these functions while adding complementary abilities, such as recording onto DVDs and programming and remote control facilities using PDAs, networked PCs, and Web browsers. In contrast to VCRs, hard-disk based digital video recorders make "time shifting" more convenient and also allow for functions such as pausing live TV, instant replay, chasing playback (viewing a recording before it has been completed) and skipping over advertising during playback. Many DVRs use the MPEG format for compressing the digital video. Video recording capabilities have become an essential part of the modern set-top box, as TV viewers have wanted to take control of their viewing experiences. As consumers have been able to converge increasing amounts of video content on their set-tops, delivered by traditional 'broadcast' cable, satellite and terrestrial as well as IP networks, the ability to capture programming and view it whenever they want has become a must-have function for many consumers. === DVR tied to video service === At the 1999 CES, Dish Network demonstrated the hardware that would later have DVR capability with the assistance of Microsoft software, which also included access to the WebTV service. By the end of 1999 the Dishplayer had full DVR capabilities and within a year, over 200,000 units were sold. In the UK, digital video recorders are often referred to as "plus boxes" (such as BSKYB's Sky+ and Virgin Media's V+ which integrates an HD capability, and the subscription free Freesat+ and Freeview+). Freeview+ have been around in the UK since the late 2000s, although the platform's first DVR, the Pace Twin, dates to 2002. British Sky Broadcasting marketed a popular combined receiver and DVR as Sky+, now replaced by the Sky Q box. TiVo launched a UK model in 2000, and is no longer supported, except for third party services, and the continuation of TiVo through Virgin Media in 2010. South African based Africa Satellite TV beamer Multichoice recently launched their DVR which is available on their DStv platform. In addition to ReplayTV and TiVo, there are a number of other suppliers of digital terrestrial (DTT) DVRs, including Technicolor SA, Topfield, Fusion, Commscope, Humax, VBox Communications, AC Ryan Playon and Advanced Digital Broadcast (ADB). Many satellite, cable and IPTV companies are incorporating digital video recording functions into their set-top box, such as with DirecTiVo, DISHPlayer/DishDVR, Scientific Atlanta Explorer 8xxx from Time Warner, Total Home DVR from AT&T U-verse, Motorola DCT6412 from Comcast and others, Moxi Media Center by Digeo (available through Charter, Adelphia, Sunflower, Bend Broadband, and soon Comcast and other cable companies), or Sky+. Astro introduced their DVR system, called Astro MAX, which was the first PVR in Malaysia but was phased out two years after its introduction. In the case of digital television, there is no encoding necessary in the DVR since the signal is already a digitally encoded MPEG stream. The digital video recorder simply stores the digital stream directly to disk. Having the broadcaster involved with, and sometimes subsidizing, the design of the DVR can lead to features such as the ability to use interactive TV on recorded shows, pre-loading of programs, or directly recording encrypted digital streams. It can, however, also force the manufacturer to implement non-skippable advertisements and automatically expiring recordings. In the United States, the FCC has ruled that starting on July 1, 2007, consumers will be able to purchase a set-top box from a third-party company, rather than being forced to purchase or rent the set-top box from their cable company. This ruling only applies to "navigation devices", otherwise known as a cable television set-top box, and not to the security functions that control the user's access to the content of the cable operator. The overall net effect on digital video recorders and related technology is unlikely to be substantial as standalone DVRs are currently readily available on the open market. In Europe Free-To-Air and Pay TV TV gateways with multiple tuners have whole house recording capabilities allowing recording of TV programs to Network Attached Storage or attached USB storage, recorded programs are then shared across the home network to tablet, smartphone, PC, Mac, Smart TV. === Introduction of dual tuners === In 2003 many Satellite and Cable providers introduced dual-tuner digital video recorders. In the UK, BSkyB introduced their first PVR Sky+ with dual tuner support in 2001. These machines have two independent tuners within the same receiver. The main use for this feature is the capability to record a live program while watching another live program simultaneously or to record two programs at the same time, possibly while watching a previously recorded one. Kogan.com introduced a dual-tuner PVR in the Australian market allowing free-to-air television to be recorded on a removable hard drive. Some dual-tuner DVRs also have the ability to output to two separate television sets at the same time. The PVR manufactured by UEC (Durban, South Africa) and used by Multichoice and Scientific Atlanta 8300DVB PVR have the ability to view two

Anna Becker

Anna Becker is an Israeli researcher known in the field of artificial intelligence and computer science within the financial field. == Early life and education == Becker was born in Russia and immigrated to Israel at 16 after graduating from a school in Moscow. At 17, she began her studies at Technion – Israel Institute of Technology. During her master's degree in computer science, she taught first-year students of the same course, and at 27, Becker completed her PhD in Computer Science and Artificial Intelligence. == Career == While pursuing her PhD, Becker resolved an NP-complete approximation algorithm that had been unresolved for over twenty years. This made her a recognized scholar in the field. After completing her PhD, she developed an approximation technique by a factor of two. This technique is widely used today in operating systems, database systems, and VLSI chip designs. She then founded and sold Strategy Runner, a fintech software. After this, she founded EndoTech, an algorithmic trading platform based on artificial intelligence and machine learning. EndoTech's trading strategies have been operating in live cryptocurrency markets since 2017. The platform's BTC Alpha strategy has reported an average annual return of 163% on fixed capital over eight years of live operation, with a maximum drawdown of 14% and a trade accuracy rate of approximately 83%. In 2026, EndoTech entered a partnership with Bit1 Exchange to make its BTC Alpha and ETH Alpha copy trading strategies accessible to retail investors with no minimum deposit requirement, through a full-custody model in which user funds remain in their own exchange wallets at all times.As of 2023, Becker is working on Fianchetto Fund, an AI-based investing analysis platform. Becker has also co-authored a book on Bayesian networks, which has been published widely in the field of computer science and artificial intelligence.

Dynamic web page

A dynamic web page is a web page constructed at runtime (during software execution), as opposed to a static web page, delivered as it is stored. A server-side dynamic web page is a web page whose construction is controlled by an application server processing server-side scripts. In server-side scripting, parameters determine how the assembly of every new web page proceeds, and including the setting up of more client-side processing. A client-side dynamic web page processes the web page using JavaScript running in the browser as it loads. JavaScript can interact with the page via Document Object Model (DOM), to query page state and modify it. Even though a web page can be dynamic on the client-side, it can still be hosted on a static hosting service such as GitHub Pages or Amazon S3 as long as there is not any server-side code included. A dynamic web page is then reloaded by the user or by a computer program to change some variable content. The updating information could come from the server, or from changes made to that page's DOM. This may or may not truncate the browsing history or create a saved version to go back to, but a dynamic web page update using AJAX technologies will neither create a page to go back to, nor truncate the web browsing history forward of the displayed page. Using AJAX, the end user gets one dynamic page managed as a single page in the web browser while the actual web content rendered on that page can vary. The AJAX engine sits only on the browser requesting parts of its DOM, the DOM, for its client, from an application server. A particular application server could offer a standardized REST style interface to offer services to the web application. DHTML is the umbrella term for technologies and methods used to create web pages that are not static web pages, though it has fallen out of common use since the popularization of AJAX, a term which is now itself rarely used. Client-side-scripting, server-side scripting, or a combination of these make for the dynamic web experience in a browser. == Basic concepts == Classical hypertext navigation, with HTML or XHTML alone, provides "static" content, meaning that the user requests a web page and simply views the page and the information on that page. However, a web page can also provide a "live", "dynamic", or "interactive" user experience. Content (text, images, form fields, etc.) on a web page can change, in response to different contexts or conditions. There are two ways to create this kind of effect: Using client-side scripting to change interface behaviors within a specific web page, in response to mouse or keyboard actions, data received from a web API, websocket or at specified timing events. In this case the dynamic behavior occurs within the presentation. Using server-side scripting to change the supplied page source code between pages, adjusting the sequence or reload of the web pages or web content supplied to the browser. Server responses may be determined by such conditions as data in a posted HTML form, parameters in the URL, the type of browser being used, the passage of time, or a database or server state. Web pages that use client-side scripting must use presentation technology broadly called rich interfaced pages. Client-side scripting languages like JavaScript or ActionScript, used for Dynamic HTML (DHTML) and Flash technologies respectively, are frequently used to orchestrate media types (sound, animations, changing text, etc.) of the presentation. The scripting also allows use of remote scripting, a technique by which the DHTML page requests additional information from a server, using a hidden Frame, XMLHttpRequests, or a web service. It is also possible to use a web framework to create a web API, which the client, via the use of JavaScript, uses to obtain data and alter its appearance or behavior dynamically depending on the data. Web pages that use server-side scripting are often created with the help of server-side languages such as PHP, Perl, ASP, JSP, ColdFusion and other languages. These server-side languages typically use the Common Gateway Interface (CGI) to produce dynamic web pages. These kinds of pages can also use, on the client-side, the first kind (DHTML, etc.). == History == It is difficult to be precise about "dynamic web page beginnings" or chronology because the precise concept makes sense only after the "widespread development of web pages". HTTP has existed since 1989, HTML, publicly standardized since 1996. The web browser's rise in popularity started with Mosaic in 1993. Between 1995 and 1996, multiple dynamic web products were introduced to the market, including Coldfusion, WebObjects, PHP, and Active Server Pages. The introduction of JavaScript (then known as LiveScript) enabled the production of client-side dynamic web pages, with JavaScript code executed in the client's browser. The letter "J" in the term AJAX originally indicated the use of JavaScript, as well as XML. With the rise of server side JavaScript processing, for example, Node.js, originally developed in 2009, JavaScript is also used to dynamically create pages on the server that are sent fully formed to clients. MediaWiki, the content management system that powers Wikipedia, is an example for an originally server-side dynamic web page, interacted with through form submissions and URL parameters. Throughout time, progressively enhancing extensions such as the visual editor have also added elements that are dynamic on the client side, while the original dynamic server-side elements such as the classic edit form remain available to be fallen back on (graceful degradation) in case of error or incompatibility. == Server-side scripting == A program running on a web server is used to generate the web content on various web pages, manage user sessions, and control workflow. Server responses may be determined by such conditions as data in a posted HTML form, parameters in the URL, the type of browser being used, the passage of time, or a database or server state. Such web pages are often created with the help of server-side languages such as ASP, ColdFusion, Java, JavaScript, Perl, PHP, Ruby, Python, and other languages, by a support server that can run on the same hardware as the web server. These server-side languages often use the Common Gateway Interface (CGI) to produce dynamic web pages. Two notable exceptions are ASP.NET, and JSP, which reuse CGI concepts in their APIs but actually dispatch all web requests into a shared virtual machine. The server-side languages are used to embed tags or markers within the source file of the web page on the web server. When a user on a client computer requests that web page, the web server interprets these tags or markers to perform actions on the server. For example, the server may be instructed to insert information from a database or information such as the current date. Dynamic web pages are often cached when there are few or no changes expected and the page is anticipated to receive considerable amount of web traffic that would wastefully strain the server and slow down page loading if it had to generate the pages on the fly for each request. == Client-side scripting == Client-side scripting is changing interface behaviors within a specific web page in response to input device actions, or at specified timing events. In this case, the dynamic behavior occurs within the presentation. The client-side content is generated on the user's local computer system. Such web pages use presentation technology called rich interfaced pages. Client-side scripting languages like JavaScript or ActionScript, used for Dynamic HTML (DHTML) and Flash technologies respectively, are frequently used to orchestrate media types (sound, animations, changing text, etc.) of the presentation. Client-side scripting also allows the use of remote scripting, a technique by which the DHTML page requests additional information from a server, using a hidden frame, XMLHttpRequests, or a Web service. The first public use of JavaScript was in 1995, when the language was implemented in Netscape Navigator 2, standardized as ECMAScript two years later. Example The client-side content is generated on the client's computer. The web browser retrieves a page from the server, then processes the code embedded in the page (typically written in JavaScript) and displays the retrieved page's content to the user. The innerHTML property (or write command) can illustrate the client-side dynamic page generation: two distinct pages, A and B, can be regenerated (by an "event response dynamic") as document.innerHTML = A and document.innerHTML = B; or "on load dynamic" by document.write(A) and document.write(B). == Combination technologies == All of the client and server components that collectively build a dynamic web page are called a web application. Web applications manage user interactions, state, security, and performance. Ajax uses a combination of both client-side script