Skip to main content

Will Oracle ruin the PL/SQL Challenge?

I received this email from a person who has played the PL/SQL Challenge quizzes for years and now wanted to delete his account and player history.

Here's part of the reason he gave:
"I get the impression that the PL/SQL Challenge website is getting closer and closer to Oracle corporation (SSO with oracle.com, Oracle advertisements on the start page, …) – I always valued the PL/SQL Challenge as an independent resource, and these changes are IMHO going in the wrong direction."
This took me by surprise, but perhaps it should not have. Since rejoining Oracle last year (after being away for 22 years), it has become more and more clear to me that a noticeable percentage of my fellow Oracle Database developers and DBAs love the technology but don't love the company. 

I suppose that explains why soon after I went back to Oracle, several people came up to me with a sad look on their face, as if they’d lost a good friend: “Why did you join Oracle?” they asked, shaking their heads. 

For me, being back at Oracle means that I will be able to do more, have more impact, help more PL/SQL developers than ever before. I was excited and thought everyone else would be, too. Clearly, I had underestimated the depth of negative feelings.

This refrain (“Why oh why did you join Oracle?”) has surfaced multiple times over the last six months, as I hired well-known and highly-respected experts in the community (for example, Dan McGhan and Connor McDonald).

Now the PL/SQL Challenge has been moved to an Oracle server, and at least one person (which likely means there are a bunch more) is worried that this move will somehow compromise the independence of the website (implying, I suppose, that criticism of Oracle will not be tolerated, that we will just make excuses for any bugs encountered, that the site will turn into a big marketing effort). 

I do not see happening at all with the PL/SQL Challenge, nor with my more general work on the PL/SQL language.

No one at Oracle up my management chain has ever told me to do things differently now that the PL/SQL Challenge is Oracle property. No has told me to censor certain kinds of comments on the PL/SQL Challenge site, or that I must "toe the corporate line". 

Players remain free and encouraged to comment on quizzes, even if that means you will point out a bug or complain about something in the SQL or PL/SQL languages. And I pledge to you that I will approve comments that are critical of Oracle  both company and technology - so long as they are expressed in an appropriate manner and are relevant to the quiz at hand. 

Same thing goes with this blog.

Please, by all means, give it a try! What’s your complaint? What’s your beef with Oracle? 

To my way of thinking, it’s much better for us to hear your concerns and respond to them, hopefully by improving our products and the services we provide to you..

I am excited about moving the PL/SQL Challenge inside Oracle. It is a powerful platform for delivering quizzes, and I have high hopes of seeing it utilized by more of the product teams (weekly quizzes on APEX! ORDS! Database Administration! Java?). I also have high hopes that with the increased visibility that will come from promoting the quizzes on Oracle Technology Network, the Oracle Learning Library and more, many more Oracle technologists will benefit from the quizzes and the community that has grown up around them.

As for Oracle advertisements on the home page, it is true that we have added a couple of images on the right hand side to help you get more information about Oracle Database 12c and Oracle’s Cloud offerings. I don’t see these as ads, but as helping serve the common needs of Oracle and its user base.  Do you think you do not need to learn about 12.1 features or about where Oracle is going in the Cloud?

I did not join Oracle to help it improve its stock price (though that will be fine with me: I still own some). I joined Oracle to help Oracle Database developers utilize our fantastic technology more fully and to ensure that future generations of application developers understand how Oracle Database can help them build powerful, secure, maintainable applications.

We are currently moving forward with several initiatives in this area, including:

1. Oracle Database Developer Choice Awards: Years ago, Oracle gave out annual Excellence Awards to developers, such as the PL/SQL Developer of the Year award (I am honored to have received this twice). But then those awards stopped. We have restarted - and reshaped - those awards. The Dev Choice awards recognize both technical experience and community building, and our users will vote to choose the winners.


2. Project Solver: You will be hearing lots more about this soon. Solver revolves around the idea of constructing a community-curated expertise repository on all things Oracle Database (and eventually beyond) that will help our users solve their problems much more quickly and will high-quality solutions. This is not about Oracle passing down the word from on high (“Steven says this about PL/SQL”), but about ensuring that the thousands of Oracle Database experts all around the world are better able to share their hard-won wisdom and get recognition for their accomplishments. I know that there are many PL/SQL developers who know as much about PL/SQL as I do, and have real-world experiences that go far deeper than my knowledge in specific areas. 

You know who I’m talking about. That's right: you. Wouldn’t it be great to share your expertise, and be recognized for it?

3. More and better multimedia resources: It’s not easy for a well-established and successful organization to change direction, especially as the world around it changes as quickly as is happening in the 21st century. For too long Oracle has relied on whitepapers and slide decks - mostly stiff and corporate - to transfer expertise. Well, hey, it’s a YouTube, Twitter, LinkedIn kinda world, it’s a quirky, social, don’t take yourself too seriously kinda world, and it’s time Oracle caught up. So we are investing in both people and gear to allow us to “play” in this new world. Hopefully at least some of you have enjoyed Chris Saxon’s Magic of SQL video series and my Practically Perfect PL/SQL channel. You’ll see lots more of that sort of thing in the months and years to come.

I am not trying to argue that our users don't have legitimate gripes about some of the things Oracle does. And I am not nearly arrogant enough to think that the projects in which I am involved will lead to widespread change at Oracle. That’s above my pay grade. I do know, however, that executives in the Product Development organization understand the importance of our current and future users, and the need to change how we communicate and partner with you. And they have given me (and others) resources to get started on that change. 

So by all means, keep hold of your skepticism, voice it wherever and whenever, but please also recognize initiatives from Oracle that are addressing the sources of your skepticism. And very specifically, help me and my Oracle Developer Advocates team put users front and center, and give all of us better resources to build better applications on top of Oracle Database.

Comments

  1. Hello Steven,

    I can't see a direct impact of the new sponsorship on the independence of PL/SQL Challenge.
    There are a lot of blogs out there hosted by Oracle where you can read critics, even harsh critics. And in the OTN forums are lot's of uncensored negative comments about Oracle.
    IMHO it is self-defeating for any company to suppress critic, be it on their own sites or in e.g. Wikipedia, your users will easily find other channels these days and the comments on censorship are certainly worse.
    I think it is overacted to leave just because Oracle became the sponsor. On the other hand I'm sure that many players will leave when they get the impression that Oracle influences the game.

    And about the adds: They are adds and I would not call it anything else - but I don't see it negative. Why should an advertissement not spread the word of a product in combination with useful information.

    Regards
    Marcus

    ReplyDelete
  2. My personal opinion based on what I hear, see and read, is that many like the tech, like the community, but dislike the red tape of Oracle "Corp". Or put in other words - like to develop in Oracle, like to give and get answers from fellow developers, but dislike trying to get answers from MOS, licensing or sales.

    What is sometimes forgotten is, that Oracle is also very active in community. And a lot of product development managers are in the community interacting directly with developers and answering questions and getting inspired to improvements. Jeff Smith just wrote on LinkedIn on a similar note ( https://www.linkedin.com/pulse/why-i-work-oracle-jeff-smith ) and it was commented that it is great he makes product development so accessible.

    Many know this and are grateful and often get answers from a manager rather than going to MOS ;-) But some unfortunately let their "badwill" towards the "Corp" spill over and taint their feelings toward Oracle community involvement :-( It'll take time and work (advocates team and more of your excellent initiatives) to turn it the other way around, such that "goodwill" from Oracle community involvement spills over towards the "Corp" instead ;-)

    Keep up the good work - you do good whether outside or inside Oracle. Inside you have a unique position to "reverse" the "badwill to the Corp" to "goodwill to the community". Sure, you run a risk of being "swallowed by the Corp", but I think you are too much an independent being for that to happen ;-)

    PS. Point 2 sounds very interesting - looking forward to hearing more on Solver :-)

    ReplyDelete
  3. Steven,
    It could possible to get your documents on pl/sql in any site? If not could it possible to send us redro.apps@gmail.com

    ReplyDelete
    Replies
    1. What do you mean by "documents on pl/sql in any site"?

      Delete

Post a Comment

Popular posts from this blog

Running out of PGA memory with MULTISET ops? Watch out for DISTINCT!

A PL/SQL team inside Oracle made excellent use of nested tables and MULTISET operators in SQL, blending data in tables with procedurally-generated datasets (nested tables).  All was going well when they hit the dreaded: ORA-04030: out of process memory when trying to allocate 2032 bytes  They asked for my help.  The error occurred on this SELECT: SELECT  *    FROM header_tab trx    WHERE (generated_ntab1 SUBMULTISET OF trx.column_ntab)       AND ((trx.column_ntab MULTISET             EXCEPT DISTINCT generated_ntab2) IS EMPTY) The problem is clearly related to the use of those nested tables. Now, there was clearly sufficient PGA for the nested tables themselves. So the problem was in executing the MULTISET-related functionality. We talked for a bit about dropping the use of nested tables and instead doing everything in SQL, to avoid the PGA error. That would, however require lots of work, revamping algorithms, ensuring correctness, you know the score. Then my eyes snagge

How to Pick the Limit for BULK COLLECT

This question rolled into my In Box today: In the case of using the LIMIT clause of BULK COLLECT, how do we decide what value to use for the limit? First I give the quick answer, then I provide support for that answer Quick Answer Start with 100. That's the default (and only) setting for cursor FOR loop optimizations. It offers a sweet spot of improved performance over row-by-row and not-too-much PGA memory consumption. Test to see if that's fast enough (likely will be for many cases). If not, try higher values until you reach the performance level you need - and you are not consuming too much PGA memory.  Don't hard-code the limit value: make it a parameter to your subprogram or a constant in a package specification. Don't put anything in the collection you don't need. [from Giulio Dottorini] Remember: each session that runs this code will use that amount of memory. Background When you use BULK COLLECT, you retrieve more than row with each fetch,

Quick Guide to User-Defined Types in Oracle PL/SQL

A Twitter follower recently asked for more information on user-defined types in the PL/SQL language, and I figured the best way to answer is to offer up this blog post. PL/SQL is a strongly-typed language . Before you can work with a variable or constant, it must be declared with a type (yes, PL/SQL also supports lots of implicit conversions from one type to another, but still, everything must be declared with a type). PL/SQL offers a wide array of pre-defined data types , both in the language natively (such as VARCHAR2, PLS_INTEGER, BOOLEAN, etc.) and in a variety of supplied packages (e.g., the NUMBER_TABLE collection type in the DBMS_SQL package). Data types in PL/SQL can be scalars, such as strings and numbers, or composite (consisting of one or more scalars), such as record types, collection types and object types. You can't really declare your own "user-defined" scalars, though you can define subtypes  from those scalars, which can be very helpful from the p