1. A computer program product comprising a computer readable storage medium having a computer readable program stored thereon, wherein the computer readable program, when executed on a computing device, causes the computing device to: initialize a non-volatile memory system comprising a plurality of non-volatile memory portions to be programmed with data values; seed one of the plurality of non-volatile memory portions to form a seeded non-volatile memory portion such that writing a first set of data values to an unseeded non-volatile memory portion within the plurality of non-volatile memory portions results in a reduced programming time and writing a second set of data values to the seeded non-volatile memory portion results in a reduced programming time, wherein seeding one of the plurality of non-volatile memory portions comprises programming the one of the plurality of non-volatile memory portions with a binary seed value having at least one zero bit; receive a data portion to be written to the non-volatile memory system; identify one of the plurality of non-volatile memory portions to write the data portion to based on a number of ones to be converted to zeros for each data byte of the data portion; and write the data portion to the identified one of the plurality of non-volatile memory portions, wherein writing the data portion comprises converting fewer than six ones to zeros for a given data byte of the data portion.