• Как быстро скопировать 40 млн файлов на другой сервер?

    gbg
    @gbg Куратор тега Linux
    Любые ответы на любые вопросы
    Как-то так:
    dd if=/dev/sda bs=65536 | ssh target-ip 'dd of=/dev/sda bs=65536'.

    На агрегированном канале 2x1Gbit выдает 100 мегабайт в секунду. Если подшаманить размеры блока bs= и mtu, и еще шифрование у ssh выключить, можно, я думаю, и все 200 мегабайт выжать.

    Проводить, на отмонтированном! (или смонтированном в readOnly) диске!
    Не зря dd расшифровывается как DestroyData.
    Варианты настройки шифрования (-c) и скорость (лучше - больше):
    ssh-cipher-speed-chart.png?w=630
    Ответ написан
    8 комментариев
  • Как связать "bytes getBytes()" в Java и "bytearray()" в python?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Вопрос поставлен непонятно.
    Что Вы хотите связать именно?
    Из питона передать байты в яву?
    или же прочитать байты в яве точно так же как в питоне?
    или же прочитать байты в питоне как в яве?
    Откуда читаете сами байты?
    Как байты НУЖНО представить для вашей задачи?
    Ответ написан
    Комментировать
  • Интерфейсы и устройства ввода-вывода тормозят развитие технологий?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Записывайтесь в клуб Элана Маска. Он в каком-то интервью уже упоминал проблему ввода/вывода информации в мозг человека. Мол "медленно". Причем вывод информации (то как мы печатаем свои мысли) - не такая большая проблема как ввод (то как мы информацию воспринимаем).

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


    А вы вообще проводили ресерч на эту тему? Вот вам варианты интересные которые существенно увеличивают скорость набора.

    https://en.wikipedia.org/wiki/DataHand
    orbitouch.com

    Так же есть куча раскладок, вроде дворак замест традиционной querty.

    По сути, мышь, трекбол, планшет и сенсор экрана - это самые распространённые устройства ввода и все они идеально подходят для двумерных интерфейсов.


    Мозги человека пока плохо приспособлены к восприятию информации в 3D. Вспомите эти славные иллюзии.

    а для трёхмерного по-прежнему неудобны.


    www.cgchannel.com/2010/11/axsotic-releases-intrigu...
    www.3dconnexion.com/products/spacemouse/spacemouse...

    ну и были еще кучи прототипов и т.д. Проблема в том что при работе с 3D большинство работают с проекциями, нам так удобнее.

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


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

    @bnytiki
    Ну если вы под страхом смертной казни прикажете всем срочно изучать эти новые клавиатуры и языки программирования....

    Ведь есть куча наработок, которые в новом языке так просто не возникнут.
    А в старых уже есть.

    Клавиатуру нужно будет заново осваивать на слепой десятипальцевый метод набора.

    И т.д. и т.п.

    Уже не говоря о том что язык нужно изучить.

    Так что переход будет очень даже постепенным.

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

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

    Ну не может 100% человечества стартапными вещами заниматься, мы ведь тогда с голода помрем.
    Ведь выращивать зерно, фрукты, скотину, овощи тоже кому-то надо.

    И, кстати, кто сказал, что эта новая вещь будет настолько лучше старых?

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

    P.S.:
    Прогресс и так слишком ускорен.
    Скоро уж ресурсы на земле кончатся.
    Ответ написан
    4 комментария
  • Как редактировать GUI IntelliJ IDEA?

    На русском языке ничего толкового по JavaFX до 2016-го не видел. Может уже появилось.
    Ответ написан
    Комментировать
  • В Java при роботе с filter, map и т.д. нужно вызывать метод stream(). Зачем и почему так спроектировано?

    @Free_ze
    Пишу комментарии в комментарии, а не в ответы
    В Java нет методов расширения, потому на коллекцию можно "навешивать" функциональность аналогичным образом (C#/LINQ), оборачивая коллекцию в Stream<T>.
    Ответ написан
    Комментировать
  • Android. Как совместить ORM модель и ООП модель?

    @sirs
    Лепить все в один класс не стоит. Классы, которые у вас используются для REST объявите как dto объекты, они должны синхронно меняться как на клиенте, так и на сервере. Для связи между тем, что в ресте и тем, что в бд - напишите простейшие конверторы на уровне сервиса.

    UPD

    Простейший пример:
    dto класс :
    class User {
    String responseStatus;
    String name;
    String password;
    
    public User(final String responseStatus, final String name, final String password){
    this.responseStatus=responseStatus;
    this.name = name;
    this.password=password;
    }
    
    //setters
    //getters
    }


    entity модель для orm:

    class UserEntity {
    @DatabaseField (autoincrement = true) int id;
    @DatabaseField String name;
    @DatabaseField String password;
    //getters
    //setters
    }


    есть у Вас простой сервис, который из контроллера передает данные в слой работы с базой, например

    public class UserService(){
    
    //some field
    
    public void addUser(final User user){
    //some code
    UserEntity userEntity = convert(user);
    //save userEntity into db
    }
    
    private UserEntity convert(final User user){
    //some if 
    //some logger
    UserEntity userEntity = new UserEntity();
    userEntity.setName(user.getName());
    userEntity.setPassword(user.gerPassword());
    return userEntity;
    }
    }


    Это простейший пример, вариантов может быть много - различные мапперы, билдеры, конверторы и т.д. Это зависит от используемых фреймворков и принятого подхода на проекте.
    Ответ написан
    3 комментария
  • Как редактировать GUI IntelliJ IDEA?

    zolt85
    @zolt85
    Программист
    3-го дня, на хабре статья появилась, это что касается SWING.
    Если интересует JavaFX, то можно использовать Scene Builder
    Ответ написан
    Комментировать
  • Есть ли простейшая библиотека на Java для БД?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Самое простое это ormlite. Полностью избавляет от необходимости ручками писать запросы и работает с кучей разных бд.
    Ответ написан
    Комментировать
  • Как динамически с сервера обновить класс в Android?

    @onepavel
    Консультация и разработка мобильных приложений
    тебе нужно сделать промежуточный слой
    делаешь интерфейс со структурой своего класса
    классом реализуешь интерфейс
    везде используешь ссылку на интерфейс вместо класса
    клсаа компилируешь отдельно от проекта в dex
    dex кладешь на сервер
    приложение качает dex файл и подгружает через
    https://developer.android.com/reference/dalvik/sys...
    профит
    Ответ написан
    Комментировать
  • Что изучать дальше?

    jaxtr
    @jaxtr
    JavaEE/Spring-разработчик
    Если интересует литература по разработке в целом, то могу порекомендовать книги Чистый код и Объектно-ориентированный анализ и проектирование. И неплохо было бы определиться - в каком направлении ты хочешь развиваться - в направлении мобильной разработки, веб-разработки или может даже интерпрайз-разработки.
    Ответ написан
    Комментировать
  • (Java) В чем разница между Scanner и BufferedReader(System.in)?

    @Waylesange
    Scanner работает медленно, но зато предоставляет очень широкий API с кучей удобных методов, а BufferedReader работает быстрее, потому что читает часть входных данных в буфер, откуда они быстрее читаются по частям, то есть обращение к консоли происходит реже. Обычно это используется в спортивном программировании. Но это далеко не полный перечень возможностей ввода/вывода, многие в спортивном программировании пишут даже свой буферизированный ввод, хотя в первом приближении BufferedReader прекрасен.
    Ответ написан
    Комментировать
  • (Java) В чем разница между Scanner и BufferedReader(System.in)?

    Sanan07
    @Sanan07
    Писатель-прозаик
    Ответ написан
    Комментировать
  • Как запросить корневой ресурс?

    @jkotkot
    режим сарказма
    Ты его запросил:) Вопрос, видимо, в том, куда ты задеплоил свое приложение.
    Ответ написан
    Комментировать
  • Стоит использовать исключения или if/else?

    @bromzh
    Drugs-driven development
    Скиньте пожалуйста где почитать/посмотреть


    Кей Хорстманн, Гари Корнелл "Java. Библиотека профессионала". 9 издание. Том 1. Глава 11.

    В частности, там есть раздел с заголовком "Рекомендации по обработке исключений", где всё доходчиво объяснено.
    Ответ написан
    Комментировать
  • Как правильно использовать DTO паттерн?

    jaxtr
    @jaxtr
    JavaEE/Spring-разработчик
    В данном случае будет не DTO, а Value Object, который в Spring WebMVC помечается аннотацией @ModelAttribute.
    Использование Value Object вместо набора параметров запроса однозначно лучше и удобнее.

    Почитать про это можно тут
    Ответ написан
    Комментировать
  • Как связывать базу данных со своим приложением Android?

    Bellicus
    @Bellicus
    И швец, и жнец, и на дуде игрец.
    Сделай дамп базы. Положи в папку с ресурсами, и при запуске приложения проверяй, если база не развернута - устанавливай, иначе просто подключайся и работай с ней.
    Ответ написан
    3 комментария
  • Какая версия java в android?

    Соглашусь с пользователем Deadkenny, но хочу добавить:
    1)В начале Android поддерживал только 6 версию Java, но в 2013
    c выходом новой версии Android Studio также появилась возможность
    использовать Java 7.

    2)
    но можно увеличить до Java 8 с помощью сторонних библиотек

    Это не совсем так.Формально это достигается путём перекомпиляции byte - кода с Java 7 до 8.
    Выполняется это с помощью библиотекRetrolambda (лямбда-выражения + частично default - методы) + streamsupport(Stream Api)

    3)Также к релизу Android N Google планирует перейти на OpenJDK и добавить поддержку Java 8.

    Насчёт изучения:
    Неважно какую версию учить.Отличаться будет только некоторыми моментами.
    Я рекомендую прочитать вот эту замечательную книжку , потом конечно же "Thinking in Java",
    ну, а потом, если захочется изучить данный материал про возможности Java 8.У всех трёх есть оригиналы на English.
    Ответ написан
    Комментировать
  • Какая версия java в android?

    @Deadkenny
    На Android Java 7, но можно увеличить до Java 8 с помощью сторонних библиотек. Можно еще на Kotlin и Scala писать.
    Ответ написан
    Комментировать
  • Путь в математику. Существует ли аналог Ландсбергу?

    65536
    @65536
    всё фрактал
    Ответ написан
    Комментировать