19:00 Ask an ACE
To start our conference we gather all ACE's and Oracle Expert speakers for a laid back ask-and-answer session on the evening before the actual conference. Come with your questions, problems, showcases, and put our ACEs to the test, all while enjoying a cold beverage in a relaxed atmosphere.
07:30 Entrance Opening
Bring your ticket and get your unique #aaapeks20 Badge
08:30 Welcome Session
Session Opening with your Organizers: Aljaž, Dario, Peter
08:45 The Transformation of Oracle APEX
If you've used Oracle APEX for a while, you may have noticed that the App Builder has constantly evolved over time, with new features, enhancements, and even a whole new look and feel. As the web modernizes, so too does APEX – and the way it looks, feels, and works. This session talks the UI transformation of Oracle APEX and how it can feel both modern, but immediately familiar, at the same time. Learn all about the changing face of Oracle APEX, how Universal Theme has evolved over its releases, and what's in store for the future.
09:40 A Journey to the Univers(al) Theme
APEX 5.0, released in 2015, introduced the Universal Theme (UT), defined as "a responsive, versatile, and customizable user interface for your Application Express apps". All new APEX applications, developed with at least version 5.0, benefit from using Universal Theme. But what about the legacy applications, developed in APEX 3.x or 4.x? If your applications work perfectly, should I migrate their templates to the new UT? What are the risks? Is the migration process flawless? What can go wrong? Can I rollback if I don't like the result? This presentation aims to give answers to these questions, answers that we found in the most practical way: during our migration projects.
09:40 Keep it Real(time) with WebSockets
For some businesses the difference between knowing something now vs in 1 minute from now can have a huge impact. It can save lives, it can give you a competitive advantage, it can make you more money. Delayed information can have a huge cost, it can cost you lives, your job, money, and even send you out of business. This is WebSockets vs Polling. In this session let's explore why you should be investing in WebSockets, and how easily you can make use of them in every APEX app you build. “Why wait, when you don’t have to!”
09:40 Maze Runner: The Cure for APEX Confusion
Are you new or just getting started with APEX and feeling lost as to how to advance? Do you have that nagging feeling of "I don't know what I don't know?" Then this session is for you! Come and learn everything that relates to the APEX ecosystem—from learning, plug-ins, resources, where to find help, documentation, like-minded individuals, social media, and more.
10:25 Coffe Break
Relax with a good coffee and get some energy for the next sessions.
10:50 Low-code platforms for APEX developers
Low-code platforms are getting more popular, and according to Gartner, even 25% of all applications will be created using these tools by 2023. It is a big opportunity for Oracle APEX, but also a challenge as many other low-code tools in the market can be selected by customers instead. Outsystems, Mendix, ServiceNow, PEGA, and many, many more... How can APEX be better than them? In which areas they are better, and how you can get the same advantages in APEX to convince your client?
10:50 Learning JavaScript Concepts from Real-World Solutions
Think you need to write hundreds of lines of JavaScript code to achieve something useful in an APEX application? Think again! It often takes just a few lines of JavaScript to get the job done. Of course, to write any lines of JavaScript, you’ll need to understand some basic concepts. In this session, attendees will see seven real JavaScript-based solutions that only required eleven lines of code or less implement. In each case, the concepts behind the code will be explained – demystifying how it works.
10:50 Where it all comes together, secured payments with APEX.
Every Oracle release new features are introduced, but when to use them? In this presentation we are not diving deep into one specific feature but make use of a few to implement a payment interface with Oracle APEX. You will see everything you need to know to build an interace like that. I will also share the difficulties you will encounter building an interface like this. So if you want to know more about a real life use case for authentication, REST communication, JSON in the database and Webhooks this presentation will certainly please you. I will use Mollie as a payment provider.
11:40 APEX Integration with Amazon S3 service
Amazon S3 (Simple Storage Service) is a highly-available and highly-scalable service for file storage. Although there is no official support for Oracle Apex by Amazon S3 service, in this session we will show how you can easily implement. S3 service with minimal costs can significantly increase the usability of Oracle XE database if the binary files stored within it, but not within the database itself. During the presentation, we will briefly describe and other free-tier (free) AWS services that can be used by Apex's and best practices related to data security within the S3 service.
11:40 The Wizard of ORDS
ORDS, the Oracle Rest Data Services, has evolved from just a supporting component of Oracle Application Express to the de facto standard tool for delivering RESTful API services for the Oracle database. In this session we will cover - what is Oracle Rest Data Services - set up Oracle Rest Data Services to talk to your database - use Oracle Rest Data Services to get data of all sorts in and out of your database - create documentation for your API's - secure the calls through Oracle Rest Data Services In the end it will be clear, it is not magic. It is the best way to get even more value out of your Oracle database! This presentation will cover all the necessary steps to open up the information in your Autonomous database in the Cloud to the outside world - of course in a secure way. ORDS nowadays is so sophisticated that most steps are extremely easy to do. It almost looks like magic!
11:40 Make Your APEX App Work for All!
The user landscape is vast and diverse. Users of different ability and impairment both permanent and temporary. Users with different skills and preferences. Users with different devices, screen resolutions, using different software to access your APEX apps. Given this diversity, how on earth do you ensure that your APEX app works well for as many of these users as possible? Anthony Rayner, Accessibility Lead for the APEX team will show you how. We will discuss what APEX gives you out of the box to help, demonstrate many different types of testing required, how and when to approach this testing and by whom, and also importantly talk about the importance of testing with a cross-section of real users. In doing so, you will learn how to give all your users a fantastic user experience, with Oracle APEX.
12:25 Lunch Break
One hour lunch to get some food and clear your head.
13:25 Run and Monitor utPLSQL Tests with APEX
Testing is an active part of development and plays an important role in delivering software with the best quality. With utPLSQL, you can quickly write tests for the PL/SQL layer. But how do we make them easily accessible and visible for developers and Project Management Team? - How to test or even automate PLSQL codes with a single click? - How to select a specific test in a specific schema? - How to visualize the results of test runs and quickly identify errors? - How to generate test report for documentation purpose? One possible solution is the integration of utPLSQL and APEX. With this objective, a utPLSQL Testing Application has been developed. The presentation starts with how to easily generate and run test packages for database objects with the utPLSQL framework and continues with how to integrate utPLSQL with APEX. Finally, how to run these tests with the developed application will be presented. Furthermore, many tips and tricks for communicating with utPLSQL will be shown. In addition, a short overview about the application installation will be given. At the end of the presentation, the audience will have an overall picture of how APEX can be used to map a simple and elegant test procedure for PL/SQL codes using the utPLSQL framework and avoid errors in production. All details will be presented with a live demo and insights into our application!
13:25 Bring the light in your always FREE Autonomous Cloud
At Oracle Open World 2019, the always FREE Autonomous Cloud was announced. Shortly after that I did a popular series of blog posts (https://dgielis.blogspot.com/2019/09/best-and-cheapest-oracle-apex-hosting.html). This presentation will build up further on the series, where the blog posts show more how to setup, in this presenation I want to give tips and tricks while using the cloud. How to setup redirects to your applications, how to do database and APEX backups in the cloud, how to measure performance and up-time and how to move your apps from and to the cloud. I hope that after this presentation the attendees have all the info they need to be succesfull running their applications in the Always FREE Autonomous Cloud.
13:25 Database Links vs. REST Enabled SQL (ORDS) in APEX
How to access data remotely? Database links and REST Enabled SQL are definitely the features that you need as a developer. However, there are some differences between them starting with their ability to be queried, authentication methods and how can be accessed within the Cloud environment. What about the performance? It comes in mind each time we access data over the network.. A big plus for REST Enabled SQL is JSON processing and therefore, it is really flexible when working on Cloud instances. However, we should be careful when selecting one of the 2 approaches for our environments, since they can have an impact on our application performance. There will be a step by step presentation showing simple use cases that require the usage of Database links and REST Enabled SQL, how to create them, manipulate data and integrate in different APEX components so we can get more value out of them. Tips, tricks and also some information on the limitations of this approach will wrap the session up.
14:25 The Ultimate Guide to APEX Plug-ins
If you wish to go beyond the built-in capabilities of APEX, but still want to work in a modular and maintainable manner, plug-ins are the way to go. This talk will discuss the basic concepts of a plug-in's inner workings, the different types, the necessary boilerplate code needed to get you up and running when creating a new plug-in, security best-practices, and general tips and tricks. We will also take a look at other aspects of plug-in development, such as making use of 3rd party tools, dealing with source control, finding the best resources, and how to benefit from, and contribute to the vibrant open-source plug-in community. The talk will conclude with a live demo of creating a fully functional plug-in, from start to finish.
14:25 Fancy charts and dashboards - customizing Oracle Jet in APEX
It’s been a while since Jet Charts were firstly introduced in APEX 5.1. Without any doubts it’s a great and highly customized tool, but how much friendly and intuitive it is for the APEX developer who’s just about to create his first chart? From that developer’s point of view, the most attractive way of customization Jet Charts are declarative options exposed in application builder. Firstly I will go through the most interesting of them to be more aware of plenitude things we can do, but also that what we think we can, and it’s not that simple in a closer look. From time to time it turns out that APEX and Jet Charts are not such a perfect marriage as they were meant to be. Let’s focus on the examples that can get you stuck, especially when a brief documentation isn’t helping. Advanced chart customization using JavaScript can be even more confusing. What do we really need to know about Jet? How to refer to the chart widget? Where is the best place to write our code? There’s not many resources on the Internet related, so basing on my experience gained by trial and error learning, I will try to answer those questions.
14:25 Using the PL/SQL Debugger
Every developer knows the problem. An application doesn't do what it should and the existing logging output doesn't help. Usually, the presumed defective program area is iteratively extended by further logging calls to locate the error. If this is of no use, a colleague is called in. Maybe he has an idea. In such cases I recommend using the PL/SQL debugger. The debugger not only helps to find the error faster but is also an excellent tool to display the context of a concrete use case and to better understand the program. In this presentation I explain among other things - the prerequisites for using the PL/SQL Debugger, - the difference between DBMS_DEBUG and DBMS_DEBUG_JDWP, - how both debugger variants can be used in SQL Developer, - and how debugging works directly from an application without adapting the source code.
15:20 45 APEX tips in 60 Minutes
A fast paced session with lots of useful APEX tips and tricks. You might already be aware of some, but I can also guarantee there will be new things for everyone. This won't only be a slide fest, there will be many demos and (hopefully) enough time for questions.
15:20 The Dark Side of the Grid
The Interactive Grid was one of the major and eagerly awaited APEX features ever, one of the things that we missed for a long time - a quick and easy way to edit multiple sets of data on a single page. When it came out, in APEX 5.1, a lot of developers were disappointed with the lack of declarative features and the fact that for the advanced configuration you need to code a bit of JavaScript. Another big problem was that, until APEX 18.2, there wasn't any real documentation for JavaScript API, and the real power of Interactive Grid was just hiding in this advanced configuration. In this session, I will try to demystify advanced configuration options so you can easily use them in your everyday work and take your applications to the next level. The focus will be on new features available in the latest APEX releases.
15:20 Basic principals - bespoke vs business applications
With all enhancements that latest version of APEX brought we will demonstrate how to easily build responsive/modern yet bespoke apps suitable for all screen sizes without having to be CSS experts. Additionally, we will explore some of the underutilized secrets of Universal Theme and learn about its gem CSS classes that can simplify your design asks. At the end, we will venture into world of corporate applications and see what are most challenging parts while building enterprise applications. Join me for this 45 minutes demo session where we will build an app following a few basic principals to demonstrate the power of UT. Aimed at an audience of all levels.
16:05 Coffe Break
16:30 Advanced CSS/JS Techniques to Tweak You Application UI
In this session we will have a look CSS and JS techniques as well as tips and tricks that can be used in your APEX applications to tweak the UI. You will see that with only a few lines of JavaScript and CSS we can do great things. Here are some of the things that will be covered -Add region to the side navigation bar -Have the side navigation menu show as an overlay -Report tuning -Use fewer borders -Add hover effects -Show actions as buttons or links -Show additional actions menu -Using HTML expression in columns -Modals tweaking -Disabled navigation entries -Bootstrap like navigation bar -Hide success messages automatically -Cards hover effect and flip effect to show additional details -Cards as checkbox and /or radio group -Use dialogs as alerts and confirm -Use inline dialogs with an alert region instead of javascript alert/confirm -Have region stick at the top or bottom of the screen This presentation is based on the presentation that I did at Kscope19 for which I won the Application Express Top Speaker award.
16:30 Web Source Modules - The Definitive Guide
Web Source Modules (WSM) is one of the biggest features that was introduced in APEX 18.x. It allows developers to declaratively connect to RESTful APIs. This allows developers to focus on making use of RESTful services rather than all the additional overhead (authentication, etc). This presentation will guide attendees through WSM basics, authentication, and work our way up to mode complicated situations. By the end of the presentation we will have built an entire APEX application using only 3rd party data sources (i.e. REST data sources). Attendees should be able to leverage the examples shown throughout the presentation to immediately augment their applications.
16:30 Data in, data out: with APEX and Oracle
Sooner or later, every database developer will come into contact with the topic of data exchange, so how do I get external data into my application and how do I make my data available to others in the best possible and easy way. Do data have to be exchanged once or is there a constant exchange? Does it "only" concern internal systems or should data be exchanged with external companies? As with many things, there are always several ways to address and implement such issues. This lecture will show the most common methods in connection with APEX and Oracle and will explain them by means of easily comprehensible examples. What can APEX do itself? So how do I use the integrated Data Loading or the practical APEX_DATA_PARSER package? How can data be provided from APEX? What can be done with SQL Developer or SQLcl on the command line? Or what tools does Oracle DB already have to successfully master such tasks? Keywords: External Table, SQL Loader or Database Links. Last but not least: Can a RESTful service also be used to manage the data exchange, and how could this work with ORDS? If you would like to have answers to one or more of these questions or deepen your knowledge in this area, then this presentation could be just right for you!
17:25 Insider News from the APEX Development Team
Take the opportunity to get insider information and a first look at the new features of the upcoming Oracle APEX 20.1 from one of the core developers of Application Express. In this release we are working on improving Faceted Search and are adding Mega Menus to your applications. In addition we are going to pick up the new Redwood UI look and feel. Do you want to SEO optimise your application? Then you might be interested in the new Friendly URLs support. But that’s not all, we are also looking into improving the Application Life Cycle support.
19:30 Party !!!
Dinner and Party with all your old and new APEX Friends. Location to be announced soon!