1. Я не люблю HTML или о том, за что я его люблю.

    Сразу хотелось бы сказать: я не веб-дизайнер, не веб-программист и вообще не очень то хорошо владею HTML/CSS/JS. В последнее время, работая с Windows Azure более плотно познакомился с JS; все активнее пользуясь тумблером, да изучая потихоньку Wordpress и с намеками на изучение Joomla я стал знакомиться плотнее с HTML и CSS. Конечно, периодически встает вопрос о необходимости данных технологий – все-таки я намерен связать свою жизнь именно с разработкой ПО. Однако, это все: Интересно и Необходимо.

    С интересом все в принципе понятно: «новые» для меня технологии, методы работы, определения и методологии. К тому же, данная отрасль не просто популярна, она составляет на сегодняшний день здоровую конкуренцию программному обеспечению, ведь все больше вычислений выходит в облако и все больше программ выходят в виде web-интерфейса. И не так уж много переходят обратно. Тут же и вспоминается главная дилемма компаний при выходе на мобильную платформу: мобильная версия сайта или мобильное приложение? Ответ неоднозначен, пусть и размусолен всеми, кому не лень.

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

    Перед началом, хотелось бы уточнить, что в большинстве случаев под аббревиатурой HTML будет пониматься не сколько чистый язык разметки, а комплекс из HTML, CSS, JS и в некоторых случаях PHP.

    Классика

    Что первое приходит на ум? Конечно же то, что HTML – популярнейший и вездесущий язык разметки. Интернет преследует нас везде, и в большей своей степени он представлен именно с помощью HTML. Не знать HTML сегодня для программиста, пожалуй, в какой-то степени постыдно, ну или во всяком случае неловко. Никто конечно не требует способности написания крутого сайта с нуля на HTML 5 с интерактивным дизайном, использующим JS, подтягивающим данные с БД при помощи PHP и все это асинхронно по методологии какого-нибудь Винни-Пуха. Но базовые вещи воспринимаются как должное.

    Лично мне HTML в базовом варианте не кажется чем-то сложным. Даже является в какой-то степени скучным. Серьезно изучать его для меня нет заинтересованности, да и времени. Сложнее CSS, однако поняв подход становится много проще изучать его в дальнейшем. Почему же мне скучен HTML? Видимо потому что это язык разметки. Конечно сейчас с PHP и JS он все больше обрастает функциональностью и вычислительной мощностью. Однако для меня это до сих пор язык разметки. Довольно странный, тяжелый в отладке и капризный язык разметки.

    Андеграунд

    К чему же это все разглагольствование? Зачем стоило так много говорить вступительных слов и упрямо твердить о своей нелюбви к HTML? А все это к тому, что я действительно люблю HTML. И люблю его по той причине, что это, как мне кажется, одна из самых абстрактных технологий из всех. Методология MVVM, которую я как можно больше пытаюсь использовать в своих приложениях сейчас (хотя скорее выходит MVC), по сравнению с тем, что происходит в HTML, это верхушка айсберга. Попробуем разобраться.

    Почему же HTML такой абстрактный? Первой особенностью для меня (если не сказать «откровением») был тот факт, что уже на уровне построения самой страницы фактически идет разделение на две составляющие: элементы и вид. Мы размещаем элементы, отображающие некоторые данные: предположим под тегом <p> размещаем абзац текста:

    <p>Здесь содержится крайне замысловатый и очень интересный текст, глубокий по содержанию и идее.</p>

    Однако, мы здесь представляем лишь данные. Никаких указаний об отображении, цвете текста, отступах и прочей дизайнерской лабуде здесь не наблюдается. Конечно же, мы можем указать часть определенных свойств сразу же в коде страницы, однако это не считается хорошим тоном, да и не является удобным. Сегодня уже априори подразумевается, что HTML шагает неразлучно с CSS. И именно CSS является тем инструментом, что дает нам первый «уровень» абстракции – на уровне (назовем по-пафоснее) View->Element.

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

    Следующий уровень абстракции появляется благодаря псевдоклассам CSS и новичку в списке используемых инструментов - JavaScript. Данный уровень подразумевает манипулирование данными: это такие «события» как «:hover», «:focus» или «click». Мы создаем поведение для определенных типов элементов не взирая на их содержание. Мы уже имеем не статичность данных, а получаем возможность манипулирования ими. Изменения их свойств, причем не только внешних, но и самих данных. Если раньше мы были сдержанны и позволяли себе лишь управление внешним видом данных в статичном варианте, то теперь, осмелев, мы покушаемся на управление и самими данными. Воздействие на происходит на Model, по сути являющуюся содержанием страницы. То есть за пазухой мы уже имеем уровень под кодовой формулой View->[Model + Element].

    Ну и конечным аккордом выступает абстракция от самих данных. Если на предыдущем уровне мы знали данные на уровне элементов, то теперь нам точное содержание уже не будет известно. Теперь элемент, разметки, знает лишь то, что он получит определенный тип данных, и то как их отобразить. Используя вышеуказанную формулу, получаем следующий вид: Model->View->Element. Конечным «потребителем» снова выступает элемент разметки, однако, он только после длинной процессии получения данных по содержанию и их отображению получает свой конечный вид и поведение. На этом уровне уже нос высовывает PHP. Но это нас интересует не это.

    Интересует нас вот что: идея подобного разделения существует уже давно. И что самое забавное: активно применяется в программировании… программного обеспечения. Тавтология данной фразы скрывает в себе интересный факт: сегодня абстракция - это не просто способ программирования, это фактически методология (вспомнить ту же MVVM). Если вы пишете под мобильные платформы, то сами средства разработки уже подразумевают использование разделения данных и представления: платформа Windows RT/Windows Phone используют собственный язык разметки XAML, с помощью него же описываются стили и шаблоны, ну а C# выступает как представитель данных и поведения (есть даже вариант HTML + JS для WinRT); Android использует связку JAVA + XML…

    К чему мы пришли?

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

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

    3 месяца назад

  2. О Боже, уже восемь утра!

    На самом деле, давненько уже перестал удивляться временным скачкам и сбитому “режиму”. Как ни крути программирование - занятие ночное. Да, стереотип. Однако, в 60% случаев это действительно так. “Почему?” спросите Вы. Попробую ответить.

    Город засыпает…

    …просыпаются программисты. Ночь - время тишины и умиротворения. И маньяков. Но последнее пожалуй скорее дань традициям детективных романов.

    Ночь - это таинство. Время уединения. Уединения со своими мыслями. Является ли это одной из причин? Безусловно. Творческий процесс требует внимания. А ведь программирование - это абсолютно точно есть не что иное, как творчество.

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

    Свои тараканы

    Конечно есть сложности с подобным состоянием “Дзэн”. Чтобы банально не уснуть, приходится “терпеть” буквально час-два, когда мозг активно посылает глупого хозяина спать. В этот момент мозг думает о чем угодно, связанном хоть косвенно со сном, но никак не о программировании. Однако, претерпев данное состояние, переходишь в режим “крутого кодера” и тут то и начинается самое интересное…

    3 месяца назад

  3. Вот такой вот логотипчик соорудил себе для своего блога по разработке.
Кому будет интересно: милости прошу!

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

    Кому будет интересно: милости прошу!

    3 месяца назад

  4. Беннедикт - действительно крутой актер!)) Роль в Стартрек: Возмездие - то ради чего в принципе стоит смотреть данный фильм.
Ну а вчерашняя премьера&#8230; Это пожалуй лучший современный Шерлок, которого можно было бы придумать!

    Беннедикт - действительно крутой актер!)) Роль в Стартрек: Возмездие - то ради чего в принципе стоит смотреть данный фильм.

    Ну а вчерашняя премьера… Это пожалуй лучший современный Шерлок, которого можно было бы придумать!

    3 месяца назад

  5. Слова

    Хочу сказать я кучу слов,

    Да как-то нету настроенья

    Искать в себе следы основ

    Прогнивших напрочь поколений.

    Я не устал, я просто жду

    Момента, чтобы разогнуться

    Стряхнуть рутину и вражду

    Труда и лени, что дерутся.

    И жду других, таких как я

    Все ищущих в другом спасенья

    Помимо смысла бытия

    Не знающих другого мнения

    Все так же тихих, но живых

    В пол силы гнущих свое слово

    Напротив языка других

    Поставивших свое. Не ново

    Мне видеть эту канитель

    Снаружи ветреных построек.

    Но слов и смысла черна дверь

    В мой разум, что стал так не стоек.

    3 месяца назад

  6. Я?

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

    Да и черт бы с ними с руками. Но бывают вещи и по-глобальнее! Иногда сам взгляд на что-либо кажется чужеродным, искусственным, словно подстроенным. И вот ты видишь как ты общаешься с другом, но все твои слова, действия, движения идут словно бы мимо твоего сознания. Работаешь в два потока. Однако, ты вполне себе мыслишь, думаешь, ощущаешь. никакой проблемы нету, лишь только ты уже не участник действий, а его наблюдатель и руководитель. Словно режиссер, который сидит не в кадре, но руководит тем, как идет сцена.

    Возникает вопрос: неужели я осознал себя как сознание, а не человек? Неужели есть возможность восприятия мира извне, а не изнутри? 

    4 месяца назад

  7. Я люблю тебя не за то, кто ты.
    Я люблю тебя за то, кто я с тобой.
    – Louna - С тобой (2013)

    4 месяца назад

  8. Здесь и снова

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

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

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

    Но неужели такая сила должна быть лишь в моменты необходимости? Почему же мы ценим свой дом лишь в тот момент, когда он – наше единственное пристанище в затянутом грозными тучами мире? Именно это отличает дом от всего остального. Даже не так, а “Дом”. Именно с большой буквы. Именно Дом является тем, что всегда будет нашим. Что даже под грозовыми тучами будет греть для нас последний огонек уюта и защиты. Но вот ощущяем ли мы то же самое по отношению к нему?

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

    4 месяца назад