?

Log in

No account? Create an account

Учим JavaScript

Учим JS и собираем сюда всю толковое, что удаётся найти.

Собеседование на должность программиста JS (2014 год, явно устарело).

ООП - ссылка с "собеседования" - очень познавательно и хорошо разъясняет взаимосвязь "обычного" ООП и ООП в JS.

Что такое strict mode
Ссылка

'use strict'


По умолчанию применяется внутри модулей, т.е. внутри функций.
Разные глупости, типа присвоения константам, обращения к несуществующим переменным, удаления неудаляемых свойств, приводят к ошибке, а не молча игнорируются. Исключены или сделаны менее уязвимыми способы обращения к arguments, caller. Исключено создание переменной присваиванием. eval не может создать новых переменных в окружении.



Что нового в ES 6
Ссылка

  • let - переменные в текущем блоке, а не в текущей функции; const

  • Обратная кавычка - интерполяция (многострочных) строк

  • Destructuring

  • Классы - синтаксический сахар для конструкторов

  • Обещания

  • Стрелочные функции - сахар для bind. Позволяют использовать в качестве this значение this из текущей области видимости, а не this, определяемый по а.функция()

  • for .. of

Tags:

Вроде фигня - имя пользователя. Нетрудно привыкнуть, что с фамилией Щукин вы называетесь на своём рабочем компьютере Shukin. Или Shhukin? Или Shykin? А кстати, как вообще ваша фамилия, Щукин или Шукин?

А собственно, почему нельзя назвать Щукина - Щукиным? Вот техническое обсуждение темы "Может ли имя linux-пользователя содержать в себе символы кирилицы?" на известном форуме Linux.org.ru.

Приведу выдержки, со своими комментариями курсивом.

Eddy_Em> Может, но так делать не надо.

Nastishka> Создайте нормальную учетную запись в Linux с нормальным именем, а в самбе привяжите её к «самбовскому» имени кириллицей. (под "нормальным" понимается имя в латинице. Т.е. латиница - это нормально, а кириллица - видимо, ненормально)

cadaber> Вопрос, кто там у вас рулевой, кто за штурвалом. Ты, секретарша шефа, или главбух? Определись. Если ты рулишь, так забей на неправельные имена, это явно не твоя проблема. (Здесь предписывается администратору поставить руководство перед фактом, что имена будут "правильными", т.е. в латинице, поскольку он тут "рулит")

drBatty> ты про эпичные дыры юникода не слышал? про несимволы, которые не матчатся точкой? тогда всё ясно...(Речь о следующем: затруднения для создания имён с кириллицей заложены в самом стандарте представления текста utf-8. Это - сложный организационный и технический вопрос, но в России он не поставлен на повестку дня).

drBatty> не говори. А музыканты рабы итальяшек. А вот доктора вообще у какого-то мёртвого народа в рабстве.(Выдвинут тезис, что в компьютерах стандарт - это английский, как в музыке - итальянский. Популярная точка зрения в ИТ.)

Eddy_Em> Ага: у одного - юникод, у второго - КОИ, у третьего - 1251… (Ещё одна существенная техническая проблема. Стандартов представления кириллицы несколько, и когда они встречаются в одном компьютере, возникает проблема их несовместимости между собой. Это - ещё один сложный организационный и технический вопрос)

mumpster> он (Шеннон) взял два языка -англ и рус. как антиподы преимуществом русского оказалось гораздо большая помехозащищённость по сравнению с английским за счёт большей избыточности. компактность англ. достигается в немалой степени за счёт утрат почти полной утраты флексий и как => увеличения зависимости от контекста и полноты слов и снижение помехозащищённости. (Продолжается обсуждение тезиса о том, что русский язык - вообще плохой и не годится для компьютеров. Здесь приведён "математический" аргумент в пользу русского, который был найден Шенноном. Запомним его на будущее :) )

В сухом остатке: нельзя иметь имя пользователя в кириллице в компьютерах под управлением Linux.
В лиспе, если среди аргументов функции написано слово ч, то это означает "взять значение переменной по имени ч". Если же нужно получить сам символ ч, то нужно написать 'ч .

В тикле, если в аргументах процедуры написать ч, то это означает "слово ч". Чтобы получить значение переменной по имени ч, нужно написать $ч.

Странно, правда? Я спал и мне пришло в голову, что это тоже оптимизация. Если в языке больше вычислений, то лучше делать как в лиспе. Если в языке много констант, то лучше делать как в тикле. Ясно, что это зависит от области применения. Например, в программе умножения матриц констант мало, а в описании какого-нибудь интерфейса всё может почти целиком из них состоять. Но ведь никто этого не считал...

Tags:

Осенило

Сидел, работал, слушал классическую музыку. И вдруг осенило. А ведь настоящий Бог и правда может любить людей, даже не как своё творение, а как своих детей. Я много рассуждал в своей жизни о боге, о религиях, слышал утверждения о том, что Бог нас любит, но никогда всерьёз не рассматривал, что такое может быть. Честно сказать, я думал, что это поповская разводка. Нужно сначала сказать людям что-то приятное (про любовь бога), неприятное (про ад), а пока прихожане будут тупить, можно спокойно изымать материальные ценности.

Сам я почему-то всегда критично относился к себе, к отдельным людям и к человечеству вообще. Ну плохое оно, это человечество. Врёт, применяет насилие, выходит из умеренности, пребывает в состоянии быдла, уничтожает нашу планету. Поверить в то, что Бог-творец, создавший галактики и бабочек, может _такое_ любить - ну Бог должен быть для такого полным лузером. Уже давно пришёл бы, смял обратно в комок глины неудавшийся горшок и начал лепить заново.

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

С rusvesna.su

[reposted post] О цензуре в Твиттере



О цензуре в Твиттере

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

Соцсеть Twitter массово блокирует учетные записи и удаляет из бесед сообщения, если их авторы используют кириллицу. За это несет ответственность новый алгоритм Twitter, направленный на пресечение деятельности русскоязычных троллей. Алгоритм принимает невинные сообщения, написанные даже не по-русски, но с использованием кириллицы, за провокационные публикации на политические темы. Twitter понадобилось два дня, чтобы прокомментировать ситуацию по просьбе издания The Verge. В конечном счете компания сообщила, что знает о проблеме и работает над ее решением, однако по-прежнему намерена принимать меры по защите своих правил и борьбе со спамом и автоматизацией.
Первыми на массовые блокировки начали жаловаться пользователи из Болгарии — она является одной из стран, где используется кириллическое письмо. По наблюдениям пользователей, к блокировке учетной записи или удалению сообщения приводит упоминание в кириллической публикации @YouTube или любого другого популярного сервиса. Даже если изначальный твит не удаляется, то комментарии к нему, написанные кириллицей, скрываются из беседы.
Алгоритм никак не фильтрует учетные записи по дате создания — он может заблокировать любой аккаунт, созданный с 2009 г. Многие из забаненных аккаунтов существуют уже несколько лет и имеют тысячи подписчиков.
Как правило, заблокированные таким образом пользователи могут достаточно быстро доказать соцсети свою невиновность и возобновить работу учетной записи. Однако Twitter продолжает скрывать их сообщения из бесед, показывая вместо них надпись «твит недоступен». Кроме того, они не могут рассылать уведомление другим пользователям. Если жертва подобной «теневой блокировки» обращается в службу поддержки, ей отвечают, что все в порядке, ведь аккаунт не заблокирован.
Один из пользователей Twitter, журналист Майкл Трейси (Michael Tracey), привел выдержку из правил компании по определению того, что следует считать «аккаунтом, связанным с Россией». Как выяснилось, соцсеть обращает внимание, «был ли аккаунт создан в России, зарегистрировал ли пользователь аккаунт через российского телефонного оператора или на российский e-mail адрес, содержит ли отображаемое имя пользователя кириллические символы, часто ли пользователь размещает твиты на русском языке, и совершал ли пользователь вход в аккаунт с любого российского IP-адреса, даже один раз». Соцсеть считает аккаунт связанным с Россией, если присутствует хотя бы один из указанных маркеров.


http://www.cnews.ru/news/top/2018-05-23_twitter_blokiruet_vsehkto_ispolzuet_kirillitsu - цинк

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

Лимузин Путина марки "Кортеж" относится к семейству "Aurus". Т.е. дальше названия конкретной модели кириллица не пробилась. Чисто российское СП "Соллерс" и НАМИ грезит об иностранных рынках... Кроме того, в России есть машина UAZ Patriot. Все её видели, конечно. Слово Patriot на ней написано латиницей. Вот такой вот патриот. Стыдятся наши патриоты своей письменности. Что, слабо на русском-то назвать? Вот слова "Водка", "Спутник", "Путин" и "Новичок" весь цивилизованный мир выучил, язык не сломал. Убери сегодня из России письменность и русский язык, что будет объединять тогда Россию? Да ничего не будет. Ни-че-го.

Конечно, пост без картинки - это плохой пост. Недавно мы были в Сергиевом Посаде. В Лавре я сфотографировал табличку "не ходите по газонам", специально для подобного поста. Но время прошло, картинка затерялась, сейчас некогда искать. Не помню, был там только русский и китайский, или там был русский, китайский, английский именно в таком порядке. Можете себе её вообразить, или почитать вот этот божественный пост.

Если мыслить только о рынках, то скоро "Aurus" придётся переименовать в какой-нибудь "草泥马". Конечно, боты госдепа и намагниченные ими неразумные россияне наполняют все ленты комментариями о том, что английский - это язык международного общения, но уже сейчас можно видеть во многих местах, даже на улицах, как китайский становится вторым таким языком.

Думаете, вас минует чаша сия и не придётся учить китайский? Ну-ну. А почему его придётся учить? Потому что вы приняли принципиальное решение лакействовать. Тот, кто имеет чувство собственного достоинства, защищает родной язык. А если человек хочет стать лакеем, то он ищет, перед кем кланяться. Но потом не нужно пенять на кого-то, пеняйте на себя!

копаем gorillascript - часть 1

Вероятно, автор gorillascript перешёл на typescript (судя по его репозиториям), но.

Проблемы и решения.
1. Запустить под отладкой. Общая идея такая - корневой реп gorillascript скачиваем из github. Там есть ещё плагин для grunt. ЕГо тоже ставим в удобное место. Далее редактируем package.json, указывая этим двум репозиториям конкретные пути друг к другу. Возможно, это неправильно, но для меня это заработало. Пока я это не сделал, плагин скачивал второй gorillascript другой версии и это было нехорошо, т.к. та старая версия не работает.

2. Отладка grunt. Пока в процессе, но уже нашёл флаг -v, который заставляет его печатать.
В целом grunt можно отлаживать в VS Code, для этого создал отладочную конфигурацию. Пришлось прописать в ней прямой путь к /usr/bin/grunt - тогда он начал запускаться. КОгда я дошёл до того места, где рушится, на стеке получилась стопка из лямбд, апплаев и функций типа generatortopromise. Причём ткнуть в исходник этих лямбд нельзя. Тут я первый раз помянул лисп добрым словом, и видимо, не последний. Я думал, в лиспе плохо с отладкой. Ха!
Мы теперь ясно видим, что Путин хорошо потрудился на ниве укрепления обороноспособности страны. Я бы занёс в заслуги и спорт, но здесь ситуация сильно омрачена допинговым скандалом. Я думаю, что можно было более активно отстаивать честь нашей страны и вполне можно было себе позволить выйти из олимпийского движения. Например, НХЛ мог себе позволить не участвовать а Олимпиаде, почему же Россия не могла?

Тем не менее, главное, что развивается физкультура и спорт в стране.

Что касается обороноспособности, то я просто потрясён. Под прикрытием Сердюкова произошло перевооружение и модернизация армии, и мы побеждаем в Сирии. Также прекрасно получилось с Крымом. Правда, и здесь тоже неясна ситуация с остальной Украиной. Например, я читал про то, что в решающий момент администрация "Куликова Поля" остановила тех, кто хотел захватить власть в городе. С кем это было согласовано? Почему украинским войскам позволено обстреливать Донецкую фильтровальную станцию и нарушать её работу?

Не знаю, каков реальный выбор возможностей, но с Украиной ситуация выглядит плачевной. Стратегически может быть так, что Путин даёт украинскому народу время проснуться и осознать, что происходит. То же происходило лично со мной во время правления Ельцина, когда я постепенно избавился от либерального образа мысли, увидев на своём опыте, что либералы лгут.

Не знаю. Не могу сказать, что я чувствую себя спокойно в этом отношении. Но, во всяком случае, то, что у России есть сильная армия - это хорошо.

Теперь по пожеланиям. У меня их три.
1. Провести антиювенальную и просемейную реформу. Пока что я этого не вижу. Какие-то слова говорятся, но то, что происходит в реальности на законодательном уровне, выглядит очень опасным. Я имею в виду региональные регламенты о работе органов опеки, которые узаконивают вмешательство в семью. Это нужно поправить.

2. Прекратить многоэтажную застройку. Эти дома - это не дома. Не жилище человека. У нас большая и богатая природными ресурсами страна, мы можем позволить себе жить в соответствующих природе человека, маленьких домах. Кроме того, стягивание людей в мегаполисы делает Россию уязвимой перед ядерным ударом. Нельзя экологично победить США, т.к население США распределено по множеству городов и очень многие живут в пригородах. Т.е., чтобы забросать США атомными бомбами, нужно нанести действительно массированный удар по огромной территории. В России и население, и ключевые органы экономики расположены очень плотно. Достаточно разбомбить несколько крупных миллионников - и Россия падёт, при этом мировой экологической катастрофы не произойдёт, а богатства Сибири останутся доступны для освоения.

3. Заняться чистотой воздуха. Реально бороться со сжиганием различного мусора. Я живу в подмосковье и очень часто воняет то одним, то другим дымом. Судя по всему, в промзоне предприятия в промышленных масштабах сжигают отходы. Также горят свалки. Жгут мусор на садовых участках. Много пожогов травы, торфяных и лесных пожаров. Это стратегическая угроза здоровью населения, которая не имеет ответа от государства. А ответить тут легко - установить реальные штрафы за сжигание мусора.