Лекция
Это продолжение увлекательной статьи про профессии для создания и обслуживания веб сайтов.
...
использоваться в качестве вспомогательной деятельности для решения иных профессиональных задач, либо же использоваться в непрофессиональной сфере (как инструмент решения задач или ради получения удовольствия от процесса программирования). Термин «программист» не обязательно подразумевает профессиональное образование или профессиональную деятельность.
Как основная профессиональная деятельность программирование используется в технической и в научной областях. В технике выделяются средняя техническая квалификация техник-программист (ранее «программист-лаборант») и высшая техническая квалификация инженер-программист. Предметом деятельности специалистов с соответствующей квалификацией (техников и инженеров) является проектирование, разработка и производство программного обеспечения, как промышленной продукции, удовлетворяющей заданным функциональным, конструктивным и технологическим требованиям (результатом деятельности является программное обеспечение). В России подготовка инженеров-программистов ведется по профилю подготовки «Программное обеспечение вычислительной техники и автоматизированных систем» направления «Информатика и вычислительная техника» .
Существует подготовка математиков-программистов по направлению «Математическое обеспечение и администрирование информационных систем» .
В конце 2000-х в России появилось новое направление подготовки программистов «Программная инженерия» . Областью профессиональной деятельности выпускников по этому направлению является индустриальное производство программного обеспечения. Данное направление подготовки отличается от подготовки инженеров-программистов по профилю «Программное обеспечение вычислительной техники и автоматизированных систем» тем, что общеинженерные дисциплины заменены дисциплинами из новой области знания инженерия программного обеспечения. Об этом говорит сайт https://intellect.icu . Объектами профессиональной деятельности инженеров по производству программного обеспечения являются не программы и программные комплексы, а методы и инструменты разработки программного продукта, а также процессы жизненного цикла программного продукта.
Предметом деятельности программистов в науке является решение задач с применением методов прикладной математики и реализацией на ЭВМ (результатом деятельности является полученное при помощи программы решение задачи).
В России подготовка специалистов в этой области ведется по следующим направлениям:
В Украине следующие кода специальностей в ВУЗах
Направление 12 Информационные технологии
специальность 12.121 Инженерия программного обеспечения
специальность 12.122 Компьютерные науки и информационные технологии
специальность 12.123 Компьютерная инженерия
специальность 12.124 Системный анализ
специальность 12.125 Кибербезопасность
Как вспомогательная деятельность программирование в настоящее время используется в широчайшем круге профессий.
В связи со значительным распространением в современном обществе вычислительной техники и, соответственно, программирования как рода деятельности в настоящее время потребность в профессиональных программистах в развитых странах и странах третьего мира значительно превосходит возможности высшего образования по подготовке на соответствующих специальностях, при этом предъявляемые квалификационные требования в бизнесе в большинстве случаев значительно у́же, чем подготовка по специальности в вузе (см. напр. ). В связи с этим, очень широко распространено самообразование программистов и профессиональная деятельность в области программирования без получения формального образования по соответствующей специальности, а специалистам, получившим программистские специальности, необходимо постоянно совершенствовать свои знания и умения и оперативно осваивать новые технологии.
Как указано выше, с точки зрения корректной терминологии человек может иметь (например) род занятий «программист», квалификацию «инженер-программист»,специальность «программное обеспечение вычислительной техники и автоматизированных систем» и должность «ведущий специалист». В разговорной речи, однако, слово «программист» нередко употребляется применительно ко всем этим понятиям.
По ошибке программистами порой называют системных администраторов и других специалистов ИТ.
В настоящее время, как и ранее широко применяется классификация программистов на прикладных и системных. Прикладным называется программист, программы которого предназначены для решения прикладной задачи, удовлетворяющей потребности конечного пользователя и, по замыслу классификации, лежащей вне компьютерной сферы. Системным называется программист, программы которого предназначены для обеспечения работы компьютера и используются другими компьютерными специалистами.
Возникновение программирования как рода занятий и, особенно, как профессиональной деятельности трудно датировать однозначно.
Часто первым программируемым устройством принято считать жаккардовый ткацкий станок, построенный в 1804 году Жозефом Мари Жаккаром, который произвел революцию в ткацкой промышленности, предоставив возможность программировать узоры на тканях при помощи перфокарт.
Первое программируемое вычислительное устройство, Аналитическую машину, разработал Чарльз Бэббидж (но не смог ее построить). 19 июля 1843 года графиняАда Августа Лавлейс, дочка великого английского поэта Джорджа Байрона, как принято считать, написала первую в истории человечества программу для Аналитической машины. Эта программа решала уравнение Бернулли, выражающее закон сохранения энергии движущейся жидкости.
В своей первой и единственной научной работе Ада Лавлейс рассмотрела большое число вопросов. Ряд высказанных ею общих положений (принцип экономии рабочих ячеек памяти, связь рекуррентных формул с циклическими процессами вычислений) сохранили свое принципиальное значение и для современного программирования. В материалах Бэббиджа и комментариях Лавлейс намечены такие понятия, как подпрограмма и библиотека подпрограмм, модификация команд ииндексный регистр, которые стали употребляться только в 1950-х годах.
Однако ни одна из программ, написанных Адой Лавлейс, никогда так и не была запущена.
Аду Августу, графиню Лавлейс, принято считать почетным первым программистом (хотя, конечно, написание одной программы по современным меркам не может считаться родом занятий или профессиональной деятельностью). История сохранила ее имя в названии универсального языка программирования «Ада».
Первый работающий программируемый компьютер (1941 год), первые программы для него, а также (с определенными оговорками) первый язык программирования высокого уровня Планкалкюль создал немецкий инженер Конрад Цузе.
Имена людей, впервые начавших профессионально выполнять работу собственно по программированию (в отрыве от наладки аппаратуры компьютера), история не сохранила, так как поначалу программирование рассматривалось как второстепенная наладочная операция.
В 2009 году в России официально утвержден день программиста, который ежегодно празднуется 13 сентября (в високосный год — 12 сентября) — то есть празднование Дня Программиста приходится на 256 день года. Это число не случайно: оно получается от возведения двойки в восьмую степень. Именно такое количество чисел можно выразить с помощью одного восьмиразрядного байта.
Тестировщик — специалист, занимающийся тестированием программного обеспечения (ПО). В его обязанность входит поиск вероятных ошибок и сбоев в функционировании программы. Тестировщик моделирует различные ситуации, которые могут возникнуть в процессе использования программы, чтобы разработчики смогли исправить обнаруженные ошибки.
Тестировщик также создает и использует разнообразные входные данные, предусмотренные и не предусмотренные авторами программы. Его деятельность обычно подразумевает как минимум три модели поведения:
Схематически отношения между QA, QC и тестированием можно представить так:
QA (англ. Quality Assurance) — обеспечение качества продукта — это, собственно, весь комплекс процессов, обеспечивающих качество, наиболее обширное понятие. QA интегрировано во все этапы разработки: от описания проекта до тестирования, релиза и даже пост-релизного обслуживания.
Специалисты QA создают и реализуют различные тактики для повышения качества на всех стадиях производства: подготовка и установка стандартов, анализ качества, выбор инструментов, предотвращение ошибок и постоянное усовершенствование процесса.
QC (англ. Quality Control) — контроль качества продукта — это часть комплекса QA, которая отвечает за анализ результатов тестирования, поиск ошибок и их устранение. QC ориентирован на проверку конкретного продукта, в него входят различные процессы, такие как анализ кода, технические обзоры, анализ дизайна, тестирование и прочее.
Тестирование — это уже непосредственно процесс проверки результатов работы на соответствие установленным требованиям. А тестировщик — это специалист, который занимается такой проверкой. Он тестирует компоненты продукта или весь продукт целиком на предмет ошибок или неточностей разработки. Тестирование — один из ключевых процессов в системе обеспечения качества.
Специализацию тестировщиков можно разделить по направлениям: тестирование безопасности, производительности, юзабилити; а также по методам написания тестов: ручное и автоматизированное тестирование.
В случае создания программ с различными уровнями защиты и прав доступа для пользователя количество возможных моделей поведения («начальник», «подчиненный») существенно увеличивается.
Альфа-тестер — пользователь программы, находящейся на стадии разработки («Альфа-версия», как правило не полнофункциональная), взявший на себя в какой-либо форме обязательства по полному или частичному тестированию программы, а также, возможно, об особых условиях ее копирования и использования.
Бета-тестер — пользователь программы, взявший на себя обязательства по тестированию программы («Бета-версия»), в том числе опубликованных официально версий и так называемых «релиз-кандидатов» программы.
В разных случаях отношения альфа- и бета-тестеров с разработчиками могут оформляться или не оформляться. Ряд пользователей добровольно участвует в бета-тестировании программного обеспечения.
Некоторые утверждают , что специфика профессии заключается в видимом однообразии и монотонности трудового процесса; по мнению других , тестирование является творческой исследовательской работой (в противовес стандартизированной разработке). Одной из особенностей профессии является возможность удаленной работы, причем расстояние часто не имеет значения (тестировщик может находиться в другом городе или стране по отношению к разработчику и заказчику). Это позволяет рассматривать данную профессию как одну из возможных ступеней для получения опыта и накопления знаний в удаленной разработке ПО с целью дальнейшей работы программистом.
Необходимыми качествами являются логическое мышление, хорошая память, умение учиться и адаптироваться к существующим задачам, быстро переключаться с одного типа задач на другой. Не менее важны терпение, усидчивость и умение работать в команде (при XP-тестировании).
Кроме того, тестировщик выступает одновременно и как пользователь, и как эксперт, а потому должен иметь определенный склад мышления: уметь воспроизводить поведение пользователя продукта и анализировать поведение системы, входящие параметры и полученные результаты с точки зрения инженера.
Основными требованиями к соискателю, как правило, являются:
При этом требования к уровню необходимых навыков и специализации варьируются в зависимости от тестируемого программного обеспечения.
Не следует путать с CEO.
Поиско́вая оптимиза́ция (англ. search engine optimization, SEO) — комплекс мер для поднятия позиций сайта в результатах выдачи поисковых систем по определенным запросам пользователей с целью продвижения сайта. Обычно чем выше позиция сайта в результатах поиска, тем больше заинтересованных посетителей переходит на него с поисковых систем. При анализе эффективности поисковой оптимизации оценивается стоимость целевого посетителя с учетом времени вывода сайта на указанные позиции и конверсии сайта.
По оценке РАЭК рынок поисковой оптимизации в 2012 году равнялся 10,24 млрд. руб. Прогноз на 2013 - рост рынка на 19% .
Поисковые системы учитывают множество параметров сайта при вычислении его релевантности (степени соответствия введенному запросу):
Все факторы, влияющие на положение сайта в выдаче поисковой системы, можно разбить на внешние и внутренние. К внутренней оптимизации (касающейся исключительно внутренней системы сайта) — относится работа, направленная на общее повышение качества сайта, пользы, которую он приносит посетителю. Сюда можно отнести работу над структурой проекта, над облегчением восприятия контента и непосредственно над качеством этого контента. Значение общего количества таких факторов в большинстве источников колеблется в районе 200. Функциональный подход к поисковой оптимизации, направленный на подгонку определенных факторов к их целевым значениям, отошел в прошлое в связи с усложнением алгоритмов поисковых систем — стоимость "балансирования" десятков факторов многократно превышает стоимость создания изначально качественного ресурса.
Внешние факторы делятся на статические и динамические:
Методы внешней поисковой оптимизации:
Лицо, проводящее работу по оптимизации веб-сайтов, называется оптимизатор.
Существуют различные SEO-сервисы, позволяющие облегчить труд оптимизаторов и дать владельцам сайтов возможность продвигать их самостоятельно.
К факторам, понижающим рейтинг сайта, относятся:
Вместе с появлением и развитием поисковых систем в середине 1990-х появилась поисковая оптимизация. В то время поисковые системы придавали большое значение тексту на странице, ключевым словам в мета-тегах и прочим внутренним факторам, которыми владельцы сайтов могли легко манипулировать. Это привело к тому, что в выдаче многих поисковых систем первые несколько страниц заняли сайты, которые были полностью посвящены рекламе, что резко снизило качество работы поисковиков. С появлением технологии PageRank больше веса стало придаваться внешним факторам, что помогло Google выйти в лидеры поиска в мировом масштабе, затруднив оптимизацию при помощи одного лишь текста на сайте.
Однако оптимизация развивается вместе с поисковыми системами, и в современных результатах поиска можно видеть все больше и больше коммерческих сайтов с искусственно раздутой популярностью, особенно по коммерчески привлекательным запросам (транзакционные запросы).
Методы оптимизации можно разделить на три класса в соответствие с их цветом (белый, серый и черный), однако последние события в мире поисковых систем дают понять, что это разделение весьма условно — любая манипуляция определенными параметрами сайта может быть расценена поисковиком как крайне нежелательное влияние на его результаты. Так, любая попытка манипулирования поисковыми результатами прямо запрещена в лицензии на использование поисковой системы «Яндекс». «Белые» оптимизаторы и маркетологи пользуются рекомендациями Яндекса по созданию «хороших» сайтов . Таким образом, продвигают сайт, не нарушая правил поисковых систем.
Белая оптимизация — оптимизаторская работа над ресурсом без применения официально запрещенных каждой поисковой системой методов раскрутки ресурса — без влияния на поисковые алгоритмы сайтов. Это включает в себя работу над самим сайтом, а именно над внутренней навигацией и содержимым, и работу с внешней средой сайта, то есть продвижением оптимизируемого сайта путем обзоров, пресс-релизов, регистрации в социальных закладках, партнерских программ и т. п. с указанием ссылок на сайт. Следует отметить, что «Яндекс» предупреждает о том, что если какой-либо метод оптимизации не является официально запрещенным, это не значит, что его можно применять.
К серой поисковой оптимизации можно отнести добавление большого количества ключевых слов в текст страницы, зачастую в ущерб читабельности для человека, например: «Масло масляное, потому что в нем есть маслопроизводные масляные жиры». При этом оптимизация заключается сначала в подборе ключевых запросов для конкретной веб-страницы, определении размера целевого «SEO-текста» и необходимой частоты ключевых слов в нем, а затем в формулировании предложений и фраз, содержащих в себе ключевые запросы определенное количество фраз в разных падежах, единственном и множественном числе, при разных формах глаголов. Эти параметры могут потом корректироваться по результатам выдачи поисковых систем. При этом задача SEO-копирайтера — написать оригинальный текст таким образом, чтобы подобная оптимизация была как можно менее заметна «живому» читателю (и в частности асессору поисковой системы). Широко применяется также включение ключевого запроса в HTML-теги title, h1, alt, атрибут meta keywords.
Другой пример серой оптимизации — дорвей без редиректа, когда при попадании на дорвей не происходит автоматического перенаправления на продвигаемый сайт.
Серая оптимизация отличается от черной тем, что она официально не запрещена, но ее использование все равно может быть расценено как неестественное завышение популярности сайта. Некоторые поисковые системы, например, Google, могут временно или постоянно заблокировать такой сайт. То есть, конечное решение о том, являются ли методы продвижения законными или нет, принимает специалист — модератор поисковой системы, а не программа.
К черной оптимизации относятся все методы, которые противоречат правилам поисковых систем. Среди них можно выделить следующие: использование дорвеев(страниц и ресурсов, созданных специально для роботов поисковых систем, зачастую с большим количеством ключевых слов на странице), прием под названиемклоакинг (пользователю отдается одна страница, легко читаемая, а поисковому роботу — другая, оптимизированная под какие-либо запросы), использование скрытого текста на страницах сайта, использование «однопиксельных ссылок».
Не следует путать с копирайтом — правом на копирование, авторским правом.
Копира́йтинг (англ. copywriting от copy — рукопись, текстовый материал + write — писать) — профессиональная деятельность по написанию рекламных и презентационных текстов. Таковыми можно считать все тексты, которые прямым или косвенным образом рекламируют или популяризируют товар, компанию, услугу, человека или идею.
Специалистов, которые занимаются копирайтингом, называют копирайтерами. .
В английском языке слово «копирайтинг» является неологизмом и в словарях не представлено. «Копирайтер» (copywriter) трактуется как «писатель рекламных и пропагандистских текстов» (a writer of advertising or publicity copy).
В Рунете под копирайтингом иногда понимают создание текстов для нужд SEO или написание статей нерекламного характера .
Копирайтинг не имеет никакого отношения к термину «копирайт» (англ. copyright), также пришедшему из английского языка, у которого совершенно другое смысловое значение.
Деятельность, называемая копирайтингом, существует очень давно. Она возникла вместе с торговлей, поскольку реплики продавца — уже результат копирайтинга.
Тексты, придуманные копирайтерами советской эпохи, были и остаются весьма популярными, многие из них превратились в крылатые выражения («Курить — здоровью вредить», «Болтун — находка для шпиона», «Строить прочно — сдавать досрочно» и т. п.). Многие рекламные слоганы также известны до сих пор: «Трехгорное пиво выгонит вон ханжу и самогон», «Лучших сосок не было и нет. Готов сосать до старых лет», «Нигде кроме, как в Моссельпроме», «Храните деньги в сберегательной кассе» и пр.
Востребован в прямой рекламе — той, которая призывает здесь и сейчас сделать нужное действие: заказ, звонок, клик. Подобные тексты побуждают пользователя незамедлительно купить товар или воспользоваться услугой.
В рамках рекламного агентства копирайтер работает в паре с арт-директором. Такой симбиоз называют креативной парой.
Одним из пионеров копирайтинга в директ-маркетинге считается Джон Кейплз (1900–1990). Его книга «Проверенные методы рекламы» («Tested Advertising Methods») впервые вышла в США в 1932 году и претерпела многочисленные переиздания благодаря своей непроходящей актуальности. Недавно она вышла и на русском языке.
Джозеф Шугерман, другой знаменитый рекламный специалист в области директ-маркетинга конца ХХ века, признан одним из самых эффективных и плодовитых копирайтеров Америки. Его книга «Искусство создания рекламных посланий. «Справочник выдающегося американского копирайтера» («The Adweek Copywriting Handbook: The Ultimate Guide to Writing Powerful Advertising and Marketing Copy from One of America's Top Copywriters») также не раз переиздавалась в России.
Как элемент брендинга работает на отсроченную продажу — закрепление образа торговой марки в сознании потребителя или просто создание нужного имиджа товара, услуги, компании, человека, идеи.
Иногда под копирайтингом понимают любое написание текстов для веб-сайтов или даже любое написание текстов на заказ. Тем не менее, такое употребление слова не отражено в словарях , и считается неточным. В последнее время в сфере написания текстов на заказ набирают обороты интернет-магазины и биржи готовыхтекстов.
Как разновидность web-копирайтинга — SEO-копирайтинг.
Иногда в веб-разработке под «копирайтингом» подразумевают степень уникализации, противоположную рерайтингу . Точнее называть степень уникализации авторским текстом[прояснить].
Копирайтером работает главный герой постмодернистского романа Виктора Пелевина «Generation «П» Вавилен
Контент-менеджер — редактор сайтов, в обязанности которого входит их полноценное наполнение текстовой, графической и другими видами информации (контентом). Работа контент-менеджера заключается не только в обработке огромного объема данных, но и в управлении множеством фрилансеров.
Не стоит путать профессии постера и контент-менеджера. Постер только лишь размещает информацию на сайте. Контент-менеджер составляет технические заданиядля сотрудников, контролирует выполнение работы и проверяет ее результаты.
Фактически, контент-менеджер — это управляющий интернет-проектами, человек, который берет на себя ответственность за развитие веб-ресурса.
Плюсы профессии:
Минусы профессии:
Для успешного развития веб-разработчика ожидает масса инструментов. Эта статья поможет быть в курсе современных тенденций.
В этой части рассматривается сборная солянка из двух направлений: верстка и чистый фронтенд. Зачастую на данные направления нанимают разных работников, т. к. это две разные вакансии. Но чтобы полноценно развиваться, веб-разработчику необходимо знать весь "набор". Не упускайте из виду базовый скилл по CSS и HTML, ведь очень нелепо выглядит "мидл", не знающий, как сделать маркированный многоуровневый список.
Этот путь сложный и более трудоемкий, чем предыдущий, но есть и плюсы – больший оклад и интереснее задачи. Существует огромное множество бекенд-языков, так что специалисту будет не сложно развиваться в направлении серверной части приложения. По традиции все начинают изучать бекенд с PHP, но вы можете изменить установленные правила – Java, популярнейший Python, Ruby или Node.js помогут создать "правильный" бекенд.
Путь DevOps самый длинный и сложный. Чтобы его покорить, придется хорошенько потрудиться. Он требует знания нескольких крупных ключевых навыков: администрирования, сети и программирования. Если DevOps инженер – профессия вашей мечты, но вы не имеете всех необходимых знаний – не отчаивайтесь. Нужно немного усердия и терпения.
По админству вам нужно будет разобраться в ОС Windows, Linux и FreeBSD – это самые распространенные системы, используемые для различных целей. Из сетей достаточно будет пройти первый базовый курс Cisco-академии и потренироваться на эмуляторе GNS. А по программированию строго обязательно знание ООП, алгоритмы паттерны и типизация – остальное постигнете в процессе.
Известно, что скорость и качество работы программистов различного уровня может отличаться на порядок. Многие из нас сталкивались с тем, что программисты срывали сроки, а также с классическим примером того, как качество разработки влияет на проект. Наверняка почти все, кто имеет дело с разработкой, слышали, как программист, только что увидевший чужой код в незнакомом проекте, говорит: «Нужно все переписать!». Чаще всего это происходит при сочетании двух факторов: один программист написал код плохо, а другой не в состоянии его понять. Отсюда берет начало требование «умение читать чужой код», которое часто встречается в описаниях вакансий для программистов.
С течением времени некачественно написанные проекты становится почти невозможно поддерживать. Известно, что если команда разработчиков пишет «плохой» код и не придерживается единой архитектуры, ее производительность может со временем снизиться вплоть до нуля. Ситуация становится тупиковой: внесение мелких изменений занимает слишком много времени, а на глубокий рефакторинг руководство соглашается с большим трудом, и дело разрешается в лучшем случае выделением дополнительного бюджета, а в худшем — увольнением команды или даже закрытием проекта.
По статистике, из 20 человек, называющих себя программистами, только один действительно им является. Сначала мы рассчитывали статистику по количеству человек, которые в состоянии на очном собеседовании на листе бумаги написать код по задаче, аналогичной FizzBuzz. Потом мы поняли, что такой проверки недостаточно, и валидировали эту статистику другим способом.
FizzBuzz -это набор вопросов, которые позволили бы мне быстро идентифицировать таких «недопрограммистов». Вопросам такого рода я дал название «FizzBuzz questions», в честь игры, в которую играют британские школьники. Типичный FizzBuzz question выглядит следующим образом:
Напишите программу, которая выводит на экран числа от 1 до 100. При этом вместо чисел, кратных трем, программа должна выводить слово «Fizz», а вместо чисел, кратных пяти — слово «Buzz». Если число кратно и 3, и 5, то программа должна выводить слово «FizzBuzz»
Нормальный программист должен написать такую программу на бумажке за пару минут. Но вот что интересно: многие люди с профильным образованием вообще не могут справится с этой задачей. Были даже случаи, когда
продолжение следует...
Часть 1 1.7. Профессии для создания и обслуживания веб сайтов
Часть 2 Образование - 1.7. Профессии для создания и обслуживания веб сайтов
Часть 3 Составляющие профессионализма - 1.7. Профессии для создания и обслуживания веб
Часть 4 Тесты с ответами для самопроверки онлайн - 1.7. Профессии для
А как ты думаешь, при улучшении профессии для создания и обслуживания веб сайтов, будет лучше нам? Надеюсь, что теперь ты понял что такое профессии для создания и обслуживания веб сайтов, верстальщик, тестировщик, бекэнд, фронтэнд, фуллстек, программист, devops и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Основы интернет и веб технологий
Комментарии
Оставить комментарий
Основы интернет и веб технологий
Термины: Основы интернет и веб технологий