It’s been over a decade since I first heard Tom Kyte talking about Project Marvel, which eventually became Application Express (APEX). Since then I’ve “used” just about every version of APEX. I use the term “used” very loosely, because I typically use APEX for a few days to get a job done, then never touch it again for months. By the time I come back, I pretty much have to start the learning process from the beginning again.
This is a perfect example of the “Eternal Newbie”. I could quite legitimately put 10+ years experience of APEX (including previous names) on my CV and it wouldn’t be a lie, but in reality I’m only about as good as any PL/SQL developer that’s been playing with APEX for a week.
It’s not that APEX is difficult, quite the contrary, but the process of getting good at anything takes time and repetition. You’ve probably heard the variations on “10,000 hours to become an expert” saying. It doesn’t matter that it’s not true or accurate. What matters is it highlights the need for time, repetition and constantly striving to improve. A little plodding once in a while does not count for experience in my book.
As an example of this, on Friday I was trying to get something to work with a Shuttle control in APEX 5.0.2. I found a couple of great examples on Dmitri‘s and Denes blogs, which (I thought) got me 90% of the way to what I wanted to achieve, but the last 10% took me half of Friday, then the whole of Saturday evening. If I was actually any good at this stuff it would have probably taken me 2 mins. What’s more, if I was good, I would have probably realised Dmitri and Denes’ examples actually got me to 99.9% of what I was trying to achieve, but my inexperience meant I kept shooting myself in the foot. After all that time playing and reading, I felt like a master of Shuttle controls in APEX, but if I don’t look at APEX for a week I’m going to be totally screwed. I have some knowledge now, but it will take repetition to make it stick, and based on past experience, that’s not going to happen. 🙂
I did a video a few months ago about the term “Senior” in relation to IT jobs. My recent fumblings with APEX made me think about this subject again.
With my 10+ years of APEX experience, I’m obviously a “Senior APEX Developer”. Just remind me, how do I alter a breadcrumb? 🙂