AI Analytics Platform

AI Analytics Platform — independent reviews, comparisons, pricing and step-by-step guides on Aizhi.

  • Cloud testing

    Cloud testing

    Cloud testing is a form of software testing in which web applications use cloud computing environments (a "cloud") to simulate real-world user traffic. == Steps == Companies simulate real world Web users by using cloud testing services that are provided by cloud service vendors such as Advaltis, Compuware, HP, Keynote Systems, Neotys, RadView and SOASTA. Once user scenarios are developed and the test is designed, these service providers leverage cloud servers (provided by cloud platform vendors such as Amazon.com, Google, Rackspace, Microsoft, etc.) to generate web traffic that originates from around the world. Once the test is complete, the cloud service providers deliver results and analytics back to corporate IT professionals through real-time dashboards for a complete analysis of how their applications and the internet will perform during peak volumes. == Applications == Cloud testing is often seen as only performance or load tests, however, as discussed earlier it covers many other types of testing. Cloud computing itself is often referred to as the marriage of software as a service (SaaS) and utility computing. In regard to test execution, the software offered as a service may be a transaction generator and the cloud provider's infrastructure software, or may just be the latter. Distributed Systems and Parallel Systems mainly use this approach for testing, because of their inherent complex nature. D-Cloud is an example of such a software testing environment. == Tools == Leading cloud computing service providers include, among others, Amazon, Microsoft, Google, RadView, Skytap, HP and SOASTA. == Benefits == The ability and cost to simulate web traffic for software testing purposes has been an inhibitor to overall web reliability. The low cost and accessibility of the cloud's extremely large computing resources provides the ability to replicate real world usage of these systems by geographically distributed users, executing wide varieties of user scenarios, at scales previously unattainable in traditional testing environments. Minimal start-up time along with quality assurance can be achieved by cloud testing. Following are some of the key benefits: Reduction in capital expenditure Highly scalable

    Read more →
  • Mosaik Solutions

    Mosaik Solutions

    Mosaik Solutions (formerly American Roamer) was a company that specializes in wireless coverage data and wireless coverage maps, based in Memphis, Tennessee before being acquired by Ookla. The company collects and crowdsources carrier signal quality from major telecommunications providers or users who have its consumer or enterprise mobile application installed. The data is used to provide insights into places around the world without access to cellular coverage and the development of new coverage patterns, as well as to provide maps showing what provider offers the best service in an area. In 2011, the Federal Communications Commission (FCC), recognized Mosaik Solutions as the "industry standard" for the presence of wireless service at the census-block level. == History == In 2016, Mosaik purchased Sensorly, a free app developed to crowdsource cellular network performance service and provide coverage mapping for wireless networks worldwide. == Products and services == === MapELEMENTS === MapELEMENTS software is a visualization tool that allows users to analyze data from the largest cellular coverage database in the world. === CellMaps === CellMaps is an interactive mapping solution that allows companies to show their network coverage directly on their website through an iframe or API. In 2013 Mosaik launched an android app for CellMaps that provides data directly from carriers so that users can determine what carrier meets their needs in a given area. On the map you can overlay multiple carriers, zoom to street-view level, and drop a pin onto any given spot to get a breakdown of carrier service in that area. === Signal Insights App === Signal Insights is an SaaS platform service available for android users that measures and analyzes the customer's experience in cellular or Wi-Fi networks. Indoor mode allows a user to upload a building floor plan and then map and test specific points in the building for cellular or Wi-Fi connectivity. === Sensorly App === Sensorly is a free app that crowdsources cellular network performance to provide coverage mapping worldwide and mobile speed data to help consumers make informed decisions when choosing a cellular carrier. In February 2017, Sensorly launched Map Trip, a feature that allows users to map their routes and share with others their signal data at a particular point in real time. === TowerSource === TowerSource is a resource for locating cell towers and identifying ownership, availability, fiber routes, type and height. It was acquired by Mosaik Solutions in September 2014. === Network Validator === Network Validator is a SaaS solution designed for users to quickly determine whether global cellular networks exist - by country, operator and wireless technology. === CoverageRight === CoverageRight is composed of licensed GIS file datasets that identify the marketed coverage of wireless operators in the United States and worldwide. It enables users to perform spatial analyses, monitor competitive build-outs, analyze coverage trends and assemble roaming footprints. This data has been utilized by the FCC to analyze wireless coverage nationwide. === Network QoE === Network QoE is an enterprise platform that uses crowdsourced data from cellular devices to detect wireless network issues including 3G, 4G and wifi accessibility, network coverage holes and data performance issues. === Wireless Spectrum Report === In March 2017, Mosaik Solutions launched the Wireless Spectrum Report, a tabular dataset detailing facts about spectrum ownership and availability in the United States.

    Read more →
  • Algorithmic curation

    Algorithmic curation

    Algorithm curation is the selection of online media by technologies such as recommender systems and personalized search. Curation entails the selective sharing of online content and recommendations based on inferred interests. Curation algorithms implement different filter approaches, such as collaborative filtering and content-based filtering. Examples include search engine and social media products such as the Twitter feed, Facebook's News Feed, and Google Personalized Search. == History == === Early algorithmic curation === Online platforms use newsfeed algorithms to determine what content to present to each user. The volume of content published on social media platforms created a need for automated filtering, as manual review of all available content by users is not feasible. These systems function as a form of gatekeeper, shaping which new material users are exposed to and influencing knowledge, attention, and political exposure. ==== Information overload ==== Early ranking algorithms addressed information overload by surfacing the most recent or most popular posts. Later systems shifted toward ranking content based on predicted engagement, aiming to increase the time users spend on a platform. Research has found that these engagement-oriented systems can increase the spread of misinformation and contribute to political polarization as a side effect of optimising for user interaction. ==== How algorithm changes users' feeds over time ==== Algorithmic curation has been found to increase source diversity in some respects while simultaneously reducing the number of external links presented to users, which limits exposure to off-platform content. Research using agent-based modelling has examined how user behaviour, information quality, and algorithmic design interact with one another over time. === Emergence of AI === Platforms increasingly shifted from rule-based ranking systems toward machine-learning and AI-driven approaches, which allow feeds to be personalised at a larger scale and with greater responsiveness to user behaviour. For example, X (formerly Twitter) moved away from a chronological feed toward an AI-powered ranking system that personalises content for each user. These systems are capable of making ranking decisions across volumes of content and user interactions that would not be practical to handle manually. == Approach == === Filter types === ==== Collaborative filtering ==== Collaborative filtering (CF) methods create recommendations based on a person's usage patterns. CF predicts a person's preference for an item by matching their interests with those of users who have similar interests. This process allows for the sharing of ratings between users with similar profiles. CF is based on patterns of human behaviour rather than machine analysis of content itself. Users of CF systems rate items they have interacted with, and these ratings form a profile of interests. The CF system then matches that user with others who have similar profiles, and uses their ratings to generate recommendations. Collaborative filtering can be applied across various content types including text, images, music, and financial products, and can account for complex attributes such as taste and quality that are difficult to represent explicitly. ==== Content-based filtering ==== Content-based filtering (CBF) builds a user profile to represent the types of items a user has engaged with, based on keywords and attributes used to describe those items. Recommendations are generated by presenting items similar to those the user has previously engaged with or is currently viewing. The CBF method creates a profile for each item based on discrete attributes and features, and then constructs a content-based user profile using a weighted vector of those features derived from items the user has rated, purchased, or interacted with. The weights represent the relative importance of each feature, and can be computed using techniques such as Bayesian classifiers, cluster analysis, decision trees, and artificial neural networks, with the goal of estimating the probability that a user will engage with a suggested item. One application of content-based filtering is Pandora Radio, where users provide an artist, genre, or composer to generate a station, and the system surfaces music with similar attributes. == Technology == === Recommender system === Recommender systems rank and suggest content to users based on a combination of implicit and explicit user input. Implicit signals include time spent viewing or engaging with a specific item. Explicit signals include actions such as liking posts, saving store pages, reading news articles, or sharing content. === Personalized search === Personalized search aims to retrieve results most relevant to the user by incorporating contextual factors beyond the explicit query, such as past queries, browsing history, and inferred interests. Social media platforms such as X (formerly Twitter) and Bluesky generate recommendations based on similar users and the content those users interact with. Personalized search may also allow users to explicitly filter results by blocking content containing certain phrases or hashtags. For first-time users without prior history, personalized search may draw on content-based filtering to establish an initial context. Similar processes are used by search engines and retail platforms to tailor results and product recommendations to individual users. == AI contribution == Artificial intelligence contributes to algorithmic curation through machine-learning models capable of processing large volumes of data. Techniques such as deep learning and reinforcement learning allow curation algorithms to model user preferences with greater granularity alongside established filtering approaches. This enables platforms to adjust content rankings rapidly in response to user behaviour. In social media and streaming contexts, AI-driven systems arrange feeds according to predicted relevance, with the outputs shaped by patterns present in the training data. == Social media and potential impact == === Echo chambers === Social media algorithms, such as those used by X (formerly Twitter), recommend content that the system predicts a user will engage with positively. Content from accounts with differing perspectives is less likely to be surfaced, which may reduce source and topic diversity and contribute to the formation of echo chambers. For example, Facebook's news feed is designed to surface content aligned with users' prior engagement, which may reinforce existing views. This dynamic may contribute to filter bubbles, in which users are seldom exposed to content outside their existing interests. Users may further narrow their feeds by actively blocking certain content or accounts. === Over-representation === A pattern observed across social media platforms is the concentration of algorithmic visibility among a small subset of users. Content from the most active users, those with the largest followings, or those generating the most engagement tends to be surfaced more frequently, meaning a small number of accounts can account for a disproportionate share of what appears in other users' feeds.

    Read more →
  • Group (online social networking)

    Group (online social networking)

    A group (often termed as a community, e-group or club) is a feature in many social networking services which allows users to create, post, comment to and read from their own interest- and niche-specific forums, often within the realm of virtual communities. Groups, which may allow for open or closed access, invitation and/or joining by other users outside the group, are formed to provide mini-networks within the larger, more diverse social network service. Much like electronic mailing lists, they are also owned and maintained by owners, moderators, or managers, who can edit posts to discussion threads and regulate member behavior within the group. However, unlike traditional Internet forums and mailing lists, groups in social networking services allow owners and moderators alike to share account credentials between groups without having to log in to every group. == History == The rise of the World Wide Web resulted in an expansion of the varieties of methods for communication on the Internet, much of which was limited in the 1980s to discussion in newsgroups, BBS and chat rooms. While the initial rise of web-based mass communication took place in the form of early Internet forums in the mid-1990s, a few services such as MSN Groups, Yahoo! Groups and eGroups pioneered the combination of web-based mailing list archives with user profiles; by 2000, such services doubled as full-fledged mailing lists and Internet forums, allowing users to create an extremely large variety of discussion and networking mediums with comparatively sparse thresholds of complexity. Further features included chat rooms (often Java-based), image and video galleries, and group calendars. The second spurt of bullecalbel networking, one which was less dependent upon mailing list-related features and more upon Internet forum features, began in the early- to mid-2000s in the form of such services as LiveJournal, Friendster, MySpace and Facebook. These services continued the evolution of the web-based e-group as a discussion and organization medium. In the late 2000s, services such as Yammer and Micromobs further advanced e-group communication by taking advantage of microblog-style activity streams. == In virtual worlds == In Second Life, groups are centered less around discussion forums (as such, an asynchronous conferencing feature is not built into the Second Life network as of 2009) and common interest, and are more centered on maintenance of a particular geographic location inside the network. Such groups are often created by the owners of areas such as buildings, plots of land or whole islands in order to cater to the most frequent visitors and patrons of the regions. With the limited asynchronous messaging capability of Second Life, groups are also a means of mass-emailing announcements pertinent to the group, but are not completely capable of hosting discussion or deliberation of such announcement messages. == The importance of online social networking groups == Before people expanded their social life to the internet, they had small circles. These included the networks gained from rural areas or villages, such as family, friends and neighbors, and community groups such as churches. These networks represented a social safety net to support individuals. Since we have moved a huge part of our social life to the internet, online social networking groups have become a way to maintain a structure in social life. Online networking is made up by clusters of people, bounding themselves together on the World Wide Web. To be able to sort out the many different clusters we belong to we use online groups to helps us arrange and make sense of all our contacts. This sense-making is rooted within us, we sort and put people into compartments or sort by categories to make sense and try to understand our relationships to the people around us. Online social networking groups therefore enables us to do the same thing online. Online social networks have a huge impact on people’s lives. Since the social network revolution has offered people with more loose ties and diversity in their relationships, it creates both stress and opportunities. Furthermore, the Internet revolution has transformed the contact point from a household to the individual. In addition, people are in constant communication with each other due to the mobile revolution. All in all, the mentioned revolutions created a new social operating system: "networked individualism". The way that people currently connect, communicate and exchange information can be described as a form of operating system because of the similarities between the structure of computer systems and the networked individualism that has taken form in society. These structures consist of unwritten rules, norms, constraints and opportunities which are apparent for those who are part of a specific network. == Concerns == There is some research claiming that fake news is infiltrating online social networking. A recent study claimed that people exposed to fake news generally revert to their original opinion even after finding out the information they were given was false.

    Read more →
  • ELMo

    ELMo

    ELMo (embeddings from language model) is a word embedding method for representing a sequence of words as a corresponding sequence of vectors. It was created by researchers at the Allen Institute for Artificial Intelligence, and University of Washington and first released in February 2018. It is a bidirectional LSTM which takes character-level as inputs and produces word-level embeddings, trained on a corpus of about 30 million sentences and 1 billion words. The architecture of ELMo accomplishes a contextual understanding of tokens. Deep contextualized word representation is useful for many natural language processing tasks, such as coreference resolution and polysemy resolution. ELMo was historically important as a pioneer of self-supervised generative pretraining followed by fine-tuning, where a large model is trained to reproduce a large corpus, then the large model is augmented with additional task-specific weights and fine-tuned on supervised task data. It was an instrumental step in the evolution towards transformer-based language modelling. == Architecture == ELMo is a multilayered bidirectional LSTM on top of a token embedding layer. The output of all LSTMs concatenated together consists of the token embedding. The input text sequence is first mapped by an embedding layer into a sequence of vectors. Then two parts are run in parallel over it. The forward part is a 2-layered LSTM with 4096 units and 512 dimension projections, and a residual connection from the first to second layer. The backward part has the same architecture, but processes the sequence back-to-front. The outputs from all 5 components (embedding layer, two forward LSTM layers, and two backward LSTM layers) are concatenated and multiplied by a linear matrix ("projection matrix") to produce a 512-dimensional representation per input token. ELMo was pretrained on a text corpus of 1 billion words. The forward part is trained by repeatedly predicting the next token, and the backward part is trained by repeatedly predicting the previous token. After the ELMo model is pretrained, its parameters are frozen, except for the projection matrix, which can be fine-tuned to minimize loss on specific language tasks. This is an early example of the pretraining-fine-tune paradigm. The original paper demonstrated this by improving state of the art on six benchmark NLP tasks. === Contextual word representation === The architecture of ELMo accomplishes a contextual understanding of tokens. For example, the first forward LSTM of ELMo would process each input token in the context of all previous tokens, and the first backward LSTM would process each token in the context of all subsequent tokens. The second forward LSTM would then incorporate those to further contextualize each token. Deep contextualized word representation is useful for many natural language processing tasks, such as coreference resolution and polysemy resolution. For example, consider the sentenceShe went to the bank to withdraw money.In order to represent the token "bank", the model must resolve its polysemy in context. The first forward LSTM would process "bank" in the context of "She went to the", which would allow it to represent the word to be a location that the subject is going towards. The first backward LSTM would process "bank" in the context of "to withdraw money", which would allow it to disambiguate the word as referring to a financial institution. The second forward LSTM can then process "bank" using the representation vector provided by the first backward LSTM, thus allowing it to represent it to be a financial institution that the subject is going towards. == Historical context == ELMo is one link in a historical evolution of language modelling. Consider a simple problem of document classification, where we want to assign a label (e.g., "spam", "not spam", "politics", "sports") to a given piece of text. The simplest approach is the "bag of words" approach, where each word in the document is treated independently, and its frequency is used as a feature for classification. This was computationally cheap but ignored the order of words and their context within the sentence. GloVe and Word2Vec built upon this by learning fixed vector representations (embeddings) for words based on their co-occurrence patterns in large text corpora. Like BERT (but unlike "bag of words" such as Word2Vec and GloVe), ELMo word embeddings are context-sensitive, producing different representations for words that share the same spelling. It was trained on a corpus of about 30 million sentences and 1 billion words. Previously, bidirectional LSTM was used for contextualized word representation. ELMo applied the idea to a large scale, achieving state of the art performance. After the 2017 publication of Transformer architecture, the architecture of ELMo was changed from a multilayered bidirectional LSTM to a Transformer encoder, giving rise to BERT. BERT has a similar pretrain-fine-tune workflow, but uses a Transformer with implications for more parallelizable training.

    Read more →
  • W3C Device Description Working Group

    W3C Device Description Working Group

    The W3C Device Description Working Group (DDWG), operating as part of the World Wide Web Consortium (W3C) Mobile Web Initiative (MWI), was chartered to "foster the provision and access to device descriptions that can be used in support of Web-enabled applications that provide an appropriate user experience on mobile devices." Mobile devices exhibit the greatest diversity of capabilities, and therefore present the greatest challenge to content adaptation technologies. The group published several documents, including a list of requirements for an interface to a Device Description Repository (DDR) and a standard interface meeting those requirements. The group was rechartered in 2006 to work in public towards the development of the Application Programming Interface (API) for a DDR. Early in 2007, the group launched a wiki and a blog to add to the public mailing list. The group subsequently published a formal vocabulary of core device properties, and an API called the DDR Simple API, which became a W3C Recommendation in December 2008. The group closed at the end of 2008, but with the intention of maintaining the Web pages, blog and wiki through W3C volunteer effort. == Publications == The DDWG published several W3C Working Group Notes and one W3C Recommendation. A W3C WG Note that articulates what the W3C and other organizations are doing or have already done with regard to device information. This document suggests an environment in which these technologies work together to meet the goals of content adaptation. The completed document was published on 31 October 2007. A W3C WG Note describing the ecosystem surrounding creation, maintenance and use of device descriptions. The completed document was published on 31 October 2007. A W3C WG Note describing a set of requirements for a reference repository of device descriptions. The completed document was published on 17 December 2007. A W3C WG Note describing a process to manage contributions to an initial core vocabulary, identification of key device properties, a formal initial core vocabulary and the identification of a maintainer for the core vocabulary. The details were contained in the Working Group Note describing the DDWG Core Vocabulary published on 14 April 2008. A W3C WG Note defining useful grouping and structure patterns in device descriptions. The Device Description Structures document was published as a Working Draft on 5 December 2008. The intention is that this document will be future input to other W3C groups. A W3C Recommendation defining a language-neutral programming interface to a Device Description Repository. The DDR Simple API was published on 5 December 2008. There is the possibility of future publications on the DDWG wiki describing implementations of the API in various languages, including Java, IDL, WSDL, C# etc. Much of the DDWG's material was developed in public via the DDWG Wiki and through their public mailing lists.

    Read more →
  • Web performance

    Web performance

    Web performance refers to the speed in which web pages are downloaded and displayed on the user's web browser. Web performance optimization (WPO), or website optimization is the field of knowledge about increasing web performance. Faster website download speeds have been shown to increase visitor retention and loyalty and user satisfaction, especially for users with slow internet connections and those on mobile devices. Web performance also leads to less data travelling across the web, which in turn lowers a website's power consumption and environmental impact. Some aspects which can affect the speed of page load include browser/server cache, image optimization, and encryption (for example SSL), which can affect the time it takes for pages to render. The performance of the web page can be improved through techniques such as multi-layered cache, light weight design of presentation layer components and asynchronous communication with server side components. == History == In the first decade or so of the web's existence, web performance improvement was focused mainly on optimizing website code and pushing hardware limitations. According to the 2002 book Web Performance Tuning by Patrick Killelea, some of the early techniques used were to use simple servlets or CGI, increase server memory, and look for packet loss and retransmission. Although these principles now comprise much of the optimized foundation of internet applications, they differ from current optimization theory in that there was much less of an attempt to improve the browser display speed. Steve Souders coined the term "web performance optimization" in 2004. At that time Souders made several predictions regarding the impact that WPO as an "emerging industry" would bring to the web, such as websites being fast by default, consolidation, web standards for performance, environmental impacts of optimization, and speed as a differentiator. One major point that Souders made in 2007 is that at least 80% of the time that it takes to download and view a website is controlled by the front-end structure. This lag time can be decreased through awareness of typical browser behavior, as well as of how HTTP works. == Optimization techniques == Web performance optimization improves user experience (UX) when visiting a website and therefore is highly desired by web designers and web developers. They employ several techniques that streamline web optimization tasks to decrease web page load times. This process is known as front end optimization (FEO) or content optimization. FEO concentrates on reducing file sizes and "minimizing the number of requests needed for a given page to load." In addition to the techniques listed below, the use of a content delivery network—a group of proxy servers spread across various locations around the globe—is an efficient delivery system that chooses a server for a specific user based on network proximity. Typically the server with the quickest response time is selected. The following techniques are commonly used web optimization tasks and are widely used by web developers: Web browsers open separate Transmission Control Protocol (TCP) connections for each Hypertext Transfer Protocol (HTTP) request submitted when downloading a web page. These requests total the number of page elements required for download. However, a browser is limited to opening only a certain number of simultaneous connections to a single host. To prevent bottlenecks, the number of individual page elements are reduced using resource consolidation whereby smaller files (such as images) are bundled together into one file. This reduces HTTP requests and the number of "round trips" required to load a web page. Web pages are constructed from code files such JavaScript and Hypertext Markup Language (HTML). As web pages grow in complexity, so do their code files and subsequently their load times. File compression can reduce code files by about 40 percent, thereby improving site responsiveness. Web Caching Optimization reduces server load, bandwidth usage and latency. CDNs use dedicated web caching software to store copies of documents passing through their system. Many website platforms, such as SiteGround, IONOS, Wix, and Hostinger, rely on global CDNs and caching technologies to deliver faster page loads across different geographical regions. Subsequent requests from the cache may be fulfilled should certain conditions apply. Web caches are located on either the client side (forward position) or web-server side (reverse position) of a CDN. Web browsers are also able to store content for re-use through the HTTP cache or web cache. Requests web browsers make are typically routed to the HTTP cache to validate if a cached response may be used to fulfill a request. If such a match is made, the response is fulfilled from the cache. This can be helpful for reducing network latency and costs associated with data-transfer. The HTTP cache is configured using request and response headers. Code minification distinguishes discrepancies between codes written by web developers and how network elements interpret code. Minification removes comments and extra spaces as well as crunch variable names in order to minimize code, decreasing files sizes by as much as 60%. In addition to caching and compression, lossy compression techniques (similar to those used with audio files) remove non-essential header information and lower original image quality on many high resolution images. These changes, such as pixel complexity or color gradations, are transparent to the end-user and do not noticeably affect perception of the image. Another technique is the replacement of raster graphics with resolution-independent vector graphics. Vector substitution is best suited for simple geometric images. Lazy loading of images and video reduces initial page load time, initial page weight, and system resource usage, all of which have positive impacts on website performance. It is used to defer initialization of an object right until the point at which it is needed. The browser loads the images in a page or post when they are needed such as when the user scrolls down the page and not all images at once, which is the default behavior, and naturally, takes more time. == HTTP/1.x and HTTP/2 == Since web browsers use multiple TCP connections for parallel user requests, congestion and browser monopolization of network resources may occur. Because HTTP/1 requests come with associated overhead, web performance is impacted by limited bandwidth and increased usage. Compared to HTTP/1, HTTP/2 is binary instead of textual is fully multiplexed instead of ordered and blocked can therefore use one connection for parallelism uses header compression to reduce overhead allows servers to "push" responses proactively into client caches Instead of a website's hosting server, CDNs are used in tandem with HTTP/2 in order to better serve the end-user with web resources such as images, JavaScript files and Cascading Style Sheet (CSS) files since a CDN's location is usually in closer proximity to the end-user. == Metrics == In recent years, several metrics have been introduced that help developers measure various aspects of the performance of their websites. In 2019, Google introduced metrics such as Time to First Byte (TTFB), First Contentful Paint (FCP), First Paint (FP), First Input Delay (FID), Cumulative Layout Shift (CLS) and Largest Contentful Paint (LCP) allow for website owner to gain insights into issues that might hurt the performance of their websites making it seem sluggish or slow to the user. Other metrics including Request Count (number of requests required to load a page), DOMContentLoaded (time when HTML document is completely loaded and parsed excluding CSS style sheets, images, etc.), Above The Fold Time (content that is visible without scrolling), Round Trip Time, number of Render Blocking Resources (such as scripts, stylesheets), Onload Time, Connection Time, Total Page Size help provide an accurate picture of latencies and slowdowns occurring at the networking level which might slow down a site. Modules to measure metrics such as TTFB, FCP, LCP, FP etc are provided with major frontend JavaScript libraries such as React, NuxtJS and Vue. Google publishes a library, the core-web-vitals library that allows for easy measurement of these metrics in frontend applications. In addition to this, Google also provides the Lighthouse, a Chrome dev-tools component and PageSpeed Insight a site that allows developers to measure and compare the performance of their website with Google's recommended minimums and maximums. In addition to this, tools such as the Network Monitor by Mozilla Firefox help provide insight into network-level slowdowns that might occur during transmission of data.

    Read more →
  • Industry Dive

    Industry Dive

    Industry Dive is a United States-based business-to-business news organization with an estimated 18 million readers in more than 25 industries, such as banking and waste management. Since 2022, it has been owned by Informa plc. Industry Dive aims to serve business executives who read news on their mobile phones. The company had an estimated revenue of more than of more than $110 million in 2023. As of 2020, it has more than 300 employees, including 80 journalists and 12 engineers. Its headquarters is in Washington, D.C. == History == Industry Dive was formed in 2012 by Sean Griffey (president), Eli Dickinson (chief technology officer), and Ryan Willumson (chief revenue officer). It was funded with $900,000 from private investors in 2012 and 2013. The company covered five industries: construction, education, marketing, utility, and waste. In 2016, it began its Dive Awards. Industry Dive's revenues quadrupled from 2015 to 2018, putting it in the top half of the Deloitte Technology Fast 500 and the top 20 percent of the Inc. Top 5000 list. In 2019, Falfurrias Capital Partners acquired a majority stake in the company. ID's content marketing clients included IBM, Siemens, and UPS. In 2020, DCA Live named Industry Dive to its "Red Hot Companies" list, which recognizes the D.C. area's 'fastest-growing' companies. In the same year, Industry Dive acquired CFO. In 2021, Industry Dive acquired PharmaVOICE. In 2022, it was purchased by Informa plc, which bought its majority stake from Falfurrias Capital Partners for about $530 million. == Publications == Industry Dive provides news coverage of a variety of industries including agriculture, banking, construction, education, fashion, healthcare, and manufacturing, each using a different website: == Awards == Industry Dive publications have received several national and regional Awards of Excellence from the American Society of Business Publication Editors, including for a series of 2020 articles about Big Pharma and the race for the coronavirus vaccine. The Washington Post recognized Industry Dive as a top place to work for four consecutive years, from 2016 to 2020.

    Read more →
  • Photoanalysis

    Photoanalysis

    Photoanalysis (or photo analysis) refers to the study of pictures to compile various types of data, for example, to measure the size distribution of virtually anything that can be captured by photo. Photoanalysis technology has changed the way mines and mills quantify fragmented material. Images are an effective way to document conditions before, after, and even during blasting activities. The technology is advancing at a high rate, and lenses, storage media memory, light sensitivity and resolution have been improving steadily. Today's digital cameras and camcorders include high-resolution optics, compact size, automatic time and date stamps, good battery life, shutters to freeze motion, and computers to autofocus and eliminate jitter using image stabilization. == Mining == Photoanalysis in mining operations can provide an automated system that forewarns a company of potential problems with materials, leading to economies and reduced damage caused from over-sized materials. It can also help determine the effectiveness of blasts. A company can use this technology to monitor materials moving on a conveyor belt in an underground environment, to measure piles left over from a blast, and even measure the amount of material being carried by dump trucks or vessels to a destination. Photoanalysis is being used on SAG mills worldwide to control the size of rock being crushed. Companies are using this technology to determine the size of particles being processed in the SAG Mill.[1] Archived 2009-05-23 at the Wayback Machine Having oversize material entering the SAG mill makes an operation less efficient, costing companies money in electrical and maintenance costs. Photoanalysis technology can eliminate unwanted material before it enters the mill, keeping rock crushing costs low. == Forestry == Wood chip size can affect the overall quality of a product. With automated photoanalysis systems, companies can remove any unwanted wrong-size particles without stopping their mill process. Photoanalysis can affect how efficiently forestry companies operate. In mills worldwide, photoanalysis technology is improving the use of lumber products, cutting back on the amount of trees being used to operate, and saving companies money through quality control optimization.[2] With the current downturn in the North American forestry industry, operators are looking at making their mills more efficient and effective when processing materials. Photoanalysis technology helps identify any weaknesses in the process by continuously monitoring different sections of an operation. == Agriculture == Agricultural companies can, using photoanalysis, monitor conveyor belts of food without contaminating the product by touching it. Other benefits of photoanalysis systems include: Automated removal of any unwanted material on food conveyor Improved quality control for the most important parts of the agricultural process Pinpoint accuracy that helps the efficiency and effectiveness of product handling techniques The importance of photoanalysis technology is being noticed by the agricultural industry as it identifies any unwanted materials going through the process. In an example, if a mouse is on a conveyor of corn, photoanalysis technology would be able to identify the unwanted object and remove it before it contaminates the whole process. == Origins of photoanalysis technology == Photoanalysis technology was created by using the Waterloo Image Enhancement Process in the 1980s. After further development of the imaging process with explosives producer DuPont, engineers Tom Palangio and Takis Katsabanis began selling photoanalysis software commercially. They later renamed the process WipFrag, standing for Waterloo Image Process Fragmentation Today, photoanalysis technology has evolved into stabilized and portable systems that can automatically capture and analyze results instantly. Thousands of these products are currently being used around the world to measure fragmented material. == Photoanalysis equipment photos == == Fragmentation analysis == Fragmentation analysis is becoming a popular term in mining, agricultural and forestry industries. With the majority of money in these industries directed towards the proper sizing of materials, companies are using fragmentation analysis to determine various factors within an operation.[3] The two main ways a company keeps track of fragmented material are through manual and automated sieving procedures. Manual sieving involves extracting a sample of material to analyze the size distribution. The results can be tabulated within two days. Automated sieving is an advanced way of sieving materials running through a process. Without having to extract the material, photoanalysis can take place, allowing for immediate results with pinpoint accuracy. == Blast Fragmentation Software == Operators are using fragmentation analysis to determine the effectiveness of various blasts. With automated sieving technology, workers can track the success of these blasts and receive instant results. Companies are using these results to determine what blasting method yielded the best results for their specific operation. The common variables associated with blast optimization are the provided Particle Size Distribution (PSD) from a shovel fragmentation system, geology including rock type and fracturing, and energy factor. By using photoanalysis the fragmented materials can be monitored, offering pinpoint accuracy and allowing mine operators to make adjustments to future blasting procedures. See Optical Granulometry to view the automated sieving process. == Pre-crushing analysis == Maintenance costs can be significantly reduced if an operation focuses on the fragmentation of the particles passing through their process. Automated sieving systems can detect and help remove any oversize material before it enters the crusher and causes maintenance problems. It also helps determine the effectiveness of the mining process prior to crushing; the sizing of material is always a critical part of operations in the mining, forestry and agricultural industries. Having an analysis taking place at every major point in an operation allows for the proper tracking of material being processed. Engineers can then determine what part of the process needs improving based solely on the size of material. == Post-crushing analysis == Measuring how effective industrial crushers are, can help save a company millions of dollars in energy costs on an annual basis. There are two components that affect a typical crusher: the size of the material inputted, and the speed at which the crusher is moving. If the user can find a perfect balance between these two components, the materials will be crushed to the right size in the shortest time possible. Meeting the material standards set by governments and large companies can be hard. Having a post-crushing analysis taking place ensures that no oversize material gets shipped; eliminating the chance of getting fined for not meeting industry specifications.

    Read more →
  • WebGL

    WebGL

    WebGL (short for Web Graphics Library) is a JavaScript API for rendering interactive 2D and 3D graphics within any compatible web browser without the use of plug-ins. WebGL is fully integrated with other web standards, allowing GPU-accelerated usage of physics, image processing, and effects in the HTML canvas. WebGL elements can be mixed with other HTML elements and composited with other parts of the page or page background. WebGL programs consist of control code written in JavaScript, and shader code written in OpenGL ES Shading Language (GLSL ES, sometimes referred to as ESSL), a language similar to C or C++. WebGL code is executed on a computer's GPU. WebGL is designed and maintained by the non-profit Khronos Group. On February 9, 2022, Khronos Group announced WebGL 2.0 support from all major browsers. From 2024, a new graphics API, WebGPU, is being developed to supersede WebGL. WebGPU provides extended capabilities, a more modern interface, and direct GPU access, which is useful for demanding graphics as well as AI applications. == Design == WebGL 1.0 is based on OpenGL ES 2.0 and provides an API for 3D graphics. It uses the HTML5 canvas element and is accessed using Document Object Model (DOM) interfaces. WebGL 2.0 is based on OpenGL ES 3.0. It guarantees the availability of many optional extensions of WebGL 1.0, and exposes new APIs. Automatic memory management is provided implicitly by JavaScript. Like OpenGL ES 2.0, WebGL lacks the fixed-function APIs introduced in OpenGL 1.0 and deprecated in OpenGL 3.0. This functionality, if required, has to be implemented by the developer using shader code and JavaScript. Shaders in WebGL are written in GLSL and passed to the WebGL API as text strings. The WebGL implementation compiles these strings to GPU code. This code is executed for each vertex sent through the API and for each pixel rasterized to the screen. == History == WebGL evolved out of the Canvas 3D experiments started by Vladimir Vukićević at Mozilla. Vukićević first demonstrated a Canvas 3D prototype in 2006. By the end of 2007, both Mozilla and Opera had made their own separate implementations. In early 2009, the non-profit technology consortium Khronos Group started the WebGL Working Group, with initial participation from Apple, Google, Mozilla, Opera, and others. Version 1.0 of the WebGL specification was released March 2011. An early application of WebGL was Zygote Body. In November 2012 Autodesk announced that they ported most of their applications to the cloud running on local WebGL clients. These applications included Autodesk Fusion and AutoCAD. Development of the WebGL 2 specification started in 2013 and finished in January 2017. The specification is based on OpenGL ES 3.0. First implementations are in Firefox 51, Chrome 56 and Opera 43. == Implementations == === Almost Native Graphics Layer Engine === Almost Native Graphics Layer Engine (ANGLE) is an open source graphic engine which implements WebGL 1.0 (2.0 which closely conforms to ES 3.0) and OpenGL ES 2.0 and 3.0 standards. It is a default backend for both Google Chrome and Mozilla Firefox on Windows platforms and works by translating WebGL and OpenGL calls to available platform-specific APIs. ANGLE currently provides access to OpenGL ES 2.0 and 3.0 to desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11 APIs. ″[Google] Chrome uses ANGLE for all graphics rendering on Windows, including the accelerated Canvas2D implementation and the Native Client sandbox environment.″ == Software == WebGL is widely supported by modern browsers. However, its availability depends on other factors, too, like whether the GPU supports it. The official WebGL website offers a simple test page. More detailed information (like what renderer the browser uses, and what extensions are available) can be found at third-party websites. === Desktop browsers === Source: Google Chrome – WebGL 1.0 has been enabled on all platforms that have a capable graphics card with updated drivers since version 9, released in February 2011. By default on Windows, Chrome uses the ANGLE (Almost Native Graphics Layer Engine) renderer to translate OpenGL ES to Direct X 9.0c or 11.0, which have better driver support. However, on Linux and Mac OS X, the default renderer is OpenGL. It is also possible to force OpenGL as the renderer on Windows. Since September 2013, Chrome also has a newer Direct3D 11 renderer, which requires a newer graphics card. Chrome 56+ supports WebGL 2.0. Firefox – WebGL 1.0 has been enabled on all platforms that have a capable graphics card with updated drivers since version 4.0. Since 2013 Firefox also uses DirectX on the Windows platform via ANGLE. Firefox 51+ supports WebGL 2.0. Safari – Safari 6.0 and newer versions installed on OS X Mountain Lion, Mac OS X Lion and Safari 5.1 on Mac OS X Snow Leopard implemented support for WebGL 1.0, which was disabled by default before Safari 8.0. Safari version 12 (available in MacOS Mojave) has available support for WebGL 2.0 as an "Experimental" feature. Safari 15 enables WebGL 2.0 for all users. Opera – WebGL 1.0 has been implemented in Opera 11 and 12, but was disabled by default in 2014. Opera 43+ supports WebGL 2.0. Internet Explorer – WebGL 1.0 is partially supported in Internet Explorer 11. Internet Explorer initially failed most of the official WebGL conformance tests, but Microsoft later released several updates. The latest 0.94 WebGL engine currently passes ≈97% of Khronos tests. WebGL support can also be manually added to earlier versions of Internet Explorer using third-party plugins such as IEWebGL. Microsoft Edge – For Microsoft Edge Legacy, the initial stable release supports WebGL version 0.95 (context name: "experimental-webgl") with an open source GLSL to HLSL transpiler. Version 10240+ supports WebGL 1.0 as prefixed. Latest Chromium-based Edge supports WebGL 2.0. === Mobile browsers === Google Chrome – WebGL 1.0 is supported on Android as of Chrome 25. WebGL 2.0 is supported on Android as of Chrome 58. Chrome is used for the Android system webview as of Android 5. Firefox for mobile – WebGL 1.0 is available for Android devices since Firefox 4. Safari on iOS – WebGL 1.0 is available for mobile Safari in iOS 8. WebGL 2.0 is available for mobile Safari in iOS 15. Microsoft Edge – Prefixed WebGL 1.0 was available on Windows 10 Mobile.. Latest Chromium-based Edge supports WebGL 2.0. Opera Mobile – Opera Mobile 12 supports WebGL 1.0 (on Android only). Sailfish OS – WebGL 1.0 is supported in the default Sailfish browser. Tizen – WebGL 1.0 is supported == Tools and ecosystem == === Utilities === The low-level nature of the WebGL API, which provides little on its own to quickly create desirable 3D graphics, motivated the creation of higher-level libraries that abstract common operations (e.g. loading scene graphs and 3D objects in certain formats; applying linear transformations to shaders or view frustums). Some such libraries were ported to JavaScript from other languages. Examples of libraries that provide high-level features include A-Frame (VR), BabylonJS, PlayCanvas, three.js, OSG.JS, Google’s model-viewer and CopperLicht. Web3D also made a project called X3DOM to make X3D and VRML content run on WebGL. === Games === There has been an emergence of 2D and 3D game engines for WebGL, such as Unreal Engine 4 and Unity. The Stage3D/Flash-based Away3D high-level library also has a port to WebGL via TypeScript. A more light-weight utility library that provides just the vector and matrix math utilities for shaders is sylvester.js. It is sometimes used in conjunction with a WebGL specific extension called glUtils.js. There are also some 2D libraries built atop WebGL, like Cocos2d-x or Pixi.js, which were implemented this way for performance reasons in a move that parallels what happened with the Starling Framework over Stage3D in the Flash world. The WebGL-based 2D libraries fall back to HTML5 canvas when WebGL is not available. Removing the rendering bottleneck by giving almost direct access to the GPU has exposed performance limitations in the JavaScript implementations. Some were addressed by asm.js and WebAssembly (similarly, the introduction of Stage3D exposed performance problems within ActionScript, which were addressed by projects like CrossBridge). === Content creation === As with any other graphics API, creating content for WebGL scenes requires using a 3D content creation tool and exporting the scene to a format that is readable by the viewer or helper library. Desktop 3D authoring software such as Blender, Autodesk Maya or SimLab Composer can be used for this purpose. In particular, Blend4Web allows a WebGL scene to be authored entirely in Blender and exported to a browser with a single click, even as a standalone web page. There are also some WebGL-specific software such as CopperCube and the online WebGL-based editor Clara.io. Online platforms such as Sketchfab and Clara.io allow users to directly upload their 3D models

    Read more →
  • Social media age verification laws in the United States

    Social media age verification laws in the United States

    In the United States, age verification laws for social media are ostensibly designed to limit young people's access to content deemed problematic such as pornography and to reduce the negative impact of social media on the mental health and well-being of children and adolescents. The purpose and effects of such laws are highly contested. Critics say that these laws suppress free speech by removing online anonymity. They have also stated the laws undermine safety, even for children, by increasing the exposure of user data to breaches, many sites require government IDs and biometric data (such as photographs), often transmitted or secured insecurely and without encryption. They also note that the measures are easily circumvented with VPNs, prompting some states such as Michigan and Wisconsin to propose legislation banning VPNs. == Laws == Many state legislatures have considered or enacted legislation pertaining to young people and social media. In 2022, California passed the California Age-Appropriate Design Code Act (AB 2273) requiring websites that are likely to be used by minors to estimate visitors' ages. On March 23, 2023, Utah Governor Spencer Cox signed SB 152 and HB 311, collectively known as the Utah Social Media Regulation Act, which requires age verification; if a user is under 18, they have to get parental consent before making an account on any social media platform. Few laws have gone into effect partially due to court challenges. === Arkansas === On April 11, 2023, Arkansas enacted SB 396, the Social Media Safety Act. The law requires certain social media companies that make over $100 million per year to verify the age of new users using a third party, and to obtain parental consent for users under 18. It excludes social media companies that allow a user to generate short video clips as well as games. The law was set to go in effect in September 2023. On June 29, 2023, NetChoice sued the Attorney General of Arkansas Tim Griffin in The Western District Court of Arkansas to block enforcement of the law, supported by the American Civil Liberties Union and the Electronic Frontier Foundation (EFF). On July 7, 2023, NetChoice filed a motion for a preliminary injunction to block enforcement of the law. On July 27, Griffin and Tony Allen filed briefs in opposition to the preliminary injunction. The preliminary injunction was granted by Judge Timothy L. Brooks on August 31, reasoning that the law was too vague, that NetChoice's members will suffer irreparable harm if the act goes into effect, and that age restrictions were ineffective. === California === ==== Digital Age Assurance Act (AB 1043) ==== On October 13, 2025, Gavin Newsom signed the Digital Age Assurance Act into law, which requires operating system providers to estimate the age of a user and into 4 age categories: Under 13 13 - 15 16 - 17 18 and over It comes into force on January 1, 2027. ==== California Age-Appropriate Design Code (AB 2273) ==== On September 15, 2022, California enacted AB 2273, the California Age-Appropriate Design Code Act. Its most controversial provisions required online services that are likely to be used by those under 18 to estimate the age of child users with a "reasonable level of certainty". It also required these services to file Data Protection Impact Assessments (DPIAs) certifying whether an online product, service, or feature could harm children, including by exposing them to (potentially) harmful content. The law does not define harmful content. Before the law took effect, EFF sent a veto request to Newsom. On December 14, 2022, NetChoice sued. On September 18, 2023, Federal Judge Beth Labson Freeman granted a preliminary injunction. The 9th Circuit on August 16, 2024, affirmed the injunction against the DPIA section of the law and sent the rest back, because the argument in the 9th circuit was mainly focused on the DPIA. ==== Protecting Our Kids from Social Media Addiction Act (SB 976) ==== On September 20, 2024, California enacted SB 976, Protecting Our Kids from Social Media Addiction. The law requires online platforms to exclude those under 18 from "addictive" feeds unless parental consent is given. It requires online platforms to not send notifications to someone under 18 between 12:00 AM and 6:00 AM without parental consent or between 8:00 am – 3:00 pm without parental consent from September through May (the law does not define what a "notification" is). The law took effect on January 1, 2025, with age verification required as of December 31, 2026. On November 12, NetChoice sued in the Northern District and before Judge Edward John Davila. On December 31, the judge blocked the sections of SB 976 that required time-of-day restrictions. He also enjoined requirements to report on the number of minor users as well as the number of parental assents to access an addictive feed. He did not block the age assurance requirement or blocking minors from seeing addictive feeds without parental consent. His reasoning was that age assurance that runs in the background does not restrict adult access to speech and that regulating feeds does not violate the first amendment because it was content neutral and did not remove any content. On January 1, 2025, NetChoice filed a motion to fully block the law as part of its appeal to the Ninth Circuit. NetChoice claimed that the court erred in its reading of Supreme Court case Moody v. NetChoice by mainly focusing on the concurring opinions and not the deciding opinion. The same day Davila decreed that California's response to NetChoice was due by 11:59 pm. California responded the same day to NetChoice's motion, claiming that the court should not block the full law, claiming that NetChoice had misread Moody v. NetChoice and that NetChoice's members would not likely face any harm from the act because members such as X (formerly Twitter) already offer their members feeds that were not personalized. On January 2, Davila granted NetChoice's motion to block the full law during the appeals process by delaying the effective date of the law from January 1, 2025, to February 1, 2025. That day NetChoice appealed the case to the Ninth Circuit Court of Appeals. === Florida === On January 5, 2024, Tyler Sirois introduced HB 1, which would ban anyone under 16 from using any social media platform and would require platforms to verify the age of users. After the bill passed, the American Civil Liberties Union (ACLU) published a blog post opposing the bill for violating the rights of minors and adults. The bill was vetoed by Governor Ron DeSantis on March 1, 2024, claiming that the State Legislature was going to enact a better alternative. HB 3 then decreased the minimum age from 16 to 14, allowing minors aged 14 and 15 to make social media accounts with parental consent. Florida enacted it on March 25, 2024, and took effect on January 1, 2025. A surge of 1,150% in VPN demand in Florida was detected after the law took effect. VPN services provide the ability to circumvent the law. On October 28, 2024, NetChoice and Computer and Communications Industry Association sued. The Judge is Chief Judge Mark E. Walker. On February 28, 2025, arguments were heard on the motion for a preliminary injunction. Walker seemed skeptical of Florida's argument that the law did not violate the first amendment and said the State would have a hard time to justify a complete ban of youth under 14 from social media. On March 13, Walker denied the motion for a preliminary injunction because the plaintiffs had not proven that at least one of their members had at least 10 percent of their users under 16 use their platform for at least 2 hours per day. Plaintiffs filed an amended complaint and a renewed motion for a preliminary injunction which was granted on June 3, for failing First Amendment Intermediate scrutiny. The injunction left in force the provision that allowed parents to request termination of their child's social media account. === Georgia === On April 23, 2024, Georgia enacted SB 351, which became Act 463. Act 463 requires platforms to verify the age of users of social media platforms and require users under 16 years of age to have parental consent before creating an account. It also requires schools to ban all social media platforms, including YouTube. Before the law was signed NetChoice sent a veto request to Kemp claiming the law was unconstitutional and was bad policy. After the bill was enacted, ACLU and NetChoice criticized the bill. NetChoice sued two months before the law's effective date. The Judge is Amy Totenberg. the suit claims that the law violates the First Amendment and Fourteenth Amendments. === Louisiana === ==== Secure Online Child Interaction and Age Limitation Act (SB 162) ==== On June 28, 2023, Louisiana enacted SB 162, the Secure Online Child Interaction and Age Limitation Act. It requires social media platforms to verify user age and get parental consent for users under 16, prohibits account holders under 1

    Read more →
  • Open Sound Control

    Open Sound Control

    Open Sound Control (OSC) is a protocol for networking sound synthesizers, computers, and other multimedia devices for purposes such as musical performance or show control. OSC's advantages include interoperability, accuracy, flexibility and enhanced organization and documentation. Its disadvantages include higher bandwidth requirements, increased load on embedded processors, and lack of standardized messages/interoperability. The first specification was released in March 2002. == Motivation == OSC is a content format developed at CNMAT by Adrian Freed and Matt Wright comparable to XML, WDDX, or JSON. It was originally intended for sharing music performance data (gestures, parameters and note sequences) between musical instruments (especially electronic musical instruments such as synthesizers), computers, and other multimedia devices. OSC is sometimes used as an alternative to the 1983 MIDI standard, when higher resolution and a richer parameter space is desired. OSC messages are transported across the internet and within local subnets using UDP/IP and Ethernet. OSC messages between gestural controllers are usually transmitted over serial endpoints of USB wrapped in the SLIP protocol. == Features == OSC's main features, compared to MIDI, include: Open-ended, dynamic, URI-style symbolic naming scheme Symbolic and high-resolution numeric data Pattern matching language to specify multiple recipients of a single message High resolution time tags "Bundles" of messages whose effects must occur simultaneously == Applications == There are dozens of OSC applications, including real-time sound and media processing environments, web interactivity tools, software synthesizers, programming languages and hardware devices. OSC has achieved wide use in fields including musical expression, robotics, video performance interfaces, distributed music systems and inter-process communication. The TUIO community standard for tangible interfaces such as multitouch is built on top of OSC. Similarly the GDIF system for representing gestures integrates OSC. OSC is used extensively in experimental musical controllers, and has been built into several open source and commercial products. The Open Sound World (OSW) music programming language is designed around OSC messaging. OSC is the heart of the DSSI plugin API, an evolution of the LADSPA API, in order to make the eventual GUI interact with the core of the plugin via messaging the plugin host. LADSPA and DSSI are APIs dedicated to audio effects and synthesizers. In 2007, a standardized namespace within OSC called SYN, for communication between controllers, synthesizers and hosts, was proposed. == Design == OSC messages consist of an address pattern (such as /oscillator/4/frequency), a type tag string (such as ,fi for a float32 argument followed by an int32 argument), and the arguments themselves (which may include a time tag). Address patterns form a hierarchical name space, reminiscent of a Unix filesystem path, or a URL, and refer to "Methods" inside the server, which are invoked with the attached arguments. Type tag strings are a compact string representation of the argument types. Arguments are represented in binary form with four-byte alignment. The core types supported are 32-bit two's complement signed integers 32-bit IEEE floating point numbers Null-terminated arrays of eight-bit encoded data (C-style strings) arbitrary sized blob (e.g. audio data, or a video frame) An example message is included in the spec (with null padding bytes represented by ␀): /oscillator/4/frequency␀,f␀␀, Followed by the 4-byte float32 representation of 440.0: 0x43dc0000. Messages may be combined into bundles, which themselves may be combined into bundles, etc. Each bundle contains a timestamp, which determines whether the server should respond immediately or at some point in the future. Applications commonly employ extensions to this core set. More recently some of these extensions such as a compact Boolean type were integrated into the required core types of OSC 1.1. The advantages of OSC over MIDI are primarily internet connectivity; data type resolution; and the comparative ease of specifying a symbolic path, as opposed to specifying all connections as seven-bit numbers with seven-bit or fourteen-bit data types. This human-readability has the disadvantage of being inefficient to transmit and more difficult to parse by embedded firmware, however. The spec does not define any particular OSC Methods or OSC Containers. All messages are implementation-defined and vary from server to server.

    Read more →
  • FloodAlerts

    FloodAlerts

    FloodAlerts is a software application, developed by software specialists Shoothill, which takes real-time flooding information, and displays the data on an interactive Bing map, updating and warning its users when they, their premises or the routes they need to travel could be at risk of flooding. == History == FloodAlerts was launched in 2012, originally as the world's first Facebook flood warning app. == Operation == FloodAlerts is made available free of charge to individuals. Users are able to set up their own monitored locations and receive alerts via the application or their Facebook wall if the locations they are monitoring are at imminent risk of flooding. Hosted in the Cloud, using the Microsoft Windows Azure platform, the FloodAlerts application processes the data received from the Environment Agency, automatically creates the required map tiles, pins and alerts and displays them on an interactive Bing map, updating the content every 15 minutes. Users are able to see the latest information on the map without having to refresh their browser. FloodAlerts can also be provided as a customised risk management solution to businesses that require infrastructure or asset safety monitoring in areas where water levels are rising or receding. == Awards and recognition == FloodAlerts has received The Guardian and Virgin Media Business's 2012 Innovation Nation Awards and was shortlisted as a finalist for a further two national awards: the UK IT Industry Awards for Innovation and Entrepreneurship and The Institution of Engineering and Technology Innovation Awards for Information Technology. == In the press == The FloodAlerts application was reviewed on the BBC website. It was also reviewed on BBC Click.

    Read more →
  • Vacuum tube characteristics

    Vacuum tube characteristics

    Vacuum tube characteristics (also called tube curves, valve characteristics or valve curves) describes the electrical relationships between electrode voltages and currents in a vacuum tube. These relationships are commonly presented as characteristic curves in tube manuals and engineering references. The curves typically show plate current versus plate voltage for several fixed control-grid voltages, showing how current varies with electrode potentials under controlled conditions. Designers use them to select operating points, determine voltage gain, estimate output power, and construct graphical load-line analyses. The use of characteristic curves as an engineering tool for analyzing vacuum-tube operation was established in the 1910s, notably in work by Edwin Howard Armstrong. Examples of such curves appear in early tube manuals and textbooks and form the basis of classical vacuum-tube circuit design. Different types of vacuum tubes are characterized using plots appropriate to their electrode structure and intended use. Two-electrode devices such as diodes are described primarily by the relation between plate voltage and plate current. Amplifying tubes containing control grids, such as triodes, tetrodes, pentodes, and beam tetrodes, are represented by families of curves measured for different grid voltages. From these families additional parameters such as amplification factor (μ), transconductance (gm), and plate resistance (rp) may be obtained. Although these plots are used primarily for circuit design, their shapes arise from the underlying physics of electron flow in vacuum tubes. The physical principles responsible for the observed characteristics are discussed in later sections. == 3/2 power law == In high-vacuum thermionic diodes operating under normal conditions, plate current increases nonlinearly with plate voltage. Over the space-charge-limited region, the current is well approximated by the three-halves power relation I p = P ⋅ V p 3 / 2 {\displaystyle I_{p}=P\cdot V_{p}^{3/2}} where P {\displaystyle P} is the perveance of the tube. Perveance is determined primarily by electrode geometry, including cathode area and cathode-to-plate spacing. It provides a practical measure of current-producing capability and is often used in tube manuals in place of a complete family of plate-characteristic curves. == Signal diode characterization == For small-signal diodes, tube manuals typically publish a single static anode characteristic showing anode current (Ia) as a function of anode voltage (Va), measured with the heater operating at its rated voltage. Because the diode contains no control grid, only one such I–V curve is required. The low-voltage portion of the curve is particularly important in detector service, where the nonlinear curvature of the current–voltage relation allows a small alternating signal to produce a net direct-current output, resulting in rectification. In addition to the static characteristic, tube manuals specify heater ratings, maximum plate voltage, permissible average current, and interelectrode capacitance. These parameters define the allowable operating region and high-frequency behavior. Another typical data sheet for a diode is for the Philips EB91 double diode. This book includes curves of the diode response in use as a detector. The output voltage is non-zero for an input voltage of 0 due to the Edison effect. == Rectifier characterization == Vacuum-tube rectifiers intended for power-supply service are specified differently from signal diodes. Their data emphasize heater requirements, peak inverse voltage, maximum peak plate current, permissible DC output current for various filter configurations, and regulation characteristics. Rectifier tubes exhibit nonlinear voltage drop that increases with current. For limited operating ranges this behavior may be represented by an equivalent or effective series resistance corresponding to the local slope of the plate characteristic (dynamic plate resistance, dV/dI). Diode voltages can be determied by use of a graphical aide. In capacitor-input supplies, conduction occurs in pulses near the peaks of the AC waveform, producing peak currents substantially greater than the average DC load current. Data sheets therefore specify maximum peak plate current and permissible filter capacitance in addition to average DC ratings. Under varying load conditions, the supply voltage changes in accordance with the rectifier's nonlinear characteristic and effective impedance. == Triode characterization == === Early use === The systematic use of characteristic curves to explain and quantify vacuum-tube amplification was introduced by Edwin Howard Armstrong in 1914. Using measured plate voltage-current curves, Armstrong demonstrated the mechanism of triode amplification and clarified the operation of grid-leak detection. ==== Plate and transfer characteristics ==== Triode data sheets present families of plate characteristics showing plate current I p {\displaystyle I_{p}} as a function of plate voltage E p {\displaystyle E_{p}} for several fixed grid voltages E g {\displaystyle E_{g}} . From these curves the operating point, voltage gain, and load-line behavior may be determined graphically. In normal operation, plate current depends on both grid and plate voltage. Classical analysis shows that the characteristics for different grid voltages are similar in form and differ primarily by horizontal displacement. In triodes, plate current may be approximated by I p = k ( E g + E p μ ) 3 / 2 {\displaystyle I_{p}=k\left(E_{g}+{\frac {E_{p}}{\mu }}\right)^{3/2}} where E g {\displaystyle E_{g}} is the grid voltage, E p {\displaystyle E_{p}} the plate voltage, μ {\displaystyle \mu } the amplification factor, and k {\displaystyle k} a constant determined by the tube geometry.. The amplification factor μ represents the relative effectiveness of grid voltage compared with plate voltage in controlling current. It is fundamentally determined by structural dimensions, particularly grid-to-cathode spacing relative to plate-to-cathode spacing. ==== Small-signal parameters ==== Triodes are commonly characterized by three interrelated small-signal parameters: Amplification factor ( μ {\displaystyle \mu } ) — the change in plate voltage divided by the change in grid voltage at constant plate current: μ = ( ∂ E p ∂ E g ) I p {\displaystyle \mu =\left({\frac {\partial E_{p}}{\partial E_{g}}}\right)_{I_{p}}} Transconductance ( g m {\displaystyle g_{m}} ) — the change in plate current divided by the change in grid voltage at constant plate voltage: g m = ( ∂ I p ∂ E g ) E p {\displaystyle g_{m}=\left({\frac {\partial I_{p}}{\partial E_{g}}}\right)_{E_{p}}} Plate resistance ( r p {\displaystyle r_{p}} ) — the change in plate voltage divided by the change in plate current at constant grid voltage: r p = ( ∂ E p ∂ I p ) E g {\displaystyle r_{p}=\left({\frac {\partial E_{p}}{\partial I_{p}}}\right)_{E_{g}}} These parameters are related by μ = g m r p {\displaystyle \mu =g_{m}r_{p}} as shown in classical tube theory treatments. These parameters are obtained either from slopes of the characteristic curves or from tabulated operating-point data. ==== Comparison of ECC81, ECC82, and ECC83 ==== The ECC81, ECC82, and ECC83 (also known respectively as 12AT7, 12AU7, and 12AX7) are closely related dual triodes widely used in small-signal amplifier stages. Although similar in construction and envelope size, they differ significantly in electrical parameters due to differences in electrode spacing and grid structure. (Data representative of manufacturer specifications.) The ECC83 exhibits high μ {\displaystyle \mu } and high plate resistance, producing large voltage gain but relatively low current drive capability. The ECC82 has lower μ {\displaystyle \mu } and lower plate resistance, allowing greater current delivery and reduced voltage gain. The ECC81 occupies an intermediate position with comparatively high transconductance and moderate amplification factor. These differences arise primarily from variations in grid pitch, cathode area, and electrode spacing, which determine perveance and amplification factor. Although the external envelope is similar, the internal geometry governs the characteristic curves and small-signal parameters. == Tetrode (screen-grid) characterization == The screen-grid tube (tetrode) was developed primarily to reduce the electrostatic coupling between plate and control grid that limited gain and stability in radio-frequency triode amplifiers. In triodes, the grid–plate capacitance provides feedback from plate to grid, restricting obtainable gain and often requiring neutralization circuits such as those used in neutrodyne receivers. By inserting a positively biased screen grid between control grid and plate, this capacitive coupling is greatly reduced, permitting higher stable gain at radio frequencies. The screen grid, also known as the shield grid or grid 2 (to distinguish it from t

    Read more →
  • Common-mode signal

    Common-mode signal

    In electrical engineering, a common-mode signal is the identical component of voltage present at both input terminals of an electrical device. In telecommunication, the common-mode signal on a transmission line is also known as longitudinal voltage. Common-mode interference (CMI) is a type of common-mode signal. Common-mode interference is interference that appears on both signal leads, or coherent interference that affects two or more elements of a network. In most electrical circuits, desired signals are transferred by a differential voltage between two conductors. If the voltages on these conductors are U1 and U2, the common-mode signal is the average of the voltages: U cm = U 1 + U 2 2 {\displaystyle U_{\text{cm}}={\frac {U_{1}+U_{2}}{2}}} When referenced to the local common or ground, a common-mode signal appears on both lines of a two-wire cable, in phase and with equal amplitudes. Technically, a common-mode voltage is one-half the vector sum of the voltages from each conductor of a balanced circuit to local ground or common. Such signals can arise from one or more of the following sources: Radiated signals coupled equally to both lines, An offset from signal common created in the driver circuit, or A ground differential between the transmitting and receiving locations. Noise induced into a cable, or transmitted from a cable, usually occurs in the common mode, as the same signal tends to be picked up by both conductors in a two-wire cable. Likewise, RF noise transmitted from a cable tends to emanate from both conductors. Elimination of common-mode signals on cables entering or leaving electronic equipment is important to ensure electromagnetic compatibility. Unless the intention is to transmit or receive radio signals, an electronic designer generally designs electronic circuits to minimise or eliminate common-mode effects. == Methods of eliminating common-mode signals == Differential amplifiers or receivers that respond only to voltage differences, e.g. those between the wires that constitute a pair. This method is particularly suited for instrumentation where signals are transmitted through DC bias. For sensors with very high output impedance that require very high common-mode rejection ratio, a differential amplifier is combined with input buffers to form an instrumentation amplifier. An inductor where a pair of signaling wires follow the same path through the inductor, e.g. in a bifilar winding configuration such as used in Ethernet magnetics. Useful for AC and DC signals, but will filter only higher frequency common-mode signals. A transformer, which is useful for AC signals only, and will filter any form of common-mode noise, but may be used in combination with a bifilar wound coil to eliminate capacitive coupling of higher frequency common-mode signals across the transformer. Used in twisted pair Ethernet. Common-mode filtering may also be used to prevent egress of noise for electromagnetic compatibility purposes: High frequency common-mode signals (e.g., RF noise from a computing circuit) may be blocked using a ferrite bead clamped to the outside of a cable. These are often observable on laptop computer power supplies near the jack socket, and good quality mouse or printer USB cables and HDMI cables. Switch mode power supplies include common and differential mode filtering inductors to block the switching signal noise returning into mains wiring. Common-mode rejection ratio is a measure of how well a circuit eliminates common-mode interference.

    Read more →