Незовсім згоден щодо повної непотрібності в/о для програміста. Так, більшість вам тут скаже, що ніхто ніколи в їхньому житті на той диплом ні разу не глянув. Справді, роботодавець, приймаючи працівника на роботу, дивиться, в першу чергу, на його попередній досвід роботи за фахом. Складніше, коли такого досвіду нема — тоді вже звертають увагу на всі решту деталей, роботодавцеві потрібен хоч якийсь аргумент, що оця людина з вулиці справді впорається з роботою. Диплом може бути таким аргументом (чи просто факт, що людина навчається на старших курсах і щось трохи програмувала в універі на лабах), але на першу роботу влаштовуватися завжди важко — будь-який програміст з роком-двома комерційного досвіду завідомо має перевагу перед вами. В принципі, це ж стосується комп'ютерних курсів (не всі з яких однаково круті, хоча як джерело актуальних фахових знань вони справді часто виграють перед в/о, де при більшому навантаженні акцент робиться на загальній перевірці студента на здатність вчитися).
Альтернатива освіті (чи доповнення до неї) — свої власні розробки. Наприклад, для веб-розробників та дизайнерів має значення портфоліо — тобто, зразки попередніх робіт (які, до речі, необов'язково мають бути комерційними — це може бути й якісно зроблений навчальний проект, чи, там, веб-сторінка для друга). Аналогічним чином, програміст може писати щось для себе й викласти потім на github'і — якщо його проект достатньо крутий, його буде не соромно згадати в своєму резюме.
Ще можливий третій шлях — поступово перекваліфікуватися з однієї спеціальності на іншу безпосередньо на своєму робочому місці (наприклад, гіпотетично, від роботи слюсаря до роботи зі станками ЧПУ, написання програм для ЧПУ, і далі в напрямку роботи з мікроконтролерами; або ж вашій майстерні потрібна сторінка в мережі — маючи досвід самопідготовки, ви можете її зробити, не звертаючись до професійних веб-розробників, і далі включити її до свого портфоліо). Проте, це залежить від конкретного місця роботи — не скрізь такий розвиток кар'єри можливий.
Англійська мова (попри те, що мені не подобається її фетишизація) таки справді має значення — можливо, навіть більше, ніж в/о за фахом чи ваші опенсорсні проекти. Враховуючи, що українське ІТ націлене на аутсорс (тобто, написання програм для закордонних замовників), володіння англмовою стає не менш важливим для програміста, ніж фахові знання. Плюс необхідність читати документацію англійською (навіть російські переклади не завжди є в готовому вигляді, вже не кажучи про українські).