Thursday, November 05, 2009

Working for a living

I do work for a living. But ever since my college days, I have felt that I should be working in a small company environment.

I have worked for the government (my Dad was a government engineer for NASA, helped develop liquid fuel rockets, proved the technology for tethered space flight prior to docking, analyzed flight schedules for the proposed Space Shuttles) but I was just a summer student for 5 years at the National Bureau of Standard in the Computer Networking section. That environment did not seem quite right.

I worked for a wholly owned subsidiary of the university (CWRU) that was later sold to a private owner. Now this might have been a mistake to continue working there because he was a very bad person to work for, he did not believe in growing his company, only taking the profits out for his own use. Indeed, several different groups of that original company, Chi Corporation, did leave and reform their own small companies -- some still in existence.

My attraction to staying there was that the people I worked with needed and appreciated me and what I did. I was invited by a former colleague to come work for him at GE in Nela Park (before the days of Welch the Great) but I did not feel that I would have been appreciated or really helpful there.

Much later I was invited by yet another colleague to come and help in a startup, Noteworthy Medical Systems, this I jumped at. Though the expectations there were perhaps normal for a startup of the late '90s, they were still unrealistic. I felt that I contributed, and surely I did (though perhaps not so much in new K LOC, but more in designed, reviewed, extended, and polished code.) We were unfortunate enough to start this project just about one year too early in the life of Java, and about two years too late in the life of the 'bubble'. Also our efforts were doomed by the original assertion that this product would be sold into the small and medium market, but was only actively demoed to large hospital settings -- go figure, the owners were shooting themselves in the feet [my opinion].

I was (and others were too) let go when a new round of funding demanded a restructuring of the ownership profile. So I began recirculating among my old colleagues asking them what they were up to and sharing my recent stories. One of them had started a new business doing some of what we had been into before (laser printing) and after a month or so discovered that they would be interested in bringing me on. I've been helping out there since as a lone developer. The company's service is oriented around taking in client information, preparing it, printing it, and delivering it, they are very much a job-shop. I am not involved in this day to day work but rather more in the background: doing framework and tool development and maintenance.

I took their templated code base and turned it into a framework based infrastructure. Now when a new job is opened, a whole new sandbox is created and the framework automatically installed. It provides substantial capabilities that are immediately available as a new website and enables the creation of standardized, custom applications as needed for particular jobs.

In other areas such as composition, there are times when a catalog is composed with LaTeX. The catalog will be in a two column format and its design requires running column top text, the analog of running heads on pages. LaTex has the latter, but not the former. So it fell to me to delve into the LaTeX macros and extend them to provide column tops.

In areas such as election ballot processing I have been called upon to process the canonical PostScript from PDF images of ballots and determine the races, their alternatives (candidates or choices) and the positions of the associated ovals. This was accomplished in Perl. Perl was likewise used to process OOXML and ODF files and convert them directly to LaTeX markup.

These kinds of things have a direct impact on the lives of those I work with. It enables them to perform their parts of the jobs easier. Indeed, to succeed where otherwise that might have been precluded.

Baha'u'llah wrote that each one of us should occupy ourselves with what will profit us and others. This is what I have felt drawn too.

Friday, August 14, 2009

I hate change!

Unless, it is my idea!

If it is someone else's idea and it's been around for awhile, I might be able to consider it and adopt it as my own.

That's why I hated the idea of going to school until I had enough time considering how my older sister and brother did with it to decide that it was OK for me too.

That's why so many people are outraged with proposed Healthcare reform until they take the time to learn what might happen.

That's why I was skeptical about the idea that God had sent a new messenger for this day until I had about a year to study the Baha'i Faith and learn who Baha'u'llah was and consider for myself if I believed that He was who He said.

I cut myself off if I am unwilling to consider and learn about new ideas, no matter the source. If I cut myself off I am apt to become afraid, afraid of these new ideas, the loss of my old ideas, and the loss of familiar ways.

Loss creates an occasion of grief, which has five steps. Baha'u'llah wrote of journeys that traversed seven valleys or four valleys. Grief is like those journeys, you can get caught in one of the stages or move slowly through them one by one or cross them all in the blink of an eye.

Today, some have created great fear amongst the people. These people have passed through Denial and arrived at Anger. Anger is where they are residing. Why? Perhaps they refused to consider the new ideas and are caught clinging to the old ideas that are being swept away with the crumbling of the old world order. Angry people do things and say things that they later regret. But they do not stop the change.

Angry people do not stop to ask, "where are we going." Yet that is a very important question. The answer lies in the writings of Baha'u'llah, 'Abdul-Baha, Shoghi Effendi, and The Universal House of Justice. A study of this material is a journey, with many stages. Each person experiences the journey their own way. But it is the process of independent investigation of truth that keeps the journey safe, safe for the world.

Tuesday, August 11, 2009

The Change is Coming.

And it is the change that we all have been waiting for, some of us even praying for. But it might not happen this year or next. You see, we are in the middle of it and it will just take awhile to complete.

People from all walks of life have begun to realize the kinds of things that are happening. Followers of the Baha'i Faith have a leg-up, but that's no protection from the winds of change -- they blow on all alike.

David C. Korten is an author from north-west American conservative roots who has woken up. His book The Great Turning, building on his previous titles, When Corporations Rule the World, and The Post-Corporate World, goes into great detail to describe, from human the side, the growth and maturation of mankind. It is important information to understand as it is an analog to the teachings of the Baha'i Faith.

Baha'u'llah, whose Revelation poured forth from 1852 to 1892, revealed spiritual truths and the implications for the material world. Government must treat its citizens as a trust from God. The equality of men and women, the balance of the masculine and the feminine qualities of character. How the world order will be funded through the Right of God. The need for world peace. And on and on.

Korten has reviewed the history of mankind and now, over 100 years later, in the voice of one man among many, recognizes and expounds many of these principles. Though he does not mention if he has ever met Baha'is or heard the message of Baha'u'llah during the times he lived in the third world, he is an example of the power of the Revelation of Baha'u'llah.

Baha'is understand that the world will turn. And here we can read from a well versed, human observer that the signs are evident.

Thursday, March 05, 2009

What we need is more Insurance.

Especially during this economically troubled time, we need Food Insurance.

It works like this. For $X per month you will be able to go to the grocery store and buy the food you want, but instead of purchasing the food, all you will have to do is show your insurance card. Then at the end of the month the insurance company will send you a statement showing how much you really own the grocery store.

Of course you will be able to purchase higher or lower deductibles and different levels of co-pays and out-of-pocket maximums. And then at the end of each year, the insurance company will tell you how much it will cost to participate in the plan for the next year. Why these plans might even become part of expected employer paid perks.

Now it will never do to have the consumer deal directly with the farmer, nay not even with the grocery chains. No more than for people to deal directly with doctors or their practice groups. There must be a new layer. Now this layer will add to the GDP, it will make money -- certainly it must be paid for all the grocery purchases that it reconciles. And it will provide many new jobs for clerks and managers and executives and boards of directors. These companies will go public and sell stock for our retirement plans. They will be able to stand up to the larger chains, forcing them to provide cheaper products.

When christenings, weddings, wakes arrive and we are not in a position to afford them at the moment, we will have our food insurance to depend on. Oh, I feel better already. How about it?

Thursday, January 22, 2009

Spam, Ham, PHP, and Bayesian filtering

Most of the time I just want to google a package concept, find it and employ it.

When I had a task of analyzing free form text answers into a set of categories, I first remembered a project to do just that written 30 years ago using Snobol 4. Well this time, I've got the whole web, PHP and MySQL. Then I though of bayesian filters (as used in spam filters.)

Google showed me a simple implementation in PHP and starting from there... Well really, I didn't want a spam filter (that would be a filter whose object was to identify stuff that you don't want) rather I wanted ham filters to identify what I did want (slightly semantic, but with all the identifiers giving the wrong voice in the program, it became intolerable. I also wanted a gang of filters that operated in sync with each other.

The categories for the answers might be: Positive, Suggestion, Negative, Neutral, and Other (spam?). So I created a code (small integer) for each category and augmented the database tables to include this code. Now when you decide that an answer is Positive, you also decide that the answer is NOT any of the others. The operations of learning and unlearning (when you change a code) cycle through all the codes and insert the new answer as Ham or as Not Ham.

Consulting the filters to determine the coding for a new answer amounts to evaluating all the filters and taking the largest rating -- unless none of them produces a significant answer, then I initially assign it to the last code. The web page allows users (marketers, they probably are) to view all answers in a given code (plus all the unverified codes) and see if any are miscoded and if so, change them.

Do you need this too? Give me a shout.

Friday, January 09, 2009

Target Advertising

Advertising in closed groups is difficult because the group is closed, no one wants spam, and because often advertising equals spam, no one wants advertising. Yet everyone also wants to know, when they want to know.

In this respect a portal is often the best choice, a single place where members of the group can go to find advertising. Well isn't that just like the yellow pages books? Pretty much, except that access is limited by paying for the advertising. This paying question is one of the issues that the open community Craigslist.com deals with.

In order to provide a portal for the small group, that is free, I have created the experimental site http://BuyFromBahais.com. It serves a place where other Baha'i businesses and artisans may post ads about themselves with links to their own sites. It is searchable and able to serve, like the yellow pages, as the place to start looking for products or services that are provided by Baha'is.

Interesting challenges always occur in public facing web sites. Spammers, both human and computer, arrive to see what fun they can have at your expense. Therefore it must be made difficult for this to happen and there must be a remedy when it does. The ability for the community to flag offending ads allows many eyes to participate in the monitoring of the web site.

Users may upload an image along with each ad they post. In addition, each user may upload a banner ad, that will be displayed on the top of the web site from time to time.

Initial users are being invited to post ads by virtue of other announcements that they have made. Thus testing will proceed with motivated users.