Там, где в предложении ничего не нужно сравнивать, PG не знает, что включить в результаты.Предложение where должно иметь значение true / false.
просто замените
<%= f.collection_select :program_id, Program.where('id'), :id, :name, {}, {class: "input-md form-control mb-20" } %>
на
<%= f.collection_select :program_id, Program.all, :id, :name, {}, {class: "input-md form-control mb-20" } %>
Если у вас возникли проблемы с некоторыми данными Программы в ваших данныхbase, добавьте столбец как статус в таблицу программ и внесите здесь изменения как
<%= f.collection_select :program_id, Program.where("status =?", true), :id, :name, {}, {class: "input-md form-control mb-20" } %>