❃ Хижина программиста Æ
14.8K subscribers
1.34K photos
102 videos
24 files
3.09K links
Канал для IT Дизайнеров и Программистов, Инженеров и Преподавателей

📡 Ссылка на канал: @hut_programmer_07

⚖️ Фундаментальные знания по основам программирования, философии и этики

💡 По вопросам рекламы: @quadd4rv1n7

Σ 只
Download Telegram
Forwarded from Азбука веры
Праздник Преображения Господня в народной традиции именуют «Яблочным Спасом». Это название никак не отражает духовного смысла праздника и является проекцией аграрного календаря на календарь церковный. Нелепость названия заключена в неправильном использовании слова «Спас». Спас – это Спаситель, сам праздник Преображения – Господский, и посвящен одному из событий из земной жизни Господа Иисуса Христа, а не созревшим плодам. Необдуманно называя Преображение Господне Яблочным Спасом, люди невольно именуют Господа «яблочным Спасителем». Звучит не просто нелепо, но и в определенной мере кощунственно. Но, увы, так называемый народный календарь пестрит подобными названиями. Только одних «Спасов» аж целых три – медовый, яблочный, ореховый.
1👍1
Forwarded from QuadD4rv1n7 & Фишки программиста (Dupley Maxim Igorevich)
StealthMessage — это платформа, которая позволяет пользователям отправлять и получать анонимные сообщения, не раскрывая свою личность.

4️⃣ GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Forwarded from QuadD4rv1n7 & Фишки программиста (Dupley Maxim Igorevich)
VK Доска — запущена бета-версия сервиса.

Это виртуальное пространство, где можно создавать неограниченное количество интерактивных досок, добавлять текст, изображения, ссылки и даже устанавливать таймер, чтобы не выбиваться из графика. Самое главное — никаких ограничений по количеству участников или досок.

Пресс-релиз
👍1
Forwarded from QuadD4rv1n7 & Фишки программиста (Dupley Maxim Igorevich)
«Создание Minecraft миров на Python» — это курс, предназначенный для начинающих программистов, энтузиастов Minecraft и разработчиков, желающих научиться создавать и автоматизировать уникальные миры в Minecraft с использованием языка программирования Python.

🖥 В ходе курса вы освоите основы работы с Minecraft API и Python, научитесь программировать миры, автоматизировать создание структур и ландшафтов, а также разрабатывать мини-игры и модификации для Minecraft.

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

Мы разберем создание простых и сложных 2D и 3D объектов, а также научимся генерировать случайные ландшафты и автоматизировать рутинные задачи в Minecraft.

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

⌨️ Теги: #stepik #study #education #minecraft #2D #3D #моделирование #обучение #курсы #разработка #quadd4rv1n7 #2024
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
Forwarded from QuadD4rv1n7 & Фишки программиста (Dupley Maxim Igorevich)
Притча дня:
Жил один царь, который часто размышлял о вечности, но никак не мог понять её.
Однажды ему донесли, что некий мальчик-пастух может давать удивительно разумные ответы на все мудрёные вопросы.

Царь позвал мальчика и спросил:
— Скажи мне, дитя моё, как долго продолжается один миг в вечности ?


Мальчик подумал и ответил:
— В одной стране, государь, есть гора из чистого адаманта, имеющая семь вёрст в ширину, семь вёрст в длину и семь вёрст в вышину.
К этой горе один раз через каждые сто лет прилетает маленькая птичка и точит о неё свой крохотный клюв.
Когда птичка источит своим клювом всю эту гору, тогда и пройдёт один миг в вечности.

⌨️ Теги: #притча #богословие #христианство #quadd4rv1n7 #2024
1👍1
Forwarded from Москва впечатляет
This media is not supported in your browser
VIEW IN TELEGRAM
🧘 Лемур из Московского зоопарка так преисполнился в своем познании, что словил дзен.

🔥 Москва Пушистая
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
Forwarded from Екклесиаст (Владимир Фёдоров)
Люди видят в ВАС лишь свои ОТРАЖЕНИЯ...

Самая освобождающая вещь — это осознание, что люди никогда «тебя» не поймут.
Люди всегда носят свой собственный образ «тебя». (Джефф Фостер).


Действительно, каждый человек уникален и неповторим, и его внутренний мир часто остаётся непонятным для окружающих.


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


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


"Так говорит Господь... ты дорог в очах Моих, многоценен, и Я возлюбил тебя..." (Ис.43:4).

Жми сюда 👉🏻 Подпишись, поделись с друзьями

#Екклесиаст #цитата #интересно #важно #мысли 👍
1👍1
☀️ Лето для учителей – время обновления. Пока нет занятий, можно успеть многое:

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

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

🔠 Найти новые материалы – учебники, методики, онлайн-ресурсы, игры, фильмы… Такие новинки могут обогатить ваши уроки и привлечь учеников к теме.

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

🔠 Подготовиться эмоционально. Летом есть больше времени на отдых, хобби и общение с близкими. Все это поможет вам перезагрузиться и запастись энергией на месяцы вперед.

😎 Желаем вам успехов в новом учебном году!
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
Решил подготовить для вас шпаргалку с самыми популярными командами GIT 🧑‍💻. Это 20 самых часто используемых команд, которые пригодятся как новичкам, так и опытным разработчикам.

1. Инициализация пустого репозитория 👇
git init


💡 Инициализирует новый Git-репозиторий в текущей директории.

2. Клонирование репозитория 👇
git clone <url>


💡 Клонирует существующий репозиторий на локальный компьютер.

3. Добавление удаленного репозитория👇
git remote add origin <url>


💡Добавляет удаленный репозиторий с именем origin.

4. Добавление файлов в отслеживание👇
git add <файл/директория>
git add .


💡Добавляет изменения в указанные файлы или директорию в область подготовки (staging area).
git add . — добавляет все измененные файлы.

5. Создание коммита👇
git commit -m "Сообщение коммита"


💡Создает коммит с указанным сообщением.

6. Отправка изменений на удаленный репозиторий👇
git push origin <branch>


💡 Отправляет локальные изменения на указанный удаленный репозиторий в указанную ветку.

7. Получение изменений с удаленного репозитория👇
git pull


💡Забирает последние изменения с удаленного репозитория и объединяет их с локальными.

8. Просмотр состояния репозитория👇
git status


💡Показывает текущее состояние репозитория, например, какие файлы были изменены или подготовлены к коммиту.

9. Просмотр истории коммитов👇
git log


💡Показывает историю коммитов в репозитории.

10. Создание новой ветки👇
git checkout -b <branch-name>


💡Создает новую ветку и сразу переключается на неё.

11. Переключение между ветками👇
git checkout <branch-name>


💡 Переключается на указанную ветку.

12. Слияние веток👇

git merge <branch-name>


💡 Сливает изменения из указанной ветки в текущую.

13. Отмена последнего коммита (оставляя изменения в файлах)👇

git reset --soft HEAD^


💡Отменяет последний коммит, сохраняя изменения в рабочих файлах.

14. Удаление локальной ветки👇
git branch -d <branch-name>


💡Удаляет локальную ветку.

15. Просмотр различий между файлами👇

git diff


💡Показывает изменения в файлах по сравнению с последним коммитом.

16. Просмотр всех веток👇
git branch


💡 Показывает список всех локальных веток.

17. Переименование текущей ветки👇
git branch -m <new-branch-name>


18. Переименование другой ветки👇
git branch -m <old-branch-name> <new-branch-name>


💡 Переименовывает указанную ветку.

19. Создание новой ветки и переключение на неё👇
git checkout -b <branch-name>

💡 Создает новую ветку и сразу переключается на неё.

20. Настройка ветки для автоматического пуша 👇

git push --set-upstream origin <branch-name>


💡 Связывает текущую ветку с удаленной, чтобы в дальнейшем можно было просто использовать git push без указания ветки.
👍1
Упрощенное тестирование Pydantic с имитацией ORM

При изучении Pydantic по моей статье, вы можете столкнуться с необходимостью тестирования метода model_validate(my_obj, from_attributes=True). Чтобы избежать развертывания отдельной базы данных с описанием модели таблицы SQLAlchemy, можно использовать следующий элегантный подход:

1. Создание имитации ORM-класса

Создайте простой класс, имитирующий ORM-модель. Например:
from datetime import date

class MyUser:
    id = 3
    name = "Алексей"
    surname = "Яковенко"
    birthday_date = date(1993, 2, 19)

2. Определение Pydantic-модели

Создайте соответствующую Pydantic-модель. Например:
from pydantic import BaseModel, computed_field
from dateutil.relativedelta import relativedelta

class User(BaseModel):
    id: int
    name: str
    surname: str
    birthday_date: date

    @computed_field
    def full_name(self) -> str:
        return f"{self.name} {self.surname}"

    @computed_field
    def age(self) -> str:
        today = date.today()
        delta = relativedelta(today, self.birthday_date)
        return f"{delta.years} лет, {delta.months} месяцев и {delta.days} дней"

3. Использование модели

Теперь вы можете использовать вашу "ORM-модель" с Pydantic:
my_obj = MyUser()
alex = User.model_validate(my_obj, from_attributes=True)
print(alex.model_dump())

Результат
{
    'id': 3,
    'name': 'Алексей',
    'surname': 'Яковенко',
    'birthday_date': datetime.date(1993, 2, 19),
    'full_name': 'Алексей Яковенко',
    'age': '31 лет, 7 месяцев и 29 дней'
}

Почему это работает

Этот подход эффективен благодаря мощи объектно-ориентированного программирования в Python. Создавая простой класс MyUser, вы фактически имитируете поведение ORM-модели. Pydantic способен работать с этим классом так же, как он работал бы с реальной ORM-моделью, извлекая атрибуты и применяя свою логику валидации и преобразования.

Такой метод позволяет легко тестировать и демонстрировать функциональность Pydantic без необходимости настройки полноценной базы данных, что особенно удобно для обучения и быстрого прототипирования.
👍2🦄1
Forwarded from NN
OpenAI выпустили десктопную версию ChatGPT на Windows.

Пока приложение доступно только платным подписчикам. Работает на Windows 10 версии 17763.0 или более поздней. Весит всего 283 МБ.

Это ранняя версия и она не поддерживает голосовые команды, а некоторые интеграции с GPT Store от OpenAI не работают.

Скачиваем здесь.
👍2💯2
🖥 Pydantic 2.0 — это основная версия библиотеки Pydantic, предназначенной для валидации данных и создания моделей данных в Python.
Она используется в основном для работы с данными, получаемыми из API, конфигурационных файлов или других источников.
Pydantic обеспечивает проверку типов и валидацию данных на основе аннотаций типов, что позволяет разработчикам создавать надежные и безопасные приложения.

🥳 Основные изменения и особенности Pydantic 2.0:

Изменения в API: В Pydantic 2.0 произошли значительные изменения в API, включая упрощение и улучшение читаемости кода. Некоторые старые функции были удалены или изменены, чтобы сделать библиотеку более интуитивной.
Поддержка данных в формате JSON: Pydantic 2.0 предлагает улучшенную работу с данными в формате JSON, что позволяет проще обрабатывать входные и выходные данные в виде JSON-объектов.
Улучшенная производительность: Новая версия оптимизирована для повышения производительности, что позволяет быстрее обрабатывать и валидировать данные.
Расширяемость: В Pydantic 2.0 улучшена система расширяемости, что позволяет разработчикам легко создавать собственные типы данных и валидации.
Поддержка dataclasses: Улучшенная интеграция с встроенными dataclasses, что упрощает их использование вместе с Pydantic.
Статическая типизация: Библиотека поддерживает статическую типизацию и интеграцию с такими инструментами, как mypy, что помогает выявлять ошибки на этапе разработки.
Использование BaseModel: В Pydantic 2.0 продолжается использование BaseModel для создания моделей данных, но с новыми возможностями и улучшенной логикой.

Установка `Pydantic`:
pip install pydantic


Пример кода:
from pydantic import BaseModel, EmailStr, conint, Field, validator, constr
from typing import Optional
import re

class User(BaseModel):
username: constr(min_length=3, max_length=30) # Имя пользователя: от 3 до 30 символов
email: EmailStr # Электронная почта с проверкой формата
age: conint(ge=0) # Возраст: неотрицательное целое число
bio: Optional[str] = Field(default=None, max_length=150) # Опциональная биография, максимум 150 символов
is_active: bool = True # Активный статус пользователя
password: constr(min_length=8) # Пароль: минимум 8 символов

@validator('username')
def validate_username(cls, v):
if not v.isalnum():
raise ValueError('Имя пользователя должно содержать только буквы и цифры')
return v

@validator('bio')
def validate_bio(cls, v):
if v and 'плохое_слово' in v: # Пример фильтрации нецензурных слов
raise ValueError('Биография не должна содержать нецензурных слов')
return v

@validator('password')
def validate_password(cls, v):
if not (re.search(r'[A-Za-z]', v) and re.search(r'[0-9]', v) and re.search(r'[!@#$%^&*(),.?":{}|<>]', v)):
raise ValueError('Пароль должен содержать хотя бы одну букву, одну цифру и один специальный символ')
return v

def __str__(self):
return f"User(username={self.username}, email={self.email}, age={self.age}, bio={self.bio}, is_active={self.is_active})"


Pydantic 2.0 является мощным инструментом для разработки приложений, требующих надежной валидации данных и строгой типизации, особенно в сочетании с такими фреймворками, как FastAPI.

⚡️Теги: #pydantic #python #validate #password #maximudupley #quadd4rv1n7 #2024
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2💋1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🤩1
26 октября — праздник Иверской иконы Божией Матери

В этот день православные верующие празднуют память Иверской иконы Божией Матери, одной из самых почитаемых икон Пресвятой Богородицы. Ее история уходит корнями в IX век, в годы иконоборческих гонений в Византии. Согласно преданию, одна благочестивая вдова, чтобы уберечь свою икону от разрушения, спустила её в море у берегов Никеи. Но икона не утонула, а чудесным образом поплыла по воде и достигла Афона, где ее встретили монахи Иверского монастыря. Икона сама указала монахам место, где она должна быть помещена, — над монастырскими воротами, поэтому её также называют Вратарницей или Портаитиссой.

Считается, что Иверская икона защищает от бедствий и враждебных сил, охраняет дома и семьи, дарует исцеление от болезней, утешает в скорбях и укрепляет веру. В России этот образ Пресвятой Богородицы стал особо почитаемым, когда икона была принесена в Москву в XVII веке.

Как провести этот день?

26 октября верующие приходят в храмы, чтобы молитвенно поклониться иконе Иверской Божией Матери. В этот день особенно просят Богородицу о защите дома и семьи, о здравии близких и о даровании мира. Можно прочитать Акафист или молитвы перед этим образом, поблагодарить Богородицу за заступничество и попросить её помощи в трудных жизненных обстоятельствах. Также в молитвах можно попросить о поддержке на пути духовного становления, чтобы быть стойкими в вере и следовать заповедям Божьим.

Пусть этот день напомнит всем нам о великой любви и заступничестве Пресвятой Богородицы. С праздником!

#ПравославныеОнлайн #ИверскаяИконаБожьейМатери #Молитва #Записки #Церковь #ПравославноеСообщество #Православие #Благотворительность
2🙏1
Этот мир (придуман не нами) – кавер | This World – cover

Кавер на песню "Этот мир (придуман не нами)" передает глубокие эмоции и размышления о жизни и окружающем мире.

В этой композиции обсуждаются темы существования, судьбы и ответственности.

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

⌨️ Теги: #cover #world #analytics #maximdupley #quadd4rv1n7 #2024
1💯1
Animation vs. Physics

Animation vs. Physics — это комедийный анимационный ролик, который демонстрирует, как анимированные персонажи взаимодействуют с законами физики.

Сценарии полны юмора и преувеличенных ситуаций, показывающих контраст между игривой анимацией и строгими физическими законами.

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

⌨️ Теги: #analytics #animation #anim #physics #maximdupley #quadd4rv1n7 #2024
👍1🏆1
Animation vs. Geometry

Animation vs. Geometry — это забавный анимационный ролик, в котором разворачивается игривая битва между анимированными фигурами и геометрическими формами.

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

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

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

⌨️ Теги: #аналитика #анимация #проектирование #разработка #ролик #фигуры #anim #animation #geometry #analytics #maximdupley #quadd4rv1n7 #2024
👍2