Выбрать главу

А потом я проснулся. Жаль, что это был сон. А может, прочитают и сделают?

#12051: Дело мастера боится

12:15 29.03.2014, IT happens

Жил-был у меня смартфон. Обычный такой андроидокитаец, имя ему — H3060. Да-да, просто H3060, никаких излишеств вроде имени производителя и т. д. И вот однажды он поломался: включаешь — загружается только в отладочном режиме; вытащишь батарейку, подержишь так часа четыре — запускается нормально. Ну, и ещё глюки: кнопки громкости не работают (в отладочном режиме обе, в обычном одна), микрофон не пашет, вайфай цепляет как попало.

Принёс я смартфон в местный СЦ. Мастер покрутил аппарат в руках и сказал, что легче выкинуть, ибо чинить такие аппараты — сущий геморрой. А теперь самая мякотка: выхожу из СЦ, прохожу метров двести, потом думаю: чем чёрт не шутит… Включаю — работает! Вытаскиваю батарею, вставляю — работает!

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

#12052: Взгляд из соседнего окна

12:45 29.03.2014, IT happens

Программисты пишут на разных языках. С уважением, ваш К. О. Следствием этого факта является то, что некоторым программистам легче и проще работать с джаваскриптами, DOM, объектами и прочим в том же духе: совсем не вопрос написать скрипт, который получит от сервера данные в JSON, разберёт их, создаст необходимые DOM-структуры и встроит их в документ.

А вот другим программистам легче и проще написать 100500 шаблонов страниц, которые будут генерировать HTML на стороне сервера, а затем одним AJAX-запросом готовый код вместе с используемыми в нем скриптами будет просто вставлен в нужное место на странице.

Какой подход правильнее?

Спец по JS считает, что первый: по сути, он пишет программу, которая выполняется на компьютере пользователя, обращаясь к удалённой БД на сервере. Сервер в этом случае просто транслирует AJAX в запросы к базе данных.

Другой специалист думает, что первый вариант вовсе не так хорош и имеет недостатки:

— программа получается достаточно сложной и объёмной, написать корректно работающий большой скрипт сложнее, чем сто маленьких простых;

— её работа зависит от корректности обработки браузером;

— её можно модифицировать на стороне пользователя, поэтому сложнее обеспечить безопасность и целостность данных;

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

Это чем-то напоминает сравнение Windows и UNIX: в одной из них принято писать многофункциональные приложения со множеством возможностей, очень большие и сложные, и потом выпускать новые версии с новыми возможностями;

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

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

#12053: Начнём ab ovo

12:15 30.03.2014, IT happens

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

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

Получив разрешение, я завёл тетрадь с 96 листами и вначале описал важность проблемы моделирования процессов взросления и старения живых организмов, затем довольно подробно рассказал, как устроена моя «ЭВМ», употребляя такие умные термины, как «индикатор жидкокристаллический точечно-матричный» и «микроконтроллер с масочным ПЗУ». Что в биологии, что в вычислительной технике я разбирался посредственно, но выигрывал в другом: плохо зная значения терминов, умел ловко ими щеголять. Отдельный раздел я посвятил «допущениям и упрощениям при моделировании по причине ограничений, накладываемых быстродействием и объёмом запоминающих устройств специализированной ЭВМ».