Технологии Microsoft в теории и практике программирования

Современный уровень развития компьютерной индустрии и все возрастающее проникновение информационных технологий в повседневную жизнь общества предъявляют все большие требования к ИТ-специалистам – они должны обладать   большим объемом фундаментальных знаний и практических навыков, позволяющих легко ориентироваться в море информации, правильно и своевременно анализировать ее и принимать на ее основе важные решения.
Эти характеристики особенно важны для разработчиков программного обеспечения.
Сегодня уже недостаточно простого умения писать грамотные программы. Прежде всего, создание программных продуктов уже давно перестало быть уделом одиночек, и требует навыков работы в коллективе, умения защищать свои идеи и прислушиваться к мнению соратников по команде. При таком подходе уникальный опыт и идеи каждого программиста находят свое воплощение в конечном программном продукте.
Кроме того, современным программистам необходим целый ряд профессиональных навыков, таких как умение быстро разбираться в сложных предметных областях, способность находить общий язык с представителями других отраслей, а также желание предлагать инновационные решения, позволяющие автоматизировать или целиком упразднить рутинную деятельность.

Введение и постановка задачи
Основы теории и технологии построения интеллектуальных систем
Рационализация согласованности в облаках
Математическое моделирование течений вязкой жидкости
Основы визуальной алгоритмизации
Эффективная разработка программного обеспечения
Методы предотвращения ошибок


О программном обеспечении

Несмотря на тот факт, что еще год или два назад я рыдал о том, что классические Windows программы сделали ручкой будущему, однако время от времени студенты шлют мне email с просьбой дать совет о том, как строить карьеру. A ведь сейчас сезон приема на работу, поэтому я подробно изложу свои стандартные рекомендации, которые они смогут прочесть, посмеяться и выбросить.
К счастью, большинство студентов достаточно смелы, чтобы никогда не стесняться спрашивать советов у старших, что в области вычислительной техники (Computer Science) весьма уместно, потому что старшие склонны говорить устаревшие глупости, подобные этим: “спрос на операторов превысит 100 000 000 к 2010 году” или “lisp программисты сейчас очень востребованы”.
Я тоже понятия не имею о чем говорю, когда даю советы студентам. Я так безнадежно отстал, что не могу постичь AIM (AOL Instant Messenger) и продолжаю использовать (о ужас!) старомодную вещь, называемую “email”, которая была популярна в те дни, когда музыка выходила на плоских круглых пластинках, называемых “CD”.

Джоэл о программном обеспечении
Все под контролем, или баллада о счастливых пользователях
Безболезненные функциональные спецификации

Теоретические основы крэкинга
Программирование микроконтроллеров MCS-51
Заметки о программировании
Логическое программирование

Производственное и функциональное управление от MRP к ERP и CSRP
Функциональное и операционное управление
Система планирования MRP II
Процессы MRP II
Современные методы управления ресурсами предприятия

Разработка программ с открытыми исходниками как особый вид научных исследований
Функциональное программирование
Погружение в технику и философию gdb
Программирование - вопрос/ответ
Стохастические генераторы псевдослучайных последовательностей

Системное программирование

Программы и программное обеспечение
Определение (ГОСТ)
Программа - это данные, предназначенные для управления конкретными компонентами системы обработки информации (СОИ) в целях реализации определенного алгоритма.
Определения даются по: ГОСТ 19781-90. Обеспечение систем обработки информации программное. Термины и определения. - М.:Изд-во стандартов, 1990.
Обратить внимание: программа - это данные. Один из основных принципов машины фон Неймана - то, что и программы, и данные хранятся в одной и той же памяти. Сохраняемая в памяти программа представляет собой некоторые коды, которые могут рассматриваться как данные. Возможно, с точки зрения программиста программа - активный компонент, она выполняет некоторые действия. Но с точки зрения процессора команды программы - это данные, которые процессор читает и интерпретирует. С другой стороны программа - это данные с точки зрения обслуживающих программ, например, с точки зрения компилятора, который на входе получает одни данные - программу на языке высокого уровня (ЯВУ), а на выходе выдает другие данные - программу в машинных кодах.

Программы и программное обеспечение