Pull to refresh
329.5
Karma
8
Rating
Олег Чирухин @olegchir

кибер-ниндзя

  • Followers 528
  • Following 64
  • Posts
  • Comments

FastAPI очень быстрый CRUD

Python *
Sandbox

Всем привет это моя первая статья на habr надеюсь это будет кому-то интересно. На последнем проекте я как всегда делал какой-то REST API и вдруг меня посетила мысль что я что-то много копирую и вставляю одного и того же кода. И я решил почему бы не сделать генератор этого кода это оказалось не сложно.

Сразу оговорюсь что я использую https://github.com/tiangolo/full-stack-fastapi-postgresql и содержимое репозитория нужно положить в директорию backend/app/app что бы все заработало.

Думаю в чистом FastAPI проекте это тоже должно сработать.

По умолчанию в проектах этого типа есть два типа пользователей superuser и обыкновенный user соответсвенно CRUD будет создаваться относительно двух этих пользователей. Для генерации CRUD достаточно создать просто модель.

Читать далее
Total votes 28: ↑0 and ↓28 -28
Views 7.1K
Comments 19

Переезд во Францию по работе: зарплаты, визы и резюме

IT-emigration


Ниже — краткий обзор того, как сейчас можно переехать во Францию по работе в ИТ: на какую визу стоит рассчитывать, какую зарплату нужно для этой визы иметь, и как адаптировать резюме под местные традиции.
Читать дальше →
Total votes 62: ↑54 and ↓8 +46
Views 50K
Comments 187

Обработка русского языка на Java

Search engines *Programming *Java *Kotlin *Natural Language Processing *
Tutorial

Рассказ пойдет об одной новой, общедоступной Java/Kotlin библиотеке, для работы с русским языком. Она позволяет получить исходные формы + морфологическую информацию для большинства слов русского языка. Статья предназначена для тех, кто создает ботов, обрабатывает сообщения и занимается поиском. Для справки, ключевое отличие лемматизации от стеммизации (урезания до нормализованной формы) состоит в том, что лемма удовлятворяет правилам языка, например для слова "яблоками" леммой будет "яблоко", а не просто урезанный корень. Лемма может быть и более сложной, например для слова люди, начальная форма – человек. В этой статье мы рассмотрим способ быстрого извлечения такой информации из морфологического словаря.

Запустить процесс
Total votes 10: ↑10 and ↓0 +10
Views 4.9K
Comments 13

Обзор плагина Big Data Tools

JetBrains corporate blog Programming *Big Data *Data Engineering *

Храните файлы в облачных файловых системах или, может быть, используете Hadoop, Spark и Zeppelin? А пробовали ли вы работать с ними напрямую из IDE?

Привет, меня зовут Олег, я из команды плагина Big Data Tools. В этой статье мы поговорим, зачем этот плагин нужен, как применяется и где его достать. За последний год плагин прошёл большой путь и из экспериментального продукта превратился в боевое решение, на которое стоит взглянуть специалистам по Big Data.

В JetBrains мы создаем IDE и другие инструменты, которые делают жизнь разработчиков лучше. Big Data Tools — это очень узкоспециализированный, редкоземельный плагин, который предназначен для конкретного вида разработчиков — для дата-инженеров.

Если вам интересно подробней узнать о мире Big Data и работе дата-инженеров, рекомендую развернутую серию статей Паши Финкельштейна. Здесь мы рассмотрим одну из самых популярных схем.

Читать далее
Total votes 6: ↑5 and ↓1 +4
Views 1.9K
Comments 11

Тренды тестирования 2020-2021: правда и мифы

IT systems testing *Web services testing *DevOps *

Всем привет! Недавно я наткнулся на World Quality Report (ссылку поставил в конце, чтобы не пугать вам сразу отчетов на 50 страниц) — большой обзор трендов в тестировании 2020-2021 годов. А поскольку мы в Qameta Software сами постоянно сталкиваемся с командами тестирования, которые стараются как-то поправить свои процессы и наладить работу тестирования, я решил оценить, насколько они актуальны в России.

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

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

Читать далее
Total votes 15: ↑15 and ↓0 +15
Views 9.5K
Comments 7

Виртуальный учебник Wolfram Language (Mathematica), 5 издание

Wolfram Research corporate blog Programming *Functional Programming *Professional literature
Tutorial
image

Скачать учебник на русском языке

Скачать учебник на украинском языке

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

Этот учебник теперь содержит в себе 464 статьи (356 статей в предыдущей версии, общий объем которых составляет несколько тысяч печатных страниц.
Читать дальше →
Total votes 21: ↑21 and ↓0 +21
Views 11K
Comments 6

Удаленный доступ к IDE при помощи Projector

JetBrains corporate blog Programming *Java *

Как вы наверняка знаете, Swing — это фреймворк, позволяющий разрабатывать графические интерфейсы для приложений на платформе Java. IDE JetBrains используют Swing для отрисовки интерфейсов. Также Swing применяется и в других IDE на базе IntelliJ, например, в Android Studio.

IDE JetBrains и приложения на Swing — десктопные приложения, и, в целом, это плюс. Однако бывают случаи, которые требуют иного подхода (например, тонкий клиент). И именно здесь нам пригодится Projector.

Projector — это технология, с помощью которой вы запускаете IDE на базе IntelliJ либо Swing-приложения на сервере. Далее вы можете подключаться к ним откуда угодно, используя браузеры или нативные приложения.

Читать далее
Total votes 24: ↑24 and ↓0 +24
Views 6.2K
Comments 27

Линейная алгебра для разработчиков игр

Game development *
Translation
Tutorial
Эта статья является переводом цикла из четырёх статей «Linear algebra for game developers», написанных David Rosen и посвящённых линейной алгебре и её применению в разработке игр. С оригинальными статьями можно ознакомиться тут: часть 1, часть 2, часть 3 и часть 4. Я не стал публиковать переводы отдельными топиками, а объединил все статьи в одну. Думаю, что так будет удобнее воспринимать материал и работать с ним. Итак приступим.
Читать дальше →
Total votes 314: ↑296 and ↓18 +278
Views 621K
Comments 61

CRDT: Conflict-free Replicated Data Types

Programming *System Analysis and Design *Algorithms *Mathematics *Distributed systems *

Как считать хиты страницы google.com? А как хранить счётчик лайков очень популярных пользователей? В этой статье предлагается рассмотреть решение этих задач с помощью CRDT (Conflict-free Replicated Data Types, что по-русски переводится примерно как Бесконфликтные реплицированные типы данных), а в более общем случае — задачи синхронизации реплик в распределённой системе с несколькими ведущими узлами.
Читать дальше →
Total votes 20: ↑19 and ↓1 +18
Views 24K
Comments 14

Big Data Tools EAP 12: экспериментальная поддержка Python, поиск по ноутбукам в Zeppelin

JetBrains corporate blog Python *Scala *Big Data *

Только что вышло очередное обновление EAP 12 для плагина под названием Big Data Tools, доступного для установки в IntelliJ IDEA Ultimate, PyCharm Professional и DataGrip. Можно установить его через страницу плагина или внутри IDE. Плагин позволяет работать с Zeppelin, загружать файлы в облачные хранилища и проводить мониторинг кластеров Hadoop и Spark.


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


Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Views 1.1K
Comments 0

Реализация WebRTC в медиа сервере – практика и политика

Browser extensions Browsers Development of communication systems *Development for Windows *
Sandbox
1. Стриминг в браузеры в реальном времени – решения нет. Или есть?

Вот уже примерно как 20 лет пропускная способность сетей и вычислительные возможности компьютеров позволяют сжатие и транслирование звука и видео по IP протоколу в режиме, близком к реальному времени. За это время центральными стандартизирующими организациями, такими как W3C и IETF, а также множеством больших и малых компаний, разработаны сотни стандартов и протоколов для эффективного сжатия, упаковывания, пересылки, синхронизации и проигрывания аудио-видео контента на компьютерах и мобильных устройствах. Видеозахвату, сжатию и трансляции по IP в реальном времени было уделено особое внимание, так как, во-первых, именно IP наиболее дёшев и общедоступен на всех уровнях, а во-вторых, технологии видеоконференций и видеонаблюдения жизненно необходимы и пользуются огромным спросом.
Читать дальше →
Total votes 12: ↑8 and ↓4 +4
Views 8.6K
Comments 4

Как в 30 лет стать старым и никому не нужным на примере разработки квеста

Adobe Flash Game development *
Sandbox
Всем привет. Хочу поделиться своей историей, а именно — историей немного затянувшейся разработки простенького point‑and‑click квеста.

Total votes 217: ↑215 and ↓2 +213
Views 54K
Comments 154

Vulkan. Руководство разработчика. Краткий обзор

Programming *C++ *Working with 3D-graphics *Game development *CGI *
Sandbox
Tutorial


Я работаю техническим переводчиком ижевской IT-компании CG Tribe, которая предложила мне внести свой вклад в сообщество и начать публиковать переводы интересных статей и руководств.

Здесь я буду публиковать перевод руководства к Vulkan API. Ссылка на источник — vulkan-tutorial.com. Поскольку переводом этого же руководства занимается еще один пользователь Хабра — kiwhy, мы договорились разделить уроки между собой. В своих публикациях я буду давать ссылки на главы, переведенные kiwhy.

Содержание
Читать дальше →
Total votes 25: ↑23 and ↓2 +21
Views 15K
Comments 5

Distributed File Systems

JetBrains corporate blog Java *Big Data *

The Big Data Tools plugin seamlessly integrates HDFS into your IDE and provides access to different cloud storage systems (AWS S3, Minio, Linode, Digital Open Space, GS, Azure). But is this the end? Have we implemented everything and now progress has stopped? Of course not.


In this short digest, we'll take a look at 15 popular distributed file systems available on the market and try to get a sense of their individual advantages.


Almost all of these systems are free or open-source, and you can find the sources on GitHub. The sites of these projects, their documentation, and online reviews provide most of the information we’ll consider here. Other than HDFS, none of these technologies have been implemented yet in Big Data Tools. But who knows? Perhaps someday we'll see them in our plugin.


Read more →
Total votes 8: ↑8 and ↓0 +8
Views 3.7K
Comments 1

Big Data Tools EAP 11: Zeppelin в DataGrip и spark-submit во всех поддерживаемых IDE

JetBrains corporate blog Java *Scala *Big Data *

Только что вышло очередное обновление EAP 11 для плагина под названием Big Data Tools, доступного для установки в IntelliJ IDEA Ultimate, PyCharm, and DataGrip. Можно установить его через страницу плагина на сайте или внутри IDE.


Big Data Tools — это плагин, позволяющий соединяться с кластерами Hadoop и Spark. Он предоставляет мониторинг узлов, приложений и отдельных задач. Кроме того, в IDEA и DataGrip можно создавать, запускать и редактировать ноутбуки Zeppelin. Можно не переключаться на веб-интерфейс Zeppelin и спокойно работать, не выходя из любимого IDE. Плагин позволяет удобно перемещаться по коду, делать умное автодополнение, рефакторинги и квик-фиксы прямо внутри ноутбука.


Читать дальше →
Total votes 11: ↑10 and ↓1 +9
Views 1.2K
Comments 2

Big Data Tools Update 11 Is Out

JetBrains corporate blog Java *Scala *Big Data *

EAP 11 of the Big Data Tools plugin for IntelliJ IDEA Ultimate, PyCharm, and DataGrip is available starting today. You can install it from the JetBrains Plugin Repository or inside your IDE.


Big Data Tools is a new JetBrains plugin that allows you to connect to Hadoop and Spark clusters and monitor nodes, applications, and jobs. It also brings support for editing and running Zeppelin notebooks inside IntelliJ IDEA and DataGrip, so you can create, edit, and run Zeppelin notebooks without ever having to leave your favorite IDE. The plugin offers smart navigation, code completion, inspections, quick-fixes, and refactoring inside notebooks.


Read more →
Total votes 7: ↑7 and ↓0 +7
Views 1K
Comments 0

Укрощение Горыныча 2, или Символьное исполнение в Ghidra

Digital Security corporate blog Information Security *Reverse engineering *


С удовольствием и даже гордостью публикуем эту статью. Во-первых, потому что автор — участница нашей программы Summ3r of h4ck, Nalen98. А во-вторых, потому что это исследовательская работа с продолжением, что вдвойне интереснее. Ссылка на первую часть.


Добрый день!


Прошлогодняя стажировка в Digital Security не оставила меня равнодушной к компании и новым исследованиям, так что в этом году я взялась поработать над проектом так же охотно. Темой летней стажировки «Summer of Hack 2020» для меня стала «Символьное исполнение в Ghidra». Нужно было изучить существующие движки символьного исполнения, выбрать один из них и реализовать его в интерфейсе Ghidra. Казалось бы, зачем, ведь в основном движки представляют собой самостоятельные решения? Этот вопрос будет возникать до тех пор, пока не попробовать то, что автоматизирует действия и сделает их наглядными. Это и стало целью разработки.


Статья в какой-то степени является еще и продолжением статьи моего наставника, Андрея Акимова, о решении Kao’s Toy Project с Triton. Только сейчас нам не придется писать ни строчки кода – решить крякми можно будет практически двумя кликами.


Итак, начнем по порядку.

Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Views 2.6K
Comments 0

ZTools для Apache Zeppelin

JetBrains corporate blog Java *Scala *Big Data *

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


Проект недавно добрался до версии 0.9.0-preview2 и активно развивается, но, тем не менее, множество вещей всё ещё не реализованы и ждут своего часа.


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


Читать дальше →
Total votes 15: ↑15 and ↓0 +15
Views 1.6K
Comments 3

TeX в SVG: опенсорс-решение в помощь веб-разработчикам образовательных проектов

Яндекс corporate blog Website development *Open source *Image processing *Mathematics *

Привет! Меня зовут Костя Мамаев, я занимаюсь фронтенд-разработкой в поиске Яндекса. Некоторое время назад мы вместе с другими ребятами из команды помогали образовательным проектам компании. Среди прочего пришлось решить, казалось бы, простую задачку: отображать на экране и распечатывать на бумаге формулы, закодированные в популярном формате TeX. Звучит, как дело пяти минут, но в результате трёх подходов к снаряду появился полноценный микросервис для серверного рендеринга формул в svg и png. В статье расскажу, зачем мы пошли этим путём и почему ни один из существующих проектов не подошёл «из коробки».

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

Подробнее про три подхода к снаряду
Total votes 58: ↑56 and ↓2 +54
Views 7.7K
Comments 23

Information

Rating
540-th
Location
Россия
Works in
Date of birth
Registered
Activity