Join Bridge Winners
All comments by Larry Lang
You are ignoring the author of this comment. Click to temporarily show the comment.
I'm going to define “a program written to modern standards” as something with a reasonable user interface, help, anyone under 60 can operate it given enough time, lots of embedded test code, can run on Windows, easy to download.

Oh, we already have that. $200K please. Done in 2 hours.

You want better documentation of the source code? Send me a check and it will be taken care of.
April 6, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
“$80,930
Average Computer Programmer Pay vs. Other Best Jobs. Computer programmers made an average salary of $80,930 in 2013, which is less than some of the other Best Technology Jobs. Few can compete with the hefty $132,570 average salary of an IT manager.”

The best programmers are farm boys from Iowa. And they never get paid what they're worth.
April 6, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Ed,
I agree with all but the last line.

To me, $200K represents one superstar programmer locked in a closet for a year. There is no guarantee that a superstar could be found or that he would willingly lock himself in a closet, but they do exist, and their productivity is often 10x (and others claim up to 100x) better than mediocre programmers.

Or, $200K represents 4 retired wanna be playboys, that are considered totally trustworthy by their wives because they have no follow through. So, as a hobby, the wannabes play at home on their computer, when they feel like it, and they are willing to write programs on the cheap.

I have some skepticism about the 2nd group, but think it would be an interesting experiment.

The other point I want to make is – exactly what does “bringing up ACBLScore to modern standards” mean? Different things to different people. If I get to interpret it my own way, I think it is quite doable for $200K – but holy cow, not in 2 weeks. Perhaps it would cost $3M if the requirements are interpreted by someone else. That's another thing I'm curious about examining.





April 6, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
The thread – I am attacking the concept that new technology is always better and faster and cheaper.

I'm a late adopter. I don't even have a cell phone. I don't pretend that this is some sort of maximizing strategy on my behalf. I don't see the need for a cell phone, and I moderately resent mute kids that are texting when they are not more than 3 feet apart from their friends.

At work we used to talk about “Bleeding Edge Technology” – that which makes you smarter, but poorer. Eventually “Bleeding Edge Technology” wins out and becomes cheaper than more established technology – or it doesn't.

Nicholas has never claimed that he is cheaper because he is using newer technology. But others have made that claim for him, and I don't see him dispelling that notion.

I am not attacking Nicholas's costs. Nick offered a certain kind of service, and I think his costs for the service he provided are reasonable. I am questioning (not attacking) the idea that the ACBL cannot afford to pay Nicholas another 1/2 million to finish the project, when theoretically they already own the code. If we can't question each other, how can we criticize the ACBL for not allowing itself to be questioned?

There are people I've talked to that assume Jim Lopushinsky is the problem. He wrote “spaghetti code”. He gave himself “job security” by not fully documenting his code. Jim was a one man shop for a long time. I resent the implication – partly because I would have done the same thing if I was in his shoes. Those kind of innuendos are unfair, and they're not helpful to picking the best course for the future.

There are others who seem to believe that Jim Lopushinsky is holding up a flag “Pascal forever”, and that this is the crux of the whole problem. In my mind, that's garbage. Once again, Nicholas has never said that. But he benefits from that kind of thinking.

And yes, I am critical of Nicholas. He was given all the source code for ACBLScore and he couldn't find one scrap that could be converted over to ACBLScore+?

Finally, the disclaimer. I am biased. We made a very informal proposal to do the whole thing for maybe $200K. If we had dealt with ACBL management during the negotiation period, the cost might have ballooned to $2M. Easily. But cost was not an issue. Nicholas had the project before the RFP was even released. He spent enough time cultivating those connections, it paid off, and it's okay.

But I will continue to “attack” the idea that Jim's code was worthless and that Ruby On Rails is some how the Holy Grail. And I will forever fight the notion that only technology matters – not users and cost.



April 6, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Programmers should not repeat themselves, but here goes.

Time has taken a tremendous toll on ACBLScore, but it is wrong to assume that the code is spaghetti code, poorly written, and out of date because of Jim Lopushinsky or Pascal.

ACBLScore (CompuScore) was originally written to run on DOS, but DOS has been replaced by more modern operating systems. To my knowledge, the ACBL never said, “Jim, you can forget about DOS for now.” Instead, he retired, for reasons that are still aren't clear to me. Maybe he was thinking “All right. You handle it.”

If you cut out the DOS requirement, it's huge. Slice out 50K lines of code?

ACBLScore was written to work on computers with floppy disks and tight memory constraints. To my knowledge, the ACBL never said, “Jim, you can forget about tight memory constraints and floppies now.” So once again, maybe this led to hard feelings. I don't know. But this is huge. The code is riddled with overlays and other kinds of programming tricks that we would never bother with in the modern era. The code is constantly testing for available memory. The data is compacted to save on disk space.

Many people seem to think Jim rolled his own database. That's not true. He cut out many of his flat files and eventually converted to a “relational database” that was probably very modern for it's time, which came with Turbo Pascal. It's time to upgrade the database, but it's not out of the stone age. To my recollection, the ACBL never said, “Jim, you can spend about 5 months upgrading the database and we'll understand.” But I wasn't there. And I've never met or talked to Jim.

Jim wrote ACBLScore when screens had less resolution. So his code farts around with color palettes and the sizing of text fields and menus. We don't do that as much anymore, and that stuff needs to be cut out like a cancer. Did the ACBL say, “Jim, we'd like to give you another 5 months to update your GUI screens.”? I doubt it.

When I look at Jim's GUI code, I can't tell whether he appears to be anal because he is worried about screen resolution, or the GUI components are old. Maybe it's all 3 combined. But here is another huge chunk of stuff that should be thrown into the waste basket. Jim did a great job, but this is a new era.

When Windows came along, Jim didn't stick with “old clunky” Pascal. He left the old code alone, as much as he could, and wrote the new stuff for Windows in Delphi, which is Object Oriented Pascal. I think it was exactly the right thing to do.

Some people seem to think Pascal/Delphi is a stone age approach, but you can take any language and make it appear to be object oriented if you are determined. Object Oriented Pascal is just a super set of regular Pascal.

I would like to point out that according to TIOBE, Pascal has gone from the 5th most prevalent language in 1985, falling to 15th in 1990, up to 3rd in 1995 (Turbo Pascal), down to 66th in 2005, and now at 15th in 2015 (Ruby is 18th). TIOBE splits Pascal from Object Oriented Pascal, which got a boost from the Lazarus project (Remember? Lazarus came back from the dead.). Or perhaps because of the super human effort of Embarcadero to get you to pay steep prices for their development products – Object Oriented Pascal is rated 13.

I would hardly call Pascal a dead language. Object Oriented Pascal is on the upswing and Ruby is falling. I don't offer this as justification that one language is better than the other. Syntax matters less and less as we go forward. Libraries matter more and more. I will propose that it is hard to know how all this will fall out, and there are few cost benefits for being a language bigot.

It's true confession time. When I first heard about ACBLScore+ my first reaction was, “It cannot possibly be right to throw away all that code!” But I have gone through ACBLScore. Maybe 30% supports DOS. Chuck it! Maybe another 20% is devoted to minimizing the memory foot print. Bzzt! Gone! The database needs to be upgraded, cut out another 20%. The GUI can be replaced with 1/10 of the hand written code (another 40%). Pretty soon, there is nothing left.

GUI takes a lot of thought, but not too much programming time, if you use the right tools. Deleting lines of code isn't too tough.

All you are left with is computing master point awards, movements, name entry, and data entry when the game is scored – and the bridge Mates which were never too smooth in the first place.

So as I study the remaining code that might be useful, I ask myself, is it reusable? I think so, but it's not clear. Jim strongly believed in saying it once and never saying it again. That's good. But too often he didn't indicate which of his 1000 files he said it in.

Jim usually said it in tables – hundreds of them. It just isn't clear how all the tables are interconnected. Also, Jim was a man of few words, at least when it came to commenting code.

As a casual reader, this is hopeless. But as a person with a debugger (I don't have one) not so bad. Routine A calls Routine B. Where is Routine B located? Let's haul out the debugger and find out. It shouldn't take more than 5 minutes.

Another option would be to give the remaining code to my friend at PNNL. He would use a LISP program that he wrote to “flatten out the code” and then it becomes more obvious who is calling who and why. It seems like the code could then become reusable and critically important. It could be converted into a DLL or similar, and used by the rest of the application. But I haven't done this, so I can't validate my opinion.

In summary, I guess my point is that things aren't all black and white. Some of the ACBLScore code might still be useful. The same is true for Nicholas Hammond's code as well. But regardless, Jim Lopushinsky deserves a big debt of gratitude from the ACBL and all of its members.













April 5, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
That's true, but the system hasn't been created yet. I'm very good at making well documented programs, because my memory is poor. That's one of the reasons I love Visual Studio Intellisense. I use long names, so I can remember what the variables stand for, and as I'm typing code, Visual Studio reminds me what the long names are and fills them in for me after I type the first 3 letters (or so). You can have a team of 5 programmers working on a project, with all the specs, version control, and GANTT (SP?) charts in the world and the code could still be incomprehensible. Likewise, you can have none of the above and a very maintainable program.

But more to the point, the less people you have working on a software project, the more productive it is per programmer. Some companies don't recognize this and ask for the same amount of documentation no matter how big or small the project is. Big mistake.

If I was the ACBL CIO Czar, ACBLScore would be broken into smaller chunks, and each chunk would be assigned to knowledgeable subject experts (that can also do programming). One module would specialize in club games, another for tournament directors, another for Horn Lakes and so on. The pieces might be broken into even smaller chunks. There might be a module that understands Bridge Mates real well, and another for BridgeTabs. The modules would behave more like services – modules that talk to each other, even though they might appear to the user as one application. Each module would have a well specified communication protocol, so that modules could request information from each other.

This would let each programming team focus on what they do best, and use development tools that are best for them. The ACBL could allow free lance programmers to compete for the right to provide new modules. The best module wins.

The downside of this approach is that an overall integrator is still needed that is close to the production end of things and who deals with customers on a day to day basis. For example, it is easy for each module maker to think they have written the perfect flawless module, without any bugs. But when the modules are all put together, or rolled out into the field, bad things happen. The overall integrator would have to be ACBL.


April 5, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Fair enough.

Access does a lot of work up front, but it is very old technology. It is mature. It may not be up to the job, in which case I might be sorry. But it might be much easier. We'll see.

I must admit, I object to the premise that Object Oriented Pascal is old technology simply because it uses the words begin and end instead of brackets. It's the support libraries, and development tools that matter.

My other point is a bit twisted. If I am one person with Google Drive, I don't need much of a version control system. I can just keep copying out new versions and deleting older ones as I go. Access is sort of like that.

I can do this because I am one person. I don't need to write specs, use version control, or come out with GANT charts.

How much difference does that make? I don't know. We'll see.
April 5, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Kevin,
You may well be correct. I can't argue with your logic.

I will say, I have talked over the phone with Jay Whipple. He called me rather than correspond through Email. Although he may think I'm some kind of crank (we've never met personally) he seems to have more sympathy to our view point than he lets on publicly. A real sticky point is that there is no guarantee that the next CEO will be any better than the one we have now.

I also wrote to Suzi, and she did reply with a long personal Email. Once again, we've never met personally, but I think she has more sympathy than you might guess.

I wrote to Bruce Knoll, head of IT, and got very few responses back.

I also wrote to Hartman. I think he feels I was belligerent, which I was, but there is no easy way to tell someone that they are making a big mistake. Especially when they continually ignore your concerns.

Don Mamula is my district's governor. So I think that base is covered.

I have to believe, if each of us is privately pursuing other angles, the message will eventually get across. If nothing else, Hartman may get so sick of us that he leaves on his own. Or maybe Hartman will see the light and come to Jesus. Don't know. But these things eventually work out – at one fifth the pace I would like.

April 5, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
I'd like to see the proof on Bridge Winners as well. I would like to believe that we are more influential than you might guess. I know Whipple, Suzi, and others read this stuff. They just don't have the luxury of appearing like a jack ass – like I occasionally do – which full disclosure requires. That doesn't mean they're not listening.
April 4, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
When you are a manager, or a CEO, everyone laughs at your jokes, whether they're funny or not. You can announce outrageous and abusive policies to your employees or the customer, and no one will say much (except behind your back). And when you're messing up, your best employees won't tell you. Pretty soon you begin to believe that you actually do deserve your position and you are somehow better and smarter than the employees you manage – and everyone else for that matter. Of course, if you're really better than your employees, you've done a lousy job of hiring and you should be fired.

I can relate to all this, because I was that kind of manager until I underwent a rude awakening. It strikes me that Hartman may be in the same boat – perhaps too young – and too trusting of his own judgment.

I don't believe Hartman sabotaged Nicholas just to be a jerk and endanger his own career path. There is more to it than that.

But Jesus Christ! If he has given us the best defense he can muster – by appointing his own lumbering tech committee, with himself as chairman – what does he expect us to think?

.
April 4, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
It sounds like Hartman needs someone at his side, explaining how to explain what has happened – in an open yet prudent matter.

At Pacific Northwest National Labs, we had a department called “Media Relations”. They were almost always telling management and the lawyers to come clean as quickly and completely as possible. And to always be up front and honest with the employees. The worst thing that can happen is for a bad story to linger on cloaked in secrecy.

For example, PNNL (the laboratory) launched a weather balloon that eventually landed on a horse. The horse was literally scared to death, running into barb wire and falling in a trench. You can imagine the headlines. PNNL tortures and kills horse with a weather balloon!

The lawyers wanted to suppress the story, because they would eventually have to negotiate for the cost of the horse. Media Relations wanted PNNL to apologize, profusely, and get the incident over with as quickly and publicly as possible. Media Relations won that particular argument, and the story quickly blew over. I bet many of you didn't know that Pacific Northwest National Labs accidentally killed a horse that was just standing out in a pasture minding it's own business. Maybe you would know if they hadn't ignored the lawyers.
April 4, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
If you want to shut down an organization, hire 10 lawyers and do everything they say. They have plenty of pet monkeys they'd love to place on your back.
If you want to get anything done, take the monkey and put it on the lawyer's back. Tell them, “this is what we want to do, how do we get there?”
April 4, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Jeannie,
DealMaster Pro is great. If you don’t have it, get it.

But double dummy analysis only takes you so far. Bridge has aspects of Poker that are buried within. (I love Poker, but I have many detractors that don’t agree with my definition of fun). I suspect that the next evolution in bidding will focus on how to bid to a reasonable contract without giving away critical information to opponents. Thus, better is a program that mimics how different classes of bridge people bid and play at the table.

My understanding is that current bridge playing software uses rule based logic down to one or two levels. Then the program retrenches. It takes the information it does know and generates many random deals, and determines the most likely action to succeed from those hands. Bridge Baron, for example, can drive you crazy when it’s your partner on defense. It thinks two minutes, and then ignores every signal you gave and every inference in the bidding, and proceeds to misdefend by two tricks.

I’m guessing that Genetic Algorithms will eventually be used to create a rule based program that plays bridge and thinks more like humans do. Using this approach, a master program (maybe it’s called Darwin) takes well performing bridge playing programs, and creates new mutant software programs that operate under slightly different rules. These programs play each other for quite a while. Then the inferior programs are “killed off” and the best performing ones are kept on, and used to create more mutants. The great thing about genetic algorithms is that you can go to bed at night, and have the computer play bridge against itself way past 4 in the morning, and then only intervene when you feel like it.

If you use this approach, you must beg, borrow and steal every piece of bridge playing software that you can, and then add your own layers on top. The task will be daunting. I play bridge with several PhD Computer Science types. We keep talking about it. Wouldn’t it be fun? But they have to work, and I’m too busy being retired. So we never seem to get around to it.
April 3, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
I sometimes look for indirect “indicators” of what management is really thinking.

For example, is management really learning from the events of the past 2 years, and trying to be more open? Is the CEO really sincere about adopting a more modular approach in the future, and opening up ACBLScore to allow contributions from others?

Here are quotes from the job description of the CIO.

(requires) “mature judgment, focus on privacy and confidentiality”

“Foster sound stewardship of IT assets including proprietary systems such as ACBLScore.”

I am hoping the ACBL will become more open, and lose the “not invented here” philosophy that arguably has dogged it in the past.

My indicators hint that adults are very slow to change and we shouldn't count on it. But perhaps I am reading too much into the job description.
April 2, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Greg,
I heard a rumor from a “friend of a friend” that the Technology Committee has finished or is finishing a specification for the next generation of ACBLScore, that the specification will not be put out for bid, and a vendor has been selected.
Is there any truth to this rumor?
April 1, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Okay Mr. Frank.
March 22, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
One last cynical comment. If you say something uplifting and positive, you'll get high marks. If you call someone out for being a donkey, any thanks you get will come privately. This is probably as it should be.

Perhaps bridge is not an uplifting activity that easily leads to comments like – “Great picture” – “Looks like fun” – “Wish I could be there” – “Wow.” “Good to hear from you.” “Your bridge hand is so cute.”

March 21, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
I had never heard of Al Frank before coming on to this site. Maybe it's his picture. Looks a little bit like a mad professor. And maybe he is truly profound.

Looking at this thread Al Frank is batting 400% for each comment he has made.

Picking another thread – for example Fantasy Vanderbilt – he has 3, Martel has 1, everyone else has zip.

I've noticed this – many times. Frankly speaking, I find it odd and striking.
March 21, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Get this. Alan Frank states the obvious and gets 3 likes. Then there are all the rest of us sending out our thoughtful fancies, and we get squat.
Alan Frank always gets lots of likes – even for saying hello. This is unjust.
I'm not hyper-competitive or anything, but I'm going to sign up under 4 other aliases and go around liking myself. And then we'll just see who is the truly the likeliest bridge winner.
March 21, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
There is no button allowing me to like myself. And since I'm my biggest fan, this pretty much dooms everyone else to mediocrity.
March 21, 2015
.

Bottom Home Top