Friday, November 3, 2017

What Color is YOUR Tractor?

Martin Widlake, a giant in the Oracle Community, tweeted something to the effect that he had purchased a lawn tractor. In fact, here's the actual tweet...




To which I responded..."it's how well you mow fast"


...which referenced the John Deere series of commercials at the time which professed "It's not how fast you mow...it's how well you mow fast". I thought the commercials were hilarious. Decide for yourself.


Notice, my reply never mentioned John Deere...not a single hash tag..not even the entire quote from the commercial. So you can imagine my surprise when I almost immediately received a request to DM @JohnDeere. What? Are they going to make me take down the tweet? You've gotta be kidding. C'mon, really?? 

Nope, they just wanted to show their appreciation. 


And in the mail came this...



WOW! I know it was just a T-shirt, but I was blown away because it was so unexpected and unsolicited. I wasn't trying to get on their radar or curry favor. I was just trying to be a wise guy on Twitter. 

One thing is certain, you can guess the color of my next tractor....all for the price of a t-shirt.



...our journey continues.


Saturday, October 14, 2017

Thoughts around the ODTUG Board Election

ODTUG Board Elections are in full swing. Nine qualified persons running for five open seats.  Among the nine are three incumbents. There's a very real incumbent advantage. I should know. I was the beneficiary on multiple occasions. But nine doesn't go into five. Something's gotta give.

During my own time on the ODTUG Board I resisted endorsing others. In private I would voice my opinion, but publicly, not so much. Now that I'm no longer on the Board, I'd like to speak on behalf of two individuals in particular. Peter Koutroubis and Eric Helmer. Why am I singling out these two when I'm friends with everyone in the field? Simple. They came and asked me. I could've declined, but I do think they each have what it takes to serve with distinction. It was an easy decision for me to endorse.

I've known Peter for a few years now. We share a close friendship. He's been very giving of his time to help me professionally and for that I'm grateful. Looking at his background I expect certain things if he were elected. You see, Peter served in the U.S. military. If elected, I expect the ODTUG trains to run on time. I expect order and organization. I expect he'd be one on the Board that you could assign a task to, then forget about it...knowing that he'll take care of it. A lot of time spent on the Board is in the area of planning and I feel that's a place he'll excel. I get a sense, too, that KScope is the highlight of his year where you actually come in contact with the membership. Like me, Peter's positively a people person. (say that three times fast)

Eric has run for the Board on a few occasions now, but I think this year may be his time. A big reason is that ODTUG's EPM membership numbers continue to grow. Since one must be a paid member to vote, he's been behind the eight ball in past elections. This year his chances are better than ever. Please take a minute to visit http://www.Eric4ODTUG.com You can see he's put a ton of effort into the site. If he brings this much effort and focus to the Board, he'll make a helluva Director. In talking with Eric, he made it clear to me that he intends to represent the entire membership not just the EPM/BI communities. That's music to my ears.


In closing, I'd like to thank all those in the running for continuing to support our fantastic organization. To Peter and Eric, best of luck to you both. I'm happy to call you my friends and extremely proud to pledge my support.


...our journey continues


Friday, October 13, 2017

It's What You Do When You Do What We Do

It's late evening on August 30th, 2017. After dropping some four feet of rain on the Houston area, Hurricane Harvey takes aim at the upper Texas Gulf Coast - namely the town of Port Arthur. I grew up in nearby Orange and later lived and worked in Port Arthur. Growing up we'd never been struck by any significant hurricanes. Rita, and later Ike, dramatically changed that experience. Hurricanes now had the area's full attention.

Based on the previous four days, it was clear that the real threat from Harvey was going to be the rising water due to torrential rains and less the damaging winds and storm surge. In fact in less than twenty-four hours, Interstate 10 became unrecognizable.


Monitoring Twitter, I began to see tweets from Port Arthur residents begging for rescue.










One after the other...I couldn't believe it. It was heartbreaking...in darkness...the elderly unable to escape without assistance....Haley Davis, the expectant mother standing in waist deep water...and snakes...SNAKES!

I had to do something, but in every way powerless to take any real action. My neighborhood was cut-off. All roads to FM 1093 (including FM 1093 itself) were impassable. So I couldn't even leave my neighborhood, much less navigate the hundred plus miles to Port Arthur.

I definitely felt a call to action. True, I could simply re-tweet these as they come across, but a comprehensive view is what was lacking. I needed a way to display these tweets on a map allowing rescuers to hit entire streets or neighborhoods. Yes, a map is what was needed.

So, I did what any Oracle Nerd would do... I went to IFTTT and found an applet to push Tweets to a Google Sheet that matched the search term "Port Arthur". (For those unfamiliar with IFTTT - IfThisThenThat), it allows you to chain actions together that perhaps otherwise you'd be forced to perform manually.)

Another benefit for me in using IFTTT was that I didn't need to apply for or utilize a Twitter API key. I didn't have time to waste!

Next I ran those results against a regular expression that identified street addresses.

WHERE REGEXP_LIKE (v_string, '\d+ (\w+) (st|dr|blvd|pl|ave|road|rd|court|ct|cir)','i')

Not perfect, but I needed something out in a hurry. Lives were in the balance.

From there, I created a Custom Google Map. No need to geocode the addresses. Google Maps does that automatically.

The results painted a pretty clear picture of what parts of Port Arthur were most in need. I pushed it out to the local authorities and the Cajun Navy




Best of all the Google Map embedded in the tweet is fully functioning. Zoom in. Zoom out. Call-outs are all available as evidenced here



The entire effort took less than an hour.
Pretty geeky? Yeah, but it's what you do when you do what we do.

I have no way of knowing whether my actions contributed to any rescues. I'll probably never know. I do know the rescuers, as a result, were provided better data in which to do their jobs. That's enough for me.


...our journey continues


Thursday, August 10, 2017

Thanks, LISTAGG. I owe ya one.

My son is in Boy Scouts and their fundraising campaign involves the placement of U.S. Flags on certain holidays. In it's infancy it was all handled via spreadsheets. You can do that when you're only talking a limited number of flags.

I, of course, wrote an APEX app for it.

It's what you do when you do what we do.

Since this wasn't a paid gig, I re-purposed the "Sample Database App". Everything was coming along. The desktop functionality was in place and looking grand. The mobile functionality one needed in the field was taking shape. I got to a mobile list view that needed to list the address and under it the details of the individual flags on that property....could be one...could be many. Not difficult but I wanted an elegant solution that wouldn't add rows to my list view.

Let's look briefly at the source code...

   select f.flag_id,
          c.address,
          f.flag_nbr,
          f.flag_desc,
          f.active
     from customers c,
          flags f
    where c.customer_id = f.customer_id

Nothing to get excited about here.

Looking at the Advanced Formatting options for the List View...








 
Hmm. This could potentially add blank lines. What I really needed to do is aggregate the list of flags for that property. What I really need is something like this...






Enter LISTAGG. I assume we've all used listagg to do this very thing but I didn't want the result to simply be a concatenated string of "Flag1, Flag2, Flag3, FlagN"...or did I?  A few well placed P's here and there and I got exactly what I wanted.










and here's the big reveal..."Move that Bus!"






















Exactly what I needed. LISTAGG provided me a way, for display purposes, to effectively pivot the data. The takeaway here is don't rule out things like LISTAGG because at first glance they don't appear to deliver what you need. In this case the concatenated string I received just needed a little TLC.


...our journey continues




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, etc...you 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:

https://twitter.com/search-advanced




What I was not aware of was just how powerful the simple Search field is on the Twitter header bar. Log into twitter.com 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