Wednesday, March 26, 2014

I (re) Join Oracle Corporation!

On March 17, 2014, I became an employee of Oracle Corporation for the second time. My first round with Oracle started in August 1987. My second son, Eli, was less than a year old. I'd been incredibly bored with my consulting gig, which consisted of babysitting a reporting system on a DEC10 "mainframe", based on a flat-file database – but a database.

So I checked the Help Wanted pages (no Internet, no smartphones, no LinkedIn) and came across an ad from Oracle Corporation. It contained the word "database", so I figured: "Why ?"

I was hired, even though I was completely ignorant of relational databases. Ok, not completely. I'd read an article by Codd and memorized "Twelve Rules of Relational Databases." But no one ever asked me about relational theory. Instead the key  question seemed to be: "Are you comfortable talking in front of groups, large and small?" I was, after all, interviewing for a "pre-sales" (sales consultant) position.

Fortunately (?), I'd been very active for the past several years organizing Americans to protest facets of our government's policies in Central America, and yes I'd spoken often to groups large and small. My manager-to-be at Oracle seemed pleased enough with this, and I got the job. I never thought my political activity would help me land a software job, but that's exactly what happened.

Looking back on that moment, I see now that it foreshadowed a significant, but not widely recognized characteristic of my career: The popularity of my books and trainings stem as much from my communication skills (the delivery) as from what I am communicating (the content).

I'll get back to that in a moment. Well, joining Oracle changed my life. For one thing, I had to go out and not only buy some suits, but wear them every day. And then after five years with the company, I left to do some consulting, and a few years later ended up publishing Oracle PL/SQL Programming (O'Reilly Media) in 1995. Now that really changed my life!

For the next almost-19 years, I have focused almost exclusively on the Oracle PL/SQL language. I wrote nine more books on the language (probably about 4 too many, actually), of which over 400,000 copies have been sold. I traveled to dozens of countries to share my obsession (expertise) with PL/SQL in trainings and presentations. I built and designed PL/SQL testing tools, code generators, code libraries, and more. I wrote lots of articles for Oracle Magazine and other publications. I attended many, many Kaleidoscopes and Collaborates and International Oracle User Weeks and Oracle Open Worlds and....my wife got really tired of my traveling. Sigh....and that is why I have pledged that in Round 2 with Oracle, I would not start living on airplanes again.

For much of those 19 years, I worked for Quest Software and then Dell as a PL/SQL Evangelist. Quest and Dell helped sstrengthen the PL/SQL community not only by offering such amazing tools as Toad for Oracle, but also by funding my position and giving me a tremendous amount of freedom to continue learning about, writing and writing about PL/SQL.

But I decided last year that I wanted to close out my career as a software professional (I will, after all, be 56 in September 2014) with the company that created the programming language that transformed my life: Oracle Corporation.

Wasn't I lucky that the head of all product development at Oracle, Thomas Kurian, was also a former PL/SQL product manager! Otherwise, Oracle might not have been interested in having me back. ☺

So what will I be doing at Oracle Corporation?

My title continues to be PL/SQL Evangelist, and PL/SQL will continue to be my main focus, of course. I will help promote the language, add to the collateral available for PL/SQL, write articles for Oracle Magazine and post content on Oracle Technology Network, present at the key Oracle developer-related conferences. In other words, all the usual stuff.

But I see my evangelism as a two way street: I want to make sure that developers around the world take the fullest possible advantage of PL/SQL, yet I also want to make sure that Oracle generally and the PL/SQL development team in particular recognize the importance of the PL/SQL community, and leverage it fully.

Ever since 2010 I have been writing daily quizzes (and more) on the PL/SQL Challenge. I have been amazed at the enthusiasm of hundreds of developers to test their knowledge on this site. And it has been fantastic to see many PL/SQL experts who might otherwise never be known or recognized by their peers step forward to share their expertise. This was one of my "hidden" goals of the PL/SQL Challenge.

You see, I have never been entirely comfortable with being (one of) the "go to guys" on PL/SQL. I know very well that for all of my depth and focus on PL/SQL, I am really not very strong technically. I am no Tom Kyte, no Bryn Llewellyn. I only took three computer programming courses in college, all 101 level. I mostly got lucky - and fell into programming at a time when a degree in computer science simply wasn't a requirement (1979!).

It turns out that my main strength, the main reason (I believe) that my books and presentations became so popular, is that I am a good at communicating ideas, techniques, etc. in a way that people find accessible. I never learned how to write and think like a computer scientist, so people can actually understand - and enjoy - what I write. Because of the limitations of my formal training, I often have to think my way step by step to an understanding of how things work (I can't just know things from my university days). I then share that step-by-step process with my readers, which helps them understand. Finally, I seem to find it impossible to keep my sense of humor out of what I say and write - and boy did my readers appreciate that! :-)

Bottom line: it makes me a little nervous when so many people look to me for "all the answers" to their PL/SQL-related problems. I don't have all the answers. But I am pretty sure that if I do not, there is someone out there, some Oracle technologist who has worked with PL/SQL for years, who has a computer science degree, who has faced different challenges than me, who might just have the answer you need, a code sample to save you hours of work, a piece of advice that can save several bangs of the head against the wall.

But how to get the question to the person who can answer it? Of course the OTN discussion forums and places like Stackoverflow provide a way to expose this expertise and make it available to many. I hope to complement those kinds of efforts with new initiatives at Oracle.  You will see announcements over the next year regarding this community building effort. But in the meantime if you have any ideas for me on this topic, please do not hesitate to send me an email.

The Two Me's Online

I have, for years, offered my thoughts (some might say "rants") on my Feuerthoughts blog and @stevefeuerstein twitter account. Going forward, I will cleanly separate my Oracle-related posts from my personal content. So here's a quick guide to the sites and accounts I will be using.

Oracle
Blog - stevenfeuersteinonplsql.blogspot.com
Twitter - @SFonPLSQL
LinkedIn - www.linkedin.com/pub/steven-feuerstein/0/61/51b/

Personal
Home - www.stevenfeuerstein.com
Blog - feuerthoughts.blogspot.com
Twitter - @stevefeuerstein
Facebook - Steven Feuerstein

If you follow my @stevefeuerstein twitter account, I urge you (if an Oracle technologist and not my mom) to also follow me on @sfonplsql. I will soon ramp up with daily PL/SQL tips and more.

Time to Get to Work!

Lots to do, lots to do. Including coming up to speed on a Macbook. I am making the switch after 30 years with DOS and Windows. Fun, scary, frustrating, liberating. More on that, too, to follow

Wednesday, March 12, 2014

How Humans Lost Their Hands (and saved the world)

My first creation (and destruction) mythstory....

How Humans Lost Their Hands (and saved the world)
Copyright 2014 Steven Feuerstein

A very long time ago, our home, the Earth, was very beautiful and full of life on the inside, but on its surface it was empty.

So the Great God Bacta shook the planet and brought forth multi-cellular life in all its ever-lasting glory and ever-changing beauty.

And among the multitude of multitude of creatures, one little piece of Earth's life was Sura, and she was the First Woman, mother of all the humans.

She was, however, sad, because she was all alone, and lonely.

Bacta felt sorry for Sura and in a moment of love for this new surface life, bestowed upon Sura four gifts:

1. A fat fish made of silver, with jewels for eyes.

Bacta declared: as long as Sura possessed the fish, humans would never lack for food. Bacta would make sure the harvests are plentiful and the hunting good.

2. A golden coconut, always full of cool, fresh coconut water.

Bacta declared: as long as Sura possessed the coconut, humans would never lack for water. Bacta would make sure that the rivers flowed and the water creatures cleaned the water, and that humans would always have enough to drink.

3. A glowing jade stone in the shape of a pulsing heart.

Bacta declared: as long as Sura possessed the jade heart, Bacta would make sure that humans would love each other and protect each other from harm.

4. A fossilized shark fin, dark and sleek.

Bacta declared: as long as Sura possessed the fin, humans would be born with their amazing hands, with which humans can make all sorts of things.

Sura thanked Bacta for the wonderful gifts, but still looked sad. Then Bacta remembered, and it created Beto, the First Man.

Beto, the First Man, was also the happiest man, because his job was to make little baby humans with Sura.

Beto was good at his job, and so was Sura, and soon humans - and the things they made with their amazing hands- covered the Earth. After all, Sura still possessed the fish and coconut and jade and fin, so humans ate and drank and loved and built all they wanted.

And they were so busy eating and drinking and loving and building, that they didn't notice all the other creatures who had stopped eating, no longer drank, felt neither love nor hate….because they were simply no more.

Bacta discovered what was happening and appeared before the multitude of humans, to declare:

"You are eating so much food
and drinking so much water
and loving so few and so little
and building so many roads
that the last butterfly has died."

A great murmur went up amongst the humans: "Butterflies dead? So what?"

Bacta was not done. "I have never before had to take back a gift, but I hereby take back the fish. I will no longer make ensure that you have food to eat. Perhaps this will teach you to live in the world, instead of eating it."

And so it came to be.

A swarm of locusts ate the crops that humans planted. Worms ate the fruit in the trees. The rains stopped and everything went bone dry.

Many humans died.

But after a while, the humans who survived figured out how to stop the pests and after a while rain returned. With GMOs, and Roundup, and DDT, humans could get back to eating and drinking and loving to their heart's content. And they did.

Then Bacta appeared for a second time before the humans, very angry, and said:

"You are still eating too much food
and still drinking too much water
and still loving too few and too little
and still building too many roads.
Now, the last elephant has just died."

A great murmur went up amongst the humans: "Elephant? What is an elephant? Dead? So what?"

Bacta was not done. "Only once before have I had to take back a gift, but now I take back the coconut. I will no longer make sure that you will have water to drink. Perhaps that will teach you to live in the world around you, instead of drinking it dry."

And so it came to be. The water in the rivers turned blood red and the water in the seas caught fire.

Many humans died.

But after a while, humans learned how to clean the water so they could drink it, and live. They had to keep this good water apart from the bad water and so from that time on, everyone drank water from plastic bottles.

Bacta was outraged. Water was the source of life, the home for all bacteria. Humans were even ruining that?  Bacta appeared before humans in a fury, and said:

"You are still eating too much food
and still drinking too much water
and still loving too few and too little
and still building too many roads.
Now the last frog has just died."

A great murmur went up amongst the humans: "Frogs are slimy. Frogs are gross. Good riddance, frogs."

Bacta was not done. "Only two times before have I had to take back a gift, but I now take back the jade heart. I will no longer make sure that humans love and take care of each other. Perhaps that will teach you to live in the world around you, instead of covering it with humans."

And so it came to be. Families stuck together, even tighter than before, but friends were no longer trusted, and everyone else was a danger, and not to be trusted.

Yet if you are not trusted, then after a while you act untrustworthily. Without trust and love, between the many groups of humans around the world, violence broke out and wars swept the continents.

Many humans died.

But after a while, those who stayed inside or had the biggest guns, wrote contracts agreeing to help one another. And then the lawyers ruled the land, along with the police.

Which meant that humans could get back to eating and drinking and not loving the world, which they did, with a vengeance.

Forests disappeared. Coral died and turned into rock. Without trees, rivers dried up. Without coral, the fish and then whales had no food, and they died, too.

Many humans died, but many more kept on eating and killing.

When Bacta appeared for the fourth time, humans trembled before the roaring voice of a billion billion bacteria:

"STILL  you eat too much and
STILL you drink too much and
STILL you love too little and
STILL you build, build, build."

The humans were confused. What else were they supposed to do, with their amazing hands and their amazing minds?

Bacta was not done. "You build so much that there's no room for anything but humans. And then you have more humans.

"Only three times before have I had to take back a gift, but now I have come to take back the fin. I will no longer make sure that humans are born with hands that allow them to build, and in building, destroy. Perhaps that will teach you to fit into the world, instead of fitting the world to your desires."

And so it came to be. From that time forward , human babies were born without hands. In their place were just two stubby fingers, and no wrist.

The humans with ten fingers called these tragic babies Four Fingers.

Ten Fingers helped the Four Fingers. They built special gloves for the two, lonely fingers on each hand, and built special machines to do things for Four Fingers they could not do for themselves.

And then Ten Fingers and Four Fingers got back to eating and drinking up the world.

Aren't humans amazing?

But after a while, all the Ten Fingers died, and then a little while after that, the machines stopped working and the gloves wore out.

Many four-fingered humans died.

The ones that survived worked hard for their food with their four fingers, but didn't eat too much.

They got thirsty from their work, but didn't drink too much.

And the only way they could survive was to work together, so they came to love each other dearly.

But they didn't have hands, and never would, so they didn't build any machines.

Which means they didn't spoil the water.

And they didn't cut down all the trees.

Happily, soon (after just 100 generations of Four Fingers) the water was pure again, and the forests were full of trees again, and new creatures evolved to take the place of all the creatures humans had killed.

And Bacta looked up at its creation, and was, for the first time in a long time, pleased.








Saturday, February 22, 2014

Is Evolution Irrefutable and Compelling?

On my PL/SQL Challenge website, we have a feature called Roundtable, which offers an opportunity to discuss "big picture" questions relevant to Oracle programmers.

The current discussion (well, sharing, really) asks players to share the programming languages with which they work.

In part of my answer, I wrote:

I should learn new stuff...but, heck, I am 55. I have spent a very large percentage of the last 35 years in front of a computer or talking to other people about how to work best in front of a computer.

I'd rather learn other new stuff, so for the past year I have been intensively studying evolution. How truly incredible and amazing! Now there's a "language" that blows my mind: The coding in DNA is mind-boggling. The irrefutable and compelling logic of evolution is astonishing.

If you have not read about evolution lately (and certainly almost anything you learned in school was both superficial and is now out of date), I strongly encourage you to check out:

Your Inner Fish, Neil Shubin
The Beak of the Finch, Jonathan Weiner
The Darwinian Tourist, Christopher Wills
Why Evolution is True, Jerry Coyne


To which one player responded:


 ==> [The irrefutable and compelling logic of evolution is astonishing.] <==
Is religious zeal allowed on this site? If it is, I am very happy to hear. I have tons of it. Irrefutable huh? Huh. Sounds like religious zeal to me. Please let me know!

I responded in part as follows:

The irrefutable and compelling logic of evolution is astonishing to those of us who use and celebrate science to understand the world and live within that world. Evolution is accepted as fact within the scientific community (which is not to say there aren't a few scientists here and there who reject it, I suppose) and is demonstrated in virtually every branch of science active today.

and offered to start a discussion on my personal blog, where it would be more appropriate to delve into our different opinions about evolution.

So here it is!  I look forward to at least a response from Mike to get this going, and I would ask those who submit a post to tell me what books or articles by scientists that document the evolutionary process have you read. I am not asking if you believed any of it, but simply whether (and which) you have exposed yourself to this information.


 

Friday, February 21, 2014

ODTUG is my favorite Oracle User Group!

Each June, ODTUG hold its highly respected and enthusiastically attended Kaleidoscope conference. this year it will take place in Seattle. Lots more details here.

And several years ago, ODTUG added a community service day (CSD) on the Saturday before the conference, to give attendees an opportunity to "do good" while they enjoy the perks of a software conference (they are, after all, very perky!).

Yesterday ODTUG announced their CSD for 2014:

Nature Consortium in Seattle, Washington, strives to combine community, art, and nature. Be a part of this quest by joining ODTUG on Saturday, June 21, for our seventh annual Community Service Day. ODTUGgers will be working to eradicate several invasive plant species in the West Duwamish Greenbelt, one of the crucial wild spaces in Seattle providing a home to much of the wildlife thriving in this tech-savvy city. In keeping with the values of Nature Consortium, Seattle itself, and Kscope14, you will realize the culmination of community, art, and nature as musicians play in the forest while you work to better the environment.









This choice makes me both excited to, for the first time, attend a Kscope CSD and proud to be a member of ODTUG.

I happen to believe that fighting invasives is just about the most important thing and best thing a human can do in this world to compensate for all the awful damage we have caused to our very own beautiful planet/habitat. 

I look forward to joining what I hope is a group of hundreds of fellow-Kscopians to make a big impact in June!

Thanks so much, ODTUG!

Monday, February 17, 2014

Snake handlers and their faith - why not go all the way?

Just reading about another snake-handling pastor who died from a snake bite.

My feeling about these folks is: go for it. If you want to risk death for your beliefs, why not? It's not like there aren't enough people alive in the world to fill in any gaps you leave behind.

The CNN article mentions that people like Jamie Coots takes this passage from the Bible's Gospel of Mark literally:  “And these signs shall follow them that believe; In my name shall they cast out devils; they shall speak with new tongues; They shall take up serpents; and if they drink any deadly thing, it shall not hurt them; they shall lay hands on the sick, and they shall recover.”

Reading that, I just had to wonder: so if you really do take it literally, why do you only handle snakes? It seems like you should also drink bleach before you start your sermon. That is a deadly thing, so "it shall not hurt them," right?

Obviously the answer is: Wrong. It will kill these people each and every time. Without fail.

So why do they handle snakes but not drink bleach or give comfort to humans who are dying from a bacterial infection that cannot be stopped by antibiotics?

It seems pretty clear: snakes won't always bite them, and if they do, the bites are not always deadly. They are ready and willing to take a risk - and if they survive, they can attribute it to their spiritual purity, the hand of god, whatever.

The article also mentions that adherents to this selective faith 'say there are other spiritual reasons to handle serpents. Practitioners often describe it as a mental and emotional rush, as if they were touching the hand of God. "They almost always use drug metaphors, like 'higher than any high you can experience," said  Paul Williamson, a professor of psychology at Henderson State University in Arkansas who studies serpent handlers.'

Right and that, too: it gets them high.

Drinking bleach? I don't think you will get any sort of high from that.

I am agnostic when it comes to matters of religious faith and God. Maybe there's a God, maybe there isn't. So I don't really get religious people. But I do admire and respect people who stick to their faith and practice is without hypocrisy.

"Are you a runner?"

That's a question I get a lot.

I guess that's because I am not overweight and kind of tall....?

I can remember a few times when I really enjoyed running: both times they were more an adventure, in which running was the mode of transport. But generally, I have been bored by running so, no, I am not a runner.

In fact, over the past year, I have completely changed my views on exercise, and running is even less a part of what I do to stay healthy than ever before.

And for some reason I've decided to share my changed views with you. Maybe you will be interested. But at least when I am done, I can say: Good, I don't have to think about writing this anymore.

I'd been a member of Bally Fitness since 1988, when Oracle offered to subsidize membership in a fitness club (said subsidy rescinded two years later!).

But early in 2013 I decided that I had had enough of exercising on machines, inside sterile buildings, in order to stay fit. It's a pretty awful way to compensate for a sedentary life, when you think about. Moving your limbs through a series of limited, repetitive motions, while watching TV or listening to music or who knows what. That's not the same as living in the world, exercising our bodies as we evolved to live and thrive. Not even close.

So I quit Bally (by then acquired by LA Fitness, which promptly shut our closest club after the acquisition. Clever people) and now get my "exercise" by going outside for long walks, very occasionally a run, and most important of all (to me) fighting invasive species (buckthorn in Chicago, kudzu in Puerto Rico).

Cutting down trees, clearing brush, pulling out invasive sapling trees by their roots: great exercise! (so long as I do not injure myself, which I must confess has not been one of my strong points).

But I will admit that is not all I do. I am getting older each day, definitely well into middle aged now, and I am getting creaky. If I do not stretch, I am much more easily injured and I just don't feel good. Flexibility is a wonderful thing!

In addition, I have discovered the joy of a strong abdomen. I have found that as long as my "core" muscles are well maintained, I no longer have problems with lower back pain. In addition, I have noticed that I move around the world with greater confidence and (dare I say it?) grace - because my abdominals can easily support my torso as I move around.

So what does all that mean? That I do a set of abdominal exercises (crunches, situps, various things) each day.And a bunch of different stretches. Oh, and I've found that outdoor work involves lots of bicep activity, but not so much on the triceps. So I do some of that indoors, too (another key objective for me to stay in shape is to be able to play, hold, fly like airplanes, etc. the children dearest to me, and upper body strength is key for this).

Which brings me, really, to the basic point of this post (still with me?): I think that I am a fairly disciplined person, but I could never remember all the different stretches and exercises I want to do each day without a reminder. And I have found that unless I work from a checklist, it is all too easy to say "Aw, I don't feel like doing that one today."

So I put together a very simple grid that lists the things I want to do each day. I don't care about (for the most part) how many I do, just that I do it. And I don't beat myself up if I miss a day or a stretch. There's always tomorrow.





Friday, February 07, 2014

What programming languages do I use?

This month's Roundtable discussion on the PL/SQL Challenge is:

If you are on this website, you almost certainly know PL/SQL and SQL. What other programming languages do you currently use? How do you find they compare to PL/SQL and SQL?

We have been playing quizzes at the PL/SQL Challenge for several years; some of you almost seem like old friends to me by now. It is always interesting to find out more about players. Let's start from the professional side (perhaps the next Roundtable can explore our personal lives. :-) ).


  • What language do you use most of all in your work? Do you consider this your primary language or just the one you have to spend the most time with?
  • What languages do you use now? Preferably this would mean you used the language on a "real" project in 2013.
  • What languages do you plan to learn? Why? Do you need it for your job or do you simply want to expand your horizons?
Here's the answer I posted there today:

What technologies to I use?

I suppose everyone on this site knows the answer to this question:

1. PL/SQL
2. SQL (in a rather ignorant fashion, relative to my level of expertise in PL/SQL)
3. HTML (I know, I know, it's not a programming language, but I can't have just two languages. Too embarrassing)

Years ago, I was a FORTRAN programmer.

I happened to get a part-time programming job in a University of Rochester research lab and lo and behold! Time to learn FORTRAN.

So I did, and used that knowledge to get jobs all the way through 1986. FORTRAN in a bank, Fortran in a pharmaceutical company, FORTRAN in an insurance company.

But, fortunately, as I moved through various FORTRAN jobs, I also started to work with these strange things named databases - on DEC "mainframes" like DEC10s and DEC20s.

Which then allowed me to think I might be able to work for Oracle with their even newer relational databases. That was a pre-sales job (standing up in front of groups of people and showing them how amazing SQL joins were!), but fortunately I arrived just in time to welcome SQL*Forms 3 and PL/SQL. Ah! A nice easy language that even I could "master"! (I only took three programming classes in college, all "101" courses on Algol, Lisp and something else....)

I suppose I should learn some new technologies. Ruby on Rails sounds very cool - the name, I mean. I don't know anything about the language itself. Python? How fun is that?

I should learn new stuff...but, heck, I am 55. I have spent a very large percentage of the last 35 years in front of a computer or talking to other people about how to work best in front of a computer.

I'd rather learn other new stuff, so for the past year I have been intensively studying evolution. How truly incredible and amazing! Now there's a "language" that blows my mind: The coding in DNA is mind-boggling. The irrefutable and compelling logic of evolution is astonishing.

If you have not read about evolution lately (and certainly almost anything you learned in school was both superficial and is now out of date), I strongly encourage you to check out:

Your Inner Fish, Neil Shubin
The Beak of the Finch, Jonathan Weiner
The Darwinian Tourist, Christopher Wills
Why Evolution is True, Jerry Coyne


A Letter from "Oyster Shel"

My father, Sheldon Feuerstein, was a large presence in our lives and the lives of many others. He was a big man, physically (and, sadly, overweight for too many of his later years, which contributed to the diseases that led to his death in 2010), but it was more than that. He was smart and honest and eloquent. He could also be very stern and, before he passed middle age, manifested quite the temper. But he was a deeply compassionate man, especially for members of the family. Many nieces, nephews and cousins remember him with a love and deep fondness that sometimes surprises me.

Who knew that the man who insisted I throw away and redo my math homework because it had an erasure, who sent me up to bed without dinner because I did or wouldn't do [whatever], who demanded that I mow the 2/3 acre of a lawn even though I was wracked by allergies, could be so warmly encouraging and loving to my cousins? Ah, humans - such complicated creatures! :-)

I visited my mom in Florida last week (oh, the green! the sun! the warmth!) and we looked through my dad's stamp collection and many old papers stored in the safety deposit box.

Most of it was the "usual" - birth, death and marriage certificates, honorable discharge papers from the military (Dad was always disappointed that all he did as a soldier was move around to different bases in the US, never fought, served overseas. That's probably why he so looked up to his great Irving Effron, who was a Jewish Marine (quite unusual) and served in the Pacific. Check out this great NY Times letter about him - subscription probably required), and so on.

But then inside a small, old envelope, we found a real gem: a letter Dad had written to his oldest sister, Belle, and her husband, Max, just before he was going to be Bar Mitzvahed:



I especially love the line: "where would you stick Jeffrey?" The idea of "sticking" Jeffrey (another very large human being in multiple senses, and just thirtenn years or so younger than my dad) anywhere is very amusing....

Love you, Dad! Miss you, Dad!




Thursday, January 30, 2014

Favorite stories: how programmers benefited from my book(s)

I received this very pleasant note today from a PL/SQL developer:
Actually, the second edition of PL/SQL programming is what jump started my career as a PL/SQL developer. I was sold to my first Oracle customer as an Oracle developer, while I had actually never written any PL/SQL. So I raced to the biggest bookstore in Rotterdam and guess what I found [Steven: the biggest computer book he ever saw? :-) ]. The sad thing is these kind of books cannot be found in physical book stores anymore.  For years I used to visit Barnes & Nobles in WPB and pick up an Oracle book when on holiday. Every year the computer book section would occupy less space, and would recently only offer books on iPhone programming, Excel for dummies and such. This year I didn't even bother. Even my favorite bookstore of all times, Computer Book Centre in Funan Centre Singapore is now on line only.
Wow, his favorite bookstore is in Singapore. I like that!

I sure enjoyed my time in Singapore, though bookstores didn't figure much into the visits....

I have to say that I've never been overly concerned about how my books might help a corporation improve its bottom line. But I have always felt very satisfied when I hear how my books may have helped an individual's career.

Oh, this Dutch developer also shared with me his orange bookstack: