Thursday, February 20, 2014

Working Orange (Updated)

On Thursday, February 27th Thursday, March 6th, I will be taking over @WorkingOrange - the Syracuse University Career Services Twitter account.


WorkingOrange was created to allow Syracuse alumni from all fields to share what it is they do on a typical day, as well as interact with students, other alumni and anyone else.  It is typically active each Tuesday and Thursday, and has hosted alumni from all kinds of industries.  For example, today is an elementary school teacher, and this past Tuesday was a producer for a TV station in Philadelphia.

I encourage everyone to follow along here: http://www.twitter.com/workingorange or just follow @WorkingOrange  More information on SU's Career Services can be found here: http://careerservices.syr.edu

UPDATE: due to a scheduling issue, I've been reassigned to Thursday, March 6th.

Tuesday, February 04, 2014

Upcoming Conferences for 2014

It’s that time of year again: Conference Season!  There’s a few conferences that fall in the 1st few months of the year that I try to present at each year, and this year is no different.  Here’s where I’ll be presenting at over the next few months:

  • RMOUG - Denver, CO - February 5th - 7th
    At RMOUG this year, I’ll be co-presenting a new session called “Creating a Business UI in APEX” with Jorge Rimblas.  I’m very excited about this session, as there is a lot of practical and easy to use information packed into it about user interface design - something most APEX developers have little experience in.  I’ll also be a part of the Oracle ACE Lunch & Learn on Friday, so if you want to talk APEX, come and find my table.
  • UTOUG - Sandy, UT - March 12th & 13th
    This year at UTOUG, I will be presenting “Intro to APEX Security”.  Given that APEX 5.0 is out in at least an EA release, I hope to incorporate what’s new in addition to what APEX 4.2 and prior have to offer.

  • GLOC - Cleveland, OH - May 12th & 13th
    I’ll be quite busy at GLOC this year, with at least two sessions: the aforementioned “Intro to APEX Security”, as well as a 3-hour hands-on session entitled “APEX Crash Course”.  This session will be aimed at those new or relatively new to APEX, and walk the participants through building a few working applications - both desktop and mobile.

    Note: GLOC abstract submission closes this Friday, so there’s still time to submit if you’re interested!

  • KScope - Seattle, WA - June 22nd - 26th
    As usual, KScope will be the busiest conference of the year for me, with 3 sessions, Open Mic Night, Lunch & Learns, booth duty and who knows what else.  In addition to “Creating a Business UI in APEX” and “Intro to APEX Security”, I’ll be holding a Deep Dive session on Thursday entitled “APEX Security Deep Dive”.  This session will take a more thorough look at the inner workings of APEX’s security, and is meant for those who are comfortable with APEX.

I’m sure as the year goes by, there will be additional conferences: MAOP, VOUG, ECOUG and OOW are all events that I typically attend.  Hope to see some of you at one them!

Wednesday, December 18, 2013

Get on Board the ARC

Yesterday, we launched the new APEX Resource Center - or ARC - on enkitec.com.  The ARC was designed to provide the APEX experts at Enkitec with an easy way to share all things APEX with the community.  It’s split up into a number of different sections, each of which I’ll describe here:

  • What's New
    The first page of the ARC will display content from all other sections, sorted by date from newest to oldest.  Thus, if you want to see what’s new, simply visit this page and have a look.  In the future, we’ll provide a way to be notified anytime anything new is added to any section.
     
  • Demonstrations
    The Demonstrations section is perhaps the most interesting.  Here, our consultants have put together a number of mini-demonstrations using APEX and a number of other associated technologies.  Each demonstration has a working demo, as well as the steps used to create it.  Our plan is to keep adding new demonstrations on a weekly basis.
     
  • Events
    The Events section is a copy of the Events calendar, but with a focus on only APEX-related events.
     
  • Presentations
    Like Events, the Presentations section is a copy of the main Presentations section filtered on only APEX-related presentations.
     
  • Technical Articles
    Technical Articles will contain a number of different types of articles.  These will usually be a bit longer than what’s in the Demonstrations section, and may from time to time contain an opinion or editorial piece.  If you have an idea for a Technical Article, then use the Suggest a Tech Article link to send it our way.
     
  • Plug-ins
    If you’re not already aware, Enkitec provides a number of completely free APEX Plug-Ins.  This section highlights those, with links to download and associated documentation. 
     
  • Webinars
    Currently, the Webinars section displays any upcoming webinars.  In the near future, we’re going to record both webinar content and presentations, and also make those available here.

We’re going to work hard to keep adding new content to the ARC at least weekly, so be sure to check back frequently.  And as always, any feedback or suggestions are always welcome - just drop us a line by using the Contact Us form on enkitec.com.

Tuesday, November 05, 2013

Abstract Sumission Advice

Yesterday, I was part of the KScope 14 APEX Abstract Review call.  This call is used to discuss the rankings that the Abstract Review Committee has previously given each session.  Naturally, we use APEX to help with this process - specifically WebSheets.  The call allows us to ensure that the selections are as fair as possible.  We make sure that no single presenter has too many slots, ensure that there are enough first-timers vs. veteran presenters and keep the topics of the accepted abstracts balanced.  This process has been extremely useful in the past, and really makes for a much better conference.

In reviewing the abstracts, I could not help but keep mentally creating a do's and don't list when it comes time to submit an abstract.  While most of them were fairly decent, there were a few that were sub-par in relation to the others, and there were a couple that stood out.

Based on this, I've come up with an ad-hoc list of things to consider when submitting an abstract for any conference.  It's in no particular order and by no means complete, but I figured that I'd blog this out while it's still fresh on my mind.  Here goes:

Catchy Titles

Catchy titles can definitely draw attention to your session.  While the title "Intro to APEX & jQuery" clearly spells out what is covered, it's a bit bland.  A more creative version would be something like “jQuery & APEX: 10 Must-Know Commands in an Hour”.  Be careful not to use too long of a catchy title, as that's one of the sure-fire ways to not get accepted.  If you can't spell it out in just a few words, then perhaps the topic needs to be re-thought.

If you're going to use a catchy title, then keep this in mind: you immediately raise the expectations of the reviewers.  Nothing is more disappointing than a catchy title followed by a sub-par summary & abstract.  So make sure that you spend at least as much time on the abstract as the title itself!

Less is More

Being succinct is key.  We had well over 100 abstracts to review, and if your abstract doesn't stand out in the first sentence or two, then chances are the rest of it may get ignored.  You’re not writing a book or even a chapter of a book here, so there is no time to build up what you want to say.  Simply just say it!

KScope gives you two places to sell your session:  Summary & Abstract.  A sure-fire way to sink your session is to copy & paste the same text in both of these.  They are different, and if you can’t take the time to fill them out correctly, don’t expect much in return.  The Summary should be a paragraph or so that sells the session.  This is what most reviewers read first.  If it’s good & compelling, we’ll read the abstract.  If not, then perhaps not.

Consider this example of a presentation summary:

Starting with APEX 4.0, Oracle began to include jQuery bundled with APEX itself.  jQuery is an open-source JavaScript library that makes developing easier and faster. This session will cover the basics of jQuery and how it is integrated with APEX.  It will also cover some best practices to use when utilizing jQuery from APEX.

Now, consider this one:

Want to learn how to enhance your application’s visual impact without learning any new commands or languages?  Then this session is for you!  We’ll show you 10 quick & easy ways to utilize jQuery to add some sizzle to your APEX application - all without more than a line of code each!

Clearly the second one just feels more exciting.  It asks a question - which acts as a hook for the reviewer.  It then spells out pretty clearly what it will cover, and throws in the added benefit of “one line of code each”.  It doesn’t waste any time defining jQuery, but rather almost leaves that to the reviewer.  If they know what jQuery is, then there is no issue.  If they do not, they can either look it up or come to the session to learn more about it.

One note of caution about being succinct: there is such a thing as too succinct.  Have a peer or two read your summary and then ask them to describe what they think will be presented.  If they are too far off the mark, you may need to add some more content to it.

The abstract is where you’re going to spell out what you highlighted in the summary.  Here’s where you can and should get somewhat technical.  In the example above, spell out the 10 things that you’re going to cover.  This is the only chance that we’ll get to see the outline of your presentation.  If you fail to do this, then you’re less likely to get accepted.

Buzzword Bingo

Google it.  Now print it out, and read your abstract.  Did you get bingo, or even come close?  If yes, then you have too many buzzwords.  Nothing aggravates me more then reading a sentence, pausing, and wondering just what the heck the point of that sentence was.

Know Your Audience...

There are less than 50 available slots at KScope in the APEX track.  While that’s a relatively large number, it’s actually not, especially based on the large number of submissions that we had this year.  Throw in things like the Intro track and some of the deep dives, and this number gets even smaller.

Therefore, one of the key criteria that we consider is how wide of an audience will your session appeal to.  There’s probably no such thing as too wide (as long as it has to do with APEX), but there is definitely such a thing as too narrow.  A topic that covers IRs or Charts or jQuery will have a wide appeal, because we all use those components.  Something like mobile will have a narrower, but still wide enough appeal, because many of us use it.  However, once you venture into the more obscure corners of APEX, the audience starts to get dangerously narrow, and the likelihood of acceptance goes down as well.

…And Your Audience Should Know You

Speaking at a large conference such as OpenWorld or KScope is something that is earned.  Thus, getting accepted may also take a little bit of work.  If you did submit an abstract and not get accepted, don’t give up.  Rather, try to start establishing a name for yourself.  You can do this a number of different names: blogging, Twitter, and presenting at smaller, local conferences, just to name a few.  Nothing delights the reviewers more than seeing a name of a popular blogger show up in the KScope APEX track.  

The best part about blogging & social media is that everyone starts on the same level.  If you start a new blog, your content and content alone will determine how others perceive your understanding of the topics that you blog on.  If your posts are very detailed and contain a lot of good information, it’s more likely that people will share them, thus increasing your exposure.  If they are not well written and technically incorrect, people will remember that, too.

Summary

While this post is clearly too late to matter for KScope '14, I hope that it can be helpful for any other conference whose submission deadline has yet to pass.  Feel free to add your own advice in the comments.

Thursday, October 10, 2013

Multi-Colored SQL

My OCD was delighted this morning when I came across a new feature of SQL Developer: Connection Color.  Brace yourselves, as this feature ain't much, but could have a huge impact on reducing accidental commands in the wrong schema or server.

To use it, simply create or edit a database connection, and set the Connection Color to whichever color you choose:


Once set, any and all windows associated with that connection will be outlined in that color.  That's it!  I already gleefully went through my connection list and associated different colors with different types of connections.  For example, our development schemas got green:


While our production schemas got red:


Now, no matter what type of object I am editing, I will instantly know which schema it belongs to based on the color of the border.  Simple AND effective!

Friday, September 20, 2013

New APEX 4.2.3 Packaged Applications: Sample Reporting & Data Reporter

APEX 4.2.3 seems to be largely a maintenance release, with few new features added.  (Full details of what is included can be read here: http://www.oracle.com/technetwork/developer-tools/apex/application-express/apex-423-patch-set-notes-2015119.html)

Despite this fact, there are a couple of new "features" that were added by way of a new packaged applications called Sample Reporting and Data Reporter.  Let's take a look at Sample Reporting first.  Upon initial inspection, this application seems quite unremarkable and basic, as it simply contains a few IRs and standard reports.  However, after a closer look, it is obvious that there is more to this than what is on the surface.

Upon running the Sample Reporting application, you'll see the following main five options:


The first two - Interactive Report & Standard Report are nothing more than their titles imply, and I won't spend any more time discussing them in this post.  The last three, however, do merit some additional attention.

Filter Reports
Filter Reports will seem very familiar to you, as this type of report has been implemented by a number of web sites.  Basically, there is a list of filters on either the left side of in a drop down.  Selecting a filter will, well, filter the report based on that criteria.  Adding additional filters will OR each condition.

The point behind Filter Reports is to enhance usability by reducing the number of options available.  While IRs are great, they may be overwhelming and not intuitive enough for some users.  Filter Reports solves this problem by presenting all of the available options right there on the page.  Users need only click on what they want to see.

If this is something that you think your users will benefit from, then you need to check out the second new packaged application, Data Reporter.  Data Reporter allows you to create a Filter Report on any table in your schema.  Rather than go into more detail on how to create a new report with the Data Reporter application, I'll reference Mike Hichwa's blog post here:  http://michaelhichwa.blogspot.com/2013/09/apex-423-released-new-packaged-app-data.html

It would not surprise me at all if Filter Reports were integrated into APEX 5.0, as I think that a lot of users will benefit from their more streamlined approach to mining data.

Use Cases
The Use Cases section offers a number of different scenarios that involve APEX reports, as illustrated below:


While some of these examples are simple, many of them provide clear and concise examples on how to take your APEX reports to the next level.  For example, the Custom Reports Template &  Custom Buttons one illustrate how to easily change the look & feel of your reports to make them easier to use.  Developers of all skill levels will be able to utilize these Use Cases as points of reference for their own projects.

SQL Examples
As APEX developers, we often forget about the pure power available to us in the database itself.  From advanced search techniques to analytic functions, the Oracle Database can provide a layer of functionally that is unsurpassed.  The SQL Examples section outlines some of these features.


If nothing else, every APEX developer should have a look at these example and their corresponding SQL statements.  At a minimum, they will serve as a refresher.  But in most cases, most developers will learn a thing or two from these examples.

APEX 4.2.3 is available now as a patch or as a fresh installation.  If you don't want to upgrade your own instances, then head on over to apex.oracle.com, as it is running 4.2.3.

Thursday, September 19, 2013

Working with the APEX Tree

I found a great blog post by Tom Petrus that summarizes the power of the APEX tree here: http://tpetrus.blogspot.be/2013/01/working-with-tree-in-apex.html

The post details a number of different attributes of the tree and how to interact with it.  It starts simple and shows how to get a tree reference and gradually gets more and more detailed, including how to search the tree and how to handle when a node is selected or even double clicked.

There's a working demonstration that goes with the post here: http://apex.oracle.com/pls/apex/f?p=54687:LOGIN

Many of the techniques and tips here have been invaluable to me in recent days as I work on a new project that heavily involves using trees.  Thanks, Tom!