• Телеграмм-бот на Python

    Недавно я попал на стажировку в новую для себя IT-компанию и наш (моей команды) проект был - бот для телеграмма, который автоматизирует часть работы hr-менеджеров. Первую неделю нам дали на самостоятельное изучение всего, что мы посчитаем нужным (а я убежден, что лучший способ что-то изучить - это практика), так что я начал действовать. Язык программирования был выбран python (наверное понятно из обложки почему), так что в этой статьи я разберу пример именно с ним.

    Читать далее
  • Собеседование в Яндекс: без театра и абсурда

    Недавно прочитал статью о том как человеку устроили театр абсурда при прохождении собеседования в Яндекс и решил написать свою статью, где расскажу как все произошло у меня и, ВНИМАНИЕ СПОЙЛЕР: я прошел.

    Как и автор вышеупомянутой статьи, я указал в своем профиле LI, что открыт предложениям и спустя небольшой промежуток получил сообщение от рекрутера Яндекс.Такси. Отличием является то, что я на самом деле искал работу и предыдущий опыт с собеседованием был незадолго до первого собеседования в Яндекс.

    Театром абсурда мой опыт назвать сложно, но и без проблем не обошлось. Об этом и о разнице наших опытов написана эта статья.

    Читать далее
  • Доказательство 5-го постулата Евклида

    Сущность

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

    Если данное утверждение справедливо, то верен и 5-й постулат Евклида.

    Это доказывается с помощью окружности и прямой проведенной через центр данной окружности.

    Т.е. доказательство ведется через рассмотрение свойств прямой линии.

    Читать далее
  • Тест архивов. Какой формат выбрать?

    Эта тема будет посвящена сравнению алгоритмов сжатия. Для владельцев Медленного и Лимитного Интернета будет полезно, да и не только им.

    Для сжатия использовался ZArchiver 0.9.5 для Android, настройки всех форматов на Ультра. Указаны Размер и Процент от Размера Оригинала. Для 7Z включён LZMA2 (В настройках ZArchiver)

    И так, начнём!

    Под первым Спойлером показаны исходные размеры (Смотрите в нижний левый угол, последняя строка)

    Стало интересно? Жми и узнавай инфу!
  • Как я воркеров в сервере организовывал

    Во время учебы передо мной встала задача — написать HTTP сервер на плюсах. Задача в целом не сложная, интересна была бонусная часть — добавление многопоточности с одним условием - a worker should not be spawn for each client. На мое удивление я плохо пользуюсь гуглом информации по такому серверу в интернете оказалось мало. Все статьи про многопоточность были противоположны условию. В итоге, не без помощи своих иностранных коллег, я пришел к тому решению, которое изложу вам ниже. Приятного чтения!

    Читать далее
  • Opencart 4, SEO и сообщество

    Кто мало-мальски вариться на кухне opencart и следит за новостями, то знает, что идёт активно разработка 4-й версии данного фреймворка\cms\e-commerce решения, на котором работает очень много современных интернет-магазином малого и среднего бизнесса.

    Следя за новостями по форумам, аналитически можно сделать вывод, что общество скатилось в какой то тупиковый угол, что на опенкартфоруме, все разработчики, включая и Babushka (основателя ocStore) и Yesvik (разработчика seo_pro) не встретить на форуме, остались только торговцы и покупатели. Даже Васо ("крёстный отец опенкарта") со своим broCart затих на своем форуме и отказывается от развития своего проекта по каким то личным соображениям, конфликтующим с интересами Даниеля (главного архитектора опенкарта). Русская сборка - это тот же оксторе, с тем же seo_pro и кучей кода в довесок, как и у MaxyStore, отличия только в команде, но и те и другие, не делают модификацию кода, а лишь обвешивают и так не полноценный код - новыми фичами, создавая солянки и сборки, под каждую из которых разработчикам необходимо адаптировать свои шаблонизаторы и модули.

    Ознакомиться полностью
  • Биткоинизм, или две самые прискорбные пиццы в истории

    В прошлом месяце лидер по производству электрокаров – компания «Тесла» объявила о начале продаж своих широкоизвестных автомобилей в обмен на самую популярную криптовалюту в мире – биткоин. При этом глава «Тесла» Илон Маск тут же обещал, не перепродавать заработанные таким образом монеты за фиатные деньги, а «держать» (неологизм hodl, образованный от англ. to hold) активы как есть на балансе компании.

    Помимо кратковременного скачка цены биткоина, эта новость привела к бурному обсуждению «реальной стоимости» первой криптовалюты. Тут же вспомнили и одну из примечательнейших историй становления крипторынка, когда в мае 2010 года в сети «Интернет» появилось сообщение о том, что счастливый владелец биткоинов сумел, возможно, впервые в истории приобрести в обмен на них две пиццы, которые обошлись незадачливому новатору ровно в 10 000 ВТС.

    Для наглядности сообщу, что по текущему курсу:

    10 000 ВТС = 594 380 000 $

    Таким образом, недальновидный любитель фастфуда «потерял» целое состояние, что, по общему мнению, превращает покупку этих пицц в одно из самых прискорбных вложений в известной истории человечества.

    Рассказанную выше басню «держатели» биткоина старательно превращают в идеологическое наставление о пользе рачительности по отношению к криптоактивам. При этом они призывают не поддаваться на провокации корпораций, охотящихся за криптовалютами, ведь в не самой отдаленной перспективе автомобиль «Тесла» превратится в такую же пиццу, когда цена биткоина поднимется до астрономических высот.

    Насколько обоснована такая позиция?

    Читать далее
  • Мои собеседования '2021 (C++ developer)

    Привет, меня зовут Дмитрий, разработчик на C++ со стажем более 15 лет. В основном приходилось заниматься разработкой десктопного софта и софта для мобильных устройств. Живу в Москве.

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

    Соответственно собеседовался на позицию "C++ разработчик".

    Делюсь впечатлениями.

    Читать далее
  • Что делает работу в Android Studio такой прекрасной? Горячие клавиши, шаблоны, гит и прочее…

    Не будем говорить об установке, настройке и создании первого проекта - со всем этим можно ознакомиться на официальном сайте, но давайте проверим, все ли прелести легкой и производительной работы с этой средой разработки нам знакомы?

    Итак, Android Studio представляет...

    Читать далее
  • Начинающий веб-разработчик: пишу сайт со сменой экранов на JQuery. Часть 1

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

    Сегодня я начинаю серию постов по разработке сайта со сменой экранов на JQuery, которая затянется на 3-4 статьи. Вся разработка будет проходить немного раньше того, как я опубликую статью, практически live - трансляция! Профессионалов своего дела прошу комментировать работу не строго, но по факту, а начинающим разработчика советую вникать и учитывать замечания старших.

    Я буду делать нестандартный сайт. На этом сайте будет одна страница, которая будет разделена на несколько экранов, которые будут переключаться нажатием на определенные элементы посредствам сил JS с библиотекой JQuery. На сайте будет всего 4 экрана, постараюсь вместить на них всю нужную информацию.

    Приступим к началу моего проекта - сайт мобильного приложения со меной экранов на JQuery.

    Уделить внимание
  • Отключается внешний жесткий диск. Что делать? [Человеческим языком]

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

    И что же делать?
  • Самые упоминаемые слова в названиях топ просматриваемых видео российских СМИ на YouTube

    Добрый день!

    Сегодня хочу поделиться небольшим исследованием: какие слова наиболее упоминаемые в заголовках топ-видео по числу просмотров на YouTube на каналах ведущих российских СМИ?

    Для анализа я взял 7 YouTube каналов самых популярных российских СМИ:

    Читать далее
  • Что такое нейронная сеть?

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

    Читать далее
  • Postman и End-2-End тестирование

    Всем привет. В этой статье я расскажу, как использовал Postman для E2E тестов API, и что из этого вышло.

    Про сам Postman как средство для тестирования API написано довольно много статей как и на Хабре, так и просто в вебе. А еще у них есть отличная документация и обучающий сайт (рекомендую заглянуть, снимает примерно 85% всех вопросов по использованию этого инструмента), поэтому здесь я буду акцентировать внимание именно на сценариях тестирования.

    Хистори. Наша команда занимается продуктовой разработкой софта для железа - умного тренажёр. После тренировки на нем, тренажер отсылает серверу телеметрию, записанную во время тренировки. Сервер ее обрабатывает, и отдаёт результат на несколько дашбордов - юзеры могут смотреть свои показатели, видеть лидерборды, и тд. Одним из показателей, возвращаемых сервером, является кол-во сожженых калорий. Вот на корректную обработку телеметрии и выдачу в несколько статистических лидербордов этих калорий я и создам тестовый сценарий. 

    Что такое E2E тест в постмане? Это коллекция из запросов из разных API, которую можно запускать либо через нативный Postman-Runner, либо с помощью консольного расширения Newman. Ассертится все это через тесты на JS с использованием Chai библиотеки, которая поддерживается постманом.

    Итак, начнём. Все переменные в тесте я буду создавать на уровне коллекции, чтобы не нагромождать env и global списки - там их итак много, и чтобы эти тесты можно было запускать из разных environment.

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

    Читать далее
  • Гайд + видео. Как сделать свои SSH туннели с ip Google бесплатно

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

    Что такое прокси или SSH туннели и зачем они нужны говорить не будем, а вот как получить огромное количество туннелей, за $0 да еще и самыми трастовыми (для сервисов гугла) айпишниками, распишем очень подробно.

    Читать далее
  • Причины массового обжорства SSD на Macbook с процессорами M1

    Мир сошел с ума. Где только не писали о проблеме повышенного аппетита на ресурс SSD-накопителей у новых моделей Macbook Air и Macbook Pro с процессорами M1. Тема обсуждалась на всех популярных технических форумах. И несмотря на массовость проблемы, все обсуждения сводились к тому, что Apple не считает это проблемой. А значит и проблемы нет. И в какую дичь люди готовы поверить для самоуспокоения вместо того, чтобы взглянуть в лицо фактам и выяснить причины стремительного выработки ресурса несъёмного SSD-накопителя.

    Читать далее
  • 100500-й способ резервного копирования

    В какой-то момент, в конторе, где я время от времени админю, понадобилось организовать резервное копирование содержимого NAS сервера.

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

    В общей папке каждый день сидело десятка полтора юристов, которые скидывали в нее рабочие документы. Таким образом, общая папка (по нашей внутренней терминологии "Хранилище") - это сердце компании, ну или его склад.

    Ежедневно получая новости о том, что в той или иной компании были зашифрованы рабочие документы (и имея печальный опыт у другого клиента, где был уплачен выкуп в размере 500$, но после его отправки дешифратор так и не был получен) я решил не ограничиваться только одной копией.

    Схема была придумана следующая: локальный комп каждый день сканирует хранилище на предмет измененных файлов и если находит таковые, то копирует их себе на жесткий диск. В свою очередь, на нем же, установлена программа Яндекс.Диск, где арендован 1 террабайт места. Нам нужна была поддержка истории изменений файла. А такие возможности есть только на платных тарифах. Да и тех 15 Гб, которые выдаются по умолчанию нам бы все равно не хватило.

    Читать далее