Join Bridge Winners
All comments by Nicolas Hammond
You are ignoring the author of this comment. Click to temporarily show the comment.
The ACBLscore masterpoint code is complicated. It's in 3 different modules (at least). There is separate code for masterpoint chart and masterpoints. The calculation code is mixed in with the UI.

The last round of MP changes showed how difficult this code is to maintain in ACBLscore.

For ACBLscore+ we have a separate masterpoint module. It's written in C. It is about 8,500+ lines of code. Standalone tests etc.

The MP code is complicated, for example in the code to calculate the colors for a session, I think we have 43 different conditions (big nested if statement). Part of this code would have been copied from Jim's underlying code, but not all of it.
March 9, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
The legal mediation is important.

Currently even if the KO software is great, ACBL wouldn't use it.

Instead they would re-write the software, use the ideas and concepts. This is the underlying problem, all based on an outside counsel's opinion. ACBL management have the opinion that they can't use the ACBLscore+ software.

There is no difference/dispute between HS/ACBL. Everyone keeps trying to say that there is. We had one contract. It got done. We were unable to negotiate a second contract. We both moved on. Doesn't mean that we couldn't negotiate a new one.

Take a look at
page 34 for comments on the personal web server concept.
March 9, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Totally agree that you need to have a back-up system in place any time you introduce new technology. We have just come to expect new systems to work (e.g. electronic scoring devices).

There was a separate thread about how this could be done (electronic sales). One solution ould be similar to how KO events work, or how seeding in pair events work. You get an entry number, when assignments ready, your table assignment comes up on the wall. It's how KOs work in Bridgescore+, you've got something similar for BW. Combine the two, you've got a solution. For KOs, it's even better because you can capture player numbers at registration time.
March 9, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
There are some simple things that can be done.

The first problems with the ACBLscore+ contract were actually with the board, not ACBL. Cost the project about $70-$100K. I complained but was told that we had to eat the extra cost. I wrote Robert and gave details on how to avoid this type of problem in the future (e.g. shredders at board meetings for confidential information), there were also some common steps that are taken at board meetings that ACBL don't follow. Still don't.

First problems were documented about a year into the contract.

ACBL has some good people. They work hard, they work long hours.

ACBL is severely lacking in people with project management skills; my recommendation to Robert long time ago was that certain people should go get training in PM. For example, take a PMP class, get a PMP certificate. Good for the employee because they get extra training and this can rub off within an organization. I think ACBL only had 1 person with a PMP certificate (or equivalent) when I was there. Without understanding the formal process that a project goes through, it's difficult to manage it. One of the risks that I identified to ACBL before the project started was making sure that they had a qualified project manager within ACBL for the ACBLscore+ project. The code touches all areas of ACBL - TDs, backend DBs, CDs, finance and all should be involved at different times.

That recommendation still applies: I would encourage ACBL to send more people to on-going work training, PMP being one.
March 9, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
Let me be clear:

Roll out starts on Day 1 with the current code. It does not need the ‘missing specs’.

It will take time to train the TDs on using the new software. It will need to run in parallel for some time with a limited number of TDs giving feedback. This will make the software better for all.

This software has to be supported, so there is training of the back-end support staff that starts as well. It is incremental.

As the first TDs are running the software, we are working on adding the code for the missing specs. In parallel. We make it fail-safe, can always go from Bridgescore+ to ACBLscore game files for example.

The major missing specs are Movements, and Masterpoints (eligibility/assignment). We would not need them day 1.
March 9, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
I'll defer to Greg and others for best UI; my UI is OK, but I typically hire others to do the final CSS/Javascript - that's almost a specialist job these days. I'm better at taking a complex task and breaking it down to the necessary sub-components.

One important part of the ACBLscore+ design is to make the software flow the way that the directors work (or should work), not the other way round. Currently a lot of the process of running an event is based on how the software works.

An example is KOs. After a KO starts, the TD gives a list of tables in each bracket (typically hand-written) to a caddy, starting with the round robins, then the head to head matches. The caddy must then sort in the correct order - RR, then HH. It's one of the reasons that they want you to write the table number down - they sort by hand at the TD table based on the table number. The reason for all of this sorting is that ACBLscore inputs ACBL members in this order - RR, then HH. All teams must be sequential.

It is an incredibly cumbersome process. TDs won't start doing input until all the entry sheets are in the correct order. This is how it has worked “for centuries”.

So… if you look at this process and get to design something new, you re-invent the wheel.

With a modern UI you can scrap the need for sorting. You can display more than one team on the screen.

The current paper process puts your entry number on the entry sheet. Bridgescore+ knows this.

Why not do name entry before the KO starts?

Currently we don't because ACBLscore doesn't have the concept. Bridgescore+ is SQL based, we know your entry number. Let's pre-register you.

It will be tried out on a limited basis in Gatlinburg. My goal is to make the TDs job easier and to cut down on the massive line to buy entries for the KOs.

I'm not knocking ACBLscore - never have - it does a great job but is limited in its abilities by the underlying design from years ago.

March 9, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
This thread started out with offering a challenge between ACBLscore and Bridgescore+. The reason that I made this challenge was that NO-ONE from ACBL management had seen a demo of ACBLscore+, nor seen its abilities/capabilities, including those on the CEO Technical Committee. That Committee appears to be in disarray - the CEO last month claiming that ACBLscore+ could not handle KOs - I don't know who is advising him but Greg/Uday/Ralph are on that committee so it's clear to me that no-one knows what's going on. I reported 7-9 months to finish, the committee minutes stated 18.

It now appears that after the ACBLscore+ code was delivered in May 2014, that ACBL spent $100K creating a “proxy” (similar software) to ACBLscore+. I am speculating that this code, not the real ACBLscore+, was shown to the ACBL Board Members (Merlin Vilhauer, Russ Jones) in May/June 2014. Based on this they recommended dropping ACBLscore+.

In other words, management spent $100K to create a demo to convince the board to drop ACBLscore+. They did not show them the real code.

I have no idea what code Greg has reviewed, or been shown by ACBL. All I know is he stated that the code in the cloud was different than the local code he had.

Please see
Page 34. Even though Bob is my DD, I had no idea that he had written this.

It also appears that management tried to discredit the technical approach (web based software), and failed.

I stand by all the statements I have made in this discussion, and others, regarding ACBLscore+.

It's time for all the mis-information about ACBLscore+ to stop.

It's time for some people to get a demo of the real software.

It's time to see what ACBLscore+ can do, not what a $100K imitation couldn't.

Bridgescore+ (basically ACBLscore+ 2.0) is ready to deploy. See I haven't updated that page in a while. Everything still applies.

I will be in New Orleans; I'll try and find a location to give a Bridgescore+ demo.
March 9, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.

ACBLscore+/Bridgescore+ can assign masterpoints. I have no idea where this mis-communication has come from. It can do a lot more. I posted a list of features of ACBLscore+ in August 2014, see
I haven't update the site since, it can do a lot more now.

There continues to be a huge amount of mis-information about ACBLscore+, what it can, and cannot do. If you re-report the mis-information then the myth worsens.

ACBL management are trying their best NOT to let anyone see the software because the root causes of all of these problems is legal, not technical.

A year into the contract in Gatlinburg 2013, I demo-ed ACBLscore+ to my contacts at ACBL. We took the printed results from a 0-299er game, set up Bridgemates and 3 of us (2 from HS, 1 from ACBL) entered the information into the Bridgemates. ACBLscore+ scored it, ranked it, masterpointed it. At this point I wanted to release what we had, in a very limited manner to clubs, so that we could get early feedback on the UI. ACBL said no.

ACBLscore+ has also been able to run/score/rank/masterpoint KOs and Swiss for some time. Part of the testing is importing a game file into ACBLscore+, re-score, re-rank, re-masterpoint, output the result from ACBLscore+ and compare with ACBLscore.

Bridgescore+ obviously can do the same (it's basically ACBLscore+ 2.0). In addition, it can write an ACBLscore game file at any time so that the two can run in parallel.

“The relationship between the ACBL and Hammond Software is beyond repair. Assigning blame isn’t helpful, and there appears to be plenty to go around on both sides. What’s important is understanding that any plan to move forward will not include Hammond Software.”

I disagree. There are certainly individuals within ACBL that may have some issues. Particularly the couple that negotiated the original ACBLscore contract. But if you are at that level, you are supposed to be able to put personal issues aside and do what is best for the organization. Long time ago I stated that the dispute between ACBL/HS was a simple business issue. ACBL's CEO/league counsel wanted a new contract to include redoing the old contract. I said no. We agreed to move on. Nothing sinister, simple business. I've continued to do some work, sometimes indirectly, for them, but it's easier if it is done quietly, and done on a volunteer basis.

Remember: I've been through a lot. ACBL negotiated a 10% discount before the contract was signed, in exchange my company got a license to the code. ACBL started stopped paying invoices just over half way into the contract in order to force HS to drop that license/change copyright but with no compensation. We said no. The company had to borrow a large sum of money (into 6 figures) in order to pay our employees/contractors but we put some on furlough. We continued the work. The contract ended (twice!), and we delivered all the code. It's good code. Everyone who has seen it says the same. ACBL are just stuck with some legal issues.

I firmly believe in the software. More than anyone else I know what it can do.

I've spent the last year enhancing the software, adding the features I know it needs, but were not part of the contract.

I'm not saying that a new contract would not be difficult. Almost certainly I would add wording that we would get paid on time (that was in the new proposed contract). What ACBL's outside counsel could not agree to was wording regarding copyright/licensing.

March 9, 2015
Nicolas Hammond edited this comment March 9, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
It probably won't help much to bash each other in public.

1. “My counter-showdown was satire”

Darn-it. I thought you were being serious. I almost bought a stop watch.

I still think a head-to-head public comparison is great. I don't think you have seen ACBLscore so you don't know what is being replaced.
I'm still willing to take you up on the USB stick offer.
Let me know which version of Windows you'd like to do this on so I'm properly prepared.

Let me know which version of Mac you'd like to install ACBLscore on.

2. “…They did not work….”

The last entry for the Wiki was March 31, 2014. If you have any software components on your Mac which are after that date then there is no guarantee of backwards compatibility. In fact, I'm almost certain they won't work.

As new developers came onboard, or as we upgraded components (e.g. Ruby 1.9.3 to Ruby 2.0) we updated the Wiki. We had some who wanted to develop on Windows, some on Mac, I didn't care what development environment they were on. We tended to leave the old comments in the Wiki and not simply delete. We may have upgraded from Mac 10.8 to Mac 10.9 but still have some developers on Mac 10.8 so we left the old text in but annotated it accordingly.

It's a bit like having a software installations for a Windows XP program and then you complaining it doesn't work on Windows 8.

I am happy to help. I offered to help. I had no idea that you would spend 6 hours trying to do this.

BTW, I had no complaints/comments/questions from ACBL after the original delivery so I strongly suspect the problem is installing on a newer machine.

3. “I'm reasonably certain that the code I tried to install locally, and the version we are running in the cloud, are the software that you delivered.”

If you have any doubt, let me know.

I hope the version in the cloud is configured correctly, i.e. not running under Apache etc.

4. “4) There are absolutely parts of ACBLScore+ that have value. As you say, they're being used, and people like them. We would like to extract, deploy, and integrate those parts. It is part of the plan that Uday and I proposed.”

This is great news.

It is all I have been asking for.

Previously ACBL has stated it was all throw-away.

5. “5) All estimates for how long things would take and what's missing from the software are from my phone call with you. I took notes, I know what was said. I'm not making them up. None of this is coming from the ACBL.”

I followed up with an email because I wasn't sure you got everything in context.

To finish the job, there is still 6-7 months of critical path work that was delayed.

So that's the minimum.

What I said on the phone, that knowing what I know now, and that various components of the original contract have changed, I would roll it out differently. The lowest cost/safest approach is probably a 9-18 month roll-out.

See the transition plan in the final status report (page 64). See a rollout plan at The latter has been up for several months, I haven't updated it in a while.

Somehow what I stated to you on the phone got translated into “18 months minimum”. That's not the case.

My suggestion is that you roll out the code tomorrow. It needs time in the field. It needs time with users.

“The ACBL has a huge laundry list of things that it found missing or deficient in its initial analysis, and we wanted to get your side of the story since it seemed weird that you hadn't weighed in, and we were having some difficulty understanding the laundry list.”

I have never seen this laundry list.

That's why I haven't weighed in.

If you can release it, send it to me. If under NDA, fine.

Most people, myself included, would want to know why if ACBL has had this for a year, they haven't shown it to me. After all, I know more about what's there than anyone else and have been very open/honest about it (see the status reports).

The most recent claim from ACBL (last month) was that they didn't get the code that would start a KO using a projector.

So i went back to the DVD that was sent, and explicitly referenced the code.

If the ACBL CEO is being told that large components of the software was not provided, yet they were, I'm not sure how good this laundry list is.


“The authors of the list have themselves said that they should have done a better job separating the big ticket items from the small stuff.”

I don't know who the authors were, or what they wrote.

All that is documented is that they spent $150K creating this list.

“We all know that ACBLScore+ can start and run a KO like gangbusters.”

No. The ACBL CEO specifically stated last month that ACBLscore+ could not start a KO.
So “We all” do not know that. I know it.

“We also know that it can run a swiss, assuming that you're willing to run ACBLScore in parallel because of some missing logic. I've not seen that in action personally, but I'm willing to stipulate that it's nothing short of amazing.”

It is :-) (Amazing).

It does run in parallel so that we guarantee the matching algorithm.
I want to get the matching algorithm done as an open source project so that ACBL would have access to it (see previous posting) when the code was done.

Matching the ACBL algorithm is a bit of work. Trying to extract the logic in the ACBLscore code is difficult. I had 3 different developers try and do this during the ACBLscore contract, none was able to do it. The algorithm is heavily mixed in with the UI code making it very hard to extract. They were trying to match Jim's Pascal code with equivalent C code.
If I were to do it, I'd estimate 1-4 man weeks coding. 2-3 months elapsed; not trying to be immodest, but would take others longer, I come into the project with more background. Reason for big difference between man weeks and elapsed is testing and feedback. ACBLscore+ is custom software, it needs feedback.

However, I want to make it open source. Got some developers interested. If I did the work, then my company would own it. Believe it or not, altruistic motives in making it open source.

However… I would not match ACBL's algorithm. It's overly complicated. It is not well understood by the users. Most people - TD/CDs don't change the default settings. But they are changed at the NABCs.


“Will you be running the old, as-delivered version of ACBLScore+, or will you be running the newer Bridgescore+?”


I've made many, many improvements to Bridgescore+ since ACBLscore+ was delivered in May 2014. It's better, faster, more capable, more printed output, better tested, better displays. There is no reason for me to run ACBLscore+.

Basically what I've got is what I would have called ACBLscore+ 2.0. ACBLscore+ 1.0 was to replace ACBLscore, delivered May 2014. It was designed so that new improvements could be added.

When ACBL announced they were dropping ACBLscore, I put a version up on the Internet for districts to use. It is code up to September 2014. It's free. I've had a lot of feedback from them, and incorporated it into Bridgescore+.

“Demos of the latter are of less interest, since it's not what was given to the league and we don't have any access to it to do any independent evaluations.”

You are welcome to see it in action at Gatlinburg.

I offered to run it (for free) at the NABCs.

“I naively expected ours to be a short phone call, since answering those two questions (what's missing, and how hard are they) seems straightforward to me, even though I'm well aware of how hard it is to estimate development time”

What you want is a dollar/time estimate. I know that. Everyone wants that. But it's complicated. If there was a contract, I'd spec it out, but there isn't so I can only give estimates.

Development estimate is hard because of resources. It's code so you can put man weeks next to an item. But it's highly customized code, so you need the right resources. My output ratio for the developers on ACBLscore was about 20:1. In other words, what some developers would take 20 hours to do, would take others 1. Higher ratio that most projects, but there is a learning curve for ACBLscore+. So any estimate of man weeks has to factor in output ratio. For example, ask ACBL what the estimate was for ACBL Live, and how many man weeks/elapsed weeks has taken (I picked this at random, nothing sinister).

The other factor which is harder to impress on people is the elapsed time. It's custom software. It needs feedback from TDs/CDs. They are the users. You can't ask them what they want because they can't tell you (I've tried). You have to show them, get feedback, and implement their suggestions (this works).

I'm reluctant to commit to any dollar/time because of unknown resources.

If I had to do the work, I can put some hard fast numbers next to each item.

I gave you a 6-7 month estimate, minimum, for completion, because that's the delay in the critical path items. That gets the code done. Meets the requirements. But I'm not sure everyone is happy. Leaves almost no time for feedback from users.

I gave you an estimate of 9-18 months. The slower the roll-out, the cheaper the cost, the safer the roll-out is, the better the quality of the code and final result. Someone that is now perceived to be 18 months minimum. It's not. Rollout would start at day 1.


“The contract is over, the result is not deployable, and it's not close”

This is where we disagree. Perhaps it is semantic terminology on the scale of deployability.

It was deployed in Gatlinburg in April 2014.

Parts of it are ready to be deployed now, others not.

Even if everything was ready today, you would still do a slow roll-out. You need support trained. You need alpha-testing. Look at any other ACBL project, e.g. ACBL Live - you roll it out at some test tournaments, get feedback, before implementing it across all tournaments. Look at TourneyTrax - same issue. That took many months of feedback.


“By the way, I asked you repeatedly, in Providence, for a demo, and never got one.”

I honestly don't remember. I did demo it to several people; I have no reason not to have included you as someone to show it to. Perhaps our playing schedules never meshed. I“ll have to dig through old emails/texts but I don't remember. I know we did talk about projectors and usage etc.


”I'm not really sure what you're trying to accomplish here. If you want to convince us that we should try to extract workable pieces from ACBLScore+ and roll them out, there's no need.“

That's about all I want to accomplish.

”If you want to try to convince anyone to create another contract, you're not succeeding"

That's not likely with the current management. I walked away from the last contract that was offered.


10 items.
Let me create. I'll put in a separate thread. My fingers are sore.
March 8, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
“Greg had trouble with installation, and you replied, in effect, “RTFM” – when you could have offered to talk him through the process while on the phone instead.”

I did. When we were on the phone with Uday I offered help with the installation. He was trying to install it when we were on the phone. The next thing I know is his posting that he then spent 6 hours trying to install it. Would have been easier had he sent a private email/text rather than a public posting. I suspect I know his problem - trying to install older software on a newer machine. But I wasn't the one that first went public. Greg/me posturing in public won't help; we can probably get a lot more done privately, but publicly everyone needs to see what ACBLscore+ can do, and what Bridgescore+ is doing.

“Greg says “I've seen the software.” Instead of stating in a public forum “No you haven't,” you could have made a private offer to demo. The public challenge is far too adversarial for your cause.”

I did (private offer to demo).

Instead of taking me up on the offer, Greg has been running something that ACBL has set up for him. I have no idea what it is; given that he says it is a different user interface than what he had installed, perhaps it's not even ACBLscore+. Perhaps ACBL created their own version of ACBLscore+ and has been showing that to him instead. Unless it's software that I've installed (can do it from the DVDs that was sent to ACBL), or software that Greg has installed from the DVD and not something setup for him by ACBL, I can't vouch for what he is reviewing. I have any reason to believe that ACBL would do their best not to show ACBLscore+ in its best light.

The phone call that we had wasn't publicized, however we all made sure it was open, i.e. anything discussed was open. I followed up with a lengthy email. Nothing since. I then saw the minutes from the Technical Committee. We did talk about Bridgescore+, but in order to be able to show everything it can do, and its plans, I would need an NDA with them and we all agreed that having an NDA in place would be inappropriate. They wanted to be open and free with their comments. Me too.

So from my perspective, no-one has seen a demo of what the ACBLscore+ software (as delivered) can do. AFAIK, they haven't talked to any TDs that have run the software. Did they talk to the Gatlinburg TC/DIC from last year?

“none of their words are to your cause's benefit”

All have said that the code looks good. Or words to that effect. There's several man years in there so a lot to look at. I assume that as part of the analysis that the team took a look at ACBLscore source code so they could compare apples to apples. Support costs are the biggest cost of the project. I have always said, and still claim, that ACBLscore+ would pay for itself in terms of better support, easier support, fewer TDs required to get the job done. I still stand by that claim. Greg said “The things that it *can* do, it appears to do quite well”.

ACBL threw out ACBLscore+ claiming it was all worthless. This was last year. Now some back-pedaling - maybe we can re-use some of it. This is the exact opposite of ACBL's claims last year. If anything their words are undermined ACBL's original rationale.

I know the real reason. I posted long time ago that we had a business dispute - ACBL wanted to re-write the original contract - we said no. We moved on. It was made clear to me that under the current management/league counsel there would be no more (paid) work for Hammond Software. I accepted that. Simple business. It was now ACBL's problem - I said nothing for many months. It wasn't my problem.

ACBL management/league counsel got themselves in a situation where they have software that they have been told ACBL cannot use. They have tried to shift the blame for that onto me and my company.

What I have done since the project ended is to protect the reputation of my company, and also the code that was delivered. ACBL aren't going to use any code from ACBLscore+ unless they got a different outside counsel, or unless the CEO/league counsel changes their mind or there is a change in CEO/league counsel.

ACBL have since tried to portray the software as bad, or unusable. That's simply not the case. It ran in Gatlinburg last year. It's run at many regionals/sectionals since. I've had others (not me) run it at tournaments. I'm going to protect any claims to the contrary. And, back up those claims with working software. This is why everyone has a problem - ACBL claim its worthless, yet its out there at tournaments.

All I'm asking is for someone at ACBL, or someone who is technical enough to understand what ACBLscore+ could do, to have a demo. Or come to a tournament and see it work. I don't think that's unreasonable. ACBL spent all this money, why not see it work? What has ACBL to lose? What has Greg/Uday to lose? If anything, there's a lot of synergy for both - Bridgescore+ can take the pre-registration data from BridgeWinners and put them directly into a game file, either an ACBLscore game file or ACBLscore+ SQL database. With this technology, ACBL are more likely to get into pre-registration. Bridgescore+ results output can tie into BBOs code to display hands on BBO's web site (I can support others if needed). I assume that ACBL showed both these features to Greg/Uday - I haven't because I haven't given them a demo.

ACBL spent $150K evaluating the software. At least that's what they claim - it was in the Providence notes.

I have absolutely no problem if ACBL were to publish their evaluation. They have a GAP analysis, publish it. I have absolutely nothing to hide. I still haven't seen either.

Any time someone makes a false claim, I'll throw up a YouTube video.

I have no problem the truth coming out. I hoped that Greg/Uday/Ralph would see the code work. They've said the code is good. But haven't seen it run! AFAIK, they haven't talked to TDs who have used the software, or players who have seen it.

The emotional response seems to be coming from ACBL. In the Technology Minutes, they stated, “Management Technology Committee believes the best path forward is not to continue work with Hammond Software”. Kind of funny because they weren't working with me anyway. It's interesting because they offered no alternative. It seems to be am emotional response. Here's what we are not going to do. Ruling out one option without any alternative proposals is silly.

If they started from scratch, would be a huge undertaking to replace ACBLscore and basically redo what they already have. They already spent all this money, why waste it? Finishing it off could be done for less than $600K that they are spending trying to play catch up. Use me or my company and it would get done quicker/cheaper but they could still get it done without me. Take a little longer, little more money, but ultimately ACBL need to support the software. Transitioning the code to have ACBL support it was what I was trying to do in the last 6-9 months of the contract but they never hired anyone. I'm trying to get the ACBLscore+ software evaluated and used, I'm not trying to get more business for my company - ACBL with its current management made it clear in May 2014 there was no more (paying) work. I've done stuff for them since, but free. I've posted some solutions to the $600K problems they are solving on-line. They are free. I did this so they didn't need to waste $600K. Use that money, use the developers they have hired, and finish the software.

I happy to put my reputation on the line for the software. We delivered what the contract said we would, absent anything with a documented 3 month delay or longer from ACBL. We did it even with major unpaid change requests from ACBL during the contract. We did it in spite of ACBL holding up payments during the contract. It's used at major tournaments.

I offered this initial challenge so that players (the majority of members) can see what a TD currently has to do with ACBLscore to run a KO. I'm going to show the same with Bridgescore+. I'll let the software to the talking on which is better, which is the best way forward for the organization. It is only when you see what the TDs currently have to do that you realize the need for change.

Sure, ACBLscore+ needs to be finished. But don't hold me accountable for the documented delays from ACBL.
March 8, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.

I've accepted your challenge of installing via USB stick on a Windows system.

Make sure you bring a carriage feed printer with you. I'll bring a modern cheap fast laser printer for Bridgescore+ as well as a projector etc. May as well show them both at their best.

At the same time, can you bring a Mac laptop, a USB stick, and install ACBLscore on that. I'll do the same for Bridgescore+. I'll bring the stopwatch for this one.


If you want to bring working copies of what ACBL hus budgeted $600K for this year, we can do that as well.
March 8, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.

Let me give you another example. BW has software to sign up for National Events. Why is this not integrated more with ACBLscore?

Currently the TD has to re-enter all the information manually that was previously entered into Bridgewinners.

Do you know that ACBLscore+ has this ability. I.e. it has these tools. It can take data from your system, and automatically convert it to an ACBLscore game file?

Did anyone show this to you at ACBL? Did anyone demo this to you? Are you even aware that ACBL has this code/ability.

Think of the possibility for pre-registration. We can make it all automatic.
March 7, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
“The answer (direct from Nic, not speculation): several man years”.

Not true. To implement what was in the contract would require that ACBL provide the 3 man years of work they were supposed to do. What I would implement now, is not what ACBL originally planned, but one with a better migration path. Elsewhere you saw me state different numbers.

“So: We have the code, as delivered. We know what it can do. We've seen how well it can do it.”

NO - YOU DON'T!!! This is the crux of the whole problem. You do NOT know what it can do. You have NOT seen how well it can do it. I have never given you or Uday a demo. ACBL didn't want a demo. Even now you don't want a demo.

When have you ever seen “how well it can do it”???

I've very concerned when you said earlier that the interface you saw “in the cloud” is very different than the version that you saw when you installed it on your local Mac. Are you sure that you were looking at ACBLscore+? Is it possible that ACBL created something else and gave you that to test? Can you send me a screen shot of what you were looking at up in the cloud?

If you want to see a small fraction of what it can do, come to Gatlinburg.

Ask someone who has been to a tournament where Bridgescore+ has been running? Ask a TD that has used Bridgescore+.

Everyone is asking the same problem - if it is this bad, why is it being used at tournaments?

“We don't need to participate in your proposed dog and pony show to see it. If you're going to continue to issue challenges, I propose a different one of my own: let's give ACBLScore and ACBLScore+ on USB sticks to a player of your choosing, and let's give them a fresh Windows laptop, and see how long it takes to get either one up and running. I'll provide the stopwatch.”

If you won't participate in a show, how well you get to see it?

You have never used ACBLscore, so you have nothing to compare ACBLscore+ to.

Challenge accepted.

Bring a laptop; for me have them install latest version of Google Chrome and make sure that the laptop has a WiFi connection.

Given that I have accepted the challenge, let's see how a new player of my choosing (I'll pick Greg) can create a 6 bracket KO. Greg: you get to have a TD help you.

“It's not going to replace ACBLScore because it's so incredibly far from being able to do so.”

Not true. Who is telling you this stuff? Who has given you a demo?

That's exactly the point of asking you to try a demo - see Bridgescore+ run an event start to finish.

I'd start replacing ACBLscore on day 1. Use Bridgescore+ to run the KOs. Get the TDs to start learning the new UI. Then replace Swiss. All the while we are creating backwards compatible game files so that there is a smooth transition.

“The things that it *can* do, it appears to do quite well, and if we are able to extract a viable portion that works and is nicely self contained and easy to install, then I hope that we'll do that. ”

Gosh. Thank you.
But I still don't think you know what it can do. Would you like to create a list? Did ACBL give you a list?

Note that I have extracted parts of it, and put them on line. For example, want to create a new KO ACBLscore game file with lots of brackets, see (username: td, password: happy). Try it. Compare to ACBLscore. Ask TDs how it works.

“If we can't manage that, then we have also recommended that we use the working portions of the code as a blueprint for building whatever new thing ends up getting built”

ACBL have stated that they are going to spend $600K in the next 12 months. Take a look at what ACBLscore+ can do, and what I have posted on line. I think I have 4 or 5 of the 6 items covered. They only announced them in Providence (at least that's when I saw them).

How about I show you them in New Orleans. Grab an ACBL TD - you pick one - so that he/she can explain what the code is doing.

Why waste $600K on code that you already have??

“The things that it *can't* do are numerous; some small, some large”

I re-state - it does everything except anything that had a 3 month or longer documented delay from ACBL. Or something dependent on that delay. ACBLscore+ can do a lot more than you claim.

“I'm not sure, but I do have the ACBLScore source code myself, so if you asked me to finish this, I would just extract the algorithm from there”

The implemented Swiss team algorithm in ACBLscore is ugly. So complicated that even National TDs don't know how to use it to run the National Swiss (I know, because I was there and saw it). I wanted to implement something simpler. This is one situation where you would try and write it from a spec, not going from the ACBLscore source code. Swiss teams had a many month delay.

When I did have a contractor working on this implementation, ACBL stopped paying bills.

“Nic didn't mention that one must use ACBLScore to assign masterpoints to the winning teams for any game type, again because of some key missing specification”

Probably didn't mention it because it's not true.

That's the type of statement that is so misleading that I don't know where you are getting your information from. Did ACBL tell you this?

Have you bothered to run an event in ACBLscore+??

Do you see the test code? Did ACBL show you any code?

Sorry - but this statement is so far wrong that I've got to question where you are getting your information.

“While the formulae for masterpoints might not be written down anywhere as specifically as a programmer might require, again they do exist in the ACBLScore source code (irony duly noted, as recent masterpoint-related events have shown).”

Much, much irony.

ACBLscore+ comes with lots of automated testing (I assume ACBL showed you all of this, how it works, how it tests for masterpoint bugs etc.).
Had they used ACBLscore+ for the automated testing, a lot of the problems would have been fixed before release. But ACBL has no automated testing. ACBLscore+ did. Why didn't they bother to use it? Probably because no-one knows it's there. Did ACBL show it to you?

Greg - I assumed that ACBL gave you a full demonstration of all the testing functionality within ACBLscore+, and also showed you the current ACBLscore testing.

“Did the delivered product fall very fall short of what was required by the contract? Yes”

No. I will disagree. And re-iterate that we delivered everything that didn't have a 3 month delay. I've yet to see anyone document anything to the contrary.

“I think we've reached a point where apportioning blame is less important than finding a workable solution moving forward.”

I've still got the email from ACBL that states the reason why they are dropping ACBLscore+ (May 7, 2014) along with their outside counsel's rationale.

“Now, our best hope for ACBLScore+ is to salvage what's usable from what we have.”


“We don't yet have a specific plan for the future”

I wrote one up, see
You are welcome to use.

I do have some specific plans for Bridgescore+. It's interesting to compare what I plan to do with it, with the fact that ACBL have no plans.

I'm disappointed that you didn't want to learn about Bridgescore+/ACBLscore+.

March 7, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
For the car analogy, ACBLscore+ was developed with a modular approach. ACBLscore does not have the same flexibility.

Using this approach means I could easily/quickly develop/deliver the standalone code for creating an ACBLscore game file.
March 7, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.

When working with Rails, one of the ‘features’ of Rails is the ability to add ‘TODO’ within the code. Other IDEs have the same concept.

In Rails, it allows the project manager or a developer to type

rake notes:todo

This generates a list of the TODO items (based on extracting the words from the code).

The TODO ability is a very powerful tool; one that developers were encouraged to use.

The electronic scoring device (Bridgemate) code though is C code. The words ‘Hack’ and ‘TODO’ do appear in this code. Put in by the developer to help others debug later (it wasn't me, though I would probably have done the same - well documented code is a big advantage) . The Bridgemate code depends on the Movement code (need to upload the movement when a pair event starts). Movement code was put on hold during the contract because of ACBL not paying bills and not delivering specs. So we put the Bridgemate code on hold as well as there was a dependency. To claim that this was expected to be completed code is a little bit of a stretch. The last commit of the wireless scoring code was October 2013. This is when the work was put on hold. This was a couple of months into the time period when ACBL stopped paying invoices. There was no way I was going to have someone work on this code until ACBL had paid invoices, and also delivered the missing specs on Movements. The specs didn't get delivered February/March 2014 (from memory). The wireless scoring code wasn't touched. So when you look at this part of the source code, you are looking at a snapshot during the middle of development when development was abruptly halted. You are not looking at production code delivered after the end of a normal contract.

I'm glad everyone seems to think that the Ruby code was well written. There's about 200,000 lines of it. When the code was delivered, ACBL had the same reaction - their reviewer said the same thing. Both you/Greg have said the same. Making sure it was well written, and well documented, was part of the original project plan because the plans all along were that ACBL were going to take over development/maintenance of the code.

Any attempt to rewrite ACBLscore is going to be the same amount of work as already put in. It seems a shame to waste all this code. But ACBL have got to get the legal stuff taken care of first.
March 7, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
You were not on the committee when you were given the (very brief) demo.

Since you were appointed to the committee, we haven't spoken or emailed.

I do appreciate you being willing to give up time at a tournament to see the code before your appointment - I only wish I could have shown it live.

There was much that was not shown. The best demo is going to be at a live tournament running in parallel with ACBLscore.

You are a knowledgable user of ACBLscore, at least more so than Greg or Uday.

If Greg isn't willing to take the ACBLscore v. Bridgescore+ challenge, are you?

Goal is to see how a new user would take to either system. Which system is better?

Same rules. You have the advantage that you are more familiar with ACBLscore. But we would still give you an ACBL TD to help with some of the more arcane features of ACBLscore. I'll take the same caddy to be named later who has had no training. Skews the challenge towards ACBLscore, but I'll still very comfortable with the odds.

Hopefully you will be in Gatlinburg - you can finally see what all the fuss is about.
March 6, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.

For Pair games:

Posted 6 months ago.

Second part.
Also posted 6 months ago.

Large pair event.
Also posted 6 months ago.

What's still needed:

1) EDMOV functionality. See previous posts. Developer had to be put on furlough as ACBL didn't pay invoices for many months to try to force a contract re-negotiation. 6-7 months. Same applies to complex movement times. Work done in parallel.

2) Masterpoints. Works for majority of time, but work put on hold until ACBL delivered mastertpoint assignment/eligibility specs. They never did. Would need updating for new 2015 rules. Not hard. Probably 1 elapsed man month to implement. Done in parallel with EDMOV.

3) Bridgemates. Some work still needed.

Based on where anything stands at the moment, pairs games would be the last item I would replace with Bridgescore+. ACBLscore is very good at handling all the different problems, there is a lot of implicit training. I would use KOs/Swiss for the TDs to learn how Bridgescore+ works, then add pairs later.
March 6, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
There is a lot to respond to in this thread.

Let me start with Greg's first paragraph:

“I've seen the software. There are copious youtube videos. We have a running version of the code in the cloud. We have the source code! I've tried to get it up and running on my Mac for experimentation, but after about six (!) hours of trying just to get the thing off the ground, I gave up. I did eventually get it to start serving web pages, but it wouldn't serve the CSS or Javacsript files, so it didn't look or function like the working cloud demo that we have, so I've just used the version in the cloud. One only has so much patience for installation nightmares, and I doubt you'll find many people more savvy than myself at developing and running web-based applications.”

Let me address each sentence:

1. “I've seen the software”

No, you haven't. I have never given you a demo. I don't know who has, but it's not me, or to the best of my knowledge anyone who was a developer of the software.

You have no idea of the abilities or capabilities of the software.

I have no idea what you have seen.

2. “There are copious youtube videos”

Yes. Lots. Any time someone claims something that's not true I post a YouTube video.

The latest was the ACBL CEO claiming (February 2015) that I never delivered the code to start a KO. This was shocking. It meant that whoever was giving him guidance for the last 10 months hadn't bothered to install the software or run it.

I re-installed the software from the DVD that I sent in May 2014 (er.. only took me 5 minutes), then created the following YouTube videos just for him.

This was part of the email:

Starting a KO:

Running a small Swiss:

Running a large Swiss, e.g. NABC

So… whoever was giving the ACBL CEO guidance on what the software could, or could not do, hadn't bothered to install it or run it.

These videos are what ACBLscore+ was capable of in May 2014.

3. “We have a running version of the code in the cloud”

So do I.
It's how I demo-ed to ACBL Management and BOD for the past many months.

From my server:

% uptime
22:59:30 up 746 days, 8:14, 4 users, load average: 0.22, 0.19, 0.16

For the non-technical, this means that my system on the cloud has been up and running for over 2 years without a reboot. Not bad. It's currently supporting 14 different versions of ACBLscore+/Bridgescore+ for districts/others and some web services. The first suggestion by ACBL support for any ACBLscore issue is to reboot the computer (seriously - it is what they do - and it does clear out many temp file/cache problems).

I have no idea what version you have running up in the cloud. Or where it is at. Or what version it is running.

Based on the fact that the CEO had been told that it doesn't support certain functionality, I'm going to be a little suspicious of what you have seen. Not saying it's not ACBLscore+, but there is a huge disconnect between what the ACBL CEO is claiming and what ACBLscore+ is. If you are looking at the same system that they have shown the ACBL CEO then we have a problem.

4. “We have the source code!”


But for some reason the CEO thinks differently.
What's going on?
Why is the CEO claiming something completely differently from what you are stating??

5. “I've tried to get it up and running on my Mac for experimentation, but after about six (!) hours of trying just to get the thing off the ground, I gave up.”

Very funny.

You/me/Uday spent 2+ hours on the phone. During this time instead of focusing on the phone call you were trying to install Bridgescore+ on your Mac. On several occasions we had to repeat the conversation because you weren't paying attention. Every smart person thinks they can multi-task, but no-one really can. It was rude and very frustrating.

On more than one occasion I asked if you'd bothered to read the Bridgescore+ Wiki. This detailed the one-time steps that you needed to do to before installing Bridgescore+ on your laptop. Instead of reading these notes, which were required reading and required updating for all developers, you were like a bull in a china shop believing you knew best. Managing smart developers is sometimes more challenging than regular developers because they have an “I know best” mentality. Following the instructions would have saved you a lot of time.

What you were trying to do was to install software from a year ago, on a newer Mac. In order for this to work, you needed to properly configure your Mac. This means running the correct RVM, having the correct Gems. It's all in the Wiki. You told me that ACBL had given you access to it. You just needed to read it and not believe that you knew everything.

With all developers on ACBLscore+ (and in fact most projects I manage), I had a rule where you needed to spend at least 15 minutes on a problem before you asked for help. After 15 minutes, and still stuck, I expected a call. Not saying I would know the answer, but I could either answer the question, point you to someone else, or help find the solution. You never called. This is basic support - you know I would have given you whatever support you needed.

You ran into a common problem that some new developers working on ACBLscore+ did.

All you needed to do was to ask or read the Wiki. Spending 6 hours is ridiculous. It is the same head-in-the-sand mentality ACBL has had. I'm surprised at you. It's OK to be willing to be admit that you don't know something and ask. I know that there's lots that I don't know and will be the first to admit it.

If you need me to, I can create yet another YouTube video. I can show copying the files from the DVD sent to ACBL. Then running the install script:


Then you start the program


This is exactly what I did when the CEO emailed me that ACBL did not have the software to start a KO. I went back to the DVD sent to ACBL in May 2014, copied the files, installed on my Mac laptop, ran the software and created the videos from that. The copying took 2 minutes, the installation about 30 seconds. If you want, I can show you in New Orleans, I will bring the original DVD sent to ACBL, my Mac laptop, and how easy it is to install and run.

I made it quite plain that I was happy to help you get this set up, even though all of this was being done without anyone on these forums being aware that you/me/Uday were talking, and as far as I was aware that you/me/Uday were talking without ACBL being aware of it.

6. “I did eventually get it to start serving web pages, but it wouldn't serve the CSS or Javacsript files”

Send me some details. We need to have these types of discussions in private, not public.

You are far more knowledgeable about CSS/JS than me; I don't claim to be an expert in either.

It sounds like someone may have provided you with a crippled version of ACBLscore+ or you didn't follow the instructions on the Wiki.

Please note that I have never give you a copy of ACBLscore+ (I just need ACBL to contact me, as I said in the phone call, so that I am not violating any NDA that is still in place). I have no idea what you are working from. ACBL still haven't called me, or emailed me, that it is OK to talk to you.

It's clear from the ACBL CEO that ACBL don't even know what they have with ACBLscore+. This is one of the reasons for the challenge..

Remember: ACBL has never asked me for a demo, or any help in setting up ACBLscore+ on any system that they have. Neither have you.

I made it clear to the ACBL CEO in an email last month that based on what he is being told, and what is on the DVDs that was sent to ACBL last year that there is a huge disconnect.

What you are claiming in your post is yet more evidence of this fact.

It seems that ACBL have been evaluating a system that was not delivered to them.

That makes sense to me - remember they are trying to discredit a system because the CEO/League Counsel screwed up the original contract (according to their new outside counsel) and are going to do anything to cover up this fact.

It also makes sense based on the various claims that you have made. Remember, I have never seen any ACBL analysis of ACBLscore+. I keep hearing rumors. Every time I hear another one, I post a YouTube refuting it. You've made yet another (public) claim.

It seems that I need to do the same with your 6 hour claim. I'm traveling at the moment. When I get back, I create a video, from start to finish of taking the software delivered to ACBL on the same DVD, installing it on a Mac (just like you) and running it.

7. “so it didn't look or function like the working cloud demo that we have, so I've just used the version in the cloud”

I have not seen the working cloud demo that you refer to.

Remember the ACBL CEO claims that it does not have the functionality that was delivered.

So it looks like you have been wasting your time.

The fact that it doesn't “look or function like the working cloud demo” is even more indicative of the fact that you may be looking at something that isn't ACBLscore+.

They should be identical.

Would you be willing to show me the version in the cloud that ACBL has been showing you??

8. “One only has so much patience for installation nightmares”

Me too.

Very politely, WTF you doing?

I need to post a YouTube video because there's clearly a massive disconnect between what I delivered to ACBL and whatever it is you are doing.

9. “I doubt you'll find many people more savvy than myself at developing and running web-based applications.”

Well, I'm one. Going back to 1995.

You/me puffing our chests at each other won't help.

a) I'll post a video on installing ACBLscore+. Hopefully this can help you. Please read the Wiki first. You made a common developer mistake - about 1/2 the developers on ACBLscore+ did the same. But they didn't waste 6 hours.
b) I'm very curious on why you have a different version in the cloud than locally. What is it that ACBL are showing you?
c) The offer to do a showdown in New Orleans still stands. Up for it?
March 6, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.

Writing on the wall started around summer 2013. ACBL stopped payment trying to force a renegotiation of the contract to make it a WFH. Robert admitted that ACBL stopped payments in Providence BOG.

I've got all the emails from ACBL regarding the legal reasons why they were dropping ACBLscore+, including their outside counsel opinion on ACBL's use of ACBLscore+ in May 2014. He said no, ACBL management/league counsel now have to find a reason not to use it. April 2014, ACBL put on their Facebook page how wonderful this new software is. May 2014, Facebook entry deleted. ACBL scrambling as they can't use this software they have spent all this money on. What is ACBL to do? Management/league counsel are the ones that were responsible for negotiating the original contract, apparently without outside review.

Ask the Board Technology Committee to review the emails from management to outside league counsel from August 2013 to May 2014.

The good news - if there is any - is that Hammond Software has rights to the code. I never intended to use it for Bridge - that's what ACBL were going to do; but if they are not going to use it, I see no reason not to make it available. You don't have to use it. I've worked on it since May 2014. It's now much more backwards compatible with ACBLscore.


Let me try and explain the estimates.


During the original contract, ACBL stopped payments, didn't provide specs. I had to put some developers working on critical path items on furlough. Critical path means exactly that. Every day of delay is a delay in final delivery. The EDMOV/movements was critical path from day one. This functionality had a 6-7 month delay. No matter how many resources are thrown at the project, there is still a 6-7 month delay - caused by ACBL. I am not going to back down from this number. So a final delivery, matching the contract requirements, is a minimum of 6-7 months away.

The original final delivery assumed that ACBL were going to provide 3 man years of developers during the ACBLscore+ contract so we can implement things differently (e.g. tournament finances, club finances, results). They provide 0 years.

So what I would do now for a final delivery is totally, totally different than what was in the original contract.

ACBL internally can't deliver on time. So a roll-out needs to be structured differently, i.e. a
roll-out that eases the transition from ACBLscore to a new system.

The good news…. other parts of the software are ready for release.

For a roll-out, I have more and more code that is backward compatible with ACBLscore.


I can start a KO, do all the PREGAME (ACBL terminology) then create a Gamefile.

I can create a gamefile with no PREGAME.

I can run a KO, then output an ACBLscore game file.

So we can transition at virtually any point from Bridgescore+ to ACBLscore.

My planned roll-out is very different. It would start on day 1. Start training TDs, move them off ACBLscore.

March 6, 2015
You are ignoring the author of this comment. Click to temporarily show the comment.
I've got 30+ years experience doing UI; including replacing legacy systems. Probably one of the reasons that ACBL hired me in the first place, so I'm comfortable with what is needed.

ACBLscore+ was ready for the first round of user comments - get some experienced TDs, working in a live setting. I learned with the ACBL TDs that we really need a live setting, with the stresses of getting event started/running; classroom setting did not work with them. During the contract, ACBL would rarely let me run the software in parallel in a live situation. It was only at my local sectionals and regionals, where my ACBL Point of Contacts (POCs) were not there, that we could do some real testing. Of course, we did no visible testing at NABCs. Very sad, you guys never got to see what it can do.

We did A/B testing. We did what one TD referred to as a Kobayashi Moru test. What was frustrating to me doing all of this was trying to explain to my ACBL POCs (there were several), why all this stuff is important. Yup, got some test background as well :-)

Over the last year, I've rolled out more and more functionality of ACBLscore+ (I still use < 30% of the code base) with ACBL TDs.

I must thank the TDs I've worked with; both during the contract and subsequent to the end of the contract. They have been fabulous. Willing to listen to new ways of doing things. Little stubborn at times, little obstinate, but willing to listen.

So many of the TDs have been trained and conditioned to do things a certain way that it is very difficult to explain how things can be done better. So much of what they do is based on how ACBLscore works, not on what is the most efficient way of doing things.

My standard test with TDs, and I can still recommend it to you, is go ask a TD how an event should be started. Let's take a KO or a Swiss (or even a pairs). What does a TD need to do. How would a TD design new software to start an event. I could even ask you, you are technology aware, bridge player - design software to start an event. EVERY TD, bar none, could only describe it in terms of how ACBLscore works at the moment.

What you need is someone willing to step outside the box, look at the problem from an objective viewpoint, figure out how it should work, then implement it.

Then you've got to train the TDs.

Let me give you a specific example:

ACBL stated in Providence that they are going to spend $600K on a variety of projects. One was to make it easier to a TD to start a KO event. The current ACBLscore process requires them to create a new event for each bracket. Let's take Gatlinburg, which may have 20 brackets. One TD has to create a game file with 20 events - each event a bracket. They have to manually create each event (bracket). It is about 1 minute per event, or about 20 minute to create a game file BEFORE you have started to do any name entry or anything.

This is what the current ACBLscore process is.

No-one has complained “in centuries”.

I've got a much, much better way with Bridgescore+. One of the reasons for putting this in the list of items to do was that Bridgescore+ is so much better.

OK. So…. I've got code that can easily create ACBLscore game files. It was trivial to create a new interface so that all you need to do is to specify the number of teams in each bracket and voila, got a game file.

See (0:59).

This is code I created after Gatlinburg. It's free. It's up on the Internet at

Username: td
Password: happy

I'll give you no training.

Go ahead, create an 8 bracket KO game file. Let's say bracket sizes are 9, 10, 11, 12, 13, 14, 15, 16 teams. See how long it takes you. Take this ACBLscore game file, read it in ACBLscore. Use it.

See for example.

Bring up ACBLscore. Do the same thing. Create an ACBLscore game file with 8 brackets.
See where I do exactly this (6:40)

Which is the better interface - ACBLscore or Bridgescore+

March 6, 2015

Bottom Home Top