Маю науковий ступінь з інформатики. Це було чудово для відкриття дверей, отримання роботи. Що стосується того, щоб допомогти мені в професійній галузі програмування на C # .NET (найпопулярніша платформа та мова в тій галузі, в якій я працюю, якщо не цілі Сполучені Штати , а також найпопулярніша ОС у світі ), це навряд чи корисно.
70% + коду написано на С (оскільки вбудованих пристроїв більше, ніж додатків високого рівня). Відповідно до популярних пошуків роботи, таких як кістки або індекс TIOBE, Java є найпопулярнішою мовою програмування для підприємства (оскільки існує більше резервних серверів Unix / Linux, ніж серверів Windows.) Є більше смартфонів і планшетів (обчислювальна платформа майбутнє) із запуском якогось варіанту Linux або Mac OS, ніж Windows, запрограмованого на що-небудь крім C # або .NET.
Подивіться на свій маршрутизатор вдома, подивіться на свій мобільний телефон, подивіться на комп'ютер всередині свого автомобіля, подивіться на чудернацьку мікрохвильову піч вдома, на контролери всередині вашої домашньої системи кондиціонування, всередині телефону та на робочий факс та принтер / сканер. Подивіться на кількість комп'ютеризованих приладів (які перевищують системи вікон.)
Як ви думаєте, вони запрограмовані на C #?
Якщо ви справді вірите, що .NET або C # - найпопулярніші платформи у світі, ви можете повернутися до школи CS та попросити повернути гроші.
Чому, на вашу думку, це допомагає вам як програмісту у вашій професійній кар’єрі (поза носієм алгоритму prims, щоб справити враження на якогось інтерв'юера)?
Можливо тому, що в програмуванні є набагато більше, ніж в розробці базових динамічних веб-сторінок та корпоративних додатків? Для цього вам навіть не потрібен ступінь бакалавра, достатньо АА - я знаю, тому що я почав свою кар’єру програмування зі ступенем АА і повільно, але впевнено працював у КС, а потім працював у середній школі , працюючи штатним розробником .
Є вбудована розробка, є розробка драйверів пристроїв, є розробка операційних систем, є розробка алгоритмів, сигналів, комунікацій, мережевих протоколів, розробка двигуна бази даних, розробка файлової системи, розподілених обчислень, компіляторів. Не дослідження, а реальна робота в комерційних організаціях. Заборонивши природньо обдарованих, людина зазвичай не може зламати її в жодному з цих галузей промисловості без ступеня КС (іноді навіть із ступенем бакалавра).
Людина, яка отримує ступінь CS та приділяє їй увагу, знає це. Як тобі цього не зробити?
У сучасній світовій адаптації швидкий розум, міцне спілкування, OO та основні навички дизайну дозволяють розробнику писати програмне забезпечення, яке прийме клієнт.
ОО виникло через КС. І більшість людей, які думають, що вони роблять ОО, навіть не можуть зробити хорошої роботи. Просто погляньте назовні та подивіться на шалений стан програмного забезпечення (зокрема, у Java та .NET, не кажучи вже про PHP.) Твердий фон CS (або випускник якоїсь інженерії) не гарантує 100% хорошого розуміння ОО та аналітичні навички, але це, як правило, допомагає. Інакше, не маючи базового тла CS, зазвичай це червоний прапор, коли мова йде про ОО та аналітичні навички. У нас є достатньо емпіричних доказів у галузі, щоб підтвердити це твердження.
Ці навички лише знімаються в програмі cs.
Залежно від програми CS та залежно від студента. Принаймні для мене я бачив безліч хороших курсів з дизайну, аналізу OO, комерційних інструментів та практик, ми мали спільні курси з місцевими компаніями та стажуваннями, корпоративними проектами та дослідженнями, технічними написаннями. Вибачте, я не можу пов'язати чи зрозуміти це твердження.
На мій погляд, читати книгу C # на 500 сторінках від Wrox пропонує набагато корисніший набір навичок, ніж 4 роки курсів комп’ютерної математики.
Знову ж таки, залежно від роботи, яку ви виконуєте. Навіть на підприємстві я використовував свій CS, щоб фактично виправити речі або вдосконалити. Все, що стосується моделювання, архітектури, розподілених обчислень, безпеки та високої продуктивності, високої доступності та відмовостійкості. Я вивчив усі ці речі в CS.
Там немає нічого поганого у використанні книги Wrox , щоб отримати конкретний контекст , конкретної технологію набір навичок. Я сам так роблю. Але мій досвід роботи з CS дає мені контекст для роботи. Без мого досвіду роботи CS все, що я міг би зробити, - це програмування, кодування (що все, що я міг би зробити, коли на початку своєї кар'єри я мав тільки ступінь АА).
Багато хто не згоден.
Дивно, чи не так.
Отже, чому важливий ступінь інформатики?
Як ви думаєте, хто придумав google, hadoop, cassandra або високопродуктивні двигуни бази даних? Як ви думаєте, хто пише ядро ОС Windows? Як ви думаєте, хто програмує улюблені інструменти, якими ви користуєтесь для розробки C #.
Я впевнений у тому, що інструменти, які ви використовуєте для розробки C #, за цим стоїть хлопець CS.
Вам потрібен ступінь CS чи ні, залежить від типу роботи, яку ви виконуєте, типу роботи, яку ви хочете виконати, типу роботи, яку ви здатні виконувати.
На підприємстві та веб-розробці багато роботи, яка не потребує ступеня CS. Я це надаю. Я також знаю, що світ програмування набагато ширший, ніж лише ці два поля, при цьому багато полів (більшість з них насправді) потребують ступеня CS або більше.
У вас є ступінь CS, як ви не знаєте, що це таємниця.