This document summarizes the development process for a commercial APEX application called eSERT. The developers spent significant time on design, using mockups to design the user interface. They implemented automated builds and testing on virtual machines. The application was deployed using a process that mirrored the APEX installation scheme, with a database schema installation and APEX application installation. Licensing was implemented with customer and license keys to control usage.
Oracle Application Express has proven itself as a powerful development platform for internal development needs in countless organizations worldwide. One of the new frontiers it is starting to conquer is building commercial applications. This session covers what it takes to use Oracle Application Express as a platform for building commercial applications. It looks at all facets of the software development lifecycle and discusses different infrastructures, deployments, processes, and tools used to make development with Oracle Application Express as streamlined and cost-effective as possible. Real-world examples are given throughout the session. Much of what is discussed in this session can also be applied to medium to large Oracle Application Express projects.
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"GlobalLogic Ukraine
This webinar by Oleksandr Bodnar (Lead Software Engineer, GlobalLogic) was delivered at Java Community Webinar #12 on July 14, 2021.
Webinar abstracts:
- Java History: OpenJDK and Oracle JDK
- Java EE (Jakarta EE) vs SE vs ME
- JEP Java SE 8-16
- Future editions of Java
More details and presentation: https://www.globallogic.com/ua/about/events/java-community-webinar-12/
PowerSQL Aids Application Developer ProductivityMichael Findling
Embarcadero Technologies is known for its multi-platform tools that assist database
administrators and developers at every point in the database lifecycle. In March, the
company took a bold new step when it debuted PowerSQL, a professional SQL
development tool that dramatically improves productivity for application developers
charged with SQL development.
.NET Application Modernization with PAS and Azure DevOpsVMware Tanzu
SpringOne Platform 2019
.NET Application Modernization with PAS and Azure DevOps
Speakers: Shawn Neal, Principal Solutions Architect, Pivotal and Jason Stevens, Senior Software Engineer, Microsoft
YouTube: https://youtu.be/ehGojYVLzlI
Travelling Light for the Long Haul - Ian Robinsonmfrancis
OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)
ABSTRACT
One of the attractive qualities of OSGi is its role in enabling technologies that adopt it to manage the cost of their own success. Anything that gains adoption - in technology or elsewhere - picks up baggage as a result and needs to figure out how to deal with current installations while expanding in new directions. The WebSphere platform has been around for almost as long as Java and knows a thing or two about baggage but still manages to travel to many places with just a carry-on allowance. We adopted OSGi internally 8 years ago and have gradually increased our exploitation with each passing release, most recently and deeply with the lightweight WAS Liberty Profile. It hasn't all been plain sailing and we learned from a number of mistakes made along the way. When WebSphere Application Server first adopted OSGi it had over 10 million lines of code in a modest number of huge JARs. The engineering effort to modularize that into a “sensible” number of OSGi bundles was fairly significant. We had a global development team spread across a dozen labs and nearly as many timezones, all learning OSGi principles at the same time. What could possibly go wrong? I’ll spend a little time reviewing the consequences of our bundles-first-services-later approach but our success was initially limited to having the equivalent of a well-organized and large container ship which could travel at speed but needed a pretty wide berth. Our initial investment in OSGi delivered on most of the internal benefits we wanted but failed on some of the external ones that matter to our customers.
Application Servers are used in different ways by Developers and IT Operations. Ops teams care about the overall cost, including performance and availability, of the platform and the applications it supports; Dev teams care about how quickly and easily they can create and deliver their applications and treat the server as a tool. Only some of them know or care about OSGi; multi-channel enablement and cloud deployment are the current pressures they are under. Today, WebSphere is a consumer of OSGi in two distinct fashions. Internally we learned from our earlier experiences and embraced an OSGi services model to enable us to run the same runtime just as fast but in a far more dynamic fashion: it’s how we can start/stop individual technologies of the Java EE Web Profile independently on the WAS Liberty profile, in a 50MB install with a 2-second startup while still support all our customers’ existing deployments. Externally we support both Enterprise OSGi and traditional Java EE as application programming models, on the same runtime and using the same Eclipse-based tools. Our customers who understand and care about OSGi can develop and deploy web application bundles and multi-bundle enterprise applications. Those who don’t care about OSGi benefit from it ind
Oracle Application Express has proven itself as a powerful development platform for internal development needs in countless organizations worldwide. One of the new frontiers it is starting to conquer is building commercial applications. This session covers what it takes to use Oracle Application Express as a platform for building commercial applications. It looks at all facets of the software development lifecycle and discusses different infrastructures, deployments, processes, and tools used to make development with Oracle Application Express as streamlined and cost-effective as possible. Real-world examples are given throughout the session. Much of what is discussed in this session can also be applied to medium to large Oracle Application Express projects.
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"GlobalLogic Ukraine
This webinar by Oleksandr Bodnar (Lead Software Engineer, GlobalLogic) was delivered at Java Community Webinar #12 on July 14, 2021.
Webinar abstracts:
- Java History: OpenJDK and Oracle JDK
- Java EE (Jakarta EE) vs SE vs ME
- JEP Java SE 8-16
- Future editions of Java
More details and presentation: https://www.globallogic.com/ua/about/events/java-community-webinar-12/
PowerSQL Aids Application Developer ProductivityMichael Findling
Embarcadero Technologies is known for its multi-platform tools that assist database
administrators and developers at every point in the database lifecycle. In March, the
company took a bold new step when it debuted PowerSQL, a professional SQL
development tool that dramatically improves productivity for application developers
charged with SQL development.
.NET Application Modernization with PAS and Azure DevOpsVMware Tanzu
SpringOne Platform 2019
.NET Application Modernization with PAS and Azure DevOps
Speakers: Shawn Neal, Principal Solutions Architect, Pivotal and Jason Stevens, Senior Software Engineer, Microsoft
YouTube: https://youtu.be/ehGojYVLzlI
Travelling Light for the Long Haul - Ian Robinsonmfrancis
OSGi Community Event 2013 (http://www.osgi.org/CommunityEvent2013/Schedule)
ABSTRACT
One of the attractive qualities of OSGi is its role in enabling technologies that adopt it to manage the cost of their own success. Anything that gains adoption - in technology or elsewhere - picks up baggage as a result and needs to figure out how to deal with current installations while expanding in new directions. The WebSphere platform has been around for almost as long as Java and knows a thing or two about baggage but still manages to travel to many places with just a carry-on allowance. We adopted OSGi internally 8 years ago and have gradually increased our exploitation with each passing release, most recently and deeply with the lightweight WAS Liberty Profile. It hasn't all been plain sailing and we learned from a number of mistakes made along the way. When WebSphere Application Server first adopted OSGi it had over 10 million lines of code in a modest number of huge JARs. The engineering effort to modularize that into a “sensible” number of OSGi bundles was fairly significant. We had a global development team spread across a dozen labs and nearly as many timezones, all learning OSGi principles at the same time. What could possibly go wrong? I’ll spend a little time reviewing the consequences of our bundles-first-services-later approach but our success was initially limited to having the equivalent of a well-organized and large container ship which could travel at speed but needed a pretty wide berth. Our initial investment in OSGi delivered on most of the internal benefits we wanted but failed on some of the external ones that matter to our customers.
Application Servers are used in different ways by Developers and IT Operations. Ops teams care about the overall cost, including performance and availability, of the platform and the applications it supports; Dev teams care about how quickly and easily they can create and deliver their applications and treat the server as a tool. Only some of them know or care about OSGi; multi-channel enablement and cloud deployment are the current pressures they are under. Today, WebSphere is a consumer of OSGi in two distinct fashions. Internally we learned from our earlier experiences and embraced an OSGi services model to enable us to run the same runtime just as fast but in a far more dynamic fashion: it’s how we can start/stop individual technologies of the Java EE Web Profile independently on the WAS Liberty profile, in a 50MB install with a 2-second startup while still support all our customers’ existing deployments. Externally we support both Enterprise OSGi and traditional Java EE as application programming models, on the same runtime and using the same Eclipse-based tools. Our customers who understand and care about OSGi can develop and deploy web application bundles and multi-bundle enterprise applications. Those who don’t care about OSGi benefit from it ind
"DevOps" denotes a close collaboration and cross-pollination between previous cases i.e, purely the development roles, operations roles and QA roles. As it is necessary for the software to release at an ever-increasing rate, we can see that the old "waterfall" develop-test-release cycle is broken. Devops provides us with consistent software delivery, Faster resolution of complex problems and neatier and crisp feature delivery.
In Chapter 1, “Introduction”, you will get to know overview, history, overall architecture, building blocks, and features of the spring framework in detail.
Full book is available as blog entry in www.javacodebook.com.
Best Practices Configuring And Developing Share Point SolutionsAlexander Meijers
This presentation contains best practices from myself and Microsoft regarding configuring and developing SharePoint Solutions. What to do with development, resources, disposing, deployment and some other items.
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!goodfriday
Come hear how Microsoft has delivered multiple technologies that focus on interoperability with non-Microsoft and Open Source technologies. Learn how to use the Eclipse tools today to build Silverlight applications that run on PCs and Macs, how to develop using combinations of Java, Ruby and PHP in addition to the standard Microsoft languages, and how Microsoft's commitment to openness with the Azure Services Platform and the use of claims-based identity supports heterogeneous identity systems.
Techniques and Tools to Improve the Salesforce Development CycleSalesforce Developers
This session will demonstrate some of the solutions used to create an efficient, robust, and flexible development process. You'll learn how to take advantage of reusable development organizations, isolated feature development, automated version control, continuous integration, and automated testing. By combining the Salesforce Migration Tools, Apache Ant Scripting, Force.com CLI, Apache Subversion, and Jenkins, a reliable and scalable development system can be implemented.
APEX Application Lifecycle and Deployment 20220714.pdfRichard Martens
APEX application deployment is mostly done by exporting the application and importing it into the target environment.
But what if your team continuously develops (as they should), where do you stop developing to start preparing your release-deployment? You should be able to deploy based on features; without your developers having to halt their development.
Using the deployment-method explained in this presentation you will be able to do just that.
The method includes things like Code versioning (GIT), Feature-tickets (Jira), Code Review (Quality), Automated Deployment using Jenkins and Flyway. When implemented you will be able to successfully and predictively deploy your APEX applications (including underlying database objects) to the different deployment-environments.
With a few modifications you can even upgrade the methodology to be a "continuous delivery" methodology.
"DevOps" denotes a close collaboration and cross-pollination between previous cases i.e, purely the development roles, operations roles and QA roles. As it is necessary for the software to release at an ever-increasing rate, we can see that the old "waterfall" develop-test-release cycle is broken. Devops provides us with consistent software delivery, Faster resolution of complex problems and neatier and crisp feature delivery.
In Chapter 1, “Introduction”, you will get to know overview, history, overall architecture, building blocks, and features of the spring framework in detail.
Full book is available as blog entry in www.javacodebook.com.
Best Practices Configuring And Developing Share Point SolutionsAlexander Meijers
This presentation contains best practices from myself and Microsoft regarding configuring and developing SharePoint Solutions. What to do with development, resources, disposing, deployment and some other items.
Build Applications on the Microsoft Platform Using Eclipse, Java, Ruby and PHP!goodfriday
Come hear how Microsoft has delivered multiple technologies that focus on interoperability with non-Microsoft and Open Source technologies. Learn how to use the Eclipse tools today to build Silverlight applications that run on PCs and Macs, how to develop using combinations of Java, Ruby and PHP in addition to the standard Microsoft languages, and how Microsoft's commitment to openness with the Azure Services Platform and the use of claims-based identity supports heterogeneous identity systems.
Techniques and Tools to Improve the Salesforce Development CycleSalesforce Developers
This session will demonstrate some of the solutions used to create an efficient, robust, and flexible development process. You'll learn how to take advantage of reusable development organizations, isolated feature development, automated version control, continuous integration, and automated testing. By combining the Salesforce Migration Tools, Apache Ant Scripting, Force.com CLI, Apache Subversion, and Jenkins, a reliable and scalable development system can be implemented.
APEX Application Lifecycle and Deployment 20220714.pdfRichard Martens
APEX application deployment is mostly done by exporting the application and importing it into the target environment.
But what if your team continuously develops (as they should), where do you stop developing to start preparing your release-deployment? You should be able to deploy based on features; without your developers having to halt their development.
Using the deployment-method explained in this presentation you will be able to do just that.
The method includes things like Code versioning (GIT), Feature-tickets (Jira), Code Review (Quality), Automated Deployment using Jenkins and Flyway. When implemented you will be able to successfully and predictively deploy your APEX applications (including underlying database objects) to the different deployment-environments.
With a few modifications you can even upgrade the methodology to be a "continuous delivery" methodology.
Top 8 Reasons ASP.NET Core is the Best Framework for Web Application Developm...WDP Technologies
The time is right to design and build outstanding web applications that can give your business a competitive edge. As a prominent .NET development company, WDP Technologies, we have command and expertise over the language and have tried to address any possible questions you can have regarding .NET Core and why to prefer it. If you have any questions, you can get in touch with us. Our experts are waiting to bring the best of ASP.NET Core for you.
DBD 2414 - Iterative Web-Based Designer for Software Defined Environments (In...Michael Elder
Delivered at IBM Innovate 2014. Original abstract:
How can you improve your customer feedback loop using iterative, full stack application design for the cloud?
In this presentation, we’ll cover an innovative new way of designing and versioning your cloud applications through a web-based environment development toolkit. With support for OpenStack and other cloud providers, we’re able to capture all aspects of your cloud-based application from compute, storage, and virtual networking all the way up to the application managed in UrbanCode Deploy. In a single click, you can stand up a new environment complete with application components deployed and ready to run. With built in configuration management, you can see the changes made by your automation to configure each node. And with UrbanCode Deploy’s inventory management system, you’ll always know what version of which component is deployed where.
Come learn about our new take on cloud design and get involved to provide us with feedback to make this offering exactly what you need.
Pat Farrell, Migrating Legacy Documentation to XML and DITAfarrelldoc
Pat Farrell is a TECHNICAL information developer who has developed a variety of custom solutions to increase productivity. This presentation is an overview of Pat's technical innovations followed by more detail of a conversion project he managed: migrating documentation to XML and DITA. Learn what you need to begin such a conversion project: workflow, considerations, and the benefits and fallbacks of using in-house or external resources for your XML or DITA conversion project.
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentDevOps.com
Eclipse Che introduces a new kind of developer tool that runs directly on Kubernetes and is accessible through a web-based IDE. The container architecture enables easy and rapid onboarding of new team members while eliminating workstation maintenance costs and limitations, all while leveraging a VS Code-like experience. The release of Che 7.0 by the open source community goes further by making the developer environment consistent, repeatable and reproducible. Now available for mainframe-based code with the Che4z subproject, teams can collaborate on cross-platform applications and bridge the distributed/mainframe divide.
The panel with discuss how the Eclipse Che IDE and workspace server drive developer productivity and improve overall software delivery.
Experiences using CouchDB inside Microsoft's Azure teamBrian Benz
Co-presented with Will Perry (@willpe). Real-world experiences using CouchDB inside Microsoft, and also how to get started with CouchDB on Microsoft Azure.
Welcome to
Top Arguments for Why ASP.NET Core Is the Best Framework for Developing Web Applications
It is now simpler to create a web application and expedite corporate procedures than it formerly was in today technologically advanced environment. For reliable Asp.net Web Development services, there are a variety of technologies, tools, and frameworks on the market. But with so many options, it will be difficult to determine which technology is best for web development.
Making the proper technology or framework selection is a challenging decision that keeps engineers up at night. But the ASP.NET Core framework is a response to this query. You must now be asking what ASP.NET Core is and what distinguishes a framework from others. You might also wonder what benefits there are to developing web applications with ASP.NET Core.
An overview of ASP.NET Core
With the most recent release of ASP.NET Core, Microsoft followed in the footsteps of Windows by giving customers the option of developing web applications on other platforms. Building cloud-based web apps is made possible by the open-source, high-performance framework's cutting-edge functionality and cross-platform capabilities.
Earlier, ASP.NET 4.x enjoyed tremendous popularity among developers all around the world. However, ASP.NET Core is an improved version with a leaner and more modular architectural design. However, the most recent.NET 6 version has a ton of incredible features.
Do you know that 8.1% of websites utilize ASP.NET?
ASP.NET Core is a powerhouse of cutting-edge capabilities that has skyrocketed in popularity among developers and paved the path for effective and straightforward web application development. Modern apps that are cloud-based and cross-platform are frequently created using the high-performance framework nowadays.
This cutting-edge program allows you to:
• Use the.NET Framework or.NET Core to run web applications.
• Create innovative and effective online applications, mobile backends, and IoT applications.
• As it gives developers the opportunity to create apps for Windows, Linux, and macOS, it supports various platforms.
• Gain flexibility by choosing whether to install apps and services locally or in the cloud.
You may have heard of the terms.NET Core and.NET Framework as a developer. But first, let us to explain the distinction between.NET Core and.NET Framework..NET Core vs..NET Framework Comparison Dot-NET-Core-vs.-Dot-NET-Framework.jpg
The link between.NET Core and.NET Framework is subset-superset. The "Core" in.NET Core designates the runtime and framework libraries' fundamental functionality from the.NET Framework.
For instance, the GC, JIT, and types like String and List are shared by.NET Core and.NET Framework. The goal of the creation of.NET Core was to make.NET open-source, cross-platform, and suitable for use in situations with fewer resources.The.NET Framework enables programmers to create server- and desktop-based Windows programs, including ASP.NET
Everything PHP Developers Need to Be Productive. This article discusses Delphi for PHP 2.0’s indispensable features that help PHP s write PHP applications faster and with higher quality. At the end of this article you won’t need to start a new project to use Delphi for PHP, you will just open your PHP files and will be able to start using the source code editor, debugger, profiler, and visual development.
ASP.NET Core is a development web application framework that is created, maintained, and supported by a large number of professionals and Microsoft through open-source projects. It was initially released in 2002 with the goal of developing web applications that Asp.net Web Development were platform-neutral and had integrated features that allowed them to work seamlessly with the HTTP protocol.
There are tons of Software Development tools and selecting the best could be a challenge. Following is a curated list of the 21 top software development tools.
Visit On:- https://www.samaritaninfotech.com
Boilerplates: Step up your Web Development ProcessFibonalabs
Having a boilerplate for your project, whether you are a developer or a designer, is always a good idea. It saves a lot of time from going back and forth between setting up the scaffolding and getting your hands dirty with code; it also helps in sharing your code with others. You can use it to get a head start on new projects and work on the core functionality. Using custom-designed React boilerplates shortened our initial sprints from 2 weeks to 3 days!
Similar to Building Commercial Applications with Oracle Applications Express by Scott Spendolini (20)
Any DBA from beginner to advanced level, who wants to fill in some gaps in his/her knowledge about Performance Tuning on an Oracle Database, will benefit from this workshop.
Using SQL Plan Management (SPM) to Balance Plan Flexibility and Plan StabilityEnkitec
This presentation is about understanding all 3 components of SPM and how we can use this technology to efficiently migrate "good" Execution Plans from one Release to another, or from one System to another.
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.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
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.
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...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.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
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.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
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/
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.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
UiPath Test Automation using UiPath Test Suite series, part 5
Building Commercial Applications with Oracle Applications Express by Scott Spendolini
1. Developing Commercial APEX
Applications
Doug Gault & Scott Spendolini
Enkitec
1
WELCOME
2
Doug Gault
! doug.gault@enkitec.com
! Using Oracle since 1988
! Versions 5.1b, 6, 7, 8, 9, 10, 11
! Focused on Web Technologies
! OWA, ‘PSP’, Web DB, HTML-DB, APEX
! Hotsos Product Development Director
! Co-Founded Sumneva
! Now part of Enkitec
! APEX PRACTICE DIRECTOR
! Focused on Providing World Class APEX Products,
Education and Services
3
! scott.spendolini@enkitec.com
! @sspendol
! Ex-Oracle Employee of 10 years
! Senior Product Manager for Oracle APEX
from 2002 through 2005
! Founded Sumner Technologies
in October 2005
! Co-Founded Sumneva in January 2010
! Joined Enkitec in June 2012
! Oracle Ace Director
! Co-Author, Pro Oracle Application Express
! Author, Secure APEX Development Best
Practices
! “Scott” on OTN Forums
Scott Spendolini
4
2. About Enkitec
! Oracle Platinum Partner
! Established in 2004
! Headquartered in Dallas, TX
! Locations throughout the US & EMEA
! Specialties include
! Exadata Implementations
! Development Services
! PL/SQL / Java / APEX
! DBA/Data Warehouse/RAC
! Business Intelligence
5
Agenda
! Overview
! Design
! Infrastructure
! Testing
! Deployment
! Summary
6
OVERVIEW
7
Disclaimer
! Almost 100% of the content in this session are
applicable to any type of APEX project -
commercial software or internal
8
3. Passion for APEX
! Combined 25 years of APEX experience
! Wanted to produce a product with APEX
! Knew that a subject matter expert was needed to
succeed
! A tool for APEX developers solved this problem
9
eSERT Origins
10
! Given the declarative nature of APEX, many
security vulnerabilities could be exposed by
inspecting the metadata
! Why not build an APEX application to evaluate the
security of other APEX applications?
Benefits
! Can adopt the APEX footprint
! No additional software or hardware
! Same database and operating system versions
! Tight integration with APEX
! Ease of distribution
11
DESIGN
12
4. Design
! Hands down the most important phase
! Need to spend ample time here and work out problems on
paper not in code
! Conceptual and feature design is just as
important as visual design
! Version 1 vs Version 2
! Core Functionality
! Asynchronous Execution & Collections
! APEX_ADMINISTRATOR_ROLE Role
13
User Interface Mockups
! Balsamic mockups is invaluable
! Issues with UI can be flushed out early and quickly
! Easier to get user
feedback as you can send
as PDF or image versus
installing software
14
User Interface
! Keep it simple
! Keep dependencies similar to that of APEX
! You have no control over when APEX will be upgraded
! If it can't be installed easily, it's not worth
including
! Test in all target browsers early and often
! IE will add days to project timeline and subtract years
from your life if you wait until the end
15
Dealing with IE
! Initially tried to have a single CSS file for all
browsers
! Quickly realized that was a bad idea
! Thus, created a specific
CSS for IE
! A little extra work on our
side to synchronize the
two, but ultimately a
better approach
16
5. PL/SQL
! All code of any length goes in a package
! Even a simple RETURN FALSE
! Benefits of this approach
! Centralized
! Easier to patch
! Single SQL script vs. entire APEX application
! Wrappable
! Upgrade from 4.1 -> 4.0
17
Tables & Views
! All tables accessed via views
! Allows for security and manageability
! Easier to patch
18
Page Zero
! Used as much as possible
! However, need to keep an eye on the number of
components placed here
19
Shared Components
! Use as much as possible
! All computations and processes referenced package calls
20
6. Shared Components
! Images, JS and CSS have to be shared components
! Easier to install and manage
! Can't assume file system access
! Helpful to include version in file names
! Prevents browser cache issues after upgrades
21
Supporting Objects
! Decided to have a split installation
! DB objects installed via SQL Plus as SYS
! Images, JS and CSS delivered as Apex supporting objects
! Gotcha: supporting object definitions need to be updated
if their corresponding shared component is changed
22
Versions
! Multiple Apex versions presents a challenge
! Initially thought few customers were using Apex 4.0
! “Your idea, although interesting, is irrelevant”
! “The answer to your question is not in the building”
! Survey proved otherwise
! Ideally this can be mitigated by having common database
objects
23
Database Support
! Piggyback on APEX-supported versions
! 10g R2+
! Exception was Oracle XE
24
7. INFRASTRUCTURE
25
Infrastructure Choices
26
! Source Code Control
! Shared Development
! Automated Builds
! Licensing
Source Code Control
27
! We were comfortable with subversion
! Fear of change? Nahhh!
! Didn’t want to manage our own
! Fear of commitment? Nahhh!
! Looked for hosted version control
! Several out there, but one caught our eye
! WWW.CODESPACES.COM
CodeSpaces
28
CUSTOM
8. CodeSpaces
! Custom “Small Team” Plan
! Fewer Users (6)
! Less Storage (1Gb)
! Unlimited Projects
! Unlimited Repositories
! $200 per year ($16 per Month)
! Flexibility was a big selling point.
29
SubVersion Clients
! Versions
30
! Cornerstone 2
! Both were
! Simple easy to use interface
! Allows “experts” to do what
they need to do
! Friendly to SVN Newbies
! Recommended
SubVersion Structure
! TRUNK
! All development happens
here
! Sub-directories created for
each type of object
! Included objects that were
to be loaded into the app as
Supporting Object scripts
! Application was exported and
checked in as a single
object.
31
SubVersion Structure
! Branches
! Reserved for Branches in the
source code line
! When you need to change the code
based on changing underlying
requirements
! We needed a code branch when
we worked with both APEX 4.0 &
4.1
32
9. SubVersion Structure
! Releases
! Only created after building
and testing a release
! Takes a snapshot of all
source that was released
! Would allow us to
! Recreate the release if necessary
! Create a Branch / Create a Patch
33
Shared Development
! We faced a number of challenges
! Needed a platform we could share and use to develop
collaboratively
! Disparate Locations (Texas & Virginia)
! No hosting capability of our own
! Small company, so cost was important
! Traditional APEX Hosting companies weren’t a good fit
! No access to Internal workspace
! No access to SYS/SYSTEM users
34
Shared Development
! Amazon Web Services
! Inexpensive
! Easy to stand up
! AMI’s already existed with OEL and Oracle Database
! Full control of the machine
! DB Version
! APEX Version
! All the right access
! Safe from ourselves
! Available from everywhere
! Create our own AMI’s
35
Shared Development
! Database Version Choice
! Needed to make sure what we developed would work
across all versions
! Looked at XE
! Found issues on 10XE with some of the SQL syntax that we were using
! Settled on Oracle 10g SE as base development platform
! Lowest common denominator
! Lowest cost to the customer
! What we wrote here would work on Enterprise Edition
! Fairly confident that things would port seamlessly to 11+
36
10. Automated Builds
! Needed a way to create a “Release” of the
software
! Install testing, functional testing, actual release
! Manual method would get very tedious very
quickly
! Knew from previous experience that Apache ANT
could automate this type of thing
37
Automated Builds
! Created an ANT build.xml script allowing us to
! Dynamically create the working directory
! Check the most recent version of code out of SVN
! Replace @VERSION@ variables in code with a dynamic
versions number passed on the command line
! Choose to WRAP Oracle PL/SQL code
! (or not for dev builds)
! Zip the files into a “Release”
! Clean up the working directory
38
Automated Builds
! Final Build Script had 3 main targets
! RELEASE
! Create a final wrapped and zipped release
! NOWRAP
! Create a full release with unwrapped PL/SQL
! CLONE
! Create a Development version that doesn’t replace the @VERSION@
Tags
39
ant <Target> -D sv_version=020100
Product Licensing
! Licensing requirements were unique
! We understood that product licensing can almost always
be subverted. It’s there to keep honest people honest.
! Multiple license types
! SITE
! WORKSPACE
! APPLICATION
! Loads of licensing software out there, but nothing that
would really work for APEX
! Ended up having to rolling our own in PL/SQL
40
11. Product Licensing
! Licensing consists of a Customer Key and a
License Key
! Customer Key - Hashes information about the server,
GUID of the product and other info based on the license
type
! License Key - Hashes information that matches the
Customer Key as well as Expiration Date and Licensed
Company
41
Product Licensing
! Two sets of code
! Application Side
! Creates and encode Customer Key
! Receives, interprets and validates License Key
! Product Owner Side
! Receives and validates Customer Key
! Matches Customer Key to a valid license in our back end system
! Created and encodes License Key, saves it and presents to user
42
Application Side
43
Product Owner Side
44
12. Product Licensing Benefits
! Allows us to
! scale product use to the need of the end user
! quickly create “Trial” keys that expire after a given
amount of time
! limit the use of the product to a specific licensed server
regardless of the level of license purchased
45
TESTING
46
Product Testing
! Testing is hard and no one likes to do it
! It covers way more than you might think
! Functional Testing
! Installation Testing
! Upgrade Testing
! Platform Testing
! Do everything you can to make it
! Easy
! Repeatable
! Full Coverage
47
Product Testing
! We chose to use Virtual Machines as our testing
platform
! Self Contained “Sandbox”
! Easy to copy a fully set up system
! Easy access to multiple platforms (OS, DB, etc)
! Snapshots
! Makes rollbacks as easy as a button click
! Snapshots of successful installs/upgrades provide the basis for the next
generation
! Allows you to setup and test “edge-cases” and keep those
around for future tests.
48
13. Product Testing
! Identified and mitigated several potential
problems by having the wide variety of platforms
available.
! Issue with install script on Windows based SQL*PLUS
! Issue with 10g and positional parameters in a function
when used in a SQL Query
! Lack of support for certain functionality in Oracle XE
49
DEPLOYMENT
50
Deployment
! Decided early on to mirror the APEX install & upgrade
scheme
! Allows users to upgrade SAFELY in place
! Allows rollback in the odd case of a failed installation
! Multi Part Install
! Database Schemas and Objects
! SV_SERT_XXXXXX
! SV_SERT_APEX
! SV_SERT_APEX_ALL
! APEX Application
! Application per Workspace
! Application Cross Workspace
51
Deployment
! Database Schemas and Objects
! Modeled on the APEX install Scripts
! SQL Script run as SYS
! Checks pre-requisites
! Creates users
! Creates Objects
! Allows DBA’s to choose underlying tablespace(s) and features/grants to
install
! Future versions will
! Migrate data from previous working schema to new working schema
52
14. Deployment
! APEX Application
! Per Workspace
! Associate the SV_SERT_APEX schema as a Parse As Schema for a
workspace
! Install the eSERT APEX Application in the workspace where the Apps to
be evaluated are
! Cross Workspace (4.1+ only)
! Requires APEX_ADMINISTRATOR_ROLE to be granted to parse as schema
! Associate the SV_SERT_APEX_ALL schema as a Parse As Schema for a
workspace
! Install the eSERT APEX Application in the workspace
! Ability to evaluate all applications across all workspaces
53
Deployment
! Used Supporting Objects quite heavily for images,
JavaScripts, CSS
! Didn’t want customers to have to manually copy these
items to their web server
! Couldn’t adequately script this as everyone’s install bay
be different
! However it was a bit of a challenge
! No “Relationship” between shared components and
supporting objects
! Had to keep deleting & Re-creating them
54
SUMMARY
55
Summary
56
! Developing for APEX is not too unique - but there
are a number of unique benefits
! Shorter development cycles
! Ability to use built-in components to save time
! Charts, IRs, User Interface
! Code is easy to write; difficult to maintain
! Thus, less is more
! “The answer to your question is not in the
building”
! Customer feedback is critical
15. Download
! This and all other Enkitec presentations can be
downloaded for free from:
http://enkitec.com/presentations
57
http://www.enkitec.com
58