• Emoji.prototype.length — рассказ об эмоциональных символах в Юникоде
    +2
    Хабр довольно враждебно настроен к Эмодзи (здесь они просто не отображаются)
    Проблема № 61.
  • «Hello, (real) world!» на php в 2017 году
    +1
    Если Node.js и npm установлены, то тогда PHP вообще не очень нужен, ведь можно поверх ставить web-сервер (например, Express.js) и шаблонизатор (например, Handlebars.js) и далее на них сайт подымать. (Я пишу это отчасти иронически — но не более, чем наполовину.)
  • Async/await это шаг назад для JavaScript'a?
    +3
    Я сейчас скажу довольно мрачную и пессимистическую вещь, отрицающую плоды прогресса даже сильнее, чем вышепереведённая мысль отрицает их.

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

    Дело в том, что у промисов есть метод «Promise.all», тогда как у библиотеки Async есть не только ананалогичный ему метод «async.parallel» (а также другой метод «async.waterfall», аналогичный цепному вызову промисов через их «.then»), но и ещё почти шестьдесят других удобных методов. Оговорюсь, что из них лично я использую никак не больше десятка, но, во-первых, даже этот десяток не горю желанием сочинять самостоятельно ради перехода на промисы, а во-вторых, меня радует сознание того, что за пределы этого десятка я всегда смогу (при малейшей необходимости) выйти почти мгновенно, потому что там ждут меня ещё полсотни готовых методов, которые опять же не придётся сочинять самостоятельно.

    То есть переход на промисы выглядит как переход на новый (и ещё не обросший возможностями) фреймворк, ради которого отбрасывается история многих лет эволюции библиотеки Async (начиная от первого коммита 13 мая 2010 года) и большинство обретённых ею возможностей, так что теперь промисовая публика будет переизобретать велосипеды (причём, скорее всего, опять же на протяжении нескольких лет кряду) при столкновении с наималейшими проблемами действительности.

    То, что новый фреймворк сделали частью языка, в практическом отношении ничего особенного не меняет. (Кроме того только, что процессу переизобретения велосипедов будет сопутствовать не менее увлекательный процесс подпирания костылями-полифиллами всех тех прежних версий, которые останутся в прежних браузерах.)

    Поэтому лучшее, что можно сделать с промисом — это сунуть его в «async.asyncify» и дальше коллбекнуть по старинке.

    Your callback hell is my home.
  • Как сделать кроссплатформенное десктопное приложение на базе веб-технологий
    +8
    Так как перед нами расшифровка одного из выступлений на конференции FrontendConf, и так как конференция эта проводится летом в начале июня (по крайней мере, так пишут на сайте про нынешний год), то изложенные в выступлении свéдения нуждаются в некотором осовременивании (может быть, на полгода, а может быть, и на полтора года; что-то я нигде не увидел даты этого выступления, честно говоря) для того, чтобы соответствовать положению дел января 2017 года.

    Движок NW.js больше не использует движок io.js в качестве средства для поддержки Node API; после того, как io.js влился обратно в Node.js, последующие версии NW.js также возвратились на Node.js. Так, например, стабильная версия NW.js v0.19.5 использует Node.js v7.4.0, и вышедшая сегодня (19 января) предрелизная версия NW.js v0.20.0-rc1 также использует Node.js v7.4.0.

    Движок NW.js больше не использует простой нодовский вызов «require()», который в браузероподобном контексте создавал пусть и преодолимые, но всё же досадные проблемы совместимости с RequireJS. Теперь используется вызов «nw.require()», вынесенный в отдельное пространство имён «nw».

    В то же пространство имён вынесены те элементы API NW.js, которые ранее были доступны через вызов «require('nw.gui')»; таким образом, например, вместо «require('nw.gui').Window» теперь пишется попросту «nw.Window», а вместо «require('nw.gui').Shell» теперь пишется попросту «nw.Shell», и так далее.

    (В качестве примера изменений, к которым это приводит, можно посмотреть вон те правки, внесённые 26 октября 2015 года в один из моих проектов на Гитхабе.)

    Внутрь package.json теперь нет необходимости вписывать «"toolbar": false» для отключения навигационной панели, потому что теперь её нет. Соответственно, нет и шестерёнки на ней, а отладка вызывается по F12, как в Chrome. (Вызывается в SDK-содержащей версии движка NW.js. Сборка приложений для конечных пользователей, как правило, делается без средств отладки.)

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

    В остальном вышеизложенное выступление вполне справедливо. Веботехнологическая и притом кросс-платформенная разработка — это залог довольно быстрого создания сайтоподобных GUI-приложений. Как показывал AndyGrom, такие приложения могут иметь и вебсерверную часть на основе Express.js.
  • Что общего между написанием Властелина колец и программированием?
    +13
    Слово «Git» в этом историческом экскурсе зазря используется вместо более общего понятия «VCS», да и то в лучшем случае метафора.
  • 19 неожиданных находок в документации Node.js
    +3
    Если сделать просто «require('lodash')», но не присвоить присвоить результат «require('lodash')» в явном виде той переменной, имя которой состоит из знака подчёркивания (такое имя переменной чаще всего и используется пользователями lodash), то тогда этот результат присвоится этой переменной автоматически, но не менее автоматически пропадёт (то есть переменная эта переприсвоится) на следующем же шаге REPL — оттого, что в REPL переменная с таким именем имеет особый смысл, что также сказано в документации Node.js.
  • Я отказался от PGP
    +7
    Может быть, это просто аллюзии друг на друга у них, но может быть, что до специалистов по безопасности (до одного за другим) постепенно добирается Моссад (ну не непременно Моссад — может быть, ЦРУ или какая-нибудь другая гэбэшечка), после чего они испускают вот такой завуалированный крик о помощи — а затем, делать нечего, превращаются в агентов влияния, ретранслирующих внутрь сообщества (и подкрепляющих своим авторитетом) мнение о том, что крипто тягостно и не нужно, люди мы маленькие и незначительные, а преступность и гэбэшечка до нас всё равно, если что, доберётся, крипто не нужно, острой сатиры не нужно, альтернативных СМИ не нужно, Тор не нужен, аниме не нужно, прямые выборы губернаторов не нужны, Викиликс не нужен, короткоствол не нужен, Сноуден не нужен, велосипед не нужен, Крым не нужен, широкий тротуар не нужен, Фидонет не нужен, и так далее.
  • Вы не супергерои: пожалуйста, прекратите ставить себе задачи, с которыми вы пока что не справляетесь
  • 20 полезных Node.js фреймворков
    0
    Там с такою непринуждённостью совершается разделение MVC-фрэймворков на «Sinatra-подобные» и «Rails-подобные», как если бы термины эти могли что-то значить не для одних только программистов на языке Ruby, решившихся потихоньку переходить на JavaScript.
  • Практическое руководство по VR-дизайну
    +1
  • Глава InfoWatch Наталья Касперская: большие данные россиян должны принадлежать государству
    +1
    Ну да, ну да. Пользователь отпустил данные в информационное пространство. Уж так отпустил, что они передаются в зашифрованном виде, не видные никому постороннему, и придётся со злобной жестокостью выкручивать руки компаниям Google и Facebook, проявляя всю готовность поназапрещать их в России, когда и если они не пожелают согласиться с выдачею государству всего того, чего там пользователь отпустил.

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

    А разгадка одна — безблагодатность.

    (Кстати, отсылка к китайскому опыту — это, по-видимому, злая выдумка: в новостях пока что было слышно о том только, что Китай принуждает к появлению цензуры в Facebook, а о выдаче данных пока никто и не заикается.)
  • 20 полезных Node.js фреймворков
    –1
    У меня вопрос насчёт первого из упомянутых выше фрэймворков — насчёт Express.js:
    В этом вопросе я имею в виду, разумеется, возможность употребления такого анализатора логов посещений, который был бы сочинён на JavaScript для Node, а по возможностям был бы сколько-нибудь сопоставимым или же превосходил всех таких динозавров донодовской эпохи, каковы AWStats, Webalizer и проч.

    Есть ли такие?
  • Список бесплатных DNS-сервисов
    0
    Но ведь, судя по заглавной странице, там только DynDNS и только на их домене hldns.ru? (Я ещё не регистрировался.)
  • Первый частный город в России, быть или не быть? Часть 1
    +2
    Хочу дать два совета автору.

    Во-первых, советую чуть лучше проводить проверку фактов. В предшествующей блогозаписи («Дизайн российских городов, где он?») читателю предлагалась вот такая задача:
    Слово «курорт» у меня лично ассоциируется с чем-то тёплым и солнечным, с чем-то, что даёт эстетическое наслаждение и комфорт. А теперь посмотрим на фото:



    Найдите на нем Геленджик.

    Лично у меня фотографии российских курортов не вызывает желание туда поехать, а у вас?
    Мне кажется, что формулировка этой задачи предполагала у читателей готовность прийти к выводу о том, что Геленджик — вот этот город:

    [вот этот город?]

    И читатели поневоле пришли к нему; этот вывод там (в комментариях) вроде как никто и не оспаривал. А я оспорю. Дело в том, что сразу на нескольких сайтах ([1], [2], [3]) именно эта фотография (или не в точности именно эта, но необыкновенно схожая) приводится в качестве фотографии не Геленджика, а Новороссийска — города, расположенного в нескольких десятках километров северо-западнее и не относящегося к числу курортов.

    (Откуда взялась эта фотография на самом деле? В каком году она сделана, какой район Геленджика она должна изображать и есть ли он в Геленджике на самом деле?)

    Второй совет вот каков: рекомендую к прочтению подборку текстов «Traditional City / Heroic Materialism Series Archive», и прежде всего — любопытную дихотомию «Place and Non-Place» и ещё, может быть, «Life Without Cars 2014».
  • Первый частный город в России, быть или не быть? Часть 1
    0
    Изобилие пыли в сухую погоду и слякоти во влажную погоду — это проблема не климата, а градоустройства.

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

    Ну и, конечно, часть решения проблемы — беспощадная борьба с автомобилистами. Если и не со всеми вообще, то хотя бы с теми, которые паркуются на газонах и пустырях, раздалбывая почвенный слой и разнося его по всему городу в виде грязи на своих колёсах.

    Ну и вторичные меры — например, омыв колёс строительных автомашин при выезде со стройки.

    Причём устранение чрезмерного автомобилизма должна начинаться с создания альтернатив.

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

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

    Вы также осуждаете положение дел при тёплой зиме, но позвольте в ответ заметить, что положение это сильно зависит от климата — например, если осадков мало, то либо вовсе не будет слякоти при небольшой плюсовой температуре, либо будет мало и недолго. Обратите внимание на ту свободу от чрезмерной влаги, которую можно наблюдать на улице вчерашнего Геленджика — улицу эту можно назвать почти совершенно сухою:
    Оборотной стороной малых осадков является явный недостаток собственной воды, свойственный тому же Геленджику (а также, например, Сингапуру, где он усиливается изобилием населения).
  • Они забыли Польшу!
    0
    Перекраской страны можно объяснить появление ложного Балтийского моря, но никакою перекраскою целой страны или её отдельного часового пояса не удастся объяснить появление полуострова на месте Сахалина или, тем более, появление дополнительного острова к юго-востоку от Японского архипелага.

    Подозреваю эффект Манделы поэтому.
  • Легкий способ потерять клиентов или почему не следует использовать Google CDN
    +1
    Думаю, со временем эта проблема уйдёт в прошлое по мере того, как станет возрастать употребление P2P-распределённой файловой системы IPFS, которая одновременно сыграет роль CDN (причём такой CDN, в которой узлы доставки — сами пользователи) и роль хостинга статических (неизменных) файлов (например, библиотечных джаваскриптов определённой версии). Достаточно браузеру одного китайца преодолеть Стену для того, чтобы скрипт разошёлся по всей Поднебесной.
  • Новый пуленепробиваемый синтаксис @font-face
    0
    Как гласит официальная документация от Корпорации Microsoft, IE8 не поддерживает data длиннее 32 768 символов. Если учесть ещё и избыточность base64-кодировки, то получится, что это вопиюще неподходящий способ подключения шрифтов в IE8 (разве что шрифт попадётся двадцатикилобайтовый или ещё того меньше).
  • Работа в IPFS с человеческим лицом
    0
    Вкратцѣ: нѣтъ, тамъ SHA-2.
  • Роскомнадзор заблокировал PornHub и YouPorn на территории РФ
    0
    По-видимому, это не так.
  • Роскомнадзор заблокировал PornHub и YouPorn на территории РФ
    +1
    Важно знать, кто придумывал, но руководствоваться следует всё же знанием о том, кто голосовал, кто утверждал, кто скреплял подписью.

    И в отношении закона от 23 июня 2016 года № 199-ФЗ это означает: вся Госдума, и весь Совет Федерации, и Президент РФ.

    (Насколько я помню, не было ни одного голоса против, не было ни одного воздержавшегося; был в Госдуме, кажется, один кто-то не голосовавший, да и то объяснили техническою ошибкою.)
  • Роскомнадзор заблокировал PornHub и YouPorn на территории РФ
    +2
    На всякий случай напоминаю, что всякого, что ожидает (или делает вид, что ожидает) увидеть на Geektimes комментарии о политически деятельном преодолении блокировок (и подробности вступления в борьбу, и призывы к ответу на насилие того или иного рода, и проч.), с неизбежностью ожидает закономерное разочарование: в правилах есть пункт, в соответствии с которым такие комментарии бесследно исчезают с сайта вместе с их авторами.
    Не следует инициировать политические дискуссии и участвовать в них. Тематика нашего ресурса определена довольно чётко. Для рассуждений о политике есть куда более подходящие сайты. Но не Geektimes.
  • Node.js и JavaScript вместо ветхого веба
    +2
    Вновь подтверждён Закон Этвуда: «Всё, что может быть написано на JavaScript, будет написано на JavaScript».
  • Node.js и JavaScript вместо ветхого веба
    +3
    Сразу изменить и протокол, и формат передачи, и серверную часть, и базу данных, и клиент-браузер.

    Затея интересная, но трудоёмкая.

    Предвижу также неочевидные инфраструктурные издержки (например, где-нибудь перестанет работать такой кэширующий прокси-сервер или такой анализирующий файерволл, которые ожидали видеть протокол HTTP, и в итоге кто-нибудь, например, останется с доступом к WWW, но без доступа к Метархии, или, например, скачает из Метархии вирус, хотя скачивание его из WWW было бы предотвращено файерволлом от антивирусного пакета).

    Вообще смотрю на этот широкий замах с умилением. Что-то подобное, причём весьма подобное, я и сам ощущал да испытывал, задумывая гипертекстовый Фидонет. Совершенно так же смотришь на технологии многодесятилетней давности и желаешь всё в них переменить: и разметку фидотекста (устроить гипертекст), и редактор-просмотрщик (поставить фидобраузер), и формат баз фидопочты (обеспечить поддержку хотя бы SQL-подобных запросов, если не Mongo-подобных map+reduce), и эхопроцессор (чтобы он работал с этой новой базой), и фрекопроцессор (чтобы можно было запрашивать не только файлы, но и сообщения фидопочты), и мейлер (чтобы вместо прежних двоичных пакетов в жёстком формате обмениваться каким-нибудь JSON), и так далее. В итоге оказалось, что и одного только фидобраузера хватит надолго повозёхаться.

    (Правда, я не располагал отделом R&D размером в десяток человек. Располагая таким отделом, много чего можно достигнуть. Желаю удачи, разумеется.)
  • Зачем нам jQuery?
    0
    Не нужно, но полезно, так как у jQuery API более краткий и мощный.

    Пример — метод «on».
  • It’s the future
    0
    Ну, на это есть готовый ответ — подраздел «Обобщение метода» во блогозаписи «Двенадцать простых начальных шагов разработки модуля для Node.js».
  • Кэш, хэш и няш-меш
    0
    И так как NickKolok желал знать моё мнение, то вот оно: я также считаю, что для распределённого хранения данных с адресацией по контенту более всего подходит IPFS.

    Рекомендую к прочтению блогозапись «Почему Интернету нужен IPFS, пока ещё не поздно» и её обсуждение на Хабрахабре.
  • Эволюция мобильных платежей
    0
    Надеюсь, понятно, что в России участники и пользователи любых подобных разработок будут подвергаться разнообразным преследованиям и ущемлениям под тем предлогом, что они участвуют в деятельности террористических и экстремистских организаций, в том числе финансируя и даже основывая их, совершают самоубийства и подталкивают к ним, покупают и продают наркотики и налаживают их производство и распространение, растлевают детей и животных и покемонов обоего пола (после чего публикуют и просматривают в своём Интернете эти сцены на своих компьютерах), получают финансирование из-за рубежа и выполняют зарубежные задания, распространяют нелицензионные объекты авторского и патентного права (включая аниме, мангу, визуальные романы, ранобэ, данмаку — и даже, страшно сказать, дакимакуры!), не платят налоги и сборы (в том числе акцизные) и способствуют укрывательству средств, создают денежные и иные суррогаты (в том числе водочные), участвуют в захвате рабов и в последующей работорговле, подкупают должностных лиц и законодателей, и так далее, и так далее.

    Скоро и владение смартфоном будет вызывать вопросы.
  • Похоже, Github опять недоступен в России… и другие сайты
    0
    Яровая, Мизулина, Роскомнадзор, Роспотребнадзор и даже лично Путин — местная проблема в РФ. И почему мы ещё не добились, чтоб  —  —  —

    Вот потому и не добились.
  • Похоже, Github опять недоступен в России… и другие сайты
    +2
    Аналогично. Ростелеком-Юг. В опросе ответил «да».
  • Гамбит Яровой
    +1
    Да, металлодетекторы — это общеизвестная показуха.
  • Гамбит Яровой
    +2
    Пишут, что о том есть судебное решение 2013 года. Стало быть, это надолго.

    Решение это даже обжаловать обычному гражданину из айтишников просто так не дадут, небось: скажут, что лицо не заинтересованное — подите, мол, прочь, не утруждайте занятых людей.
  • Гамбит Яровой
    +1
    Во всяком случае, мирного договора нет. Есть декларация 1956 года, но это не договор ещё.
  • Гамбит Яровой
    +3
    Проблема в том, что народу будут назойливо показывать дефекацию политической оппозиции. Это грубое и кощунственное посягательство на незыблемые основы гражданской свободы на началах действительной неприкосновенности личности, свободы совести, слова, собраний и союзов, дарованные Святым Последним Императором в первом же пункте его Манифеста 17 октября.

    Манифест 17 октября
    [фотокопия Манифеста 17 октября]
  • «Молчание – золото»: 13 вещей, которые не стоит говорить разработчикам и тестировщикам
    0
    Мрачно подозреваю, что это антиклерикалисты.
  • Дополненная реальность и социализация людей на новом уровне
    +2
    А вон та девушка вдалеке… Судя по её статусу, она не против познакомиться.
    …но только до тех пор, пока она не взглянет в дополненной реальности в зеркало и не увидит над головою пришедшее из TOR анонимное сообщение «6 биткоинов тому, кто убьёт её; 7½ биткоинов каждому, кто заметно искалечит её способом, исключающим немедленную смерть».

    (Не слишком сочувствуйте ей, потому что рано или поздно и Вы также через свою систему поглядите в зеркало и увидите, например, сообщение «10 000 дирхемов ИГИЛ¹ за голову создателя системы дополненной реальности, существенно упростившей деятельность армейских операторов дронов-убийц в США». Или, наоборот, «100 000 долларов США за сведения, способствующие аресту включённого в список FBI Most Wanted создателя заведомо противозаконной системы дополненной реальности, существенно упростившей и вербовку, и деятельность террористических ячеек ИГИЛ¹ на территории США; после ареста подлежит лишению гражданства и помещению в Гуантанамо». Или, скорее всего, «950 000 рублей за задержание создателя системы дополненной реальности, использующейся экстремисткими суицидниками наркотерроризма с целью биткоинистической педофилии в Интернете; после задержания передать в ближайший отряд Росгвардии для химической кастрации согласно Федеральному закону от 29.02.2012 г. № 14-ФЗ и его поправкам 20XX года, а равно и для последующей многолетней следственной изоляции».)

    Вообще пора бы рассматривать для начала то, каким образом каждое изобретение может быть использовано во зло.

    Придумали колючую проволоку для защиты овец от волков — сами окажетеся овцами за колючею проволокою в концлагерях и шарашках.

    Придумали взрывчатку для горных работ — получите расцвет бомбизма-терроризма на столетие вперёд и куда более опустошительные войны.

    Расщепили ядро атома — тысячелетиями живите под дамокловым мечом уничтожения всей биологической жизни.

    Изобрели хорошо сжимающий аудиокодек (видеокодек) — получите долгосрочные архивы всех (видео)телефонных переговоров в руках у государства и на чёрном рынке.

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

    Сами изобретатели потихоньку для себя и для своего потомства изобретают всё более идеальный, всё более тягостный электронный концлагерь.

    ____

    ¹  Террористическая организация, запрещённая в Российской Федерации.
  • Госдума приняла весь пакет «антитеррористических» законов Яровой-Озерова
    +2
    После поголовного голосования за мизулинский антихентай это им ужé не поможет.
  • Госдума приняла весь пакет «антитеррористических» законов Яровой-Озерова
    +2
    Никто же не будет пользоваться сотовым с тарифом, скажем, за 20 000 в месяц.
    Совершенно верно.

    Законодатели просто придумали наконец, как именно следует действовать, чтобы экономическими методами удушить весь Интернет и всю сотовую связь в стране, кроме незначимо узкой прослойки сверхбогатых (и иных привилегированных) семей.

    Затем и для истребления большинства грамотных людей (вместе с их семьями) что-нибудь придумают эти красные кхмеры.
  • Госдума приняла весь пакет «антитеррористических» законов Яровой-Озерова
    +3
    Или, в стихотворной форме,

    «Воду в ступе, гад, не смей толочь ты! —
    Лейтенант брезгливо указал. —
    Ведь от длинной электронной почты
    У чекистов устают глаза».
  • Принят закон о налоге на Гугл
    0