Какой ноутбук взять для програмирования, имея не самый большой бюджет?
Не очень понятно кому и под какие задачи нужен ноутбук, работодатель требует, чтобы ты приходил со своим?
Почему именно ноутбук а не стационарный компьютер?!

только ответив на эти вопросы можно что то рекомендовать, иначе гадание на кофейной гуще

p.s. если игры, а точнее потребность в дискретном GPU отсутствует, то есть интересный способ, временно, пока не накопишь денег на нормальное железо, пользоваться облачными услугами.

Покупаешь самый дешевый компьютер, главное требование - нормальный монитор, арендуешь виртуальную машину в облаке с почасовой оплатой, настраиваешь резервное копирование (либо если сервис уменьшает аренду во время выключения машины) и пользуешься с помощью удаленного управления.

Достоинства
 - возможность гибко подстраивать стоимость владения. выбирая под задачи более или менее мощное железо, а уж для чтения и просмотра видео хватит локальной машины любой
 - оплата за пользование взымается частями а не разом как это происходит при покупке готового железа
 - низкий шум, низкое энергопотребление, мобильность (при условии наличия интернета)

Недостатки
 - сильная зависимость от интернета, плохой или отсутствующий сводит на нет все бонусы
 - многим не очень комфортно работать со слегка лагающим интерфейсом, особенно это заметно, если нужно использовать CAD или графические приложения (когда на экране не тексты а сложные изображения)
 - требования интернета повышают стоимость владения, особенно когда он нужен быстрый
 - если подобный способ использования затянется, то через год-три, в зависимости от частоты использования, совокупные затраты превысят стоимость готового нормального железа, но при этом по окончании, у тебя не останется ничего, когда как схема - взять кредит и купить нормальное железо будет по деньгам сравнима с этой схемой но по окончании выплат железо останется у тебя (шансы его поломки после гарантийного срока никуда не деваются, мало того сейчас производители делают так специально, закладывая ограниченный срок службы в железо)
 - требуется нетривиальная настройка, все решаемо но нужно будет думать к примеру о скриптах управления облачным сервисом, чтобы к примеру автоматически отключать машину в облаке если ею не пользуешься

p.p.s. теперь вишенка на торте, купив нормальны производительный смартфон (android само собой), например выбрав позапрошлогодний флагман (в цене он будет дешевле примерно раза в два от своего времени) и miracast hdmi донгл, можно подключить его к любому монитору, usb хаб или выбрать bluetooth перефирию, позволит подключить мышку и клавиатуру, можно использовать схему удаленного управления без заметных вложений, это работает очень неплохо, проверено, есть ряд заморочек с выбором miracast донгла, но все решаемо.

т.е. в конце концов тебе не нужен стационарный компьютер, а тебе нужен только монитор и клавиатура с мышью.
Фигассе банк, который требует приносить свое железо :) А потом удивляемся - там слили базу, там слили базу...