Putting the Fun into Functioning CI/CD with JHipsterGerard Gigliotti
Talk from the inaugural JHipster Melbourne Meetup (21/06/2017) about the various JHIpster generators available for CI/CD. Discusses Jenkins 2, Heroku, Gitlab and Rancher.
Associated Repository: https://github.com/ggotti/jhipster-ci-cd-talk
QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)Ross McDonald
QGIS is a modular and extensible open source geographic information system. It has a Python API that allows developers to build plugins that interact with QGIS functionality and libraries. Plugins can be built with C++ or Python and interface with QGIS through the QgisInterface class. Example plugins include InaSAFE for hazard impact scenarios and Crayfish for visualizing flood modeling results. Developers can also create standalone applications using the QGIS libraries for tasks like automating GIS processes, building custom editing tools, or developing specialized mapping applications.
Qt Creator is an extensible IDE platform based on plugins. It uses an ExtensionSystem library to manage plugins with dependencies and command line arguments. Plugins are defined using an XML PluginSpec file. The core plugins include an ActionManager for actions and commands, DocumentManager for editing, and ProjectExplorer for managing projects. Existing plugins provide functionality like searching, C/C++ support, version control integration, and Qt/QML support. The documentation provides guidance for writing new plugins that communicate properly with Qt Creator.
1. Qt is a cross-platform application development framework written in C++ that allows developers to write once and deploy applications across desktop and mobile platforms like Windows, Mac, Linux and embedded systems.
2. Qt provides modules for user interfaces, databases, networking, multimedia and more that have a common API design. It extends C++ with macros and introspection.
3. The presentation demonstrated a simple "Hello World" Qt application and introduced Qt Creator as the IDE for Qt development. It also covered signals and slots, stylesheets, deployment and the Qt Mobility APIs for mobile.
Kubernetes is open-source container-centric platform for automating deployment, scaling, and operations of application containers across clusters of hosts.
Atomic Developer Bundle packages some of the most widely used container orchestration tools into a single Vagrant box to provide developers with a configuration as close to production as possible!
Putting the Fun into Functioning CI/CD with JHipsterGerard Gigliotti
Talk from the inaugural JHipster Melbourne Meetup (21/06/2017) about the various JHIpster generators available for CI/CD. Discusses Jenkins 2, Heroku, Gitlab and Rancher.
Associated Repository: https://github.com/ggotti/jhipster-ci-cd-talk
QGIS UK: Developing with QGIS - What is possible (Lutra Consulting)Ross McDonald
QGIS is a modular and extensible open source geographic information system. It has a Python API that allows developers to build plugins that interact with QGIS functionality and libraries. Plugins can be built with C++ or Python and interface with QGIS through the QgisInterface class. Example plugins include InaSAFE for hazard impact scenarios and Crayfish for visualizing flood modeling results. Developers can also create standalone applications using the QGIS libraries for tasks like automating GIS processes, building custom editing tools, or developing specialized mapping applications.
Qt Creator is an extensible IDE platform based on plugins. It uses an ExtensionSystem library to manage plugins with dependencies and command line arguments. Plugins are defined using an XML PluginSpec file. The core plugins include an ActionManager for actions and commands, DocumentManager for editing, and ProjectExplorer for managing projects. Existing plugins provide functionality like searching, C/C++ support, version control integration, and Qt/QML support. The documentation provides guidance for writing new plugins that communicate properly with Qt Creator.
1. Qt is a cross-platform application development framework written in C++ that allows developers to write once and deploy applications across desktop and mobile platforms like Windows, Mac, Linux and embedded systems.
2. Qt provides modules for user interfaces, databases, networking, multimedia and more that have a common API design. It extends C++ with macros and introspection.
3. The presentation demonstrated a simple "Hello World" Qt application and introduced Qt Creator as the IDE for Qt development. It also covered signals and slots, stylesheets, deployment and the Qt Mobility APIs for mobile.
Kubernetes is open-source container-centric platform for automating deployment, scaling, and operations of application containers across clusters of hosts.
Atomic Developer Bundle packages some of the most widely used container orchestration tools into a single Vagrant box to provide developers with a configuration as close to production as possible!
After I attended Google IO 2014, I wanted to present what is new for Android Lollipop from a Developer perspective.
This presentation covers almost everything except, maybe, native Android Wear development, Android Auto and Android TV
Qt is a cross-platform application and UI framework that is used by over 250,000 developers. It allows developers to write code once and deploy applications across desktop and embedded operating systems. Nokia acquired the company behind Qt in 2008 and aims to expand its use on platforms like S60 smartphones and Maemo tablets to provide a common development experience.
GitBucket: Git Centric Software Development Platform by Scalatakezoe
GitBucket is an open source Git server platform written in Scala that provides easy installation and setup. It allows for public and private repositories along with features like issue tracking, pull requests, wikis, and notifications. While based on traditional Java technologies like Jetty and JGit, it uses the Scalatra framework to integrate these components and provide a unified web interface for managing Git repositories and collaboration.
This document discusses the Go programming language and some of its uses. It provides an introduction to Go, noting that it is statically typed, scalable, productive, and supports networking and multiprocessing. It then gives examples of how Go is used for web applications, standalone applications, parallel applications, and interfacing with hardware like RFID and GPIO devices on Raspberry Pi. Code examples and demos are provided for OpenCL and RFID implementations in Go.
This document summarizes a meetup on Node.js hosted by Farsheed Atef and Eddy Kim and sponsored by Drumbi. The meetup covered an introduction to Node.js including what it is, why it is useful, its benefits, and its event-driven and asynchronous architecture. It discussed Node.js' use of JavaScript and modularity. An overview of resources and hands-on examples were also provided.
- The Qt Project was launched 3 months ago to manage the Qt framework as an open source project, with over 1000 new accounts and 7000 code commits since.
- Qt 5.0 is currently in development with goals of supporting all platforms, state-of-the-art UIs, modularity, and compatibility with Qt 4.x. It features a new graphics stack, JSON support, and C++11 compatibility among other changes.
- Migration from Qt 4 to Qt 5 is designed to be very easy, with full support for Qt Widgets in Qt 5 and no requirement to use Qt Quick or OpenGL.
How to keep maintainability of long life Scala applicationstakezoe
Naoki Takezoe discusses maintaining long-term Scala applications. He outlines two main difficulties: programming style differences that impact understandability and upgrades that require coordinating framework, Scala, and Java version changes. Case studies show upgrades can be blocked until dependent libraries support new versions. Solutions include reducing dependencies, using popular libraries, custom libraries for core components, and considering Java alternatives. Regular maintenance and preparing for breaking changes are key to sustainable Scala applications.
This document introduces Qt, an open source cross-platform application framework for building graphical user interfaces. Key points: Qt was originally developed by Trolltech and is now maintained by Digia; it allows developers to write GUI apps in C++ that run on multiple platforms; Qt provides widgets, graphics, multimedia and other APIs and is used in many applications including Skype, VirtualBox and the KDE desktop environment. The document discusses Qt's history and licensing, installation, technical features like signals and slots, and examples of Qt in use.
By Maksim Sisov.
Slides at https://docs.google.com/presentation/d/13D5M9ZDGM-i33GDjMFLFrPHWRvYJcZvai3zI4RQ0tDM/edit#slide=id.p1
(c) BlinkOn 10
Toronto, Ontario (Canada)
April 09 - 10, 2019
https://docs.google.com/document/u/1/d/e/2PACX-1vTgBrqyQ4KCchsymvssri1pN1BkOg3sEqHThqhvFDl9-zl-hLx1S5c8sc5gaZ_VzKEVaYj94H3m1vso/pub#h.igsyfaa103a0
Node.js is a JavaScript runtime built on Chrome's V8 engine that uses an event-driven, non-blocking I/O model. It was created by Ryan Dahl in 2009 and is used for building fast and scalable network applications. Node uses an event loop model that makes it lightweight and efficient as opposed to the thread-based model that is typically used for servers. It allows for real-time web applications and helps solve the C10K problem of handling a large number of concurrent connections efficiently.
Building Multi-platform Video Games for the CloudChris Schalk
This is a presentation on how to build multi-platform (HTML5, Flash, Java/Android) video games using an open source technology known as Forplay (PlayN).
This presentation was delivered in Mexico City on Aug 9th, 2011 at the "EstoEsGoogle" aka Devfest Mexico event on Aug 9th in Mexico City by Google Developer Advocate Chris Schalk
This talk is an introduction to development of Qt applications for embedded devices running Windows CE. We will show how to build Qt for your device and you will learn how to create your Qt programs on Desktop Windows and cross-compile it for the target device.
Presentation by Jörg Bornemann held during Qt Developer Days 2009.
http://qt.nokia.com/developer/learning/elearning
At the first Jenkins Meetup in Montreal, CloudOps' Khosrow Moossavi discussed some CI/CD tools that can help you set up efficient and dynamic DevOps pipelines.
This document discusses GStreamer support and integration in WebKit. It covers:
1. The current integration of GStreamer for HTML5 audio and video playback, as well as WebAudio.
2. Plans for next-generation video rendering using GstGL instead of WebCore's internal video sink.
3. Support for adaptive streaming using Media Source Extensions and how GStreamer implements the "append" and playback pipelines.
4. Protected content playback support using Encrypted Media Extensions for key negotiation and decryption, including potential approaches for secure video rendering.
5. Progress on WebRTC support through the OpenWebRTC project.
WebKit Clutter Port Present and Future; WebKitGtk Status and Roadmap to WebKi...Igalia
By Gustavo Noronha Silva, Martin Robinson, Alejandro G. Castro.
On WebKit Clutter:
The Clutter port of WebKit has been recently announced and the branch has been uploaded to a public repository where its development continues. It shares most of the GObject-based public API with the current WebKitGTK+ port, and also shares all the backends that provide platform-dependant services to WebCore: cairo for drawing, soup for HTTP and GStreamer for multimedia.
During the talk we'll explore how the clutter port manages to share code with WebKitGTK+ and the challenges there are to sharing even more. Given clutter doesn't have a single widgets toolkit, we'll talk about how the port acknowledges that fact and allows supporting the various clutter-based toolkits. We will also look at web compatibility, and explore the features that have been implemented.
Looking forward, and most importantly, we'll discuss what work could be done in the future to make it rock even more, in particular by leveraging clutter functionality and its ability to use the GPU. We'll raise questions about pushing it upstream to live inside webkit.org, and how it could be better integrated or even merged with WebKitGTK+ in the future.
On WebKitGTK+:
This talk for WebKitGTK+ embedders and those interested in integrating the web with the free desktop will summarize the various WebKitGTK+ improvements from the last year in rendering, GTK+ 3 support, accessibility, networking, etc. Also, we will cover WebKit2 architecture and the roadmap for WebKit2 support for WebKitGTK+, including API design, plans for GNOME integration and demos.
Igalia is working on enabling Chromium to run natively on Wayland-based Linux systems by improving the Ozone/Wayland implementation. There are ongoing discussions around implementing external window mode in Ozone to allow Chromium windows to be separate from the host desktop, as well as splitting the UI and GPU components into separate processes as in ChromeOS. Igalia is focused on changing the Mus demo to support external window mode and getting Chromium to launch in this mode on Linux. Further work is also needed on desktop integration and using Mojo for inter-process communication in Ozone/Wayland.
Qt 4.7 introduces Qt Quick, a new way to create user interfaces using a declarative language called QML. QML allows designers to build UIs visually without C++ knowledge by describing interface elements and their properties in a tree structure. Qt Quick is aimed at simplifying UI development across Qt platforms like Windows, Mac, Linux, embedded systems and Symbian.
The document discusses a pipeline for continuous integration and deployment using MSBuild conventions. Key goals of the pipeline are to have a short feedback loop, enable rapid deployments, and optimize the process for build grids. The pipeline uses MSBuild conventions to configure builds that can compile code, run unit tests, analyze code quality, deploy to environments like UAT and production, and more with simple commands. Future enhancements proposed include automated rollbacks and cross-browser testing.
Docker build, test and deploy saa s applicationswilliam_greenly
Docker can be used to build, test, and deploy software applications. It allows creating software containers that package code and dependencies together. Docker is useful for testing applications in isolation, continuous integration testing, and distributing software. Some key benefits are portability across stacks, reusable images, and treating infrastructure as code. Challenges include evolving standards and ensuring version compatibility across images and tools.
GStreamer-VAAPI: Hardware-accelerated encoding and decoding on Intel hardware...Igalia
By Víctor M. Jáquez.
Slides at https://github.com/01org/gstreamer-vaapi/tree/master/docs/slides/gstconf2015
GStreamer-VAAPI is a set of GStreamer elements (vaapidecode, vaapipostroc, vaapisink, and several encoders) and libgstvapi, a library that wraps libva under a GObject/GStreamer semantics.
This talk will be about VAAPI and its integration with GStreamer. We will show a general overview of VAAPI architecture, the role of libgstvaapi, and finally, the design of GStreamer elements. Afterwards we will show what is ahead in the development of GStreamer-VAAPI, and the current problems and challenges.
Efficient multimedia support in QtWebKit on Raspberry Pi (GStreamer Conferenc...Igalia
This document discusses improving multimedia support in QtWebKit on the Raspberry Pi. It outlines the Raspberry Pi hardware, WebKit rendering architectures, and platform improvements that could enhance multimedia playback. Specifically, it examines optimizing video and audio decoding by leveraging the Raspberry Pi's hardware accelerators and reducing unnecessary data copying and context switching.
1. The document summarizes the key steps taken by GStreamer when playing a media file using the playbin element. It initializes plugins and elements, creates the playbin pipeline, handles state changes, analyzes the stream to determine the decoder, and connects decoded pads to sinks.
2. When playbin is launched with a URI, it loads required plugins, creates the playbin element, decodes the stream with uridecodebin and decodebin, and connects decoded elements like video and audio to playback sinks. It handles state changes and uses typefind to analyze the stream format.
3. Decodebin emits signals as new pads are detected to determine the appropriate decoder element. It connects the decoded pad
After I attended Google IO 2014, I wanted to present what is new for Android Lollipop from a Developer perspective.
This presentation covers almost everything except, maybe, native Android Wear development, Android Auto and Android TV
Qt is a cross-platform application and UI framework that is used by over 250,000 developers. It allows developers to write code once and deploy applications across desktop and embedded operating systems. Nokia acquired the company behind Qt in 2008 and aims to expand its use on platforms like S60 smartphones and Maemo tablets to provide a common development experience.
GitBucket: Git Centric Software Development Platform by Scalatakezoe
GitBucket is an open source Git server platform written in Scala that provides easy installation and setup. It allows for public and private repositories along with features like issue tracking, pull requests, wikis, and notifications. While based on traditional Java technologies like Jetty and JGit, it uses the Scalatra framework to integrate these components and provide a unified web interface for managing Git repositories and collaboration.
This document discusses the Go programming language and some of its uses. It provides an introduction to Go, noting that it is statically typed, scalable, productive, and supports networking and multiprocessing. It then gives examples of how Go is used for web applications, standalone applications, parallel applications, and interfacing with hardware like RFID and GPIO devices on Raspberry Pi. Code examples and demos are provided for OpenCL and RFID implementations in Go.
This document summarizes a meetup on Node.js hosted by Farsheed Atef and Eddy Kim and sponsored by Drumbi. The meetup covered an introduction to Node.js including what it is, why it is useful, its benefits, and its event-driven and asynchronous architecture. It discussed Node.js' use of JavaScript and modularity. An overview of resources and hands-on examples were also provided.
- The Qt Project was launched 3 months ago to manage the Qt framework as an open source project, with over 1000 new accounts and 7000 code commits since.
- Qt 5.0 is currently in development with goals of supporting all platforms, state-of-the-art UIs, modularity, and compatibility with Qt 4.x. It features a new graphics stack, JSON support, and C++11 compatibility among other changes.
- Migration from Qt 4 to Qt 5 is designed to be very easy, with full support for Qt Widgets in Qt 5 and no requirement to use Qt Quick or OpenGL.
How to keep maintainability of long life Scala applicationstakezoe
Naoki Takezoe discusses maintaining long-term Scala applications. He outlines two main difficulties: programming style differences that impact understandability and upgrades that require coordinating framework, Scala, and Java version changes. Case studies show upgrades can be blocked until dependent libraries support new versions. Solutions include reducing dependencies, using popular libraries, custom libraries for core components, and considering Java alternatives. Regular maintenance and preparing for breaking changes are key to sustainable Scala applications.
This document introduces Qt, an open source cross-platform application framework for building graphical user interfaces. Key points: Qt was originally developed by Trolltech and is now maintained by Digia; it allows developers to write GUI apps in C++ that run on multiple platforms; Qt provides widgets, graphics, multimedia and other APIs and is used in many applications including Skype, VirtualBox and the KDE desktop environment. The document discusses Qt's history and licensing, installation, technical features like signals and slots, and examples of Qt in use.
By Maksim Sisov.
Slides at https://docs.google.com/presentation/d/13D5M9ZDGM-i33GDjMFLFrPHWRvYJcZvai3zI4RQ0tDM/edit#slide=id.p1
(c) BlinkOn 10
Toronto, Ontario (Canada)
April 09 - 10, 2019
https://docs.google.com/document/u/1/d/e/2PACX-1vTgBrqyQ4KCchsymvssri1pN1BkOg3sEqHThqhvFDl9-zl-hLx1S5c8sc5gaZ_VzKEVaYj94H3m1vso/pub#h.igsyfaa103a0
Node.js is a JavaScript runtime built on Chrome's V8 engine that uses an event-driven, non-blocking I/O model. It was created by Ryan Dahl in 2009 and is used for building fast and scalable network applications. Node uses an event loop model that makes it lightweight and efficient as opposed to the thread-based model that is typically used for servers. It allows for real-time web applications and helps solve the C10K problem of handling a large number of concurrent connections efficiently.
Building Multi-platform Video Games for the CloudChris Schalk
This is a presentation on how to build multi-platform (HTML5, Flash, Java/Android) video games using an open source technology known as Forplay (PlayN).
This presentation was delivered in Mexico City on Aug 9th, 2011 at the "EstoEsGoogle" aka Devfest Mexico event on Aug 9th in Mexico City by Google Developer Advocate Chris Schalk
This talk is an introduction to development of Qt applications for embedded devices running Windows CE. We will show how to build Qt for your device and you will learn how to create your Qt programs on Desktop Windows and cross-compile it for the target device.
Presentation by Jörg Bornemann held during Qt Developer Days 2009.
http://qt.nokia.com/developer/learning/elearning
At the first Jenkins Meetup in Montreal, CloudOps' Khosrow Moossavi discussed some CI/CD tools that can help you set up efficient and dynamic DevOps pipelines.
This document discusses GStreamer support and integration in WebKit. It covers:
1. The current integration of GStreamer for HTML5 audio and video playback, as well as WebAudio.
2. Plans for next-generation video rendering using GstGL instead of WebCore's internal video sink.
3. Support for adaptive streaming using Media Source Extensions and how GStreamer implements the "append" and playback pipelines.
4. Protected content playback support using Encrypted Media Extensions for key negotiation and decryption, including potential approaches for secure video rendering.
5. Progress on WebRTC support through the OpenWebRTC project.
WebKit Clutter Port Present and Future; WebKitGtk Status and Roadmap to WebKi...Igalia
By Gustavo Noronha Silva, Martin Robinson, Alejandro G. Castro.
On WebKit Clutter:
The Clutter port of WebKit has been recently announced and the branch has been uploaded to a public repository where its development continues. It shares most of the GObject-based public API with the current WebKitGTK+ port, and also shares all the backends that provide platform-dependant services to WebCore: cairo for drawing, soup for HTTP and GStreamer for multimedia.
During the talk we'll explore how the clutter port manages to share code with WebKitGTK+ and the challenges there are to sharing even more. Given clutter doesn't have a single widgets toolkit, we'll talk about how the port acknowledges that fact and allows supporting the various clutter-based toolkits. We will also look at web compatibility, and explore the features that have been implemented.
Looking forward, and most importantly, we'll discuss what work could be done in the future to make it rock even more, in particular by leveraging clutter functionality and its ability to use the GPU. We'll raise questions about pushing it upstream to live inside webkit.org, and how it could be better integrated or even merged with WebKitGTK+ in the future.
On WebKitGTK+:
This talk for WebKitGTK+ embedders and those interested in integrating the web with the free desktop will summarize the various WebKitGTK+ improvements from the last year in rendering, GTK+ 3 support, accessibility, networking, etc. Also, we will cover WebKit2 architecture and the roadmap for WebKit2 support for WebKitGTK+, including API design, plans for GNOME integration and demos.
Igalia is working on enabling Chromium to run natively on Wayland-based Linux systems by improving the Ozone/Wayland implementation. There are ongoing discussions around implementing external window mode in Ozone to allow Chromium windows to be separate from the host desktop, as well as splitting the UI and GPU components into separate processes as in ChromeOS. Igalia is focused on changing the Mus demo to support external window mode and getting Chromium to launch in this mode on Linux. Further work is also needed on desktop integration and using Mojo for inter-process communication in Ozone/Wayland.
Qt 4.7 introduces Qt Quick, a new way to create user interfaces using a declarative language called QML. QML allows designers to build UIs visually without C++ knowledge by describing interface elements and their properties in a tree structure. Qt Quick is aimed at simplifying UI development across Qt platforms like Windows, Mac, Linux, embedded systems and Symbian.
The document discusses a pipeline for continuous integration and deployment using MSBuild conventions. Key goals of the pipeline are to have a short feedback loop, enable rapid deployments, and optimize the process for build grids. The pipeline uses MSBuild conventions to configure builds that can compile code, run unit tests, analyze code quality, deploy to environments like UAT and production, and more with simple commands. Future enhancements proposed include automated rollbacks and cross-browser testing.
Docker build, test and deploy saa s applicationswilliam_greenly
Docker can be used to build, test, and deploy software applications. It allows creating software containers that package code and dependencies together. Docker is useful for testing applications in isolation, continuous integration testing, and distributing software. Some key benefits are portability across stacks, reusable images, and treating infrastructure as code. Challenges include evolving standards and ensuring version compatibility across images and tools.
GStreamer-VAAPI: Hardware-accelerated encoding and decoding on Intel hardware...Igalia
By Víctor M. Jáquez.
Slides at https://github.com/01org/gstreamer-vaapi/tree/master/docs/slides/gstconf2015
GStreamer-VAAPI is a set of GStreamer elements (vaapidecode, vaapipostroc, vaapisink, and several encoders) and libgstvapi, a library that wraps libva under a GObject/GStreamer semantics.
This talk will be about VAAPI and its integration with GStreamer. We will show a general overview of VAAPI architecture, the role of libgstvaapi, and finally, the design of GStreamer elements. Afterwards we will show what is ahead in the development of GStreamer-VAAPI, and the current problems and challenges.
Efficient multimedia support in QtWebKit on Raspberry Pi (GStreamer Conferenc...Igalia
This document discusses improving multimedia support in QtWebKit on the Raspberry Pi. It outlines the Raspberry Pi hardware, WebKit rendering architectures, and platform improvements that could enhance multimedia playback. Specifically, it examines optimizing video and audio decoding by leveraging the Raspberry Pi's hardware accelerators and reducing unnecessary data copying and context switching.
1. The document summarizes the key steps taken by GStreamer when playing a media file using the playbin element. It initializes plugins and elements, creates the playbin pipeline, handles state changes, analyzes the stream to determine the decoder, and connects decoded pads to sinks.
2. When playbin is launched with a URI, it loads required plugins, creates the playbin element, decodes the stream with uridecodebin and decodebin, and connects decoded elements like video and audio to playback sinks. It handles state changes and uses typefind to analyze the stream format.
3. Decodebin emits signals as new pads are detected to determine the appropriate decoder element. It connects the decoded pad
This document provides an introduction and overview of GPU programming with Haskell using the Accelerate library. It discusses GPU architecture, when GPUs are suitable compared to CPUs, and demonstrates pricing financial options on a GPU using Accelerate. The document outlines the talk, introduces key GPU concepts, demonstrates basic Accelerate usage including arrays and computations, and provides references for further reading on GPU programming in Haskell.
[Harvard CS264] 03 - Introduction to GPU Computing, CUDA Basicsnpinto
1. GPUs have many more cores than CPUs and are very good at processing large blocks of data in parallel.
2. GPUs can provide a significant speedup over CPUs for applications that map well to a data-parallel programming model by harnessing the power of many cores.
3. The throughput-oriented nature of GPUs makes them well-suited for algorithms where the same operation can be performed on many data elements independently.
This document discusses parallel computing on GPUs using OpenCL. It provides an overview of basics of parallel computing, a brief history of SIMD and MIMD architectures, and details of OpenCL. It then describes a case study of using OpenCL and OpenMP to perform a Monte Carlo study of a spring-mass system. The study models the system, uses the Euler method for numerical integration, develops SIMD approaches for GPUs, implements OpenMP, analyzes results and speedup, and provides conclusions on parallelization.
Presented September 30, 2009 in San Jose, California at GPU Technology Conference.
Describes the new features of OpenGL 3.2 and NVIDIA's extensions beyond 3.2 such as bindless graphics, direct state access, separate shader objects, copy image, texture barrier, and Cg 2.2.
Presented as a pre-conference tutorial at the GPU Technology Conference in San Jose on September 20, 2010.
Learn about NVIDIA's OpenGL 4.1 functionality available now on Fermi-based GPUs.
presented at SIGGRAPH 2014 in Vancouver during NVIDIA's "Best of GTC" sponsored sessions
http://www.nvidia.com/object/siggraph2014-best-gtc.html
Watch the replay that includes a demo of GPU-accelerated Illustrator and several OpenGL 4 demos running on NVIDIA's Tegra Shield tablet.
http://www.ustream.tv/recorded/51255959
Find out more about the OpenGL examples for GameWorks:
https://developer.nvidia.com/gameworks-opengl-samples
Gtk+ is a widget toolkit for building graphical user interfaces. It uses several libraries like GLib for core functions, GObject for object-oriented programming, and Gio for file and network operations. Gtk+ started in the 1990s and is currently at version 3. It is used in many GNOME applications and supports multiple programming languages through bindings like Vala.
Multimedia support in WebKitGTK and WPE, current status and plans (GStreamer ...Igalia
By Philippe Normand.
This talk is about multimedia support in the WPE and GTK+ WebKit ports. I will give a status update about the HTML5 features currently supported by our GStreamer backend, such as WebRTC, MSE, MediaCapabilities support. The talk would also include a brief case study about using WPE and its Cog browser on IMX6 platforms.
(c) GStreamer Conference 2018
CC-BY-SA 3.0
https://gstreamer.freedesktop.org/conference/2018/
https://gstconf.ubicast.tv/videos/multimedia-support-in-webkitgtk-and-wpe-current-status-and-plans/
WPEWebKit, the WebKit port for embedded platforms (Linaro Connect San Diego 2...Igalia
By Philippe Normand.
WPEWebKit[1] is a WebKit flavor (also known as port) specially crafted for embedded platforms and use-cases. During this talk I would present WPEWebKit's architecture with a special emphasis on its multimedia backend based on GStreamer[2] and implementing support for the MSE[3], EME[4], MediaCapabilities specifications. I would also present a case study on how to successfully integrate WPEWebKit on i.MX6 and i.MX8M platforms with the Cog[5] standalone reference web-app container or within existing Qt5 applications, using the
WPEQt QML plugin.
[1] https://wpewebkit.org
[2] https://gstreamer.freedesktop.org
[3] https://www.w3.org/TR/media-source/
[4] https://www.w3.org/TR/encrypted-media/
[5] https://github.com/Igalia/cog
Linaro Connect San Diego 2019
September 23-27, 2019
https://connect.linaro.org/resources/san19/
The document provides an introduction and overview of OpenGL graphics programming. It discusses that OpenGL is a 3D graphics rendering API that is hardware independent and portable. The document outlines the OpenGL rendering pipeline and libraries. It describes that OpenGL is not a language itself but makes calls to functions from libraries like GLUT, GLU, and OpenGL in a programming language like C/C++. The basic framework of an OpenGL program and functions for initializing OpenGL state, registering callbacks, and the event processing loop are also covered.
Inject the Web into your GStreamer pipeline with WPE using a GStreamer/WebKit...Igalia
Philippe Normand discussed injecting web content into GStreamer pipelines using WPEWebKit. He introduced WPEWebKit, an embedded version of the WebKit engine tailored for devices. He described the GstWPE plugin that allows rendering WPEWebKit content in GStreamer pipelines. This allows overlaying web pages on video streams. Future work includes adding audio support and improving input event handling.
This document discusses using JavaScript in Linux desktop applications and platforms. It describes how JavaScript can be used in desktop applications through platforms like XULRunner, GNOME's Seed/GJS runtime, and GNOME Shell extensions. These platforms allow JavaScript to integrate with and control desktop libraries and APIs like GTK, Clutter, and GStreamer. The document also notes differences between Seed and GJS and provides examples of JavaScript desktop applications.
Tech Days 2015: Multi-language Programming with GPRbuildAdaCore
The document discusses GNAT Project technology, which allows defining multi-language software projects using GPRbuild project files. A GPR project file provides a declarative description of project properties like source directories, compilation options, and targets. GPRbuild understands different languages and compilers and can build multi-language projects. It can also perform distributed builds across multiple machines.
Basics of GTK Programming in C Session by Karthik at Indian Linux Users Group, Chennai Monthly meet.
http://www.ilugc.in/content/ilugc-monthly-meet-december-11-th
Porting the Source Engine to Linux: Valve's Lessons Learnedbasisspace
These slides discuss the techniques applied to porting a large, commercial AAA engine from Windows to Linux. It includes the lessons learned along the way, and pitfalls we ran into to help serve as a warning to other developers.
Graphics Programming in C under GNU Linux (Ubuntu distribution)Tushar B Kute
This document discusses how to set up graphics programming in C using SDL and libgraph libraries on Ubuntu Linux. It explains that SDL is a cross-platform multimedia library for accessing graphics, sound and input devices across platforms, while libgraph implements the Turbo C graphics API using SDL. It then provides step-by-step instructions on installing prerequisite packages, downloading and compiling libgraph, and compiling a sample C program to draw a circle using the libgraph library.
Go is a compiled, statically typed programming language with strong concurrency features. Gomobile is a tool that allows Go code to run on mobile platforms like Android and iOS. It can generate native Android apps or build Go libraries that can be imported into Android and iOS projects. The presentation demonstrated how to set up Gomobile and build Go mobile apps and libraries, highlighting some caveats to consider.
GitBucket: Open source self-hosting Git server built by Scalatakezoe
This document provides information about GitBucket, an open source self-hosting Git server created by Naoki Takezoe using Scala. Some key points:
- GitBucket is an open source self-hosting Git server built using Scala and Java technologies. It allows hosting both public and private repositories.
- It has over 8,000 stars on GitHub and supports features like issues, pull requests, wiki pages, and plugins.
- The developer chose Scala for its interoperability with Java libraries and broad ecosystem. This helped minimize development costs, which is important for sustainability of personal open source projects.
This document provides information about PyGTK, which allows creating graphical user interfaces for Python programs using the GTK+ toolkit. PyGTK bridges Python and GTK+ so Python programs can have windows, buttons, menus and other widgets. It is free software under the LGPL license and works cross-platform on Linux, Windows, MacOS and others. The document gives an example of basic PyGTK code to create a window and enter the main loop. It also provides contact information for the organization that created the presentation.
Open Graphics Library (OpenGL) is a cross-language, cross-platform application programming interface (API) for rendering 2D and 3D vector graphics. The API is typically used to interact with a graphics processing unit (GPU), to achieve hardware-accelerated rendering.
Rapid and Reliable Developing with HTML5 & GWT.
Manuel Carrasco Moñino proposes using modern web technologies like HTML5 and JavaScript to build rich internet applications that can run on desktops, mobile devices, and tablets from a single codebase. He suggests frameworks like Google Web Toolkit (GWT), Apache Cordova, PlayN, and NoSQL databases to develop cross-platform applications in a high-level language like Java. Carrasco provides examples of projects using these techniques and encourages contributing to open source.
This document discusses improving the usability of open source software. It explores options for developing graphical user interfaces for open source projects. Developers can work on existing open source projects or start new ones focused on areas like operating systems, applications, frontends, configuration files, or translations. Popular graphical libraries like GTK+ and Qt can be used to develop GUIs, and bindings exist for languages like Python, Perl, and C++. Tools like Glade and Qt Designer allow visual design of user interfaces. Frameworks like wxWidgets aim to create truly cross-platform applications with native looks and feels. The document provides examples of "Hello World" programs using different libraries and languages.
Castle Game Engine and the joy of making and using a custom game engineMichalis Kamburelis
Presentation about Castle Game Engine ( https://castle-engine.io/ ) at GIC 2022 conference. We briefly show Castle Game Engine features then talk about important reasons and things you should take into account if you want to be as crazy as me -- and develop your custom engine :)
Update on the open source browser space (16th GENIVI AMM)Igalia
By Jacobo Aragunde Pérez
This session will provide the latest news on the ever-changing world of Open Source browsers. We will show what's currently happening with the integration of Chromium with Wayland and the latest WebKit ports, with special attention to WPE (WebKitForWayland), the newest port.
(c) 16th GENIVI AMM
2017
https://at.projects.genivi.org/wiki/display/WIK4/16th+GENIVI+AMM
This document provides an overview of GTK+ (Gimp Toolkit), an open source GUI toolkit for creating graphical user interfaces. It discusses the core libraries that make up GTK+ like GLib, GDK, Pango and Cairo. It also summarizes SqueakGTK, which provides bindings from Squeak to GTK+ to build graphical applications in Squeak that can run on multiple platforms like Windows and Linux.
WPE, a New WebKit Port Optimised for Embedded (IBC 2017)Igalia
By Miguel Ángel Gómez.
Browsers are the killer applications that many network device manufacturers need to embed in their products. However, there are many challenges that hinder the dream of building performant web browsers for low-cost devices. With the aim of making this dream a reality, at Igalia we have released WPE WebKit, a new WebKit Port optimized for Embedded platforms. WPE WebKit is designed with simplicity and performance in mind: a hardware accelerated fullscreen browser with multimedia support, as small (both in memory usage and disk space) and light as possible, and implementing the most relevant HTML APIs defined.WPE WebKit is now part of RDK and has been accepted upstream at webkit.org as a new official port of WebKit. We expect WPE WebKit to be deployed in millions of STB by the end of Q3.
(c) IBC 2017
https://show.ibc.org/ibc-content-everywhere-hub-programme/wpe-a-new-webkit-port-optimized-for-embedded-
17-Sep-2017
Preparing Non - Technical Founders for Engaging a Tech AgencyISH Technologies
Preparing non-technical founders before engaging a tech agency is crucial for the success of their projects. It starts with clearly defining their vision and goals, conducting thorough market research, and gaining a basic understanding of relevant technologies. Setting realistic expectations and preparing a detailed project brief are essential steps. Founders should select a tech agency with a proven track record and establish clear communication channels. Additionally, addressing legal and contractual considerations and planning for post-launch support are vital to ensure a smooth and successful collaboration. This preparation empowers non-technical founders to effectively communicate their needs and work seamlessly with their chosen tech agency.Visit our site to get more details about this. Contact us today www.ishtechnologies.com.au
Do you want Software for your Business? Visit Deuglo
Deuglo has top Software Developers in India. They are experts in software development and help design and create custom Software solutions.
Deuglo follows seven steps methods for delivering their services to their customers. They called it the Software development life cycle process (SDLC).
Requirement — Collecting the Requirements is the first Phase in the SSLC process.
Feasibility Study — after completing the requirement process they move to the design phase.
Design — in this phase, they start designing the software.
Coding — when designing is completed, the developers start coding for the software.
Testing — in this phase when the coding of the software is done the testing team will start testing.
Installation — after completion of testing, the application opens to the live server and launches!
Maintenance — after completing the software development, customers start using the software.
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Looking for a reliable mobile app development company in Noida? Look no further than Drona Infotech. We specialize in creating customized apps for your business needs.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
SOCRadar's Aviation Industry Q1 Incident Report is out now!
The aviation industry has always been a prime target for cybercriminals due to its critical infrastructure and high stakes. In the first quarter of 2024, the sector faced an alarming surge in cybersecurity threats, revealing its vulnerabilities and the relentless sophistication of cyber attackers.
SOCRadar’s Aviation Industry, Quarterly Incident Report, provides an in-depth analysis of these threats, detected and examined through our extensive monitoring of hacker forums, Telegram channels, and dark web platforms.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
Graspan: A Big Data System for Big Code AnalysisAftab Hussain
We built a disk-based parallel graph system, Graspan, that uses a novel edge-pair centric computation model to compute dynamic transitive closures on very large program graphs.
We implement context-sensitive pointer/alias and dataflow analyses on Graspan. An evaluation of these analyses on large codebases such as Linux shows that their Graspan implementations scale to millions of lines of code and are much simpler than their original implementations.
These analyses were used to augment the existing checkers; these augmented checkers found 132 new NULL pointer bugs and 1308 unnecessary NULL tests in Linux 4.4.0-rc5, PostgreSQL 8.3.9, and Apache httpd 2.2.18.
- Accepted in ASPLOS ‘17, Xi’an, China.
- Featured in the tutorial, Systemized Program Analyses: A Big Data Perspective on Static Analysis Scalability, ASPLOS ‘17.
- Invited for presentation at SoCal PLS ‘16.
- Invited for poster presentation at PLDI SRC ‘16.
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Mobile app Development Services | Drona InfotechDrona Infotech
Drona Infotech is one of the Best Mobile App Development Company In Noida Maintenance and ongoing support. mobile app development Services can help you maintain and support your app after it has been launched. This includes fixing bugs, adding new features, and keeping your app up-to-date with the latest
Visit Us For :
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Łukasz Chruściel
No one wants their application to drag like a car stuck in the slow lane! Yet it’s all too common to encounter bumpy, pothole-filled solutions that slow the speed of any application. Symfony apps are not an exception.
In this talk, I will take you for a spin around the performance racetrack. We’ll explore common pitfalls - those hidden potholes on your application that can cause unexpected slowdowns. Learn how to spot these performance bumps early, and more importantly, how to navigate around them to keep your application running at top speed.
We will focus in particular on tuning your engine at the application level, making the right adjustments to ensure that your system responds like a well-oiled, high-performance race car.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
When deliberating between CodeIgniter vs CakePHP for web development, consider their respective strengths and your project requirements. CodeIgniter, known for its simplicity and speed, offers a lightweight framework ideal for rapid development of small to medium-sized projects. It's praised for its straightforward configuration and extensive documentation, making it beginner-friendly. Conversely, CakePHP provides a more structured approach with built-in features like scaffolding, authentication, and ORM. It suits larger projects requiring robust security and scalability. Ultimately, the choice hinges on your project's scale, complexity, and your team's familiarity with the frameworks.
Why Mobile App Regression Testing is Critical for Sustained Success_ A Detail...kalichargn70th171
A dynamic process unfolds in the intricate realm of software development, dedicated to crafting and sustaining products that effortlessly address user needs. Amidst vital stages like market analysis and requirement assessments, the heart of software development lies in the meticulous creation and upkeep of source code. Code alterations are inherent, challenging code quality, particularly under stringent deadlines.
3. What is GStreamer?
● Pipeline-based media framework
● Basic building blocks: elements connected via pads
● Set of libraries with abstract API
● Plugins for specific features
– Often wrapping other libraries, e.g. libav/ffmpeg, OpenCV,
various codec libraries
11. Alternative - gtkgst
● Renders your video into a GtkWidget provided by
the GStreamer sink
● Software implementation uses cairo into a
GtkDrawingArea
● Place the provided GtkWidget wherever in the
widget hierarchy
12. gtkgst - GL
● Gtk 3.16 has new GL support
● GStreamer 1.4 has GL support
● Why don't we try integrating them?
13. What is OpenGL?
● Low level 3D graphics API
● Been around since the 1990's
● Uses dedicated hardware
● Cross-platform
14. OpenGL in GStreamer
● Contained in the libgstgl library
● GstGLDisplay, GstGLContext are your two main
objects. Analogous to GdkDisplay and
GdkGLContext
● Element base classes, color conversion, uploaders,
GL version/extension checking
● Also contains various elements – gltestsrc,
glvideomixer, glimagesink, gleffects, etc
16. Implementation - gtkgst
● ~1000 lines of code
● Relies heavily on the GStreamer GL library and the
GL implementation
● Similar in style and scope to
avsamplebuffersink/caopengllayersink
17. gtkgst - GL
● Currently a proof of concept
● Currently X11 only
● System load causes frame jitter
● Uses Gtk+'s GL context
● Wayland might not be needed due to
efficient/correct subsurfaces
18. Uses
● Anytime you want to display video from GStreamer
into a Gtk+ application
– e.g. Videos/Totem