Мой взгляд на эволюцию в программировании

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

Итак, у истоков программирования стояли высокие мужи из академических кругов. Все эти фортраны, форты, самаллтолки, лиспы задали очень высокую планку для программистов. Разработка програм была делом нелегким, из-за несовершенства операционных систем, отсутствия общепринятых стандартов, многообразия платформ. Далее, — эпоха C. Еще дальше, когда количество кода в приложениях стало лавинообразно увеличиваться, а организовывать разработку команд программистов, стало гораздо сложнее, при том, что порог вхождения необходимо было уменьшать. Постепенно наступала эпоха ООП. Бизнес и конкуренция требовали многократного использования кода и высокой скорости разработки без ущерба качеству. Мало-помалу программные компоненты, библиотеки, модули стали играть очень важную роль, и постепенно особенности языка стали уходить на второй план. При плюс-минус аналогичном синтаксисе все популярные языки были очень похожи. Появились всевозможные средства визуального проектирования и программирования (VB, delphi, java, c#). Производители операционных систем, в свою очередь, пытаясь облегчить жизнь программистам, старались реализовать максимум функционала компонент на уровне системы, сделав софт «легче», «быстрее» и по возможности более жестко привязанным к платформе. С другой стороны, программисты, пытаясь облегчить процесс разработки, унифицировать его стали реализовывать всевозможные программные микроплатформы, фреймворки, скрывая за программными абстракциями всевозможные технологии, аппаратные и программные платформы, предоставляя программистам весьма высокий уровень абстракции и позволяя фокусироваться на конкретных бизнес-задачах.

Мы живем в очень интересное время. Похоже, производительность процессоров не будет расти так быстро, как это было на протяжении последних тридцати лет, и программистам придется решать проблемы производительности «ростом вширь». C другой стороны, обилие платформ и языков заставляет абстрагироваться программистов еще больше, в этом направлении появляется еще одно новое (или правильнее было бы сказать, хорошо забытое старое) веяние: dsl (domain specific language), специализированные языки разработанные для решения конкретных задач. Огромным преимуществом dsl, является максимальный фокус на предметной области решаемой задачи и максимально абстрактный подход, при том что конечная платформа зависит лишь от среды интерпретации. В связке с хорошим IDE этот подход позволит предоставить пользователям настолько простой язык, для решения их задач, насколько они сами того захотят (или ли же визуальную среду разработки), а программистам полную свободу по выполнению пользовательских сценариев. Надо сказать что написание dsl внутри языка было популярным уже в 60е годы, в среде программистов на лисп, но этот подход настолько опередил время, что не прижился в широких массах программистской среды и только сейчас набирает, как мне кажется, обороты. В принципе, уже сейчас, заметно сильное разделение между программистами «скриптописателями» и «платформостроителями», а со временем, по мере того как уровень среднего пользователя подрастет этот разрыв станет еще более очевидным.

Как бы то ни было, уверен, мы еще застанем и увидим эти перемены.

Comments

comments

Leave a reply:

Site Footer

Sliding Sidebar

About Me

About Me

Для кого этот блог?

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

Что заставило меня создать его?

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

Немного о себе.

Мой первый серьезный опыт в IT это работа над desktop приложениями в компании «Эксперт-Софт». У истоков её стояли несколько амбициозных и талантливых молодых людей, с огнем в глазах и желанием работать «как майкрософт». То чем мы там занимались вполне могли бы сегодня назвать «стартапом». Рук было откровенно мало, поэтому приходилось заниматься всем: кодированием на Delphi, написанием скриптов на VBA, дизайном, вёрсткой и поддержкой вебсайта, работой над рекламной полиграфией, проектированием интерфейсов и БД. Работы было много, но запал был велик, команда очень разношерстная, гармонично дополняя друг-друга в решении нетривиальных задач. Благодаря тому что пришлось попробовать многое, постепенно вырисовалось понимание того чем хочется заниматься, и как. Софтверным программированием я был сыт по горло. Массы проблем десктопного софта в вебе просто не было, по определению. Зато был четкий фокус на дизайне, юзабилити, скорости. Поэтому когда пришла пора уходить из «Эксперт-Софт», я без всякого сожаления стал искать работу как разработчик для web. Поскольку городишко у нас не очень большой, выбор был практически предопределен. Так я стал работать в «Оникс-Системз», где и продолжаю работать поныне. За время работы в компании я как разработчик принимал участие в работе над несколькими десятками проектов. Несколько десятков проектов было сделано мною как фрилансером. Самым большим проектом в котором я сыграл роль менеджера, считаю свою семью. Также довольно большой проект мы сейчас поднимаем с командой разработчиков (на данный момент команда состоит из четырех php разработчиков, одного flex кодера и тестировщика). Отсюда, большой интерес к современным практикам и методологиям, разным подходам в управлении командой, повышению эффективности и качества работы. По мере сил, вдохновения и свободного времени, я буду писать об этом.

Если у Вас возникли какие-то вопросы ко мне лично, буду рад если Вы свяжетесь со мной:

e-mail:
skype: denis.sheremetov
Старый сайт, с музычкой и флешом

Прочая онлайновая деятельность: