Ну прям уж) Не должен сервер это делать, вы что. Что значит «правильный код»? Это должно приложение решать — какой код возврата «правильный», это прикладное понятие, а не протокольное.
Судя по недавней истории с логином на фейсбук ( lotares.habrahabr.ru/blog/84473/ ) большинство «обычных» пользователей (о которых и пекутся в этой статье) вообще понятия не имеют где находится адресная строка и зачем она там.
А что такого? У меня, например, остались ещё с «тех» времён. Ещё лет 5-6 назад вполне в ходу были дискеты. А ещё года два назад меня вынуждали ими пользоваться (статьи на печать принимали на дискете only).
Ну, метод явно имеет место быть. Но по первому впечатлению это весьма специфичный «фреймворк», так скажем. Оттого и короткий. На вид. Просто ведь тут у вас выложен сам «роутер», а к нему ещё прикручен немаленький шаблонизатор, который берёт на себя всю генерацию выхода и разные контроллеры, которые берут на себя всю логику. Так что минимализм — это по большей части оптический обман :)
На 02 звонить и уточнять всегда полезно — все звонки туда строго фиксируются (и потом при необходимости являются доказательством факта) и если «менты» знают, что в данный момент могут быть не очень правы, то очень нервничают и вообще не любят связываться. Проверено :)
Правда, в данном случае это бы не возымело эффекта, ибо пришедшие, как видно, были уверены в своей правоте и законности.
Не, ну почему всё же без «выводов» и «общего бала»? Так не пойдёт. Смысл то какой тогда в обзоре? Ну, в каждом тесте кто-то победил, кто-то проиграл. Пытался найти закономерности, вроде фаерфокс слил в большем количестве Ваших тестов? Вы на это намекаете? А как с самим обзором связано вступление про свободный и несвободный софт и про лайт и ультра? В общем, простите, но лично я нифига не понял…
Статья очень хорошая, побольше бы таких авторских статей. Буду ждать обещанных следующих. Немного прокомментирую «интро».
Я разделяю (довольно распространённое) мнение, что изучение (и, как следствие, попытки «обдуманного» использования) шаблонов проектирования на ранних этапах становления программиста скорее вредно, чем полезно. В развитии через «велосипеды» нет ничего плохого, скорее наоборот — все проходят через эти стадии. И в итоге вырабатываются свои пути мышления, и свои особенности видения каждой практической проблемы и придумываются свои фишки для каждого конкретного случая. Прикол как раз в том, что набор шаблонов охватывает большинство разумных случаев таких архитектурных фишек. И направление их применения должно быть именно «проблема» -> «о, я знаю как решить» -> «да это же шаблон '...'!», а не обратное. Видел в практике кучу случаев, когда пытались сувать шаблон туда, куда он ну никак не лез. Говоришь: «ну не получается ведь, сделай ты вот так и так, ведь короче, проще и логичнее», а он: «нет, здесь, походу, нужна фабрика и я её приделаю». Зачем вот так вот?
К чему я это? К описанному Вами назначению шаблонов. Немного непонятно, как шаблоны могут помочь избежать велосипедов, ведь это просто схематические описания архитектурных конструкций. Всё же я считаю, что основное назначение шаблонов — в классификации кода и, возможно, приведении его к какому-либо каноническому виду. Чтобы, например, при обсуждении с коллегами каких-либо поставленных проблем и их решений или самого кода «этот вот класс, хранящий статический экземпляр объекта в единственном виде» называть синглтоном, а «типа очередь объектов определённой длины, чтобы их не создавать каждый раз, а брать оттуда и класть обратно» — пулом объектов. А шаблоны ради шаблонов — зло. Имхо.
Я не фанат вконтакта, конечно, но… круто :) Разбить бы сообщения на стене на отдельные «файлы» и дать возможность создавать у друзей и читать/удалять у себя. Ну и прочее такое же с остальными сущностями.
Это точно. Походу, все логитечевские клавиатуры страдают той или иной нестандартностью. Лично мне такая клава — мучение. Зачем такой enter, как интересно тянуться у нему мизинцем при слепой печати? Зачем лишний слеш на месте entera и куда такой backspace? По стародревней привычке пользуюсь Ctrl-Ins/Shift-Ins, и… здесь тоже провал.
Сам никогда не даю взятки, даже если намекали пару раз. Всегда киваю на протокол и говорю «пишите, пишите». Но бывают ситуации (знаю случаи знакомых), когда могут сильно попортить жизнь. Например, грозит лишение прав. Причём очень и очень часто незаконно. И даже если я знаю, что прав и, следовательно, вполне могу оказаться правым в суде, я хорошенько подумаю — связываться ли с этой системой. Банальное вымогательство. И вот пока менталитет всех нас (не только водителя) не изменится — всё так и будет.
Да, если так трактовать, то да… Если речь о разных кодеках, то потери будут больше из-за нетождественных психоакустических моделей и преобразований, но всё равно, имхо, относительно изначальной потери информации (при первоначальном сжатии из несжатого) они будут минимальны. Я пережимал из mp3 в ogg, ничего критичного на слух не заметил.
Правда, в данном случае это бы не возымело эффекта, ибо пришедшие, как видно, были уверены в своей правоте и законности.
Я разделяю (довольно распространённое) мнение, что изучение (и, как следствие, попытки «обдуманного» использования) шаблонов проектирования на ранних этапах становления программиста скорее вредно, чем полезно. В развитии через «велосипеды» нет ничего плохого, скорее наоборот — все проходят через эти стадии. И в итоге вырабатываются свои пути мышления, и свои особенности видения каждой практической проблемы и придумываются свои фишки для каждого конкретного случая. Прикол как раз в том, что набор шаблонов охватывает большинство разумных случаев таких архитектурных фишек. И направление их применения должно быть именно «проблема» -> «о, я знаю как решить» -> «да это же шаблон '...'!», а не обратное. Видел в практике кучу случаев, когда пытались сувать шаблон туда, куда он ну никак не лез. Говоришь: «ну не получается ведь, сделай ты вот так и так, ведь короче, проще и логичнее», а он: «нет, здесь, походу, нужна фабрика и я её приделаю». Зачем вот так вот?
К чему я это? К описанному Вами назначению шаблонов. Немного непонятно, как шаблоны могут помочь избежать велосипедов, ведь это просто схематические описания архитектурных конструкций. Всё же я считаю, что основное назначение шаблонов — в классификации кода и, возможно, приведении его к какому-либо каноническому виду. Чтобы, например, при обсуждении с коллегами каких-либо поставленных проблем и их решений или самого кода «этот вот класс, хранящий статический экземпляр объекта в единственном виде» называть синглтоном, а «типа очередь объектов определённой длины, чтобы их не создавать каждый раз, а брать оттуда и класть обратно» — пулом объектов. А шаблоны ради шаблонов — зло. Имхо.