It may look like someone threw a handful of colored sticks on a black table, but this is the PC board that will go into my gutted Canon P170-DH calculator:
The mechanical outline, mounting holes, vacuum fluorescent display pads, and positions of the keypad contacts should be correct within a half-millimeter. The heavy gray lines that appear to partition the board are the locations of the support ribs on the bottom of the calculator shell that help support the PCB against the pounding of the keypad buttons.
The green square in the middle of the board is the Xilinx Spartan-6 LX9 FPGA; green pads mean it's on the back of the board. The 6x1 connector footprint at the top left is for the JTAG programming interface to the FPGA. The 20x2 connector is intended to allow me to plug my logic analyzer into the board through a ribbon cable; all free (and some semi-free) pins will be wired to this connector to maximize my debugging capabilities. The alternative would be the Xilinx ChipScope debugger which works through the JTAG, but I don't have the budget for that.
Clearly this isn't complete, given that there are parts that haven't been placed yet. Some circuitry hasn't even been added to the schematic, like the external serial interface. There's plenty of room for it, as long as I'm careful to avoid putting a via through a keypad footprint or a component under a support rib.
I figure I'm about a month away from sending this out for fabrication. When it's ready I'll probably use JLCPCB in China. I can get 5 boards from them for less than half the cost of one through US or European fabricators. If it was a matter of saving $5 or even $10, I'd buy locally (OSH Park does a great job), but when we're talking over $200 I'm going with the least expensive place with a good reputation.
BTW, this is all being done with the KiCad v5.0.0-rc2-dev pre-release. There are a few bugs still on the critical list, but it's remarkably stable. The v5 release fixes many of my biggest complaints about KiCad, and the developers are being very proactive about fixing problems as they learn of them. I've submitted about 25 bug reports thus far, most fairly minor (though one was graded a medium priority) and many were fixed within a day or two of being reported.