Задать вопрос
  • Видел кто тепловую гео карту абсолютных значений (не плотности), формируемую на клиенте?

    NeiroNx
    @NeiroNx
    Программист
    Видел такую у Ventusky.com - но там свой движок который вытаскивает данные из jpeg (оказывается данные так очень мало места занимают)
    Ответ написан
    Комментировать
  • Как управлять областью просмотра leaflet?

    freeExec
    @freeExec
    Участник OpenStreetMap
    Погулил за вас в последний раз
    map.panTo(new L.LatLng(40.737, -73.923));
    map.setView(new L.LatLng(40.737, -73.923), 8);
    Ответ написан
    Комментировать
  • Зачем нужены Gulp/Webpack?

    Это Taskrunners (запускатели задач), предназначение которых - с помощью JavaScript-библиотек автоматизировать большое количество различных процессов, которые производятся с ресурсами проекта при разработке и отправке в продакшн.

    Например,
    – Компиляция файлов препроцессоров в CSS
    – Объединение большого количества файлов стилей в один
    – CSS, JS, HTML, SVG -минификация
    – Сжатие изображений
    – Создание спрайтов из отдельный SVG-файлов
    – Оптимизация и в какой-то степени "валидация" HTML (например, проставить атрибут alt у всех img
    – и много другого
    Ответ написан
    3 комментария
  • Какие проекты написать для портфолио на Java?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Коллективный блог напишите.
    Ответ написан
    1 комментарий
  • Centos7, как обновить postgresql с 9.2 до 10 версии?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    1. Остановить postgresql
    2. сделать бекап баз дампом + копия директории с базами.
    3. сделать бекап директории /etc
    4. Подключить репозитарий postgresql 10 для yum https://tecadmin.net/install-postgresql-server-centos/
    rpm -Uvh https://yum.postgresql.org/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm

    5. Проверить, что в файле репозитария в /etc/yum.repos.d стоит enabled =1
    6. Подать команду yum search postgre, чтобы посмотреть название пакетов от 10 версии.
    7. подать команду yum update название_пакетов
    8. запустить postgresql.

    Это теоретическое описание, поэтому:
    Первое - сначала это лучше сделать в виртуальной машине с Centos 7.
    Второе - вместо обновления можно использовать чистую установку и восстановление баз из резервных копий.
    Ответ написан
    2 комментария
  • Какой алгоритм даст лучший результат?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Логарифмическая шкала.
    Ответ написан
    1 комментарий
  • Mapbox Studio - диапазон видимости зданий?

    freeExec
    @freeExec
    Участник OpenStreetMap
    Никак, в этом просто нет смысла, здание будет меньше пикселя. Поэтому в данных для такого масштаба их просто нет.
    Для этих целей используют более генерализированные данные отмечающие жилую зону landuse=residential.
    Ответ написан
    Комментировать
  • Что именно надо знать в Java чтобы начать делать приложения на Android?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Java SE + Android API. А дальше уже развиваться...
    Ответ написан
    Комментировать
  • Как сделать систему распознавания лиц на android?

    azerphoenix
    @azerphoenix Куратор тега Java
    Java Software Engineer
    Можно как вариант в гугл набрать java facial recognition и поискать статьи.

    https://medium.com/devnibbles/facial-recognition-w...

    https://dzone.com/articles/java-home-made-face-rec...

    https://www.freecodecamp.org/news/facial-recogniti...
    Ответ написан
    Комментировать
  • Как сделать систему распознавания лиц на android?

    @grinat
    1. Ищешь dlib для андроид, например вот этот https://github.com/tzutalin/dlib-android (dlib.net/imaging.html#get_frontal_face_detector )
    2. Втыкаешь
    3. ???
    4. ПРОФИТ!!11

    p.s.: ну или можно opencv воткнуть, там это тоже есть

    Как понять шо это одна и та же рожа см тут https://github.com/ageitgey/face_recognition/blob/...
    Ответ написан
    Комментировать
  • Имеет ли git юридическую силу?

    Jump
    @Jump
    Системный администратор со стажем.
    Имеет ли git юридическую силу?
    GIT это не документ!!!
    Ну загляните в вики, там же написано, что GIT это система управления версиями!

    Если у Заказчика возникнет правовой вопрос с правообладателем одного из проприетарных модулей, каким образом Исполнитель может подтвердить, что этот модуль он не добавлял?
    Акт приемки покажет.
    Ответ написан
    4 комментария
  • Имеет ли git юридическую силу?

    saboteur_kiev
    @saboteur_kiev Куратор тега Git
    software engineer
    Заказчик передаёт Исполнителю часть системы для модификации и разработки.
    В системе имеется проприетарное ПО.


    Если у Заказчика возникнет правовой вопрос с правообладателем одного из проприетарных модулей, каким образом Исполнитель может подтвердить, что этот модуль он не добавлял? А добавил строго только те, что описаны в акте.


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

    Если образов нет - то юридическую силу имеет акт приемки. Но лучше прямо к юристу, потому что в любой неоднозначной ситуации суд может повести себя неоднозначно.
    Ответ написан
    2 комментария
  • Имеет ли git юридическую силу?

    longclaps
    @longclaps
    • Лезешь в Консультант плюс.
    • Ищещь там слово git.
    • Профит.
    Ответ написан
    5 комментариев
  • Имеет ли git юридическую силу?

    shai_hulud
    @shai_hulud
    Историю git можно переписать, как хочешь, и авторов и даты и порядок.
    Так что git ничего не "фиксирует" как факт и не может быть доказательством чего либо.
    Ответ написан
    3 комментария
  • Что происходит после нажатия кнопки(вопрос с собеседования)?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Зависит от операционной системы. Если грубо и обобщённо, то:
    1. Контроллер мыши посылает сигнал процессору;
    2. Процессор вызывает прерывание;
    3. Обработчик прерывания в ядре операционной системы шлёт сигнал графической подсистеме;
    4. Графическая подсистема проверяет где находился курсор в момент возникновения сигнала;
    5. Графическая подсистема пишет сообщение в очередь того окна, координаты которого совпадают с координатами курсора;
    6. Графическая библиотека приложения в цикле считывает сообщения из очереди, обрабатывает их, создаёт соответствующие события и передаёт соответствующим слушателям;
    7. Слушатель выполняет ваш обработчик нажатия кнопки.
    Ответ написан
    Комментировать
  • Как установить модуль mapnik?

    Тут дело может быть в оси. Многие зависимости mapnik отсутствуют под Windows.

    Вы mapnik планируете использовать в целях рендеренга своих карт?
    Ответ написан
    1 комментарий
  • Какие существуют паттерны использования git?

    DevMan
    @DevMan
    делать ветку каждые N минут/часов – это бред.
    ветка должна быть логичной: пилите новую фичу – делаете новую ветку, пилите новую версию – делаете новую ветку, надо что–то проверить/поэкспериментировать –делаете новую ветку.

    комиты – чем чаще, тем лучше, особенное если над кодом работает много людей. но тоже не по секундомеру.

    нет четких правил, просто пользуйтесь здравым смыслом. со временем сами придете к тому, что удобно и что не очень.
    ну и почитайте про git flow.
    Ответ написан
    Комментировать
  • Почему ArrayList итерируется быстрее, чем LinkedList?

    myjcom
    @myjcom
    С чем это связано?

    ArrayList это массив вставка и доступ O(1)
    LinkedList это связный список вставка и доступ O(n)

    В вашем случае (суммирование) полный перебор это в любом случае O(n)
    Значит все дело в вставке, чтобы вставить элемент в конец списка нужно добраться до конечного элемента. Каждый раз когда вы вставляете новый элемент, вы перебираете список от начала до конца, что в свою очередь в вашем цикле дает O(n log n n ^ 2)

    Хотя если следовать тому что написано в документации, LinkedList add эквивалентно addLast
    тогда все немного иначе, тормоза появляются из-за большого количества выделений памяти (это дорогостоящая операция)
    Потому как в ArrayList она
    выделяется с запасом

    Each ArrayList instance has a capacity. The capacity is the size of the array used to store the elements in the list. It is always at least as large as the list size. As elements are added to an ArrayList, its capacity grows automatically. The details of the growth policy are not specified beyond the fact that adding an element has constant amortized time cost.

    An application can increase the capacity of an ArrayList instance before adding a large number of elements using the ensureCapacity operation. This may reduce the amount of incremental reallocation.

    , а в LinkedList каждый раз при добавлении нового элемента.

    UPD:
    Вот так итерируется LinkedList

    собственно обычный обход списка src
    public ListIterator<E> listIterator(int index) {
      checkPositionIndex(index);
      return new ListItr(index);
    }
    // ...
    private class ListItr implements ListIterator<E> {
      private Node<E> lastReturned = null;
      private Node<E> next;
      private int nextIndex;
      private int expectedModCount = modCount;
      ListItr(int index) {
        // assert isPositionIndex(index);
        next = (index == size) ? null : node(index);
        nextIndex = index;
      }
      public boolean hasNext() {
        return nextIndex < size;
      }
      public E next() {
        checkForComodification();
        if (!hasNext())
          throw new NoSuchElementException();
        lastReturned = next;
        next = next.next;
        nextIndex++;
        return lastReturned.item;
    }


    А так ArrayList

    hg.openjdk.java.net/jdk8/jdk8/jdk/file/tip/src/sha...
    private class Itr implements Iterator<E> {
      int cursor;       // index of next element to return
      int lastRet = -1; // index of last element returned; -1 if no such
      int expectedModCount = modCount;
      public boolean hasNext() {
        return cursor != size;
      }
      @SuppressWarnings("unchecked")
      public E next() {
        checkForComodification();
        int i = cursor;
        if (i >= size)
          throw new NoSuchElementException();
        Object[] elementData = ArrayList.this.elementData;
        if (i >= elementData.length)
          throw new ConcurrentModificationException();
        cursor = i + 1;
        return (E) elementData[lastRet = i];
    }

    Ответ написан
    6 комментариев
  • Почему ArrayList итерируется быстрее, чем LinkedList?

    tsarevfs
    @tsarevfs
    C++ developer
    ArrayList практически(*) всегда быстрее чем LinkedList. Это связано с тем, что ArrayList хранит данные в непрерывном куске памяти. LinkedList же выделяет память для каждого узла и связывает их ссылками.
    Современные процессоры хорошо работают с непрерывными данными. Это связано с работой кэша и суперскалярной архитектурой. Процессор может подгружать данные наперед, использовать векторные SSE инструкции и.т.д.
    https://habr.com/en/post/312078/
    В LinkedList каждая итерация вероятно приведет к обращению к памяти. Для массива это увеличение счетчика в регистре процессора. Разница по времени может достигать сотен раз.

    *LinkedList асимптотически(при достаточно большом размере) быстрее при вставке и удалении элементов из средины, поскольку для массива нужен сдвиг элементов. Однако это можно заметить только на массивах с сотнями а то и тысячами элементов.
    Ответ написан
    2 комментария
  • Java и PHP хороший союз?

    Adamos
    @Adamos
    У бэкенда должно быть API, которое можно дергать запросами из любого языка и из любой системы.
    Если оно есть - с любым клиентом будет "хороший союз".
    Если нет - выкиньте и перепишите.
    Ответ написан
    Комментировать