This document provides an overview of the uMobile mobile application development framework. It discusses the uMobile application server, which serves as an administrative console and provides REST APIs and modules to native mobile apps. It also covers the Titanium-based native app codebase, content modules like calendar, directory, and campus life examples. It describes options for custom content like external websites accessed via iframe or web proxy. Finally, it discusses mobile view techniques like jQuery Mobile and checking the theme to determine if a request is from a mobile device.
Facilitation of the A Posteriori Replication of Web Published Satellite ImageryMat Kelly
Publicly available NASA satellite imagery hosted on NASA Langley Research Center's web servers are relied upon for analysis by atmospheric scientists. Because the data is hosted in a single location, any downtime, data loss, or latency is reliant on a single point of failure. Data redundancy would assist in dissemination of this data but it would then be necessary to ensure that updated versions of the data or fresh data from the same domain remain related with the original data. In this work, I borrow on technologies from other domains of digital preservation and data distribution to allow the progressively growing corpus of imagery at NASA to be harvested and made available on a peer-to-peer basis using facets of the frameworks behind ResourceSync, BitTorrent, and WebRTC.
React and GraphQL: Under the Hood of The Times Website Redesign https://open.nytimes.com/react-relay-and-graphql-under-the-hood-of-the-times-website-redesign-22fb62ea9764
Presentation from Leading Edge Libraries Conference, September 21, 2017, hosted by the Florida-Caribbean Chapter of the Special Libraries Association. This presentation debunks a few myths about open source software, presents five qualities to look for in an open source solution, gives a brief cost-benefit analysis of open source, and takes a look at Koha, SubjectsPlus, Omeka, and ResourceSpace.
Facilitation of the A Posteriori Replication of Web Published Satellite ImageryMat Kelly
Publicly available NASA satellite imagery hosted on NASA Langley Research Center's web servers are relied upon for analysis by atmospheric scientists. Because the data is hosted in a single location, any downtime, data loss, or latency is reliant on a single point of failure. Data redundancy would assist in dissemination of this data but it would then be necessary to ensure that updated versions of the data or fresh data from the same domain remain related with the original data. In this work, I borrow on technologies from other domains of digital preservation and data distribution to allow the progressively growing corpus of imagery at NASA to be harvested and made available on a peer-to-peer basis using facets of the frameworks behind ResourceSync, BitTorrent, and WebRTC.
React and GraphQL: Under the Hood of The Times Website Redesign https://open.nytimes.com/react-relay-and-graphql-under-the-hood-of-the-times-website-redesign-22fb62ea9764
Presentation from Leading Edge Libraries Conference, September 21, 2017, hosted by the Florida-Caribbean Chapter of the Special Libraries Association. This presentation debunks a few myths about open source software, presents five qualities to look for in an open source solution, gives a brief cost-benefit analysis of open source, and takes a look at Koha, SubjectsPlus, Omeka, and ResourceSpace.
Why would a developer whose framework of preference is Symfony2 pay attention to Drupal 8?
A general overview of Drupal, including pros and cons of using it.
Prepared and presented by Yaroslav Doroshchuk, CTO, Grossum. The presentation took place at DrupalCamp Kyiv 2014.
Past present and future of event registration in drupalKaleem Clarkson
Drupal 8 has limited options on how you can create registrations for events. This presentation talks about how event registrations where handled in Drupal 7 and what the future looks like for Drupal 8. How do you create registrations for Drupal 8?
Leveraging Wikipedia as a Hub for Data Integration: the Remixing Archival Metadata Project (RAMP)
Timothy A. Thompson, Metadata Librarian (Spanish/Portuguese Specialty), Princeton University Library
Presentation from Leading Edge Libraries Conference, September 22, 2017, hosted by the Florida-Caribbean Chapter of the Special Libraries Association. This presentation introduces OpenAthens, explains how it differs from proxy-based authentication, and presents the adoption and implementation process in a small library.
A presentation from Leading Edge Libraries Conference, September 22, 2017, hosted by the Florida-Caribbean Chapter of the Special Libraries Association. This presentation covers web-scale discovery solutions and discovery layers,
and summarizes the top five discovery products on the market. The second half presents a case study of implementing EBSCO Discovery Service at Schaff Library at Lancaster Theological Seminary.
Drupal 8 Basic Training - DrupalEurope 2018 - Maarten De BlockMaarten De Block
Taking your first steps in Drupal? Get to know the history of Drupal, learn to install and manage the system! Maarten De Block is an experienced trainer and author of two Drupal books. He helps you navigate through the basics in easy to understand language.
This presentation introduces the CeCC Docbook Manager - a single source publishing platform.
The presentation includes examples of use by different partner organisations for different outcomes.
The CeCC single source publishing system is a highly flexible web-based application which revolutionises the traditional publishing process.
For more information visit http://www.cecc.com.au/docbook_manager_videos.php
Top 10 HTML5 Features for Oracle Cloud DevelopersBrian Huff
Whether you are using Mobile, Social, Java, or Sites in the cloud, HTML5 is probably the easiest way to create and maintain web applications. Most of the Oracle cloud supports HTML5, so it is important to understand what powerful new features are built into this platform.
Why would a developer whose framework of preference is Symfony2 pay attention to Drupal 8?
A general overview of Drupal, including pros and cons of using it.
Prepared and presented by Yaroslav Doroshchuk, CTO, Grossum. The presentation took place at DrupalCamp Kyiv 2014.
Past present and future of event registration in drupalKaleem Clarkson
Drupal 8 has limited options on how you can create registrations for events. This presentation talks about how event registrations where handled in Drupal 7 and what the future looks like for Drupal 8. How do you create registrations for Drupal 8?
Leveraging Wikipedia as a Hub for Data Integration: the Remixing Archival Metadata Project (RAMP)
Timothy A. Thompson, Metadata Librarian (Spanish/Portuguese Specialty), Princeton University Library
Presentation from Leading Edge Libraries Conference, September 22, 2017, hosted by the Florida-Caribbean Chapter of the Special Libraries Association. This presentation introduces OpenAthens, explains how it differs from proxy-based authentication, and presents the adoption and implementation process in a small library.
A presentation from Leading Edge Libraries Conference, September 22, 2017, hosted by the Florida-Caribbean Chapter of the Special Libraries Association. This presentation covers web-scale discovery solutions and discovery layers,
and summarizes the top five discovery products on the market. The second half presents a case study of implementing EBSCO Discovery Service at Schaff Library at Lancaster Theological Seminary.
Drupal 8 Basic Training - DrupalEurope 2018 - Maarten De BlockMaarten De Block
Taking your first steps in Drupal? Get to know the history of Drupal, learn to install and manage the system! Maarten De Block is an experienced trainer and author of two Drupal books. He helps you navigate through the basics in easy to understand language.
This presentation introduces the CeCC Docbook Manager - a single source publishing platform.
The presentation includes examples of use by different partner organisations for different outcomes.
The CeCC single source publishing system is a highly flexible web-based application which revolutionises the traditional publishing process.
For more information visit http://www.cecc.com.au/docbook_manager_videos.php
Top 10 HTML5 Features for Oracle Cloud DevelopersBrian Huff
Whether you are using Mobile, Social, Java, or Sites in the cloud, HTML5 is probably the easiest way to create and maintain web applications. Most of the Oracle cloud supports HTML5, so it is important to understand what powerful new features are built into this platform.
This presentation, given at the Alpes JUG in Grenoble France, talks about how to go from portlet development to composite applications development. Composite applications are a great way to speed up web application development.
SOLID Programming with Portable Class LibrariesVagif Abilov
Developers often don't pay attention to code portability until they need to target multiple platforms. However, large amount of non-portable code often hints about violation of clean code principles, so it is worth investigating which part of the source code base are platform-specific and for what reasons.
In this session we will give an overview of portable class libraries, show how to extract PCL components from a real-world application and go through typical challenges that are faced when writing portable code. We will present the original tool that analyzes assemblies for portability compliance and can be used as a guard to prevent mixing business logic with infrastructure-specific functionality. Finally we will demonstrate how PCLs help targeting platforms such as Windows Store, Android and iOS.
SEE 2009: Improving Mobile Web Developer ExperienceTasneem Sayeed
This talk will provide strategies to identify common developer pitfalls for web developers developing on a mobile platform. It will include code fragments for implementing AJAX requests for a social networking application and how to avoid frequent developer pitfalls when displaying the data retrieved on the mobile device. It will further provide coding strategies for improving performance and reducing footprint when developing on a mobile device utilizing Web technologies such as JavaScript, CSS and HTML.
This talk will conclude highlighting the activities of the Symbian Foundation including a roadmap of how the Symbian tools are being evolved to further improve and enhance the mobile Web developer experience.
Archive of the April 2012 uPortal Community Call.
Agenda:
- uPortal Releases, Recent and Future
- uMobile Update
- Portlet Updates
- Documentation Update
- uPortal/uMobile at the 2012 Jasig Sakai - Conference
- Q&A
This presentation is from the uPortal Community Call on April 15, 2010. It includes an update on uPortal 3.2.x and uPortal 3.3 work, an overview of some of the new administration portlets, discussion of what the community wants to see for content management integration and a discussion of a nice student task list portlet UC Irvine has developed.
uPortal community presentation from Februrary 18, 2010. This presentation includes information about the completed uPortal 3.2 general release, in-progress development for 3.3, and a demo of John Hopkins University's cusotmized uPortal installation.
For video of the JHU demo, please visit http://www.youtube.com/watch?v=Auy3g9ClEkc (demo part 1) and http://www.youtube.com/watch?v=cKU1QREsLEo (demo part 2)
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™UiPathCommunity
In questo evento online gratuito, organizzato dalla Community Italiana di UiPath, potrai esplorare le nuove funzionalità di Autopilot, il tool che integra l'Intelligenza Artificiale nei processi di sviluppo e utilizzo delle Automazioni.
📕 Vedremo insieme alcuni esempi dell'utilizzo di Autopilot in diversi tool della Suite UiPath:
Autopilot per Studio Web
Autopilot per Studio
Autopilot per Apps
Clipboard AI
GenAI applicata alla Document Understanding
👨🏫👨💻 Speakers:
Stefano Negro, UiPath MVPx3, RPA Tech Lead @ BSP Consultant
Flavio Martinelli, UiPath MVP 2023, Technical Account Manager @UiPath
Andrei Tasca, RPA Solutions Team Lead @NTT Data
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.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
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.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
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.
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.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
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.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
3. uMobile Application Server
• Presents browser-based mobile experience
• Serves as an administrative console
• Provides web-based modules, RESTful data to
native app
• Based on uPortal
4. Native App Codebase
• Based on Titanium Appcelerator
• JavaScript-based platform-independent development
framework
• Compile shared codebase to iPhone and Android
applications with native controls
• Open source under the Apache 2.0 License
5.
6. Choosing a Distribution
• uPortal
• Includes mobile framework and skin
• Can power the native app
• uMobile
• Branch of uPortal codebase
• Adds additional modules, test data
8. Overall Development Style
• Create well-defined integration APIs
• Support personalized content, multiple sources
• Support common data formats (iCal, RSS)
• If no standard exists, define our own XSD
• Allow custom implementations
9. Calendar
• Read-only calendar aggregator
• iCal, CalDAV, XML, Bedework,
Exchange
• API for custom integrations
• Allows for delegated
authentication / credential
replay
• Role-based feed distribution
10. News
• Read-only news aggregator
• RSS / Atom feeds
• Role-based feed distribution
19. Type Advantages
External Website via • Chose any language / framework
IFrame or Web Proxy • Manage outside of portal
framework
• Well-defined API
JSR-168 / JSR-286 • Share views w/ desktop portal
Portlet • Take advantage of portal services
such as auth and roles
• Access to native device services
Native Module • Potential performance
improvements
20. Web-based vs. Native
• Web-based modules
• Allow sharing code with web views
• Easier to update and deploy
• Native framework
• Young framework with quickly changing APIs
• Frameworks are changing quickly, want to leave
options open
22. IFrame Publishing Type
• Rendered as
• Desktop browser: include external site via IFrame
• Mobile browser: link to external site
• Native app: include in web view
• Examples
• Transit, library in default uMobile dataset
24. Web Proxy
• Proxy an external website
• Recommendations
• Design specifically for web proxy view
• Use portal CSS styles
• Avoid AJAX to prevent XSS restrictions
26. Custom Portlets
• Add mobile view layer to JSR-286 portlets
• New projects can use Jasig portlet archetype
• Creates skeleton maven project with mobile JSPs
• https://wiki.jasig.org/display/UMM/Using+the+uMobile
+Portlet+Archetype
• http://www.youtube.com/jasigumobile
27. Device-Specific Views
• Often need a different feature or interface on one
platform
• Separate layout / CSS for desktop, tablet, mobile
• Mouse vs. Touch-based interactions
• Want to share backend logic where possible
• Business logic
• Controllers
28. View Layer: jQuery Mobile
• Easily create mobile-friendly views
• More lightweight
• Fairly new project, though growing quickly
• Works with jQuery framework
• Adds touch-based events like tap, swipe, pinch
• MIT or GPL 2
31. Controller
Model
View Resolver
Desktop View Mobile View
Providing Multiple Views
32. Column
Maximized
Mobile
Example: Calendar Portlet
33. Is it Mobile?
• Parse user agent
• User agent available as request header
• Potential for mismatch between device and preferred
version
• Can use WURFL or parse manually
• Make decisions based on theme name
34. Checking the Theme
public class ThemeNameViewSelectorImpl implements IViewSelector {
protected static final String THEME_NAME_PROPERTY = "themeName";
protected static final String MOBILE_THEMES_KEY = "mobileThemes";
protected static final String[] MOBILE_THEMES_DEFAULT = new String[]{ "UniversalityMobile" };
protected final Log logger = LogFactory.getLog(getClass());
public boolean isMobile(PortletRequest request) {
String[] mobileThemes = request.getPreferences().getValues(MOBILE_THEMES_KEY, MOBILE_THEMES_DEFAULT);
String themeName = request.getProperty(THEME_NAME_PROPERTY);
// if no theme name can be found, just assume the request is for a
// desktop client
if (themeName == null) {
logger.debug("No theme name found, assuming desktop environment");
return false;
}
// otherwise, determine if the theme name matches one of the known
// mobile themes
for (String theme : mobileThemes) {
if (themeName.equals(theme)) {
logger.debug("Theme name " + themeName + " matches configured list of mobile themes");
return true;
}
}
logger.debug("No match found for theme name " + themeName + ", assuming desktop environment");
return false;
}
}
35. New Item Count
• Number indicates “new”
items associated with a
module
• Invites users to visit a
module
• Set via a portlet response
property
36. Setting New Item Counts
public class MinimizedStateHandlerInterceptor extends HandlerInterceptorAdapter {
@Autowired(required = true)
private ICoursesDao coursesDao;
@Override
public boolean preHandleRender(RenderRequest request, RenderResponse response, Object handler)
throws Exception {
if (WindowState.MINIMIZED.equals(request.getWindowState())) {
CourseSummaryWrapper summary = coursesDao.getSummary(request);
int newCount = summary.getNewUpdateCount();
response.setProperty("newItemCount", String.valueOf(newCount));
return false;
}
return true;
}
}