Saturday, June 24, 2017

Are You Doing Everything You Can To Help Others Succeed?

My old man once told me, "You can never get promoted until someone else can do your job". While he's correct, it does seem counter-intuitive. Let me get this straight. I'm actually supposed to help someone take my job from me? All the things I've learned..the late nights and weekends...the blood...the sweat...the tears...I'm supposed to just hand over willingly??

YES! That's exactly what I'm saying. In fact, that was the first thing I told incoming ODTUG Board members each year..."get out there and find your replacement". For ODTUG the obvious intent was to keep the pipeline full, but within our own companies I believe it's even more applicable.

This kind of knowledge transfer is going to make your life easier and more rewarding. Without having to fight those same fires day in and day out, you'll be freed up to take on other challenges within your company. More than likely you're becoming a bottleneck, or pinch point, throttling back the speed at which your company can deliver.

So what are the steps to getting there??
  • Find your bell cow Here in Texas, we know that the bell cow is the one in the herd that the others tend to follow - a leader among the herd. You may be surprised at who this turns out to be. It's not always the most experienced. It's not always the one that does the talking. It's the one the rest of the team respects both personally and professionally.
  • Share your toolbox I maintain, as I believe we all do, a pretty substantial toolbox of bookmarks, videos, whitepapers, code snippets, SQL examples, regular expressions, name it. Share these with your team. Better yet, build a repository the entire team can benefit from.
  • Make introductions This one's extremely important. I recall almost 30 years ago, there was a push to legalize casino gambling in our locale. I talked my way onto the bus heading to the state capital with a contingent of local politicians. One of the old timers was Duffy Adair. I remember to this day, Duffy introducing me to these state politicians saying "You need to know this kid." Needless to say, they all got along just fine NOT knowing me, but the fact that Duffy made the introductions had me on a cloud.
  • Take an interest in junior staffers. This one is very important. Spend time getting to know them on a personal level. Remember we had to learn the tech while they grew up with the tech. Their idea of what is intuitive or non-intuitive could differ from yours. Learn from them.
To summarize, helping others succeed can be the quickest way to ensure your own success.

...our journey continues

Tuesday, November 22, 2016

Where, Oh Where Has My Little Tweet Gone?

Recently, as part of the Oracle ACE renewal process, I was tasked with gathering statistics around my tweets. How many tweets were about Oracle? How many tweets about Cloud? How many tweets about Cloud? (not a typo) Now, I knew of the advanced search capabilities accessed here:

What I was not aware of was just how powerful the simple Search field is on the Twitter header bar. Log into and in the upper right area of the screen, you see something like this.

You can get super creative identifying specific hashtags, users, accounts, and date ranges. Let's look at some examples...

Say I want to see all my tweets since October 1, 2016. All you do is enter into the search field:

     from:monty_latiolais since:2016-10-01

Pretty cool, eh?

Here are some additional searches you can easily perform right from the basic Search field.

Display all my tweets between a certain date range

     from:monty_latiolais since:2016-10-01 until:2016-10-15

Display all my tweets to another account (example: odtug)

     from:monty_latiolais @odtug

Display all my tweets to multiple accounts (example: odtug or insum_solutions)

     from:monty_latiolais @odtug OR @insum_solutions

Display all my tweets that include hashtag #kscope16

     #kscope16 from:monty_latiolais

Display all my tweets that include hashtag #kscope16 or hashtag #kscope17

     #kscope16 OR #kscope17 from:monty_latiolais

Display all my tweets that include the word 'chicago'

     chicago from:monty_latiolais

Finally, display all my tweets that include the word 'chicago', but not the word '5k', within a date range, that includes hashtag #oracle

     chicago -5k #oracle from:monty_latiolais since:2014-07-01 until:2016-11-22

...our journey continues

Thursday, July 14, 2016

Reflections on KScope16

KScope16 is now in the rear view and what a week it was.  This year was unique for me because for the first time in several years I was able to participate as an attendee (and this year a vendor). 

It was a very different experience indeed, but I loved every minute of it. I was able to reconnect with folks I haven't seen in years, like Ralf Schroeder (pictured) and Ran Dumpit who I hadn't seen since KScope 2009 in Monterey, California. I wouldn't trade my time on the ODTUG Board, but it was sure great having time to sit and visit. It brought me right back to why I love this conference so much.

This year Insum went "all in" sending a whopping 13 folks. Never in the history of our company have we mustered that kind of presence. It certainly paid off. We were able to completely canvas each and every APEX session and a large portion of the database track, too.  The Insum booth stayed humming the entire week. Our customer panel on Tuesday was standing room only.

We've put together a list of KScope highlights from each of us attending from Insum. You can find it here. Give it a read and let me know if it matches your experience. 

I'd be remiss in not mentioning a few of us even made a pilgrimage to the famous Billy Goat Tavern (and not one of us ordered fries or a Pepsi).  If you're an Oracle professional and have not attended a ODTUG event, plan on joining me in San Antonio, TX, June 25-29, 2017 for KScope17. Use registration code 'INSUM' and I'll save you an additional $100!

...our journey continues

Wednesday, July 6, 2016

Challenge Everything

I recently attended the Art of the Sale seminar in Vancouver, BC. I feel like I benefited more than anyone in the room, perhaps because I had the most to learn.

The speaker I enjoyed most was Jeffrey Gitomer, author of the Little Red Book of Selling. Very entertaining. Very informative. His session ended way too soon for me.

One of my takeaways from the day was not from Gitomer, but from Brent Adamson. He identified five Sales Rep profiles. To some of you, they will be familiar. They are:
  • Hard Worker - Always goes the extra mile. Doesn't give up easily. Self motivated. Interested in feedback and development.
  • Challenger - Always has a different view of the world. Understands the customers business. Loves to debate. Pushes the customer.
  • Relationship Builder - Builds strong customer advocates. Generous in giving time to help others. Gets along with everyone.
  • Lone Wolf - Follows own instincts. Self-assured. Independent.
  • Problem Solver - Reliably responds. Ensures that all problems are solved. Detail oriented.
Of these, he continues, the Challenger profile consistently outperforms the others. Got me to thinking...shouldn't this apply to things other than sales?? If it's so effective, could a similar approach to development and management be something to consider??

Let's put on our developer hat for a minute. It's customary that we receive specifications from the business analyst. Before writing the first line of code, what if the developer were to take a minute to review the specs looking particularly for embedded there a more efficient way to solve the problem?

Now from point of view of a've got a very talented staff from top to bottom...push them to think outside of convention. I had a manager some twenty years ago. Nothing I'd bring him was ever good enough. If it took 10 seconds to run, he'd ask why I couldn't get it down to 5?? Frustrating? You bet. But it forced me to raise my game. It forced me to not deliver commodity code. It forced me to craft elegant, efficient solutions that I was proud to put my name on. As I admitted it was frustrating at times...especially for the first few years, but I always felt he was on my side and not once did I feel he was being malicious. I look back now and the product benefited greatly from him demanding I consider alternatives. I believe he is responsible for any success I achieved later in my career.

This approach will not, can not, work without copious amounts of respect. Yes, Aretha, R-E-S-P-E-C-T. Someone without the respect of his or her peers will be looked on as difficult to work with, not a team player, or worse. Done correctly, others will clamor to have this person on their team, because of the elegant, innovative, out of the box solutions that come as a result.

In the first example the developer must realize at the end of the day the decision resides with the manager and I suppose ultimately the customer.

In the second example the manager must leave no doubt that he believes in his staff to make magic. Do that and they'll walk through fire for you.

I implore you...challenge everything, but do so with the requisite amount of respect.

...our journey continues

Wednesday, April 20, 2016

New to APEX? These KScope 16 sessions are for you!

The APEX Community is amazing.

It's a credit to Joel Kallman and the APEX Dev Team. It's a credit to the Oracle ACE's and ACE Directors specializing in APEX. It's a credit to those companies like Insum who challenge the stereotypes and demonstrate exactly what APEX is capable of. It's a credit to every APEX developer everywhere.

As President of ODTUG I worked with all of the communities, but I can tell you there's nothing..nothing like the APEX Community.

While many of us have been using APEX for years, we must remember the current popularity of the tool means that new developers are arriving daily - which is the subject of today's post.

A quick look at the this year's KScope16 APEX lineup and it's clear to see there's something for everyone. I took a stab at building a session list I feel would have particular appeal to someone looking at APEX for the first time, or someone without much experience with the tool. In addition to the expected APEX intro sessions, you'll see a pretty wide range of topics - everything from hands-on labs, to panel discussions, to mobile development, to SQL and PL/SQL. That's because to be that solid APEX developer, you need a solid Oracle foundation to stand on.

The list below should keep you plenty busy. Make sure to drop by the Insum booth to let me know what you think.

Oh, and you MUST plan to attend the Sunday Symposium and Thursday Deep Dive.

Click here to see the session list!

In a future post we'll assemble a session list for those more experienced APEX developers.

...our journey continues

Thursday, March 10, 2016

KScope16 Hands On Labs Announced!

ODTUG has released the APEX Hands On Labs for KScope16. There seems to be something for everyone. For the advanced APEX user, I expect Anton's session on IoT would be of interest as would Dan McGhan's session on Oracle JET. If you are just looking at APEX, David and Marc's sessions will pay dividends. Finally, no one should pass up an opportunity to hear Alex's little buddy, Shakeeb talk about migrating to the Universal Theme.

There you have it...the APEX Hands On Labs for KScope16. Save me a seat!

Application Express

Build Something! IOT = Internet + Oracle + Things

Anton Nielsen, C2 Consulting

This Hands-On Lab will introduce you to the the Internet of Things by allowing you to build your own thing and connect it to an Oracle APEX application. You will select a circuit board, wires, capacitors, a WiFi device, LEDs, and a sensor. Then you get to wire them together into a real THING, connect to the Internet, and start communicating with an Oracle Database. Finally, you will build an APEX application to control your thing and report on its data. Please note there are two scheduled times to see this session.

Productive JavaScript Development: Oracle JavaScript Extension Toolkit

Dan McGhan, Oracle Corporation
JavaScript-based, single-page applications (SPAs) are incredibly popular these days – and for good reason! This style of application provides developers with a great deal of flexibility and control, and end users enjoy the responsiveness and speed that comes with fewer full-page reloads. To empower developers working on SPAs, Oracle developed the JavaScript Extension Toolkit (JET), a collection of open-source JavaScript libraries along with a set of Oracle-contributed JavaScript libraries that make it as simple and efficient as possible to build applications that consume and interact with Oracle products and services, especially Oracle Cloud services.

In this Hands-On Lab, attendees will learn how to get started building applications with Oracle JET. We’ll jumpstart a new application with the QuickStart template and then extend it out with a few of the components that Oracle JET provides, including a data visualization component.

Building a Basic Demo Application Using Oracle Application Express

David Peake, Jason Straub, and Patrick Wolf, Oracle Corporation

This one “double” session (two-plus hours) is designed to take you through building a comprehensive application using Application Express. It is designed for people with no prior knowledge or very little experience developing with Application Express. You will learn how to develop a large number of different application components and walk out with the confidence and understanding of how to start building your own applications using Oracle Application Express.

Transitioning to Oracle Application Express 5 Universal Theme

David Peake and Shakeeb Rahman, Oracle Corporation

Oracle Application Express 5 introduces many new features that enable you to quickly build modern and beautiful HTML5 applications. The new Universal Theme implements current design trends and utilizing the new declarative template options, and puts powerful CSS3 techniques at your fingertips. In this session, you will walk through transitioning your existing application to the new Universal Theme. Using some of the packaged apps included with Oracle Application Express 4.2 as examples, we’ll demonstrate step by step how to transition these apps to Oracle Application Express 5.

Creating Mobile Applications Using Application Express 5

David Peake and Marc Sewtz, Oracle Corporation

Learn how you can declaratively build a compelling mobile application that uses some of the latest HTML5 capabilities, with Application Express. No hand crafting or in-depth knowledge of JavaScript or AJAX is required. Instead, bring your SQL knowledge and discover how quickly you can build web-based mobile applications using the Oracle Application Express declarative framework.

Monday, January 4, 2016

ODTUG APEX Gaming Competition - How'd They Do It? (Part 10)

At Kscope 15 this year we launched the first ever ODTUG APEX game competition. The APEX community responded with 15 entries! Each and every one of them left me thinking "How'd they do that?" So, let's find out more about the games and those who wrote them.

Our third place entry comes from Matt Mulvaney.

First off, tell me a little about yourself.
I’m Matt Mulvaney, a Senior Consultant who works at Explorer UK. 
You can follow me on Twitter @matt_mulvaney
How many years of APEX experience do you have?
Since version 4.1
What motivated you to participate in the APEX Gaming Competition?
It's a funny story. I had this computer game when I was a kid, I thought it was called Rescue42 or Rescue, something similar – I even forgot what it was called. 
Well I was reunited with it again earlier this year after about 267 google searches over many years. I discovered it was available for the Spectrum (even though I’ve never owned a Spectrum – yes I have no clue how I even managed to play it) and it emulated well. 
When I started to play it, I immediately remembered how you had to read and hold a load of information in your head before you even started the game and how some of the levels where really annoying and uncontrollable. I actually found some magazine scans of this game from the 80’s and after reading through those it appears as though this game is mediocre at best and it was a largely forgettable title. 
Does this even matter to me? Hell no! This was my childhood game and I loved it.

Fast forward a few months and I read about the ODTUG gaming competition and this game was just ripe for a make-over APEX style.
What is the name of your game?

The game is called Rescue42 which is what I thought the original game was called. 
I thought it might have been rescue42.exe or rescue42.bas (yup, Basic) but I wasn’t sure. The original game was actually just called Rescue (or sometimes Resqué - due to a misprint). 
Since there are 41 locations with the Castle as the 42nd location the new name kind of makes sense.

Briefly describe your game.
The game's plot is a pretty old school video gaming one – you have to rescue the princess from the castle and then return her to the safety of your base. 
The game is spread over two levels. The first level you have to dodge the guards and find items which leads to the discovery of the castle. Once you find the castle, in level two, you have to play a series of mini-games before you find the princess and then return her to your base. Simple. 
The original game had about 12 pages of text to read – my version has a minimized Guided Tour.
How long did it take you to develop your games?
Because a couple of decades had passed since I last played it, I had to re-learn the entire game again through an emulator (I'm so grateful for save states) so a few hours were spent scribbling down notes on the game. 
I started this game on my lunch hour and when the deadline approached I also worked on it during the evening in front of TV shows like The Apprentice and Better Call Saul. 
I didn’t track my time but I do remember a painful hour spent typing in coordinate data.
What was the most challenging element of your game design and how did you overcome it?
I realized early on that the game had to work with dynamic actions rather than page submissions as it had to run quick and feel like a game. However due to the large amount of dynamic actions required, a problem I found was that the game's performance ran like light speed on my laptop but ran like potatoes on 
This ran especially slow on the Reversi mini-game. I included a single player Reversi mini-game because I really like the game but oh-my-days was the mathematics & AI difficult to implement. 
The whole AI is written as a single SQL statement (isn’t that neat?) and is based on my style of play. The AI kept beating me so it was really difficult to write the ‘hey you’ve won’ screen – because, you know, that didn’t happen very often... how dare my creation beat me at my own game! 

Back to the main game, the nail-biting stuff was when I got a large component to work, for example the Guard Movements, I had to deconstruct it and remodel it so that it also worked when the player moved, looked, picked, etc. I also kept to my rule that I didn’t want to include any server side tables, objects, etc. – I wanted this to be totally APEX based. Without server-side code I therefore had a lot of dynamic actions which I needed to run over and over again - like a module, which isn't available in APEX. I achieved this by representing these as hidden items which included a select dynamic action and ran them on demand using apex.event.trigger. 
Monty, you wanted me to get technical; so you can read more on this approach here. 
Another grueling issue I had was transferring the player score when you are returning the princess back to your base when you beat the game – it would not work and it occurred just before the deadline too. I tried everything, the score would not set in session. In the end I used some of the techniques in this blog to force the score to session.

The artwork is inspired from the original cassette inlay and I used a silhouette theme throughout to keep it consistent. 
By the way, I really like some of the images in Level 2... if you make it that far.
Alright, how can I play?
Adrian Png is hosting the game for me. You can play it at 
Anything else you'd like to add?
Hope you enjoyed reading and you enjoy playing the game – to read more about this game click the link above and then click 'About this Game'. I won 3rd place in this competition so thank you to ODTUG for my membership and the Chromecast.

If anyone is reading this and hasn't used APEX yet, I encourage you to get started. Its a fantastic tool with a superb community which organises great competitions such as this one.

Thanks, Matt. There's no school like old school!! Great work!

...our journey continues