Search
Write a publication
Pull to refresh
4
0.1
Send message

Марвин Мински «The Emotion Machine»: Глава 2 «Отпечатыватели»

Reading time7 min
Views3.3K
image


§ 2-3 Отпечатыватели (Imprimers)

“Сейчас, стыд является ментальной мерой позора, в которой мы сжимаемся от осознания позора, а не от последствий действий, и нам остается только предполагать, какое составляется о нас мнение, из этого следует, что люди, перед которыми мы чувствуем стыд- это те, чье мнение имеет для нас значение. Эти люди являются: те, кем мы восхищаемся; те, кто восхищается нами; те, восхищение которых мы желаем добиться; те, с которыми мы противоборствуем; и те, чье мнение мы уважаем.”
— Аристотель в Риторике 2,6
Наш язык имеет огромное количество слов для описания нашего эмоционального состояния. Когда мы описывали игру Кэрол с грязью, мы уже должны были использовать целую дюжину: влечение, смятение, тревогу, самоуверенность, разочарованность, беспокойство, фрустрацию, страх, склонность, удовольствие, гордость, удовлетворение, стыд и печаль.

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

Студент: Вы уже начали обсуждать, что она должна иметь что-то вроде “связующих элементов”, которые заставляют её реагировать подобным специфическим образом — прямо как говорил Аристотель, из-за беспокойства её матери. Но это никак не объясняет почему одна только похвала не может сделать цель желанной, а это зависит от, ммм…, я не могу придумать правильное слово для описания этого — “человека к которому она привязана”?
Читать дальше →

Авторизация для ленивых. Наши грабли

Reading time57 min
Views29K


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

Поехали!

Let’s Encrypt начал выдавать wildcard сертификаты

Reading time1 min
Views106K

Let’s Encrypt перешагнул важную веху — с 14 марта каждый может получить бесплатный SSL/TLS сертификат вида *.example.com. Пример установленного сертификата:


https://subdomain.baur.im
https://any-text.baur.im

Читать дальше →

Операционные системы с нуля; Уровень 0

Reading time11 min
Views136K

Добрый день/вечер/ночь/утро! Есть один экспериментальный курс по операционным системам. Есть он в Стэнфордском университете. Но часть материалов доступно всем желающим. Помимо слайдов доступны полные описания практических занятий.


Чем этот курс отличается от прочих других? Большая часть кода пишется самостоятельно и выполняется на вполне реальном современном железе. В качестве целевой платформы выбран Raspberry Pi 3 model B. Т.е. достаточно актуальная архитектура AArch64. ARMv8 Cortex-A53, четыре ядра, 64-бита и вот это всё. В качестве основного языка программирования выбран Rust. Который безопасный, быстрый, без GC и так далее. Его, Rust, предполагается изучать во время курса.


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

Читать дальше →

Как восстановить потерянный в форме текст

Reading time3 min
Views57K
UPD.
Поскольку инструкция была перенесена из песочницы, где она пролежала очень долгое время, она частично не актуальна, но работает, хоть и не так стабильно.
Если у вас браузер на базе хрониума (хром, опера, яндекс браузер, вивальди, амиго и т.п.), то меняйте кодировку дампа на utf-8.
Если у вас firefox на utf-16.
В остальном старайтесь совершать как можно меньше манипуляций с браузером после утери данных и как можно быстрее снять дамп. Желательно снимать дампы с первых 2-3 процессов сразу, если вам не удастся найти данные в первом дампе или они слишком фрагментированы ищите в следующих.
Ссылка на ветку с комментариями, где можно найти некоторую доп. информацию.

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

НДС и фрилансеры, работающие с Upwork

Reading time4 min
Views41K
Статья изложенная ниже — рассматривает лишь один из аспектов касающихся уплаты налогов при работе с Upwork. В данный момент существует более полное руководство — Легальный вывод средств с Upwork в РФ.



Те, кто выводят средства с Upwork легально, вздрогнули, когда Upwork предложил «упрощенный» документооборот. В первую очередь потому, что этот документооборот подразумевал декларацию комиссий Upwork и уплату с них НДС.

Прореагировав на шквал возмущений, на неопределенный срок Upwork вернулся к старому документообороту. Напряженное ожидание, когда же Upwork прекратит работу со старыми договорами закончилось неожиданно — 3 июля 2016 года были внесены изменения в Налоговый кодекс, вступившие в силу с 1 января 2017 года. Отныне закону до лампочки, какие договора используются — НДС теперь надо платить всем. Подробнее проблема описана в статье Налоговый cуслик — 2.

Развернувшиеся на тостере дебаты о том, как ко всему этому относиться, еще продолжаются. Но выпущенное 3 дня назад Эльбой обновление, в том что платить НДС все-таки надо (хотя бы с точки зрения закона) убедило почти всех.

image
Читать дальше →

Две модели лучше одной. Опыт Яндекс.Переводчика

Reading time11 min
Views23K
Когда-то мы уже рассказывали о том, как появился и развивался машинный перевод. С тех пор произошло ещё одно историческое событие – его наконец-то покорили нейронные сети и глубокое обучение. Среди задач обработки естественного языка (Natural Language Processing, NLP) машинный перевод одним из первых получил строгое статистическое основание — еще в начале 1990-х. Но в сфере глубокого обучения он оказался относительно запоздавшим участником. В этом посте мы — команда Яндекса по машинному переводу — обсуждаем, почему это заняло так много времени и какие новые возможности открыл машинный перевод на основе нейросетей.

Мы также будем рады ответить на вопросы на встрече «Яндекс изнутри: от алгоритмов до измерений — в Переводчике, Алисе и Поиске» 1 марта (можно зарегистрироваться или задать вопрос в чате трансляции).



Фразовый машинный перевод


Всего три года назад почти все серьезные промышленные и исследовательские системы машинного перевода были построены с использованием конвейера статистических моделей («фразовый машинный перевод», ФМП), в котором нейронные сети не участвовали. Фразовый машинный перевод впервые сделал машинный перевод доступным для массового пользователя в начале 2000-х годов. При наличии достаточного количества данных и достаточных вычислительных ресурсов ФМП позволял разработчикам создавать системы перевода, которые в основном давали представление о смысле текста, но изобиловали грамматическими, а иногда и семантическими ошибками.
Читать дальше →

Регулярные выражения в Python от простого к сложному. Подробности, примеры, картинки, упражнения

Reading time25 min
Views1.7M

Регулярные выражения в Python от простого к сложному




Решил я давеча моим школьникам дать задачек на регулярные выражения для изучения. А к задачкам нужна какая-нибудь теория. И стал я искать хорошие тексты на русском. Пяток сносных нашёл, но всё не то. Что-то смято, что-то упущено. У этих текстов был не только фатальный недостаток. Мало картинок, мало примеров. И почти нет разумных задач. Ну неужели поиск IP-адреса — это самая частая задача для регулярных выражений? Вот и я думаю, что нет.
Про разницу (?:...) / (...) фиг найдёшь, а без этого знания в некоторых случаях можно только страдать.

Плюс в питоне есть немало регулярных плюшек. Например, re.split может добавлять тот кусок текста, по которому был разрез, в список частей. А в re.sub можно вместо шаблона для замены передать функцию. Это — реальные вещи, которые прямо очень нужны, но никто про это не пишет.
Так и родился этот достаточно многобуквенный материал с подробностями, тонкостями, картинками и задачами.

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

Как найти компанию спонсора визы в США. Tips and Tricks

Reading time9 min
Views93K

image


Статья для тех, кто хочет переехать работать в США. На Хабре есть несколько хороших статей про поиск работы в Америке. Тут я постараюсь добавить к ним собственный опыт и поделиться несколькими приемами, которые помогли мне получить долгожданный джоб оффер.


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

Читать дальше →

Ускоренный курс по ассемблерам

Reading time3 min
Views16K
Это перевод одной из статей Lin Clark. Если вы не читали остальные, мы рекомендуем начать с начала.

Чтобы понять, как работает WebAssembly, неплохо понимать, что такое код на ассемблере и как компиляторы его генерируют. В статье о JIT я сравнивала взаимодействие с компьютером со взаимодействием с инопланетянином.

Читать дальше →

Игры, в которых нужно писать код (часть 2)

Reading time3 min
Views60K


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

Вопросы для собеседования бэкенд-разработчика

Reading time16 min
Views201K
Этот список появился как личная памятка по темам, которые я обсуждал с коллегами и друзьями и в которых хотел разобраться поглубже…

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

В этом репозитории собран ряд вопросов, связанных с серверной частью, которые можно использовать при проверке потенциальных кандидатов. Ни в коем случае не рекомендуется задавать все вопросы одному кандидату: это займет несколько часов и вообще не имеет смысла, потому что они охватывают слишком широкий спектр тем. Никто не может знать всего. Выберите наиболее актуальный раздел и самые интересные вопросы, чтобы развернуть беседу.
Читать дальше →

Набор полезных утилит и библиотек мира .NET

Reading time2 min
Views4.9K
Довольно часто так бывает что кто-то когда-то сделал прекрасную вещь, а она либо никем так и не была найдена, либо быстро забыта. Потихоньку я буду стараться предоставлять в серии топиков информацию по различным проектам, на которые стоит обратить внимание. Многие из них специфичны. И тем еще более интересны.

IL Stub Diagnostic Tool



IL заглушки (stubs) динамически генерируются во время работы приложения на лету и управляют маршаллингом и вызовом целевого метода. IL Stub Diagnostic tool была создана чтобы улучшить качество отладки приложений. Это real-time монитор, который показывает детали каждой IL заглушки, создаваемой в исследуемом процессе. Для каждой заглушки утилита показывает ее IL код и сигнатуры Managed/Unmanaged методов
Читать дальше →

Парсеры, обработка текста. Просто о сложном. CFG, BNF, LL(k), LR(k), PEG и другие страшные слова

Reading time19 min
Views49K
Наверное, каждому программисту приходилось сталкиваться с задачами вида «прочитать что-то в формате А и произвести с ним некие манипуляции». Будь то json, логи nginx, cfg, sql, yaml, csv или что-то еще. Хорошо, когда можно воспользоваться библиотекой, однако, по разным причинам, это удается не всегда. Тогда и встает вопрос создания собственного парсера для заданного формата. И это, как говорят англичане, часто оказывается PITA (болью в ...). В этой статье я постараюсь облегчить эту боль. Кому интересно, добро пожаловать.
Читать дальше →

Создаем CSS кейлоггер

Reading time4 min
Views34K

Часто бывает так, что внешние JS файлы выглядят как угроза для клиента, в то время как внешнему CSS не придают особого значения. Казалось бы, как CSS правила могут угрожать безопасности вашего приложения, и собирать логины? Если вы считаете что это невозможно, то пост будет вам полезен.


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

Читать дальше →

Разработка игр под NES на C. Главы 1-3. От введения до Hello World

Reading time8 min
Views43K

Впервые я задумался о том, как разрабатывают игры под приставки где-то через 20 минут после того, как в самый первый раз увидел Turbo Pascal. На глаза иногда попадался Subor с клавиатурой, и появилась мысль: "Наверное можно набрать какую-то программу, а потом в нее поиграть". Но интерес быстро затух, потому что абсолютно никакой информации по этой теме тогда не было доступно. Следующий раз эта же идея всплыла, когда увидел вполне играбельные эмуляторы старых консолей. Тогда стало ясно, что вбивать листинг в саму консоль и необязательно. Где-то очень потом появился Хабр с благожелательной аудиторией для таких вещей. В какой-то момент даже начал собирать разрозненную инфу чтобы написать мануал самому, и вот сегодня наткнулся на готовый учебник, который явно надо перевести.


Разработка под старые консоли документирована вдоль и поперек, но именно по NES 99% информации относятся к разработке на Ассемблере. Меня почему-то зарубило, что надо освоить именно работу с С.


следующая >>>
image

Читать дальше →

Делаем разноцветные иконки с помощью SVG-символов и CSS-переменных

Reading time8 min
Views57K
Icons

Давно прошли те дни, когда для иконок в вебе использовались картинки и CSS-спрайты. С развитием веб-шрифтов номером 1 для отображения иконок на сайтах стали иконочные шрифты.

Шрифты — векторные, так что вам не нужно беспокоиться о разрешении экрана. Для них можно использовать те же CSS-свойства, что и для текста. В результате вы имеете полный контроль над их размером, цветом и стилем. Вы можете добавлять к ним эффекты, трансформировать или декорировать их. Например, повернуть (rotate), подчеркнуть (underline) или добавить тень (text-shadow).

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

Да, еще одна вещь, которая абсолютно невозможна при использовании иконочных шрифтов: поддержка многоцветности. Только SVG может это сделать.

TL;DR: этот пост позволяет вникнуть в то, как и почему. Если вы хотите понять весь процесс, читайте дальше. В противном случае вы можете посмотреть окончательный код на CodePen.
Читать дальше →

Отслеживаем действия пользователя с помощью CSS

Reading time4 min
Views27K

В этом посте вы сможете узнать, почему даже с выключенным JavaScript и без плагинов, вы все равно можете отсылать поведенческие данные на сторонний сервер.


Также здесь мы рассмотрим метод, как получить поведенческую информацию от пользователей используя только HTML и CSS.


Возможно, после прочтения поста, вам покажется что я "изобрел колесо". Так и есть, методы описанные в этом посте не новы, и используют спецификации которые поддерживают практически все браузеры.


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

Читать дальше →

Я разработчик с 9 до 17 (и ты можешь стать таким)

Reading time4 min
Views65K
Этот конкретный твит от Сафьи Абдалла сподвиг меня на некоторые размышления:
Пожалуй, непопулярное мнение (и тут немного иронии от меня).

Чтобы быть способным и отличным инженером, вам не нужно писать статьи в блоге, участвовать в проектах open source, выступать с техническими лекциями или делать что-нибудь ещё.

Можете оставить свой код в офисе — и это вполне нормально.
Такая позиция близка и мила моему сердцу, хотя я тоже понимаю иронию. Одна из вещей, которые я говорю потенциальным работодателям с тех пор как меня уволили за отказ оставаться программировать после работы — это то, что я не согласен на овертайм. По крайней мере, не на регулярной основе. Я могу иногда поучаствовать в авралах, когда критически важно срочно накатить конкретное изменение или исправить баг, но за исключением таких случаев я буду появляться, вкалывать — и пойду домой.
Читать дальше →

Немного про накрутку счетчиков посещений сайтов

Reading time4 min
Views35K

image


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

Читать дальше →

Information

Rating
6,275-th
Registered
Activity