Sunday, August 26, 2007

Groups @ Oracle Open World Connect

If you go to the Oracle Open World Connect site (= real-time community), you'll see some groups. Some of the most interesting groups (in my area of interest), I described below.

ODTUGgers
(created by Mike Riley, VP – Oracle Development Tools User Group)

Group to spearhead some discussions about sessions to see, places to eat, arrange meet-ups, etc. Mike also told me you are free to join that group without actually being an ODTUG member. The more people, the better the discussions will be!

Oracle Application Express (Oracle APEX)
(created by David Peake, Product Manager - Oracle Application Express)

Meet with others in the Oracle APEX Community. The reason Oracle APEX has become such a popular tool is because of the very strong community. Come and join in for enlightened discussion and information.
In the past I organized the APEX Meetup's through an APEX application and my blog, but this year we'll probably announce it through this group.

Oracle Bloggers
(created by Eddie Awad)

Group for bloggers who have a blog aggregated by http://orana.info/ or http://blogs.oracle.com/. This is also the group who will participate in the Bloggers Meetup organised in the past by Mark Rittman.

There are some other groups which could be useful, so it might be interesting to look on the site. I suppose other groups will be created too... November is still far away ;-)

Friday, August 24, 2007

NF in Oracle Application Express (APEX) 3.1 & 4.0

The Oracle Apex Development team updated their statement of direction today.

I won't go into much detail on APEX 3.1, the next release of APEX, as the changes are not that big in this release, although some may be very useful.

A bit of comment on some new features of APEX 3.1:

  • PL/SQL API to manage a runtime installation of Application Express: this could be very useful, especially for companies providing APEX hosting like us.
  • Documented and supported Application Express JavaScript libraries: Carl Backstrom already started that here.
  • Enhanced integration with Oracle SQL Developer for MS Access to Application Express migration: with every new release of SQL Developer you see some more features in that area.

The nicest thing however is what they will include in Oracle Application Express 4.0!!

"This release will focus on declarative support for Web 2.0 features in Application Express, as well as the extensibility of the Application Express framework.": Don't you like the sound of that?! That sounds awesome!!

Generally thought: the Apex team listened very well to us, the Apex Developers/Users, which is highly appreciated. Thanks Oracle Apex Development team for that.

My comments on some of the new features of APEX 4.0:
  • Interactive reporting region types which native integrate Web 2.0 features to filter, break, sort data: This we could already see in action in one of my previous blog post
  • Extensible item framework, enabling developers to "plug in" their own custom item types: this will definitely be one of the killing features of this new version! A while ago Carl Backstrom started a discussion about it (initially Patrick Wolf included this in the APEX 3.1 new features thread). You can still leave your comments in the thread Carl started...
  • Declarative support for AJAX validations: today you could already make the validations in APEX, but the validations required a round-trip to the server. With the ApexLib framework you could avoid this. Some javascript functions would dynamically look at your validations (defined in APEX) and test it on the client side. Getting an improved version (with AJAX) out of the box in APEX 4 is great.
  • Declarative support for cascading select lists and other similar item types: we demo this often and this is also one of the questions asked by a lot of people
  • Improved tabular forms, including support for validations, integration with collections, and additional item types: again, asked by a lot of developers, especially people coming from an Oracle Forms/Reports background.
  • New item/region types, including DHTML calendar and AJAX tree: the tree in the current APEX version does a submit of your page. Also the calendar wasn't uptodate anymore with the current expectations of the web. So it's understandable this is included.
  • Improved PDF report layout: I hope they look at my improvement for this too ;-) But PDF got only introduced in version 3 and it's already a nice feature, especially when you integrate it with BI Publisher. But yes, other improvements like printing charts and pictures easier would be welcome ;-)
  • Improved error message handling: we were waiting a long time for this, it looks like somewhere next year we get something with the new version that does the job
  • Numerous functional and performance improvements: Performance comes definitely from the caching mechanism (already a lot in APEX 3) and from the performance improvement of the 11g database. That's one of the things why APEX is great, as it's running inside the database, with every new release of the database you get so many more possibilities.
My final note on this: Oracle is not guaranteeing it will include all that... nevertheless I would like to thank the whole Apex Development team for this great road map and awesome product!

Thursday, August 23, 2007

Update: European Apex Training Days (in 2 weeks)

A few weeks ago we released our agenda to the people coming to the AE European Oracle Application Express Training Days.

This training will be held in two weeks time in Brussels. It's not a beginners training, more an advanced one, although "advanced" is difficult to measure.

During the last weeks I spoke with people working with APEX for more than two years, so they are quiet advanced I would say. But they are used to work in a certain manner and like with everything, if you don't know you can do it in a different way, you don't do it.
Next to that, there are still a huge amount of people working with version 2.2 of APEX, so all the new features of version 3 they don't know yet.

If you look at our agenda, you may think that Reports & Charts is not such an advanced topic, which is partially true. But if we look at trainings we did before, it was quiet useful to get people on the same level with that topic.


I look forward meeting all people and I'm sure we'll get some hard questions ;-)

Tuesday, August 21, 2007

DG @ Oracle Open World 2007

This weekend I booked my flight and hotel for Oracle Open World 2007 in San Francisco.

I first thought to stay in the Hilton hotel, but as that was already fully booked I decided to stay in the King George hotel. Mark Rittman stayed into that hotel last year and liked it, as he's staying there again this year.
"King George" ... sounds also very nice ;-)

This year I'll also present at OOW. I'm curious if presenting at OOW is different from presenting at the Oracle User Conferences like ODTUG Kaleidoscope and IOUG Collaborate. OOW is so big!
Last year was my first time at OOW and I liked it a lot. I never saw such a big event and a town literally changed in the red "Oracle" color.

The presentation I'll do is about the integration of APEX and BIP:

Title : Advanced PDF documents from Oracle Application Express (APEX) using Oracle Business Intelligence Publisher.

Abstract : Oracle Application Express (APEX) 3.0 provides new functionality to generate PDF documents. To create advanced PDF reports you can use Oracle Business Intelligence Publisher (formerly XML Publisher). This session covers how to configure APEX to use Oracle Business Intelligence Publisher and how to create an advanced PDF report in APEX using BI Publisher.


A lot of Oracle bloggers made there QuickConnect card. That card means you're registered on the OOW community site. You can find people having the same interests or just some info about a person.

Here's my QuickConnect Card:

Join Me at Oracle OpenWorld Connect!

See you at Oracle Open World!

Monday, August 13, 2007

Feedback and Tips after Oracle Application Express Training

John Scott already blogged about the APEX training days we gave to an AE customer last week.

Here's how I experienced our "duo" APEX training and some tips when you're doing some onsite training yourself.

Tip 1 - Be prepared

The customers asked a while ago for APEX training. Instead of doing a "standard" reply of saying what APEX training we (= Apex Evangelists) can deliver, we try to "customize" our trainings as much as possible.
To do that, we want to know our customers: What do they know? What do they not know? Why do they want to get trained? What facilities do they have? Which topics do they want us to cover? ...
The more info you get before hand, the better!

Our training exists out of powerpoint, a lot of live demos (we like that a lot!) and exercises. Doing live demos asks for a lot of preparation, but we believe it brings a big added value to our attendees. Some people say: One picture = one thousand words.

Depending how much material you already have, I still believe it's good to start preparing a week (and more) before. Run through all demos again, review the presentations etc.

Tip 2 - Arrive on time

John and I arrived the day before. We had a look around and went over the agenda and planning again. Especially when you're with two people doing the training it's important you know about each others topics, when and how to do things or just do some fine-tuning.

We love to train people together. I think there're not many companies doing that (giving training with two people). We also train people alone, but it's so much more fun when we're together.
Also, customers can appreciate it, sure it will be more expensive, but you'll get the experience of two people and it's "different". We've both our strengths and different experience which we can fully exploit together.

Tip 3 - Get to know your audience

We normally start with an introduction and a quickly round-up so we know the persons a bit better. It depends the size of course, but if it's possible to do, I would recommend doing a quick check.
People may say in the preparation phase of the training they've all a lot of experience, but when you're onsite and talk to them, maybe that's not entirely true. (they can be experts / or don't know that much as they believe themselves)
As you could read on Johns blog, some people had over two years experience, where others had only 2 days of experience! It's a real challenge to get everybody up to speed in a short amount of time, but it's so much easier when you know a bit of background of the people. I knew for ex. some had already experience in MS Access, so I spoke about how it looks like in the environment they already know.

Tip 4 - Be flexible

We had a tight planning prepared for this customer. After the first day John and I sat together and talked about it and we decided to put some more effort in some topics, give some extra exercises and skip some other topics. Again, this is so much easier when you know your audience. We spent for ex. quiet a long time on the AJAX topic, as they user was keen to use it and we also decided to skip the "Production Issues" presentation as they had an IT department doing all that stuff.
It's hard to decide and even though to take a decision to change your planning, but in this case it was really rewarding. This came also above when we read the evaluations, the customer really appreciated what we did.

Tip 5 - Include time for Questions

During the presentations we got some questions. We're very open to questions and really like the test if we know/can find the answer ;-)
I usually not only answer them, but also try to show them (or proof them) what I think the answer is. I think I learned that from Tom Kyte, he has a statement:

It ain't so much the things we don't know that gets us in trouble. It's the things you know, that just ain't so or just ain't so anymore or just ain't always so.

I sometimes have that too, I expect something will behave like that, and it suddenly doesn't do that, maybe it's that particular version, or it was never like that... with the test I see it!

The questions part was also highly appreciated by our attendees. The questions showed us also if they really understood or the things they were interested in.
We sometimes quickly built an app in APEX to show some other things we didn't prepare. At OOW we also did some kind-a-like thing, with the roundtable conversation. At Collaborate 07 we repeated it again. It's like a "life" forum.
We also referenced to some other sessions we did, like for ex. the Shared Components presentation I gave at ODTUG and IOUG Collab.

Tip 6 - Enjoy

Doing these trainings foreign is nice, but also hard. I enjoyed being there together with John. The days were flying by, it was over before we knew. During the day you're so busy with explaining to the customer, in the evening you're preparing for the next day and reviewing the previous sessions, to get really the best value for your client.

But don't forget to take some time to enjoy too! We tried to take some time to eat together. for ex. One night we went to a Steakhouse and had some delicious lamb!

Tip 7 - Think back and learn

From last year onwards I'm more into giving presentations. I think it started at Oracle Open World last year, where I was in the roundtable panel for the APEX SIG.
After that I started to give presentations at IOUG Collaborate 07 in Las Vegas, ODTUG Kaleidoscope 07 in Daytona Beach, some more presentations in Belgium, followed by onsite training for Apex Evangelists customers. From every presentation you learn something, take it with you for the next one.

Next on the agenda are the Apex Evangelists "European APEX Training Days" in Brussels (September) - you can still subscribe for that one -, maybe Oracle Open World (November) and UKOUG (December)...

If you would have told me I would do so many presentations this year, I would have laughed at you ;-) Things can change quickly!

Saturday, August 11, 2007

Oracle 11g and some APEX 3.0.1 news

Already a lot others blogged about Oracle 11g (for Linux) is available for download. A direct link to the homepage of Oracle Database 11g.

Oracle proofs again why it's a leader and innovator in the database market. In 11g you get again a lot of new features.

Some of the new features I think can be really useful in an APEX environment:

  • Real Application Testing
  • SecureFiles (next generation of LOB)
  • Result Cache (storing the results of queries and PL/SQL functions)
  • Enhancements in XML, Text, Spatial and Medical Imaging
  • Oracle Flashback Data Archive
  • PL/SQL improvements for ex. native compilation
  • APEX 3.0.1 out-of-the-box

John Scott already installed Oracle Database 11g (with APEX) and blogged about it here and here. He mentioned a difference in release: where the standalone APEX 3.0.1 has a version number of 3.0.1.00.07, the version in 11g is 3.0.1.00.08.

Carl Backstrom told there were some minor bug fixes, which explains the difference at the very end of the number. Carl also blogged about a new thing he's working on (which I expect will probably be in some of the next releases of APEX). Next to the declarative AJAX support (which will be improved with every APEX version), he now talks about "tags". Have a look on his blog! I see these tags useful to give users the availability to create some "shortcuts" on their screen to parts of the application they use most.

Tuesday, August 07, 2007

New Oracle APEX Packaged Applications got released

I just saw a lot of new Oracle Application Express Packaged Applications got released on OTN.

I encourage everybody to have a look at these Packaged Application, as you can learn a lot from them. They're not only a great source to learn or to find ideas how to do something, some people even use these applications in production environments!

I had a quick look at the new applications, installed online on the hosted Oracle Apex service of Oracle and they look good and useful.

I liked the Questionnaire (Knowledge Testing) of APEX ;-)
You can answer the survey and get a nice report how well you did. Will they replace the Prometric tests (OCP)?

A direct link to the new demo apps:

Saturday, August 04, 2007

APEX Forum gets Ace'd!

First I want to congratulate all Oracle Aces in the Oracle Application Express Forum. They all deserve it very much. Well done guys!

After the new addition of Patrick Wolf to the Ace Hood last week, I saw another icon in the APEX Forum!

Somebody has a little crown!!


A very big congratulation to JES (John Scott) for achieving the Oracle ACE Director title.

John is not only very active in the APEX forum, he's also the author of the new Oracle Application Express book "Pro Oracle Application Express".

I'm very pleased and proud to be next to him at Apex Evangelists. John is a wonderful person and a great guy to be with. A true friend!

You can congratulate him in the forum ... let's give him a big celebration ;-)

Friday, August 03, 2007

Oracle APEX: f?p, p?n, z?p

Did you already see: "f?p=", "p?n=", "z?p_url=" in the url's used by Oracle Application Express?

Doing presentations is a good exercise to keep you fresh... You have to write down what you *think* you know ;-)

While preparing some other presentations I wanted to explain the url's in APEX... Although we use the url's all the time, it was more difficult for me to write down what they were doing, so I thought to blog about it.


** The "f" procedure is widely known and well covered in the Oracle APEX User Guide.

It's used to create links between pages in your application using the following syntax:
f?p=App:Page:Session:Request:Debug:ClearCache:itemNames:itemValues:PrinterFriendly

(We even included this syntax on our very cool AE MouseMats! I'll post a screenshot of the real mousemat in the next days...)



** The "p" procedure you can use to download a file from the APEX repository (see the apex_application_files view for a list of your files).

For ex. http://apex.shellprompt.net/pls/apex/p?n=217605020644166778 will show you a nice picture that's stored in my APEX repository. (n is the id of the file)

This procedure is not wrapped, so you can see what it's doing:


procedure FLOWS_030000.p (
n in varchar2 default null,
p_mime_type in varchar2 default null,
p_inline in varchar2 default 'NO')

-- Copyright (c) Oracle Corporation 2001. All Rights Reserved.
--
-- DESCRIPTION
-- View a page given a page ID
--
-- SECURITY
-- Public shortcut
--
-- NOTES
--
-- EXAMPLES:
--

is
begin
if n is null then
htp.p(wwv_flow_lang.system_message('p.valid_page_err'));
return;
end if;
--
wwv_flow_file_mgr.get_file (
p_id => n,
p_mime_type => p_mime_type,
p_inline => p_inline);
end p;
/


** The "z" procedure you use to track when users click on external links.

I don't know how I knew about the existence of the Z procedure, but when I discussed with John Scott he told me it had something to do with going to a url via the CountClicks procedure. After searching a bit more on the internet I found some info in the forum and a Tip in the HTMLDB Studio (rip) from Scott Spendolini.

The explanation:
p_url: This is the link to the external site or file to be downloaded.
p_cat: Provide a name that you can associate to this link.
p_company: This is your application's Security Group ID. You can determine what that is by running your app and clicking on "Session" in the developer toolbar at the bottom of the page. The Value for Security Group ID is what you would use in your link. (I didn't found that in APEX 3.0)

Track what users are clicking by navigating to: Home -> Administration -> Monitor -> Top External Clicks

Testing this out with my image of the p procedure: http://apex.shellprompt.net/pls/apex/z?p_url=dgielis.download_filez?p_id=217605020644166778&p_cat=ae_pics&p_company=54352117549007872

If you've some other additions, feel free to comment on this post.

Sunday, July 29, 2007

Oracle APEX: onload in Page HTML Body Attribute

Did you already try to put an onload javascript event in the HTML body of your page in APEX?

You may want to do that to run some initial javascript when your page loads.
For ex. in DG Tournament I use the onload event to enable Google Suggest.

In Oracle Application Express you put the onload event in the HTML Body Attribute section


If you would look in the source of your HTML page you would see something like:

<body onload="get_ApexEvangelists();">

However, when you try to put the above code as HTML Body Attribute, you may get the error "You may not declaratively set cursor focus if you specify an ONLOAD in this attribute."
The complete message:
You should always read the messages ;-) But I noticed (also with myself) that you check quickly your code to see what you did wrong. However it has nothing to do with your code...

You can fix this error by go to the Display Attributes of your Page and set the Cursor Focus to "Do not focus cursor" instead of that APEX puts the focus to the first item of the page.

People seeing this message by "Googling" the error, didn't read neither ;-)

Wednesday, July 25, 2007

APEX - Why limiting a column to 22 characters?

I probably had this problem before, but today I came across the same error again...

For a tabular form your Primary Key Column can't be more than 22 characters long.

I wonder why the APEX development team didn't limit that length to 30 characters, as it is in the Oracle database?

To make it even more strange, for a "normal" form your primary key column can exceed the 22 characters limit!

I know the APEX development team is working hard to improve the tabular forms, so if I'm allowed to give a suggestion: please remove the 22 character limit ;-)

(this discussion is not about if it's a good idea to make your column name that big)

Sunday, July 22, 2007

Oracle 11g after the webcast

James Burke believes that if you stand still you'll die, so I finally took the time to finish this post (after 10 days)...

During the Oracle 11g webcast I took some notes and screenshots, which I posted below.

A big portion of this webcast was about "Innovation" and "Managing Information".
Oracle wants to Innovate Faster (Oracle has 1500 developers working on the DB nowadays!) but they see some challenges:


Charles Philips stated only 3% of the world has been digitized. He thinks the biggest challenges for customers are the way to manage more and more complex data.

When you compare the innovations Oracle did during the last year, I'm glad I'm so Oracle minded ;-) Of course Oracle had to include the competition in the slide...


Where 10g was about "Grid", 11g is about "Scaling Grid". The next slide I find interesting too... When and why would customers upgrade their database?


The press release of the Oracle Database 11g you find here.
More technical information about 11g you find on OTN.
The whitepapers I like: Database 11g New Features and 11g Application Development
Do we see Oracle Application Express - APEX into these? Of course ;-)

Oracle Application Express (from 11g NF whitepaper)

Oracle Application Express, Oracle’s declarative, browser-based, rapid application
development tool for building database-centric applications, will be enhanced in the
Oracle Database 11g release timeframe with

  • New, prepackaged applications for popular functions such as blogs, discussion forums, surveys, bug tracking, and storefront
  • Reporting with Oracle Business Intelligence Publisher integration
  • Microsoft Access migration aids
  • Declarative Ajax support
  • Drag-and-drop form layout

Wednesday, July 11, 2007

3 minutes before the 11g release of Oracle!

I'm ready for the 11g Oracle Database launch!

Tuesday, July 10, 2007

Oracle APEX behind the Scenes: Logout Procedure

I was catching up with the forum when I spotted this thread: Adding a Process to Logout

Scott Spadafore, Oracle ACE and one of the developers of APEX, especially in the security area, explained what happened when you click the logout link in your Oracle APEX application.
(so for this post all credits go to him)

The built-in item LOGOUT_URL gives you access to the logout URL attribute of the current authentication scheme.
In referencing it as &LOGOUT_URL. or v('LOGOUT_URL'), or as a bind variable, the resulting attribute will have had basic substitutions performed on it first, e.g., for &APP_ID. and &APP_SESSION., facilitating its typical use as the target of a Navigation Bar Entry.

The standard logout URL (before substitutions) looks like:
wwv_flow_custom_auth_std.logout?p_this_flow=&APP_ID.&p_next_flow_page_sess=&APP_ID.:1
If you hover over this link in your application, you'll see that it's a full URL (host:port/pls/DAD/...) with substitutions completed and that the result of using the link is to execute the wwv_flow_custom_auth_std.logout procedure through modplsql.

Let's review the standard machinery:
What does the logout procedure do?
  1. Unsets your application's session cookie (actually sets it to '-1') and 2) redirects to the after-logout page.

  2. How does it know what cookie to unset?
    ...The cookie name is also an attribute of the curent application's authentication scheme so it looks it up.

  3. How does it know what the current application is since the logout procedure is not run in a "page request context"?
    ...The current application ID is a input parameter to the logout procedure (&p_this_flow=&APP_ID.).

  4. How does it know what page to show after logout?
    ...That's the other input to the logout procedure (&p_next_flow_page_sess=&APP_ID:1 where the application and page to redirect to are both given).

  5. But it looks like it goes to page 101 (login page) after logout.
    ...Yes, but the instructions were to redirect to page 1 after logout and if page 1 requires authentication, you have to login first. After login, you'll go to page 1.

How to create a custom logout procedure or call some DML during the logout operation?

A good way to do that is to change the logout URL in the authentication scheme to simply be a URL to a page in your application, say page 99:

f?p=&APP_ID.:99:&APP_SESSION.

On page 99 create a before-header process to call your DML procedure (or do the DML in the page process directly).
Then create a second process on the page (also an on-load vs. an after-submit process) that does:

apex_application.g_unrecoverable_error := true; 
wwv_flow_custom_auth_std.logout( p_this_flow=>:APP_ID,p_next_flow_page_sess=>:APP_ID ':1');
That should do it...

Wednesday, July 04, 2007

Oracle past 20!

Also having Oracle stock options?

For the first time in years Oracle passed the "20"-bounder!
I still have my Oracle stock options from the time I was an Oracle employee. ;-)


How comes this increase?

  • Did Oracle APEX expend that much? It's possible, but not the case in this graph ;-)
  • The reason behind that is probably the SAP (TomorrowNow) fight.
    More info in this article?

Friday, June 29, 2007

Oracle releasing some new versions (APEX 3.0.1 out now)

Apparently Oracle is releasing some new products...

First there was JDeveloper 10.1.3.3. See the list of changes here.

A few minutes ago John told me, the Oracle APEX development team released their patch for APEX 3.0. The patch set notes you find here, the download here.

What's next? ... Oracle Database 11g ?? ... ;-)

Monday, June 25, 2007

Lewis Cunningham's ODTUG Podcast released

I just got a message of Lewis Cunningham he posted his Podcost of ODTUG on his blog.

Listen good, maybe you'll here me ;-)

It was really fun doing my first podcast. Lewis is a great guy to talk to and a nice person to get interviewed by. That was definitely a highlight at ODTUG and something to be in the history books as the first real interview of the Apex Evangelists.

The podcast is a talk with 8 different people at ODTUG. The part I'm in, Lewis describes like this:

Dimitri Gielis, ApEx Evangelists & David Peake, ApEx PM (Starts at: 7:32) ApEx Discussion, some 11g ApEx info, ApEx Evangelists and the ApEx European Training Days

Thanks Lewis! A moment I'll never forget...

Friday, June 22, 2007

Conference Highlights and Heading back to Belgium

Last night I slept well ;-)

I'm currently waiting in Atlanta together with a lot of other ODTUG participants.

My overall impressions of Daytona Beach and the conference are positive.

Last year it was my first time in the States. At that time I didn't know what to expect and the whole experience was unbelievable. After that conference I went to other conferences in the States, like Collaborate and Open World and I think I'm getting partially used to it. Although the States are still "big" and impressive, but I suppose I already expect the most unbelievable things.

At every conference I learned something new, not only technical but also personal. Nevertheless, my biggest interest for doing theses conferences is networking. Putting some faces on the people you see on the internet or just talking to each other in real life.

My highlights (top 5) for this conference where:

  1. Meeting Patrick Wolf in real life and hanging out together
  2. Seeing Daytona Beach (the Nascar and the Ocean)
  3. Giving my first presentation at ODTUG
  4. Talking and having drinks with some of the Oracle APEX development team
  5. Meet the other APEX fans and Oracle bloggers
Thank you ODTUG, Daytona and all you, nice people...

ODTUG Day 4: Last sessions

Unbelievable, but I didn't sleep well again! My mobile phone was switched off, no mosquitoes, I was tired and fell asleep almost immediately. But at 4h30 I got a cramp in my leg (convulsion in calf). It really hurt, it was such a heavy cramp I have never had before!

This morning (and even during the day and night) my leg was still hurting. I couldn't walk without pain... it still hurts, but what can I do about it?

I suppose it's due to the food, the air co and not having drunk enough.

The first session I followed with Managing Large Application Development Using Oracle Application Express by David Peake.
David explained his experience from the 4 years he worked at a big client in an APEX development project. How do you get the best results of your team and how do you structure your work, were one of the questions he tried to answer.
I found it an interesting session (much better then the marketing stuff the previous day ;-))

The next session was about Oracle XE for internet Applications Generated by Designer by Marc de Oliveira.
I'm not such a huge fan of Designer, maybe because I don't know it. But I think what he tried to do with Designer, generating web applications, he could have done in APEX in a lot less time.
But again, I don't really know Designer, so maybe there was a purpose to do it with Designer.

The last session I followed was Application Express for the Designer Web Generator Expert by James Hudson.
Basically what I saw in the previous session, James explained how to migrate from that to APEX. I found it interesting to see how, with his knowledge of Discoverer, he did his migration.


We got a last sandwich lunch and said everybody goodbye... Some last moment picture were taken.
(from left to right Dimitri with: Steven Feuerstein, Karen Cannell, David Peake)


Now it's time to prepare for going home. Most of the people left today or will leave tomorrow.

The last night at Daytona Beach... Patrick and I went to a Steakhouse named Stonehood. We both had a nice steak (see picture). It was the perfect night to end the Daytona chapter...

Thursday, June 21, 2007

ODTUG Day 3: APEX + My presentation + Nascar

After a bad night, due to mosquitoes and forgetting to switch my mobile phone off, the third day started...

The first session I followed was APEX Lessons from the Trenches by Bill Holtzman.
Bill explained the lessons he learned after creating his application for the National Air Traffic Controllers Association (NATCA).
He used for ex. different linking mechanisms: Automated report Links (in APEX), Manual report link (in SQL) and links from Javascript. Another thing he learned was how to use checkboxes, which I think was useful to explain, as a lot of people have problems with it. Other areas he covered where creating an upload process and validating the file name (can't be more than 78 characters), Session State Protection and the use of htmldb_activity_log (or apex_activity_log).
To conclude he believes that the APEX skill set is 60% PLSQL, 30% HTML and 10% Javascript.

My next session was Advanced Application Express Programming Techniques by Michael Hichwa.
The "father" of APEX explained his best practices and showed some sample (packaged) applications where it was used. The big topics where: database design, development guidelines and User Interfaces (user experience).
His presentation was based on his experience and the Best Practice whitepaper published on OTN by Sergio Leunissen.

On the same time as previous two sessions, there were two other sessions. One from Patrick Cimolini about APEX Validation and Error Handling and another one of Peter Lorenzen about How to make your APEX application secure. It's a pity they were at the same time...

During lunch I did my first Podcast! Lewis Cunningham interviewed me about Oracle Application Express, the Apex Evangelists and our European APEX Training Days.
I didn't hear the result yet, so I wonder what it will sounds like. I suppose you hear the ocean, as the interview was outside.
Such a live interview is very special... we didn't prepare anything, so after the talk I thought: "oh I could have said this or I could have added that" ;-)
Nevertheless, I was very honored Lewis asked me for that quick chat. Thanks Lewis!

My next session was Oracle Application Express 3.0, Introduction and New Features by David Peake. This was a more marketing kind of presentation about APEX and all the advantages of using it. Readers of this blog probably already know about this, so I won't go into more detail about this session. Only one thing... David mentioned and showed a screenshot of my application DG Tournament! Thank you David :-)


The first session in the afternoon was about creating an interface in APEX to organize Discoverer Workbooks by Jeff Hohman. Jeff showed his application, but on an APEX point of view it was a simple application. Basically what he did was creating a report and form which allowed to open Discoverer Workbooks with an url from APEX. If people are using Discoverer, this presentation can be useful. It explains how a Discoverer url looks like.
Jeff also mentioned that this application gets maybe integrated with a next version of Discoverer...

Then it was my turn! APEX by Example: Shared Components by Dimitri Gielis.
I'm not sure I should blog about my own session ;-)
This presentation was the same as the one I did at Collaborate in Las Vegas. As I already knew, doing this presentation is a challenge, as it's a bit too much for a one hour presentation.
107 slides (ppt) and 4 live demo's in one hour! I made it, but I won't try it again in the future. ;-)
My goal was to give an overview of all Shared Components and focus on some of them (demo), as I believed they aren't used/known that much. I think I achieved this goal, as even Patrick Wolf told me he had learned something new. I showed SSP, the Build Option, Shortcuts & Subscription and UI Defaults.
Some people liked it very much as I got some nice feedback, but I'm pretty sure some others found it too much information and a too quickly change of "topic". But I'm glad I did it this way, as I believe my paper/presentation is ideally to get people thinking and putting them in the right direction of more advanced APEX skills.

Sidemark: I think the audience at ODTUG is different then the one at Collab. I believe there're only (or the vast majority) technical people (developers) at ODTUG, where at IOUG Collaborate you've more a mix. For one or another reason I felt that during the presentation.

The last session of the day was one of Patrick Cimolini about APEX and Project Management. I found it an interesting presentation to know how others start, develop and deliver an application. APEX is a Rapid Application Development Tool, but some people sometimes forget that you should treat it as just another development project.
Even I must sometimes force myself not to start developing directly, but first make a project plan.

In the evening we went to Daytona USA to have an insight in the Nascar hype of Daytona.
I found it really interesting and had a terrific time. I raced against Patrick, which was really fun and we also saw an iMAX movie of Nascar.

Here're some pictures I got from Patrick's camera...