Skip to main content

Posts

Showing posts from 2012

Enkitec.com Now Running on APEX

I'm happy to announce that starting today, enkitec.com is running on Oracle Application Express and has replaced sumneva.com, which was running in parallel with enkitec.com since July. We spruced things up a little bit, created a new UI, and also created some new features & sections - some on the front end, others on the back end.  What many people will notice is that the APEX URL syntax is missing.  We decided to use mod_rewrite rules to give each page a more search engine friendly URL.  How we did all of this - and how it requires zero maintenance - is a great subject for future post. Have a look and let me know what you think!  I'll be the one in the corner feverishly working on my OOW presentations.

Oracle Wallet Configuration

Oracle Wallet is a finicky little tool.  However, when you want to make outgoing HTTPS calls from the database, it's a necessary evil.  While the tool itself is straightforward enough, the steps to follow in order to configure it are not as clear. During my research, I came across what is perhaps the best step-by-step document for configuring Oracle Wallet that I have seen.  Jeff Hunter's blog walks through the process in great detail, accounting for even the most minor of details.  You can see his Oracle Wallet post here:  http://www.idevelopment.info/data/Oracle/DBA_tips/PL_SQL/PLSQL_19.shtml While this is definitely not something that I'll need daily, it's definitely getting bookmarked for the next time I'm faced with configuring Oracle Wallet.

Windows 7 VM Suspending

It's an unavoidable fact of life as a web developer - you have to test on IE at some point.  The sooner, the better, in my experience.  As a Mac user, I run Windows and Linux in VMWare.  The benefits of this are huge, and most readers don't need them re-iterated here, so I'll spare everyone. What did get annoying is that my Windows 7 VM would mysteriously go to sleep, thus causing VMWare to suspend it after some period of idle time.  I looked all over VMWare for a sleep or suspend setting, and found nothing that seemed to point to solving my issue, as it kept happening. A simple Google search yielded the following post: http://skipmeamadeus.blogspot.com/2009/02/windows-7-keeps-suspending-in-vmware.html It seems that by default, Windows 7 will put the system to sleep after 30 minutes of inactivity, as evidenced by this screen shot: Setting the 2nd setting to Never and saving my changes should prevent the VM from suspending in the future.

Platform Innovation

With the introduction of the iPhone 5, one new feature has more people abuzz than any other: the new adapter.  Instead of the traditional 30-pin dock connector that has become ubiquitous in everything from consumer electronics to luxury cars, Apple has opted to introduce a new, proprietary 8-bin connector dubbed "Lightning".  I think that I speak for most of us Apple product owners when I say that as soon as this was announced, you did a mental tally of all of the devices and cables that would eventually have to be replaced, and I wasn't too happy with the resulting number. Yes, it will be a pain to replace all of my cables and devices that use the older connector, but we'll all complain about, get angry, and eventually over time, forget about it.  Like the CD drive.  Or floppy drive.  Or the replaceable battery. My point here is not to get into a "who innovates more" argument, but rather highlight a type of innovation that is very much organic to Apple

APEXPosed 2012

If you missed out on this year's KScope conference, you missed out on a tremendous amount of APEX content.  You missed the APEX 4.2 preview and discussions from Oracle.  You missed great sessions on the APEX Listener, jQuery, Dynamic Actions, etc.  You missed the opportunity to actually meet some of the best APEX experts on the planet. Fear not! APEXposed has you covered! APEXposed is a 2-day conference focused exclusively on APEX technical sessions.  A subset of the presenters from KScope will be presenting their sessions again in Montreal, Quebec this September 11th & 12th at the Centre Mont Royal.  And the best part?  You can attend this 2-day conference for as little as $350!  That's less than $30 per session! If you register by August 15th and use the discount code ENKITEC, you'll get the $350 price.  If you wait too long, the standard conference rate of $450 will apply, but the discount code will still be good. Hope to see you in Montreal!

Like No Other

APEX pie charts allow you to limit the number of records that are displayed in the chart. This can be controlled by editing the Series and setting the Maximum Rows parameter. However, APEX will automatically add an "Other" slice to your chart, which represents all of the other data from the query. Consider this example: you have 10 different widget types, and 10 of each type for a total of 100 units. Here's some SQL to quickly create this scenario, if you want to follow along: CREATE TABLE widgets (widget_type VARCHAR2(10)) / DECLARE z NUMBER := 1; BEGIN FOR y IN 1..10 LOOP FOR x IN 1..10 LOOP INSERT INTO widgets VALUES ('Type ' || z); z := z + 1; END LOOP; z := 1; END LOOP; END; / If you wanted to sum them based on type and just see the first five types, you can use a simple SQL statement like this: SELECT NULL link, widget_type label, COUNT(*) value FROM widgets GROUP BY widget_type ORDER BY 2 Which will in turn, p

Only the Beginning

Well, it's official.  I am no longer a small business owner. Starting today, I will be working for Enkitec , heading up their APEX products division.  Here, Doug Gault and I will be responsible not only for our existing APEX products - the freshly renamed eFramework and eSERT - but charted with bringing several more to market in the next few months. I'm as excited as they are about this acquisition, as the match makes a lot of sense.  A great deal of their business is based on services, so our APEX knowledge will come in to play daily there.  We'll also be able to get some additional resources for our products & training verticals, so expect to see more announcements on that front - some as soon as next week! You can read the official press release here or on our re-skinned site .

Page Zero Supernova

Page Zero in APEX is a powerful tool.  For the uninformed, it allows you to put APEX components  on it and have them render on every other page in your application - unless conditionally set to do otherwise.  Components supported on page zero include regions, items, buttons, branches, computations and dynamic actions. For years now, anytime that I needed a region or item or button on more than one page, I would put it on page zero, and if needed set the condition to display as needed.  It saved a lot of time, as I would only need to create the component once, and was a lot easier to manage as there was only one copy for multiple pages.  As you needed that component to render on additional pages, all that was required was a small change to the condition. Dynamic Actions, which were introduced in APEX 4.0, are in my opinion, the best feature to happen to APEX.  In a nutshell, they make JavaScript development - specifically of the jQuery type - declarative.  You can specify a number of

Full of CRUD

Joel Kallman has an interesting and amusing reaction to a recent Gartner paper authored by Mark Driver posted here .  After reading Joel's reply and Mark's paper, it got me thinking a bit about what was both in and not in the Gartner review and conclusions regarding Oracle Forms migration paths. But before that, let's consider the longevity of Oracle Forms.  Oracle has pledged support for Forms time and time again, and despite the negative stigma that Forms usually drags along with it about being an older technology, it's a perfectly good place to leave any existing applications and perhaps even build a few new ones.  Thus, if you have no immediate need to urge to migrate, then simply don't do it.  In fact, a new version of Oracle Forms - 12c - is already in development and will integrate with Fusion Middleware 12c. If you're a Forms customer and for whatever reason want out, there's a number of different options that you can take, all of which are highli

APEX UI Lessons - Part II

As soon as I posted this entry yesterday, I thought of a few additional "rules" that probably should have been included.   Pitor's comment also spurred on an additional rule.  So without further adieu, here they are: Standards Learn 'em and stick to 'em.  Period!  Most modern browsers do pretty well with them, so the closer you are to them, the better off your site will be in the long run.   Ignore Old Browsers When Possible Take a page from the Apple playbook here, and simply stop supporting browsers that are too old, despite the fact that they may still be in use.  (I'm looking at you IE 6 & 7…)  Be careful with this one, as you may have no choice but to support some of the older browsers, based on your customers or potential customers.  We wanted to be sure to provide support for at least IE 7 and above, and that decision did add some time and effort to our design process.  We did this because some of our existing and potential customers - at least

APEX UI Lessons

There's something to be said for corporate standards for browsers. Sure, it's almost always some flavor of IE, but at least you're only charged with making sure that your application runs and looks good on one browser on a single OS.  However, when designing a product, you simply don't have that luxury anymore. Your application must now not only run but look good on all popular versions of popular browsers: MSIE, Chrome, Firefox and maybe even Safari. And if you think that these browsers behave exactly the same on different operating systems, you're completely wrong. As we put the final touches on sumnevaSERT v2.0, I wanted to share some of the experiences that I went through over the past few months with regards to user interface - mostly so that you can learn from my mistakes and plan accordingly. Design and stick with a Design Pattern This is the most important step. If you skip it, or do it poorly, it will flow throughout your entire project and