• Как понять что программирование это твое?

    Moskus
    @Moskus
    Вопрос, строго говоря, не имеет никакого отношения к программированию.
    Чтобы эта проблема исчезла, вам нужно психологически повзрослеть. Потому что у вас имеется, по вашему описанию, совершенно детский набор реакций, который будет проявляться в любой области деятельности:
    - стремление к немедленной гратификации (вознаграждению за любое проделанное действие);
    - проблемы с концентрацией внимания на одной задаче длительное время;
    - излишняя эмоциональность и раздражительность.
    Любая работа - это не развлечение, это на 90% - нудная и часто - неприятна рутина. Потому удовлетворение нужно научиться находить в этих 10%. Нужно также понять, что все вокруг вас не существует ради вашего развлечения. И наоборот, если что-то вам не нравится, скучно, тяжело - это не "мир против вас", это естественная ситуация, с которой все должны уметь справляться, чтобы, в итоге, не жить в постоянном стрессе и не умереть в 40 лет от инфаркта.
    Ответ написан
    1 комментарий
  • Что такое CORS?

    @DrVolk
    Все ответы из серии лучше бы молчал... Смысл повторять то, что написано в википедии. Вам в вопросе человек явно указал - НА ПАЛЬЦАХ, а они ему про стандарты... Дали бы просто ссылку на MDN - там самая лучшая документация обо всём: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
    На русском тоже есть статьи: https://grishaev.me/cors

    Вот моя текущая проблема, объсняю на её примере:

    На нашем сервере (Сервер А) размещается Ангуляр приложение (DAPP), представляющее собой интерфейс к Ethernet смарт-контракту, который грубо говоря является нашим бэкендом.

    На стороннем сервисе (Сервер Б) запущен http-интерфейс для доступа к нашему контракту (фактически это шлюз в сеть Ethereum). Это бесплатный сервис, к которому у нас нет доступа (Infura).

    Мне нужно из моего DAPP, запущенного в браузере пользователя и которое загрузилось с Сервера А, делать http-запросы на Сервер Б, и тут в браузере выскакивает CORS и кричит НИИИИЗЯЯЯЯЯЯЯЯ! Причём в Chrome всё ок, а в долбаном тормозном Firefox (господи, сократи число пользующиегося им идиотов, чтобы он скорее издох) вылетает ошибка. Ибо, как завещает CORS, негоже JS коду, загруженному с одного адреса, делать http запросы на другой. Причём CORS устроен так, что эта ошибка не дебажится с помощью JS - типа для того чтобы это ограничение не смогли никак обойти. Поэтому какие бы я не прописывал Серверу А заголовки 'Allow-Origin', это ничего не меняет. В Гугле уже осознали весь идиотизм ситуации и в новых версиях Хрома уже не блочат всё подряд, как раньше, пропуская “простые” запросы (GET/POST), остальный браузеры пока тупят.

    ПС. Проблему решили запуском прокси сервера, который добавляет в ответы от Сервера 2 заголовки Access-Controll-Allow-Origin с адресом Сервера 1. Тоесть Сервер 2 должен сказать браузеру, что он доверяет коду, загруженному с Сервера 1. Вот и весь CORS.
    Ответ написан
    1 комментарий
  • Как делать GUI в Java?

    @red-barbarian
    не привычный. но не удобный. описание формы отдельно, логики отдельно, css стилей отдельно приносит выгоду, когда нужно менять программу много-много раз. Тогда понимаешь насколько удобно разделение этих вещей. Такое разделение дает гибкость.
    Ответ написан
    2 комментария
  • Какой линукс дистрибутив выбрать Deepin или Elementary OS?

    @liks
    Да что же это такое, ребята, ну какой deepin вы только вдумайтесь они сделали DE на HTML5.
    DE на HTML5.
    e2c42e78a0ca49f296b2ba12680e6219.jpg
    Добавлю лично своё мнение (ориентироваться на него не следует): аудита deepin linux я не встречал, и натыкался несколько раз на сообщения о каких-то утечках, хотя возможно это фейк.

    Elementary ну что же, из этого скудного выбора, это будет получше, основано на ubuntu и перепиленном gnome, но его делают ДИЗАЙНЕРЫ, и все обзорщики твердят, что сталкивались с багами, особенно когда пытались установить ПО не входящее в стандартные репы elementary (вроде что-то из серии плохой совместимости с пантеоном).

    Моё мнение: если хочется красоты, то поставь debian sid и накати НУ ХОТЯ БЫ старые добрые кеды, плазма теперь падает довольно редко (:D), но как я заметил, в последнее время тренд на стеклянность и рюшечки спадает и всё возвращается к истокам и минималистичности...
    Так-что xfce наше всё (кстати, если поколдовать над ней полдня, можно получить результат немногим хуже заточенных на красоту DE).
    p.s. поверь, со временем ты всё равно придешь к чему-то вроде xfce, а то и вовсе к тайловым wm...
    p.p.s. Фотошоп, корел и иже с ними спокойно втыкаются в винду загнанную в виртуалбокс или еще лучше в KVM. (всё будет летать если Ваш процессор поддерживает vt-d, а если еще и vt-x, то можете пробрасывать видеокарту в виртуалку и играть в крузис на максималочках)
    Ответ написан
    14 комментариев
  • Что это за язык програмирования и что такое Т?

    chupasaurus
    @chupasaurus
    Сею рефлекторное, злое, временное
    И никто не подумал о том, что это просто псевдокод с намешиванием синтаксиса нескольких языков?
    Ответ написан
    Комментировать
  • Что это за язык програмирования и что такое Т?

    Тип T это произвольный тип. Структура описывает узел дерева, который может хранить какой-то тип.

    Для дерева строк вместо T подставится String, для дерева целых чисел - Int и т.д.

    Тип Node это полиморфный тип (параметрический полиморфизм).
    В C++ это реализуют шаблоны, в Java - generics.
    Ответ написан
    1 комментарий
  • Что это за язык програмирования и что такое Т?

    @fireSparrow
    Про язык сказать не могу, но это явно что-то строго типизированное и T - это какой-то тип. Питон не является строготипизированным языком, тип в нём не указывается, поэтому вам вообще не обязательно знать, что такое Т, чтобы написать что-то подобное на питоне.

    И структур в питоне нет, ближайший аналог - namedtuple.
    Но я предлагаю делать через обычный класс, а inorderTraversal сделать его методом.
    Ответ написан
    1 комментарий
  • Как правильно сравнивать типы?

    LazyTalent
    @LazyTalent
    Data Engineer, Freelancer
    import types
    if isinstance(first, types.GeneratorType)
    Ответ написан
    2 комментария
  • Роздача wi-fi ubuntu 17.04?

    nazarpc
    @nazarpc
    Open Source enthusiast
    Создаете в сетевом меню точку доступа выбрав "Создать новую сеть Wi-Fi..."
    Потом в настройках подключения выбираете "Параметры IPv4" и в "Метод" в списке "Общий с другими компьютерами" (или как-то так, у меня не русский интерфейс).

    И не нужно никаких сторонних приложений, из давних времен всё можно делать из коробки. Аналогичным способом можно раздавать интернет в Ethernet или любое другое подключение.
    Ответ написан
    Комментировать
  • Не достаточно прав, опера?

    skobkin
    @skobkin
    Гентушник, разработчик на PHP и Symfony.
    1. Закройте браузер.
    2. Откройте терминал.
    3. Сделайте ps aux | fgrep opera и если есть что-то, кроме этого самого вызова ps, то переходите к пункту 4. Если нет - это не ваш случай.
    4. Убейте все процессы opera с помощью killall (или killall -9, если не помогает) - может потребоваться несколько запусков.
    5. Запустите браузер снова.

    Пояснение: в последних релизах есть баг, когда при закрытии браузера не завершаются все процессы (Opera на Chromium уже не в одном процессе работает), из-за чего если вы закроете браузер и откроете снова, новый процесс не сможет получить доступ на запись к профилю.
    Ответ написан
    Комментировать
  • Ноутбук и Ubuntu Gnome?

    @Erelecano
    Админю сервера, починяю примуса.
    1. DE никак не влияет на батарею.
    2. Не существует «Ubuntu Gnome», как отдельного дистрибутива. Ubuntu Gnome — инсталяционный диск с Gnome DE из коробки. Вы можете спокойно себе вместе с Unity поставить и Gnome, и KDE, и XFCE4 одной командой. Все пакеты находятся в одних репозиториях и ставятся штатным образом.
    Ответ написан
    1 комментарий
  • Програмы на elementary?

    xtala
    @xtala
    Постигает Дзен
    Linux это не операционная система, а ядро на котором базируется множество операционных систем, называемых -- дистрибутивами. Они могут быть похожи и совместимы, а могут быть совершенно разными. Единственное, что будет объединять такие ОС на основе Linux -- утилиты входящие в стандартную поставку ядра. Например top. Или ls. Бывает такое, что разработка дистрибутива развивается по разным направлениям-веткам. Такие ветки называются -- форки. Например минт это форк убунту. А убунту в свою очередь форк дебиан. Для того чтобы примерно оценить совместимость того или иного пакета нужно поинтересоваться историей и происхождением дистрибутива. Например убунтовские пакеты обычно без всяких проблем встают на минт. А редхатовские на федору. Elementary OS форк Убунту поэтому скорее всего многие пакеты Убунту без проблем установятся и на нее.
    Ответ написан
    Комментировать
  • На каких IT-специалистов выше спрос за рубежом?

    aRegius
    @aRegius
    Python Enthusiast
    Добрый день.

    Исходя из доступной информации и наблюдений, уровень Senior/Middle (читай уровень толкового специалиста), востребован по-умолчанию и везде - на рынке IT нехватка хороших специалистов каких-бы то ни было направлений.

    А объективно, выше всего спрос ("тройка лидеров", так сказать) на Java, Javascript и PHP.
    Ответ написан
    3 комментария
  • Не работает currentColor() java?

    Github link
    У вас нет метода currentColor(). Выше привел ссылку где он присутсвует
    Ответ написан
    1 комментарий
  • Ваше мнение. Какой способ ввода лучший?

    @mr-achehe
    java программист
    Испоьзуй bufferedreader потом пригодится
    Ответ написан
    Комментировать
  • Ваше мнение. Какой способ ввода лучший?

    Rou1997
    @Rou1997
    Лучший - тот, который для данной задачи лучше подходит, одногруппник вам чушь говорит, обычно вообще без разницы, поэтому использую тот, который под руку попадется.
    Ответ написан
    Комментировать
  • Ваше мнение. Какой способ ввода лучший?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Ответ: никакой.

    В Java консольный ввод почти не используется и предлагается для изучения только в учебных целях.

    Насчет буфера:

    Выглядит это примерно так
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    String s = reader.readLine();


    Мне этот вариант (с буффером) больше нравится: для ввода из файла разница будет небольшая (для текста):

    BufferedReader reader = new BufferedReader(new FileReader("input.txt"));
    String s = reader.readLine();


    Вот тут обсуждение можно почитать, на тему "Что лучше?" javatalks.ru/topics/25752
    Ответ написан
    Комментировать
  • Как узнать пересечение линий?

    @abcd0x00
    Вот тебе псевдокод для определения, пересекаются ли отрезки.
    Код
    программа пересечение двух отрезков <вх:ax,ay,bx,by,cx,cy,dx,dy:R>:Q
     дано    : | концы первого отрезка (ax, ay) и (bx, by)
               | концы второго отрезка (cx, cy) и (dx, dy)
     получить: | ответ = отрезки пересекаются да/нет
     ____________
      | A(ax, bx) B(bx, by) C(cx, cy) D(dx, dy)
      v1x := bx - ax | вектор AB
      v1y := by - ay
      v2x := cx - ax | вектор AC
      v2y := cy - ay
      v3x := dx - ax | вектор AD
      v3y := dy - ay
      v4x := dx - cx | вектор CD
      v4y := dy - cy
      v5x := bx - cx | вектор CB
      v5y := by - cy
      v6x := ax - cx | вектор CA
      v6y := ay - cy
      coord1 := v1x * v2y - v1y * v2x | [AB, AC]
      coord2 := v1x * v3y - v1y * v3x | [AB, AD]
      coord3 := v4x * v5y - v4y * v5x | [CD, CB]
      coord4 := v4x * v6y - v4y * v6x | [CD, CA]
      ответ := (coord1 * coord2 <= 0 и coord3 * coord4 <= 0)
    конец программы

    Ответ написан
    1 комментарий
  • Как узнать пересечение линий?

    Ocelot
    @Ocelot
    Есть способ проще: e-maxx.ru/algo/segments_intersection_checking (через ориентированные площади треугольников), но он не находит саму точку пересечения, только говорит, пересекаются отрезки или нет.
    Ответ написан
    Комментировать
  • Сортировка в файле?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Сортировка конечно неэффективно реализована и выход за пределы массива есть, но работать вроде должна.
    Значит запускайте отладчик и пошагово смотрите, что происходит. Или добавляйте в цикл вывод нужной информации и отслеживайте работу программы.
    Ответ написан
    Комментировать