Monday, November 26, 2007

MySQL skeleton political database installed


Today I placed a facility on my experimental site billboushka.com to look at entries in my "Political Knowledge" database. This is on a shared web hosting site on a Unix platform with MySQL.

Right now, it is very rudimentary with only a few records. The link to the facility and instructions are here. The login ID supplied allows SELECT only. Note that the bookmark facility does not yet work. That require certain tables in phpmyadmin.pma_bookmark and I am trying to find an easy way to create them.

Some typical queries are

SELECT `argtb` . * FROM argtb LIMIT 0, 30 ;

SELECT `incident` . * FROM incident LIMIT 0, 30 ;

SELECT `argtb` . `srcecode` , `argtb` . `stateargument` , `incident` . `srcecode` FROM argtb , incident WHERE `argtb` . `srcecode` = `incident` . `srcecode` ORDER BY `argtb` . `srcecode` ASC , `argtb` . `stateargument` ASC , `incident` . `srcecode` ASC LIMIT 0, 30 ;

At one time, I had a service on another ISP that offered java, but it became unreliable. The java you could code a .jsp element like this:

It looked like this:

response.setContentType("text/html");

Class.forName("org.gjt.mm.mysql.Driver");

Connection con = DriverManager.getConnection("jdbc:mysql://mysql.xxxxxx.com/topics", "jboushka", "xxxxx");


Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery("SELECT topic.topicdesc, topic.argcd, topic.polcode, topic.polkind, topic.actdate, topic.actionds, argument.argtext FROM topic, argument where topic.argcd = argument.argcd");


while(rs.next()) {
out.print("");
out.println("" + rs.getString("topicdesc") + "" + "" + rs.getString("argcd")+ "" + "" + rs.getString("polcode") + "" + "" + rs.getString("polkind") + " " + "" + rs.getString("actdate") + "" + "" + rs.getString("actionds") + "" + "" + rs.getString("argtext") + "");
out.print("");
}


I've considered doing this with Visual Studio .NET and C#, but I would have to purchase Microsoft Professional Edition of Visual Studio (as discussed on this blog in August).

Tuesday, November 13, 2007

Do elections provide I.T. work?


This year, for the off-season 2007 election in norther Virginia (all races were local or state) I signed up for poll work as "tech." That means I would be the person to deal with the WinVote machines (from Advanced Voting Solutions) if any machine failed.

There was an additional 90 minute training session, that was mostly talk. The components of the processing have to do with the mechanics of voting, the various location and machine close and open reports printed on a cash-register like paper tape, the "USB" which is really a memory stick, the reboot procedures, and the physical setup, which has to do with standing them on pegs and properly connecting them. This is more of a mechanical and a programming job.

There was only one failure, late in the afternoon. Failures occur when a machine is not activated by a smart card or a vote won't register. They seem to happen if too much pressure was placed on the screen or if there are power supply stability problems in the building (despite the batteries). The instructions document the reboot procedures, which are similar to restarting a laptop from sleep -- but they took longer than documented, and the instructions didn't list all the steps. The machines do not lose any record of votes when they hang, and they produce an awake report.

Nevertheless, the possibility that this can happen argues for the idea that a detailed paper record ought to be kept of the individual votes.

It's hard to be really effective in this kind of work when one does it so infrequently. One needs to work steadily on some sort of contract with a county or city in order to be effective and dependable. As I documented on the Issues Blog last week, the day is very long.

Some media companies have election units in information technology and these units provide employment only during election seasons. That's kind of like a tax company providing employment only during the tax season. This was the case when I worked for NBC in the 1970s (although I was permanent and did not work for that unit).

Friday, November 09, 2007

Some fun with an imaginary universe (OOP classes and methods)


A novel manuscript that I am working on (called "Brothers Simple") imagines a scenario where people find out who the gods and angels really are. They map to Biblical concepts in a way (in a New Age sense) and the various entities could be described as classes of objects with associated behaviors or methods, that combine or detach the entities in various ways. Any language like java, C#, or C++ could work.

I suppose this could evolve into some kind of online universe (not exactly "Second Life").

Have fun.

Classes:
Soul
Person
OrdinaryPerson
Angel
FullMemoryTrace
Merit


Methods:

Group
AddSoul

Soul: (vehicle though which you are aware of yourself crosses dreams – a bundle of consciousness)
AddPerson
ShaveBackPerson
ExtinguishSoul
ViewPerson (//always from a distance)
HoldSoul (suspend for reawakening)
ModifyKarma
Death: ShaveBackPerson for all Person objects in Soul
Death: JoinGroup

Person: (vehicle for your waking identity)
ShaveBackPersonalHold (//reject temptation)
Extinguish (//death)
Increment (//change appearance)
InsertintoSoul (//reincarnation)
UpwardAffiliate (//with angel)
Add PartFrom Soul (//experience memory of another as if one’s own)
RemovePartToSoul (//like forgetting a dream)
Classify (//angel – class 1 ordinary second class brownie third class -- the “brownies and elves problem”)
ModifyMerit

Angel extends Person
Preserve (//protect from Death methods)
Trump (//take over older angelic identity)
Capture (//ordinary person to be affiliated)
Hibernate (//when taken over)
RecallAndExpellAllPreviousParts (//relive each life and expel permanently)
JumpOnDoubles (//speed > c (boardgame dice roll))
RefuseDreamAsUnopened

OrdinaryPerson extends Person
LinkToNewSoul (amnesia syndrome)

Wednesday, November 07, 2007

Hourly v. salared exempt


My entire career in information technology, I was salaried and exempt. The colloquial definition is “you don’t punch a time clock” but the real meaning is you work the hours until the job is done, and you provide on-call support on your own time. In some installations, management uses log on time onto a computer network (and logoff time) as official arrival at and departure from work. The comfy buzzword back in the 70s was “salaried professional.”

Most W-2 contracts are “hourly.” The client pays the personnel staffing company for billable hours, and all time is supposed to be compensated. Clients may reasonably expect billed hours to be productively spent. Overtime in W-2 contracts is usually “straight time” although sometimes it is more. However, in some arrangements, contractors are paid only for forty hour weeks as if they were salaried that is always the case with corp-to-corp.

Saturday, November 03, 2007

The schizophrenic job market -- it's partly up to employers to say what they want


Having “retired” at the end of 2001, played around with interim jobs and a lot of writing, I’ve received a lot of calls from headhunters. From the end of 2006 through the spring of 2007 they seemed heavier, and then they seemed to drop off. As I indicated in the last posting, one issue that came up, especially with someone out of the market for a while, is that they prefer a reverse chronological resume, rather than a functional one (or “functionable” one), which they see as hiding things (or at least clients see it that way).

Most staffing companies offer W-2 and corp-to-corp arrangements, and expect the employee to pay his own way in a temporary relocation within the hourly rate (it must be 364 days a year or less to meet IRS requirements, I am told). A few offer tax-free per diem.

In this era of “reputation management” staffing companies are likely to become more concerned about an online presence, as well as resume, that represents some specific area of technical expertise (MMIS, state welfare applications, Case tools, DB2, IMS, Oracle, MQ series, all kinds of things even in the “just mainframe” areas). For one thing, I wouldn't want to invest in the background that would justify a "professional social networking" profile that presented me as the god of DB2 tablespace design if that kind of work was going to be jerked overseas at corporate whims.

But, of course, it was the short-term behavior of the employment market that started in the late 80s with the hostile takeovers and leveraged buyouts, continued in the 90s (where many people in the job market had substandard experience with older technology that would die with mergers – and many of these people were “bailed out” by the Y2K crunch, even if they missed out on the “war for talent” in the dot com craze), took the 9/11 hit in 2001 and continued. The market, after Y2K, fragmented into many small niches, and it was not easy for professionals to predict what would remain viable. I can look back to 1991, when I may have had a change to get into Vantage (the mainframe life insurance and annuities platform, with all of its link deck idiosyncrasies that help Vantage “rule the world”) but was stuck in slow motion in another homemade system that had to be babysat, and trying to get VLN (which went under) going.

The market for various skill sets would wax and wane, somewhat depending on whether the job could be offshored and performed more efficiency overseas (India) – then sometimes the savings did not come about and the domestic demand would come back. (A lot of this started in the late 90s as companies had to offshore some of the Y2K coding changes – there simply wasn’t the manpower available in the states to do it all in the last 24 months or so; then after 2000, why not continue? I can remember one programmer saying in 1996, “we are all set until the year 2000.” Indeed.)

Conventional wisdom was to become flexible, move around, not get too attached to any one skill set. But then, as the new century developed, one didn’t have the job-ready specific knowledge that was needed. After 2000 passed, some people, like me, fell for the shallow “jump to client-server” argument, without getting the experience in completing a complex project that would give them the depth that they needed.

Client requirements have often been very specific, particularly with state government clients (for welfare, social services and MMIS contracts) that believe that having rigid skills requirements lists protects them from discrimination complaints, but that tend to keep the same cadre of people rotating among the contracts.

Perhaps, though, it’s a good time to be in college or graduate school, if the school and professors can help students figure out what employers really need. But employers – both staffing companies and their clients – ought – out of longer term self interest -- to behave in a much more forthcoming manner than they have.

I might as well give the links: My certification summary page, and my Brainbench certification page. My official resume page is here.