• Как мы музицировали с нейронными сетями v 2.0
    0
    Да, согласен. :)
  • Почему отписка от рассылки занимает несколько дней?
    +6
    Есть один банк. Наверняка вы о нем слышали, а если вы живете в Великобритании — с вероятностью 10% это ваш банк.

  • How to Painlessly Unite Art with Java, JavaScript, and Graphs or The Story Behind Creating an Interactive Theatre Produc
    0
    Извиняюсь. Я англоязычную версию поставил, а год уже сменился. Спасибо исправлю.
  • Программист на всю голову: как кодинг влияет на мышление
    +1
    Говорю на 4х языках.

    Эстонский не похож на индо-европейские, другая семья языков, артиклей нет, есть глагол аналог to be (бытия), нет будущего времени, имеются два инфинитива глагола (в русском и прочих один). Например Если <<я ИДУ ПИТЬ>>, то ПИТЬ будет в одной форме инфинитива, поскольку действие, если <<я ХОЧУ ПИТЬ>> то в другом инфинитиве, поскольку чувства. Ну и прочие мелочи.

    Русский, нет соединительного глагола а-ля to be(отсюда есть мнения, что поэтому в русской философии не так много внимания уделялось онтологии в зависимости от западной), артиклей, вместо системы времен используются совершенные/несовершенные формы и так далее.

    Английский — понятно.

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

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

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

    Я бы сказал что говорящим на одном языке часто бывает сложнее понять друг-друга, особенно если люди думают по разному, из разных классов, по разному верят в символы (относятся к политике и живут в разных пузырях)
  • Как соединить Java, Js и графы с искусством, или история о том, как создавался интерактивный театр
    0
    У нас есть регистрация, где выдается токен на устройство. Все что без токена откидывается. Тут проблема в том, что публика оченõь разная, и даже два-три дополнительных поля ввода играют роль и ухудшают user experience. Например в начале у нас было поле введение имени (нажатие, печатать), выбор языка (нажатие, дропдаун, выбор языка — 2 нажатия), возраст — нажатие, кнопка Зарегестрироваться — всего 5 нажатий. Мы поставили две кнопки (По русски — По эстонски) и поле ввода имени, всего 2 нажатия. Вводить цифры дополнительная сложность. Мы ограничиваем еще на инфра стороне, но да, некоторые, кто знал, голосовали из дома.

    Голоса учитываются только те, у кого валидный токен полученный на момент регистрации.

    В театре есть Wi-Fi, но большинство сидят на 4G, и у нас бывали проблемы когда рядом происходило какое либо массовое мероприятие и вышка оказывалась перегружена, из-за чего у части людей возникали затыки с голосованием.
  • Колмогоровская сложность и наши поиски смысла
    +1
    <<мы сможем определить, выводит ли она требуемую строку.>> Hет, в общем виде не можем. Автор статьи не до конца понимает. Теорема Райса говорит что не существует общего доказательства того, что программа делает то что надо(выводит нужную строку), которая следует из проблемы остановки машины Тьюринга, которая в свою очередь следует из теоремы о неполноте Геделя. Отсюда вся эта армия тестировщиков в ИТ и бесконечно обновляющийся Windows без определенного времени, что обновление закончится через 2 минуты и не больше…
  • Логирование как способ отлаживать код
    +3
    Да, сняли с языка.
    Но все же не выкидываем Дебаг. И то и то полезно.
    Но в целом, именно хорошее логгирование позволит понять почему именно в проде через неделю-две что то падает. Мультипоточность, утечки памяти, и прочие вещи связанные с CAP теоремой ловятся часто только через логи. НО. Часто возникают ситуации, когда надо идти и смотреть в ключевых точках что происходит, и от этого никуда не деться.

    Мир не черно белый. Нет одного правильного подхода. Серединный путь, как говорил еще Будда про ИТ разработку.
  • Программируй меньше, думай больше… инкрементально
    +1
    Да будут счастливы все те, кто уверен наперед что он знает как оно должно быть. Автомобиль, переднеприводный, мощность до 200 киловатт, дизель, салон кожаный темный, купе, крыша нежесткая. И кому рынок ответит не фи, а да-да-да.
    Пока ты не вышел в прод и не получаешь реальную, еще раз, реальную обратную связь, а не инженерные предположения как оно должно быть, и должно быть ли вообще, можно пилить все что угодно.
    И скорость прогресса, после выхода в прод, получения обратной связи от людей кто будет пользоваться, вырастает в разы. Ну вот реально. кто пробовал, тот знает.
    Но желаю удачи с уверенностью знания наперед. :)
    image
  • Научное программирование: часть 1
    +7
    Эффект Даннинга-Крюгера во всей красе помноженный на хамство. Автор смешал все в кучу, декларативное с императивным. На любые вопросы, тыкает прочитайте определение. Схоластика в 21 веке. При чем о философии науки даже и не слышал :) про математику, абстракции, языки программирования и прочее даже говорить не хочется. Хочется развидеть.

    Что правильнее Лямбда исчисление Черча, машины Тьюринга, или вообще циклические теги? Очень мило, если бы не хамство, выглядели попытки натянуть математические концепты на «химические элементы»

    горшочек не вари.

    lurkmore.net/%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B0%D1%8F_%D0%9E%D0%A1

    является совокупностью бредово-казённо-абсурдных высказываний наподобие:

    Процессор Пентиум — это логическое устройство. Любое действие процессора определяется логикой этого процесса.

    Горлов А. В.


    vs.
    Факты:

    1. Всё в окружающем мире состоит из мельчайших неделимых химических элементов и поэтому за основу главного объекта необходимо брать именно химический элемент обладающий множеством моделей поведения.
  • Never Fail Twice, или как построить мониторинговую систему с нуля
    0
    Скорее всего потому, что метрики уже писались в Инфлюкс для визуализации в Графане. Плюс мы умеем хорошо готовить эту базу.
    Но у нее есть тоже свои особенности, которые надо учитывать. Или вот например свежее, поначалу я грешил на графану, почему и открыл issue там но
    github.com/grafana/grafana/issues/11482

    Хотя проблема наблюдалась только в графане, моя система не имела проблем.

    По большому счету сделать коннектор к другой базе не проблема, там достаточно имплементировать интерфеис, который должен возвращать данные в формате pandas.DataFrame

  • Never Fail Twice, или как построить мониторинговую систему с нуля
    0
    Очень хорошая статья.

    Я пробовал несколько подходов, ARIMA, Twitter ESDA. Но по факту лучше всего оказалось считать моделью данные с предыдущей недели пройденные скользящими средними и разбросом с окном 60 минут (гранулярность 1 минута). Баундариз считается как значение трех значений скользящего разброса по обеим сторонам.

    В дальнейшем я хочу считать модель по данным 4 недель, усредняя их и давая уменьшающиеся веса по мере удаленности.

    Если на той неделе был инцидент, то я пока просто не беру эту неделю, хотя писал функцию которая вырезает этот кусок из предыдущих недель. Аутлаером считается то, что выходит за границы.
  • Never Fail Twice, или как построить мониторинговую систему с нуля
    0
    Что вы имели в виду под «описание не архитектуры, а то как именно выполняется поиск аномалий»? Я опишу подробнее.
  • Never Fail Twice, или как построить мониторинговую систему с нуля
    0
    У меня сейчас интересный проект отпочковавшийся от этой системы. Это магистерская работа для нашего интерна. Мы можем представить метрики как матрицы, и идти по ним конволюционными ядрами, которые подстроены под поиск градиента (падения или подъема).
    image
    В прошлом году были удачные академические публикации о применении этого метода с финансовыми рынками. Я писал о своем воспроизведении на английском тут.
    Я напишу если этот подход будет удачным. Но теоретически все должно получиться.
  • Never Fail Twice, или как построить мониторинговую систему с нуля
    0
    Да, у меня были сложности с тем как на русском определить термины. Это сложно.
    Monitoring, Anomalies, Alerts это разные термины.
    Поэтому возможна путаница.

    В некотором смысле параметры все равно приходится подкручивать ручками. Падение на 40% от среднего на сайтах с десятками тысяч пользователей — проблема. На других брендах где среднее порядка сотни на часовом интервале падение на 40% норма. Это тонкий баланс. Универсальные алгоритмы и подходы как правило работают плохо. И в то же время хочется быть как можно более универсальным.

    Да, я чищу явные выбросы. Просматриваю метрики и ищу слишком сильную динамику подьема. Но там еще есть свой технический долг :)
  • Об одной задаче, которую больше не предлагают на собеседовании
    0
    Обычный матан. Сходящиеся и расходящиеся ряды. Единственное, что многие после универа это подзабывают, а так никакой сверх математикой тут и не пахнет. Если курил матан в свое время, то все вполне легко решаемо, даже если и подзабыл.
  • Антипаттерны для поиска соискателей
    +2
    На самом деле, когда проводишь какое то количество собеседований, то очень видно как огромное количество людей, позиционирующих себя как серьезные девелоперы инженеры, отсеиваются на азах. Отсюда и попаболь которая сквозит во всех этих удивленных вопросах, о том зачем это надо, я фулл стек инженер, и мне не надо знать ни абстракты, ни структуры данных, я пользуюсь готовыми. В любом серьезном бэкэнде, особенно критичном по скорости или обьему, таких вопросов даже не ставится. Это кирпичики, и инструменты для разбиения сложности. Со сложностью можно по разному бороться, но ООП в принципе и было представлено как адекватное решение многих проблем. В этом плане интересно написал Б. Страуструп в своей культовой С++, расказывая о проблемах и сложностях кодовой базы в десятки тысяч строк кода. Я сейчас проектирую большие API и проблемы борьбы со сложностью там встают как нельзя больше, код готорый мы генерируем из схем весь абстрактный, то есть все классы абстрактные, расширение функциональности происходит от наследования от них. Это все тонкие вопросы и серебряной пули нет.
    Здесь в ссылке есть отличный пост на эту тему.
    https://blog.codinghorror.com/why-cant-programmers-program/
  • Руководство: как использовать Python для алгоритмической торговли на бирже. Часть 1
    0
    Согласен. Это must have.
    Сам сеичас по работе занимаюсь анализом и прогнозом временных рядов, ищу решение. Но имея опыт в сфере биржевых систем могу сказать сразу, все анализы временных рядов в этой сфере не более чем кидание монетки. Движение цен не предсказывается. Цена может пойти как вверх так и вниз. Задним числом конечно же все это можно уже обосновать. Впрочем как обучающая статья, анализ бизржевой информации вполне может использоваться.
  • Антипаттерны для поиска соискателей
    0
    Судя по тому как заминусовали, я могу сделать вывод о текущем уровне части читателей Хабра. Если утверждение о том, что за 10 лет в индустрии про абстракт классы можно забыть (мы говорим о разработчиках и архитекторах) то по сути, здесь уже не о чем говорить. О конкретных количествах абстракт классов ушедших в прод тоже. Я не считаю. Концепция абстракт классов это инструмент, инструмент для лучшей борьбы со сложностью, DRY и все такое. Не вижу смысла вести дискуссию с людьми, кто не понимает элементарных вещей. Я думаю на собеседовании этот вопрос по прежнему остается актуальным. Кто бы что не говорил.
  • Антипаттерны для поиска соискателей
    0
    На прошлой неделе два абстракт класса.
    Пример из жизни, когда реализуется какая либо общая функциональность для различных имплементаций.
    Например генераторы кода для С, Java, Json схем, из XML схем.
  • Антипаттерны для поиска соискателей
    –7
    10+ опыта и забыл про абстрактные классы? А что он 10 лет писал, FizzBuzz?

    Я не о том уместен или неуместен вопрос, а об отмазке забыл за 10 лет. А в прод он Визуал Бейсик запускал?
  • Три цикла в аттракторе Лоренца
    +1
    Лекции по Нелинейной Динамике Ю.Данилова также достаточно неплохи. Насколько я знаю, их выпустили отдельной книгой.
  • Создание веб-приложения на Go в 2017 году. Часть 2
    0
    Спасибо, достаточно информативно. Сам подумываю в последнее время заняться Go вплотную, поскольку судя по всему, достаточно интересная экосистема складывается вокруг него.
  • Эволюция фрактальных монстров
    0
    Чтобы не писать долго, отошлю к Пенроузу, он достаточно подробно это рассмотрел. Граница рекурсивно нумеруемых множеств. Там немного читать.

    http://www.rulit.me/books/novyj-um-korolya-o-kompyuterah-myshlenii-i-zakonah-fiziki-read-362086-80.html
  • Эволюция фрактальных монстров
    +1
    Класс. Еще интересные фракталы получаются при вероятностном выборе афинных преобразований. Самый известный лист Папоротника. https://www.kv.by/archive/index2002491201.htm
    В целом же фракталы интересны тем, что с их помощью можно обьяснять теорему о неполноте Геделя, и проблему остановки Тьюринга. Ну и как пример математического Платонизма тоже.
  • Сложность на границе хаоса, или что общего между сексом, нейронными сетями, микросервисами и организацией компании
    0
    Число 2 загадочным образом всплывает с совершенно разных концов. Например оптимум связности в NK автоматах. Пола два, а не три, четыре или пять. Оптимум dropout также откидывать элементы с вероятностью одна вторая, то есть двойка в степени минус один. Прямо таки метафизическое число.
  • No Bugs, No Flaws или о надежности систем как таковых
    0
    Pardon ) Пальцы жили своей жизнью в момент печатания.
  • Галлюцинируй как Трамп, или мини-анализ Рекуррентных Нейронных Сетей
    0
    Я как раз сейчас более тесно ознакамливаюсь со второй библиотекой. И она более гибкая в плане построения архитектур сети. Я постараюсь попозже ответить на этот вопрос, когда закончу с тренингами новых моделей.
  • Сложность на границе хаоса, или что общего между сексом, нейронными сетями, микросервисами и организацией компании
    0
    Абсолютно согласен, что точки отсчета нет, мы сами её и приносим. Антропный принцип я указал, как яркий пример этой самореференции, и я выбрал его, поскольку мне надо на чем то стоять :)
    Иначе можно пойти по пути Шопенгауэра :)
  • Сложность на границе хаоса, или что общего между сексом, нейронными сетями, микросервисами и организацией компании
    +1
    По поводу автореферентности, есть такой момент, который философы нащупали раньше, а математики схватили позже. Я имею в виду Гёделя, с его формальными системами, которые могут ссылаться сами на себя, или машины Тьюринга, которые могут эмулировать сами себя и свой код рассматривать как данные. С одной стороны эта автореферентность дает большую мощность, и в то же время ведет к пессимизму, поскольку получается, что формальные системы неполны и противоречивы, а машина Тьюринга никогда не остановится. Сознание не является формальной системой, и по большому счету неизвестно, насколько вычислимо оно, т.е. может ли оно эмулироваться вычислительной системой, или для него нам надо шагнуть еще куда-то выше. Но сознание это автореферентная система, мы рефлексируем, мы можем обращаться к самим себе. И тут скорее всего возникают те же проблемы автореферентности. Ноам Хомский в свое время, так же предположил, что существуют такие вопросы в рамках сознания которые мы разрешить не можем. То есть так называемые философские вопросы, на которые можно ответить и так и этак. Пенроуз в свое время утверждал, что сознание невычислимо, поскольку на него не действуют ограничения Гёделевских формальных систем. В то же время вопросы философии сознания могут быть как раз аналогами Гёделевских выражения на более высоком уровне абстракции.

    Я слышал о книге, которую вы упомянули, но не читал ее. В то же время, естественно, что все данные вопросы актуальны в рамках оппозиции субьект — обьект, но я скорее сторонник антропного принципа, через нас Вселенная познает сама себя, а поскольку в ее основании лежат некие математические истины, то гипотетический «Бог» является математиком, пусть он даже и не кидает кости.
  • Галлюцинируй как Трамп, или мини-анализ Рекуррентных Нейронных Сетей
    0
    Спасибо, не заметил аллюзию. Кстати я сам Платонист в отношении математики, и то, что Бог грубо говоря был математик, меня и поражает больше всего.
  • Галлюцинируй как Трамп, или мини-анализ Рекуррентных Нейронных Сетей
    0
    Огромное спасибо. Не знал, поскольку на лапропе особо обучение не проводил. Торч интегрируется с OpenCL вполне неплохо.
  • No Bugs, No Flaws или о надежности систем как таковых
    0
    Не всегда нужен общий вид. Но даже в вашем выраженном примере в действительности выполняется не этот код. Он транслируется на все более низкие уровни абстракции, где последним уровнем являются по видимому электроны, которые подчиняются законам физики и выполняют computation. Но между вашим кодом и электронами множество слоев, в том числе и операционная система, и внутреннее устройство чипа и т.д. и т.п. Это все должно приниматься во внимание.
  • No Bugs, No Flaws или о надежности систем как таковых
    0
    Кстати к делению на ноль.

    Сложение, умножение и вычитание можно получить в арифметике Пеано с помощью примитивных рекурсивных функций. И эти операции будут всегда останавливаться. Их всего три операции. Константа(0), Функция Следования(инкремент +1) и собственно Функция Проекции (Рекурсия) которая все связывает. Три действия арифметики реализуются этими концептами. Их достаточно для реализации одного шага машины Тьюринга. Содержимое машины Тьюринга может быть представлено в виде очень большого числа и примитивные рекурсивные функции могут использоваться для чтения/записи или передвижения влево/вправо, но для полноценной работы машины Тьюринга необходимо больше. Поскольку они могут не останавливаться никогда. Также и с делением в арифметике. Когда появляется деление, то для этой операции необходима Функция Минимизации, которая уже не останавливается гарантировано. В случае же нуля, остановки не происходит, почему я и говорил, что деление на ноль и проблема остановки/тестирования это одна проблема по большому счету в Computer Science

    Partial Recursive Functions

    Отличная книга по этой теме.

    Understanding Computation

    Отрывок оттуда.

  • No Bugs, No Flaws или о надежности систем как таковых
    0
    Да есть. Я сам когда то участвовал в разработке таких ассесмент систем для Continious Delivery pipeline.

    Не помню деталей, но для проверки софта AirBus 330 (нового на тот момент) была внедрена такая система, и действительна она снизила риски и нашла много всего невкусного. Но тем не менее это были не все баги, и потом компания сталкивалась с ними в дальнейшем. Но теме не менее по результатам она себя больше чем оправдала. Извините не помню деталей в числах, поскольку давно с этой сталкивался. Вот отрывок из статьи тех времен.
    https://books.google.ee/books?id=OZhCTkrCyRwC&pg=PA153&lpg=PA153&dq=AirBus+a330+software+test+history&source=bl&ots=quLKmzcdgl&sig=SosTfKgQ4GveVSjXGbxIQBIcRu8&hl=ru&sa=X&ved=0ahUKEwi-xrCtjKTTAhVEkiwKHcYqAOkQ6AEIXTAH#v=onepage&q=AirBus%20a330%20software%20test%20history&f=false
  • No Bugs, No Flaws или о надежности систем как таковых
    0
    Да это еще один импенданс между формализмом и реальным миром.
    Плюс формальная верификация имеет отношение к теореме о неполноте Гёделя. Всегда будут существовать предложения которые в рамках данной формальной системы недоказуемы, или же эта система противоречива и/или неполна. По большому счету, Гёделевская неполнота, Тьюрингова остановка, оптимальность по Колмогорову это грани одной и той же проблемы. Что бы мы ни делали, решали бы проблему перебором и различными синтаксическими комбинациями формальных правил, или использовали эвристику в рамках тех же правил, нет возможности принципиально обосновать и доказать все утверждения системы.
    Грубо говоря даже на арифметике мы проваливаемся в «деление на ноль»(метафора). Формальная верификация применима к очень узкому ряду проблем.
  • No Bugs, No Flaws или о надежности систем как таковых
    0
    Формальная верификация это и есть вычислительный аспект. Теорема Райса применима к ней.
  • Как мы делали робота-футболиста
    0
    Да, все верно. Плохо то, что каждую камеру легко сбить, может возникнуть необходимость менять камеру. Решать проблемы с перекрывающимися полями.
    Насчет доступности решения на FPGA в открытом доступе, я ничего не слышал.
  • Как мы делали робота-футболиста
    +1
    Да, все верно.
  • Как мы делали Multitouch Table
    0
    Да, я знаком с reactivision. Там работа идет с маркерами.В принципе, можно написать свою распознавалку допустим не маркеров, а жестов. То есть, смотря как прикладывать руку к столу. Например три пальца одной руки это одно, четыре — другое. В Java есть достаточно удобный API как для работы с MIDI, так и с TUIO, это дает возможность транслировать сообщения на MIDI пользуясь какой либо внутренней логикой.
    Вообще была задумка создать интерактивные декорации. То есть Multitouch на нескольких плоскостях. Но там появляются сложности другого плана, например соединение нескольких проекторов. Посмотрите например это


    Вот наши эксперименты с использованием Prime Sense технологии. Синтез звука привязан к жестам. Визуальная часть тоже.


    Готовый концепт.


    Но проблема заключается в финансировании. Такие вещи требуют некоторых вложений.
  • Как мы делали Multitouch Table
    0
    По большому счету, интересно делать именно какие то более глобальные решения. Интерактивный маппинг на улице, к примеру.