An overview of creating accessible user interface architectures. Covers the role of architecture in development, the limitations of traditional Object Oriented and MVC paradigms, and an overview of how assistive technologies work. Presented as a guest lecture in University of Toronto Faculty of Information's INF 2187H: Introduction to Inclusive Design course.
The document discusses digital architecture, which uses computer modeling, programming, and simulation to create virtual forms and physical structures. Key software used includes Rhino and Google SketchUp. Digital architecture allows complex calculations and a diverse range of complex forms to be created. Zaha Hadid was a pioneering digital architect known for her fluid, topographic designs like the Heydar Aliyev Cultural Centre in Baku and the BMW Central Building in Germany.
This document discusses evocative architecture and provides examples of architects who designed buildings to evoke emotions. It outlines the topic, aim to understand how architecture evokes emotions, and methodology of studying masterpieces and a live building example. Examples discussed include minimalist Tadao Ando's Church of Light, Santiago Calatrava's complex structures in Valencia, Zaha Hadid's fluid designs, and Frank Gehry's Guggenheim Museum. A local J.D. College of Engineering is analyzed, finding it evokes pleasant and homely feelings by drawing on local context and nature. In conclusion, architects use shapes, dimensions and other elements to communicate ideas and arouse emotions through their designs.
The seminar document provides information on tensile architecture. It discusses how tensile structures carry only tension and use double curvature for strength and stability. Key concepts covered include the history of tensile structures from tents to modern designs by Frei Otto, common materials like tensile fabrics and cables, and basic forms like hypars and conics. Benefits are highlighted such as dynamic shapes, solar control, and use for temporary installations. The document also outlines design, engineering, manufacturing, and installation processes.
The document discusses architectural design processes and methodologies. It explains that architectural design often involves teamwork. It outlines key steps in the design process including assembling a team, clear communication, budget and cost control, and staying on track. It then describes the development process from schematic design to construction in more detail.
This document provides information about a seminar on contemporary architecture presented by Palvi Kadam. It begins with background on how the Industrial Revolution and French Revolution led to changes in architecture. It then discusses various styles that emerged over time like Modernism and provides characteristics of contemporary architecture like asymmetrical plans, large windows, and green building materials. Specific projects are presented like the Ribbon Chapel in Japan, which uses a unique spiral design, and a farmhouse also in Japan that uses local soil and grass to blend with the natural environment.
Geoffrey Bawa was a Sri Lankan architect known for pioneering tropical modernism. Some of his most notable works included Lunuganga, a private residence and garden in Bentota; the A.S.H. de Silva House in Galle, featuring a central courtyard; and the Triton Hotel in Ahungalla, using open-air pavilions linked by covered walkways. Bawa designed buildings that respected the local environment, culture and climate, blending vernacular elements with modern concepts. He is renowned for works that flowed organically with their sites and had an introspective quality achieved through a play of indoor and outdoor spaces.
1) Intelligent building systems were introduced in the United States in the early 1980s as several major technology trends were underway including the emergence of personal computers and innovations in telecommunications.
2) A smart building involves the installation and use of advanced integrated building technology systems to provide actionable information about the building to allow owners and occupants to efficiently manage it.
3) Building automation systems are an example of distributed control systems that use sensors, controllers and networks to automatically control a building's mechanical, lighting and other systems to improve efficiency and occupant experience.
The document provides details about a large development project in Kuala Lumpur, Malaysia. It includes specifications like the total area being 7.59 acres with a building height of 310 meters. It lists the main contractor and various subcontractors responsible for mechanical, electrical, fire protection and other systems. It notes the north and south wings have 77 and 55 stories respectively, with lift lobbies, utilities and a helipad located in the core area. Food courts and sky gardens are placed every six floors.
The document discusses digital architecture, which uses computer modeling, programming, and simulation to create virtual forms and physical structures. Key software used includes Rhino and Google SketchUp. Digital architecture allows complex calculations and a diverse range of complex forms to be created. Zaha Hadid was a pioneering digital architect known for her fluid, topographic designs like the Heydar Aliyev Cultural Centre in Baku and the BMW Central Building in Germany.
This document discusses evocative architecture and provides examples of architects who designed buildings to evoke emotions. It outlines the topic, aim to understand how architecture evokes emotions, and methodology of studying masterpieces and a live building example. Examples discussed include minimalist Tadao Ando's Church of Light, Santiago Calatrava's complex structures in Valencia, Zaha Hadid's fluid designs, and Frank Gehry's Guggenheim Museum. A local J.D. College of Engineering is analyzed, finding it evokes pleasant and homely feelings by drawing on local context and nature. In conclusion, architects use shapes, dimensions and other elements to communicate ideas and arouse emotions through their designs.
The seminar document provides information on tensile architecture. It discusses how tensile structures carry only tension and use double curvature for strength and stability. Key concepts covered include the history of tensile structures from tents to modern designs by Frei Otto, common materials like tensile fabrics and cables, and basic forms like hypars and conics. Benefits are highlighted such as dynamic shapes, solar control, and use for temporary installations. The document also outlines design, engineering, manufacturing, and installation processes.
The document discusses architectural design processes and methodologies. It explains that architectural design often involves teamwork. It outlines key steps in the design process including assembling a team, clear communication, budget and cost control, and staying on track. It then describes the development process from schematic design to construction in more detail.
This document provides information about a seminar on contemporary architecture presented by Palvi Kadam. It begins with background on how the Industrial Revolution and French Revolution led to changes in architecture. It then discusses various styles that emerged over time like Modernism and provides characteristics of contemporary architecture like asymmetrical plans, large windows, and green building materials. Specific projects are presented like the Ribbon Chapel in Japan, which uses a unique spiral design, and a farmhouse also in Japan that uses local soil and grass to blend with the natural environment.
Geoffrey Bawa was a Sri Lankan architect known for pioneering tropical modernism. Some of his most notable works included Lunuganga, a private residence and garden in Bentota; the A.S.H. de Silva House in Galle, featuring a central courtyard; and the Triton Hotel in Ahungalla, using open-air pavilions linked by covered walkways. Bawa designed buildings that respected the local environment, culture and climate, blending vernacular elements with modern concepts. He is renowned for works that flowed organically with their sites and had an introspective quality achieved through a play of indoor and outdoor spaces.
1) Intelligent building systems were introduced in the United States in the early 1980s as several major technology trends were underway including the emergence of personal computers and innovations in telecommunications.
2) A smart building involves the installation and use of advanced integrated building technology systems to provide actionable information about the building to allow owners and occupants to efficiently manage it.
3) Building automation systems are an example of distributed control systems that use sensors, controllers and networks to automatically control a building's mechanical, lighting and other systems to improve efficiency and occupant experience.
The document provides details about a large development project in Kuala Lumpur, Malaysia. It includes specifications like the total area being 7.59 acres with a building height of 310 meters. It lists the main contractor and various subcontractors responsible for mechanical, electrical, fire protection and other systems. It notes the north and south wings have 77 and 55 stories respectively, with lift lobbies, utilities and a helipad located in the core area. Food courts and sky gardens are placed every six floors.
Hypermedia System Architecture for a Web of ThingsMichael Koster
This document summarizes a hypermedia architecture and demonstrator for a Web of Things. It describes a hypermedia system that uses resource collections with type semantics to implement the W3C Web of Things interaction model. Resources are constructed based on a domain schema and model. The architecture supports HATEOAS-driven discovery and interaction through state machines that couple the client and server applications. Common operations are abstracted into a common REST transaction layer to allow pluggable protocols.
software development practices like procedural coding are like training wheels, they help when we start development, but are detrimental later. This presentation lists few such practices and their alternatives
Stop Making The Web Harder Than It Is; Real-world REST, HATEOAS, and Hypermed...kiphampton
Developing for the Web shouldn't be hard. Yet, many smart developers make it more difficult than it needs to be by choosing tools and frameworks that do not fully take advantage of all that HTTP has to offer. This talk demonstrates how projects at all levels-- from the simplest brochureware site to the most advanced Hypermedia APIs--can be made simpler by getting back to the basics of HTTP. We introduce Tamarou's internal application development and publishing framework, Magpie (scheduled for public release to coincide with YAPC::NA) and step through a series of real-world examples to show how its resource-oriented approach to development keeps simple things simple and makes hard things easier.
Topics include:
* Why MVC is the wrong way to think about Web development.
* Why most frameworks that claim to be RESTful aren't (and how that makes life harder)
* An brief introduction to Resource-oriented development.
* A series of production-tested Magpie recipes covering the gamut of Web-dev from simple templated sites through advanced Hypermedia applications.
This document provides an overview of key concepts in web development including tools, version control, web servers, and application architecture. It discusses JavaScript and Node.js for programming, Git for version control, and the model-view-controller (MVC) pattern for application structure with models for data, views for display, and controllers for communication. HTTP is covered for browser-server interaction using requests and responses along standard methods and formats.
CakePHP is a free and open-source rapid application development (RAD) framework for PHP that provides a structured and rapid way for programmers to create web applications without loss of flexibility. It takes the monotony out of web development by providing features like an active community, flexible licensing, MVC architecture, code generation, and database integration through its model-view-controller structure. To use CakePHP, one would download the CakePHP package, extract it to their web server's directory, create the database and application models/controllers/views following CakePHP's conventions, and then access the application.
CakePHP is a free and open-source rapid application development (RAD) framework for PHP that provides a structured and rapid way for programmers to create web applications without loss of flexibility. It takes the monotony out of web development by providing features like an active community, flexible licensing, MVC architecture, code generation, and database integration through its model-view-controller structure. To use CakePHP, one would download the CakePHP package, extract it to their web server's directory, create the database and application models/controllers/views following CakePHP's conventions, and then access the application.
Building a Real-Time Security Application Using Log Data and Machine Learning...Sri Ambati
Building a Real-Time Security Application Using Log Data and Machine Learning- Karthik Aaravabhoomi
- Powered by the open source machine learning software H2O.ai. Contributors welcome at: https://github.com/h2oai
- To view videos on H2O open source machine learning software, go to: https://www.youtube.com/user/0xdata
Cloud-native Data: Every Microservice Needs a Cachecornelia davis
Presented at the Pivotal Toronto Users Group, March 2017
Cloud-native applications form the foundation for modern, cloud-scale digital solutions, and the patterns and practices for cloud-native at the app tier are becoming widely understood – statelessness, service discovery, circuit breakers and more. But little has changed in the data tier. Our modern apps are often connected to monolithic shared databases that have monolithic practices wrapped around them. As a result, the autonomy promised by moving to a microservices application architecture is compromised.
With lessons from the application tier to guide us, the industry is now figuring out what the cloud-native architectural patterns are at the data tier. Join us to explore some of these with Cornelia Davis, a five year Cloud Foundry veteran who is now focused on cloud-native data. As it happens, every microservice needs a cache and this evening will drill deep on that topic. She’ll cover a variety of caching patterns and use cases, and demonstrate how their use helps preserve the autonomy that is driving agile software delivery practices today.
This document discusses big data analytics using Hadoop. It provides an overview of loading clickstream data from websites into Hadoop using Flume and refining the data with MapReduce. It also describes how Hive and HCatalog can be used to query and manage the data, presenting it in a SQL-like interface. Key components and processes discussed include loading data into a sandbox, Flume's architecture and data flow, using MapReduce for parallel processing, how HCatalog exposes Hive metadata, and how Hive allows querying data using SQL queries.
201411203 goto night on graphs for fraud detectionRik Van Bruggen
This document discusses how graph databases can be useful for fraud detection. It begins with an introduction to graphs and graph theory, then discusses how graph databases work and their advantages over relational databases for complex querying and modeling connected data. The document notes that fraud detection relies on real-time analysis, complex patterns, and graph algorithms to navigate relationships. It provides a short demonstration and discusses case studies where graph databases have been successfully used for fraud detection due to their ability to efficiently handle large, interconnected datasets.
This document provides an overview of ASP.NET MVC and the MVC pattern. It discusses the objectives of understanding MVC, the major concepts including the model, view and controller. It also covers ASP.NET MVC RC1 and how controllers and views work, and concludes that ASP.NET MVC provides testable applications with clear separation of concerns.
Datalayer Best Practices with ObservepointMike Plant
Building a dynamic data layer is not easy, it has various complexities based on your websites design, back end frameworks and libraries and present difficulty in figuring out when and how to present it to the browser.
10 Big Data Technologies you Didn't Know About Jesus Rodriguez
This document introduces several big data technologies that are less well known than traditional solutions like Hadoop and Spark. It discusses Apache Flink for stream processing, Apache Samza for processing real-time data from Kafka, Google Cloud Dataflow which provides a managed service for batch and stream data processing, and StreamSets Data Collector for collecting and processing data in real-time. It also covers machine learning technologies like TensorFlow for building dataflow graphs, and cognitive computing services from Microsoft. The document aims to think beyond traditional stacks and learn from companies building pipelines at scale.
Hypermedia System Architecture for a Web of ThingsMichael Koster
The document describes a hypermedia architecture and demonstrator for a Web of Things. It includes a hypermedia system architecture that uses a Hypermedia Collection with resource type semantics to implement the W3C Web of Things interaction model. It features HATEOAS discovery and client-server state machines. A Thing Object Model provides a consistent interface for scripted applications based on the resource model. The architecture supports pluggable protocols like CoAP, HTTP, MQTT and Websockets through a common CRUD interface.
Action-Domain-Responder: A Web-Specific Refinement of Model-View-ControllerPaul Jones
Using Model-View-Controller as a pattern to describe stateless HTTP interactions has always been a bit of a kludge. There simply hasn't been a better pattern web applications -- until now.
ADR (Action-Domain-Responder) represents a refinement of generic MVC as an application architecture specifically tuned to the web. In this talk, we will discuss various patterns of overall application architecture, including MVC, MVP, PAC, DCI, RMR, and others. We will find out how the ADR pattern arises from generic MVC, and how it provides a better description of how web applications actually work. Finally, we will go over examples of how to architect an ADR application, as well as how to convert from an MVC architcture to an ADR one.
The document summarizes key concepts in software architecture design, including execution architecture views, code architecture views, component and connector views, architectural styles, and archetypes. It defines execution views as showing how functional components map to runtime entities and how communication is handled. Code views map runtime entities to deployment components. Component and connector views define elements, relations, and properties using styles like pipe-and-filter. Archetypes are universal patterns that recur in business domains and software systems.
Streamlining Your Applications with Web Frameworksguestf7bc30
The document discusses web frameworks and how they provide libraries and structure for common tasks in web application development to promote best practices and allow developers to focus on their specific application needs rather than solving common problems. It provides an overview of features of web frameworks like CakePHP including MVC architecture, AJAX functionality, and RESTful resource-oriented design.
Asp.net mvc presentation by Nitin SawantNitin Sawant
The document provides an introduction to ASP.NET MVC, including definitions of MVC and its components. It discusses the pros and cons of traditional ASP.NET WebForms compared to MVC. Key aspects of MVC like models, views, controllers, routing and HTML helpers are described at a high level. Popular MVC frameworks for different programming languages are also listed.
Flocking at the SuperCollider Symposium 2013colinbdclark
An overview of Flocking, a web-based framework for creative audio on the web. This was presented at the 2013 SuperCollider Symposium in Boulder, CO.
http://supercollider2013.com/
Hypermedia System Architecture for a Web of ThingsMichael Koster
This document summarizes a hypermedia architecture and demonstrator for a Web of Things. It describes a hypermedia system that uses resource collections with type semantics to implement the W3C Web of Things interaction model. Resources are constructed based on a domain schema and model. The architecture supports HATEOAS-driven discovery and interaction through state machines that couple the client and server applications. Common operations are abstracted into a common REST transaction layer to allow pluggable protocols.
software development practices like procedural coding are like training wheels, they help when we start development, but are detrimental later. This presentation lists few such practices and their alternatives
Stop Making The Web Harder Than It Is; Real-world REST, HATEOAS, and Hypermed...kiphampton
Developing for the Web shouldn't be hard. Yet, many smart developers make it more difficult than it needs to be by choosing tools and frameworks that do not fully take advantage of all that HTTP has to offer. This talk demonstrates how projects at all levels-- from the simplest brochureware site to the most advanced Hypermedia APIs--can be made simpler by getting back to the basics of HTTP. We introduce Tamarou's internal application development and publishing framework, Magpie (scheduled for public release to coincide with YAPC::NA) and step through a series of real-world examples to show how its resource-oriented approach to development keeps simple things simple and makes hard things easier.
Topics include:
* Why MVC is the wrong way to think about Web development.
* Why most frameworks that claim to be RESTful aren't (and how that makes life harder)
* An brief introduction to Resource-oriented development.
* A series of production-tested Magpie recipes covering the gamut of Web-dev from simple templated sites through advanced Hypermedia applications.
This document provides an overview of key concepts in web development including tools, version control, web servers, and application architecture. It discusses JavaScript and Node.js for programming, Git for version control, and the model-view-controller (MVC) pattern for application structure with models for data, views for display, and controllers for communication. HTTP is covered for browser-server interaction using requests and responses along standard methods and formats.
CakePHP is a free and open-source rapid application development (RAD) framework for PHP that provides a structured and rapid way for programmers to create web applications without loss of flexibility. It takes the monotony out of web development by providing features like an active community, flexible licensing, MVC architecture, code generation, and database integration through its model-view-controller structure. To use CakePHP, one would download the CakePHP package, extract it to their web server's directory, create the database and application models/controllers/views following CakePHP's conventions, and then access the application.
CakePHP is a free and open-source rapid application development (RAD) framework for PHP that provides a structured and rapid way for programmers to create web applications without loss of flexibility. It takes the monotony out of web development by providing features like an active community, flexible licensing, MVC architecture, code generation, and database integration through its model-view-controller structure. To use CakePHP, one would download the CakePHP package, extract it to their web server's directory, create the database and application models/controllers/views following CakePHP's conventions, and then access the application.
Building a Real-Time Security Application Using Log Data and Machine Learning...Sri Ambati
Building a Real-Time Security Application Using Log Data and Machine Learning- Karthik Aaravabhoomi
- Powered by the open source machine learning software H2O.ai. Contributors welcome at: https://github.com/h2oai
- To view videos on H2O open source machine learning software, go to: https://www.youtube.com/user/0xdata
Cloud-native Data: Every Microservice Needs a Cachecornelia davis
Presented at the Pivotal Toronto Users Group, March 2017
Cloud-native applications form the foundation for modern, cloud-scale digital solutions, and the patterns and practices for cloud-native at the app tier are becoming widely understood – statelessness, service discovery, circuit breakers and more. But little has changed in the data tier. Our modern apps are often connected to monolithic shared databases that have monolithic practices wrapped around them. As a result, the autonomy promised by moving to a microservices application architecture is compromised.
With lessons from the application tier to guide us, the industry is now figuring out what the cloud-native architectural patterns are at the data tier. Join us to explore some of these with Cornelia Davis, a five year Cloud Foundry veteran who is now focused on cloud-native data. As it happens, every microservice needs a cache and this evening will drill deep on that topic. She’ll cover a variety of caching patterns and use cases, and demonstrate how their use helps preserve the autonomy that is driving agile software delivery practices today.
This document discusses big data analytics using Hadoop. It provides an overview of loading clickstream data from websites into Hadoop using Flume and refining the data with MapReduce. It also describes how Hive and HCatalog can be used to query and manage the data, presenting it in a SQL-like interface. Key components and processes discussed include loading data into a sandbox, Flume's architecture and data flow, using MapReduce for parallel processing, how HCatalog exposes Hive metadata, and how Hive allows querying data using SQL queries.
201411203 goto night on graphs for fraud detectionRik Van Bruggen
This document discusses how graph databases can be useful for fraud detection. It begins with an introduction to graphs and graph theory, then discusses how graph databases work and their advantages over relational databases for complex querying and modeling connected data. The document notes that fraud detection relies on real-time analysis, complex patterns, and graph algorithms to navigate relationships. It provides a short demonstration and discusses case studies where graph databases have been successfully used for fraud detection due to their ability to efficiently handle large, interconnected datasets.
This document provides an overview of ASP.NET MVC and the MVC pattern. It discusses the objectives of understanding MVC, the major concepts including the model, view and controller. It also covers ASP.NET MVC RC1 and how controllers and views work, and concludes that ASP.NET MVC provides testable applications with clear separation of concerns.
Datalayer Best Practices with ObservepointMike Plant
Building a dynamic data layer is not easy, it has various complexities based on your websites design, back end frameworks and libraries and present difficulty in figuring out when and how to present it to the browser.
10 Big Data Technologies you Didn't Know About Jesus Rodriguez
This document introduces several big data technologies that are less well known than traditional solutions like Hadoop and Spark. It discusses Apache Flink for stream processing, Apache Samza for processing real-time data from Kafka, Google Cloud Dataflow which provides a managed service for batch and stream data processing, and StreamSets Data Collector for collecting and processing data in real-time. It also covers machine learning technologies like TensorFlow for building dataflow graphs, and cognitive computing services from Microsoft. The document aims to think beyond traditional stacks and learn from companies building pipelines at scale.
Hypermedia System Architecture for a Web of ThingsMichael Koster
The document describes a hypermedia architecture and demonstrator for a Web of Things. It includes a hypermedia system architecture that uses a Hypermedia Collection with resource type semantics to implement the W3C Web of Things interaction model. It features HATEOAS discovery and client-server state machines. A Thing Object Model provides a consistent interface for scripted applications based on the resource model. The architecture supports pluggable protocols like CoAP, HTTP, MQTT and Websockets through a common CRUD interface.
Action-Domain-Responder: A Web-Specific Refinement of Model-View-ControllerPaul Jones
Using Model-View-Controller as a pattern to describe stateless HTTP interactions has always been a bit of a kludge. There simply hasn't been a better pattern web applications -- until now.
ADR (Action-Domain-Responder) represents a refinement of generic MVC as an application architecture specifically tuned to the web. In this talk, we will discuss various patterns of overall application architecture, including MVC, MVP, PAC, DCI, RMR, and others. We will find out how the ADR pattern arises from generic MVC, and how it provides a better description of how web applications actually work. Finally, we will go over examples of how to architect an ADR application, as well as how to convert from an MVC architcture to an ADR one.
The document summarizes key concepts in software architecture design, including execution architecture views, code architecture views, component and connector views, architectural styles, and archetypes. It defines execution views as showing how functional components map to runtime entities and how communication is handled. Code views map runtime entities to deployment components. Component and connector views define elements, relations, and properties using styles like pipe-and-filter. Archetypes are universal patterns that recur in business domains and software systems.
Streamlining Your Applications with Web Frameworksguestf7bc30
The document discusses web frameworks and how they provide libraries and structure for common tasks in web application development to promote best practices and allow developers to focus on their specific application needs rather than solving common problems. It provides an overview of features of web frameworks like CakePHP including MVC architecture, AJAX functionality, and RESTful resource-oriented design.
Asp.net mvc presentation by Nitin SawantNitin Sawant
The document provides an introduction to ASP.NET MVC, including definitions of MVC and its components. It discusses the pros and cons of traditional ASP.NET WebForms compared to MVC. Key aspects of MVC like models, views, controllers, routing and HTML helpers are described at a high level. Popular MVC frameworks for different programming languages are also listed.
Similar to Architectures for Inclusive Design (20)
Flocking at the SuperCollider Symposium 2013colinbdclark
An overview of Flocking, a web-based framework for creative audio on the web. This was presented at the 2013 SuperCollider Symposium in Boulder, CO.
http://supercollider2013.com/
The Inclusive Web: hands-on with HTML5 and jQuerycolinbdclark
Driven by technologies such as HTML5, JavaScript, and jQuery, innovative new user experiences are thriving on the Web. This workshop, presented by Justin Obara and Colin Clark from the Fluid community (http://fluidproject.org), will provide Web designers and developers with an overview of modern Web accessibility techniques, providing hands-on ways to make HTML5 and jQuery-based applications more accessible, flexible, and inclusive of a diverse range of users. We’ll also cover some of the features of Fluid Infusion, an application framework built on top of jQuery.
Nothing Hard Baked: Designing the Inclusive Webcolinbdclark
We've all experienced the frustration and exclusion of using an application that is awkwardly designed or poorly suited to our preferred device. In this talk, I redefine accessibility as a usability problem, exploring some of the limitations we've inherited from traditional, desktop-centric approaches to accessibility and user interface design. I also show a few of the techniques used in Fluid Infusion to support open web user interfaces that can more readily adapt to the needs of both developers and end-users alike.
Mobile Development with uPortal and Infusioncolinbdclark
A half-day, code-oriented workshop teaching developers how to build mobile applications using Infusion and the mobile Fluid Skinning System. Includes advice on performance optimization and techniques for using the open Web to reach more users on more devices.
This document provides an overview and introduction to web accessibility and design. It discusses the Fluid open source community which aims to promote inclusive design. Key topics covered include what accessibility means, a demonstration of assistive technologies, an overview of the Web Content Accessibility Guidelines (WCAG) 2.0, techniques for testing accessibility, and an overview of building accessible websites. The document emphasizes that accessibility benefits all users and is good for design. It provides examples of making content more accessible through proper use of text alternatives, labeling, navigation, and more.
User Interface Development with jQuerycolinbdclark
A half-day workshop covering all aspects of user interface development with jQuery. Starts with a JavaScript refresher, followed by coverage of each major feature of jQuery. Real world code samples are included throughout.
Presented by Colin Clark and Justin Obara at the 2010 Jasig Conference in San Diego.
Accessible UIs with jQuery and Infusioncolinbdclark
Overview of accessible Web development techniques with jQuery and Fluid's Infusion application framework. This talk gives developers a primer in DHTML accessibility techniques such as keyboard navigation and ARIA, while teaching them the strengths of Infusion for building large applications in JavaScript.
Presented at 2009 Ajax Experience, Boston.
Making your jQuery Plugins More Accessiblecolinbdclark
An accessibility primer for jQuery developers. This presentation covered teaches how to make widgets and plugins navigable with the keyboard, as well as support for assistive technologies with ARIA.
Presented at the 2009 jQuery Conference in Boston.
The document discusses Infusion, an open source application framework built on top of jQuery. It was designed for usability and accessibility. Infusion includes reusable UI components, a lightweight CSS framework, and accessibility tools. It aims to provide flexibility while preserving interoperability. Key features include accessibility baked in, loosely coupled and adaptable components, and no traditional controller layer. The framework follows web architecture principles of separation of structure from presentation and being declarative and stateless. Its goal is to help build great user interfaces that are flexible and work well with other code.
Reflections on the relationship between open source licensing and accessibility. Guest lecture for Ryerson University School of Disability Studies' DST 614: Community Access and Technology course.
October 2, 2010
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfChart Kalyan
A Mix Chart displays historical data of numbers in a graphical or tabular form. The Kalyan Rajdhani Mix Chart specifically shows the results of a sequence of numbers over different periods.
Main news related to the CCS TSI 2023 (2023/1695)Jakub Marek
An English 🇬🇧 translation of a presentation to the speech I gave about the main changes brought by CCS TSI 2023 at the biggest Czech conference on Communications and signalling systems on Railways, which was held in Clarion Hotel Olomouc from 7th to 9th November 2023 (konferenceszt.cz). Attended by around 500 participants and 200 on-line followers.
The original Czech 🇨🇿 version of the presentation can be found here: https://www.slideshare.net/slideshow/hlavni-novinky-souvisejici-s-ccs-tsi-2023-2023-1695/269688092 .
The videorecording (in Czech) from the presentation is available here: https://youtu.be/WzjJWm4IyPk?si=SImb06tuXGb30BEH .
Conversational agents, or chatbots, are increasingly used to access all sorts of services using natural language. While open-domain chatbots - like ChatGPT - can converse on any topic, task-oriented chatbots - the focus of this paper - are designed for specific tasks, like booking a flight, obtaining customer support, or setting an appointment. Like any other software, task-oriented chatbots need to be properly tested, usually by defining and executing test scenarios (i.e., sequences of user-chatbot interactions). However, there is currently a lack of methods to quantify the completeness and strength of such test scenarios, which can lead to low-quality tests, and hence to buggy chatbots.
To fill this gap, we propose adapting mutation testing (MuT) for task-oriented chatbots. To this end, we introduce a set of mutation operators that emulate faults in chatbot designs, an architecture that enables MuT on chatbots built using heterogeneous technologies, and a practical realisation as an Eclipse plugin. Moreover, we evaluate the applicability, effectiveness and efficiency of our approach on open-source chatbots, with promising results.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/temporal-event-neural-networks-a-more-efficient-alternative-to-the-transformer-a-presentation-from-brainchip/
Chris Jones, Director of Product Management at BrainChip , presents the “Temporal Event Neural Networks: A More Efficient Alternative to the Transformer” tutorial at the May 2024 Embedded Vision Summit.
The expansion of AI services necessitates enhanced computational capabilities on edge devices. Temporal Event Neural Networks (TENNs), developed by BrainChip, represent a novel and highly efficient state-space network. TENNs demonstrate exceptional proficiency in handling multi-dimensional streaming data, facilitating advancements in object detection, action recognition, speech enhancement and language model/sequence generation. Through the utilization of polynomial-based continuous convolutions, TENNs streamline models, expedite training processes and significantly diminish memory requirements, achieving notable reductions of up to 50x in parameters and 5,000x in energy consumption compared to prevailing methodologies like transformers.
Integration with BrainChip’s Akida neuromorphic hardware IP further enhances TENNs’ capabilities, enabling the realization of highly capable, portable and passively cooled edge devices. This presentation delves into the technical innovations underlying TENNs, presents real-world benchmarks, and elucidates how this cutting-edge approach is positioned to revolutionize edge AI across diverse applications.
From Natural Language to Structured Solr Queries using LLMsSease
This talk draws on experimentation to enable AI applications with Solr. One important use case is to use AI for better accessibility and discoverability of the data: while User eXperience techniques, lexical search improvements, and data harmonization can take organizations to a good level of accessibility, a structural (or “cognitive” gap) remains between the data user needs and the data producer constraints.
That is where AI – and most importantly, Natural Language Processing and Large Language Model techniques – could make a difference. This natural language, conversational engine could facilitate access and usage of the data leveraging the semantics of any data source.
The objective of the presentation is to propose a technical approach and a way forward to achieve this goal.
The key concept is to enable users to express their search queries in natural language, which the LLM then enriches, interprets, and translates into structured queries based on the Solr index’s metadata.
This approach leverages the LLM’s ability to understand the nuances of natural language and the structure of documents within Apache Solr.
The LLM acts as an intermediary agent, offering a transparent experience to users automatically and potentially uncovering relevant documents that conventional search methods might overlook. The presentation will include the results of this experimental work, lessons learned, best practices, and the scope of future work that should improve the approach and make it production-ready.
How information systems are built or acquired puts information, which is what they should be about, in a secondary place. Our language adapted accordingly, and we no longer talk about information systems but applications. Applications evolved in a way to break data into diverse fragments, tightly coupled with applications and expensive to integrate. The result is technical debt, which is re-paid by taking even bigger "loans", resulting in an ever-increasing technical debt. Software engineering and procurement practices work in sync with market forces to maintain this trend. This talk demonstrates how natural this situation is. The question is: can something be done to reverse the trend?
"What does it really mean for your system to be available, or how to define w...Fwdays
We will talk about system monitoring from a few different angles. We will start by covering the basics, then discuss SLOs, how to define them, and why understanding the business well is crucial for success in this exercise.
The Department of Veteran Affairs (VA) invited Taylor Paschal, Knowledge & Information Management Consultant at Enterprise Knowledge, to speak at a Knowledge Management Lunch and Learn hosted on June 12, 2024. All Office of Administration staff were invited to attend and received professional development credit for participating in the voluntary event.
The objectives of the Lunch and Learn presentation were to:
- Review what KM ‘is’ and ‘isn’t’
- Understand the value of KM and the benefits of engaging
- Define and reflect on your “what’s in it for me?”
- Share actionable ways you can participate in Knowledge - - Capture & Transfer
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsDianaGray10
Join us to learn how UiPath Apps can directly and easily interact with prebuilt connectors via Integration Service--including Salesforce, ServiceNow, Open GenAI, and more.
The best part is you can achieve this without building a custom workflow! Say goodbye to the hassle of using separate automations to call APIs. By seamlessly integrating within App Studio, you can now easily streamline your workflow, while gaining direct access to our Connector Catalog of popular applications.
We’ll discuss and demo the benefits of UiPath Apps and connectors including:
Creating a compelling user experience for any software, without the limitations of APIs.
Accelerating the app creation process, saving time and effort
Enjoying high-performance CRUD (create, read, update, delete) operations, for
seamless data management.
Speakers:
Russell Alfeche, Technology Leader, RPA at qBotic and UiPath MVP
Charlie Greenberg, host
"Choosing proper type of scaling", Olena SyrotaFwdays
Imagine an IoT processing system that is already quite mature and production-ready and for which client coverage is growing and scaling and performance aspects are life and death questions. The system has Redis, MongoDB, and stream processing based on ksqldb. In this talk, firstly, we will analyze scaling approaches and then select the proper ones for our system.
QA or the Highway - Component Testing: Bridging the gap between frontend appl...zjhamm304
These are the slides for the presentation, "Component Testing: Bridging the gap between frontend applications" that was presented at QA or the Highway 2024 in Columbus, OH by Zachary Hamm.
ScyllaDB is making a major architecture shift. We’re moving from vNode replication to tablets – fragments of tables that are distributed independently, enabling dynamic data distribution and extreme elasticity. In this keynote, ScyllaDB co-founder and CTO Avi Kivity explains the reason for this shift, provides a look at the implementation and roadmap, and shares how this shift benefits ScyllaDB users.
"NATO Hackathon Winner: AI-Powered Drug Search", Taras KlobaFwdays
This is a session that details how PostgreSQL's features and Azure AI Services can be effectively used to significantly enhance the search functionality in any application.
In this session, we'll share insights on how we used PostgreSQL to facilitate precise searches across multiple fields in our mobile application. The techniques include using LIKE and ILIKE operators and integrating a trigram-based search to handle potential misspellings, thereby increasing the search accuracy.
We'll also discuss how the azure_ai extension on PostgreSQL databases in Azure and Azure AI Services were utilized to create vectors from user input, a feature beneficial when users wish to find specific items based on text prompts. While our application's case study involves a drug search, the techniques and principles shared in this session can be adapted to improve search functionality in a wide range of applications. Join us to learn how PostgreSQL and Azure AI can be harnessed to enhance your application's search capability.
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyScyllaDB
Freshworks creates AI-boosted business software that helps employees work more efficiently and effectively. Managing data across multiple RDBMS and NoSQL databases was already a challenge at their current scale. To prepare for 10X growth, they knew it was time to rethink their database strategy. Learn how they architected a solution that would simplify scaling while keeping costs under control.
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillLizaNolte
HERE IS YOUR WEBINAR CONTENT! 'Mastering Customer Journey Management with Dr. Graham Hill'. We hope you find the webinar recording both insightful and enjoyable.
In this webinar, we explored essential aspects of Customer Journey Management and personalization. Here’s a summary of the key insights and topics discussed:
Key Takeaways:
Understanding the Customer Journey: Dr. Hill emphasized the importance of mapping and understanding the complete customer journey to identify touchpoints and opportunities for improvement.
Personalization Strategies: We discussed how to leverage data and insights to create personalized experiences that resonate with customers.
Technology Integration: Insights were shared on how inQuba’s advanced technology can streamline customer interactions and drive operational efficiency.
This talk will cover ScyllaDB Architecture from the cluster-level view and zoom in on data distribution and internal node architecture. In the process, we will learn the secret sauce used to get ScyllaDB's high availability and superior performance. We will also touch on the upcoming changes to ScyllaDB architecture, moving to strongly consistent metadata and tablets.
The Microsoft 365 Migration Tutorial For Beginner.pptxoperationspcvita
This presentation will help you understand the power of Microsoft 365. However, we have mentioned every productivity app included in Office 365. Additionally, we have suggested the migration situation related to Office 365 and how we can help you.
You can also read: https://www.systoolsgroup.com/updates/office-365-tenant-to-tenant-migration-step-by-step-complete-guide/
The Microsoft 365 Migration Tutorial For Beginner.pptx
Architectures for Inclusive Design
1. Architectures for Inclusive Design
Colin Clark, Fluid Project Technical Lead
Adaptive Technology Resource Centre
2. Things we’ll talk about
• Priorities for software
• What is software architecture?
• Object oriented programming
• Model View Controller
• Case study: the Web
• How do assistive technologies work?
• Rethinking the role-based paradigm
• Techniques for open architecture
4. Fluid...
http://fluidproject.org
• Is an open source community of
- Designers
- Developers
- Accessibility experts
• Helps other open communities
• Consists of universities, museums and
individuals
5. What We Do
• Offer design advice and resources
• Contribute to other communities:
- jQuery UI
- Dojo
- W3C Accessibility
• Build Infusion, our JavaScript application
framework
• Build Kettle, our JavaScript server-side
infrastructure
7. Some questions...
1. What’s the most important thing on your
computer?
2. What’s your favourite piece of software?
3. Why do you use software?
8. Content is king
• Your stuff.
• The things you do with your stuff.
Software architectures need to be focussed
on enabling creativity and contribution, for
everyone.
9. Software shouldn’t suck
• Good software...
• Doesn’t crash
• Doesn’t eat your data
• Helps you accomplish your goals
• Is fast enough to keep up with you
• Can grow over time with your needs
11. What is architecture?
• Concerned with the shape of software
• Defines the structure and APIs of a system
• Highly abstract: recognition of patterns
• Best done iteratively, not all up front
12. Architecture is hard
• Code is hard to understand and maintain
• Goals of a good architecture:
• Enable growth
• Allow for outside extension
• Manage dependencies
15. Goals of OO
• Define a system in real-world terms
• Hide away the guts of an implementation
• Create small, useful modules
• Enable reusability
16. Three Pillars of OO
1. Inheritance
2. Encapsulation
3. Polymorphism
17. Inheritance
• A way of structuring dependencies and
reusing code
• Defines the identity of an object (is a)
• Mammals, Felines, Cats and Lions
• Vehicles, Cars, and Trucks
• Fruit, Apples, Oranges
• Lost of other contrived examples...
18. Inheritance
AbstractMap
Method
Method
Method
Data
Method
IdentityHashMap HashMap
Method Method
Method
Method
Method
Method
Data Data
Method Method
PrinterStateReasons LinkedHashMap
Method Method
Method
Method
Method
Method
Data Data
Method Method
19. Encapsulation
• Hide away the internals of an object
• Define a contract through methods
• Traditionally, data is considered opaque
21. Polymorphism
• The ability for different objects to
respond to the same method in different
ways
• Interface vs. implementation
22. Crumbling Pillars
• Inheritance is brittle and ineffective
• Composition (has a) works better
• Encapsulation can lead to overzealousness:
• Cuts off access to useful information
• Assumes custom structures are better than
plain old, interoperable standards
24. Model View Controller
• Model is the application data and associated
behaviour
• View presents the model and drives the
interaction logic
• Controller is glue, mediating access between
model and view
25. Traditional MVC
Model
n
atio
oti c
State Query State Change
ge N
n
Cha
View Selection
View Controller
User Gestures
26. The Problem with Controllers
• Controllers are the least defined part of the
equation
• What’s “glue?”
• Always referred to as the non-reusable part
• MVC has been warped over the decades
27. Controllers and Frameworks
• Orginally, in Smalltalk, the Controller managed the
low-level event loop for an application
• In Web apps, they’re usually responsible for parsing
requests and dispatching
• These are both things that high-level frameworks
do for us now
• E.g. The event loop in a Web browser
28. Model View (controller)
Model
Change Noti cation
State Query State Change
View
Framework
32. Declarative Programming
Declarative programming is a programming
paradigm that expresses the logic of a
computation without describing its control
flow
39. Statelessness
• The Web is stateless for a reason: it scales
• State is visible, not encapsulated
http://build.fluidproject.org:8095/engage/artifacts/view.html?
accessNumber=M2000.38.97&db=mccord&lang=en
40. Interoperable
• Web formats are:
• Plain text
• Declarative
• Openly published and standardized
• This means they are adaptable and extensible
42. Assistive Technologies
• Present and control the user interface in
different ways
• Not just screen readers!
• Use built-in operating system APIs to
understand the user interface
Screen readers
Screen magnifiers
On-screen keyboards
43. OS AT APIs
• A channel for UI introspection
• What’s on screen?
• How are things labelled, organized, etc.?
• What states are things in?
• UI Roles, states, properties
44. The Role-Based Model
• Just about every API works the same way
• Give each UI widget a name
• e.g. slider, tabs, dialog, button, text field
• Names imply behaviour
• For AT users, names define interactions
52. ARIA
• Accessible Rich Internet Applications
• W3C specification in the works
• Fills the semantic gaps in HTML
• Roles, states, and properties
• Live regions
53. Roles, States, Properties
• Roles describe widgets not present in HTML 4
• slider, menubar, tab, dialog
• Properties describe characteristics:
• draggable, hasPopup, required
• States describe what’s happening:
• busy, disabled, selected, hidden
54. Using ARIA
// Now *these* are Tabs!
<ol id=”animalTabs” role=”tablist” tabindex=”0”>
<!-- Individual Tabs shouldn’t be focusable -->
<!-- We’ll focus them with JavaScript instead -->
<li role=”tab”><a href=”#” tabindex=”-1”>Cats</a></li>
<li role=”tab”><a href=”#” tabindex=”-1”>Dogs</a></li>
<li role=”tab”><a href=”#” tabindex=”-1”>Gators</a></li>
</ol>
<div id=”panels”>
<div role=”tabpanel” aria-labelledby=”cats”>Cats meow.</div>
<div role=”tabpanel” aria-labelledby=”dogs”>Dogs bark.</div>
<div role=”tabpanel” aria-labelledby=”gators”>Gators bite.</div>
</div>
55. Adding ARIA in Code
// Identify the container as a list of tabs.
tabContainer.attr("role", "tablist");
// Give each tab the "tab" role.
tabs.attr("role", "tab");
// Give each panel the appropriate role, panels.attr("role",
"tabpanel");
panels.each(function (idx, panel) {
var tabForPanel = that.tabs.eq(idx);
// Relate the panel to the tab that labels it.
$(panel).attr("aria-labelledby", tabForPanel[0].id);
});
56. The Problem with Roles
Roles are driven by 1980’s era desktop widgets
66. Transparent Models
• Break open data encapsulation
• Publicly share models in standard formats
• Allows others to see into your application’s
data and state
67. Events
• Interesting moments in the life of your app
• e.g. onSave, onSelect, onOpen, etc.
• Use events to wire up app, and talk to the
world
• Key feature: notifying people about changes
in your model
68. Data Change Events
Change Request
Guard Observer
Guard Observer
Guard Observer
Apply Change
Method
Method
Data
Method
Method
Method
Data
Method
Method
Method
Data
Method
69. Accessible Architectures
• Interoperable apps are accessible apps
• Your application state is content, too
• Extensible: allow for alternatives
• Personalisable
73. Subcomponents
• Provides loose coupling between parts (IoC)
• Look up dependencies by name, and the
framework will instantiate them for you
• Users can implement their own version or
configure alternatives
79. Where does this lead us?
• Today, ATs just describe what’s visible
• Imagine alternative representations
• Knowledge of structure, data, actions
• Completely different UI optimized for the user?
80. Accessible architectures are...
• Introspective
• Declarative programming
• Transparent models
• Describe behaviour, roles, and state
• Adaptable
• Declarative programming
• Loose coupling & inversion of control
• Separation of structure and presentation