APEX Connect 2016, “The Pink Conference”

This week I attended my first specifically APEX conference, APEX Connect in Berlin, Germany. Remember the Berlin Wall?

IMG_4886

Our hotel was on the East side. I am sure I will remember this hotel FOREVER. Why? Guess..:-)

 

 

The first day started with a welcoming speech by Niels de Bruijn and his team. And then the stage was taken by “Tom” Chris Saxon. Chris gave a excellent talk about his experience on working on AskTom. My first talk was at 12.00 about Managing the changes in database structures in agile project with Oracle SQL Developer Data Modeler. It is not easy to compete with lunch but almost a room full of people chose my presentation from lunch:-) Thank you so much for attending!

Before my next talk I attended Alex Nuijten’s Analytic Functions: Unleash the SQL Power, even though he was telling me not to. His excuse was that I have seen this session already. So what! Alex is a great presenter and I always learn new things in his sessions.

At 4.15 pm I was supposed to give a workshop on Top 10 Features of SQL Developer everybody should use. I say supposed because the room was getting fuller and fuller, more chairs were brough in and finally it was so full there was no extra space. I decided to just demo the features and give the slides to the audience to do the workshop part at home. I also agreed with the organizers (DOAG) that I will give this session in November at the DOAG event so that those who missed it this time will have a new chance to see it. Thank you very much for attending and thank you for all the questions and ideas!

The next morning started with the announcement of the winners of “APEX BI competition”. Congratulations to all the winners AND to all the attendees! Next it was the godfather of APEX, Mike Hichwa, sharing his thoughts of the APEX Vision; past, present and future. Mike is a great presenter and he definitely knew what he was talking about. Great keynote! After that I listened David Peake telling about the New Features in Oracle Application Express 5.1. As usual David was showing great demos for a full room. I could not get a seat so needed to listen the presentation standing:-)

One of my favourite speakers is also Roel (“Rule”) Hartman. He knows what he is talking about and makes the audience believe they have understood everything:-) I went to see the presentation: Make your APEX Applications fly using JET components.

I though the day was perfect but no. The last keynote was simply amazing. Monkey See Monkey Do: Monkey Business at the work floor by Patrick van Veen. Using experiments with monkeys he explained human behaviour and gave great advice to IT projects, work and the whole life. Total Monkey Business!

IMG_4920

After the monkeys it was time for a party! Dinner, show and plenty of music and fun!

The last day was full of great sessions. Of course I attended the sessions by Roel (APEX Developers: Do more with Less!!) and Alex (Structuring an APEX application). BTW I must attend all the session by Alex from now on: when I am in the room he remembers to tell the audience the right things 😉 If you add a new column, fill it up and change it to mandatory,…if you want to avoid performance problems, design your database,…:-)

I also attended the session by Christian Rokitta, Lunchtime learn Q&A (which turned out to be lunch OR learn:-) ) and An Update to Universal Theme by Shakeeb Rahman.

Thank you all the organizers (GREAT WORK!) and thank you all who attended my sessions! Great event! Amazing community! I really, really hope I will be invited next year again!

 

— Heli

#WIT at #C16LV

At COLLABORATE16 I gave my very first WIT talk. I have attended several panels on WIT, I have been mentoring etc. but never given a full talk about WIT. I was quite nervous before my presentation: what could I say that my audience would find interesting?!

I arrived very early to my room as did Anita, the representative for the sponsor. We had a great chat before the session started. The room was packed and I was told that there was a waiting list for another full room!  And not just women, plenty of men as well which I find great. Obviously WIT is a hot topic in USA. I am very glad COLLABORATE has noticed that and is giving the audience what they want.

I gave my talk and got plenty of questions during and after the session. And during the whole event people came to talk to me and said how much they enjoyed my session! That was a wonderful feeling.

Based on what I was asked and talked about it would say that the main concern for many of us are our children. We do not worry about the career and that kind of things as much as we worry about our children, no matter what age they are. Of course my audience was people already on IT so the concern for those who are not on IT but would like to be are different. And when I say we I mean both women and men.

 

Thank you COLLABORATE for inviting me and giving me the chance to give my first WIT talk!

 

— Heli

My First COLLABORATE

I am at the Las Vegas airport waiting for my flight home. It was a busy week but an extremely nice one.

This week I attended my first COLLABORATE (#C16LV). It was held in Las Vegas (did not see much of Vegas so no comments on that). I gave the WIT (Women in Technology) Keynote on Monday. The room was full and unfortunately not everybody who wanted to attend could do it because the seats were limited, the room can take only as much it can, not more. I was very surprised how popular WIT is at the COLLABORATE! I was very nervous before I started. I had prepared this session for weeks, and I mean weeks. Now I can tell you that preparing a regular tech session is MUCH easier than preparing a WIT session:-) Before I started I got a message from my husband saying: You will do great. When I started the presentation I was having a lot of fun! There was no reason to be nervous. The audience was simply GREAT! And the feedback I got…THANK YOU, THANK YOU, THANK YOU! I am so glad I accepted the invitation to come and speak. Thank you so much for inviting me.

On Tuesday I had two sessions: a panel about communication and a talk about how to manage changes in database structures with Oracle SQL Developer Data Modeler. The panel was organized by Michael Abbey. He is a great person and the panel was a success. Thank you, Michael, for inviting me to this panel!

My session about database changes went well too and I can proudly say that Mr Steven Feuerstein attended this session and did not fall asleep:-) Actually Steven came to me afterwards and gave me some compliments😉

Wednesday was the day for meetings. I am the Ambassador for EMEA Oracle Users Groups and in that role I attended some great meetings. Thank you Mary Lou Dopart for inviting me.

Thursday was the last day of the event and I gave my favorite session about database designing using Oracle SQL Developer Data Modeler as the last session of the event. I was surprised so many people still had the energy to attend the session and I am very happy for the feedback you gave me after the session.

During the week I also attended several sessions by other speakers, especially on Big Data. On Sunday I attended the OEM Hands on Lab (by Kellyn, Courtney and Werner) together with Jim Czuprynski. That was great fun! Jim is such a nice guy to work with!

On Monday I attended the keynote about trends and technologies, Rob Lockard’s security talk to mention some. On Tuesday and on Wednesday I attended a couple of big data sessions. And on Thursday I learned about JSON.

The parties (every evening:-) ) were great, I am sure, but as a first timer and a jet lagged person I needed to leave them early to be able to be energetic the next morning:-)

Thank you very much for having me and thank you for attending my sessions!

I really hope I will get an invitation to speak at the #C17LV !

— Heli

Collaborate16 is really close…

I just realized it’s almost April! That means that soon I will fly to Las Vegas for my very first Collaborate! I am really excited about this! It will be a busy week.

I will give the keynote at the Women in Technology Luncheon

Apr 11, 2016 11:30 AM–12:30 PM, Mandalay Bay D: An Unexpected Journey: Charting a Career Path in Oracle Technology.

 

Then I will be one of the panelists, together with Michael Abbey, Anton Els and Roopesh Ramklass, talking about communication.

Apr 12, 2016 9:15 AM–10:15 AM, North Convention, South Pacific D: Communications – the Good, the Bad, and the Best.

 

And I will also give two talks about Oracle SQL Developer Data Modeler (the tool of which I have written a book http://www.amazon.com/Oracle-Developer-Modeler-Database-Mastery/dp/0071850090):

Apr 12, 2016 1:00 PM–2:00 PM, Palm D: Managing the Changes in Database Structures

Apr 14, 2016 12:15 PM–1:15 PM, Jasmine B: Database Design with Oracle SQL Developer Data Modeler

If everything goes well (= I manage to get the books there:-) ) I will give away a signed copy of my book in both sessions…

 

I just wrote a blog post about the length of preparing a presentation. Now I can tell you that the most difficult presentation to prepare is the one about yourself! The WIT keynote is the toughest presentation for me so far. I suggest you come and attend it to see how I have managed with it😉

 

Hope to see you in Las Vegas!

Heli

How long does it take to prepare a presentation?

I present a lot nowadays, about every other week I present at the University (always a new topic) and I speak in many conferences. I prepare new presentations all the time. I like it but it is a lot of work.

In Twitter somebody asked me how I fund my travelling. That is a relevant question and I will answer it too but more relevant would be how do you find all the time for preparing, travelling, and speaking. Time is money as we all know.

I decided to ask other people how long they spend preparing a presentation and I tweeted:

“How long does it take for you to prepare a new 45-60 min presentation? #curious”

Obviously it was not an easy question. I got tons of replies and several private messages. Here is a list of some of the replies in Twitter:

Replies defining the time:

  • to prep a “deep tech” talk, maybe 20-40 hours. To prep an “intro” talk, twice as long.
  • I’d agree with that. Then the next year tweaking it.
  • around 40hrs
  • I’ve spent up to 160h for keynotes. It’s good to have realistic estimates of time:)
  • can’t beat my score, it takes more than a month to work with the best content & prepare the prezo.
  • Unfortunately more than 100 hours. I always do new work so there’s a lot of research. #perfectionismsucks
  • Some say it take up to 2, 4 hours per 1 slide. This covers stuff like, thinking about it/creating/putting it in context, finding pictures, reducing amount of bullet points, restructuring slides, thinking about content/goal/audience/message…
  • I tend to take at least 10 hours ( some distracted by oddities that dont make it).
  • A few days, after the weeks, months or years of research…
  • for me, between 3 – 4 months. Most of that time is chewing on it then about a week to bring it all together
  • 3-6 hours, with graphs much more
  • I think around 5-8 hours for me, spread across a week.

My conclusion: preparing a 45-60 min presentation takes days. And none of the replies mentioned anything about rehearsing the presentation, which I know most of the speakers do:-)

 

Replies defining the factors that affect the time:

  • It definitely depends on WHAT you present and HOW. Complex topics require research and demos may be very long to prepare.
  • depends on the subject. For my new matter explorations I don’t really count, but if would, it be days rather than hours.
  • depends on topic and how familiar I am with the topic.
  • depends on demos / research needed / how much I know about it. Sometimes just 20 minutes – sometimes 5 days!
  • Depends on how long the assistant to the assistant to the assistant to the assistant to the assistant proofreader takes.
  • Less time than it took to get all management and security approvals after the powerpoint was ready J
  • Since I’m bad with slides it depends on idea-sometimes it’s just installing new VM and sometimes-sew a doll and buy an axe

My conclusion: the time it takes to prepare a 45-60 min presentation depends on the topic, how well you know it, whether you will include demos etc. in it and many other external factors. In general the more demos you have the more you need to prepare and the more detail and deep the presentation is the more you need to think how to explain it.

General replies:

  • Generally (1) much longer than I’d like, and (2) much longer than I thought it would take:-)
  • It doesn’t matter how long the presentation is, the answer to that question is still way too long!:)

My conclusion: it takes a LOT of time.

To my experience (based on the feedback I’ve got from my presentations and the presentations I have attended) the more time you spend with the slides the better presentation.

In the private messages people pointed out that preparing the presentation and presenting means you need to take off from work; some take vacation and some have an understanding employer allowing one to travel. Many of us are independent consultants or working for a small company meaning that the company will lose money for every hour spent for something else but the real business. Of course big companies have the same but since they have more employees it does not affect as dramatically to the revenue. If you are independent it affects directly to your own income.

Let’s assume an average presentation takes 2 days to prepare. The person is working as a consultant and charges 1000 USD/day. Preparing an average presentation would cost 2000 USD.

Next step is that the happy speaker is accepted to speak in an event, let’s say the event is 2 days. The speaker travels there for one day, attends the event for two days and travels back. 4 days, 4000 USD in total.

Then the speaker gets feedback and based on that and his/her own improvement ideas changes the slides accordingly. Let’s say 0.5 days, 500 USD.

In short: preparing a presentation and presenting it in one event costs 6500 USD. And this is to my opinion the minimum.

Conclusion: the time invested to a presentation is expensive.

Another aspect is sharing the knowledge. A lot of people see that knowledge is power, they are not willing to share what they have learned. They rather make business with the knowledge: hire me and I will fix it. This really is smart, I agree. And then some of us think that sharing makes the world a better place. We spend a lot of time learning new things and then go and share it for free with anybody who is interested in learning. Sharing is a great power for learning! Giving your knowledge for free is also a cost in a way of thinking.

Next time you attend a presentation I hope you appreciate the fact that the person presenting has spent a lot of time to prepare this presentation for YOU. Enjoy the presentation and learn as much as you can!

If you are interested in starting to present, I encourage you to do it: it is a lot of fun. BUT make sure you are willing to spend all that time to prepare the presentation,to share your knowledge with the community and be prepared to invest in the cost to travel to these conferences. Start with some local conferences or SIGs where you can try out your presentation, topic and presenting skills, to get some good feedback. Then as your confidence grows you can look to present your topics at conferences in other countries. This can be fun and very interesting, as I have found that the audiences in every country is slightly different. In some countries they constantly ask questions during the presentation, but in some countries they do not ask you any questions, even when you open the floor to questions at the end of a presentation. And do not be afraid of the feedback. Try not to take it personally but as a great way to improve both your presentation and your skills to present.

Because presenting takes a lot of time I cannot highlight enough that this time is usually away from your Family. This is what people in private messages also pointed out. Make sure you and your family are ok with the idea of you presenting. I have personally decided to take family members with me to some of my trips. That is very expensive but I see it necessary and I am willing to spend the money for it.

And finally to the original question about the funding:-)

Most of us do not have the luxury of having an employer who could afford to both let us travel to present on work hours and pay the expenses. I am extremely lucky and happy to be an Oracle ACE Director. That position gives me the privilege to ask for funding from the Oracle ACE program for my travelling expenses. This is a wonderful program and without it I would not be able to travel and share my knowledge. Every time I would like to go and speak in an event I submit my application to the Oracle ACE Program and they either decide to fund the trip or not. If they decide to fund, my transportation and accommodation are covered. Meals, tips etc. I must pay for myself. It is also possible they reject my application because there are certain events that the Oracle ACE Program does not fund or because the budget has already been spent. In those cases I must decide if I am willing/able to fund that trip myself or if I tell the organizer that I am not able to attend. The best part of the Oracle ACE Program is that I am free to speak what I want: nobody tells me what I must say. Do you see the point? I LOVE the ACE Program and personally I think it is one of the smartest things Oracle has ever done.

I love learning new things and sharing my knowledge. I am very happy doing so. I know that I would make much more money if I didn’t share my knowledge for free, but then I could not expect others to do it either! Now I know I can always go to the community and ask for help. I always get the help and advice and nobody expects me to pay for it. Without this spirit of sharing the knowledge we would not have this wonderful community and learning would be much harder. Being part of this community is definitely worth it! I have made so many good friends in this community and part of each and every event I go to is meeting friends I do not see often enough no matter how much I travel:-)

Thank you to my family for letting me do this even though it means I will be working all the time and travelling a lot. Thank you to my employer Miracle Finland for letting me travel and thank you to Oracle ACE Program for funding many of my trips!

I am really sorry this post turned out to be this long. I hope you were not too bored:-)

Cheers,

Heli

OUGN 2016

Once again the OUGN event was simply GREAT! Thank you for the whole organizing team but especially my friend Ann-Sofie Vikström Often who made me feel extremely welcome to the event and to the audience who gave me 100% green for BOTH my presentations. Thank you! And thank you so much for attending my sessions!

The event started with the speakers’ dinner in a very nice burger place. I saw a burger called Birdie Num Num on the menu and had no choice but to take that:-) It was yummy!

The next morning I met Gustavo for breakfast and we decided to walk to the harbour instead of taking a taxi. It was about 30 min walk from our hotel. Everything has obviously changed in Europe because our passports were checked as well as luggage before we were let on the boat. The boat goes from Norway (Oslo) to Germany (Kiel).After all the checks we were ready to board. The keynotes were on in Norwegian.

My first presentation was at 16.00 and the second one on the second day at 16.00. That made my life easier: no need to remember many times:-) I attended several great sessions during the cruise, was happy with my own sessions, had great dinner both nights with wonderful friends and thanks to Luis Campos I also saw a little bit of Kiel. I was thinking to stay on boat to see presentations but Luis convinced me that it is worth having a small walk in Kiel and a cup of coffee. And he was right: we had a nice time in Kiel shopping, walking, talking and having a cup of coffee with a cinnamon roll. We learned that we both LOVE cinnamon:-)

The boat arrived to Oslo on Saturday morning and I rushed to taxi with Mike and Kuassi to make sure none of us will miss our planes. Mike left immediatelly but Kuassi and I stayed at the airport lounge for a while talking and working.

I am so blessed to have the opportunity to attend these events and to have so many wonderful fellow-speakers I can call my friends. Thank you OUGN for inviting me, thank you OTN and the ACE program for funding my trip and thank you Miracle Finland for letting me travel. It was a great trip but I am so happy to be home now. Missed my family:-)

 

GaOUG Tech Day

I am at the airport of Atlanta waiting for my flights home. It will be a loong journey again but it definitely was worth it. Great event! Great audience!

The GaOUG has been on break for a while and my good friends are doing their best to activate it again. And my world did they do a good job! This user groups will grow and be amazing! Thank you OTN and the ACE program for making it possible for me to be part of the new beginning of a fabulous user group!

All the best to the user group and thank you for inviting me and letting me be part of your new beginning.

— Heli

Invisible Column

I like it! Have you ever been in a situation you should add a column to a table but you cannot because the current application would stop working? I have and many times. Now we can do it immediately and give some time for the developers to fix the application.

This feature, invisible column, was introduced in Oracle Database 12c. An invisible column is a table column that cannot be seen using for instance SELECT * FROM or DESCRIBE command. It cannot be seen with %ROWTYPE attribute in PL/SQL variable declarations either. To be able to see it you must explicitly specify it in queries.

Let’s create EMP table with column ENAME defined as invisible.

 

CREATE TABLE EMP
(EMPNO NUMBER(4) NOT NULL,
ENAME VARCHAR2(10) INVISIBLE,
JOB VARCHAR2(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(2)
)
/

 

When inserting rows to a table that has invisible columns, and also to that column, make sure to define the column names. If you do not do that you will get an ORA-00913: too many values error.

If you do not want to insert a value to the invisible column, inserts without column lists can be done. If the invisible column has been defined obligatory there is no problem but if it has been defined mandatory make sure to define the default for it using DEFAULT clause.

Another fun thing with invisible columns is that when you define the column invisible and then visible, the column moves to the last column in the table (logically of course, no physical moves).

ALTER TABLE EMP
MODIFY ENAME VISIBLE;

 

DESC EMP

Name     Null     Type        

——– ——– ————

EMPNO   NOT NULL NUMBER(4)  

JOB               VARCHAR2(9)

MGR               NUMBER(4)  

HIREDATE         DATE        

SAL               NUMBER(7,2)

COMM             NUMBER(7,2)

DEPTNO           NUMBER(2)  

ENAME             VARCHAR2(10)

Sometimes this might be useful for you…

 

Cheers

Heli

Datatypes in Oracle

Each value Oracle database uses must have a datatype specified, whether the element is a column in a table or an argument or a variable in a program code. A data type is either scalar or non-scalar. A scalar type contains an atomic value, for instance Salary is 3000. A non-scalar datatype contains a set of values, for instance PostalCode collection. A datatype defines the domain of the element and how Oracle will treat that element. For instance the datatype for Salary (NUMBER(6,2)) defines that the salary is numeric and it can only contain numeric information. A datatype can be one of these categories:

  • Oracle build-in datatype
  • ANSI, DB2, and SQL/DS Data Types
  • User-Defined Types
  • Oracle-Supplied Types

Oracle build-in datatypes are of type character, numeric, long/long raw, datetime, large object (LOB) and rowid. When creating tables also ANSI, DB2, and SQL/DS Data Types can be used. Both DB2 and SQL/DS are products from IBM. Oracle recognizes the ANSI or IBM data type by its name and converts the data type to the equivalent Oracle data type. User-defined types are datatypes users can define themselves using the tools Oracle provides for this. The Oracle-supplied types are user-defined types that Oracle has defined using the same tools we can use for defining user-defined types. Oracle-supplied types are:

  • Any Types
  • XML Types
  • URI Types
  • Spatial Types
  • Media Types

 

Cheers,

Heli

Tables in Oracle

When designing a database the end results is the DDLs for creating the database elements. For instance the tables. In Oracle there are two kinds of tables: relational and object tables. There are different kinds of relational tables: heap-organized table, index-organized table and external table. A table can be either permanent or temporary.

The regular table is a heap-table where the data is saved in a heap without no particular order. In Oracle Database 8.0 the index-organized table was introduced. An index-organized table is an index structure ordered by the primary key: each leaf block in the index structure stores both the key and non-key columns (the actual data). Since Oracle Database 9i there been a table type called external table. An external table is stored outside the database.

An object table is one of the object-relational features that were added to Oracle Database to support object-oriented functionalities introduced in object-oriented databases in 1990’s. In an object table each row represents an object or implementation of it. Object table can be defined using user-defined types, possibly supertypes and subtypes. Later we will talk about how to do this using Data Modeler.

All these table types described earlier are permanent tables where the data stays saved on a disc until somebody deletes it permanently. There is also another kind of table type: a temporary table. The data in those tables are saved only temporarily and the data is deleted automatically either after the transaction or a session. The definition of a temporary table is not dropped automatically; it remains until somebody deliberately drops it. A temporary table is meant to be used when you need to temporarily store a set of rows to be processed against other tables or temporary tables. Temporary tables are very useful if you need the result set in many queries, for instance when you need to update several tables using the data in a temporary table. Do not use it to split a query to smaller queries, it will be less efficient than the original query since Oracle database is specialized in performing queries in a database and will do them as efficiently as possible.

 

Cheers,

Heli

 

Follow

Get every new post delivered to your Inbox.