Hi,
I just felt compelled to reply to this and say the following (I'm biased, as you will see, towards 40% ergo keyboards):
1. People will tell you a lot of different things. Some ppl will say that they can't use anything smaller than a 60%, and some ppl will say that they need F1-F12 for coding. The fact is that people have different preferences, and the likelihood that you will end up with your "end game" immediately is low. However, you can, as some of my colleagues, just choose a good enough keyboard, like a kenisis or what ever, and then just leave it alone. However, there are programmers using e.g. the Corne and Kyria keyboards without any problems. The [Miryoku](
https://github.com/manna-harbour/qmk_firmware/blob/miryoku/users/manna-harbour_miryoku/miryoku.org) keyboard layout is popular (and can be changed from colemak dhm to dvorak), and as you can see the keymap does have all the keys you need, but not using many keys, you can also see that you can use the keymap on a lot of different keyboards by simply not using all the keys available. Ultimately all this is a personal choice.
2. I code in Vim mostly and have my workflow in i3. I use colemak dhm with default bindings in vim etc. I use 40% keyboards, and don't use the "uncomfortable" keys. Now I'm typing on a let's split, but I don't use the 6 outer keys (3x2) on R1. 40% keyboards are nice in the way that you are moving the keys to your fingers instead of moving your fingers to your keys. When writing on a full size board I didn’t like how I had to move my hand in order to reach the Esc key in Vim, sure you can remap it to, say, CapsLock, but the problem will continue with other keys. I downsized to a 60% board and really enjoyed it, although the travel distance still can feel long to, e.g., the standard backspace position. A 40% keyboard solves these issues, however you will have to get comfortable using layers.
Thomas at Splitkb has written a nice blogpost about smaller keyboards,
https://blog.splitkb.com/how-to-work-with-small-keyboardsThere are some good discord channels for ergonomics etc, e.g., splitkb's
Edit: I will also recommend ortholinear layouts with potential column stagger (like the kyria or corne), but this again is a personal choice i guess.. there's also a github repo with a lot of split keyboads:
https://github.com/diimdeep/awesome-split-keyboards