Что выбрать для изучения программирования под веб с нуля сегодня?

Здравствуйте.


Если бы вы сейчас захотели начать учиться веб-программированию, то с чего бы вы начали? Какой язык, фреймворк, технологию выбрали бы?


Я спрашиваю из личного интереса — хочу быстро научиться современным инструментам и реализовывать свои задумки.


С обычным программированием я дружил с детства: бейсик и ассемблер на спектруме. Потом технический вуз (а учиться я начал в конце 90-х), в котором: функциональное программирование на паскале, немного ассемблера x86, а после объектное на Delphi, немного С++, и даже чуть-чуть экзотического ЛИСПа. Но жизнь с ложилась так, что научиться именно программированию для веб мне не удалось.


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

Но мне не удается понять процесс: как можно создать приложение, которое будет выполнять нужные мне функции.


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


Я умею верстать (хотя и тут мои знания уже устарели), но не понимаю как работает анимация, например, или управление блоками на странице или реакция на действия пользователя. Я знаю, что все пользуются JQuery для этого и он уже вытеснил Javascript, но не понимаю как все работает.

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


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


Я хочу заняться самообразованием в этом направлении.


Подскажите, что сейчас стоит читать, изучать? Может быть есть толковые курсы или мастер-классы?

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


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


Я неспроста в начале спросил о том, что именно вы бы начали изучать с нуля сейчас. Не вижу смысла «изобретать велосипеды», когда можно «ехать на скоростных поездах». Когда от изучения «матчасти» и первых строчек кода до несложного сайта или сервиса отделяет минимально возможное время.


Спасибо.


PS посвящается дню учителя. :-)
  • Вопрос задан
  • 37809 просмотров
Пригласить эксперта
Ответы на вопрос 10
anathem
@anathem
Руби он Рейлс или Питон на Джанго :)
Ответ написан
@gleb_kudr
Работает все до безобразия просто.
1. Есть html код. Это как форма в делфи, только более формализованная — разметка страницы. На самом деле под десктоп сейчас те же самые технологии, только используются не html, а другие разновидности XML.
2. Есть клиент-сайд программирование — это интерактивные элементы формы без обращения к серверу. Т.е. это какой-то код, который рулит статикой формы и превращает ее в динамику. Язык тут один — javascript и множество примочек к нему.
3. Есть сервер-сайд. Чтобы наполнить всю эту динамику данными, отдавать новые формы и т.д. нужно их где-то хранить и отдавать на сторону клиента. Вот для этого используется серверное программирование — боевой скрипт + база данных. Языки программирования тут используются самые разные. Их основные отличия:
— Экосистема (используемые БД, сервера, да даже IDE)
— Способы запуска на сервере боевых инстансов.
— Всякие языковые особенности (это менее важно на самом деле).

Для веб-программирования вам нужно освоить html+javascript+ любую серверную экосистему (язык+БД+тулзы для разработки и администрирования) и знать, как это склеивать вместе.
Ответ написан
Комментировать
Также можно питон на Flask
Ответ написан
Комментировать
geeek
@geeek
Посмотрите на php, rails, asp.net, python. Что больше понравится на том и валяйте. Ну и JQuery конечно же. Лично от себя советую asp.net, — научитесь c#, это позволит вам писать не только веб приложения, но и все остальные(мобильные, десктоп и тд) без переучивания.
Ответ написан
SLY_G
@SLY_G
журналист, переводчик, программист, стартапщик
Я бы снова perl изучил, из фреймворков — catalyst, если не нужен фреймворк, то хотя бы moose для ооп.
perl сейчас не в моде, но умирать он не собирается. Документации, книг и главное, модулей различных под него — море.
python и ruby — динамично развивающиеся языки, но это не делает их лучше по-умолчанию.
Ответ написан
Комментировать
rekzi
@rekzi
Web-разработчик
«что все пользуются JQuery для этого и он уже вытеснил Javascript» — неверное утверждение.
Связка JS+PHP мне кажется наиболее стандартной.
Ответ написан
Bandicoot
@Bandicoot
Вась-программист
HTML-CSS-JS-JQuery
PHP-Laravel
Ответ написан
Комментировать
ajaxtelamonid
@ajaxtelamonid
Laravel
Ruby On Rails конечно же. Хотя бы ради понимания общей структуры, все остальные веб-решения на других языках так или иначе копируют рельсы. Потом можно будет легко мигрировать на любую платформу, хоть на php с фреймворками, хоть на python-django, хоть на node.js с railwayjs, хоть на эрланг с ChicagoBoss.

Правда, для комфортной работы нужна линух-подобная ось. Если вы на винде, то придется научиться разворачивать линух на virtualbox и работе с ним по сети.
Ответ написан
Комментировать
@potan
Функциональный программист
Для быстрого начала под веб хорошо подходит Coffeescript. Он достаточно простой и проектировался с учетом опыта джаваскрипта.
Ответ написан
Комментировать
Посмотри здесь курсы + хорошее комьюнити позволит быстро определиться и научиться.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы