Dalle applicazioni desktop al web ed alle architetture multi tier. Dallo sviluppo basato sui componenti alle service oriented architecture… I Microservices saranno la soluzione vincente?
Dalle applicazioni desktop al web ed alle architetture multi tier. Dallo sviluppo basato sui componenti alle service oriented architecture… I Microservices saranno la soluzione vincente?
Building Realtime Apps with Ember.js and WebSocketsBen Limmer
This talk discusses how AJAX differs from WebSockets and how the technology can be used to implement rich real-time experiences. It also produces a live demo using EmberJS.
Invited to introduce Docker to the Dept. for Information and Communication Services (Informations- und Kommunikationsdienste - IuK) at the University of Rostock.
A presentation given on August 7th 2013 at the Belgian NodeJS user group. Discussing autonomous flights topics for the AR Drone 2.0 controlled via NodeJS (nodecopter.com).
Puppeteer can automate that! - FrontmaniaÖnder Ceylan
Puppeteer is a node library which provides a high-level API to control Chrome over the DevTools Protocol. When combined with the power of the web technologies, it can be used for automating image processing and batch file generation, creating automated visual testing with device emulation, tracking page loading performance, enforcing performance and code coverage budgets on CI, crawling a SPA, capturing a timeline trace of your site to help diagnose performance issues and more!
We'll explore those capabilities of Puppeteer API with combination of DevTools protocol and cloud functions (FaaS) with a showcase of real life use cases demonstrated by live-examples. Finally, we’ll go through the existing puppeteer based SaaS solutions such as Checkly and Browserless.
A brief introduction to the world of drones, flying robots and the #nodecopter project. I've presented this work at events such as Research Talks, Wajug, Njugbe, Café Numérique, etc.
If you would like to have this presentation featured at one of your events, don't hesitate to contact me by email.
Coffeescript: An Opinionated IntroductionJoe Fleming
Slides from my intro to coffeescript talk, given at Phoenix Javascript Meetup on Dec. 5th, 2012 at UAT
Video available at http://www.youtube.com/watch?v=pXZ7hGzDOF0
Puppeteer can automate that! - HolyJS Piter 2020Önder Ceylan
Puppeteer is a node library which provides a high-level API to control Chrome over the DevTools Protocol. When combined with the power of the web technologies, it can be used for automating image processing and batch file generation, creating automated visual testing with device emulation, tracking page loading performance, enforcing performance and code coverage budgets on CI, crawling a SPA, capturing a timeline trace of your site to help diagnose performance issues and more!
We'll explore those capabilities of Puppeteer API with combination of DevTools protocol and cloud functions (FaaS) with a showcase of real life use cases demonstrated by live-examples. Finally, we’ll go through the existing puppeteer based SaaS solutions such as Checkly and Browserless.
Vagrant - Version control your dev environmentbocribbz
Vagrant facilitates the creation and configuration of lightweight, reproducible, and portable development environments.
It is currently in use at companies like Disqus, BBC, Mozilla, Nokia, and O'Reilly Media. More information about Vagrant is available at: http://www.vagrantup.com/
Links:
Boxes: https://github.com/opscode/bento
Cookbooks: http://community.opscode.com/
LAMP demo: https://github.com/bocribbz/cookbook-lampdemo
The next generation JavaScript doesn't need to dependent on browser, that's just like other programming language. Node.js is it, no need browser, based on fastest V8 JavaScript Engine and provides many APIs for system integration. It can be used to server-side and system, even more purpose.
Building Realtime Apps with Ember.js and WebSocketsBen Limmer
This talk discusses how AJAX differs from WebSockets and how the technology can be used to implement rich real-time experiences. It also produces a live demo using EmberJS.
Invited to introduce Docker to the Dept. for Information and Communication Services (Informations- und Kommunikationsdienste - IuK) at the University of Rostock.
A presentation given on August 7th 2013 at the Belgian NodeJS user group. Discussing autonomous flights topics for the AR Drone 2.0 controlled via NodeJS (nodecopter.com).
Puppeteer can automate that! - FrontmaniaÖnder Ceylan
Puppeteer is a node library which provides a high-level API to control Chrome over the DevTools Protocol. When combined with the power of the web technologies, it can be used for automating image processing and batch file generation, creating automated visual testing with device emulation, tracking page loading performance, enforcing performance and code coverage budgets on CI, crawling a SPA, capturing a timeline trace of your site to help diagnose performance issues and more!
We'll explore those capabilities of Puppeteer API with combination of DevTools protocol and cloud functions (FaaS) with a showcase of real life use cases demonstrated by live-examples. Finally, we’ll go through the existing puppeteer based SaaS solutions such as Checkly and Browserless.
A brief introduction to the world of drones, flying robots and the #nodecopter project. I've presented this work at events such as Research Talks, Wajug, Njugbe, Café Numérique, etc.
If you would like to have this presentation featured at one of your events, don't hesitate to contact me by email.
Coffeescript: An Opinionated IntroductionJoe Fleming
Slides from my intro to coffeescript talk, given at Phoenix Javascript Meetup on Dec. 5th, 2012 at UAT
Video available at http://www.youtube.com/watch?v=pXZ7hGzDOF0
Puppeteer can automate that! - HolyJS Piter 2020Önder Ceylan
Puppeteer is a node library which provides a high-level API to control Chrome over the DevTools Protocol. When combined with the power of the web technologies, it can be used for automating image processing and batch file generation, creating automated visual testing with device emulation, tracking page loading performance, enforcing performance and code coverage budgets on CI, crawling a SPA, capturing a timeline trace of your site to help diagnose performance issues and more!
We'll explore those capabilities of Puppeteer API with combination of DevTools protocol and cloud functions (FaaS) with a showcase of real life use cases demonstrated by live-examples. Finally, we’ll go through the existing puppeteer based SaaS solutions such as Checkly and Browserless.
Vagrant - Version control your dev environmentbocribbz
Vagrant facilitates the creation and configuration of lightweight, reproducible, and portable development environments.
It is currently in use at companies like Disqus, BBC, Mozilla, Nokia, and O'Reilly Media. More information about Vagrant is available at: http://www.vagrantup.com/
Links:
Boxes: https://github.com/opscode/bento
Cookbooks: http://community.opscode.com/
LAMP demo: https://github.com/bocribbz/cookbook-lampdemo
The next generation JavaScript doesn't need to dependent on browser, that's just like other programming language. Node.js is it, no need browser, based on fastest V8 JavaScript Engine and provides many APIs for system integration. It can be used to server-side and system, even more purpose.
Un libro muy interesante del artista del renacimiento alemán, Alberto Durero. Éste es un manuscrito escaneado del original, que nos muestra dibujos del artista, para sus investigaciones de la perspectiva, la matemática y la proporción, tan característicos de los artistas de la época.
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...Matt Raible
JavaScript MVC Frameworks are all the rage these days. They’ve taken the web development world by storm. This session explores the various features of the three hottest JavaScript MVC frameworks: AngularJS, Ember.js and React.js. It also compares client-side templating vs. server-side templating and how well each framework supports Isomorphic JavaScript (code that can run both client-side and server-side). Finally, it ranks each framework on 10 different criteria using Yevgeniy Brikman’s framework scorecard.
Video on InfoQ: https://www.infoq.com/presentations/comparing-angular-ember-react
Writing Virtual And Augmented Reality Apps With Web TechnologyMichaela Lehr
Writing 3D applications for the browser is possible since some years due to the WebGL API. But since Virtual Reality and Augmented Reality are getting more popular, web developers and designers now have a serious reason to get to know the 3D web, its APIs and design patterns.
In this talk you will learn how to create 3D applications in the browser, using the WebGL and the WebVR API, and popular libraries, like A-Frame and ReactVR. You will also see what is necessary to create a Virtual Reality app that runs on common VR devices, and how to create Augmented Reality applications for Android and iOS phones.
Since 3D user interfaces and interactions in the browser are relatively new for designers and users, there are no established UX design patterns yet, but you will get to know best-practices and see some tips for improving the usability of your 3d application.
The talk ends with my advice on how to create responsible applications, that won’t harm your users – neither physically nor psychologically.
Writing Virtual And Augmented Reality Apps With Web TechnologyGeilDanke
Writing 3D applications for the browser is possible since some years due to the WebGL API. But since Virtual Reality and Augmented Reality are getting more popular, web developers and designers now have a serious reason to get to know the 3D web, its APIs and design patterns.
In this talk you will learn how to create 3D applications in the browser, using the WebGL and the WebVR API, and popular libraries, like A-Frame and ReactVR. You will also see what is necessary to create a Virtual Reality app that runs on common VR devices, and how to create Augmented Reality applications for Android and iOS phones.
Since 3D user interfaces and interactions in the browser are relatively new for designers and users, there are no established UX design patterns yet, but you will get to know best-practices and see some tips for improving the usability of your 3d application.
The talk ends with my advice on how to create responsible applications, that won’t harm your users – neither physically nor psychologically.
With mobile taking off in a big way it is a fun and exciting time to be a software developer. The landscape is rapidly changing, with a wide variety of options for platforms and programming languages. Businesses are faced with tough decisions on how to provide a best possible user experience, yet keeping maintenance cost down across the different smart phone platforms.
Some are compromising user experience and betting on web based interfaces, while others require the high fidelity user experience or device integration traditionally only found in native apps.
In this session I will demonstrate how we can write fully native applications taking full advantage of the platform, yet achieving a high level of code reuse across Windows Phone 7, Android and iOS.
Topics covered:
- Separated Presentation patterns for maximum code reuse across all platforms
- How to structure your source code and build it for all platforms
- How to access devices specific functionality like Camera, GPS and Accelerometer in a cross platform way
- Tips, tricks and tools to make the cross platform development process smoother.
For maximum benefit from this session some prior knowledge of MVVM is beneficial.
Mixed Realities for Web - Carsten Sandtner - Codemotion Amsterdam 2018Codemotion
Ok, let’s get real: VR in a Web Browser isn’t something new in 2017. Firefox shipped their support for everyone. HTC Vive, Oculus Rift and other hardware is being supported. You can create VR experiences using your browser and Javascript. New browser engines are powerful enough to be able to serve the experiences on a open and standardised platform. But what about AR? Or Mixed Realities (MR)? Join my session and learn how AR or better said MR is getting into your browsers, too. See how and what the platform is being able to offer and what you could expect in near future.
Keynote at Codebits in Portugal, April 2014, explaining the how and why of Firefox OS and how to use it.
Video: https://videos.sapo.pt/ZYQyY57ZlB6lhgIdBzrs
Similar to Up And Running With Web VR Fall 2014 (20)
Face the Future: Computing in an Augmented WorldTony Parisi
My Keynote Talk from AWE 2017. http://www.augmentedworldexpo.com/
Pairs best with transcript: https://medium.com/@tonyparisi/face-the-future-58ed3b63d91
Slides for my talk on The Future of Virtual Reality at the Tech In Motion Silicon Valley Meetup on August 20th, 2014. http://www.meetup.com/TechinMotionSiliconValley/events/195316252/
The Browser As Console - HTML5 and WebGL for Game DevelopmentTony Parisi
Slides from my talk at April 24, 2014 Tales of JavaScript Meetup: HTML5 & WebGL Game Evolution and Development http://www.meetup.com/talesofjavascript/events/177380702/
a billion desktops - check.
mobile support turned on by default - check.
Microsoft on board - check.
engines, tools, killer apps – check.
it's GO time.
My look at the WebGL landscape circa late 2013, presented at the GamesJS Meetup September 30th 2013. http://www.meetup.com/gamesjs/events/140781742/
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
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
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.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
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
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.
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.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
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.
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
In this presentation, we examine the challenges and limitations of relying too heavily on PHP frameworks in web development. We discuss the history of PHP and its frameworks to understand how this dependence has evolved. The focus will be on providing concrete tips and strategies to reduce reliance on these frameworks, based on real-world examples and practical considerations. The goal is to equip developers with the skills and knowledge to create more flexible and future-proof web applications. We'll explore the importance of maintaining autonomy in a rapidly changing tech landscape and how to make informed decisions in PHP development.
This talk is aimed at encouraging a more independent approach to using PHP frameworks, moving towards a more flexible and future-proof approach to PHP development.
2. WEBVR
FAST, CHEAP, AND TOTALLY
DEMOCRATIZED.
BROWSER-BASED VIRTUAL
REALITY
RENDERED IN WEBGL
HEAD-TRACKING AND
FULLSCREEN VR
SUPPORT NOW IN
BROWSER DEV BUILDS!!!
(SOON IN NIGHTLY
CHANNEL!!!)
NO BIG APP DOWNLOADS
AND INSTALLS!!!
http://www.tonyparisi.com 12/4/2014
JUST ADD SMART PHONE
“SMARTVR” USING
GOOGLE CARDBOARD
$25 CHEAP!
3. AN EXAMPLE
http://www.tonyparisi.com 12/4/2014
MOZVR SHOWCASE
http://mozvr.com/
POWERED BY FIREFOX BUILT WITH VIZI
https://github.com/tparisi/Vizi
4. THE WEBVR API
1. QUERY FOR VR DEVICE(S) TO RENDER
// polyfill
var getVRDevices = navigator.mozGetVRDevices /* FF */ ||
navigator.getVRDevices; /* webkit */
http://www.tonyparisi.com 12/4/2014
var self = this;
getVRDevices().then( gotVRDevices );
function gotVRDevices( devices ) {
var vrHMD;
var error;
for ( var i = 0; i < devices.length; ++i ) {
if ( devices[i] instanceof HMDVRDevice ) {
vrHMD = devices[i];
self._vrHMD = vrHMD;
self.leftEyeTranslation = vrHMD.getEyeTranslation( "left" );
self.rightEyeTranslation = vrHMD.getEyeTranslation( "right" );
self.leftEyeFOV = vrHMD.getRecommendedEyeFieldOfView( "left" );
self.rightEyeFOV = vrHMD.getRecommendedEyeFieldOfView( "right" );
break; // We keep the first we encounter
}
}
}
get left/right eye
(camera) positions
get per-eye camera field of view; use
WebGL to render scene from two
cameras
5. THE WEBVR API
2. GO FULLSCREEN (VR MODE)
fullscreen mode requires a DOM
element
http://www.tonyparisi.com 12/4/2014
var self = this;
var renderer = this._renderer;
var vrHMD = this._vrHMD;
var canvas = renderer.domElement;
var fullScreenChange =
canvas.mozRequestFullScreen? 'mozfullscreenchange' : 'webkitfullscreenchange';
document.addEventListener( fullScreenChange, onFullScreenChanged, false );
function onFullScreenChanged() {
if ( !document.mozFullScreenElement
&& !document.webkitFullScreenElement ) {
self.setFullScreen( false );
}
}
if ( canvas.mozRequestFullScreen ) {
canvas.mozRequestFullScreen( { vrDisplay: vrHMD } );
} else {
canvas.webkitRequestFullscreen( { vrDisplay: vrHMD } );
}
handle exiting fullscreen
mode
request fullscreen mode
for this VR device
6. THE WEBVR API
3. HEAD TRACKING
query HMD device state
http://www.tonyparisi.com 12/4/2014
// polyfill
var getVRDevices = navigator.mozGetVRDevices /* FF */ ||
navigator.getVRDevices; /* webkit */
var self = this;
getVRDevices().then( gotVRDevices );
function gotVRDevices( devices ) {
var vrInput;
var error;
for ( var i = 0; i < devices.length; ++i ) {
if ( devices[i] instanceof PositionSensorVRDevice ) {
vrInput = devices[i]
self._vrInput = vrInput;
break; // We keep the first we encounter
}
}
}
…
// called once per tick from requestAnimationFrame()
var update = function() {
var vrState = this.getVRState();
if ( !vrState ) {
return;
}
// vrState.hmd.rotation contains four floats, quaternion x,y,z,w
setCameraRotation(vrState.hmd.rotation);
};
get head-tracking VR
device
update camera to match HMD
device orientation
7. WEBVR AND CARDBOARD
GOOGLE CARDBOARD SHOWCASE
Mobile Chrome http://g.co/chromevr
Desktop Chrome http://vr.chromeexperiments.com/
EVEN EASIER THAN OCULUS!
RENDER WEBGL SIDE-BY-SIDE STEREO (NO NEED TO QUERY DEVICES)
USE EXISTING BROWSER FULLSCREEN MODE
USE BROWSER DEVICE ORIENTATION API FOR HEAD TRACKING
http://www.tonyparisi.com 12/4/2014
8. WEBVR AND THREE.JS
THE MOST POPULAR WEBGL LIBRARY
http://threejs.org/
LATEST STABLE VERSION (r68) INCLUDES STEREO
RENDERING AND HEAD TRACKING
RENDERING
examples/js/effects/StereoEffect.js (Cardboard)
examples/js/effects/VREffect.js (Rift)
HEAD TRACKING
examples/js/controls/DeviceOrientationControls.js (Cardboard)
examples/js/controls/VRControls.js (Rift)
http://www.tonyparisi.com 12/4/2014
11. PRO TOOLS FOR WEB VR
Unreal 4 in WebGL
https://developer.mozilla.org/en-US/demos/detail/unreal-engine-4-strategy-game
60FPS
http://www.tonyparisi.com 12/4/2014
EMSCRIPTEN - THE COOLEST
HACK EVER!
https://github.com/kripken/emscripten
CROSS-COMPILE C++
NATIVE CODE TO
JAVASCRIPT
asm.js- LOW-LEVEL
OPTIMIZED JAVASCRIPT
UNITY, UNREAL ENGINES
USE THIS TO DEPLOY ON
THE WEB
WATCH OUT: HUGE
DOWNLOADS AND HARD TO
DEBUG…. !
Unreal native C++ engine -> JavaScript
Emscripten + asm.js
12. VR + ML
A MARKUP LANGUAGE FOR THE METAVERSE?
http://www.tonyparisi.com 12/4/2014
GLAM (GL AND MARKUP) - A
DECLARATIVE LANGUAGE FOR 3D
WEB CONTENT
https://github.com/tparisi/glam/
DEFINE 3D SCENE CONTENT IN
MARKUP; STYLE IT IN CSS
THE MARKUP
<glam>
<renderer type="rift"></renderer>
<scene>
<controller type="rift"></controller>
<background id="sb1" class="skybox">
</background>
<group y ='1' z='-3'>
<sphere class="bubble skybox”>
</sphere>
<sphere class="bubble skybox”>
</sphere>
</group>
…
THE CSS
<style>
.skybox {
envmap-right:url(../images/Park2/posx.jpg);
…
}
.bubble {
radius:.5;
shader-vertex:url(../shaders/fresnel.vs);
shader-fragment:url(../shaders/fresnel.fs);
shader-uniforms:mRefractionRatio f 1.02
mFresnelBias f 0.1 mFresnelPower f 2.0 mFresnelScale
f 1.0 tCube t null;
}
#sb1 {
background-type:box;
}
</style>
Or check out SceneVR from Ben Nolan
http://twitter.com/scenevr/
13. CHALLENGES
WEBVR ON OCULUS IS NOT READY FOR PRIME TIME
(THAT’S OK NEITHER IS OCULUS!)
LATENCY IS THE BIGGEST ISSUE – BROWSER NEEDS TO UN-THROTTLE
AT 60FPS (IT’S IN THE WORKS…)
DEVICE DRIVERS AND DISPLAY MODES SUUUUUUCK
#tellmesomethingidontkow
BUT WE’RE GOOD TO GO ON CARDBOARD!
60FPS WORKS GREAT
NEARLY 2 BILLION VR DEVICES ALREADY DEPLOYED!
FRAMEWORKS AND TOOLS ARE TYPICALLY WEB-ISH: UNDER
DEVELOPMENT, ALWAYS IN FLUX, PRETTY MUCH OUT OF CONTROL
BUT OPEN SOURCE SO WE CAN LIVE WITH IT
http://www.tonyparisi.com 12/4/2014
14. LINKS
BROWSER DEV BUILDS
Firefox http://blog.bitops.com/blog/2014/08/20/updated-firefox-vr-builds/
Chrome https://drive.google.com/folderview?id=0BzudLt22BqGRbW9WTHMtOWMzNjQ
MOZILLA VR SHOWCASE
http://mozvr.com/
WEBVR MAILING LIST
web-vr-discuss@mozilla.org
CARDBOARD VR SHOWCASE
http://vr.chromeexperiments.com/
http://www.tonyparisi.com 12/4/2014
15. KEEP IN TOUCH
CREDS
Co-creator, VRML and X3D
http://www.tonyparisi.com 12/4/2014
CONTACT
tony@vizi.gl
skype: auradeluxe
http://twitter.com/auradeluxe
http://www.tonyparisi.com/
http://www.learningwebgl.com/
GET VIZI
https://github.com/tparisi/Vizi
GET THE BOOKS!
WebGL: Up and Running
http://www.amazon.com/dp/144932357X
Programming 3D Applications with HTML and WebGL
http://www.amazon.com/Programming-Applications-HTML5-WebGL-Visualization/
dp/1449362966
MEETUPS
http://www.meetup.com/WebGL-Developers-Meetup/
http://www.meetup.com/Web-VR/
BOOK CODE
https://github.com/tparisi/WebGLBook
https://github.com/tparisi/Programming3DApplications
GET GLAM
http://www.glamjs.org/
https://github.com/tparisi/glam/
WORK
http://www.vizi.gl/