• Где брать курс главных валют + рубля через API, 2-3 раза в день?

    Центробанк даёт данные, в т.ч. в XML (документация). Например, котировки всех валют на сегодня, 27 июня 2019:
    http://www.cbr.ru/scripts/XML_daily.asp?date_req=27/06/2019

    Курсы обновляются 1 раз в день.

    Курс валют штука свободная, рыночная. Любой банк или обменник может устанавливать свой курс и менять его хоть каждую секунду. Поищите, какие банки предоставляют открытые API к своим котировкам валют.
    Ответ написан
    Комментировать
  • Какой инструмент позволит из базы mysql создать файлы миграций?

    kawabanga
    @kawabanga
    Документацию читали?
    https://laravel.com/docs/8.x/migrations#squashing-...
    Ответ написан
    Комментировать
  • Botman Laravel Telegram как добавить меню?

    GrozInventor
    @GrozInventor Автор вопроса
    Нашел способ с помощью драйвера телеграм от Botman, но он у меня не работает. Не пойму почему. Может кто-то подскажет, кто работал с Botman?

    use BotMan\Drivers\Telegram\Extensions\Keyboard;
    use BotMan\Drivers\Telegram\Extensions\KeyboardButton;

    $keyboard = Keyboard::create()->addRow(
        KeyboardButton::create('test')
    );


    Нашел решение. Если кому интересно

    Keyboard::create()->type( Keyboard::TYPE_KEYBOARD )
      ->oneTimeKeyboard(true)
      ->addRow( 
         KeyboardButton::create("Да")->callbackData('first_inline'),
         KeyboardButton::create("Нет")->callbackData('second_inline')
      )
      ->toArray();

    Есть 2 типа:

    Keyboard::TYPE_INLINE - кнопка внутри сообщения
    Keyboard::TYPE_KEYBOARD - кнопка в клавиатуре, то что мне и надо было
    Ответ написан
    1 комментарий
  • Как правильно хранить в базе данные о авторизации юзера через социальную сеть?

    @unity_ultra_hardcore
    У нас используется следующая схема таблиц:
    Table "public.social_account"
       Column    |              Type              | Modifiers
    -------------+--------------------------------+-----------
     user_id     | integer                        | not null
     network     | character varying(255)         | not null
     external_id | character varying(255)         | not null
     created_at  | timestamp(0) without time zone | not null
     updated_at  | timestamp(0) without time zone | not null
     id          | uuid                           | not null
    Indexes:
        "social_account_pkey" PRIMARY KEY, btree (id)
        "unique_social_account" UNIQUE, btree (network, external_id)
        "idx_f24d8339a76ed395" btree (user_id)
    Foreign-key constraints:
        "fk_f24d8339a76ed395" FOREIGN KEY (user_id) REFERENCES app_user(id) ON DELETE CASCADE


    То есть для каждой привязки хранится запись, в которой содержится user_id, название соцсети (google/vk/facebook/etc) и id этой соцсети (у всех произвольный формат).
    Таким образом, когда пользователь аутентифицируется через одну из этих соцсетей, сначала ищется user_id по связке external_id + network. Если user_id найден - аутентифицируем текущего пользователя как этот user_id. Если нет, получаем от соцсети email и по нему ищем пользователя в таблице пользователей. Если нашли, то создаем запись в social_account и аутентифицируем юзера. Если не нашлось ничего (первый визит), то создаем пользователя и создаем запись в social_account.
    Ответ написан
  • Что лучше Phpstorm vs VS code?

    sim3x
    @sim3x
    Phpstorm
    Ответ написан
    Комментировать
  • Книги по математике для машинного обучения?

    Тут куча книг на англ. языке, поищите по теме: https://librariestech.com/
    Например, Hands-On Mathematics for Deep Learning – Packt 2020. Не смотрел, не скажу, соответствует ли вашему запросу.
    Ответ написан
    Комментировать
  • Кнут - "Искусство программирования", как осилить?

    @GreenElephant
    Тоже задавался подобными вопросами. И здесь в том числе. В итоге решил проблему просто - поднял свою ленивую пятую точку с дивана, и перестал задавать глупые вопросы. А начал действовать. Нашел отличного репетитора, который мне накидал примерный списочек:
    1. 2-3 аля "дискретная математика для программистов". 2 точно знаю, третью не нашел :) Советую начать с автора Хагарди, доступно излагает.
    2. Параллельно с этим раскуриваем "дискретная математика, графы, матроиды"
    3. Посыпаем все это книгой "структуры данных и алгоритмы" Никлауса Вирта.
    4. Далее можно накидывать важную книгу Кнута - конкретная математика.
    5. Потом уже можно потихоньку начинать читать Искусство Программирования.

    Собственно я такому курсу и придерживаюсь, только помимо книжек из 1 пункта, я еще накинул замечательный курс на степике по дисктерным структурам - ссылочка Там же есть курс введение в матанализ.
    Ну а Вам, коллега, могу еще порекомендовать в качестве разминки школьные книги по математике автор которых - Виленкин. У него еще есть книга "Популярная комбинаторика", что тоже будет полезным. Вообще школьный курс нагоняется учебниками с 5 по 11 класс. От корки до корки вдумчивое чтение с последующим решением задач. Как-то так.
    Еще полезным будет почитать о мат индукции и как решают нестандартные задачи
    Ответ написан
    3 комментария
  • Программирование деформирует человека как личность?

    @pcdesign
    Что будет, если человек начнет беспорядочно есть все подряд? Засовывая в свой желудок разного рода еду без разбора. Все понимают, что добром это не кончится. В плане мозга понимания такого нет. Люди считают, что в мозг можно засовывать любую информацию бесконечно, а он там типа разберется. Да, ничего подобного. Так же как и с желудком могут быть проблемы, так же и мозг может выдавать такие фортеля как у тс. Это естественная реакция.

    Я бы рекомендовал не бросать профессию. Ведь она нравилась когда-то. Просто в жесткую ограничивать поток информации. И так же как и с едой лучше заранее подумать когда, сколько и что съесть. Так же и с информацией жесткое ограничение и жесткая гигиена на ее потребление.
    Появится энергия.

    Люди это понимали даже в 19 веке.
    "…Надо избавиться от всякого суетного любопытства, разбивающего и уродующего жизнь, и первым делом искоренить упорную склонность сердца увлекаться новинками, гоняться за злобами дня и вследствие этого
    постоянно с жадностью ожидать того, что случится завтра. Иначе вы не обретёте ни мира, ни благополучия, а одни только разочарования и отвращение. Хотите вы, чтобы мирской поток разбивался у порога вашего
    мирного жилища? Если да, то изгоните из вашей души все эти беспокойные страсти, возбуждаемые светскими
    происшествиями, все эти нервные волнения, вызванные новостями дня. Замкните дверь перед всяким шумом,
    всякими отголосками света. Наложите у себя запрет, если хватит у вас решимости, даже на всю легковесную
    литературу, по существу она не что иное, как тот же шум, но только в письменном виде. На мой взгляд,
    нет ничего вреднее для правильного умственного уклада, чем жажда чтения новинок. Повсюду мы встречаем людей, ставших неспособными серьезно размышлять, глубоко чувствовать вследствие того, что пищу их составляли одни только эти произведения последнего дня, в которых за всё хватаются, ничего не углубив, в которых всё обещают, ничего не выполняя, где всё принимает сомнительную или лживую окраску и всё вместе оставляет после себя пустоту и неопределённость…"

    (с) Петр Чаадаев. «Философические письма. Письмо второе», 1820-1830
    Ответ написан
    5 комментариев
  • С чего начать изучать математику?

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

    Начните с изучения английского языка. Что бы вам не говорили про крутую "советскую школу" и учебники - всё это проигрывает по многим параметрам англоязычным ресурсам. Самостоятельно изучать математику по школьным учебникам бесполезно. Репетиторы разные бывают, но чаще всего они могут только поднатаскать вас для экзамена.

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

    Есть замечательный ресурс под названием "KhanAcademy". В нём каждый раздел разбит на модули. Модули состоят из видеоуроков, учебных текстов и задач. По каждой теме можно задать вопрос. Ничего платить не нужно, ресурс бесплатный.

    Помимо этого есть "Coursera". Возможности по изучению там такие же, но иногда отличается подход.

    В дополнение к этому можно скачать книгу по теме из серии "Для чайников". В англоязычном варианте это "For dummies". Читал такие по тригонометрии и мат.анализу. Всё очень подробно разжёвано и объяснено. Правда это не избавляет от необходимости самому думать и разбираться.

    Сколько понадобится времени на изучение? Это очень индивидуально и зависит от ваших знаний. Разберитесь для чего вам это надо. От этого будет зависеть и подход к обучению. Для сдачи ЕГЭ иногда достаточно год заниматься с репетитором.
    Ответ написан
    Комментировать
  • Numbers и открытие csv (проблема с кодировкой)?

    DevMan
    @DevMan
    CSV - обычный текстовый файл.
    конвертните его в юникод любым редактором или консольным iconv.

    если файл в win-1251:
    iconv -f cp1251 -t utf8 file.csv > file.utf8.csv
    Ответ написан
    4 комментария
  • Что такое полиморфные связи?

    greabock
    @greabock
    Могу
    Предположим, что у Вас есть комментарий, который может относится к посту(пользователя), а может относится к статье блога.
    тогда у Вас таблица может выглядеть примерно так:
    comment_id | parent_id | morph| comment_content | author

    где:
    comment_id - идентификатор самого коммента
    parent_id - идентификатор сущности к которой он относится
    morph - тип сущности, к которой относится этот комментарий.
    comment_content, author - тут я думаю понятно
    тогда записи могут выглядеть так:
    comment_id | parent_id | morph   | comment_content | author
    ---------------------------------------------------------------
      1        |   1       | post    | бла бла бла     | vasya
    ---------------------------------------------------------------
      2        |   1       | article | бла бла бла     | vasya
    ---------------------------------------------------------------

    при чем, несмтря на то, что parent_id у них одинаковый, в первом случае он относится к id в таблице post, а во втором к article
    Это и называется полиморфической связью.

    пример приведу на фреймворке laravel для php (но ORM там очень схож с Rails, так-что проблем возникнуть не должно)
    Модель комментария будет выглядеть приблизительно так:

    class Comment extends Eloquent {
    
     public function morph()
      {
         return $this->morphTo();
      }
    
    }

    а модели поста и статьи:

    class Post extends Eloquent {
    
      public function photos()
      {
        return $this->morphMany('post', 'morph');
      }
    
    }

    class Article extends Eloquent {
    
      public function photos()
      {
        return $this->morphMany('article', 'morph');
      }
    
    }

    вроде бы ничего не напутал...
    Ответ написан
    1 комментарий
  • Учебник по математике, при почти нулевых знаниях?

    @SeptiM
    Мне кажется, то, с чего нужно начинать, это дискретная математика. Можно сказать, это азбука для программиста. Я ниже приложил некоторый список книг. Стоит, правда, понять, хотите вы самостоятельно изучать предмет или иметь менторов и готовую программу...

    Дискретная математика

    Есть здоровская книжка Андерсона "Дискретная математика и комбинаторика". Она довольно толстая, но главы можно читать почти в случайном порядке. Некоторые математики жалуются, что она не очень строгая и много воды, но для начала самое то.

    По дискретной математике есть русский онлайн-курс на Stepic-е.

    Если идти чуть глубже, есть неплохая книжка Кнута и др. "Конкретная математика".

    Алгоритмы и структуры данных

    Кормен "Алгоритмы: построение и анализ" в переводе А. Шеня. Осилить первые две главы, потом можно идти почти в случайном порядке. Написано достаточно просто и понятно.

    Дасгупта, Пападимитриу, Вазирани "Алгоритмы".

    Онлайн-курс по алгоритмам.

    О математике

    МЦНМО свободно распространяет много интересных книг: www.mccme.ru/free-books
    Посмотрите там в первую очередь Шеня и Арнольда. Например, В. И. Арнольд. Задачи для детей от 5 до 15 лет.

    И разумеется не упустите замечательного писателя Мартина Гарднера "Математические головоломки и развлечения".

    Задачники

    Попрактиковаться в решении с проверкой можно здесь.

    www.braingames.ru -- по математике
    https://projecteuler.net/ -- среднее, ближе к программированию
    acm.timus.ru -- по программированию

    Очные программы

    Умение самоорганизоваться -- это хорошо, но иногда нужен ментор и готовая программа.
    Если вы живете в Москве или Петербурге, попытайте счастье в этих двух организациях:
    https://yandexdataschool.ru/
    https://compscicenter.ru/
    Если нет, но есть возможность на два года уйти в учебу, попробуйте поступить в магистратуру СПбАУ на SE-направление:
    mit.spbau.ru

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

    Удачи!
    Ответ написан
    3 комментария