Habr.com

Syndicate content Хабр
Все публикации подряд на Хабре
Updated: 45 min 13 sec ago

Мини текстовая игра на Python (RPG)

58 min 39 sec ago

Ходил бродил по просторам интернета и случайно наткнулся на статью о создании мини rpg игры текстового типа на python. И так как я очень люблю всяческие Hello world-ы, то не смог пройти мимо.

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

Получилось у меня что-то типа этого:

https://gist.github.com/basimka/2a54ae0b256ecf057e2ebc839c718a66

Читать далее

Что делать, если устал быть фрилансером, а в найм не берут?

1 hour 8 min ago

 «Я мечтал быть свободным, а стал уставшим неврастеником» — такую фразу мне сказал Сергей на консультации. За его плечами — 4 года успешного фриланса в digital-сфере. В его кейсах — известные бренды, хорошие деньги и полная свобода. А ещё — отсутствие выходных, тревога, скачки дохода и выгорание. Он захотел «назад в офис», но получал вежливые отказы или полный игнор.

К сожалению, это довольно частая история. Фриланс — крутая ступень развития, но далеко не всегда конечная точка. Многие рано или поздно хотят вернуться в найм, и сталкиваются с рядом проблем. Давайте разберёмся, почему так происходит, и что с этим делать.

Почему люди вообще устают от фриланса? Причин на то несколько.

1. Хроническая нестабильность

Доход фрилансера может быть в два раза выше, чем в найме, но также легко может упасть в ноль. Когда заказов меньше, чем нужно, фокус смещается с развития на выживание. И не каждый готов жить в таком режиме!

2. Стертые границы личного и рабочего

Нет выходных, нет разницы между «домом» и «работой». Можно работать на кухне, в кровати, в поездке — но со временем это размывает границы и выматывает.

3. Эмоциональное выгорание

Фрилансер — это одновременно специалист, продавец, бухгалтер, клиентский сервис и маркетолог. И если не выстроена система, то это прямой путь к выгоранию.

4. Профессиональный застой и отсутствие перспектив

Нет команды, нет роста через других, нет среды для обучения. Человек может топтаться на месте или терять интерес к профессии. Также фриланс не всегда даёт ощущение движения вверх. Нет повышения, нет внутреннего карьерного роста. И многие начинают скучать по системности, команде, долгосрочным проектам.

Читать далее

Прадед киберпанка Сэмюэл Батлер: как описать искусственный интеллект и господство машин в викторианскую эпоху?

1 hour 13 min ago

Искусственный интеллект в разных его формах к середине 2020-х годов успел стать привычной частью нашей жизни. В ХХ веке он большей частью оставался теорией и научной фантастикой — но был идеей популярной, активно обсуждаемой, вызывавшей и смелые надежды, и мрачные опасения. Но кому первому пришла в голову идея о том, что машина может обладать интеллектом, мышлением и даже подчинить себе людей? Ведь даже отцы-основатели кибернетики, создатели первых вычислительных машин, долгое время воспринимали их сугубо как инструменты для сложных расчётов. Как ни странно, первым эта идея пришла в голову не математику и не инженеру, а английскому писателю и философу Сэмюэлу Батлеру — причём, по иронии истории, в пейзажах из «Властелина колец». И идее этой он до крайности не обрадовался. Сейчас Батлер почти забыт за давностью лет, но следы его идей и текстов можно проследить в научной фантастике и сейчас — в том числе в виде важной отсылки-оммажа в «Дюне» Фрэнка Герберта. Читать дальше →

C# vs Angular: Универсальные принципы Dependency Injection

1 hour 14 min ago

Dependency Injection (или DI) — концепция, которая настолько естественно вплелась в повседневную практику программирования, что, кажется, её игнорирование можно смело записать в список смертных грехов наравне с отсутствием контроля версии. Но почему же DI стал столь важным?

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

Теперь о цели: DI — это вовсе не про навык освоения модной технологии, а про универсальный архитектурный инструмент, понятие которого пересекается в совершенно разных экосистемах. Изучение DI в нескольких языках и средах помогает не просто улучшить понимание самой концепции, но и значительно расширяет взгляд на проектирование систем, приходит понимание, что, несмотря на разницу в синтаксисе, фундаментальные идеи стремятся к одним и тем же архитектурным целям.

Кому будет полезна эта статья? Если вы давно уже подружились с .NET с его IServiceCollection, но всегда хотели разобраться, что из себя представляют Angular Injectors, — добро пожаловать. И наоборот, если вы пишете код в TypeScript, но слово "Transient" у вас вызывает только вопросы, — прошу к прочтению. Мы разберемся, как похожие концепции адаптируются в двух разных мирах и почему их изучение в обеих экосистемах позволит вам лучше проектировать свои приложения.

Читать далее

Апрельская барахолка в Испании: интересные открытия и находки

1 hour 37 min ago

Привет, Хабр! Ну что, очередная статья про мои находки на блошином рынке под Валенсией. В очередной погожий денек я отправился в это место, и не пожалел — нашел немало всего интересного. Сегодня обо всем и расскажу, так что прошу под кат. Читать дальше →

Что волнует фронтенд-разработчиков в 2025 году? Итоги исследования CFP для Frontend Conf 2025

1 hour 42 min ago

Привет, Хабр! На связи программный комитет FrontendConf. Расскажем, как мы составляем программу нашей конференции и боремся за её актуальность — проводим исследования и общаемся с аудиторией.

FrontendConf = доклады + общение + опыт

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

Читать далее

Личный бренд в IT: как перестать быть «невидимкой» и начать получать повышения, приглашения и создавать сайд-проекты

1 hour 58 min ago

В IT принято думать, что имя делают строчки кода. Но когда ты уже senior, CTO или фаундер — код больше не говорит за тебя.

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

Читать далее

[Перевод] Как /etc/hosts поломал редактор сайта

2 hours 5 min ago

Когда я работал над техническим постом о ресолвинге DNS, то столкнулся с чем-то неожиданным. Каждый раз, когда я вводил пути к файлу hosts (/etc/h*sts — здесь я намеренно его обфусцировал, чтобы не вызвать ту самую ошибку), редактор Substack показывал «Network Error» и отказывался автоматически сохранять черновик.

Читать далее

Крепления для полок, ручка для пылесоса и силовая броня из Fallout 4: что мне удалось создать при помощи AnkerMake 5M

2 hours 14 min ago

Привет, Хабр! Это Сергей Ребров, автор команды техпиара в МТС. В октябре 2024 года я писал про AnkerMake 5M — продвинутый 3D-принтер с камерой, облачным хранилищем моделей и автонастройкой. Там была и распаковка, и первые пробы. Сегодня хочу показать, что мне удалось сделать при помощи принтера примерно за полгода использования. Ну и резюмирую, не жалею ли я вообще, что его купил. Публикация будет интересна начинающим энтузиастам 3D-печати и тем, кто хотел бы узнать побольше об этой модели принтера и ее возможностях.

Читать далее

[Перевод] Как Ханс Бете наткнулся на идеальные квантовые теории

2 hours 50 min ago

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

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

Однако через три года после триумфа Гордона его соотечественник Ханс Бете нашёл поразительный способ обойти эту проблему. «Анзац» Бете, что в переводе с немецкого означает «исходная точка», а по сути – правильная догадка, как оказалось, идеально отражает поведение любого количества квантовых частиц, от одного электрона до бесчисленного множества электронов в тонком листе льда. Однако эта необыкновенная способность имеет свои ограничения, для понимания которых потребовались десятилетия.

Читать далее

Как проект для друзей стал чем-то большим

2 hours 58 min ago

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

Читать далее

Как пугали геймеров до Resident Evil. 5 страшных игр до изобретения жанра Survival Horror

3 hours 9 min ago

С годами мы привыкли некоторые жанры так или иначе ассоциировать с конкретными проектами. Говоря о рейсингах, мы так или иначе вспомним Need for Speed. Если разговор заходит о шутерах, то на ум рано или поздно придет серия Call of Duty.

И, к сожалению, когда кто-то говорит о страшных играх, то кто-нибудь да выскажется: «А вот Resident Evil был! Вот страшно-то как было, помните? Икона и родоначальник жанра, между прочим». И частично этот выдуманный мной собеседник окажется прав, творение Синдзи Миками действительно закрепило рамки жанра survival horror в индустрии. 

Но ни первая, ни вторая часть... не были по-настоящему страшными играми. Умелыми оммажами на ужасы категории Б, да. Ненамеренной комедией, к слову, тоже. Но никак не ужасами.

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

Читать далее

[Перевод] Vibe Coding — не оправдание для некачественной работы

3 hours 14 min ago

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

— 7 правил безопасного vibe coding
— Для каких целей подходит и не подходит vibe coding

Читать далее

«Danil OS» или локальные веб интерфейсы

3 hours 20 min ago

Эта статья расскажет о моём эксперименте по оптимизации моего рабочего пространства в macOS.

Примерно 10 лет назад я придумал одну идею — канбан-рабочий стол. Я понял, что иконки на рабочем столе были крутыми… в 1984 году. и втом числе поэтому 1984 не был как 1984) Но камон, за 40 лет кроме виджетов почти ничего не изменилось. Марк…

10 лет назад, узнав о системе канбан, я начал пользоваться Illustrator’ом и рисовал себе 4 колонки прямо на рабочем столе. Поверх них размещал стандартные стикеры, полностью отключив иконки рабочего стола.

Прошло много лет. Я немного выучил веб, и теперь у нас есть опенсорсный софт, который помог мне сделать то же самое, но уже более серьёзно.
Во-первых, Plash — программулька, которая ставит Chrome вместо бэкграунда.
Я также сделал на Python с FastAPI и Jinja и запустил себе уже настроенный канбан-рабочий стол.

Но как вы понимаете, на этом дело не кончилось.
Гуляя по интернету, я нашёл несколько исходников с открытыми лицензиями, которые я использовал в своём проекте.

Во-первых, Future Sticky Navigation with Glass Effect-от Benjamin Koehler. Это моя база: вертикальный слайдер с красивыми эффектами.
Тут тоже пришлось внести доработки:
— переход на православный CSS вместо Sass,
— реализация snapping и закрытия при нажатии на backdrop,
— добавление динамических ссылок в href и фреймов через
Пока что всё храню в LocalStorage и реализовал возможность выгрузки и загрузки списка айфреймов с их ссылками и названиями. Потому что к этому моменту у меня уже было больше пяти локальных серверов, и я решил обойтись без бэкенда там, где это возможно.

Читать далее

Может ли искусственный интеллект «понимать» и почему «думать» — это вредно

4 hours 1 min ago

В статье осуществляется комплексный разбор феномена "понимания" применительно как к искусственному интеллекту, так и к человеку. Для наглядности предлагается авторский мысленный эксперимент "Два солдата" и кое-что в нагрузку.

Читать далее

Был юристом, стал IT-специалистом: как выгореть и всё бросить, а затем запустить IT-студию с нуля — личный опыт

4 hours 36 min ago

Иногда жизнь задаёт вопрос, от которого невозможно увернуться: «А зачем я всё это делаю?..»

Про выгорание, переломные моменты, холодные звонки, работа с компанией из Кремниевой долины и запуск своей студии с нуля. Если вы думаете о смене профессии, стоите на распутье или просто любите такие истории — вам точно будет интересно!

Читать полностью

Vitamin.tools, OneSpot, eLama или Telescope: чем отличаются компании и кому доверить свои деньги. БОЛЬШОЙ ОБЗОР

9 hours 34 min ago

Если у вас по-прежнему нет 2 000 000 €, чтобы напрямую запустить таргетированную рекламу в телеграм, то единственный вариант – сотрудничество с сервисами, предоставляющих рекламный кабинет. Я сравнил условия 4х самых популярных и известных пополняторов: eLama, Telescope, Vitamin.tools и Onespot. На первый взгляд условия у всех ± одинаковые, но есть несколько отличий в мелочах, а мелочи это самое важное.

Читать далее

[Перевод] Линус Торвальдс жёстко разнёс регистронезависимые ФС

11 hours 29 min ago

Линус Торвальдс сегодня в привычной для себя прямой и резкой манере высказался о файловых системах с поддержкой case folding (регистронезависимых файлов и папок).

Поводом послужила проблема с поддержкой case folding в Bcachefs, обнаруженная на этой неделе и уже имеющая фикс для Linux 6.15. Линус написал огромное сообщение в рассылке разработчиков Linux (LKML), изложив своё мнение о реализации case folding.

Стоит отметить, что проблема с case folding в Bcachefs — не первая для Linux: ранее уже возникали баги, связанные с обработкой эмодзи и других специальных символов Unicode.

Читать далее

Гибкий поиск в Spring Data Elasticsearch: Превращаем «првт мр» в «Привет, мир!»

13 hours 58 min ago

Всем привет! Меня зовут Артемий Иванов, и это моя первая статья на Хабре. В ней я хочу поделиться опытом, который получил, работая над задачей кастомизации поиска.

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

Разобраться во всех нюансах было непросто — приходилось вникать в обилие терминов и тонкостей «на ходу». В этой статье я покажу, как можно сделать поиск гибче с помощью Spring Data Elasticsearch — и всё это на конкретных примерах из практики.

Читать далее

Организация рабочей машины на Linux с удаленным доступом. Часть 1: Пепел(ац)

14 hours 59 min ago

Здравствуй, дорогой читатель!

Меня зовут Антон, я молодой инженер, который совсем недавно своими тонкими неокрепшими ручонками пробил стенку из кальцита, выбрался в неизведанный мир проводов и индийских драконов да со всего своего юношеского маху сиганул навстречу приключениям.
Мне предстоит узнать много нового и отстроить свое космическое судно… или, может, ноев ковчег? Нет, мне предстоит отстроить свою систему; систему под номером d96. В процессе ее строительства, как подобает всякому капитану, я буду вести бортовой журнал.
Итак, запись #1…

Читать далее

Who's online

There are currently 1 user and 5 guests online.