Что могут программисты. Кто такие программисты? Нет, ну правда! Куда устроиться и о чем надо помнить

В последнее время профессия «программист» стала очень востребованной и популярной. А всё благодаря развитию информационных технологий, ведь без компьютера и Интернета сейчас очень сложно обойтись. В этой статье мы подробно расскажем вам об этом перспективном виде деятельности.

История

Мало кто знает, когда появился первый программист. История профессии уходит корнями в начало 19-го века. В 1804 году Жозеф Жаккар построил ткацкий станок. Именно он считается первым запрограммированным устройством, позволившим создавать узоры на тканях с помощью перфокарт.

Первое же вычислительное устройство, или Аналитическая программируемая машина, была разработана Чарльзом Бэббиджем. Однако он так и не смог её построить. В середине 1843 года Ада Лавлейс (дочь поэта Джорджа Байрона) написала для неё первую в истории программу, решающую уравнение Бернулли.

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

Первый программист

Хоть ни одна программа Ады Лавлейс не была запущена, её принято считать первым программистом (хотя по современным меркам, написание только одной программы не считается профессиональной деятельностью). В честь неё был назван один из универсальных языков программирования - «Ада».

А самым первым был «Планкалкюль», созданный немецким инженером Конрадом Цузе в 1941 году. К сожалению, история не сохранила имен первых профессиональных программистов (в отрыве от настройки аппаратуры компьютера). Это произошло потому, что в то время данная деятельность рассматривалась всего лишь как второстепенная наладочная операция.

Определение

Программист - это специалист, занимающийся разработкой компьютерных программ и алгоритмов при активном использовании специальных математических моделей. В зависимости от специализации программисты делятся на три категории:

Образование

Профессия «программист» есть в списке специальностей множества вузов. Если рассматривать столицу нашей страны, то самыми авторитетными являются: МГУ, МАИ, МЭСИ, МИЭМ, МИРЭА, МГТУ, МИФИ и МФТИ. Получить профессию программиста можно и в других мегаполисах. Дефицита с институтами (или филиалами), обучающими этой специальности, нет даже в маленьких городах. Согласно статистике, российские вузы ежегодно выпускают около 100 тыс. программистов.

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

Смежные карьеры

Для российских программистов (в отличие от зарубежных) допустимо наличие смежного образования. Они могут быть математиками, физиками, химиками и др. Кстати, очень популярной в последнее время стала профессия «инженер-программист».

Как показывает практика, получение смежного высшего образования не мешает быть им первоклассными IT-специалистами. Известно, что программистов из азиатских стран (Индонезии, Вьетнама, Китая) привлекают к массовому индустриальному программированию. А в тех областях, где нужны творческие решения, наиболее сильны российские специалисты. В первую очередь это обусловлено высоким качеством фундаментального образования.

На факультете кибернетики и высшей математики МГУ существует специальная программа двухлетнего обучения в вечернее время, позволяющая подготовить программистов с дипломом по смежным направлениям и специальностям. Помимо государственного диплома о дополнительной квалификации выпускники этой программы получают международные сертификаты. Также есть возможность дистанционного обучения через Интернет. Например, находясь в какой-нибудь провинции, можно получить престижную специальность «техник-программист» (профессия не очень популярная, но перспективная). Идём далее.

Функциональные обязанности

В России профессия «программист» (описание есть в разделе «Определение») не связана с разработкой новых приложений, операционных систем и программ по типу Adobe Photoshop или MS Office. Этим занимаются специалисты высокой квалификации из таких фирм как Oracle, Sun, Adobe, Microsoft и т. д. В отечественных компаниях подобные проекты большая редкость и почти все программы, которые ставят на свой ПК российские пользователи, созданы западными фирмами. Есть несколько отечественных фирм-разработчиков ПО, но их очень мало. Например, «Лаборатория Касперского», выпускающая антивирусные программы. Также созданием программного обеспечения занимается и ряд государственных структур: НИИ, конструкторские бюро космонавтики и военно-промышленного комплекса. Но опять же, их можно пересчитать по пальцам.

Большим спросом в России пользуются программисты-«прикладники»: сегодня любая компания нуждается в автоматизации бизнеса, в возможности вести учёт продукции, быстро обмениваться информационными сообщениями между подразделениями фирмы и работать по внутренней компьютерной сети. В соответствии с особенностями своего бизнеса, компании адаптируют, а если нужно, то и разрабатывают подходящие пакеты программ. Нужно понимать, что автоматизация бизнеса издательского дома и ресторана - это совершенно разные вещи. Помимо программного обеспечения некоторым фирмам необходим регулярный мониторинг налаженной системы и её модификация, на случай расширения бизнеса. Поэтому работодатели набирают программистов в свой штат. Но некоторые фирмы предпочитают заказывать автоматизацию бизнеса профессиональным IT-компаниям.

Великие и знаменитые программисты

Список их весьма обширен, поэтому мы назовем лишь наиболее известных:

  • Фаулер Мартин.
  • Рэймонд Стивен.
  • Таненбаум Эндрю.
  • Мацумото Юкихиро.
  • Кнут Дональд Эрвин.
  • Страуструп Бьёрн.
  • Мейер Сид.
  • Кей Алан.
  • Столлман Мэттью.
  • Хоппер Грейс.

Законы Мерфи для программистов

  • Вместо того чтобы в приступе злости молотить системный блок, все почему-то лупят по невинному монитору.
  • Настоящий программист поменял уже как минимум 3 облитых пивом клавиатуры.
  • В словосочетании «мышка-норушка» нет никакого смысла.
  • Программисты, испытывающие проблемы с настройкой кодировки, автоматически становятся неандертальцами.
  • Настоящий программист в случае голодовки может ещё в течение месяца питаться едой, выковырянной из клавиатуры.

О времена, о нравы. Сегодня в Тостере увидел тему, в которой человек признавался, что работая java-разработчиком он знает алгебру и геометрию на уровне 6 класса и просил посоветовать учебники. Этот запрос несомненно вызывает уважение - человек хочет учиться.

Начнём сначала. Я учился в хорошей физмат школе в 90-е годы. Читай между строк - по советской программе. На этом можно было бы и закончить, потому что далеко не все учились в хорошей физмат школе по советской программе, а значит я по определению страшно оторван от народа. И точно ничего не понимаю в жизни.

Да, кодить мы начали в третьем классе, и это был не Хогвартс , не лаборатория по прокачке яйцеголовых - все были обычные парни и девчонки с района. Совсем немногие с инженерными и научными кровями. У нас была крутая математика. А ещё крутой труд, физкультура и история. Всё было пропитано системностью. Вы знали в школе, что история это наука, систематизированная, наполненная внутренней логикой, укладываемая в таблицы и выводы? Знайте, это так. Вы знали, что русский язык описан настолько строго, что почти любую ситуацию в нём можно решить алгоритмически?

В старших классах мы форсировали матан да так, что потом пару курсов в ВУЗе можно было отдыхать. На чём многие, кстати, и погорели. И нет, не были гениями, мозг кипел, распределение оценок было такое же как и везде - двоечники, троечники, хорошисты, ботаны. Ботаны были гениями, это да. Ученики физмат школы не любили ботанов так же, как их не любят везде. Что ещё раз доказывает, что мы не были особенными. Это важно для последующего рассуждения.

На уроках информатики мы решали те же задачи из матана - находили корни уравнений, строили графики. Изучали принципиальное построение языков - типы, структуры данных, алгоритмы, работа с памятью, было немного Delphi и ООП. В основном, конечно же, Pascal. Для общего развития были C и Assembler. Немножко захлестнули БД под конец, конечно же с нормализациями. Изучали двоичную алгебру и делали по фану игры.

И даже не все это проходили, класс был поделён на Программистов и Пользователей. Пользователи учили HTML и фотошоп, сдавали сайт.

И мы всегда знали, что мы не программисты, мы так, школота. Программисты это те, которые пишут книги. Это те, кто создаёт ОС и реальный софт. Мы верили, что чтобы стать Программистом, надо телепортироваться куда-то в IBM или Microsoft. А ты даже функцию на непрерывность как следует исследовать не можешь - куда тебе.

У меня так сложилось, что я стал соприкасаться с программированием спустя более 10 лет после выпуска из школы. Всё поменялось - появился веб, куча каких-то странных слов и названий. Я точно, знал, что эти гении - Программисты, которые создают коммерческий продукт, ушли уже очень далеко, в какие-то параллельные космические миры, где мне их никогда не достать. Что я приду к ним, а они мне скажут: «Брат, какой тебе блог на PHP? Давай ка динамический массив мне через рекурсию организуй, тогда и поговорим.»

И ведь справедливо. Ведь я точно знаю, что программист это даже не профессия. Это специализация инженера.

Подозрения начали закрадываться, когда на Тостере я начал читать вопросы в духе «Нужна ли математика программисту?». И ответы в духе «решение рутинных задач для лендосов математики не требует».

И вот я вижу, что разработчик Java просит посоветовать школьный учебник по математике.
Я понимаю, что эта область испытывает голод по кадрам, что круг задач упростился, что порог входа низкий и т.д. Я согласен, что если человек выполняет работу, то он молодец, и пусть на здоровье это делает. Приносит пользу обществу, кормит семью и так далее. У меня вообще нет никакого высокомерия по отношению к разработчикам, матана не ведающим.

У меня вертится в голове старпёрский риторический вопрос: «А как же культура?». Я считаю, что этот вопрос вообще главный для вменяемого инженера, но это отдельная статья. Неужели творческое начало в программировании настолько уступило ремесленному, что важны только плоды и никто даже не заикается о корнях их питающих? Как вообще может приходить человеку в голову вопрос «нужна ли математика программисту»? И насколько вообще опошлено и девальвировано гордое звание Программиста? Неужели никто не говорит о культуре разработчика? Или мы дошли до того, что никто уже этого не понимает? Тогда откуда вы возьмёте этот ваш желанный идеальный код, если не из культуры мысли?

Друзья, скажите мне, что я старый (тридцати трёх летний) маразматик. Или подтвердите, что мир катится в какой-то ад. Предлагаю развернуть жаркую дискуссию в комментах. А то ведь, ничего не понятно…

UPD
Итак, после менее чем суток отчаянных ломаний копьев вырисовалась некоторая картина.
Это чисто мои выводы.
Пройдёмся по порядку.
Посвящается тем, кто прочитал пост и жаждет ринуться в бой, а читать 100+ комментов, конечно же, не досуг. Нижеследующий текст кое-что прояснит.

Цель первого поста
Почти все неверно поняли цель поста. Я нигде не утверждал, что программист без математики профнепригоден и не сможет работать. Я никого не обвинял, не принижал и не поливал грязью за их незнание маематики в каком-либо объёме. Моей задачей было выяснить, что думает сообщество на счёт профессиональной культуры программиста в том виде, в котором сформулировал её я. На этот факт обратили внимание минимум комментаторов.
Из чего я делаю следующий вывод.

Культура
По моим наблюдениям очень малая часть читателей готова воспринимать слово «культура», как содержательное понятие, имеющие для них смысл больший, чем сходить в театр или не плюнуть на соседа. Это не говорит ничего плохого о людях, это просто констатация некоторых фильтров восприятия. В случае, если понятие «культура» (как и любое другое понятие) имеет в сознании человека развитое содержание, он анализирует текст в связи со всем тем объёмом смыслов, которое это понятие несёт и дискутирует так же и на уровне этих смыслов. Абсолютное большинство комментаторов дискутировали со мной на уровне профпригодности и и решения производственных задач, вопрос о которых в исходном тексте ВООБЩЕ не поднимался. Если вы ещё раз перечитаете текст, то он весь подводит к последнему абзацу с вопросом «А как же культура?» Дальше по абзацу задаются вопросы, являющиеся смыслом и содержанием топика. Целый абзац вопросов исключительно по культуре, и никто не отвечает о культуре.
Я делаю вывод - в массе своей комментаторы вообще не понимают, о чём идёт речь, когда поднимается вопрос о культуре профессиональной деятельности.
Почему?
У меня есть своя версия, накину для разнообразия. Почти век у нас человека учили, что он - производственный кадр. Что частное ничтожно перед общественным. Что его общественная роль и есть его содержание. Что культура это лубок и правила поведения. Что если о состоялся, как работник, значит он достиг вершин человеческой эволюции. Эта матрица живёт своей жизнью в обществе, и пока никуда не собирается уходить. Сейчас в совокупности с рыночным целеполаганием в образовании (учу не во имя науки, а во имя трудоустройства), подогреваемым идеями индивидуального успеха и эффективности, любой сознательный гражданин понимает, что главное - заморочиться в своей узкой теме и ничего больше не видеть. Лучше всего начинать кодить раньше, чем ходить, а биологию с географией вообще выкинуть нафиг, потому что высокоуровневые решения типа гугла решат все проблемы.
И тут мы переходим к другой проблеме.

Образование
Образование массово воспринимается комментаторами, как курсы повышения квалификации. Если развить идею до предела, то получим, что школьное образование вообще не нужно. Читать и писать можно научится и так. А дальше сиди и пиши код, ведь даже HL++ проекты, как показывает жизнь, можно делать, не будучи профессором. Остальное гугли.

Скрестим полученные выводы для развития нашей мысли.
Такое отношение к образованию есть бескультурное отношение, что подтвердит любой специалист в образовании. Но поскольку слово культура для большинства комментаторов не имеет значения иного, как комплимент, а бескультурие иного, как оскорбление, то вряд ли этот тезис может быть понят верно.

Вторая проблема образования, и она более очевидна, состоит в том, что комментаторы в массе своей воспринимают математику как ещё одну область деятельности. Это как минимум значит, что математика преподавалась им в основном как алгебраический счёт и формулы, которые надо зубрить. Не как наука. Преподавать математику, как науку можно и в первом классе. Это всего лишь значит сделать упор на последовательные рассуждения, а не на зубрёжку. Хочу обратить внимание, что ВСЁ точное знание, в том числе и прикладное, основано на строгих формулировках определений и соотношений. Любое рассуждение строится на дереве если-то-иначе. Без этого аппарата даже html написать невозможно. Он встроен во всех нас по причине принадлежности к обществу, которое таким аппаратом оперирует. Математика - тренажёр по овладению этим аппаратом и ключ к эффективной работе с абстракциями любого уровня. Учитывая, что все инженерные профессии, в том числе и программирование, построены на математическом аппарате, странно называть её отдельным видом деятельности. Это показывает простое непонимание того, куда ты попал. Это может быть неважно с точки зрения решения рабочей задачи, но очень важно с точки зрения культуры.

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

Только зарегистрированные пользователи могут участвовать в опросе.

Основной задачей программиста является разработка алгоритмов и компьютерных программ. Конечно, вариантов и видов программ есть великое множество и чтобы лучше объяснить, чем занимаются программисты, приведем три их основные специализации:

  • Прикладные программисты — создают программное обеспечение для решения различных задач (редакторы, игры, бухгалтерские программы, CRM-системы и т.д.).
  • Веб -программисты (чаще всего, это программисты PHP) — Интернет — создают сайты, программы для управления системами сайтов или интернет-магазинов и т.п.
  • Системные программисты — разрабатывают операционные системы и оболочки для баз данных, а также решают другие подобные задачи.

Профессия программиста довольно многогранна. Названия специалистов часто зависят от того, на каком языке или на каких технологиях они разрабатывают программы. Например, существуют программисты Java, Delphi, Python, 1С , Android, JavaScript и т.д.

Места работы

В настоящее время программисты востребованы практически везде. Должность инженера-программиста может существовать:

  • На «обычном» предприятии.
  • В IT-компании, занимающейся программированием профессионально.

Также программисты могут работать на фрилансе, выполняя временные заказы для компаний, которые не готовы брать сотрудников на постоянную работу.

История профессии

Первая программа для аналитической машины написана еще в 1843 году дочкой Джорджа Байрона графиней Адой Августой Лавлейс, а первый программируемый компьютер заработал в 1941 году. Его запустил (а заодно придумал первый язык программирования) немецкий инженер Конрад Цузе.

Престижной и хорошо оплачиваемой профессия программиста стала в 1970-е годы, а с появлением и развитием Интернета добавилось огромное количество специализаций в программировании.

Обязанности программиста

В зависимости от специализации и решаемых задач, должностные обязанности программиста могут существенно различаться. Выделим основные:

  • Проектирование и разработка ПО.
  • Внедрение ПО и организация корректного взаимодействия с другими программами.
  • Поддержка ПО и помощь специалистам техподдержки в устранении ошибок.

Иногда функции программиста включают в себя тестирование программного обеспечения, но чаще этим занимаются тестировщики .

Требования к программисту

Предъявляемые работодателями требования к программисту, также могут варьироваться, но основные примерно таковы:

  • Знание необходимых в работе технологий и языков программирования (например, SQL, PHP, HTML и т.д.).
  • Опыт создания программ.
  • Умение составлять и читать ТЗ.
  • Умение разбираться в чужом коде.
  • Знание вспомогательных программ (например, системы контроля версий).

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

Образец резюме программиста

Как стать программистом

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

Тем не менее, окончить университет по профессии инженера-программиста будет совсем нелишним — почти все крупные компании требуют высшее образование.

Зарплата программиста

Доходы программистов, как правило, достаточно высоки. На текущий момент средняя зарплата программиста находится в районе 47 000 рублей в месяц. Хотя в Москве ставки могут достигать 150 000 рублей в месяц и выше.

Заработная плата программиста сильно зависит от опыта специалиста и умения решать сложные задачи. Сильные специалисты зарабатывают в разы больше новичков.

Материал из Википедии - свободной энциклопедии

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

Место программирования в обществе

Существует подготовка математиков-программистов по направлению «Математическое обеспечение и администрирование информационных систем» .

В конце 2000-х в России появилось новое направление подготовки программистов «Программная инженерия» . Областью профессиональной деятельности выпускников по этому направлению является индустриальное производство программного обеспечения . Данное направление подготовки отличается от подготовки инженеров-программистов по профилю «Программное обеспечение вычислительной техники и автоматизированных систем» тем, что общеинженерные дисциплины заменены дисциплинами из новой области знания инженерия программного обеспечения . Объектами профессиональной деятельности инженеров по производству программного обеспечения являются не программы и программные комплексы, а методы и инструменты разработки программного продукта , а также процессы жизненного цикла программного продукта .

Предметом деятельности программистов в науке является решение задач с применением методов прикладной математики и реализацией на ЭВМ (результатом деятельности является полученное при помощи программы решение задачи).

В России подготовка специалистов в этой области ведется по следующим направлениям:

Как вспомогательная деятельность программирование в настоящее время используется в широчайшем круге профессий.

Самообразование

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

Словоупотребление

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

По ошибке программистами порой называют системных администраторов и других специалистов ИТ .

Прикладные и системные программисты

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

История

Возникновение программирования как рода занятий и, особенно, как профессиональной деятельности трудно датировать однозначно.

Первыми аналогами программируемых устройств были музыкальная шкатулка и шарманка, программа записывалась на вращающийся вал. Тот же принцип двоичной системы, как и на перфокарте: звук воспроизводился выступом на валу («кулачком»), нет выступа - нет звука, кроме того, шарманка предусматривала смену программ и имела 6-8 запрограммированных мелодий.

Первым программируемым устройством принято считать жаккардовый ткацкий станок , построенный в 1804 году Жозефом Мари Жаккаром , который произвёл революцию в ткацкой промышленности, предоставив возможность программировать узоры на тканях при помощи перфокарт.

Первое программируемое вычислительное устройство, Аналитическую машину , разработал Чарльз Бэббидж (но не смог её построить). 19 июля 1843 года графиня Ада Августа Лавлейс , дочка великого английского поэта Джорджа Байрона , как принято считать, написала первую в истории человечества программу для Аналитической машины. Эта программа решала уравнение Бернулли , выражающее закон сохранения энергии движущейся жидкости.

В своей первой и единственной научной работе Ада Лавлейс рассмотрела большое число вопросов. Ряд высказанных ею общих положений (принцип экономии рабочих ячеек памяти , связь рекуррентных формул с циклическими процессами вычислений) сохранили своё принципиальное значение и для современного программирования. В материалах Бэббиджа и комментариях Лавлейс намечены такие понятия, как подпрограмма и библиотека подпрограмм , модификация команд и индексный регистр , которые стали употребляться только в 1950-х годах.

Однако ни одна из программ, написанных Адой Лавлейс, никогда так и не была запущена.

Аду Августу, графиню Лавлейс, принято считать почётным первым программистом (хотя, конечно, написание одной программы по современным меркам не может считаться родом занятий или профессиональной деятельностью). История сохранила её имя в названии универсального языка программирования «Ада» .

Первый работающий программируемый компьютер (1941 год), первые программы для него, а также (с определёнными оговорками) первый язык программирования высокого уровня Планкалкюль создал немецкий инженер Конрад Цузе .

Имена людей, впервые начавших профессионально выполнять работу собственно по программированию (в отрыве от наладки аппаратуры компьютера), история не сохранила, так как поначалу программирование рассматривалось как второстепенная наладочная операция.

Профессиональный праздник

Примечания

Для кого этот курс? Для тех кто хочет войти в мир программирования и совсем ничего в этом не понимает. В этом курсе мы не будем рассматривать конкретный язык программирования, а только общие понятия и основы разработки программ.

Профессия программист

Программист - это специалист, занимающийся разработкой алгоритмов и программ на основе математических моделей. Условно программистов можно разделить на три категории:

Прикладные программисты занимаются разработкой программного обеспечения, необходимого для работы организации. Например, сюда можно отнести программистов 1С.

Системные программисты разрабатывают операционные системы, интерфейсы к распределенным базам данных, работают с сетями. Специалисты этой категории являются самыми редкими и высокооплачиваемыми.

Web-программисты имеют дело с сетями, но, как правило, с глобальными, такими, как Internet. Они пишут web-интерфейсы к базам данных, создают динамические web-страницы. В отечественной кадровой практике часто применяется термин инженер-программист (ведущий).

Стать квалифицированным программистом непросто. Эта профессия требует логического мышления, математического склада ума, терпения, внимательности и вдумчивости.

Кроме того, программисту не преуспеть без постоянного, чаще всего самостоятельного, повышения своей квалификации и пополнения профессиональных знаний, а также буквально ежедневной тренировки в написании кода.

Работа в области программирования считается преимущественно мужской, но первым программистом является женщина. Это дочь знаменитого английского поэта Байрона – Ада Лавлейс. Именно благодаря ей появились первые приёмы управления вычислениями, которые до сих пор используются в современном программировании.

День программиста

11 сентября 2009 года Дмитрий Медведев подписал Указ № 1034, подготовленный Министерством связи и массовых коммуникаций Российской Федерации, который установил в России новый официальный профессиональный праздник - День программиста .

Согласно этому документу, День программиста празднуется в России на 256-й день года - 13 сентября, а если год высокосный - 12 сентября. Число 256 выбрано потому, что это количество целых чисел, которое можно выразить с помощью одного восьмиразрядного байта, а также это максимальная степень числа 2, которая меньше количества дней в году.

Что такое программирование?

В узком смысле слова, программирование рассматривается как кодирование - реализация одного или нескольких взаимосвязанных алгоритмов на некотором языке программирования. В более широком смысле, программирование - процесс создания программ, то есть разработка программного обеспечения.

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

Бит – единица измерения количества информации. 1 бит информации - это символ или сигнал, который может принимать два значения: включено или выключено, да или нет, высокий или низкий, заряженный или незаряженный; в двоичной системе исчисления это 1 (единица) или 0 (ноль).

Байт – единица измерения количества информации, равная 8 битам.

Архитектура компьютера – концептуальная структура вычислительной машины, определяющая проведение обработки информации и включающая методы преобразования информации в данные и принципы взаимодействия технических средств и программного обеспечения.

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

И проблему разных архитектур решает еще один транслятор: Компилятор - это программа, которая преобразует исходные тексты программ, написанные на языке программирования высокого уровня, в программу на машинном языке, «понятную» компьютеру. Полученный код, называемый исполняемой программой, можно устанавливать и запускать на нужном компьютере без дополнительных преобразований.

Псевдокод

У программистов есть еще один вариант языка, который называется псевдокодом. Это естественный язык, по структуре напоминающий язык программирования высокого уровня. Компиляторам, ассемблерам и компьютерам он непонятен, но помогает программисту определить порядок следования инструкций.

Четких правил для псевдокода не существует. Это своего рода переходное звено между естественным языком и высокоуровневым языком программирования. Пример программы «Здравствуй, Мир!» с помощью псевдокода:

Алг ЗДРАВСТВУЙМИР нач вывод ("Здравствуй, Мир!") кон алг ЗДРАВСТВУЙМИР