The document discusses the state of jQuery and the jQuery Foundation. It provides an overview of the non-profit jQuery Foundation organization and its projects. It also summarizes the jQuery team's initiatives and contributors from around the world. The document outlines the plans for future versions of jQuery, including jQuery 1.11/2.1, and discusses strategies and tools for web performance and browser compatibility.
Talk about different experiences related with mobile web and the android webview. Native vs Hybrid. Drawbacks and benefits of native and hybrid applications
The document discusses issues with code compilation and building JavaScript files for web pages. Combining all JavaScript into one large file or grouping files based on pages leads to unused code being loaded. A better approach is to load only necessary JavaScript on page load and then asynchronously load additional JavaScript files on demand when features are used.
What's this jQuery? Where it came from, and how it will drive innovationMarakana Inc.
In this talk jQuery Project Team member, Johnathan Sharp, sets out to answer four main questions: Where'd jQuery Come from?, Why is it so popular? How has it changed development? How will it drive innovation?
**see the video at http://marakana.com/f/211 **
In the scope of his talk Johnathan also touches on:
- What jQuery is not
- Core concepts to understand before jumping into jQuery (CSS & Selectors, DOM, Events, JavaScript patterns, etc)
- jQuery core, and jQuery project plugins
- The larger jQuery Project including the jQuery core, jQuery UI, and jQuery mobile
- jQuery going forward (HTML5, mobile browser support, official Plugins, growing corporate support services)
Finally, Johnathan will dig deep into a few code demos to illustrate some of the core concepts of jQuery, like events, JavaScript patterns, and making Ajax requests.
JavaScript in Universal Windows Platform appsTimmy Kokke
I recently gave a presentation about using JavaScript in Universal Windows Platform apps. In combination with WinJS, AngularJS and Knockout JS. I explain how UWP apps work, how to build hosted web apps and how to write apps using the three frameworks.
The document discusses improving mobile web performance. It notes that mobile is different than desktop due to limitations in power, memory, battery and connections on mobile devices. Sites are growing larger in size which slows performance, and users strongly prefer faster loading sites. A variety of tools can measure performance, and waterfalls charts show where time is spent loading pages between the server and client. Optimizations discussed include enabling caching, compression, image resizing, lazy loading images, inlining images and scripts where possible, minifying assets, and delivering scripts and styles in a single HTTP request through techniques like application caching.
One of the great promises of HTML5 is that you can create software that runs everywhere. In many ways, HTML5 lives-up to this promise, but as with any evolving standard, support across different browsers and devices is inconsistent. To effectively adopt HTML5 today, developers must master the skills that fill-in the gaps and minimize the differences between HTML5 runtimes. In this session, you will learn the essential techniques needed to create HTML5 sites and apps that truly work everywhere.
You will learn:
• Learn four strategies for adopting HTML5
• Analyze the impact browsers have on HTML5 readiness & adoption
• Explore new HTML5 features and techniques for using in older browsers
1. The document discusses several popular JavaScript frameworks including AngularJS, Node.js, Agility.js, and Backbone.js. It provides overviews of each framework and their architectures.
2. AngularJS is an open-source framework maintained by Google that assists with single-page applications. Node.js is a platform for scalable server-side applications. Agility.js is a lightweight MVC library, and Backbone.js helps organize code for single-page apps.
3. Each framework has advantages like reusability, testability and being lightweight, though some have disadvantages like learning curves or added complexity. The document provides examples of applications that use each framework.
The MEAN stack allows you to build fast, responsive, and maintainable full-stack websites using JavaScript. The stack uses four innovative frameworks: MongoDB for rapid data access, Express for simplified web development, Angular for componentized and fluid UI, and Node for speed.
Not sure if the MEAN stack is for you? Then come to this free warm-up session. We give you a quick tour of all of the pieces of the stack. How to get you machine ready. And show you what it is like to build a site using it.
This session is for both front and backend developers. We'll show you how JavaScript, the world's most ubiquitous language, can help you to master the web.
Angular: Go Mobile!
How could you develop a mobile app across iOS, Android or windows devices? We’ll show how Apache Cordova opens the world of mobile app development to web developers. In the session, a “To Do” app using Angular will be explored and then it will be demonstrated step by step on how to turn it into a mobile app, with access to native device capabilities. Along the way, you'll also learn what kind of apps are best-suited for the hybrid architecture and when to make the switch from web app to mobile app.
Engage 2015 - 10 Mistakes You and Every XPages Developer Make. Yes, I said YOU!Serdar Basegmez
The document discusses common mistakes made by XPages developers, including issues with component trees, view and page states, browser-server interaction, the <xp:repeat> component, dialogs, and custom controls. It provides explanations and examples to illustrate key concepts in XPages development and help avoid common problems.
The document provides an overview of the modern JavaScript ecosystem. It discusses the main execution environments (browsers, Node.js, io.js), web servers (Express, Hapi, Koa), package managers (NPM, Bower), task runners (Grunt, Gulp, Broccoli), front-end frameworks (jQuery, Backbone, Angular, Ember, React), module systems (AMD, CommonJS, ES6 modules), and JavaScript flavors/transpilers (CoffeeScript, TypeScript, Dart, ES6). It also outlines the typical development workflow from writing code to compilation/packaging to deployment on a web server to usage in a browser.
Best Practices in SharePoint Development - Just Freakin Work! Overcoming Hurd...Geoff Varosky
Abstract: “Why am I getting a security error??” “Why does my code work sometimes, but not others?” “I wonder if McDonalds is hiring.” Writing custom code in SharePoint opens up unlimited possibilities but also throws many hurdles in your way that will slow you down if you don’t take them into account. So, before giving up and searching for careers in the fast food industry, equip yourself with the knowledge you need to succeed in writing custom code for SharePoint.
The document discusses various front-end frameworks for responsive web design. It provides an overview of popular frameworks like Bootstrap, Foundation, Semantic-UI, Pure, Skeleton, Materialize, Material UI, UI Kit, Milligram and Susy. For each framework, it lists key pros and cons, current version, date created, supported browsers and other details. The document encourages readers to learn more about front-end frameworks from blogs and free online resources on the given website.
In this presentation Lou Crocker, Senior Sales Engineer at Sencha and John Ferguson, Sr. Field Engineer at Pivotal, build a Twitter search app using Sencha and Spring frameworks.
Better Page Object Handling with Loadable Component PatternSargis Sargsyan
This document discusses using the Loadable Component pattern to improve page object handling in Selenium tests. It introduces the LoadableComponent and SlowLoadableComponent classes, which are designed to make page objects less brittle by ensuring pages are fully loaded before interacting with elements. This approach reduces boilerplate code and makes tests easier to maintain. The document also covers common failures like brittle tests, not building a framework properly, and not using explicit waits, as well as tips for continuous integration of automated tests.
[Slides from my 'Edge of the Web' workshop]
The web platform has evolved significantly over the last several years, giving developers more power than ever to create rich, interactive applications delivered via browsers. New capabilities in HTML, CSS and JavaScript paired with constantly updating browsers make it possible to do things on the web that used to be the exclusive domain of plugins and native apps. In this workshop, you’ll be introduced to some of the most powerful and useful techniques available to the modern web developer that will change the way you think about web app development.
The future of web app development is exciting, and these are the technologies that will underpin and drive that change. Don’t get left behind with IE8-era knowledge. Get ahead of the curve and master the edge of the web.
This talk was presented at VodQA Gurgaon 3rd edition (11 July 2013)
Talk Abstract:
In midst of testing functional aspect of your mobile apps, performance testing is often ignored or takes a back seat. With the strict quality checks on app stores and other platforms, it becomes all the more essentials for your app to meet performance criteria. We would be focusing on understanding these criteria in detail, their impact and ways to tackle them.
Speakers:
Rupesh Dubey: Rupesh has 5+ years of experience in Test Automation and Manual testing and have been with ThoughtWorks for more than 3 years. He has worked in various domains including HealthCare and Business Consulting.
Priyank Dhillon: He has around 8 years of experience as QA. He has worked on domains such as Telecom, Video and E-commerce and has been involved in different aspects of testing such as Security, White box, Performance. He has worked in software automation testing using wide range of automation tools, doing manual testing and in requirement analysis.
Single Page Applications - Desert Code Camp 2012Adam Mokan
Slides from my presentation on Single-Page Applications at Desert Code Camp 2012.
The event was held on November 17th, 2012 at Chandler-Gilbert Community College.
http://nov2012.desertcodecamp.com/session/565
Presented at Web Unleashed 2017. More info at www.fitc.ca/webu
Presented by Alexander Blom, Isle of Code
Overview
Adding animations to web and hybrid apps can be challenging. Aside from choosing technique, you are often left with jank and less than desirable performance.
Objective
Audience members will leave with a better understanding of animation performance & pitfalls desktop and mobile context.
Target Audience
Web/Hybrid developers looking to improve animation performance.
Assumed Audience Knowledge
Basic JS/CSS assumed
Six Things Audience Members Will Learn
What are my choices when needing to animate?
What changes in a mobile context?
What are the tradeoffs and how do I decide?
What are the common pitfalls?
How do I debug performance problems?
Getting a smooth animation.
This talk recaps some features and practices that are best to avoid in good jQuery pages and apps. Following these rules will improve performance and maintainability, and may prevent your co-workers from coming after you with sharp objects.
This document discusses jQuery and web performance. It begins by noting that Internet Explorer 6 is now dead, and Internet Explorer 7 and 8 are the new baselines for older applications. It then discusses various aspects of web performance, including how browsers load pages, techniques for improving performance like prefetching and avoiding forced layouts, and tools for profiling performance like developer tools and webpagetest.org. It provides an example of optimizing infinite scrolling by having JavaScript only handle new items rather than doing full page layouts. The document advocates measuring performance before optimizing and using developer tools to find hot spots in JavaScript.
jQuery Conference Chicago - September 2014dmethvin
The jQuery Foundation ensures the continued development of jQuery by coordinating contributions from its members. It aims to establish jQuery and web standards to allow web development as a first-class platform across browsers and devices. Major supporters of the Foundation include jQuery itself along with companies utilizing jQuery in their products and services.
PrairieDevCon 2014 - Web Doesn't Mean Slowdmethvin
Web sites can be fast and responsive once you understand the process web browsers use to load and run web pages. We'll look at using tools like WebPageTest to analyze and optimize web pages.
Transforming Front-End Disaster Code™ Into A Maintainable MasterpieceDan Gribbin
This document summarizes strategies for transforming unmaintainable front-end code ("Disaster CodeTM") into organized, high-quality code through proper planning, separation of concerns, performance optimization, and stakeholder communication. It outlines how the author's team improved their codebase ("Neptune") by adopting modular patterns like MVC, optimizing page load times, and collaborating on standards. The document stresses that upfront planning, separation of functionality, and ongoing maintenance are crucial to developing software that is sustainable, performant, and a pleasure to work with.
jQuery Conference San Diego 2014 - Web Performancedmethvin
This document discusses jQuery and web performance. It describes how the jQuery Foundation maintains jQuery code and supports developers. It then discusses recent jQuery releases and how jQuery can be customized and used in different environments. The document outlines how the browser loads pages and the importance of prefetching resources. It recommends tools for analyzing page performance like YSlow, PageSpeed, and webpagetest.org. It provides tips for improving performance such as avoiding unnecessary layouts, optimizing JavaScript loops, and using developer tools to profile scripts and identify bottlenecks.
The jQuery Foundation coordinates work on the jQuery project, including code, documentation, infrastructure, and events. It is a non-profit organization funded by conferences, donations, and memberships. The Foundation maintains jQuery and related projects like jQuery UI, jQuery Mobile, and QUnit on GitHub. jQuery 1.x continues to support older browsers while jQuery 2.x supports modern browsers, with both versions maintaining API compatibility. Major releases in 2012 included jQuery 1.9 in January and jQuery 2.0 in April.
The document summarizes the state of jQuery in 2013. It discusses the creation of the jQuery Foundation in 2012 to coordinate work on jQuery and related projects. It outlines major changes between jQuery 1.9 and 2.0, including dropping support for older browsers and APIs. It emphasizes that jQuery 1.9 remains suitable for most public websites, while 2.0 is better suited for newer environments. The document encourages developers to test alpha and beta versions to help improve jQuery.
jQuery released new versions 1.4.3 and 1.4.4 with improvements to modularity, CSS, performance, and support for HTML5 data attributes. A JSLint tool was integrated to improve code quality. jQuery Mobile was introduced as a new official plugin to build websites and applications for multiple mobile platforms using progressive enhancement. Testing strategies were discussed including using simulators, TestSwarm for automation, and drawing a line to determine which browsers to support.
The document summarizes information about the jQuery Foundation. It discusses that the Foundation coordinates work on the jQuery code, documentation, infrastructure and events. It is a non-profit organization funded through conferences, donations and memberships. The Foundation supports jQuery projects and web developers, and participates in standards processes. Upcoming releases of jQuery will be published on Bower and npm for dependency management, use AMD internally, defer feature detects, and aim to reduce forced layouts to improve performance. Developers are encouraged to understand how browsers work and avoid patterns that can cause layout thrashing.
jQuery: The World's Most Popular JavaScript Library Comes to XPagesTeamstudio
Whether you want to add some serious eye candy to your XPages Applications or just want to do more with less code, jQuery, the world’s most popular JavaScript framework can help you. Come to this webinar and find out how you can use some of the thousands of jQuery plugins, in harmony with Dojo, within your XPages applications to create a better experience not only for your users, but for you as a developer. In this webinar, we'll look at how jQuery works, how to add it to your XPages, and how a complete JavaScript beginner can take advantage of its power. We'll demonstrate many working examples -- and a sample database will be provided.
This document provides an overview and comparison of WinJS and PhoneGap for developing Windows Store apps. It discusses the key components of WinJS like controls, layouts, animations and styling. It also explains how PhoneGap allows developing Windows Store apps using web technologies by providing access to native device APIs via a native web view. While WinJS and PhoneGap differ in their APIs, the document emphasizes they can both be used to create valid Windows Store apps and developers should choose based on preference and code portability needs. It encourages mixing frameworks freely as long as platform guidelines are followed.
JavaScript has a well deserved reputation of be hard to write and debug. Put it on a mobile device and the problems increase exponentially. Mobile browsers lack all of the niceties that developers rely on to do testing and debugging including the most fundamental tool, the debugger. But it is possible to write quality JavaScript on a mobile device without relying on blind luck. In this talk I will show all of the tools and tricks that I learned in my 12 month development of the new KBB.com mobile site.
PhoneGap allows developers to build native mobile apps using web technologies like HTML, CSS, and JavaScript. It works by wrapping web content in a native container on each mobile platform, allowing developers to write code once and deploy it across iOS, Android, BlackBerry, and other platforms. PhoneGap uses a plugin architecture that enables accessing native device APIs like the camera, contacts, and geolocation from JavaScript. It supports many mobile browsers and platforms, while providing tools for compiling, debugging, and deploying apps.
Does This Theme Make My Website Look Fat? (Wordcamp SLC 2013)Adam Dunford
While the principles of responsive web design can make sites look better on mobile devices, they don’t necessarily load faster than a site designed for desktops. And as more and more sophisticated WordPress themes emerge, with their multiple options and fancy sliders, websites just keep getting more and more bloated.
This presentation will help cut out the junk that’s larding up your sites so you can better meet the demand of users wanting fast-loading user experiences–no matter the device or connection.
Presented at WordCamp Salt Lake City 2013 (http://2013.slc.wordcamp.org/)
Building Mobile Web Apps with jQM and Cordova on AzureBrian Lyttle
This document provides an overview of building mobile web apps with jQuery Mobile (jQM) and Apache Cordova on the Microsoft Azure platform. It discusses:
- Using Azure for hosting, data storage, and backend services for mobile apps
- Choosing jQM for the frontend framework due to its ease of use and integration with third party libraries
- Common issues encountered like data access across domains and debugging tools
- Packaging the app into a native format for iOS and Android using Cordova
- Tips for caching, maps integration, and avoiding duplicate event handling code
Discover the power of browser developer toolsylefebvre
This document summarizes a WordCamp Montreal 2015 workshop about using browser developer tools. The workshop covers what developer tools are, how to use them to troubleshoot CSS issues like element styling and positioning, preview mobile device views and load times, debug Javascript, validate AJAX requests, and general tips. The speaker is an experienced WordPress plugin author who commonly helps with styling, layout, and debugging questions. Live demos are included to show how developer tools can resolve common plugin and theme developer questions.
Getting started with Vue.js - CodeMash 2020Burton Smith
This document provides an overview and introduction to getting started with the Vue.js framework. It discusses why one might choose Vue over other frameworks, the key components of Vue like Vue, Vue-Router, and Vuex. It also covers the basics of Vue including component-driven architecture, templates, props, events, and routing. The document concludes with challenges and examples to help get users up and running with Vue today.
DIGIT Noe 2016 - Overview of front end development todayBojan Veljanovski
This document provides an overview of front-end development approaches, including traditional server-side rendering and modern single-page applications (SPAs). It discusses the evolution from traditional to SPA approaches, characteristics of SPAs like modularity and client-side rendering, and considerations for choosing between server-side and client-side solutions. The document also showcases GitHub.com and the Azure Portal as examples of applications that take hybrid approaches, with some modules behaving as traditional sites and others as fully-fledged SPAs.
The document outlines a summer training presentation for a Disney Plus Hotstar clone project using HTML, CSS, and JavaScript. It includes an introduction to key topics like web programming, HTML, CSS, JavaScript, and GitHub. It then describes the Disney Plus Hotstar clone project, which recreates the website homepage using a navbar, search box, sliding content carousel, movie cards with hover effects, and video playback on hover. The document concludes with references used in the project research.
Staying connected: An Overview of Announcements from Microsoft’s Connect();dotNet Miami
On November 12th and 13th, Microsoft held a virtual developer event called Connect();. We'll review all of the highlights from the event and the surprising announcements that were made. And because I'm giving the presentation I'll also give my own unique view on the event.
Microsoft power point automation-opensourcetestingtools_matrix-1tactqa
The document provides an overview of open source automation tools that can be used at RSA, including JSYSTEM, Selenium, BadBoy, AutoIT, FIT, FitNesse, and JEMMY. It discusses the challenges of automation, how the tools address issues like time consumption and reliability. It then introduces each tool, covering what it is used for and how it works. The document also discusses how the tools can work together, the automation life cycle at RSA, and provides a demo of some of the tools in action.
Similar to State of jQuery - AspDotNetStorefront Conference (20)
INDIAN AIR FORCE FIGHTER PLANES LIST.pdfjackson110191
These fighter aircraft have uses outside of traditional combat situations. They are essential in defending India's territorial integrity, averting dangers, and delivering aid to those in need during natural calamities. Additionally, the IAF improves its interoperability and fortifies international military alliances by working together and conducting joint exercises with other air forces.
Coordinate Systems in FME 101 - Webinar SlidesSafe Software
If you’ve ever had to analyze a map or GPS data, chances are you’ve encountered and even worked with coordinate systems. As historical data continually updates through GPS, understanding coordinate systems is increasingly crucial. However, not everyone knows why they exist or how to effectively use them for data-driven insights.
During this webinar, you’ll learn exactly what coordinate systems are and how you can use FME to maintain and transform your data’s coordinate systems in an easy-to-digest way, accurately representing the geographical space that it exists within. During this webinar, you will have the chance to:
- Enhance Your Understanding: Gain a clear overview of what coordinate systems are and their value
- Learn Practical Applications: Why we need datams and projections, plus units between coordinate systems
- Maximize with FME: Understand how FME handles coordinate systems, including a brief summary of the 3 main reprojectors
- Custom Coordinate Systems: Learn how to work with FME and coordinate systems beyond what is natively supported
- Look Ahead: Gain insights into where FME is headed with coordinate systems in the future
Don’t miss the opportunity to improve the value you receive from your coordinate system data, ultimately allowing you to streamline your data analysis and maximize your time. See you there!
Support en anglais diffusé lors de l'événement 100% IA organisé dans les locaux parisiens d'Iguane Solutions, le mardi 2 juillet 2024 :
- Présentation de notre plateforme IA plug and play : ses fonctionnalités avancées, telles que son interface utilisateur intuitive, son copilot puissant et des outils de monitoring performants.
- REX client : Cyril Janssens, CTO d’ easybourse, partage son expérience d’utilisation de notre plateforme IA plug & play.
Quality Patents: Patents That Stand the Test of TimeAurora Consulting
Is your patent a vanity piece of paper for your office wall? Or is it a reliable, defendable, assertable, property right? The difference is often quality.
Is your patent simply a transactional cost and a large pile of legal bills for your startup? Or is it a leverageable asset worthy of attracting precious investment dollars, worth its cost in multiples of valuation? The difference is often quality.
Is your patent application only good enough to get through the examination process? Or has it been crafted to stand the tests of time and varied audiences if you later need to assert that document against an infringer, find yourself litigating with it in an Article 3 Court at the hands of a judge and jury, God forbid, end up having to defend its validity at the PTAB, or even needing to use it to block pirated imports at the International Trade Commission? The difference is often quality.
Quality will be our focus for a good chunk of the remainder of this season. What goes into a quality patent, and where possible, how do you get it without breaking the bank?
** Episode Overview **
In this first episode of our quality series, Kristen Hansen and the panel discuss:
⦿ What do we mean when we say patent quality?
⦿ Why is patent quality important?
⦿ How to balance quality and budget
⦿ The importance of searching, continuations, and draftsperson domain expertise
⦿ Very practical tips, tricks, examples, and Kristen’s Musts for drafting quality applications
https://www.aurorapatents.com/patently-strategic-podcast.html
The Rise of Supernetwork Data Intensive ComputingLarry Smarr
Invited Remote Lecture to SC21
The International Conference for High Performance Computing, Networking, Storage, and Analysis
St. Louis, Missouri
November 18, 2021
Implementations of Fused Deposition Modeling in real worldEmerging Tech
The presentation showcases the diverse real-world applications of Fused Deposition Modeling (FDM) across multiple industries:
1. **Manufacturing**: FDM is utilized in manufacturing for rapid prototyping, creating custom tools and fixtures, and producing functional end-use parts. Companies leverage its cost-effectiveness and flexibility to streamline production processes.
2. **Medical**: In the medical field, FDM is used to create patient-specific anatomical models, surgical guides, and prosthetics. Its ability to produce precise and biocompatible parts supports advancements in personalized healthcare solutions.
3. **Education**: FDM plays a crucial role in education by enabling students to learn about design and engineering through hands-on 3D printing projects. It promotes innovation and practical skill development in STEM disciplines.
4. **Science**: Researchers use FDM to prototype equipment for scientific experiments, build custom laboratory tools, and create models for visualization and testing purposes. It facilitates rapid iteration and customization in scientific endeavors.
5. **Automotive**: Automotive manufacturers employ FDM for prototyping vehicle components, tooling for assembly lines, and customized parts. It speeds up the design validation process and enhances efficiency in automotive engineering.
6. **Consumer Electronics**: FDM is utilized in consumer electronics for designing and prototyping product enclosures, casings, and internal components. It enables rapid iteration and customization to meet evolving consumer demands.
7. **Robotics**: Robotics engineers leverage FDM to prototype robot parts, create lightweight and durable components, and customize robot designs for specific applications. It supports innovation and optimization in robotic systems.
8. **Aerospace**: In aerospace, FDM is used to manufacture lightweight parts, complex geometries, and prototypes of aircraft components. It contributes to cost reduction, faster production cycles, and weight savings in aerospace engineering.
9. **Architecture**: Architects utilize FDM for creating detailed architectural models, prototypes of building components, and intricate designs. It aids in visualizing concepts, testing structural integrity, and communicating design ideas effectively.
Each industry example demonstrates how FDM enhances innovation, accelerates product development, and addresses specific challenges through advanced manufacturing capabilities.
How Social Media Hackers Help You to See Your Wife's Message.pdfHackersList
In the modern digital era, social media platforms have become integral to our daily lives. These platforms, including Facebook, Instagram, WhatsApp, and Snapchat, offer countless ways to connect, share, and communicate.
Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Em...Erasmo Purificato
Slide of the tutorial entitled "Paradigm Shifts in User Modeling: A Journey from Historical Foundations to Emerging Trends" held at UMAP'24: 32nd ACM Conference on User Modeling, Adaptation and Personalization (July 1, 2024 | Cagliari, Italy)
An invited talk given by Mark Billinghurst on Research Directions for Cross Reality Interfaces. This was given on July 2nd 2024 as part of the 2024 Summer School on Cross Reality in Hagenberg, Austria (July 1st - 7th)
Understanding Insider Security Threats: Types, Examples, Effects, and Mitigat...Bert Blevins
Today’s digitally connected world presents a wide range of security challenges for enterprises. Insider security threats are particularly noteworthy because they have the potential to cause significant harm. Unlike external threats, insider risks originate from within the company, making them more subtle and challenging to identify. This blog aims to provide a comprehensive understanding of insider security threats, including their types, examples, effects, and mitigation techniques.
Details of description part II: Describing images in practice - Tech Forum 2024BookNet Canada
This presentation explores the practical application of image description techniques. Familiar guidelines will be demonstrated in practice, and descriptions will be developed “live”! If you have learned a lot about the theory of image description techniques but want to feel more confident putting them into practice, this is the presentation for you. There will be useful, actionable information for everyone, whether you are working with authors, colleagues, alone, or leveraging AI as a collaborator.
Link to presentation recording and transcript: https://bnctechforum.ca/sessions/details-of-description-part-ii-describing-images-in-practice/
Presented by BookNet Canada on June 25, 2024, with support from the Department of Canadian Heritage.
7 Most Powerful Solar Storms in the History of Earth.pdfEnterprise Wired
Solar Storms (Geo Magnetic Storms) are the motion of accelerated charged particles in the solar environment with high velocities due to the coronal mass ejection (CME).
4. The jQuery Foundation Is...
• A non-profit organization
• Funded by
o Conferences
o Donations
o Personal and Corporate Memberships
http://jquery.org/join
5. jQuery Foundation Projects
• http://github.com/jquery
• jQuery Core, UI, Mobile
• Sizzle selector engine
• QUnit unit test framework
• jQuery Migrate plugin
• TestSwarm CI testing
• Documentation
6. jQuery Foundation Initiatives
●
●
●
●
●
Support jQuery development
Support web developers
Support web standards
Advocate for developer needs
Participate in standards process
○ W3C
○ ECMA 262 (JavaScript)
7. jQuery Team - World Wide
Not shown: Brazil, Australia
15. The jQuery Core Plan
• jQuery 1.x vs. 2.x
o jQuery 1.x still supports IE 6/7/8
o jQuery 2.x supports modern browsers
o Both are maintained by the team
o Deprecated features removed
Still supported jQuery Migrate
o Same API
16. We're Ready to Ship!
• Released jQuery 1.9 in January
• Released jQuery 2.0 in April
17. What We Learned (the Hard
Way)
are using "latest"
versions in live sites!
NEVER HOTLINK:
http://code.jquery.com/jquery-latest.js
http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js
19. jQuery Migrate Plugin
• Identifies things your code is doing that
jQuery 1.9+ doesn't support anymore
• Actually makes older code work
• Lets you use newer jQuery with older
code that hasn't been upgraded yet
22. The Moral of the Story
In jQuery, every change is a breaking change for some poor developer.
23. jQuery 1.10
• Relatively minor changes from 1.9
• Brings 1.x into alignment with 2.x line
• Simplifies cross-version comparisons
o 1.10 --> 2.0
o 1.11 --> 2.1
o 1.12 --> 2.2
24. jQuery 2.0 is a good fit for
• Chrome or Firefox plugins
• node.js apps (jsdom)
• Windows 8 Store apps
• PhoneGap / Cordova
• Embedded UIWebKit or WebBrowser
• Intranet applications
AND
• Public web sites that support only
modern browsers (not IE 6/7/8)
25. Which version to use?
• The jQuery team supports both 1.x and
•
2.x; there isn't a problem of using an
"unsupported version"
Since 1.x/2.x APIs are the same, there is
no problem in using 1.x exclusively on a
public web site -- it's recommended
26. jQuery 1.11/2.1: Next Version
• Asynchronous Module Definition
• AMD takes care of internal dependencies
• You can choose the modules to load
• More flexible and granular than previous
custom grunt build process
27. 1.11/2.1: Just-In-Time Detects
● Previously: jQuery runs feature detects
all at once, on page load
○ Impacts page load performance
● Now: Feature detect runs the first time
the feature is used
○ Defers the (layout) impact until needed
28. jQuery 1.11/2.1: Still Simple
• You don't have to use Bower
• You don't have to use npm
• You don't have to use AMD
• Just include from a <script> tag
• You'll still get the performance boost
29. 1.11/2.1: When?
• Beta is out NOW
• Give it a try
• Tell us when you think it's ready
• Which means you have to try it
o http://code.jquery.com/jquery-git1.js
o http://code.jquery.com/jquery-git2.js
31. Why $.browser Deserves To Go
• Based on the unreliable userAgent string
• Often assumes future browsers and
versions will be broken the same way
• Horribly misused and misunderstood
32. Browser Name is Only a BRAND
Opera's future products will be based
on WebKit, not their Presto engine.
34. Disclaimer
•These are general stats collected from a
wide variety of different sites
•Always look at the actual stats for your
sites before making decisions about what
to include or exclude
42. What it All Means
• Desktop is still king
• Chrome ahead, but not massively
• IE share actually grew in 2013
• IE 6/7/8 demise will accelerate
o XP support ends in April 2014
• IE 9+ is on the auto-update path
o But maybe the next business plateau?
43. You Need to Test Multiple IEs
• Emulation is not the real thing
• http://modern.ie
o Free VM images
o Free BrowserStack 3-month subscription
o Free compatibility scan
This is IE11 running in
IE7 emulation -- not
the same thing as IE7!
45. Web Devs Take Note
● jQuery ...
○ simplifies/shortens code
○ hides browser differences
○ doesn't try to hide the browser model
● You still need to Know JavaScript
● You still need to Know the Browser
○ Especially the layout engine
52. Example: Loops and jsperf.com
Slowest looping style still only
takes 1.4 milliseconds to do
100 iterations of a loop!
Simple, straightforward for
loop turns out to be the fastest,
no trickery needed!
53. Know (and Use) Your Tools
● Understand the browser
● Know the components of performance
○ Asset loading
○ Page rendering
○ Script execution
● Learn how to find bottlenecks
● Measure them in your app/page!
54. Plenty of Free Tools and Info
• http://calendar.perfplanet.com
• Webpagetest.org
• YSlow
• Google PageSpeed Insights
• Fiddler
• Built-in browser dev tools
55. Learn to Love the Browser Model
Two heads (threads) are better than one.
56. Most Browser Work is 1 Thread
• Few things happen in other threads
• JavaScript runs on the UI thread
• Don't block the UI thread!
o Long-running scripts
o Synchronous XMLHTTPRequest
o Forced Layouts
57. Make the Most of Parallelism
• Start network requests early
o Use the browser's HTML asset scan
o AJAX before the HTML page is ready
(or generate on the server side)
• Image downloading
• Image decoding
• Web Workers
58. Some Performance Guidelines
● CSS at the top, scripts at the bottom
● Define <img> tags in initial HTML
○ allows speculative fetching
● Non-essential assets after page load
○ "above the fold" should have priority
● Minimize use of $(document).ready()
● Don't make the browser recalc layout
Saw the attendee list, imagine audience as a box of kittens
I am Dave Methvin, President of the jQuery Foundation and also the lead developer of the jQuery Core library. The organizers of the conference wanted to choose a speaker who is known around the world for his expertise in computer technology and has experience in all aspects of data processing. They found an American who would be perfect and he is now here in Russia..
Most of you are familiar with the jQuery JavaScript libraries, but perhaps not as many know about the jQuery Foundation. The Foundation is a non-profit organization founded in March 2012. It coordinates the work that is required to maintain the libraries, documentation, and events surrounding jQuery. Anyone can support the foundation by making a donation or becoming a member.
Most of the jQuery Foundation's work is done on GitHub. That includes both the code and the documentation. Content from our documentation sites is also kept on GitHub, and the sites themselves are driven through WordPress using server and bandwidth resources donated by Media Temple.
However, the jQuery Foundation does much more than just maintain code and documentation for the JavaScript libraries. We support and advocate for the needs of web developers worldwide. Organizations such as the W3C and ECMA create the standards that we all use, but they are primarily controlled by the large companies that make web browsers and platforms. The jQuery Foundation provides a voice for developers in this process.
And the jQuery Foundation is truly a worldwide organization. We are proud to have team members contributing from all over the globe, including Russia. We have landed pull requests from contributors on every continent except for Antartica. We are very disappointed in Antartica.
We are always looking for new people to help with the work that needs to be done. If you are interested, go to contribute.jquery.org.
If you want some evidence of jQuery's popularity, go to builtwith.com. Right now the library is used by more than two-thirds of the top 10,000 web sites.
I am proud of the way our team has made the library smaller, faster, and more reliable over the past few years. We have very few new bugs being reported.
At the beginning of this year, the Core team released jQuery 1.9. A few months later, we released jQuery 2.0. Both versions clean up the API, removing things that are considered very bad development practices like browser sniffing. Both versions are being supported, and they have the same API. The only difference is that the 1.x versions support Internet Explorer 6, 7, and 8.
The team understands that there is a lot of older jQuery code that may break when version 1.9 or 2.0 is used. That is why we created the jQuery Migrate plugin. In most cases you just need to add this plugin to your older project to get it to work. But the jQuery Migrate plugin also generates console messages that help you find and fix the problems in the code. We do not recommend it as a permanent compatibility crutch, but instead as a diagnostic tool for your web sites.
We are currently working on a new version of jQuery that uses AMD internally. It provides much finer control over what can be included or excluded from a custom build. This is especially useful for web applications. Although both branches of jQuery support this feature, users of the 2.1 branch will probably find it to be the most useful.
We also took a fresh look at performance for this upcoming version. Feature detection is the right way to apply browser-specific patches, but in previous versions we ran all of those tests when jQuery loaded. This could cause the page load to be slower than necessary, especially on mobile devices that are slow anyway. Now we only run the feature detects the first time the functionality is needed. If your code doesn't ever use a method such as .offset(), you will never need pay the price for its feature detection.
With all these changes to the way jQuery is built, we still wanted to keep things simple for the average web developer. Yes, we will be supporting a lot of new things, but jQuery will still be available from the standard CDNs as a single file, included by a script tag. And, you will still get the performance benefits that we provide, since the new code will wait for the first use to do feature detection.
We released the first beta of jQuery 1.11 and 2.1 last month. Please do go and try it, and let us know if you have any problems. Nothing saddens us more than having a long beta period where we give developers a chance to try the code, and getting several bug reports the first day of the final release.
Perhaps you're wondering how long we'll need to support jQuery 1.x, and of course that depends on how long IE 6/7/8 hang around. So let's look at browser trends over the past year, to see where things might be headed.
Programmers coming from native client development world, or from server environments, often see the browser as if it were a runtime library of methods they call to get something done. That is, their JavaScript code is still controlling the browser and it is clearly the most important thing in the system.
But that is not the case at all!
In reality, the browser is doing most of the work. All of those words in red are just a few of the things that the browser takes care of without your JavaScript being involved at all. If you ask it to, the browser will call your code at various times so you can do something. But the browser is running the show.
To make it clear how important JavaScript is to the browser, remember that there are many perfectly good web pages that don't have any JavaScript in them at all. JavaScript is completely optional. When it comes to performance, all you can do is make things worse. :-)
To put it another way, programmers often focus on the wrong things when it comes to performance. They can see that it makes a difference in some benchmark test they create, but they don't realize that in a bigger system the difference is unimportant.
Here is a simple example using jsperf.com to compare several different ways of doing a loop. As you can see, there seem to be significant differences in the performance.
However, even the slowest looping style is incredibly fast for most needs and loop sizes. And it turns out that the simplest method, a for-loop, is the fastest anyway. Worrying about loops like this is a waste of time until it's proven to be the bottleneck. Premature optimization is the root of all evil, but also a waste of your time.
To avoid making things worse, you need to understand how the browser works. In particular, understand the steps a browser takes to load a page and all the assets such as images, CSS, scripts, frames, and the like. When a performance problem does arise, you must understand how to use the browser's tools to find it and fix it.
Let's look at how the browser works. A good way to solve a problem quickly is to get more than one person working on it. We can use a similar strategy to improve the performance of a web page.
Unfortunately, most browser work happens on just one thread, the UI thread. This is the thread responsible for calculating styles, redrawing the screen, and running JavaScript. So, the worst thing you can do for performance is to create more work for this thread to do, with nothing going on in parallel.
Of the things that the browser can do in parallel on other threads, the most common is network requests. When images and scripts are in the HTML of the original page, the browser can "see" and request them very early in the load process. It turns out that modern browsers also use a separate thread to decode images once they are received -- for example, to convert a JPEG file into a bitmap that can be displayed by the graphics processor. Finally, the new Web Workers spec lets you run JavaScript in a separate thread, but it is restricted in what it can do.
The page won't render until the external CSS has been loaded, so put those references in the head of the document near the very top. Scripts in the head will block rendering, so use them sparingly there. The browser will be able to "see" images and other assets in the HTML, so put them there for best performance. Put most scripts at the bottom of the HTML page.