What does it mean to publish the machine code?
Machine Code in the sense used is what otherwise would be called a HEX-Listing or HEX-Dump. The most compact form a program could be published and distributed - it was the time before one could just download a file or walk to your local computer store (or Walmart) to buy some media with that file. Not to mention that a good number of users did not have any peripherals.
Machine code listings are the earliest form of 'binary' software distribution, no matter if printed in a magazine or as punch tape (*1).
Why programmers used to publish machine code?
It's less about programmers as magazines managing their pages. While it's no issue to have a page or two of assembly source (or BASIC or PASCAL), anything past the most simple application would take a whole book.
Just take the BASIC in question. Micro Soft's 1978 6502 version consisted of 6,955 lines (*4) of source code. Printed in a magazine this will fill a good 100 pages (*5).
In contrast Intel-Hex printed as two columns at 70 lines will 'store' 2.2 KiB per page, so an 8 KiB Basic can fit on 4 pages including some headers and explanation.
So, why does Mr. Gates refer to this at all?
At the time it was common to circulate software as Hex-Listing either in paper tape form, or as print out. Hobbyists shared their programs that way on their meetings. Mr. Gates is directly referring to this practice which of course would undermine his sales.
*1 - Punch tape based software distribution was usually not made using binary encoding but as loadable tape according to a CPU manufacturer format like Intel-Hex (*2,*3), Motorola S-Records or MOS' format, or computer manufacturer format like Extended Tektronix Hex.
*2 - Like Tiny-BASIC was distributed
*3 - Extended by several companies, like Zilog, and used until today - even for brand new systems like the BBC MicroBit with its 'Universal Hex Format'
*4 - Byte used for Assembly listings an extended satzspiegel of ~70 lines per page - almost too small to read.
*5 - An impractical amount, even for a magazine like Byte. Its 1/1978 issue had less than 200 pages with a good 50+% being advertisement.