Своя СУБД за 3 недели.
Конечный продукт должен обладать следующими свойствами:
#статья #полезное #SQL #СУБД #проекты #велосипедостроение
Нужно всего-лишь каждый день немного времени уделять архитектуре; и всё остальное время вкалывать на результат, печатая и перепечатывая сотни строк кода.
По закону Мерфи, если есть более одного проекта на выбор — я возьмусь за самый сложный из предложенных. Так случилось и с последним заданием курса о системах управления базами данных (СУБД).
Конечный продукт должен обладать следующими свойствами:
хранит базу в бинарном формате в едином файле
DDL: поддерживает три типа данных: Integer, Float и Varchar(N). Для упрощения, все они фиксированной длины.
DML: поддерживает базовые SQL операции:
INSERT
UPDATE
DELETE
SELECT с WHERE и JOIN. С каким именно JOIN — указано не было, поэтому на всякий случай мы сделали и CROSS, и INNER
выдерживает 100'000
#статья #полезное #SQL #СУБД #проекты #велосипедостроение
🔥3👍1
#HEX • IT
В мире программирования создание собственных библиотек — это не просто возможность пополнения своего портфолио или способ структурировать код, а настоящий акт творческого самовыражения (и иногда велосипедостроения). Каждый разработчик иногда использовал в…
Давайте наберем до вторника +30 на этой статье)
👍5
Poetry — это инструмент для управления зависимостями и сборкой пакетов в Python. А также при помощи Poetry очень легко опубликовать свою библиотеку на PyPi!
В Poetry представлен полный набор инструментов, которые могут понадобиться для детерминированного управления проектами на Python. В том числе, сборка пакетов, поддержка разных версий языка, тестирование и развертывание проектов.
Все началось с того, что создателю Poetry Себастьену Юстасу потребовался единый инструмент для управления проектами от начала до конца, надежный и интуитивно понятный, который бы мог использоваться и в рамках сообщества. Одного лишь менеджера зависимостей было недостаточно, чтобы управлять запуском тестов, процессом развертывания и всем созависимым окружением. Этот функционал находится за гранью возможностей обычных пакетных менеджеров, таких как Pip или Conda. Так появился Python Poetry.
Установить poetry можно через pipx:
Итак, давайте создадим проект при помощи poetry и установим зависимости:
В Poetry представлен полный набор инструментов, которые могут понадобиться для детерминированного управления проектами на Python. В том числе, сборка пакетов, поддержка разных версий языка, тестирование и развертывание проектов.
Все началось с того, что создателю Poetry Себастьену Юстасу потребовался единый инструмент для управления проектами от начала до конца, надежный и интуитивно понятный, который бы мог использоваться и в рамках сообщества. Одного лишь менеджера зависимостей было недостаточно, чтобы управлять запуском тестов, процессом развертывания и всем созависимым окружением. Этот функционал находится за гранью возможностей обычных пакетных менеджеров, таких как Pip или Conda. Так появился Python Poetry.
Установить poetry можно через pipx:
pipx install poetry и через pip: pip install poetry --break-system-requirements. Это установит poetry глобально во всю систему.Итак, давайте создадим проект при помощи poetry и установим зависимости:
poetry new <имя_проекта>
cd <имя_проекта>
poetry add <зависимости>
poetry shell # входим в виртуальное окружение
20👍4❤1🔥1 1
#HEX • IT
В мире программирования создание собственных библиотек — это не просто возможность пополнения своего портфолио или способ структурировать код, а настоящий акт творческого самовыражения (и иногда велосипедостроения). Каждый разработчик иногда использовал в…
Извиняюсь что выклянчиваю, но давайте добьем рейтинг статьи до 30(
20👍5
DevOps-инженер - специалист, который внедряет методологию эффективной совместной работы нескольких сфер (такие, как серверное программирование, QA и администрирование серверов) в процесс работы. Можно сказать, что эта специальность абстрактная, т.к. нет четко обозначенных границ знаний.
DevOps-инженер, косвенно или нет, отвечает за следующие этапы работы:
Этап планирования. Какая будет архитектура проекта, как настроить его масштабируемость, определение метрик для оценки эффективности.
Следующим шагом является настройка и администрирование серверов. Эта часть работы включает в себя развертывание и конфигурирование серверной инфраструктуры, установка и настройка необходимого системного ПО и самой системы, а также обеспечение безопасного вывода в продакшен и проверка среды.
Автоматизация CI/CD. Continuous Integration/Continuous Delivery - это одна из практик в DevOps, подразумевающая непрерывную интеграцию и доставку. Ее цели - обеспечение последовательного и автоматизированного способа сборки, упаковки и тестирования продуктов или приложений.
Тестирование и мониторинг. Данный этап представляет собой разработку систем мониторинга производительности и доступности, а также всевозможное тестирование.
Взаимодействие с обратной связью от пользователя. Цель этапа - внедрять улучшения в проект.
Решение других задач, которые позволяют анализировать эффективность разных рабочих процессов, наладить систему работы других сотрудников сферы IT.
Но почему разработчики разных этапов не могут просто работать отдельно, а после синхронизировать? Проблема возникает в том, что у каждого свое окружение, и то что работает у одних, может не работать у других. Все тратят время на решение багов, проблем совместимости и синхронизацию компонентов. Здесь и нужна профессия DevOps-инженера - тот, кто поможет всем общаться, настроить совместную работу.
Конечно данный план - идеальный проект, но таких, к сожалению, мало. Есть многочисленные проекты, где мониторинг отваливается, процесс обновления громоздкий, этап планирования был пропущен или сервера используют потенциально уязвимое ПО. И тогда задача DevOps-инженера - решить все (или хотя бы часть) существующих проблем, сделать так, чтобы все работало, и непрерывно работало и обновлялось.
Как говорит старая английская пословица - "Time is money", время - деньги. В контексте бизнеса и IT инфраструктуры это правда. Сколько бизнес потеряет денег, если вдруг, из-за плохого тестирования или CI/CD упадет сервер? DevOps-инженер как раз и нужен для решения таких проблем.
DevOps-инженер, косвенно или нет, отвечает за следующие этапы работы:
Этап планирования. Какая будет архитектура проекта, как настроить его масштабируемость, определение метрик для оценки эффективности.
Следующим шагом является настройка и администрирование серверов. Эта часть работы включает в себя развертывание и конфигурирование серверной инфраструктуры, установка и настройка необходимого системного ПО и самой системы, а также обеспечение безопасного вывода в продакшен и проверка среды.
Автоматизация CI/CD. Continuous Integration/Continuous Delivery - это одна из практик в DevOps, подразумевающая непрерывную интеграцию и доставку. Ее цели - обеспечение последовательного и автоматизированного способа сборки, упаковки и тестирования продуктов или приложений.
Тестирование и мониторинг. Данный этап представляет собой разработку систем мониторинга производительности и доступности, а также всевозможное тестирование.
Взаимодействие с обратной связью от пользователя. Цель этапа - внедрять улучшения в проект.
Решение других задач, которые позволяют анализировать эффективность разных рабочих процессов, наладить систему работы других сотрудников сферы IT.
Но почему разработчики разных этапов не могут просто работать отдельно, а после синхронизировать? Проблема возникает в том, что у каждого свое окружение, и то что работает у одних, может не работать у других. Все тратят время на решение багов, проблем совместимости и синхронизацию компонентов. Здесь и нужна профессия DevOps-инженера - тот, кто поможет всем общаться, настроить совместную работу.
Конечно данный план - идеальный проект, но таких, к сожалению, мало. Есть многочисленные проекты, где мониторинг отваливается, процесс обновления громоздкий, этап планирования был пропущен или сервера используют потенциально уязвимое ПО. И тогда задача DevOps-инженера - решить все (или хотя бы часть) существующих проблем, сделать так, чтобы все работало, и непрерывно работало и обновлялось.
Как говорит старая английская пословица - "Time is money", время - деньги. В контексте бизнеса и IT инфраструктуры это правда. Сколько бизнес потеряет денег, если вдруг, из-за плохого тестирования или CI/CD упадет сервер? DevOps-инженер как раз и нужен для решения таких проблем.
10 3👍2 1
Инженер Red Hat Никита Попов теперь ведущий разработчик LLVM
После единогласного одобрения на прошлой неделе в LLVM Git он был назначен официальным ведущим разработчиком этого критически важного стека компиляторов с открытым исходным кодом. В Red Hat он работал над LLVM, Clang и Rust. Никита Попов также был одним из основных разработчиков PHP.
Источник
После единогласного одобрения на прошлой неделе в LLVM Git он был назначен официальным ведущим разработчиком этого критически важного стека компиляторов с открытым исходным кодом. В Red Hat он работал над LLVM, Clang и Rust. Никита Попов также был одним из основных разработчиков PHP.
Источник
👍2 2 2❤1🔥1
Эпично: «компьютерных мастеров рядом с вами» ногами выпинали из квартиры потенциальной жертвы.
Самый сок: мошенники забыли свой жёсткий диск на котором были мануалы по обману, вирусы и батники, ломающие нормальную работу Windows. Примечательно, что почти все их гнилые методы работают на смене даты.
Идиоты специально впаривали трояны и даже форматировали диски, чтобы втюхать свои услуги за нереальные деньги — только установка Офиса обошлась бы почти в ДЕСЯТКУ.
Предупредите близких.
Источник
Самый сок: мошенники забыли свой жёсткий диск на котором были мануалы по обману, вирусы и батники, ломающие нормальную работу Windows. Примечательно, что почти все их гнилые методы работают на смене даты.
Идиоты специально впаривали трояны и даже форматировали диски, чтобы втюхать свои услуги за нереальные деньги — только установка Офиса обошлась бы почти в ДЕСЯТКУ.
Предупредите близких.
Источник
У нас пропало две реакции, бустаните кто может)
https://news.1rj.ru/str/boost/hex_warehouse
https://news.1rj.ru/str/boost/hex_warehouse
Telegram
#HEX • IT
Проголосуйте за канал, чтобы он получил больше возможностей.
👍2
Привет, Хабр! Стоит ли говорить, что Python ОЧЕНЬ и ОЧЕНЬ популярный язык программирования, местами даже догоняя JavaScript. Python в мире программирования — это эсперанто, легкий язык созданный для всех, но его владельцам не мешало бы помыться.
В мире программирования создание собственных библиотек — это не просто возможность пополнения своего портфолио или способ структурировать код, а настоящий акт творческого самовыражения (и иногда велосипедостроения). Каждый разработчик иногда использовал в нескольких своих проектах однообразный код, который приходилось каждый раз перемещать. Да и хотя бы как упаковать свои идеи и знания в удобный и доступный формат, которым можно будет поделиться с сообществом.
Если вы ловили себя на мысли: «А почему мне бы не создать свою полноценную библиотеку?», то я рекомендую прочитать вам мою статью.
Эту статью вы можете использовать как шпаргалку для создания своих python-библиотек. Я полностью расскажу все этапы создания библиотеки: документация, тестирование, архитектура, публикация и управление зависимостями
Некоторые из вас могут подумать что мы изобретаем велосипед. А я в ответ скажу — сможете ли вы прямо сейчас, без подсказок, только по памяти, нарисовать велосипед без ошибок?
https://habr.com/ru/companies/timeweb/articles/847370/?utm_campaign=847370&utm_source=habrahabr&utm_medium=rss#habracut
В мире программирования создание собственных библиотек — это не просто возможность пополнения своего портфолио или способ структурировать код, а настоящий акт творческого самовыражения (и иногда велосипедостроения). Каждый разработчик иногда использовал в нескольких своих проектах однообразный код, который приходилось каждый раз перемещать. Да и хотя бы как упаковать свои идеи и знания в удобный и доступный формат, которым можно будет поделиться с сообществом.
Если вы ловили себя на мысли: «А почему мне бы не создать свою полноценную библиотеку?», то я рекомендую прочитать вам мою статью.
Эту статью вы можете использовать как шпаргалку для создания своих python-библиотек. Я полностью расскажу все этапы создания библиотеки: документация, тестирование, архитектура, публикация и управление зависимостями
Некоторые из вас могут подумать что мы изобретаем велосипед. А я в ответ скажу — сможете ли вы прямо сейчас, без подсказок, только по памяти, нарисовать велосипед без ошибок?
https://habr.com/ru/companies/timeweb/articles/847370/?utm_campaign=847370&utm_source=habrahabr&utm_medium=rss#habracut
Хабр
Правильный путь создания python-библиотеки: от создания до публикации
Привет, Хабр! Стоит ли говорить, что Python ОЧЕНЬ и ОЧЕНЬ популярный язык программирования, местами даже догоняя JavaScript. Python в мире программирования — это эсперанто, легкий язык созданный для...
👍3🔥2 2