Do you want to know where I’ll be speaking this fall?

Where am I speaking this fall? Poland and Croatia conferences have been confirmed. Waiting for Spain, and ECOUG. Let’s get back to normal and be safe about it. Looks like I’ll be busy for the next several months. Life is good.

Warsaw Poland September 10 – 11. https://poug.org/en/

Rovinj Croatia October 12 – 16 https://2021.hroug.hr/eng

Madrid Spain November 11 https://spoug.es/spoug21/

ECOUG November 1-3 https://www.eastcoastoracle.org/

There has been some changes. #Accenture #DatabaseSecurity #InfoSec

Life is busy and good; new Some of y’all may already know, after almost thirty years of working for myself, I accepted a position with Accenture Enkitec Group as Technology Innovation Principal Director and the Global Lead for Database Security. There are a lot of reasons I accepted this position. Primarily, I’ve known the folks from Enkitec for a number of years; they have always impressed me with their knowledge, willingness to share that knowledge, and they get s&*t done. Being part of a global team that is focused to delivering the best for the customer. The opportunity to learn new things; now that’s a big plus for me.

Now, being an employee it’s really new to me, they have these things called HR, People Leads, and policies. Who knew? My People Lead was always my bathroom mirror where I would have long discussions with myself about my future and where I needed to put my focus. Now, I have someone else who I can discuss direction, where my focus should be, and also promote me within and outside of Accenture. This is great! Yea’ even I need to get pointed in the right direction every now and then.

New talks are coming up in Poland, Croatia, North Carolina, Spain, East Coast Oracle Users Group (ECOUG). I’m waiting for acceptance from Croatia, ECOUG, and need to get my abstracts in for Spain. Stay tuned for more details on what talks I have coming up.

Upcoming talks UTOUG, INSYNC, and Uzbekistan INHA University.

March and April are booking up fast. Getting real busy and loving life.

Utah Oracle Users Group (UTOUG) March 17 – 18 Keynote: “Curves ahead: Emerging technology threats.”, “Holistic Database Security in the cloud.”, and “PL/SQL Secure Coding in the cloud.”

INSYNC Tuesday March 30 and April 1 “Holistic Database Security in the Cloud.”

Uzbekistan INHA University April 6. “Staying Current in a Constantly Changing IT Environment.”

Oracle 21C, new feature blockchain tables.

I’ve spoken in the past about the utility of blockchain, to create a table that can not be altered. Oracle 21C is now available in OCI.

The syntax to create a blockchain table is quite simple.

create blockchain table test (x number)
NO DROP UNTIL 30 DAYS IDLE
NO DELETE LOCKED
HASHING USING "SHA2_512" VERSION "v1";

The addition of the blockchain keyword, the options no drop until <>, no delete, locked, and specifying the hashing algorithm and version.

The future of #AI.

We have people giving opinions on a complex subject that for all practical purposes seem to contradict each other. I’ll give them this, they are some smart people; all of them have demonstrated vision and accomplished quite a few things over the years. People like Elon Musk, Ki Fu Lee, and Stephen Hawking have been sounding alarms on what the future will be in AI. We are hearing everything from AI is an existential threat to humanity to fifty percent of the workforce will be made obsolete in the next fifteen years. Of course, some world leaders have made outrageous statements like “The first nation to master AI will rule the world.” Statements like this can lead to an AI arms race where nobody wins. The other side is, we need to make more breakthroughs to achieve AGI (Artificial General Intelligence) even then, we can contain it. Economist are saying the market will adapt.

I’m of the opinion, the issues are a bit more nuanced. We are seeing how AI can augment decision making in data centers, education, health care among other domains.

So, for the next few months, I’ll be interviewing people, try to understand what the issues are, and try to come up with what are the real questions we should be asking.

On Friday, January 8th 2021, we will start this conversation with Dr. Olesya Zmazneva and Jean-Eric Pelet. What will the AI world look like in fifteen years?

Zoom link:

https://us02web.zoom.us/j/86229320207?pwd=SGNkYlUrdEYvU2VoUUg2VW9iSlRQQT09

When:

4AM New York USA

9AM London England

10AM Paris France  

12PM Moscow Russia

Oracle #JSON check constraint #quicktip

I came across an interesting problem, we are using JSON in one of our applications and have no control over the people sending us the JSON data. This has caused some issues with data quality. One thing we needed to do is to check that all the required fields have a value when the data is loaded. I found solving the problem to be quite simple by adding check constraints on the JSON column.

alter table payload add constraint 
payload_first_name_check check
(json_exists(json_document, ‘$.first_name));

alter table payload add constraint
payload_last_name_check check
(json_exists(json_document, ‘$.last_name’));

Now when the documents load, if the first or last name are null, the check constraint is violated and ORA-02290  will be raised.

 Failed to execute: soda insert payload /home/oracle/data/04.json

 java.sql.SQLIntegrityConstraintViolationException: ORA-02290: check constraint (RLOCKARD.SYS_C0012523) violated

#Oracle #SQLcl #quicktip

If you’re not following Jeff Smith and Kris Rice, you should be. These are two really smart guys, who are designing the tools we use everyday to do our jobs.

If you’re like me, 99% of your data is in relational tables. So how do you get the data out of your relational tables into a JSON format. SQLcl has a command for that.

Getting data out of your relational tables and into JSON format is pretty easy; only, up until now, it was not easy to read. 

set sqlformat json-formattedSQL> select * from hr.employees  2* where rownum = 1;{“results”:[{“columns”:[{“name”:”EMPLOYEE_ID”,”type”:”NUMBER”},{“name”:”FIRST_NAME”,”type”:”VARCHAR2″},{“name”:”LAST_NAME”,”type”:”VARCHAR2″},{“name”:”EMAIL”,”type”:”VARCHAR2″},{“name”:”PHONE_NUMBER”,”type”:”VARCHAR2″},{“name”:”HIRE_DATE”,”type”:”DATE”},{“name”:”JOB_ID”,”type”:”VARCHAR2″},{“name”:”SALARY”,”type”:”NUMBER”},{“name”:”COMMISSION_PCT”,”type”:”NUMBER”},{“name”:”MANAGER_ID”,”type”:”NUMBER”},{“name”:”DEPARTMENT_ID”,”type”:”NUMBER”}],”items”:[{“employee_id”:100,”first_name”:”Steven”,”last_name”:”King”,”email”:”SKING”,”phone_number”:”515.123.4567″,”hire_date”:”17-JUN-87″,”job_id”:”AD_PRES”,”salary”:24000,”department_id”:90}]}]}

json-formatted is new in SQLcl 19.2 this gives a pretty print of the JSON data.

<code>
SQL> set sqlformat json-formatted
SQL> select * from hr.employees where rownum = 1;
{
  “results” : [
    {
      “columns” : [
        {
          “name” : “EMPLOYEE_ID”,
          “type” : “NUMBER”
        },
        {
          “name” : “FIRST_NAME”,
          “type” : “VARCHAR2”
        },
        {
          “name” : “LAST_NAME”,
          “type” : “VARCHAR2”
        },
        {
          “name” : “EMAIL”,
          “type” : “VARCHAR2”
        },
        {
          “name” : “PHONE_NUMBER”,
          “type” : “VARCHAR2”
        },
        {
          “name” : “HIRE_DATE”,
          “type” : “DATE”
        },
        {
          “name” : “JOB_ID”,
          “type” : “VARCHAR2”
        },
        {
          “name” : “SALARY”,
          “type” : “NUMBER”
        },
        {
          “name” : “COMMISSION_PCT”,
          “type” : “NUMBER”
        },
        {
          “name” : “MANAGER_ID”,
          “type” : “NUMBER”
        },
        {
          “name” : “DEPARTMENT_ID”,
          “type” : “NUMBER”
        }
      ],
      “items” : [
        {
          “employee_id” : 100,
          “first_name” : “Steven”,
          “last_name” : “King”,
          “email” : “SKING”,
          “phone_number” : “515.123.4567”,
          “hire_date” : “17-JUN-87”,
          “job_id” : “AD_PRES”,
          “salary” : 24000,
          “commission_pct” : “”,
          “manager_id” : “”,
          “department_id” : 90
        }
      ]
    }
  ]
}
</code>

Effective Emails #BLUF

Yes, this is a bit outside of my specialty; however, I receive somewhere between four to five hundred emails a day. Some are informational, some require me to make a decision, others are request. There is a US DOD standard for emails that makes things much easier for everyone involved. It starts with the subject line and goes into how the body of the email should be crafted.

The Subject Line key words: ACTION, INFO, DECISION, SIGN. You can put all kinds of key words in the beginning of your subject line. This will tell the reader what to expect and what kind of actions they may need to do.

BLUF: Bottom Line Up Front. The most important part of the email goes up front. If you are asking for an action, a decision, making a request, or just an FYI, you address it in the first paragraph of your email. Also, and this is a pet peeve of mine, people place links in their emails, and burry them somewhere in the text. Please, right after that first paragraph, you should put all the importing links that will be needed.

Next be concise. Make your emails short and sweet. I’ve lost count of the number of times I’ve received an email that was over five pages long. Unless you have authored a couple of books and have a good editor review your email, they are difficult to read and rarely provide the information that is really needed. So keep it short and too the point.

If you require more than one screen to get the message across in an email, use bullet points and use active verbs. If you can’t get everything across like in one screen, follow up the email with a phone call. Yes, people still talk on the phone and quite frankly, get a lot done that way.

Upcoming talks.

On 20 October I’ll be speaking at the Spanish Oracle Users Group on Holistic Database Security. Registration URL to follow.

On 29 October I’ll be giving the talk “Staying Current in a constantly changing IT Environment” This talk is open to the public and free of charge. It is being offered through Moscow Polytech and Oracle Academy.

There is one thing you can count on in life and that is change. The IT space is changing at breakneck speed, wait a six months, and you’re dealing with an emerging technology, wait a year and you’re behind. I’ve been fortunate to be surrounded by some of the most successful people in the industry who taught me the mindset and skills needed to stay current, stay in demand, and succeed. This talk will introduce you to the the strategies, tactics, and mindsets I’ve learned over the past 40 years.  Some are easy, some are difficult, and when done, it will help you stay relevant in the IT space for decades to come.

Here is the registration link in Russian and English

https://leader-id.ru/event/56738/?fbclid=IwAR1PdR610-8kpiGgb7JcuFtAD1meNQQ90rDJTq3vwddiqDnnmiTcCwWo8oI

Here is the English language registration link.

https://docs.google.com/forms/d/e/1FAIpQLSd6Uz5KWkHnnmY0u8X-jIruX2a0bGWSM9QUrVTCvCplq29Llw/viewform

And November 2, I will be speaking at the East Coast Oracle Users Conference on Holistic Database Security. Bellow is the registration link.

https://www.eastcoastoracle.org/