Сделайте просто более качественный сервис, и люди сами туда придут
Это, для контекста, автор пишет про национальный мессенджер MAX =)
Не придут.
Беда "Новой эпохи" не в каких-то там KPI (можно подумать их не было раньше), а в отсутствии доверия к добросовестности сервиса.
Сможет ли яндекс-поиск выдать действительно актуальную информацию, или будет дополнительный фильтр не в интересах пользователя? Скриншоты из комментариев выше наглядно демонстрируют ответ.
Сможет ли национальный мессенджер гарантировать приватность переписки? Большое количество независимых исследований уже нашли ответ.
Сможет ли VK Video показывать видео, которое пользователи захотят увидеть в полном объеме? В самой статье указано что нет.
Дело не в KPI, а в уверенности что российские сервисы не работают в интересах пользователя. И это не старое доброе "мы работаем в интересах пользователя и в наших тоже, чтобы денюжку получать", а "мы не работаем в ваших интересах совсем".
В общем, тут какое дело, ребяты… С одной стороны, мне очень нравится статья, особенно про UNIX-way, меня прям заводит. И пайпы, и CGI, и вот этовсё. И вообще, веб-сервер на bash, который лазит в сеть по inetd — это самый сок.
Но.
Правда в том, что ты все равно поставишь nginx в качестве реверс-прокси, %username%.
А еще правда в том, что с хорошей долей вероятности твой «сервер приложения» им **не будет**. То есть, это будет либо «apache + mod_passenger + django», «apache + mod_php», «unicorn + что-то на руби», «tomcat6 + мой J2EE файл». Может быть там будет даже «KVM virtual VM with pre-defined web application I definetely don't want to know anything about»
То есть у нас сформировалась «типа best practise», что сервера обычно ДВА: один смотрит наружу, быстро работает, балансирует нагрузку (если надо), кеширует 2/3 трафика и это nginx, а второй представляет из себя собственно веб-приложение, которое — теперь! — может быть достаточно косым. Я не уверен, что это хорошо, но это похоже так.
И по этой причине все тезисы про «нода заставляет делать свой веб-сервер» отодвигаются в сторону как невалидные. Да, заставляет. Да, это не unix-way. Нет, ничего страшного в этом нету.
А вот касаемо замеров «что дает больше оверхеда: prefork-модель или event-модель»? Так таки да, очень интересно.
Потому как да, вообще-то «асинхронность» совершенно не является чем-то заведомо хорошим и совершенно точно не является серебряной пулей.
Рассмотрим, для примера, вот какую тему.
// SYNC
function read() {
var f = fs.readFileSync('/tmp/bigfile.txt');
return f;
}
// ASYNC
function read(done){
var f = fs.readFile('/tmp/bigfile.txt')
.then((result) => {done(result)});
} // я знаю, что с ошибками написал, неважно
Так вот. Мне одному кажется, что если в разных запросах файлы одинаковые, то большой разницы не будет, так как файловая система возьмет кэширование на себя и ввод/вывод будет почти мгновенным?
А вот в случае если файлы разные — то асинхронный вариант может быть медленней (!) чем синхронный из-за особенностей работы не SSD жестких дисков, так как провоцирует ситуацию, когда одновременно диск читает из двух разных мест одновременно?
Ребята, простите что я не в тему, а давно у нас стала нормой скрытая реклама в статьях?
Я про вот эту:
> Поддержка публикации — компания Edison, которая разрабатывает онлайн-базу данных недвижимости,
> а так же проектирует и разрабатывает ПО для промышленных весов и калибровочного оборудования.
Особенно хорошо смотрится в статье про этику и СПО. =(
гм. Вы сейчас сказали «лямбды — это круто». Никто собственно и не спорит, но примера-то и нету, так как «все, где нужны...» — не пример, как и слишком абстрактное «многопоточность» тож.
Вы говорите о «неактивных клиентах» так, как будто в этом есть что-то плохое.
Не волнуйтесь вы так. Когда клиенту понадобится новая обувка он вспомнит, что «мне уже который год шлет спам какой-то магазин» и, может быть, сделает запрос не в гугле, а в своем gmail-е. Вот тут-то он и откроет ваше письмо и купит себе кроссовки.
А вот заставлять открывать спам (ну, будем откровенны, спам же. Нафига мне в разгар рабочего дня инфа о том, что магазин ботинками торгует, если я неделю назад их купил?) при помощи «грязных трюков» — это не очень. Заблокируют, и все дела.
А можно ли — для полноты картины — привести несколько примеров улучшений, которые были отвергнуты? Ну, те самые, которые «вне повестки» и т.п.? Интересно знать, что мы потеряли?
Что же до обязательного SSL, то я, наверное, поддержал бы эту затею. Все-таки затраты на поточную симметричную шифровку-дешифровку не так уж велики, а «ассиметричная» часть там все равно не зависит от размера передаваемого пакета.
Вау, чуваки! Зацените! Тут есть крестообразная отвертка и крест для свершения публичной казни! И то, и другое — крестообразное, так что очень просто перейти от одного к другому!
Ну ведь правда же "похожий" синтаксис (похожий тем, что и там, и сям есть фигурные скобки и синтаксический сахар) — это мелкая деталь на фоне двух замечательных, но совсем-совсем-совсем разных языков программирования?
Звучит как план. Я бы даже сказал, что можно попробовать ввести метрику «количество комментариев на одну статью» и проследить ее корреляцию с кармой. Коллега varagian, что скажете?
О, не скажите. Я получил весьма полезный (хоть и сильно неоднозначный) фидбек на свои статьи и узнал много нового. Так что комментарии на хабре — штука полезная.
Что же до того, что их не пишут — таки да, полагаю дело в негласном правиле «создавая статьи получаешь карму; комментируя — сливаешь». Интересно, а можно ли эту гипотезу проверить стат.методами? Или API не дает достаточных данных?
> Я по прежнему призываю минусёров высказаться если они не трусы (ну или не ленивые).
O'k, ты сам попросил =)
> Слушай, уходи, не видаешь люди венду хают.
Люди не «венду хают», а ведут дискуссию. Разница есть.
>> Далее, общая для текста проблема — автор из раза в раз утверждает, что невозможно определить, какая конкретно информация передаётся, потому что соединение зашифровано, и, тем не менее, постоянно делает четкие утверждения о том, что конкретно передаётся. Что за фигня? :)
> это называется логика и предположение, Аристотель тобой не доволен, в тексте не утверждается что это абсолютное суждение.
В этом поинте ildarz действительно есть логическая ошибка, но Вы ее не нашли, а всего лишь голословно сослались на Аристотеля.
В «дискуссии мнений и доказательств» вы, опять таки, выкатываете некоторые (порою, разумные) поинты, однако автор ссылается на некоего «чешского исследователя». Так что единственно корректный вариант — найти оригинал и выкатывать чешские же доказательства.
>>Итого, вопрос — что это было? :)
> Ни чего не было, просто проходи мимо тут не на что смотреть, продолжай пользоваться вендой и спи крепко.
А вот это был с Вашей стороны т.н. «вброс дерьма в вентилятор» =)
Здорово! Офигенный сервис. Но кстати я тут накопал:
1. А можно API? Я хочу в консоли написать `lazerto /ip` и в консоли же получить 4 цифры. То же самое с поиском и другими командами. И консольную тулзу я и сам напишу (и выложу), но хочется API.
2. Вбил «Моя Улица /maps», получил такую же улицу в соседней стране. Может быть можно использовать GeoIP/LocationServices? Или Вы считаете, что это недопустимо по соображениям безопасности юзеров (если да — вопрос снят, privacy > comfort)?
3. ОЧЕНЬ удобно будет, если `/` будет кидать в поисковую строку. Как в vim-е )
Как человек, активно использующий `ant` для скриптов сборки истинно говорю вам: поставьте за его использование отрицательный рейтинг (касаемо мира PHP, конечно)
КМК, Линейные аппроксимации не работают. Предположение вида «если позавчера у меня было 10мбит, вчера 100, сегодня 1000, то завтра я захочу 10000» на самом деле неверное. Может и захочу, а может и нет.
Вспоминается история про Менделеева и навоз (ну, он считал утилизацию навоза большой проблемой — количество повозок с лошадьми тоже росло экспоненциально...)
В общем, цитируя классика, «каменный век закончился не потому, что кончились камни». Точно так же интернет не закончится потому, что закончится трафик.
Кажется, в данной конкретной философии программирования нет ни философии, ни программирования :(
Ну, а теперь всерьез. В статье я (со своей весьма скромной колокольни) углядел несколько вполне очевидных фактов (сразу даю с моими комментариями, ок?):
* Некоторые IT-шники — откровенные гики и не от мира сего, а некоторые нет. Автор почему-то говорит об этом так, как будто это что-то плохое. Комментировать тут привязку «Россия — Запад» не хочется (противно, простите).
* Никто не читал «Искусство Программирования». Мне… э… гм… ну я очень надеюсь, что большая часть авторов хабра таки читала. Ведь правда, ребята? :)
* Примат Учителя над Книгой. Это весьма спорный и недоказанный тезис. Мне кажется, что это неверно, и что лучше учиться по книгам гениев, чем у посредственных учителей.
* Программисты — новый социальный слой (класс по Марксу). Это неверно. В чем принципиальная (классовая!) разница между программированием и инженерией?
*Наука, это переписка сумасшедших учёных.* Гениальная подмена понятий! Да, наука, как и любая сфера деятельности, РОЖДАЕТСЯ как «клуб по интересам», но не далее. Например, физика XX века к «клубу по интересам» не имеет никакого отношения (хорошо это или плохо — отдельный вопрос).
А еще в тексте есть трудноуловимая зависть к «пацанам типа Дурова, которые пришли к успеху». Ну, что тут можно сказать… зависть — плохое чувство, но если уж кому и завидовать — так Кнуту и компании (за то что у них такие клевые мозги), а не Дурову (за то, что у него так дофига бабла).
Я не очень понимаю, как можно сравнивать *горизонтальный рост* (как у Сереги) и *вертикальный рост* (как у Джона). Мне кажется, что это разные направления профессионального роста конкретного специалиста и заявлять о том, что что-то из этого лучше или выгоднее — бесмыссленно.
Хотя, кстати, ребята из 37signals (это создатели RoR есличо) утверждают, что горизонтальный рост важнее, пруфлинк: habrahabr.ru/post/137746/
То, что в России специалисты предпочитают горизонтальный рост — это безусловно так, и — на мой вкус — это один из немногих предметов гордости за свою страну (и робких надежд на светлое будущее, т.к. примеров «строго горизонтальных» организаций уже немало и есть надежда на то, что это оформится в тренд).
Наконец, важно понимать, что «общий язык» и «умение договариваться» — понятия, НЕ РАВНОЦЕННЫЕ понятию «управлять и играть в Игру с Ходами». Наоборот, «Игра, Ходы и прочие Манипуляции» — это неприятный ПОБОЧНЫЙ ПРОДУКТ от того, что люди договариваются друг с другом, и я полагаю сообщество найдет способ, как избавиться от него.
В общем, не очень я понимаю пафоса автора статьи )
В моем случае — потому, что иначе его не соберет сборочная ферма для какой-нибудь RHEL 5.0, которая, хоть и древняя как **** мамонта, но все еще активно используется в production.
Для меня это просто входное условие — извне: код должен поддерживаться широким кругом компиляторов.
Совершенно верно. Однако мы сейчас живем — все еще — в «переходный период», когда твой продукт должен компилироваться при помощи gcc от 3.6 и выше, а также — вижаком от 2005 и дальше. Какие уж там лямбда выражения…
Новый стандарт — на мой вкус, опять же — великолепен, но по-настоящему вкусить его можно будет через 2-3 года.
Вот он — типичный пример «настоящего бизнесменского решения»!
Крупнейший производитель операционных систем отдает свою ключевую технологию (symbian/maemo/meego/...) партнеру, сама же Nokia остается только «производящим придатком», которого очень легко заменить.
Сама идея создания «свободной ОС» для мобильного рынка снята с повестки дня.
«Тандем» из Android/iOS более не имеют серьезных конкурентов — даже в перспективе.
Это, для контекста, автор пишет про национальный мессенджер MAX =)
Не придут.
Беда "Новой эпохи" не в каких-то там KPI (можно подумать их не было раньше), а в отсутствии доверия к добросовестности сервиса.
Сможет ли яндекс-поиск выдать действительно актуальную информацию, или будет дополнительный фильтр не в интересах пользователя? Скриншоты из комментариев выше наглядно демонстрируют ответ.
Сможет ли национальный мессенджер гарантировать приватность переписки? Большое количество независимых исследований уже нашли ответ.
Сможет ли VK Video показывать видео, которое пользователи захотят увидеть в полном объеме? В самой статье указано что нет.
Дело не в KPI, а в уверенности что российские сервисы не работают в интересах пользователя. И это не старое доброе "мы работаем в интересах пользователя и в наших тоже, чтобы денюжку получать", а "мы не работаем в ваших интересах совсем".
В общем, тут какое дело, ребяты… С одной стороны, мне очень нравится статья, особенно про UNIX-way, меня прям заводит. И пайпы, и CGI, и вот этовсё. И вообще, веб-сервер на bash, который лазит в сеть по inetd — это самый сок.
Но.
Правда в том, что ты все равно поставишь nginx в качестве реверс-прокси, %username%.
А еще правда в том, что с хорошей долей вероятности твой «сервер приложения» им **не будет**. То есть, это будет либо «apache + mod_passenger + django», «apache + mod_php», «unicorn + что-то на руби», «tomcat6 + мой J2EE файл». Может быть там будет даже «KVM virtual VM with pre-defined web application I definetely don't want to know anything about»
То есть у нас сформировалась «типа best practise», что сервера обычно ДВА: один смотрит наружу, быстро работает, балансирует нагрузку (если надо), кеширует 2/3 трафика
и это nginx, а второй представляет из себя собственно веб-приложение, которое — теперь! — может быть достаточно косым. Я не уверен, что это хорошо, но это похоже так.И по этой причине все тезисы про «нода заставляет делать свой веб-сервер» отодвигаются в сторону как невалидные. Да, заставляет. Да, это не unix-way. Нет, ничего страшного в этом нету.
А вот касаемо замеров «что дает больше оверхеда: prefork-модель или event-модель»? Так таки да, очень интересно.
Потому как да, вообще-то «асинхронность» совершенно не является чем-то заведомо хорошим и совершенно точно не является серебряной пулей.
Рассмотрим, для примера, вот какую тему.
// SYNC
function read() {
var f = fs.readFileSync('/tmp/bigfile.txt');
return f;
}
// ASYNC
function read(done){
var f = fs.readFile('/tmp/bigfile.txt')
.then((result) => {done(result)});
} // я знаю, что с ошибками написал, неважно
Так вот. Мне одному кажется, что если в разных запросах файлы одинаковые, то большой разницы не будет, так как файловая система возьмет кэширование на себя и ввод/вывод будет почти мгновенным?
А вот в случае если файлы разные — то асинхронный вариант может быть медленней (!) чем синхронный из-за особенностей работы не SSD жестких дисков, так как провоцирует ситуацию, когда одновременно диск читает из двух разных мест одновременно?
Пожалуй, запилю-ка я про это отдельную статью
Я про вот эту:
> Поддержка публикации — компания Edison, которая разрабатывает онлайн-базу данных недвижимости,
> а так же проектирует и разрабатывает ПО для промышленных весов и калибровочного оборудования.
Особенно хорошо смотрится в статье про этику и СПО. =(
Вообще-то на C, а не на C++
И да, я всякий раз с большим удовольствием цитирую Линуса Торвальдса, когда речь заходит про «C или C++»
Не волнуйтесь вы так. Когда клиенту понадобится новая обувка он вспомнит, что «мне уже который год шлет спам какой-то магазин» и, может быть, сделает запрос не в гугле, а в своем gmail-е. Вот тут-то он и откроет ваше письмо и купит себе кроссовки.
А вот заставлять открывать спам (ну, будем откровенны, спам же. Нафига мне в разгар рабочего дня инфа о том, что магазин ботинками торгует, если я неделю назад их купил?) при помощи «грязных трюков» — это не очень. Заблокируют, и все дела.
Что же до обязательного SSL, то я, наверное, поддержал бы эту затею. Все-таки затраты на поточную симметричную шифровку-дешифровку не так уж велики, а «ассиметричная» часть там все равно не зависит от размера передаваемого пакета.
Вау, чуваки! Зацените! Тут есть крестообразная отвертка и крест для свершения публичной казни! И то, и другое — крестообразное, так что очень просто перейти от одного к другому!
Ну ведь правда же "похожий" синтаксис (похожий тем, что и там, и сям есть фигурные скобки и синтаксический сахар) — это мелкая деталь на фоне двух замечательных, но совсем-совсем-совсем разных языков программирования?
Что же до того, что их не пишут — таки да, полагаю дело в негласном правиле «создавая статьи получаешь карму; комментируя — сливаешь». Интересно, а можно ли эту гипотезу проверить стат.методами? Или API не дает достаточных данных?
O'k, ты сам попросил =)
> Слушай, уходи, не видаешь люди венду хают.
Люди не «венду хают», а ведут дискуссию. Разница есть.
>> Далее, общая для текста проблема — автор из раза в раз утверждает, что невозможно определить, какая конкретно информация передаётся, потому что соединение зашифровано, и, тем не менее, постоянно делает четкие утверждения о том, что конкретно передаётся. Что за фигня? :)
> это называется логика и предположение, Аристотель тобой не доволен, в тексте не утверждается что это абсолютное суждение.
В этом поинте ildarz действительно есть логическая ошибка, но Вы ее не нашли, а всего лишь голословно сослались на Аристотеля.
В «дискуссии мнений и доказательств» вы, опять таки, выкатываете некоторые (порою, разумные) поинты, однако автор ссылается на некоего «чешского исследователя». Так что единственно корректный вариант — найти оригинал и выкатывать чешские же доказательства.
>>Итого, вопрос — что это было? :)
> Ни чего не было, просто проходи мимо тут не на что смотреть, продолжай пользоваться вендой и спи крепко.
А вот это был с Вашей стороны т.н. «вброс дерьма в вентилятор» =)
1. А можно API? Я хочу в консоли написать `lazerto /ip` и в консоли же получить 4 цифры. То же самое с поиском и другими командами. И консольную тулзу я и сам напишу (и выложу), но хочется API.
2. Вбил «Моя Улица /maps», получил такую же улицу в соседней стране. Может быть можно использовать GeoIP/LocationServices? Или Вы считаете, что это недопустимо по соображениям безопасности юзеров (если да — вопрос снят, privacy > comfort)?
3. ОЧЕНЬ удобно будет, если `/` будет кидать в поисковую строку. Как в vim-е )
Вспоминается история про Менделеева и навоз (ну, он считал утилизацию навоза большой проблемой — количество повозок с лошадьми тоже росло экспоненциально...)
В общем, цитируя классика, «каменный век закончился не потому, что кончились камни». Точно так же интернет не закончится потому, что закончится трафик.
Ну, а теперь всерьез. В статье я (со своей весьма скромной колокольни) углядел несколько вполне очевидных фактов (сразу даю с моими комментариями, ок?):
* Некоторые IT-шники — откровенные гики и не от мира сего, а некоторые нет. Автор почему-то говорит об этом так, как будто это что-то плохое. Комментировать тут привязку «Россия — Запад» не хочется (противно, простите).
* Никто не читал «Искусство Программирования». Мне… э… гм… ну я очень надеюсь, что большая часть авторов хабра таки читала. Ведь правда, ребята? :)
* Примат Учителя над Книгой. Это весьма спорный и недоказанный тезис. Мне кажется, что это неверно, и что лучше учиться по книгам гениев, чем у посредственных учителей.
* Программисты — новый социальный слой (класс по Марксу). Это неверно. В чем принципиальная (классовая!) разница между программированием и инженерией?
*Наука, это переписка сумасшедших учёных.* Гениальная подмена понятий! Да, наука, как и любая сфера деятельности, РОЖДАЕТСЯ как «клуб по интересам», но не далее. Например, физика XX века к «клубу по интересам» не имеет никакого отношения (хорошо это или плохо — отдельный вопрос).
А еще в тексте есть трудноуловимая зависть к «пацанам типа Дурова, которые пришли к успеху». Ну, что тут можно сказать… зависть — плохое чувство, но если уж кому и завидовать — так Кнуту и компании (за то что у них такие клевые мозги), а не Дурову (за то, что у него так дофига бабла).
Хотя, кстати, ребята из 37signals (это создатели RoR есличо) утверждают, что горизонтальный рост важнее, пруфлинк: habrahabr.ru/post/137746/
То, что в России специалисты предпочитают горизонтальный рост — это безусловно так, и — на мой вкус — это один из немногих предметов гордости за свою страну (и робких надежд на светлое будущее, т.к. примеров «строго горизонтальных» организаций уже немало и есть надежда на то, что это оформится в тренд).
Наконец, важно понимать, что «общий язык» и «умение договариваться» — понятия, НЕ РАВНОЦЕННЫЕ понятию «управлять и играть в Игру с Ходами». Наоборот, «Игра, Ходы и прочие Манипуляции» — это неприятный ПОБОЧНЫЙ ПРОДУКТ от того, что люди договариваются друг с другом, и я полагаю сообщество найдет способ, как избавиться от него.
В общем, не очень я понимаю пафоса автора статьи )
Для меня это просто входное условие — извне: код должен поддерживаться широким кругом компиляторов.
Новый стандарт — на мой вкус, опять же — великолепен, но по-настоящему вкусить его можно будет через 2-3 года.
Крупнейший производитель операционных систем отдает свою ключевую технологию (symbian/maemo/meego/...) партнеру, сама же Nokia остается только «производящим придатком», которого очень легко заменить.
Сама идея создания «свободной ОС» для мобильного рынка снята с повестки дня.
«Тандем» из Android/iOS более не имеют серьезных конкурентов — даже в перспективе.
Но премия того стоила, правда?