Pull to refresh
94
0
Александр @lastmac

Весёлый разработчик

Send message

А в чем проблема работать с файлами?

Level of difficultyMedium
Reading time53 min
Views27K

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

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

Кто участвует в процессе записи

Ошибки, которые могут произойти

Что от нас зависит, а что нет

И самое главное - как это этого защититься

Читать далее
Total votes 171: ↑170 and ↓1+169
Comments23

Вкатываемся в Machine Learning с нуля за ноль рублей: что, где, в какой последовательности изучить

Level of difficultyEasy
Reading time26 min
Views165K

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

Читать далее
Total votes 159: ↑157 and ↓2+155
Comments49

Сохранение древовидной структуры в Visual Studio с CMake или создание папок в проекте

Level of difficultyEasy
Reading time7 min
Views4.5K

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

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

Руководство по CMake для разработчиков C++ библиотек

Reading time18 min
Views77K

Данное руководство позволит читателю составить полную картину того, как организовать сборку C++ библиотек с использованием современных возможностей CMake. Предполагается, что читатель имеет представление о базовых понятиях из мира CMake и динамических/статических C++ библиотек, так как в руководстве они могут не объясняться.

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

«Скажи мне свой адрес и я скажу как зовут твоего соседа», или как дешево и быстро проверять любой объект недвижимости

Reading time3 min
Views36K

Все, что понадобится — подтвержденная учетная запись на Госуслугах и небольшая плата за сведения

СМИ время от времени сотрясают скандалы связанные с тем, что у того или иного государственного служащего находят дома, квартиры, участки и другую недвижимость. Их сменяют другие скандалы о том, что имя  чиновника в государственных реестрах зашифровывается.

Как удается узнавать собственников недвижимости? Неужели любой может узнать кто владеет тем или иным участком, домом или квартирой?

Да, данные о собственниках недвижимости открыты всем желающим. В этом посте Вы узнаете как получить данные о настоящем и предыдущем собственнике, залогах, арестах на любой объект недвижимости в России, будь то соседние квартиры по лестничной клетке или земельный участок на Камчатке.

Все что Вам нужно для этого - подтвержденная учетная запись на госуслугах. С помощью нее заходим на официальный сайт Росреестра.

Сколько это стоит?

Официальная плата Росреестра от 1 до 5 рублей за одну выписку. Доступ к выпискам оплачивается по УИН на сайте Росреестра пакетами от 100 шт. до 500 000 шт.

Читать далее
Total votes 42: ↑36 and ↓6+30
Comments48

«Группа смерти» изнутри: люди, которые играют в опасные игры

Reading time40 min
Views128K


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

Сегодня мы попробуем увидеть происходящее глазами рядовых участников — не тех, для кого в конечном итоге все кончилось плохо, а того подавляющего большинства, которое играло, а потом продолжило жить.
Читать дальше →
Total votes 343: ↑332 and ↓11+321
Comments345

Всё, о чём должен знать разработчик Телеграм-ботов

Reading time15 min
Views598K

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

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

Подробный гайд о том, как работать с ботами — под катом.

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

Как раздвинуть кости черепа, чтобы легче дышалось: место, где в стоматологии сошлись сразу три новые технологии

Reading time10 min
Views38K
image
Этими винтами хочется попадать в нужное место кости очень точно и под очень правильным углом.

Привет, Хабр! Меня зовут Гусейн, я стоматолог, который специализируется на сложной ортодонтии — перемещении зубов. В общем, я в соавторстве ещё с парой итальянских коллег и одним немецким изобрёл математическую модель расчёта оптимального места под винты, которые мы вкручиваем в нёбо, используя их как опору для аппаратов. И такой метод их вкручивания, что врачу не остаётся почти никакого шанса на ошибку. И техническую реализацию всего этого.

Коротко это выглядит так: делаем оптический слепок рта внутриротовым сканером изнутри, накладываем поверх этого данные КТ, загоняем в аналог Архикада для ортодонтов (Dolphin), совмещаем, рассчитываем оптимальное место для имплантов — мини-винтов, печатаем навигационный шаблон из пластика и выпекаем лазером аппарат, потом вставляем одно в другое, потом вкручиваем это в пациента и радуемся. Получается идеальная точность. А это, знаете ли, важно, когда вы решаете взять и раздвинуть кости черепа ребёнку.

Зачем раздвигать нёбо ребёнку? Потому что так получилось, что детям нужно дышать. И иногда из-за неправильного развития мышц или генетики нёбо получается не той формы, чтобы кислород в достаточном количестве попадал к мозгу. Ребёнок начинает отставать в развитии и приобретает вид юного алкоголика (я имею в виду мешки под глазами).

Раньше винты вкручивали на глаз, и это было более травматично и немного неточно. Чуточку. Раз в пять. Под катом будет несколько фотографий фрагментов головы человека с не совсем привычных ракурсов, поэтому, если вы кушаете, то, возможно, стоит сначала доесть, а потом открывать пост.
Читать дальше →
Total votes 139: ↑138 and ↓1+137
Comments54

«А про посадку читайте в следующем номере…» — так вот он, этот номер

Reading time20 min
Views49K


Заход на посадку и уход на второй круг — по статистике самые опасные этапы полёта.

Давайте разбираться, как это работает, и пользуясь моментом, посмотрим как устроена электронная система управления современным самолётом.

Но перед тем, как мы начнем, я вынужден обозначить эдакий дисклеймер: я действующий пилот Airbus семейства 320, который является самолетом 4-го поколения (отличительный признак которого — наличие технологии Fly-by-Wire). Соответственно, многие специфические системы и процедуры, описываемые в посте, будут привязаны к данному типу. На других типах (например Boeing 737 Classic/NG/MAX, которые являются самолетами предыдущего, 3-го поколения без технологии Fly-by-Wire) процедуры и логика построения и работы систем может значительно различаться. И да, я не имею отношения к инженерно-авиационной службе и службе ОрВД (организации воздушного движения), поэтому уж простите возможные огрехи в описании матчасти.

Итак, приступим.
Total votes 127: ↑127 and ↓0+127
Comments314

Zip-файлы: история, объяснение и реализация

Reading time76 min
Views92K


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

В статье очень подробно объясняется, как работают Zip-файлы и схема сжатия: LZ77-сжатие, алгоритм Хаффмана, алгоритм Deflate и прочее. Вы узнаете историю развития технологии и посмотрите довольно эффективные примеры реализации, написанные с нуля на С. Исходный код лежит тут: hwzip-1.0.zip.
Читать дальше →
Total votes 176: ↑175 and ↓1+174
Comments45

Лазерный станок своими руками

Reading time4 min
Views101K


Привет, Хабр! Сегодня расскажу о своем лазерном станке для резки фанеры и гравировки кожи. Цель была как всегда – максимум функционала за минимум денег).
Читать дальше →
Total votes 126: ↑125 and ↓1+124
Comments194

22 сайта для программиста, которые помогут заговорить на английском

Reading time3 min
Views126K
Хабр, привет!

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

Приступим!

Учить лексику


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

ЛеоПереводчик

С этим плагином удобно переписываться с коллегами. Он автоматически переводит непонятные слова и выражения. Незаменимый инструмент, когда нет времени на доскональные переводы и нужен срочный ответ.
Читать дальше →
Total votes 45: ↑39 and ↓6+33
Comments13

10 мифов о бешенстве

Reading time7 min
Views334K
Всем привет.

Чуть более года назад мне пришлось столкнуться с такой неприятной штукой, как подозрение на заражение бешенством. Прочитанная вчера статья о прививках для путешественников напомнила мне о том случае — в особенности отсутствием в ней упоминаний бешенства, хотя это крайне широко распространенный (особенно в России, Азии, Африке и Америке) и очень коварный вирус. К сожалению, связанным с ним рискам далеко не всегда придается должное значение.

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

Что среднестатистический житель России может навскидку сказать о бешенстве? Ну, есть такая болезнь. В связи с ней чаще всего вспоминают бешеных собак. Старшее поколение скорее всего еще обязательно добавит, что в случае укуса такой собаки придется делать 40 уколов в живот и на несколько месяцев забыть об алкоголе. Вот, пожалуй, и всё.

Давайте разберемся, почему такое отношение к этому заболеванию крайне опасно.
Читать дальше →
Total votes 235: ↑232 and ↓3+229
Comments342

Солнечный спектр по-китайски

Reading time2 min
Views55K
Год назад я рассказывал о появлении осветительных светодиодов нового поколения, спектр света которых близок к солнечному, за что эти светодиоды получили название SunLike. Тогда они были очень дорогими. Сейчас цена упала и появились китайские аналоги.


Читать дальше →
Total votes 102: ↑100 and ↓2+98
Comments96

Внутри Quake: всегда рассматривайте альтернативы

Reading time15 min
Views20K
image

Программист Майкл Абраш, в середине 90-х приглашённый Джоном Кармаком для работы над движком первого Quake, написал в процессе разработки серию статей. Это вторая колонка из данной серии. Перевод первой находится здесь.

Должен признаться: меня достал классический рок. В последний раз я с радостью слушал что-нибудь из Cars или Boston довольно давно, около 20 лет назад. Кроме того, меня никогда особо не привлекали Боб Сигер и Queen, не говоря уже об Элвисе, так что здесь мало что изменилось. Но я понимал, что нечто изменилось, когда мне хотелось переключить радио, услышав Allman Brothers, или Steely Dan, или Pink Floyd, или, господи, прости, Beatles (но только на таких вещах, как «Hello Goodbye» и «I’ll Cry Instead», а не «Ticket to Ride» или «A Day in the Life»; я ещё не зашёл настолько далеко). Долго искать причины этого не пришлось; я слушал одни и те же песни четверть века, и просто от них устал.

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

Мы говорим о десятилетней девочке, росшей на постоянной диете из старых хитов. Ей нравятся мелодии, легко запоминающиеся песни и хорошие певцы. Ничего из этого не найдёшь, слушая станцию про альтернативный рок. Поэтому неудивительно, что когда я включил радио, она первым делом сказала «Фу!»

Но вот что меня удивило: послушав какое-то время, она сказала: «Знаешь, папа, а на это на самом деле интересно».

Это не только намекнуло мне о том, какая музыка будет грохотать по всему дому, когда она станет тинейджером. Её быстрое принятие альтернативного рока (по сравнению с моим длящимся десяток лет увлечением музыкой собственной юности) напомнило мне кое о чём, что легко забывается, когда становишься старше и образ жизни становится устоявшимся. Это напомнило мне, что необходимо сохранять открытость сознания и быть готовым — более того, стремиться — пробовать новые вещи.
Читать дальше →
Total votes 40: ↑36 and ↓4+32
Comments5

Внутри Quake: определение видимых поверхностей

Reading time17 min
Views34K
image

Ветеран программирования трёхмерной графики Майкл Абраш на примере разработки первого Quake рассказывает о необходимости творческого мышления в программировании.

Много лет назад я работал в теперь уже не существующей компании-производителе видеоадаптеров Video Seven. Там я помогал в разработке клона VGA. Мой коллега Том Уилсон, долгие месяцы круглосуточно работавший над разработкой VGA-чипа Video Seven, стремился сделать VGA как можно более быстрым, и был уверен, что его производительность оптимизирована почти по максимуму. Однако когда Том уже вносил в конструкцию чипа последние штрихи, до нас донеслись слухи, что наш конкурент Paradise достиг ещё большей производительности в своём разрабатываемом клоне, добавив в него FIFO.

На этом слухи заканчивались — мы не знали, ни что это за FIFO, ни насколько он помог, ничего другого. Тем не менее, Том, обычно приветливый и расслабленный человек, превратился в активного, одержимого фанатика со слишком большим процентом кофеина в крови. Исходя из этих крупиц информации, он пытался выяснить, что же удалось сделать Paradise. В конце концов он пришёл к выводу, что Paradise вероятно вставил FIFO-буфер записи между системной шиной и VGA, чтобы когда ЦП выполнял запись в видеопамять, записываемые данные сразу же попадали в FIFO, и это позволяло ЦП продолжать обработку, а не простаивать каждый раз, когда он выполнял запись в память дисплея.

У Тома не было ни логических элементов, ни достаточно времени на реализацию полного FIFO, но ему удалось реализовать FIFO глубиной в одну операцию, что позволяло процессору обгонять VGA-чип на одну операцию записи. Том не был уверен, что это даст хорошие результаты, но это было единственное, что он смог сделать, поэтому он реализовал эту систему и передал чип в производство.
Читать дальше →
Total votes 87: ↑87 and ↓0+87
Comments6

Заметки фитохимика. Зеленый банан, или Не забудь покормить микробиоту

Reading time20 min
Views99K

Как то уж так повелось со времен голодной студенческой юности, что я чаще на остатки денег покупал себе бананы, а не чипсы или гречку. Причин этому наверное может быть много, от "в Беларуси бананы дешевле картошки", до "банан как и шоколад способствует мозговой активности". Но факт остается фактом. Если хурма фрукт сезонный, то банан — это такая штука которая сопровождает нас по жизни постоянно. Как не отдать долг и не черкнуть заметку. Кроме того, про проведенному мной среди знакомых мини-опросу, одним из основных фруктов, которые с вероятностью 99% будут практически на каждом Новогоднем столе, также является банан. А ведь правильный банан еще нужно найти...


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



Ну а за ответом — традиционно, под кат.

Читать дальше →
Total votes 118: ↑117 and ↓1+116
Comments102

Топ-10 фильмов про ИТ

Reading time7 min
Views170K
Привет, Хабр!

Летом в нашем ланитовском блоге мы делали подборку сериалов про ИТ (и хакеров), а теперь в преддверии Нового года пришло время полного метра. Такие «Топ-10 фильмов про ИТ» появляются примерно раз в год, и список там примерно один и тот же: «Хакеры» с Джоли, «Пароль «Рыба-меч» и «Матрица».

Кстати, о последней. При всем уважении к братьям сёстрам Вачовски и трилогии, мы таки не относили бы «Матрицу» к фильмам про айтишников или хакеров. То, что мистер Андерсон работает программистом, а вне работы немного хакерит, всё же не является сюжетной канвой фильма. Рискуем возобновить старый холивар, но «Матрица» — это таки киберпанк. Контраргументы приветствуются.

Так вот, про подборку. Мы решили предложить вам  фильмы посвежее. Под катом нет Джоли и знаменитой сцены из «Пароль „Рыба-меч“», но есть фильмы про ИТ, суперкомпьютеры, и информационную безопасность, большинство из которых выпущены в 2010–2018 годах.

Кадр из фильма «Апгрейд»
Total votes 111: ↑95 and ↓16+79
Comments186

Что происходит при создании контейнера Flexbox?

Reading time9 min
Views26K

Это перевод статьи Rachel Andrew, являющейся одним из разработчиков спецификаций CSS.


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


В этой статье мы подробно рассмотрим, что на самом деле происходит при добавлении display: flex в вашу таблицу стилей.

Total votes 23: ↑22 and ↓1+21
Comments22

На Highload++ 2018 полный вперед

Reading time9 min
Views4.8K
Highload++ — знаковое событие в мире IT и своеобразный ежегодный чекпойнт для любого разработчика высоконагруженных систем. Это самая большая и крутая профессиональная конференция для разработчиков в России. На ней много всего: участников, событий, докладов, партнеров и экспертов. В 2017 году Highload++ собрал 2600 человек и, конечно, это не предел. Это мегасобытие, на котором просто нужно быть, в 2018 году пройдет в Москве 8 и 9 ноября.



К тому, чтобы эти два дня прошли идеально, приходится очень заранее готовиться. Мы уже начали, в первую очередь, работать над программой.
Total votes 33: ↑31 and ↓2+29
Comments5

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity