A Dose of Reality – Mentoring for ACM

Tue, 03-Oct-2017

This morning I had the opportunity to spend an hour at the Sacramento New Technology High School, speaking with the young students working on their presentations for a robotics and programming project. First of all, let me say I was very grateful for the chance to pay back into the public school system. Second, this is a very cool project and an awesome opportunity for these kids to learn a little C and build Lego Mindstorms robots! Finally, while I was there, I also got to experience first-hand how difficult it can be for some children to take advantage of these opportunities. More on this last point later.

I am a card-carrying nerd. If you look in my wallet, you’ll find my membership card for the Association for Computing Machinery (ACM), which I proudly and affectionately tell my friends and co-workers is the largest social organization for computing professionals in the world. Admittedly, that may be an exaggeration, but I dare you to prove me wrong. The Sacramento ACM Chapter has identified mentoring high school students one of its top priority, and I am proud to be both a member of this chapter as well as one of the lucky volunteer mentors.

In addition to being a card-carrying nerd, I am also a California State employee working on the modernization of the State’s Child Welfare case management system. At CWDS, we don’t work directly with the children, but we work with, and support those who do. Case workers have a very difficult job, and I hear the burnout rate for the typical State social worker is only 12 months. It cannot be easy to experience the very worst that life can throw at a child (over and over), and it is my daily hope that my skills, knowledge, and experience can be put to good use making their work lives easier, resulting in better outcomes for at-risk children.

I have my own children, and hope, as a parent, that they are treated with as much love and respect out in the world as we try to give them at home. I admire and appreciate the work done by our teachers, and want to do what I can to enhance the learning experience and enrich their education where possible. I know technology, and I’m excited about its many different potentials to improve the quality of life for the public and provide a stable career for its professionals. Perhaps, sharing my passion for technology with young people will encourage them to take it up and use it as a means to write their own stories, rather than be subject to the uncertain tides of fortune.

Call me an idealist….


I want to build a better world for my children, as well as those of my community, which is why I volunteer, and why I joined ACM. The ACM Code of Ethics and Professional Conduct has been a light that I have tried to steer by for nearly twenty years. Having the chance to mentor young people allows me to put my values directly into practice.

You may call me a dreamer, but I’m not the only one.
I hope some day you’ll join us, and the world will be as one.
John Lennon

Finally, and without going into too much detail, I met a young man today who I’ll call William (not his real name). William is working on an ambitious project. He was a little shy, and withdrawn, but on speaking with him I sensed a spark of intelligence. I was very impressed by what he was building, and I did my best to get him to talk about his project. He seemed unsure how to proceed with his slide presentation; we spoke for a few minutes, but I could tell his heart wasn’t in the conversation. As soon as I moved to the next team, William laid his head down on his desk and withdrew from the classroom.

William’s story is one he will have to share himself, but he is one of our children at society’s edge. He needs extra support, and I hope to have the chance to return and spend more time with him. With some positive energy, and community support, he may be one of our next technology leaders. “Society” is doing it’s best for William, and I hope that is enough. I suspect, however, it will take more than a great school, and a caring teacher… it will take a village, made up of you and me.

Please take a minute to explore ways to volunteer in your community, and if you have space in your home and your heart, please look into being a foster parent. There are a lot of children who need a good family home, but many of them are stuck in group homes or other bad situations. I will continue to volunteer my time to mentor children, and hope that I have the chance to help our children on the edge.

Be involved. Care. Take Action.


Webinar: Leveraging Data Governance to Align and Operationalize Business Policies

Thu, 21-Jan-2016

Help yourself to a free webinar on Data Governance from The Data Warehousing Institute (free registration required).

There is growing awareness that for practitioners to effectively manage data as an asset to the business, that data must not be simply collected and moved between systems, but must be validated to ensure the level of trust that the data is fit for its various downstream purposes. This demands conformance to business rules that accurately reflect meeting the needs of defined business policies. Understanding business policies, transforming them into data rules, and implementing those rules is the process of data governance. Organizations whose understanding enables their ability to effectively govern their data are gaining business advantage as they leverage data quality, metadata, and data governance tools to translate business policies into consistent, useful data.

Source: Leveraging Data Governance to Align and Operationalize Business Policies

Enterprise Integration: Behind the Scenes Integration with Rational Team Concert (RTC)

Mon, 14-Dec-2015

The last few weeks have been one of those periods where I went heads down to breakdown barriers between systems. This time, it is HP’s Application Lifecycle Management (easy) and IBM’s Rational Team Concert (hard!).

ALM has a decent ad hoc query tool built into its Web interface. It is totally dependent on Internet Explorer, but it gets the job done. The good news is the reporting tool allows you to write any SQL you want, and the tables and relationships are helpfully and thoroughly documented.

RTC is a system of a different colour. Let’s start with the XML that is stored as a compressed, binary stream in BLOB columns. It gets more complex from there. RTC has a built-in data warehouse export capability, but it is only snapped every two weeks at my site, and not completely at that. 

I have zero control over either system, but have the ability to query all of the data. That’s a decent place to start, but it just scratches the surface.

Tonight I finally closed the loop on a few major obstacles (enumerations!) and tomorrow I can start providing reports out of ALM that unify the ALM test data with the RTC project data. It’s been a tough slog, but when I compare the few weeks I’ve spent getting this ready to the enormous amount of time people have spent manually extracting and combining data from both of these systems, it is totally worth it.

Building solutions is nice, but building capabilities is even nicer. Making the complex simple is the real trick. I don’t want to build something that I have to keep supporting; all that remains are a few more database objects and then some documentation. After that, I can turn it over to the client to explore and build upon.

Photo Gallery: Annual Pilgramage to Oracle OpenWorld

Mon, 26-Oct-2015

If you’ve been to Oracle OpenWorld, you know there are really only two ways to attend: Full Conference and Discovery. The first gets you into the learning sessions and the second gets you into the exhibition halls.

Having done both, I can tell you either one will stuff your head for at least one day. The Full Conference will stuff it for at least four, and possibly five days. This is work.


Software Development Jobs – Broken Pipeline of Future Talent

Thu, 05-Feb-2015

I have been observing two trends in the tech industry for some time:

1. Outsourcing of so-called “low value” positions has eliminated entry-level positions that used to be a staging ground for future software developers.
2. The heavy use of “contractors” in the industry has created a situation where employers invest much less in skill development, if they spend anything at all.

These two forces combine to create a situation where demand remains strong for software developers and administrators (tech workers), but a huge barrier to entry has been created. Software Development is both a science and a craft, and while learning the science is relatively easy and can be picked up from a class or a book, the craft takes time to develop in a person. This time is an investment that used to mean you were hired to work on maintenance projects, which taught you about the business, the software, and exposed you to the code developed by senior developers.

In today’s paradigm, many large employers have outsourced their maintenance work to a tech services company, and divorced their software development from their business. Even if they have not outsourced their work, they are not hiring permanent employees. I don’t have any specific numbers, but from what I’ve seen at least 50% of tech employees are working as “contractors”, which is the tech industry’s version of a “temp” worker. Employers typically do not provide training or education to contractors because there is no incentive to, and contractor’s have no incentive to stick around after receiving expensive training or gaining experience working with a hot technology.

This trend has resulted in a situation that is good for experienced tech workers (programmers, architects, project managers) because they are able to find work fairly quickly, but also bad because they have no job security and benefits vary widely depending on the company they are working through to get the contract. Employers benefit because they can grow and shrink their workforce quickly without having to report layoffs. On paper this looks good to investors and shareholders, but there is a hidden cost that nobody is speaking about… the Leadership Pipeline.

In the old paradigm of tech worker employees, some employees eventually become senior developers. Some of these senior developers became architects or business analysts, and some of these tech leaders eventually became business leaders, who had a deep understanding of how technology supports their business. Many of these “old paradigm” tech leaders still exist within companies, but they are getting old fast and many have already retired.

In the new paradigm of tech worker contractors, individuals have no allegiance to an employer. They have a perverse incentive to only do exactly what they are asked to do, without an incentive to make sure what they are doing is good for the employer in the long term. Moreover, there is no incentive to succeed or complete a project because that often means the end of their contract. Under this paradigm, leaders who understand business and technology are increasingly rare and in most cases they must be hired from outside the company. Outside hires must spend time to create networks within the company, which old paradigm tech workers would already have.

This brings me back to my response to this article from Tech Republic. It is hard to get started in the tech industry largely because companies are only “hiring” contractors, who must already have experience in a given technology. How do you get the experience you need in a system that has broken the pipeline that trains future tech workers? How does a company develop its future tech leaders? When did loyalty and commitment become so devalued?

Apple Swift – New Programming Language

Mon, 02-Jun-2014

Wow! Watching the WWDC 2014 keynote demo of Apple’s new Swift programming language. This looks like a total candy language, meaning that writing code and developing apps for OS X and iOS is going to get as easy as writing VB was for Windows.

I wonder how it will tie in to enterprise data sources (i.e. Oracle Call Interface, ODBC, etc) and data visualisation.

I can’t wait to get my hands on the new OSX and XCode to start playing with this. Nice job Apple!

DRM Failure — This is Why We Can’t Have Nice Things

Thu, 15-May-2014

The past 12 hours have been very enlightening (and frustrating) as we see the limits of DRM technology demonstrated all too well. It seems that the Adobe Digital Rights Management (DRM) servers are down or have some issue that prevents their own tool, Adobe Digital Editions, from being able to sign in.

The result has been frustrating, and I am simply unable to read any of my DRM-locked books on my computer. Basically, the books that I’ve paid for are locked and I cannot open them (on my computer). I cannot think of a better argument against DRM except Sony’s one-device movie lock-down for movies bought from their PS3 store, but that’s another post entirely.

Update, 12:20 PDT: Adobe has confirmed there is a sign-in outage via the @AdobeCares twitter account:

@AdobeCares Twitter Account Admits Sign-in Outage

Well this is embarrassing!

The message seems to indicate that this outage affects users of Adobe’s Creative Suite as well as those unlucky DRM users like your favourite author of tales of woe impacting technology consumers.


Adobe DRM Web Site Error Message

Adobe DRM Web Site Error Message

Adobe Digital Editions DRM Error Dialogue

Adobe Digital Editions DRM Error Dialogue

%d bloggers like this: