This document summarizes updates made to Internet Explorer 10 in Platform Preview builds. The November 29, 2011 update included improvements to CSS positioning for floats, new syntax for CSS grid repeating, and enhancements to HTML5 video captioning and the File API. This build also added support for typed arrays, CORS for XMLHttpRequests, and the CSS user-select property.
Migrating from MongoDB to Neo4j - Lessons LearnedNick Manning
This month we will learn how to use the (somewhat) new 2.0 branch of Michael Hunger's Batch Importer
We'll also have a concise presentation on our experiences at Shindig Labs when we migrated production MongoDB data into Neo4j.
Specifically:
1. key considerations made when choosing to move to a graph database
2. estimating the effort involved in changing our code
3. our data modeling approach
4. how we exported our data
5. how we used the Batch Importer to import our data (step by step)
Others will be sharing their experiences as well and an open discussion will follow.
Going Native With The OSGi Service Layer - Sascha Zelzermfrancis
OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)
ABSTRACT
OSGi is a dynamic module system for Java, supporting the development of highly modular applications. However, many concepts and design choices in the OSGi specifications are language neutral and can, for example, also be applied to native C++ application development. In fact, a vast amount of applications in many different domains (embedded, desktop, server, distributed, etc.) are still written in native languages like C++, for various reasons. In turn, many of these applications are in need of a light-weight modular architecture, fostering a service oriented design to minimize coupling between components and to maximize their re-usability.
The C++ Micro Services project (http://cppmicroservices.org) is a pure C++ implementation of the OSGi service layer, bringing a dynamic and service oriented framework inspired by OSGi to native application developers. Its scope is similar to the PojoSR project, a Java implementation of the OSGi service layer only. By only implementing the OSGi service layer, the complexity and foot-print of such an implementation is drastically reduced and its usage heavily simplified. Additionally, incrementally modifying an existing project to make use of the OSGi service layer can be viewed as an easy migration path to using a full-blown native OSGi implementation later on.
In this talk, the challenges of mapping the Java OSGi service layer API (based on OSGi R4.3 and Java generics) to an intuitive and easy-to-use C++ API are presented. Further, the properties of the native linkers of the major operating systems (Windows, Linux, MacOS) and how they effectively already implement parts of the OSGi module layer are discussed. These concepts will then be illustrated by looking at how a big C++ toolkit related to medical image processing makes use of the C++ Micro Services project and its OSGi-based service layer implementation. Furthermore, the relationship of the C++ Micro Services project to the recently initiated "Native OSGi" efforts, the related OSGi RFP 156, and other native OSGi implementations like Apache Celix will be discussed.
SPEAKER BIO
Sascha Zelzer studied Theoretical Physics in Austria and has been working with Java and C++ for the last ten years. While working on his Ph.D. at the German Cancer Research Center, he is also deeply involved in developing and maintaining a large C++ software stack primarily focused on medical imaging platforms. His current interests include modularized and distributed systems in C++, especially how to leverage the benefits of OSGi technology in a native environment.
Migrating from MongoDB to Neo4j - Lessons LearnedNick Manning
This month we will learn how to use the (somewhat) new 2.0 branch of Michael Hunger's Batch Importer
We'll also have a concise presentation on our experiences at Shindig Labs when we migrated production MongoDB data into Neo4j.
Specifically:
1. key considerations made when choosing to move to a graph database
2. estimating the effort involved in changing our code
3. our data modeling approach
4. how we exported our data
5. how we used the Batch Importer to import our data (step by step)
Others will be sharing their experiences as well and an open discussion will follow.
Going Native With The OSGi Service Layer - Sascha Zelzermfrancis
OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)
ABSTRACT
OSGi is a dynamic module system for Java, supporting the development of highly modular applications. However, many concepts and design choices in the OSGi specifications are language neutral and can, for example, also be applied to native C++ application development. In fact, a vast amount of applications in many different domains (embedded, desktop, server, distributed, etc.) are still written in native languages like C++, for various reasons. In turn, many of these applications are in need of a light-weight modular architecture, fostering a service oriented design to minimize coupling between components and to maximize their re-usability.
The C++ Micro Services project (http://cppmicroservices.org) is a pure C++ implementation of the OSGi service layer, bringing a dynamic and service oriented framework inspired by OSGi to native application developers. Its scope is similar to the PojoSR project, a Java implementation of the OSGi service layer only. By only implementing the OSGi service layer, the complexity and foot-print of such an implementation is drastically reduced and its usage heavily simplified. Additionally, incrementally modifying an existing project to make use of the OSGi service layer can be viewed as an easy migration path to using a full-blown native OSGi implementation later on.
In this talk, the challenges of mapping the Java OSGi service layer API (based on OSGi R4.3 and Java generics) to an intuitive and easy-to-use C++ API are presented. Further, the properties of the native linkers of the major operating systems (Windows, Linux, MacOS) and how they effectively already implement parts of the OSGi module layer are discussed. These concepts will then be illustrated by looking at how a big C++ toolkit related to medical image processing makes use of the C++ Micro Services project and its OSGi-based service layer implementation. Furthermore, the relationship of the C++ Micro Services project to the recently initiated "Native OSGi" efforts, the related OSGi RFP 156, and other native OSGi implementations like Apache Celix will be discussed.
SPEAKER BIO
Sascha Zelzer studied Theoretical Physics in Austria and has been working with Java and C++ for the last ten years. While working on his Ph.D. at the German Cancer Research Center, he is also deeply involved in developing and maintaining a large C++ software stack primarily focused on medical imaging platforms. His current interests include modularized and distributed systems in C++, especially how to leverage the benefits of OSGi technology in a native environment.
HTML5 introduces significant changes for today\'s websites: new and updated tags, new functionality, better error handling and improved Document Object Model (DOM). However, the HTML5 new features come with new (application) security vulnerabilities. This presentation reviews the new attack vectors, associated risks and what a needs to be taken into consideration when implementing HTML5.
Turbocharge your applications with HTML5 features and its JavaScript APIs. Simplify tasks that weren’t possible previously. Understand how to tap the full potential of HTML5 features in your web applications using: HTML5 features, File API, Video, Location API, Application Cache API, Local Storage API, Animating the User Interface, Web Workers.
AngularJS 1.x - your first application (problems and solutions)Igor Talevski
We will talk about all aspects of building a single page application with AngularJS, and we will discuss real examples from day-to-day work. We will also cover a large amount of theory about general web development, best practices, and today's client demands. We will focus on three (3) main points: architecture, security, and real time notification.
Keynote at COMMitMDE'18 showing the basic concepts behind Hawk, our past case studies, and some of our experience in designing the Hawk Thrift APIs for remote model querying.
With the advent of CSS3 and the ever-greater maturity of HTML5, it’s an exciting time for the Web. The possibilities for creating truly engaging – even addictive – Web and business applications appear limitless. And, with the release of Internet Explorer 9, Microsoft finally came in from the cold after many years in the world wide wilderness.
As Internet Explorer moves towards full support of standards-based HTML5 and CSS3, this is a great opportunity to hear from Martin Beeby about how these key technologies will be used to build and deliver the applications of tomorrow, engage end-users like never before, and generate even greater loyalty to Web-sites.
Join Pantheon co-founder Josh Koenig to learn about decoupled WordPress: what it is, the benefits and pitfalls, and how to approach a decoupled project. Koenig will walk through a decoupled build using the WP-API, and registrants can ask questions after the session.
Code for Startup MVP (Ruby on Rails) Session 1Henry S
First Session on Learning to Code for Startup MVP's using Ruby on Rails.
This session covers the web architecture, Git/GitHub and makes a real rails app that is deployed to Heroku at the end.
Thanks,
Henry
Slides from an HTML5 overview session I presented at work...
This presentation has an accompanying sample webapp project: http://code.google.com/p/html5-playground
SharePoint developers regularly face the decision, where do I put my application’s data? Sometimes this is an easy choice, using SharePoint Lists, or a SQL Server Database, but often a better solution exists. Or at least knowing that alternatives exist is beneficial, and further knowing when to use them. There are actually many storage options that both ASP.NET and SharePoint (along with modern browsers, HTML5, JavaScript) offer. This session will discuss many of these choices with best practices in mind along with live demonstrations. Examples include SharePoint Lists, Secure Store, property bags, persisted objects, Linq (to SQL, Entity, and SharePoint), web part properties, serialization options (to/from JSON and XML), session state, viewstate, httpruntime, application state, and thread bag. Also, client side storage examples will be introduced using modern HTML5 and JavaScript techniques. Further, free 3rd party products will be introduced that can be employed. Applies to all modern versions of SharePoint including 2013.
HTML5 introduces significant changes for today\'s websites: new and updated tags, new functionality, better error handling and improved Document Object Model (DOM). However, the HTML5 new features come with new (application) security vulnerabilities. This presentation reviews the new attack vectors, associated risks and what a needs to be taken into consideration when implementing HTML5.
Turbocharge your applications with HTML5 features and its JavaScript APIs. Simplify tasks that weren’t possible previously. Understand how to tap the full potential of HTML5 features in your web applications using: HTML5 features, File API, Video, Location API, Application Cache API, Local Storage API, Animating the User Interface, Web Workers.
AngularJS 1.x - your first application (problems and solutions)Igor Talevski
We will talk about all aspects of building a single page application with AngularJS, and we will discuss real examples from day-to-day work. We will also cover a large amount of theory about general web development, best practices, and today's client demands. We will focus on three (3) main points: architecture, security, and real time notification.
Keynote at COMMitMDE'18 showing the basic concepts behind Hawk, our past case studies, and some of our experience in designing the Hawk Thrift APIs for remote model querying.
With the advent of CSS3 and the ever-greater maturity of HTML5, it’s an exciting time for the Web. The possibilities for creating truly engaging – even addictive – Web and business applications appear limitless. And, with the release of Internet Explorer 9, Microsoft finally came in from the cold after many years in the world wide wilderness.
As Internet Explorer moves towards full support of standards-based HTML5 and CSS3, this is a great opportunity to hear from Martin Beeby about how these key technologies will be used to build and deliver the applications of tomorrow, engage end-users like never before, and generate even greater loyalty to Web-sites.
Join Pantheon co-founder Josh Koenig to learn about decoupled WordPress: what it is, the benefits and pitfalls, and how to approach a decoupled project. Koenig will walk through a decoupled build using the WP-API, and registrants can ask questions after the session.
Code for Startup MVP (Ruby on Rails) Session 1Henry S
First Session on Learning to Code for Startup MVP's using Ruby on Rails.
This session covers the web architecture, Git/GitHub and makes a real rails app that is deployed to Heroku at the end.
Thanks,
Henry
Slides from an HTML5 overview session I presented at work...
This presentation has an accompanying sample webapp project: http://code.google.com/p/html5-playground
SharePoint developers regularly face the decision, where do I put my application’s data? Sometimes this is an easy choice, using SharePoint Lists, or a SQL Server Database, but often a better solution exists. Or at least knowing that alternatives exist is beneficial, and further knowing when to use them. There are actually many storage options that both ASP.NET and SharePoint (along with modern browsers, HTML5, JavaScript) offer. This session will discuss many of these choices with best practices in mind along with live demonstrations. Examples include SharePoint Lists, Secure Store, property bags, persisted objects, Linq (to SQL, Entity, and SharePoint), web part properties, serialization options (to/from JSON and XML), session state, viewstate, httpruntime, application state, and thread bag. Also, client side storage examples will be introduced using modern HTML5 and JavaScript techniques. Further, free 3rd party products will be introduced that can be employed. Applies to all modern versions of SharePoint including 2013.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
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.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
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.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
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.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Jeffrey Haguewood
Sidekick Solutions uses Bonterra Impact Management (fka Social Solutions Apricot) and automation solutions to integrate data for business workflows.
We believe integration and automation are essential to user experience and the promise of efficient work through technology. Automation is the critical ingredient to realizing that full vision. We develop integration products and services for Bonterra Case Management software to support the deployment of automations for a variety of use cases.
This video focuses on the notifications, alerts, and approval requests using Slack for Bonterra Impact Management. The solutions covered in this webinar can also be deployed for Microsoft Teams.
Interested in deploying notification automations for Bonterra Impact Management? Contact us at sales@sidekicksolutionsllc.com to discuss next steps.
Neuro-symbolic is not enough, we need neuro-*semantic*Frank van Harmelen
Neuro-symbolic (NeSy) AI is on the rise. However, simply machine learning on just any symbolic structure is not sufficient to really harvest the gains of NeSy. These will only be gained when the symbolic structures have an actual semantics. I give an operational definition of semantics as “predictable inference”.
All of this illustrated with link prediction over knowledge graphs, but the argument is general.
2. Windows Internet Explorer 10 Guide
for Developers
• Internet Explorer 10 Guide for Developers
http://msdn.microsoft.com/library/hh673549.aspx
• Revision History http://msdn.microsoft.com/ko-
kr/library/hh673560.aspx
3. April 12, 2011: Created for IE10
Platform Preview for MIX
• Flexbox Layout
• Grid Alignment
• CSS3 Multi-column
• CSS3 Gradients (on background images)
• ES5 strict mode
• Compatibility View List
• User-agent string
• How to send feedback
4. June 29, 2011: Updated for IE10
Platform Preview 2
• Positioned Floats
• CSS3 Gradients (on all image types)
• CSS style sheet limit lifted
• CSSOM Floating Point Value support
• Improved hit testing APIs
• Media Query Listeners
• HTML5:
– Support for async attribute on script elements
– Drag and Drop
– File API
– Sandbox
– Web Workers
• Web Performance APIs:
– requestAnimationFrame
– Page Visibility API
– setImmediate
5. September 13, 2011: Updated for Internet Explorer 10
for Windows Developer Preview and BUILD Conference
• CSS Regions
• CSS3:
– 3D Transforms
– Animations
– Panning and Zooming
– Transitions
– Text (text-shadow property and hyphenation)
• Pointer and gesture DOM events
• Improved F12 support:
– Web workers
– Multiple script sources
• HTML5:
– Application Cache ("AppCache")
– Progress and Range controls
– History
– Spellcheck
• Web Sockets
• Indexed Database ("IndexedDB")
• SVG Filter Effects
• Navigation Timing
6. November 29, 2011: Updated for Internet
Explorer 10 Platform Preview Build 4
• CSS3:
– Positioned Floats renamed to Exclusions and examples
added
– Sample images and pages added to Flexbox
– Added new repeating syntax for Grid
• HTML5:
– Video: Respecting recorded video orientation
– File API improvements
– Web Worker Thread Pooling
• DOM:
– XMLHttpRequest improvements
– CORS
10. IE10 PP4 Highlights
• Cross-Origin Resource Sharing (CORS) for safe use of
XMLHttpRequest across domains.
• File API Writer support for blobBuilder allowing
manipulation of large binary objects in script in the
browser.
• Support for JavaScript typed arrays for efficient storage
and manipulation of typed data.
• CSS user-select property to control how end-users
select elements in a Web page or application.
• Support for HTML5 video text captioning, including
time-code, placement, and captioning file formats.
11. IEBlog / IE10 PP4 Articles
• HTML5 for Applications: The Fourth IE10
Platform Preview
• Working with Binary Data using Typed Arrays
• Moving to Standards-based Web Graphics in
IE10
• Media Capture API: Helping Web developers
directly import image, video, and sound data
into Web apps
• Interoperable HTML5 Quirks Mode in IE10
12. Cross-Origin Resource Sharing (CORS)
for XMLHttpRequest
• Internet Explorer 10 adds support for Cross-Origin Resource Sharing
(CORS) with respect to the XMLHttpRequest (XHR) object.
• CORS uses HTTP headers to enable cross-domain web requests that are
normally restricted by the same-site origin policy.
• When a webpage makes an XHR request, Internet Explorer sends an origin
header to the target server; the header contains the protocol scheme of
the request (either http:// or https://) and the hostname for the webpage
making the request. If the target server approves the request, it returns an
Access-Control-Allow-Origin header and the request is allowed to
proceed.
• Cross-Origin Resource Sharing (w3c)
• cross origin resource sharing (wikipedia)
• Cross-Origin Resource Sharing (CORS) for XMLHttpRequest (msdn)
• Hands On: Cross-Site Upload (demo)
• http://enable-cors.org/ (usage)
17. Blob Usage
var bb = new BlobBuilder();
bb.append(csvContents);
var blob = bb.getBlob();
var url = window.URL.createObjectURL(blob);
// var url = window.webkitURL.createObjectURL(blob);
19. Support for JavaScript typed arrays
• for efficient storage and manipulation of typed data.
• With HTML5 comes many APIs that push the envelope on user
experiences involving media and real-time communications. These
features often rely on binary file formats, like MP3 audio, PNG images, or
MP4 video.
• The use of binary file formats is important to these features to reduce
bandwidth requirements, deliver expected performance, and interoperate
with existing file formats.
• Typed Arrays, available in IE10 Platform Preview 4, enable Web
applications to use a broad range of binary file formats and directly
manipulate the binary contents of files already supported by the browser.
• Support for Typed Arrays has been added throughout IE10: in
JavaScript, in XMLHttpRequest, in the File API, and in the Stream API.
• Typed Arrays(ecmascript)
20. types are supported
Typed Arrays provide a means to look at raw binary contents of data through a particular typed view. For example, if we want to
look at our raw binary data a byte at a time, we can use a Uint8Array (Uint8 describes an 8-bit unsigned integer value, commonly
known as a byte). If we want to read the raw data as an array of floating point numbers, we can use a Float32Array (Float32
describes a 32-bit IEE754 floating point value, commonly known as a floating point number). The following types are supported:
Array Type Element size and description
Int8Array 8-bit signed integer
Uint8Array 8-bit unsigned integer
Int16Array 16-bit signed integer
Uint16Array 16-bit unsigned integer
Int23Array 32-bit signed integer
Uint32Array 32-bit unsigned integer
Float32Array 32-bit IEEE754 floating point number
Float64Array 64-bit IEEE754 floating point number
Working with Binary Data using Typed Arrays
23. CSS user-select property
• to control how end-users select elements in a
Web page or application.
-ms-user-select: none
-ms-user-select:none will block selection from starting on that element. It will not
block an existing selection from entering the element.
-ms-user-select: element
-ms-user-select:element enables selection to start within the element, however, the
selection will be contained by the bounds of that element.
-ms-user-select: text
-ms-user-select:text enables selection to start within the element and extend past
the element's bounds.
24. User-Select
http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
Interop Notes
user-select is not currently part of any W3C CSS specification. It was originally proposed in the User Interface for
CSS3 module; this module has since been superseded by CSS3 Basic User Interface Module which does not define
the user-select property. Both Mozilla and Webkit support their own prefixed versions of this property. There are
minor differences between the three implementations so be sure to test your application across browsers.
By default, the same-site origin policy prevents websites from requesting resources from servers on other domains. However, browsers that support CORS for XHR requests can access resources from other domains if the appropriate administrator chooses to allow such requests.