вторник, 6 марта 2012 г.

Мэтрам django web разработки посвящается


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

Но долгое время в сторону паскаля неслись смешки, и говорили -  нафиг нам ваши break и continue, да я с goto решу выход из цикла на раз, в три раза элегантнее.

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

Или вот можно писать::

if key in map:
    return map[k]
else:
    return None

А можно элегантнее действовать, можно написать `return map.get(k)`. А говорят еще есть некий монадический Option путь, там вообще трава зеленее. Но `if ... in ...` он проще и понятнее, я if уже двадцать лет знаю и умею, идите нафиг, я еще в великой энциклопедии самого профессора Фортрана читал. Я может потом, как время будет, прочту про хаскель сразу, и не буду писать ни одного `if` при разборе json. Но это конечно как время будет, а то я же человек серьезный, я сайты пишу - много if-ов, некогда мне, некогда.

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

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

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

ORM слабый? Да пишите SQL уже, как все нормальные мужики. И формы наши эталон, CSRF у них талон, идите нафиг.

И вообще, у меня все проекты на бейсике, я его хорошо знаю, еще со школы и зеленоэкранных ямашек.


Но шутки в сторону. Скажите мне замшелые троглодиты из реально нереально серьезной веб разработки, что, экономия на рендере шаблонов это лишнее для проектов с посещаемостью >1000? Более быстрая разработка с более гибким ORM это лишнее? Да вы вообще БД используете, или планируете проект на sqlite запускать в продакшн? Даже обработка URL в Werkzeug быстрее. Можно говорить что где-то это копейки, но когда все копейки собираются во Flask, это уже становится серьезно, мимо проходить уже как-то непрофессионально,
и даже как-то стыдно.

За пределами уютного мирка в злато-зеленых тонах кипит жизнь, возникают новые идеи и инструменты, но всегда есть мэтры, которым некогда улучшать свои навыки - у них 1000 пользователей ждет, когда мэтр напишет все if-ы.