Архив за 04 января 2019 - 9

Объект Ультима Туле из пояса Койпера похож на Снежную бабу

Данные, переданные межпланетной станцией New Horizons, позволили раскрыть особенности строения объекта Ультима Туле (он же 2014 MU69) из пояса Койпера.

Напомним, что аппарат New Horizons пролетел мимо тела Ультима Туле в первый день наступившего года. Станция передала на Землю фотографии этого объекта, находящегося на краю Солнечной системы.

Читать полностью »

Акции AMD стали лучшим активом 2018 года среди 500 крупнейших компаний

Читать полностью »

Недавно мне передали на поддержку проект на express.js. При изучении кода проекта я обнаружил немного запутанную работу с аутентификацией/авторизацией которая базировалась, как и 99,999% случаев, на библиотеке passport.js. Этот код работал и следуя принципу «работет — не трогай» я оставил его как есть. Когда через пару дней мне дали задание добавить еще две стратегии авторизации. И тогда я начал вспоминать что уже делал аналогичную работу, и это занимало несколько строк кода. Полистав документацию на сайте passport.js, я почти не сдвинулся с места в понимании того, что и как нужно делать, т.к. там рассматриваись случаи когда испольуется ровно одна стратегия, для котрой, для каждой в отдельности, и даются примеры. Но как соединить несколько стратегий, зачем и когда нужно использовать метод logIn() (что то же самое, что login()) по-прежнему не прояснялось. Поэтому, чтобы разобраться сейчас и не повторять тот же поиск еще и еще раз, — я составил для себя эти заметки.

Читать полностью »

Эй, фулстеки, давайте тренировать навыки. Предлагаю разминать извилины, как мне кажется, это интересно делать используя иную, непривычную, парадигму. Большинство разработчиков имеют развитой скилл алгоритмизации — задача превращается в кирпичики, которые нужно соединить, продумать последовательность ходов, которая приводит к желаемому заключению.
Вот тут, неделю назад, был упомянут Пролог, хотелось бы ответить, что язык Пролог подходит для решения задачек. Я уже затрагивал эту тему, и приводил несколько доступных мне решений случайных задач с сайта с заданиями на алгоритмы, хотелось бы показать, что любое сложное решение доступно изложению на декларативном языке, да и работать оно может не медленнее (ну-у, может, заметно не очень медленнее).
Взяться за представления следующей задачки долго не получалось, и вот уже получено первое решение, демонстрирую задачу и узнаю, на сколько оно сильно медленно.
Пролог интересен тем, что можно сотворить дедуктивную программу, которая показывает множество решений и может даже ограничивать его, но не дает способ перебора,
алгоритм будет выработан решателем интерпретатором.
Так вот, задача такова:

  1. Trapping Rain Water II
    Given an m x n matrix of positive integers representing the height of each unit cell in a 2D elevation map, compute the volume of water it is able to trap after raining.
    Note:
    Both m and n are less than 110. The height of each unit cell is greater than 0 and is less than 20,000.
    Example:
    image
    Given the following 3x6 height map:
    [
    [1,4,3,1,3,2],
    [3,2,1,3,2,4],
    [2,3,3,2,3,1]
    ]
    Return 4.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js