Pull to refresh
1
0.2
Send message

Pocket Z: миниатюрный ПК на базе Linux, который помещается в карман. Что это за девайс?

Reading time3 min
Views17K

Мини-компьютеры сейчас не редкость, многие производители — как стартапы, так и крупные компании — выпускают собственные модели мини-ПК. Но обычно это устройства с монолитным корпусом, без экрана и клавиатуры. Сейчас появился новый проект, который получил название Pocket Z. У девайса есть экран и клавиатура, в качестве ОС используется Linux. Подробности — под катом.

Читать далее
Total votes 11: ↑10 and ↓1+17
Comments15

Обработка больших и очень больших графов

Level of difficultyMedium
Reading time18 min
Views4.3K

Однажды ко мне обратилась одна крупная фруктовая телефонная компания с просьбой подготовить для них курс по Apache Spark продвинутого уровня, и в нем обязательно должен быть раздел про обработку графов (Neo4j не предлагать). На тот момент я знал про классические алгоритмы обработки графов на базе DFS (поиск в глубину) и BFS (поиск в ширину). При этом неотъемлемым условием применения того или иного подхода является локальная поддержка стека (DFS) или очереди (BFS). Следовательно, классические алгоритмы можно применять для обработки графов, которые умещаются в память одной машины.

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

Читать далее
Total votes 12: ↑12 and ↓0+12
Comments2

Поиск кратчайшей траектории на поверхности реконструированного МРТ изображения

Level of difficultyMedium
Reading time7 min
Views4.3K

Привет, Хабр! Хочу рассказать о том, как я решал задачу связанную с обработкой и визуализацией томографических изображений, а именно — измерение и поиск кратчайшей траектории на поверхности 3D изображения. Одна из областей применения — измерение антропометрических данных на КТ/МРТ исследованиях.

Читать далее
Total votes 32: ↑32 and ↓0+32
Comments0

Полноценный Kubernetes с нуля на Raspberry Pi

Reading time12 min
Views30K


Совсем недавно одна известная компания объявила, что переводит линейку своих ноутбуков на ARM-архитектуру. Услышав эту новость, я вспомнил: просматривая в очередной раз цены на EC2 в AWS, обратил внимание на Graviton'ы с очень вкусной ценой. Подвох, конечно же, был в том, что это ARM. Тогда мне и в голову не приходило, что ARM — это довольно серьезно…

Для меня эта архитектура всегда была уделом мобильных и прочих IoT-штучек. «Настоящие» серверы на ARM — как-то необычно, в чем-то даже дико… Однако новая мысль засела в голову, поэтому в один из выходных решил проверить, что вообще можно сегодня запустить на ARM. И для этого решил начать с близкого и родного — кластера Kubernetes. Причем не просто какого-то условного «кластера», а всё «по-взрослому», чтобы он был максимально таким же, каким я привык его видеть в production.

По моей задумке, кластер должен быть доступным из интернета, в нём должно выполняться некоторое веб-приложение и еще должен быть как минимум мониторинг. Для реализации этой идеи понадобится пара (или больше) Raspberry Pi не ниже модели 3B+. Площадкой для экспериментов могла бы стать и AWS, но мне были интересны именно «малины» (которые всё равно стояли без дела). Итак, мы развернём на них кластер Kubernetes с Ingress, Prometheus и Grafana.
Читать дальше →
Total votes 40: ↑40 and ↓0+40
Comments21

Книги по Kubernetes — что почитать в 2023 году

Level of difficultyEasy
Reading time4 min
Views18K
image

Согласно прошлогоднему отчету Cloud Native Operations, недостаток квалифицированных кадров — одна из ключевых причин, тормозящих внедрение Kubernetes. Этот факт подтверждают аналитики DataDog — по их оценкам, из-за нехватки экспертизы миграцию на контейнерную инфраструктуру откладывает 40% компаний.

Иными словами, в индустрии наблюдается повышенный спрос на специалистов по Kuberentes и есть смысл «прокачиваться» в этом направлении. Поэтому мы подобрали дополнительную профессиональную литературу по теме. В сегодняшней подборке — новые книги про Kubernetes с высокими оценками рецензентов.

Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments3

Развлечение на выходные: собираем Android для Raspberry Pi из исходного кода

Level of difficultyHard
Reading time4 min
Views10K

Привет, Хабр! В этой статье я хочу поделиться пошаговой инструкцией по компиляции Android Open Source Project для Raspberry Pi. Эта статья поможет разобраться в первых шагах разработки ОС на базе Android Open Source Project.

Читать далее
Total votes 15: ↑15 and ↓0+15
Comments4

Как правильно написать калькулятор на питоне с помощью eval()

Level of difficultyEasy
Reading time6 min
Views6.7K

В комментариях к статьям по синтаксическому анализу я иногда вижу такие:

„на питоне калькулятор пишется проще простого — print(eval(input()))

Ну, вобщем‑то — да, но если, например, вы прикрутите такой калькулятор к своему сайту, то любой желающий вместо 2+2*2 может написать exec("import os; os.removedirs('/')"), предварительно изучив все ваши секретные файлы подобным же образом. Такая перспектива не может радовать, но и отказываться от eval() тоже не стоит.

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments27

Как собрать клавиатуру, которая прослужит дольше 3-х лет

Level of difficultyMedium
Reading time6 min
Views7.7K

Мне нужна была клавиатура с механическими утопленными клавишами, ортолинейной компоновкой и полным разделением на две части, чтобы во время работы грудь была полностью развёрнута. Я хотел отказаться от части своих требований и купить готовую модель... Но потом я обнаружил Dactyl. Полностью раздельную, ортолинейную, с контурным дизайном… которую я могу напечатать сам! Круто же?

Читать далее
Total votes 17: ↑17 and ↓0+17
Comments22

Чего лишают себя люди, которые запрещают себе злиться? Спойлер: полноценной жизни

Level of difficultyEasy
Reading time9 min
Views11K

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

Читать далее
Total votes 34: ↑15 and ↓19+1
Comments23

Первые шаги в импульсных нейронных сетях

Level of difficultyMedium
Reading time21 min
Views15K

Давайте попробуем немного разобраться в теме импульсных нейронных сетей (spiking neural network, SNN). Напишем простую импульсную нейронную сеть, используя только NumPy и Pandas, для классической задачи машинного обучения с использованием кодирования рецептивными полями.

Читать далее
Total votes 24: ↑24 and ↓0+24
Comments4

Как писать по-настоящему масштабируемый код?

Reading time4 min
Views12K

Почему масштабировать вообще сложно?

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

Основная причина тут в том, что как только вы начинаете изменять какую-то большую систему, она начинает разваливаться. Ну, за исключением тех случаев, когда у вас вообще всё на 100% покрыто тестами. Однако, в реальном мире история с покрытием тестами такова, что код современных приложений покрыт (в лучшем случае) примерно на 1%.

Может быть, 100% покрытие тестами — это реальность не только для библиотек, утилит или компиляторов (ведь мы можем формализовать их поведение математически), но и для веб-приложения? Да не, фигня какая-то...

Читать далее
Total votes 17: ↑13 and ↓4+12
Comments4

Шпаргалка по SQL (postgres), которая выручает меня на собесах

Level of difficultyEasy
Reading time8 min
Views199K

Привет, Хабр!

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

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

Читать далее
Total votes 156: ↑149 and ↓7+177
Comments178

Плагины ChatGPT, которые помогут в работе — и не только программистам

Reading time4 min
Views12K

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

Читать далее
Total votes 12: ↑8 and ↓4+11
Comments2

Собеседование на Java разработчика. Разбор 1606 вопросов и ответов. Часть 2 (с 170 по 269 вопрос)

Level of difficultyHard
Reading time102 min
Views23K

Всем привет! Меня зовут Владимир Баганов. Я продолжаю серию статей с простым разбором вопросов на собеседованиях на Java разработчика. Под капотом 269 разобранных вопросов из 1606 вопросов.

Читать далее
Total votes 16: ↑8 and ↓8+3
Comments3

Всё хорошо, но нужно переписать или почему ваш код не попадает в прод

Level of difficultyEasy
Reading time7 min
Views4.2K

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

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

Читать далее
Total votes 12: ↑6 and ↓60
Comments15

Собеседование по Java. Разбор 1606 вопросов и ответов. Часть 1 (с 1 по 169 вопрос)

Level of difficultyMedium
Reading time127 min
Views76K

Всем привет! Меня зовут Владимир Баганов. Я хочу начать серию статей с простым разбором вопросов на собеседованиях на Java разработчика. Под капотом 169 разобранных вопросов из 1606 вопросов.

Читать далее
Total votes 16: ↑8 and ↓8+3
Comments14

Как выигрывать соревнования по программированию

Level of difficultyEasy
Reading time12 min
Views19K

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

Читать далее
Total votes 36: ↑17 and ↓19+1
Comments29

Процедурная генерация 3D-мешей для интро на 64 КБ

Reading time7 min
Views5.1K

В предыдущей статье [перевод на Хабре] мы рассказали, как генерируются текстуры в демо H – Immersion. На этот раз мы изучим ещё один важный инструмент для создания демо нужного размера — процедурную геометрию.

В частности, поскольку в нашем рендеринге используются традиционные полигоны, мы написали процедурный генератор мешей. Мы покажем, как благодаря тщательно подобранным методикам можно создать разнообразие форм или убедить в этом зрителя, как это сделали мы.
Читать дальше →
Total votes 32: ↑32 and ↓0+32
Comments3

True RND или что делать с обученной моделью (опыт чайника)

Level of difficultyMedium
Reading time4 min
Views4.1K

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

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

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments15

Information

Rating
2,682-nd
Registered
Activity