Wednesday, September 28, 2016

Counting my Zero Days

I have decided to start keeping track of how many Zeroes I am able to accumulate in a day.

My "Zero Day" is not the same as the hacker zero day concept.

Instead, my Zero Day has to do with Reduce, Reuse, Recycle.

There's a lot of talk and action about recycling. Much less on the reduce and reuse side, which is understandable but lamentable.

Understandable: recycle is post-consumptino, reduce and reuse and pre-consumption. The more we reduce consumption, the less people consume = buy, and human economies are structured entirely around perpetual growth.

So corporations are all fine with promoting recycling, not so much reduction.

But I am convinced, and feel it is quite obvious, that the only way out of the terrible mess we are making of our world is for each of us, individually, to reduce our consumption as much as possible.

And you can't reduce lower than zero consumption. So I am going to see how well I can do at achieving some zeroes each day in my life. 

Here's what I am going to track on my Twitter account:
  • Zero use of my car
  • Zero consumption of plastic (plastic bag for groceries, for example)
  • Zero purchasing of processed food
  • Zero purchasing of anything
  • Zero seconds spent watching television
  • Zero drinking of water from plastic bottle (thanks, Rob!)
I am sure I will think of more - and will add to the above list as I do. Do you have other consumptions?

P.S. I am also trying really, really hard to only eat when I am hungry. So far I have lost 5 pounds in the last week. I hope that trend doesn't continue. :-)


Tuesday, September 06, 2016

Blast from the Past: I Don't Like Your Examples!

Originally written in 2000, I thought you might like to check this out in 2016. 

I Don't Like Your Examples!

10/11/2000 

I have been writing books about the Oracle PL/SQL programming language for the last five years. In 1999, O'Reilly published my fourth book, Oracle PL/SQL Programming Guide to Oracle8i Features, which created a bit of an uproar among my readership, caused considerable discussion within O'Reilly, and led to my writing this article.


Why did this book cause a sensation? Consider this excerpt from Chapter 2:
Let's look at a simple example. Suppose you are responsible for building a database to keep track of war criminals for the International Court of Justice. You create a package called wcpkg to keep track of alleged war criminals. One of the programs in the package registers a new criminal. You want that register program to always save its changes, even if the calling program hasn't yet issued a COMMIT. These characters are, after all, fairly slippery and you don't want them to get away. 
The package specification holds no surprises; the transaction type is not evident here:
CREATE PACKAGE wcpkg AS
    ...     PROCEDURE register (
        culprit IN VARCHAR2, event IN VARCHAR2);
END wcpkg;
/
The package body, however, contains that new and wonderful pragma:

CREATE PACKAGE BODY wcpkg AS
    ...
    PROCEDURE register (
        culprit IN VARCHAR2, event IN VARCHAR2)
    IS
        PRAGMA AUTONOMOUS_TRANSACTION;
    BEGIN
        INSERT INTO war_criminal (name, activity)
            VALUES (culprit, event);
        COMMIT;
    END;
END wcpkg;
/
And now when I call wcpkg.register, I am assured that my changes have been duly recorded:

wcpkg.register ('Kissinger', 'Secret Bombing of Cambodia');
Now, I expect it's not every day you pick up a technology text and read that Henry Kissinger is a war criminal for the secret bombing of Cambodia. The examples I used in this book, in fact, were dramatically different from my earlier texts--and from just about any technology book you can buy. Here are some of the other topics I incorporated into my text:
  • Excessive CEO compensation--and excessive, destructive layoffs
  • Union-busting activities
  • Positive role of unions in society
  • Police brutality
  • NATO bombing of civilian targets in Serbia
  • Managed Care
  • National Rifle Association and gun control
  • The for-profit prison industry
  • Slashing social programs to finance tax cuts
I did give my readers ample warning. Here is a section from the preface titled "About the Examples."
"I've been writing intensively about PL/SQL since 1994, and I have a great time doing it. At the same time, I must admit that I have simultaneously grown a little bit bored with using the same set of examples again and again (yes, those infamous emp/employee and dept/department tables), and I'm also very concerned about the state of the world as we approach the end of the twentieth century. Sure, things could be worse, but things could be a whole lot better (with my examples and the world). 
"Given these twin preoccupations, I have decided to offer examples that are decidedly different from the usual. I'll be talking about topics ranging from the state of health care in the United States to the strength of the gun lobby, from wage structures to environmental issues. I believe that even if you don't agree with the positions I have on a particular issue, you will find that this "breath of fresh air" approach will help you engage with the technical material. 
"I would also be very happy to hear from you--whether you agree or disagree!--and I encourage you to visit my Web site, at www.StevenFeuerstein.com, where you can read more about my life and viewpoints and can get in touch."
How Fresh Is That Air?

Though I thought these examples would be a "breath of fresh air," some of my readers felt that the air stank. Here are some typical responses:
Dear Mr. Feuerstein, 
I, thankfully before buying the book, was able to peruse a copy of your latest PL/SQL programming book. I think you have forgotten one basic principle when you planned the examples. This was supposed to be a book about PL/SQL, not blatant sociopolitical rantings. If I had bought the book, I would be returning it immediately for a complete refund. It doesn't matter whether I agreed or disagreed with your views (in some cases I agreed, in some cases I strongly disagreed). I found the examples so distracting that I was unable to get the information I needed out of the book. Please in the future, remember that we, the book buyers, are looking for information about using PL/SQL. I am as tired of the emp and dept tables as you are, but less distracting examples would have been more appropriate. 
Personally, I am no longer buying your books nor am I recommending them to my clients as long as they contain the types of examples you used in your latest books. I cannot, in good conscience, recommend them as PL/SQL manuals because the examples removed the books from that category.
I have to admit, getting emails like these has not been fun. Here's another:
I have just been shown a copy of the Guide to Oracle 8i Features and to be quite honest am embarrassed on behalf of the O'Reilly publishing company. It is well-known throughout the industry that O'Reilly books are said to be the bibles for technical reference. I am appalled at the liberty that Feuerstein has taken in imposing his personal beliefs throughout the text and examples and am even more appalled that O'Reilly allowed this kind of content to be published. It is highly offensive regardless of freedom of speech and Mr. Feuerstein's belief system and to choose such an unwilling audience is absurd! I will not buy this book and will tell each and every person I know in the industry to do the same. I will as well be cautious when purchasing and or recommending any other O'Reilly technical reference books. This is not the forum for this kind of content!
You get the idea. Now, I should also mention that:
  • I have received at least an equal amount of emails praising this particular book, sometimes for the political content explicitly, sometimes simply for the technical content, indicating that my choice of examples was not problematic.
  • O'Reilly & Associates reviewed the book's content and its lawyers did recommend making a few changes. (They didn't, for example, want me to explicitly and blatantly accuse a sitting governor of bribery.)
  • This book became a subject of active debate among O'Reilly editors about what limits, if any, should be placed on an author's desire to include possibly controversial examples.
  • Tim O'Reilly and I talked about this subject at length and he thought that it would make a great topic for public discussion. So here I am!
All the negative--in some cases strongly negative--feedback I got sent me back to the book to examine the content and ask myself some questions: Was I wrong to include this content? Why is it so difficult for people, especially those in the United States, to hear viewpoints that make them uncomfortable? Would I be willing to put these kinds of examples in my "bestseller," the foundation of my series, Oracle PL/SQL Programming, and take a chance at putting off readers? 

Were my examples full of opinions or facts? Can I really separate the two? And what about the examples in all those other books (mine and the several hundred other Oracle books, and thousands of other technical books)? Are they all free of political content?

Democracy and Political Discourse

As I work on this article, I am flying back from a week's teaching in the United Kingdom. As is usual when I spend time outside the United States, and particularly in the U.K. (where I can understand the language), I am struck by the open political discourse--and open challenge--in the media and among individuals.


It seems to me that one part of having a true and vibrant democracy is the free flow of ideas and active debate among neighbors on the crucial issues of our day. Does that go on around you? I sure don't experience it in my neck of the woods. On the contrary, I find that, in the United States, very few people are willing to talk "politics." It is, along with the topic of money and sex, generally veered away from in trepidation. Better to comment on the weather and sports.
Where would such an attitude come from? Much of any individual's behavior in society is patterned after what she or he perceives to be acceptable. Most of us do not want to stand out as different, and certainly not as "troublemakers." What determines acceptability in our society? To a large extent, the mass media.

Reflect on the television, radio, and print media reports you receive: How often do you see real political debate, crossing the entire spectrum, taking place? How often do you hear a member of the media truly challenge politicians and business "leaders" to justify their policies and actions? I believe that very little real debate ever takes place and our journalists, especially the high-profile ones, treat those in power with kid gloves. Sometimes it seems like there is a debate going on (within a T.V. program like "Crossfire," for example), but in fact that debate is missing/ignoring/silencing a large swath of viewpoints: pretty much anything to the left of Bill Clinton.

As a result, it is very difficult to talk politics in our society--especially if your politics are anywhere to the left of center. And it is almost impossible to present an informed, sophisticated critique of the role of global capitalism in the world today.

Now, you might well say to yourself, "Who cares?" You like global capitalism. You don't think it's all that bad, or at least you don't care if a few hundred million people are paid pennies for their labor. And, well, you don't want to talk politics. That's fine. That's your choice. But I also believe that almost every technology book we buy and read is full of politics.

The Hidden and Prevailing Ideology

I believe that just about every technical book comes with a body of politics, an ideology that governs and usually restricts its example set. We don't notice the political slant because it reflects the dominant viewpoint in our society and is thus invisible.


After reviewing many books, I feel comfortable in summarizing the vast majority of texts as having these characteristics:
  • Business-centric: Most examples used in technology books focus on how to make business work more efficiently, regardless of its impact on human society and the world as a whole. As a result, we constantly read about human-resource or personnel systems. And while examples frequently touch on education, these applications have more to do with managing students (the business side of education) than with improving the quality of education those students receive. All of this seems perfectly "natural" since the vast majority of technology is used by businesses to make profits. But does it have to be that way?
  • Consumer-oriented: Many, many examples promote the perspective that the only reason we exist in this world is to buy things. Just about every book about the Internet focuses on some aspect of e-commerce, such as how to maximize the use of banner ads, how to grab and hold eyeballs, how to present product information dynamically.In 1999 Addison-Wesley published a truly marvelous book titled Refactoring: Improving the Design of Existing Code, by Martin Fowler. In it, Martin offers a systematic method for improving the quality of our code without affecting the interface to and behavior of that code. To demonstrate his techniques, the author offers a refreshing example: video rentals. Yet it still comes down to commerce. We are what we buy, not what we think and do with our lives outside of the exchange of items for money.

  • Humans as numbered entities: This is particularly true in database-related books (including my own!). Technology is presented through a medium of scenarios that represent--and manipulate--humans as numbers. Just about any Oracle text you pick up is dominated by "emp-dept" examples: a personnel application that talks about salaries, bonuses, and commissions, when you were hired, which department you belong to, the name of an employee based on an employee_id, and so on. The message, so clearly presented in this dominant theme, is that we are defined primarily as workers and our value in life is derived from the contribution we make to our employer.
  • Everything and anything as numbered entities: Hey, it's not just people! Technical examples extend the quantification approach to natural resources, information, entertainment, etc. Oracle also offers a standard demonstration base of tables and data for a sales/order entry system. This, of course, makes perfect sense in the world of Oracle--driven by the obsessive personality of Larry Ellison to sell, sell, sell software and services. (I own shares of Oracle stock and have benefitted directly from Larry's obsessions.)
There are exceptions. Scott Urman's latest book on PL/SQL, Oracle8i Advanced PL/SQL Programming, uses a college registration system as his example base. Although many American colleges are overly focused on preparing young people for a life of drudgery in one job or another (and corporations are commercializing higher education to an alarming degree), I congratulate Scott on taking a road less traveled.

Breathing Life Into Technical Books

I could go on and on, but I think you get the drift. The bottom line for me is that books written about technology are written by human beings with perspectives and beliefs. Some of us center our lives around a particular technology or around the business applications of that technology. Many of us see the technology as one part of a rich, complex way of life--and dream of ways that this technology can transform and improve human society and our planet.

I don't see what any of us gain - writers and readers alike - from the unwritten but nonetheless rigorously followed rules that technical books must conform to and further support the status quo in our society.

No More Aquariums or Zoos For Me

I just finished reading Carl Safina's Beyond Words. It is the latest of a number of books (another great one is Out on a Limb by Ben Kilham) I have read that make it clear beyond any reasonable doubt that the individuals of many, many other species, including bears, octopuses, gorillas, chimpanzees, bonobos, crows, are turtles are self-aware; feel pain, sadness, joy; fear death; play; have individual personalities; work with tools; on and on and on.

In other words, they are no different from us. Except that their bodies have adapted to different circumstances, resulting in different body plans, different capabilities, different ways of manifesting their thoughts.


Yet we enslave them, control their reproduction, abuse and torture them, outright kill them en masse.

It is impossible to live in "civilization" without being at least complicit with much of this destruction (just imagine for a moment the thousands of factories that are needed to put a cell phone in your hands). 

It is, therefore, impossible not to sound like a hypocrite when expressing such thoughts.

Well, fine. Being a hypocrite is better than being an "all-in" abuser. 

And while I am not yet at the point in my life at which I can say goodbye to cars and cell phones, there are things I can do to minimize my hypocrisy and avoid overt support to human devastation of others.

Which brings me to zoos and aquariums. 

I can't do it anymore. I can't wander around exhibits, whether indoors or out, whether spacious or cramped, whether "humane" or neglectful, that restrain animals that should be living free. The justifications for these exhibits fall flat, sound weak and defensive. 

And if you do find any of them even slightly persuasive, simply substitute "Ota Benga" for "elelphant" or "stingray" and see how it "reads."

I do not look forward to the next time my family - my granddaughters! - wants to go to the aquarium or zoo, and I have to say "No thanks, you go without me."

But that's what I will be doing.