A Lecture given in Aalto University course "Design of WWW Services".
Single page app is already several years old web application paradigm that is now gaining traction due to the interest towards HTML5 and particularly cross-platform mobile (web) applications. The presentation overviews the single page application paradigm and compares it with other web app paradigms.
The presentation uses Backbone.js as the sample and gives practical tips on how to best structure Backbone.js applications. It contains an extensive set of tips and links in the notes section.
The reader is adviced to download the presentation for better readability of the notes.
This presentation is about building Single Page Applications. It was written for a .NET Meetup in Uruguay, so it will also be targeted at Microsoft developers.
http://mnug.de/artikel/meetups/december2014
Scaffolding can be a great way to enable developers quickly in a way consistent with best practices employed by the community or your organization. Yeoman is a proven scaffolding tool for webapps that has been around since 2012 and now sports more than 6000 stars on GitHub. Even though its original focus used to be on supporting front-end development, it now features a considerable number of Node.js-related generators worth exploring. This talk will give a quick overview on the topic of scaffolding, explain what Yeoman is all about and show you how to make the best use of it.
Refactoring to a Single Page ApplicationCodemotion
"Refactoring to a Single Page Application" by Marcello Teodori
In origine era il monolite. Spesso dietro una startup web di successo c'è un'applicazione in tecnologia singola (Java, Rails, ecc.) che cresce finché fatica a scalare all'aumentare degli utenti e con essa il relativo processo di sviluppo all'aumentare degli sviluppatori. Sul back-end una strategia consolidata è suddividere progressivamente il monolite in microservice. Per il front-end la soluzione duale è estrarre gradualmente il codice HTML, CSS e JavaScript in una Single Page Application, applicando diverse tecniche come quelle maturate durante la mia esperienza in Workshare.
This presentation is about building Single Page Applications. It was written for a .NET Meetup in Uruguay, so it will also be targeted at Microsoft developers.
http://mnug.de/artikel/meetups/december2014
Scaffolding can be a great way to enable developers quickly in a way consistent with best practices employed by the community or your organization. Yeoman is a proven scaffolding tool for webapps that has been around since 2012 and now sports more than 6000 stars on GitHub. Even though its original focus used to be on supporting front-end development, it now features a considerable number of Node.js-related generators worth exploring. This talk will give a quick overview on the topic of scaffolding, explain what Yeoman is all about and show you how to make the best use of it.
Refactoring to a Single Page ApplicationCodemotion
"Refactoring to a Single Page Application" by Marcello Teodori
In origine era il monolite. Spesso dietro una startup web di successo c'è un'applicazione in tecnologia singola (Java, Rails, ecc.) che cresce finché fatica a scalare all'aumentare degli utenti e con essa il relativo processo di sviluppo all'aumentare degli sviluppatori. Sul back-end una strategia consolidata è suddividere progressivamente il monolite in microservice. Per il front-end la soluzione duale è estrarre gradualmente il codice HTML, CSS e JavaScript in una Single Page Application, applicando diverse tecniche come quelle maturate durante la mia esperienza in Workshare.
MongoDB Days Silicon Valley: Building Applications with the MEAN StackMongoDB
Presented by Jason Zucchetto, Curriculum Engineer, MongoDB
Experience level: Introductory
Walk through building a sample application with the MEAN stack (MongoDB-Express-Angular-Node.js). We'll start from the beginning, walking through every component of the MEAN stack, in building a modern web application. The presentation focuses on building MongoMart, a simple application for searching and viewing MongoDB merchandise. You'll walk away with a basic knowledge of MEAN stack components and how to leverage them in building applications.
Presentation from Denver Open Source Users Group in February 2015. http://www.meetup.com/DOSUG1/events/219099019/
AngularJS is one of today's hottest JavaScript MVC Frameworks. In this session, we'll explore many concepts it brings to the world of client-side development: dependency injection, directives, filters, routing and two-way data binding. We'll also look at its recommended testing tools and build systems. Finally, you'll learn about my experience developing several real-world applications using AngularJS, HTML5 and Bootstrap.
Sails.js makes it easy to build custom, enterprise-grade Node.js apps. It is designed to resemble the MVC architecture from frameworks like Ruby on Rails, but with support for the more modern, data-oriented style of web app development. It's especially good for building realtime features like chat.
MEAN Stack technology is a full-stack JavaScript solution that helps you build fast and very light weight web application. The web application made under MEAN stack is fast because the Node js which is run time environment made by C++ which is very fast as compare to other languages.
MEAN is acronym of Mongodb, Express js, Angular js, Node js. The MEAN stack technology is very easy to learn because MEAN is completely based on JavaScript which means you don't have to learn different languages for implementing this.
In this presentation we'll take a look at building a full stack web application using Polymer and Web Components. After a quick introduction to Polymer, we’ll see how we can handle things like authentication, pagination of large data sets, and adapting our UI to different viewports. We’ll also review what’s needed for moving our app to production and optimizing our User Experience with quick load times and transition animations.
Presented at Web Unleashed 2017. More info at www.fitc.ca/webu
Presented by Ksenija Gogic, TWG
Overview
What are components? How can designers apply a component-minded approach to their workflow? How can we leverage components to improve the design handoff? Ultimately – how can designers and developers work together even better?
Using React as a framework, Ksenija will discuss how to design for a component-based web application to make for a more efficient workflow, an easier design handoff, and a better understanding between roles.
Objective
To create a common language and understanding when working with component-based web frameworks between designers and developers.
Target Audience
Designers and developers looking to make their collaborative workflow even better.
Five Things Audience Members Will Learn
How to take a component-minded approach to building a design system
How to design and create components using Sketch symbols
How to assemble (compose) collections of components using Sketch symbols
How to work with modifiers (props) to customize components
How to ensure everyone is speaking the same language
Learn Developing REST API in Node.js using LoopBack FrameworkMarudi Subakti
This slide has been presented by me (Marudi Tri Subakti) on event Monthly Meetup Facebook Developer Circle Malang (devc-mlg-meetup-201703.splashthat.com) at 26th March 2017
You’re not the expert. Your customers are, and who your customer is, is changing rapidly. Learn more about the digital consumer, how to bring new life to your customer experience, and inspire your team with workshop activities. Take a deeper look into the key drivers of your business, reinvigorate your customer experience, and gain insight from one of the newest inspiring entrepreneurs, who built his business around an out-of-the-ordinary customer experience. Why not create an experience that will leave your customers talking and sharing your brand with everyone? These musings were gathered after attending the Next Generation Customer Experience Conference in San Diego, March 2015.
How to Craft Your Company's Storytelling Voice by Ann Handley of MarketingProfsMarketingProfs
You know your company's story, but what's the right voice to use in telling it? Find out how to craft your company's storytelling voice. Ann Handley, chief content officer of MarketingProfs and author of "Content Rules" shares tips and ideas for crafting your brand's storytelling voice.
MongoDB Days Silicon Valley: Building Applications with the MEAN StackMongoDB
Presented by Jason Zucchetto, Curriculum Engineer, MongoDB
Experience level: Introductory
Walk through building a sample application with the MEAN stack (MongoDB-Express-Angular-Node.js). We'll start from the beginning, walking through every component of the MEAN stack, in building a modern web application. The presentation focuses on building MongoMart, a simple application for searching and viewing MongoDB merchandise. You'll walk away with a basic knowledge of MEAN stack components and how to leverage them in building applications.
Presentation from Denver Open Source Users Group in February 2015. http://www.meetup.com/DOSUG1/events/219099019/
AngularJS is one of today's hottest JavaScript MVC Frameworks. In this session, we'll explore many concepts it brings to the world of client-side development: dependency injection, directives, filters, routing and two-way data binding. We'll also look at its recommended testing tools and build systems. Finally, you'll learn about my experience developing several real-world applications using AngularJS, HTML5 and Bootstrap.
Sails.js makes it easy to build custom, enterprise-grade Node.js apps. It is designed to resemble the MVC architecture from frameworks like Ruby on Rails, but with support for the more modern, data-oriented style of web app development. It's especially good for building realtime features like chat.
MEAN Stack technology is a full-stack JavaScript solution that helps you build fast and very light weight web application. The web application made under MEAN stack is fast because the Node js which is run time environment made by C++ which is very fast as compare to other languages.
MEAN is acronym of Mongodb, Express js, Angular js, Node js. The MEAN stack technology is very easy to learn because MEAN is completely based on JavaScript which means you don't have to learn different languages for implementing this.
In this presentation we'll take a look at building a full stack web application using Polymer and Web Components. After a quick introduction to Polymer, we’ll see how we can handle things like authentication, pagination of large data sets, and adapting our UI to different viewports. We’ll also review what’s needed for moving our app to production and optimizing our User Experience with quick load times and transition animations.
Presented at Web Unleashed 2017. More info at www.fitc.ca/webu
Presented by Ksenija Gogic, TWG
Overview
What are components? How can designers apply a component-minded approach to their workflow? How can we leverage components to improve the design handoff? Ultimately – how can designers and developers work together even better?
Using React as a framework, Ksenija will discuss how to design for a component-based web application to make for a more efficient workflow, an easier design handoff, and a better understanding between roles.
Objective
To create a common language and understanding when working with component-based web frameworks between designers and developers.
Target Audience
Designers and developers looking to make their collaborative workflow even better.
Five Things Audience Members Will Learn
How to take a component-minded approach to building a design system
How to design and create components using Sketch symbols
How to assemble (compose) collections of components using Sketch symbols
How to work with modifiers (props) to customize components
How to ensure everyone is speaking the same language
Learn Developing REST API in Node.js using LoopBack FrameworkMarudi Subakti
This slide has been presented by me (Marudi Tri Subakti) on event Monthly Meetup Facebook Developer Circle Malang (devc-mlg-meetup-201703.splashthat.com) at 26th March 2017
You’re not the expert. Your customers are, and who your customer is, is changing rapidly. Learn more about the digital consumer, how to bring new life to your customer experience, and inspire your team with workshop activities. Take a deeper look into the key drivers of your business, reinvigorate your customer experience, and gain insight from one of the newest inspiring entrepreneurs, who built his business around an out-of-the-ordinary customer experience. Why not create an experience that will leave your customers talking and sharing your brand with everyone? These musings were gathered after attending the Next Generation Customer Experience Conference in San Diego, March 2015.
How to Craft Your Company's Storytelling Voice by Ann Handley of MarketingProfsMarketingProfs
You know your company's story, but what's the right voice to use in telling it? Find out how to craft your company's storytelling voice. Ann Handley, chief content officer of MarketingProfs and author of "Content Rules" shares tips and ideas for crafting your brand's storytelling voice.
What REALLY Differentiates The Best Content Marketers From The RestRoss Simmonds
I’ve been privileged to work with brands from all over the world in the last few years. Through this work, I’ve also had a chance to meet, become friends with, work with and collaborate with some of the best content marketers in the world. Some of these marketers have their faces plastered in magazines while others keep it low key and aren’t anything close to household names.
When I first started my career, I made it my mission to learn from the best. I studied and read books from the advertising greats and consumed every blog post I could fine from the top modern day marketers I could fine. Through discussions, research and studying the craft, I’ve been able to identify and uncover a few common traits that are found in the best content marketers today. If you want to be a great content marketer, you need to know what it takes to be considered such. Here’s a few traits that differentiate the best content marketers from the rest.
40 Tools in 20 Minutes: Hacking your Marketing CareerEric Leist
Marketing today requires doing a little bit of everything from creative writing to HTML to light Photoshopping. There are a ton of free tools to make those tasks easier and scalable.
Originally presented at Suffolk University's Bridging the Gap Conference--April 18th, 2014.
WEB APPS
http://zapier.com
https://ifttt.com/
http://twitterfeed.com/
http://gaggleamp.com
http://landerapp.com/
https://support.google.com/analytics/answer/1033867?hl=en
http://99designs.com/
http://visual.ly
http://www.alexa.com/
http://www.hubspot.com/blog-topic-generator
http://www.wordle.net/
www.inboundwriter.com
http://litmus.com/
http://www.inboundwriter.com/
https://www.optimizely.com/
http://thenounproject.com/
http://fortawesome.github.io/Font-Awesome/
https://www.facebook.com/help/459892990722543/
http://ads.twitter.com
https://plzadvize.com/
DESKTOP APPS
https://itunes.apple.com/us/app/caffeine/id411246225?mt=12
http://jumpcut.sourceforge.net/
http://www.gifgrabber.com/
http://www.gimp.org/
EMAIL TOOLS
http://getsignals.com
http://www.yesware.com/
http://www.boomeranggmail.com/
http://rapportive.com/
http://www.wisestamp.com/
http://verify-email.org
MOBILE APPS
https://play.google.com/store/apps/details?id=com.xuchdeid.clear
https://itunes.apple.com/us/app/cardmunch-business-card-reader/id478351777?mt=8
BROWSER PLUGINS
https://chrome.google.com/webstore/detail/omnidrive/gpnikbcifngfgfcgcgfahidojdpklfia?hl=en-US
https://addons.mozilla.org/en-US/firefox/addon/klout/
LEARNING PLATFORMS
http://www.google.com/analytics/learn/
http://www.codecademy.com/
http://teamtreehouse.com/
https://generalassemb.ly/
http://www.intelligent.ly/
http://smarterer.com/
An effective pitch presentation can be the difference between securing investment and/or support for your startup. Download our slide presentation, "Build a Better Pitch Deck," and gain insight on what content to include in your slides and how to design them for the most impact. This information is aggregated from leading entrepreneurship and investor sources both in Arizona and throughout the nation.
We Are Social's comprehensive new report covers internet, social media and mobile usage statistics from all over the world. It contains more than 350 infographics, including global snapshots, regional overviews, and in-depth profiles of 30 of the world's largest economies. For a more insightful analysis of these numbers, please visit http://bit.ly/SDMW2015
This contains the entire 4-napkin health care series in one file. It makes more sense to read this one now than the others since it is the complete set all in one file.
Today we all live and work in the Internet Century, where technology is roiling the business landscape, and the pace of change is only accelerating.
In their new book How Google Works, Google Executive Chairman and ex-CEO Eric Schmidt and former SVP of Products Jonathan Rosenberg share the lessons they learned over the course of a decade running Google.
Covering topics including corporate culture, strategy, talent, decision-making, communication, innovation, and dealing with disruption, the authors illustrate management maxims with numerous insider anecdotes from Google’s history.
In an era when everything is speeding up, the best way for businesses to succeed is to attract smart-creative people and give them an environment where they can thrive at scale. How Google Works is a new book that explains how to do just that.
This is a visual preview of How Google Works. You can pick up a copy of the book at www.howgoogleworks.net
Angular jS Introduction by Google
A to Z angular introduction about Angular Framework which is single page application.
Angular JS and angular is very important for single page applications.
HTML5 DevConf 2013 talk by Lauri Svan / SC5
Writing single page applications that respect all web browsers and crawlers should be easy. Still, many end up rewriting their single page application with a server-side templating language, too and get trapped to maintaining two codebases.
With the emergence of server-side JavaScript, the “holy grail” of running the same app code on both ends seems attainable. Frameworks like Meteor, Derby and Yahoo Mojito have done it, and the efforts of AirBnB and Backbone LayoutManager bring it closer to Backbone developers, too. Still, the current approaches make such assumptions on the backend or enforce such constraints on the programming model that an old-fashioned Backbone.js developer cannot take them in use.
This talk compares the approaches for the “holy grail”, particularly from a Backbone application developer’s perspective. In addition, it presents a programming model by which pretty ordinary Backbone applications can run on both ends. The presented approach works for web crawlers and could have limited use for dumb browsers, too.
The talk is technical, with the primary audience being single page app developers planning to move their app server-side. The audience will benefit from previous knowledge of Backbone.js.
Presented @ Ignite Chicago Eent on Dec 06, 2007. Moving Towards RIA - Birds eye view on the available technology, primarily AJAX frameworks and toolkits.
HTML5 and the dawn of rich mobile web applicationsJames Pearce
HTML5 and its related technologies are enabling new ways to build beautiful sites and applications for contemporary mobile devices. Native mobile developers can now use web technologies to surmount cross-platform headaches, and desktop web developers can reach mobile users in familiar, app-like ways. This session explores the state of the art in HTML5-based mobile web frameworks, and demonstrates the practical possibilities that this powerful and standards-based approach can bring.
Session presented at the 2nd IndicThreads.com Conference on Cloud Computing held in Pune, India on 3-4 June 2011.
http://CloudComputing.IndicThreads.com
Abstract: Cloud computing is no longer a buzz term but a reality. With a great opportunity for huge financial savings and demand for Software-as-a-Service products, developing products for the cloud is something that cannot be ignored. In this talk, I would like to touch upon 3 key aspects of cloud engineering – scalability, security and flexibility and its impact on application architecture, data processing needs and deployment.
* By Manjusha Madabushi, Co-Founder and CTO of Talentica Software Pvt. Ltd.
Speaker: Manjusha is a Co-Founder and CTO of Talentica Software Pvt. Ltd. She has a Bachelor’s degree from IIT Mumbai and a Master’s degree from Northwestern University, Chicago. She has over 23 years experience working in the IT industry. She started her career working for Amoco Research Centre, USA till 1989 before returning to India and joining TCS. During her 9 year career at TCS, Manjusha worked in different technology areas such as Artificial Intelligence, Application Modeling, Compilers etc. She was also the Engineering head of the TCS’ product – E.X. NGN. Post TCS, she founded Nitman Software, which was acquired by a US based CRM company, eGain Communications in the year 2000. She co-founded Talentica Software, a company that helps technology companies transform their ideas into successful products in 2003. Talentica specializes in building highly scalable products using cutting edge technologies in the areas of Social Analytics, CRM, Natural Language processing and Advertising.
Modern Architectures with Spring and JavaScriptmartinlippert
JavaScript becomes more and more important for implementing full-featured rich client applications in the browser. Therefore our classical ideas and blueprints for Spring-based architectures have to change. This talks provides a high-level overview of these changes and talks about how to combine Spring on the server side to implement RESTful and HATEOAS APIs and JavaScript in the client side to realize full client side apps in your browser. The talk discusses the basic ideas and motivations behind this shift in architectures without going too deep into all the technical details.
These are the presentation slides demonstratingseven versions of the UI of same HTML5 application using various libraries and frameworks. This application is described in detail in the O'Reilly book "Enterprise Web Development"
This webinar presentation shows you how easy it is to build Series 40 web apps based on templates in Nokia Web Tools 2.0. Tapan Acharya, lead evangelist and consultant with Nokia in Bangalore, describes templates including Multi-view, RSS Feed, Accordion, Carousel, and Tab Control. He presents sample apps and shows you how to use existing templates to localise your apps for languages you choose to support. The knowledge from this webinar will help you to select templates effectively and thus develop Series 40 web apps quickly.
Transfer learning allows you to adapt pre-trained machine learning models to fit custom use cases. In this talk, we'll provide an overview of transfer learning, and demo transfer learning in practise using customvision.ai.
AngularJS primer, covering the pros and cons of AngularJS, basic concepts with code snippets, testing, caveats and a lot of links forward. It's good for getting a glimpse on AngularJS and getting hint on how to write your first templates, controllers, services, directives etc.
SC5 has used this training internally and given it to several customers with very successful results. The training has been given in a workshop form, is accompanied by a few practical exercises (that are not public yet).
The original set is made by SC5er Kari Heikkinen, published here by Lauri Svan for Aalto University course T-111.4360 Design of WWW Services.
Miten design-muutosjohtaminen hyödyttää yrityksiä?SC5.io
Miten design-muutosjohtamisella voidaan tuoda suunnitteluajatus koko yrityksen toimintaan ja rakentaa menestyksekkäämpiä palvelumalleja?
SC5:n Head of Designin Juho Paasosen esitys ICTexpossa 23.4.2015.
While application security will always be an application space problem that's ultimately up to programmers to solve, new techniques in modern browsers can help mitigate vulnerability surface area when bugs enter the playing field unnoticed. Besides the obvious transport level security provided by HTTPS, CSP and Sandboxed Iframes provide solid mechanisms for setting rules to help the browser help you.
Engineering HTML5 Applications for Better PerformanceSC5.io
One second page loads, 100ms UI response time and 60fps animations - even if today's browsers are super fast, meeting these performance goals can be tricky, particularly for mobile browsers.
This presentation outlines some tools & techniques to help to design web apps with performance in mind.
SC5 and A-Lehdet just launched a responsive and adaptive website for Tuulilasi, the Finnish media authority for tech reviews of cars and other gadgets. This website relies heavily on search engine traffic, so we needed to support server side rendering. On the other hand we really wanted to use a single page app, but we didn't want to duplicate efforts.
This talk shows why the ability to share code between the browser and the server is the best thing since sliced bread. We leveraged this possibility to develop a platform that allows us to run the same application in both environments, ultimately achieving a single page app that also caters to robots.
Engineering HTML5 Applications for Better Performance - a presentation held by Lauri Svan / SC5 at Goto Aarhus International Software Development Conference.
Traditional web services are considered to be slow. The new APIs introduced by HTML5 applications do not automatically perform any better, but provide means for writing them in the same way as native applications.
We suggest to engineer the HTML5 applications the same ways as your native applications. That is, measure them using the same performance metrics, and solving some of the performance bottlenecks in the same ways as you would do for a native app.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Welcome to the first live UiPath Community Day Dubai! Join us for this unique occasion to meet our local and global UiPath Community and leaders. You will get a full view of the MEA region's automation landscape and the AI Powered automation technology capabilities of UiPath. Also, hosted by our local partners Marc Ellis, you will enjoy a half-day packed with industry insights and automation peers networking.
📕 Curious on our agenda? Wait no more!
10:00 Welcome note - UiPath Community in Dubai
Lovely Sinha, UiPath Community Chapter Leader, UiPath MVPx3, Hyper-automation Consultant, First Abu Dhabi Bank
10:20 A UiPath cross-region MEA overview
Ashraf El Zarka, VP and Managing Director MEA, UiPath
10:35: Customer Success Journey
Deepthi Deepak, Head of Intelligent Automation CoE, First Abu Dhabi Bank
11:15 The UiPath approach to GenAI with our three principles: improve accuracy, supercharge productivity, and automate more
Boris Krumrey, Global VP, Automation Innovation, UiPath
12:15 To discover how Marc Ellis leverages tech-driven solutions in recruitment and managed services.
Brendan Lingam, Director of Sales and Business Development, Marc Ellis
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Enhancing Performance with Globus and the Science DMZGlobus
ESnet has led the way in helping national facilities—and many other institutions in the research community—configure Science DMZs and troubleshoot network issues to maximize data transfer performance. In this talk we will present a summary of approaches and tips for getting the most out of your network infrastructure using Globus Connect Server.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
2. About Lauri & SC5 Online
• ”Powerhouse for software projects”
• HUT graduate, Information Networks
• 15 years in software engineering business
• A few startups & corporations behind
• Now in SC5 Online as a Software Architect
• Specializes in HTML5 application development
• Located in Helsinki (Kamppi) + Jyväskylä (Innova 2)
• Founded in 2006, employs 50 people
• Customers e.g. Sanoma, YLE, Veikkaus, F-Secure
• blog.sc5.io, twitter: @sc5io
3. Single-page Application
A web application or web site that fits on a single web page with the
goal of providing a more fluid user experience akin to a desktop
application.
Wikipedia
4.
5. Single-page Application
Single page apps typically have
– “application like” interaction
– dynamic data loading from the server-side API
– fluid transitions between page states
– more JavaScript than actual HTML
They typically do not have
– support for crawlers (not for sites relying on search traffic)
– support for legacy browsers (IE7 or older, dumbphone
browsers)
6. SPAs Are Good For …
• “App-like user experience”
• Binding to your own (or 3rd party) RESTful API
• Replacement for Flash or Java in your web pages
• Hybrid (native) HTML5 applications
• Mobile version of your web site
The SPA sweet spot is likely not on web sites,
but on content-rich cross-platform mobile apps
7. App-like User Experience
Note: These (all) are not our work but showcases that Finns can do good stuff!
8. Native Apps vs. Hybrid/Mobile Web Sites
“The real problem with apps was that when people read on electronic
media, they expect the stories to possess the linky-ness of the Web—
but stories in apps didn’t really link.”
“Software development of apps was much harder than publishers had
anticipated, because they had hired Web developers who knew
technologies like HTML, CSS, and JavaScript. Publishers were
astonished to learn that iPad apps were in fact real, if
small, applications, written mostly in a language called Objective
C, which no one in their Web-dev departments knew. Publishers
responded by outsourcing app development, which was
expensive, time-consuming, and unbudgeted.”
Why Publishers Don't Like Apps in MIT Technology Review
9. SPAs and Other Web App Architectures
Server-side Server-side + AJAX PJAX SPA
What Server round-trip on Render initial page on Render initial page on Serve static page
every app state change server, state changes server, state changes skeleton from server;
on the client on server, inject into render every change on
DOM on client-side client-side
How UI code on server; links UI code on both ends; UI code on server, UI code on client,
& form posting AJAX calls, ugly server client to inject HTTP, server API
API server API if you like
Ease of development
UX & responsiveness
Robots & old browsers
Who’s using it? Amazon, Wikipedia; Facebook?; Twitter, Basecamp, Google+, Gmail, FT;
banks, media sites etc. widgets, search GitHub mobile sites, startups
11. Anatomy of a Backbone SPA
• Application as a „singleton‟
reference holder
• Router handles the navigation and
toggles between views
• Models synchronize with Server
API
• Bulk of the code in views
• All HTML in templates
12. SPA Client-Server Communication
• HTML and all the assets are loaded in
first request
• Additional data is fetched over
XMLHTTPRequest
• In addition to normal server stack, you
need to have API endpoints in the same
level as presentation layer
• If you want to go real-time, WebSockets
(socket.io) can help you
• When it gets slow, cluster the backend
behind a caching reverse proxy like
Varnish
13. Sample App Stack
App
Backbone App When the app gets complex, you need modularity
(Backbone Router) require.js
Views Models
Router (Backbone View) (Backbone Model)
(Backbone Router) When the devices have differences, you need
feature detection (only a few shims really work)
modernizr
(feature
Backbone
LayoutManager
Handlebars modernizr, semantic.gs
(template engine)
detection) (view utility)
DOMReady
fastclick
(normalise
(bootstrapping) View & Templating Stack When you want to have an optimized app,
click handling)
Underscore.js
(object/array
Backbone variability or a native app, you need builds
grunt
(MVC framework)
utils)
Cross-Browser jQuery
Compatibility Utility Belt (DOM access)
RequireJS
(dependency mgmt)
Sample boilerplate available at SC5 GitHub
320 and Up Semantic.gs
(boilerplate) HTML5 Foundation (boilerplate)
Our component
Bower LESS Jasmine Grunt Node.js & Express
(package mgmt) (CSS) (unit tests) (builds) (web/API server) 3rd party component
Build, Testing & Deployment Subsystems
14. Handling Navigation (location)
• Browsers already have navigation controls; support them
• HTML5 pushState exists exactly for this purpose
• Handled by History in Backbone and $location in Angular
• Remember fallback to hashbang „#‟ with legacy browsers
• Remember to use URL rewrites in the server side
15. Handling Models (dynamic data)
• Backbone has a flat model of Collections containing Models
• Input validation (can block the invalid input, blocks on save())
• Multiple view bindings (through events)
• Custom data - model mappings (through parse())
• Synchronizing with servers
• fetch() -> GET
• save() -> POST or PUT
• delete() -> DELETE
16. Handling Models (dynamic data)
• Can be easily extended by overriding Backbone.sync()
• Real-time communications (web sockets)
• Offline use (localStorage)
• Avoid spaghetti code:
• If your UI state does not fit the server schema, override parse()
and save()
• Use the models as the state of your views
• Isolate client-server communication to models and collections
• If you ever plan to reuse your models, fix your schema and don‟t
hard-code your URLs
17. Handling Views (DOM)
• Usually your sequence is as simple as:
1.Update model triggers change in views
2.Refresh views (render) render template apply into DOM
3.Notify the other views (if for some reason they cannot listen to the
same model)
18. Handling Views (DOM)
• Avoid spaghetti code
• Backbone expects to keep Models and Views in sync
• A view should only alter the parts of DOM it owns
• A view should not call directly other views than its children
• Use the event binding facilities offered by framework
(e.g. Backbone.view.events: {})
• A few jQuery calls to alter a subset of DOM is more code and more
expensive than replacing the same subset by a template
Always drive your view changes through your model
Use events for messaging between the application parts
Use templates; usually it is ok to render the view again
19. Page Rendering – Templates
• Easier way of creating a bunch of HTML elements
• Inject HTML into DOM using $.html()
• The principle is the same in server-side: call template
with the parameters as data-object to get HTML
Samples: Handlebars, Dust.js, EJS, Google Closure
Templates
See: LinkedIn comparison of template engines
20. Summary
• SPA ~ MV(C) Pattern ~ Server API driven app
• A toolbelt of a JS framework and supplementary libraries
• Still fairly new paradigm, not in wide use yet
• Good complement to your existing web site
• Mobile/Hybrid app
• May replace your existing site when solving the crawling
issue
21. Further Reading
• HTML5 sovellusalustana (a book by Pyry L & Jukka K)
http://www.julkaisija.fi/yleista/html5.php
• Developing Backbone.js Applications (a CC book by Addy Osmani)
https://github.com/addyosmani/backbone-fundamentals
• HTML5 Rocks as a vault of information
http://www.html5rocks.com/en/
• A catalogue of JavaScript libraries to choose among
http://www.jsdb.io/
22. Thank you !
Lauri Svan
Software Architect, SC5 Online Ltd
https://github.com/laurisvan
https://twitter.com/laurisvan
HTML5 expertise at your service
Editor's Notes
Please keep your eye on notes – some slides contain a lot of good extra insight!
“App-like user experience”Touch navigationInstant response to your clicksFluid transitions between pagesCached & pre-fetched contentBinding to your own (or 3rd party) RESTful APIEase of populating modelsReplacement for Flash or Java in your web pagese.g. FlipBoard, LinkedIn iPadHybrid (native) HTML5 applicationse.g. FlipBoard, LinkedIn iPadApache Cordova, Embedded WebViews, Tizen, Windows 8Mobile version of your web sitem.veikkaus.fi, plus.hbl.fi, app.ft.com
Note: Ease of development = (design, implementation, testing, maintenance)Testing and maintenance are the hard partsServer-sideThe good old way; write that server-side templateDevelopment: There are dozens of FWs for every major language for thisHow to deal with user state? Store on cookie; Store on session memory clustering?Selenium will test your site alrightUX: How to get that app-like experience with 500ms clicks? Transitions? Animations?Robots: No problem if you usecanonicalurls & pagesthemselvesdon’trequireuserstateServer-side + AJAXDevelopment: The problem is in transmitting the UI state & synchronize it in both ends;The simple test: Click refresh on an AJAX page – did you get what you expected?How did you plan to test your system after all? What does your API look like?Spaghetti architectureUX: Can be made fast & responsive, but it’s tedious.Robots: If you’ve got even a single bit that is rendered on client side only, I’m sorry.PJAXDevelopment: The concept is very simple but I’m not aware of any widely used, ready-made frameworks for itBold attempts: https://github.com/defunkt/jquery-pjax, https://github.com/rails/turbolinksNo idea on how to automate testing on itUX: The pages can be pretty fast, but likely the future states are not anticipated & cacheable (like in SPAs)Robots: Twitter actually did SPA before and moved back to PJAX (I believe they missed the searchability too much)SPADevelopment: Clean model (most of the FWs use MVC model, and the future content can be fetched within model without affecting the current view)Usually server-side API is RESTful & clean and hence can be tested easily; testing the client UI is a bit so-soUX: Can have all the bells and whistlesRobots & old browsers: Test for Google (likely won’t work), other crawlers won’t work; IE7/8 and feature phone browsers will cause headacheSPA is not always the only choice, there are reasons for other choices, tooWhy Twitter went back SPA to PJAX:http://engineering.twitter.com/2012/05/improving-performance-on-twittercom.html
In the end, all of the frameworks do the same thing. There is no need to switch between them on-project basis (learning always takes some time)Backbone: Simple MVC model, only ~ 800 LOC. Your grandmother would get it. No data bindings built in.Angular.js: “What DOM should have been”. Sophisticated data binding with DOM and your JavaScript model.Knockout: One of the earliest frameworks. Data binding with some enforcements on your coding styleEmber: The biggest framework (by LOC). Very object-oriented (you will drift away from DOM)
Utility toolbelts:jQuery: The de-facto DOM manipulation libraryUnderscore.js: Object and Array manipulationClient-side templating engines:Handlebars: Simple templating language that does not break HTMLDust.js: Feature-rich templating language (partials, streaming etc.)ModularizationRequire.js: Module framework for JavaScriptLESS and SASS: Stylesheet languages done rightBrowser compatibilityModernizr: HTML5 and CSS3 feature detectionUI Widget FrameworksBootstrap: Customizable UI widgetsjQuery Mobile: ThemableiOS like widgets for mobile UisBuilding & Test AutomationGrunt: JavaScript/Node.js based build systemJasmine: Behavior-driven test framework; works for TDD-style processQUnit: JavaScript unit testing framework developed by jQuery communityServer APIs made easy:Node.js: JavaScript server-side stack; great for quick no nonsense API servers;express.js: Web application framework for Node.jsApplication BoilerplatesYeoman: An ambitious, grunt-based boilerplate creation utility servers;Backbone boilerplate: Simple creation of Backbone based appsHTML Boilerplates & CSS Grids320andup: Responsive boilerplate with special emphasis on mobileHTML5 Boilerplate: The classic HTML5 app structureSemantic.gs: Easy an customizable CSS grid systemPackaging into a native app:Apache Cordova: ex. PhoneGap; packaging as a hybrid app for multi-platform
Browser controls:Back/ForwardReloadBookmarkingSome samples on handling URL rewriteshttp://www.josscrowcroft.com/2012/code/htaccess-for-html5-history-pushstate-url-routing/
In most of the cases the flat model is ok, because you don’t want to display multiple levels of hierarchy in a single page/viewYou can extend Backbone to support deeper structures, you will need it if you want to avoid making multiple server queriesIf your structure is static, your Collection can nest other Collections as children (AFAIK Collections can’t have Collections in place of Models)You need to write a custom parse() that will notify your child collections abIt’s complicated…Backbone has a fundamental flaw in blocking input validation:In most of the cases, the user input (e.g. for text) is invalid; Backbone blocks that. The workaround is to
For better real-time communications support, see socket.io
When using Angular, you don’t need to do a single thing to map your model changes back to DOM
Note: In most of the cases you would just want to re-render the view (unless it owns the whole DOM) for changing the state in the UI.Exception cases:You have an input form and you don’t want to lose focusYour DOM subset is huge (e.g. a whole list of a few hundred items)Some highly interactive things like sliders
Each template engine works the same wayCompile the template into JavaScript function JavaScript functionCall with parameters HTML stringApply the string into DOM -> DOM elementsAngular is different in this regard, as the “templates” are readily as part of DOM and the manipulation happens on DOM level, not HTML levelIn basic use, comparing engines is almost pointless - pick one and stick to itSome things you might want to look for if you have a fancy application & complex templatesLocalisationTemplate inheritance (when you have a lot of redundant pages)Streaming (especially if you use the same template engine on server-side)