Pull to refresh
24
-1
Pāvels Reško @incogn1too

User

Send message

Лямбды: от C++11 до C++20. Часть 1

Reading time11 min
Views68K
Добрый день, друзья. Сегодня мы подготовили для вас перевод первой части статьи «Лямбды: от C++11 до C++20». Публикация данного материала приурочена к запуску курса «Разработчик C++», который стартует уже завтра.

Лямбда-выражения являются одним из наиболее мощных дополнений в C++11 и продолжают развиваться с каждым новым стандартом языка. В этой статье мы пройдемся по их истории и посмотрим на эволюцию этой важной части современного C++.



Вторая часть доступна по ссылке:
Lambdas: From C++11 to C++20, Part 2
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments8

Embox отправляется на Vostok

Level of difficultyEasy
Reading time4 min
Views5.1K

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

Эта статья – своеобразный (расширенный) анонс того, что Embox перенесен на микроконтроллеры еще одного производителя микроэлектроники в РФ. Речь идет о технологической платформе «Vostok» от ООО «Новатор» базирующейся на микроконтроллерах ГК «Элемент».

Читать далее
Total votes 23: ↑22 and ↓1+21
Comments47

Начало работы с нейронными сетями

Reading time13 min
Views45K

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

Читать далее
Total votes 14: ↑11 and ↓3+8
Comments0

Про Vim " Файлы и плагины

Reading time9 min
Views6.3K

Необходимо немного поговорить о способе размещения конфигураций. Существует два радикально противоположных подхода к способу размещения конфигурационных файлов Vim. Одни аккуратно разбивают конфигурацию на несколько файлов и кладут их в разные места, оставляя в основном файле .vimrc только вызовы :source. Это то как бы поступил адекватный программист. Другие не считают конфигурацию Vim настолько серьезным предприятием и советуют класть всё в кучу, поделив настройки лишь на некие логические секции. Общее мнение - не набивать конфигурацию совсем рандомно.

Я бы наверное изначально поступил первым способом и разложил бы всё по неким "модулям", однако с Vim не всё так просто. Дело в том, что различные расширения подгружаются в редактор последовательно и более того часто взаимодействуют друг с другом - зависят друг от дружки. То есть придумать способ организовать файлы, когда в одном месте у нас только горячие клавиши, в другом цветовая схема, по большому счету нельзя. Каждый плагин отдельно будет иметь свои горячие клавиши, возможно какие-то тонкие настройки цвета, интеграцию с другими плагинами.

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

В основной файл .vimrc я положил только то что будет работать практически в любом случае в любом окружении. И в конце подгрузил ~/.vim/plugins.vim в котором всё то что касается расширений. То есть всё что в директории .vim можно безопасно отключить в любой момент. Внутри же максимально попытался разделить файл на секции с комментариями по которым потом можно будет найти интересующий плагин или его конкретные настройки.

Читать далее
Total votes 6: ↑5 and ↓1+4
Comments5

Установка ArchLinux ARM рядом с Android без chroot

Reading time4 min
Views35K
Я испробовал множество средств для установки Linux на свое Android устройство, но все они или не работали вовсе, или были слишком глючные. К счастью я использую на ПК ArchLinux и узнав о проекте ArchLinux ARM решил попробовать его в деле. И не просто установить в chroot, а заставить его работать и без него.
Читать дальше →
Total votes 32: ↑30 and ↓2+28
Comments21

Драйвер компьютерной игры Street Fighter V отключает встроенный механизм защиты Windows

Reading time2 min
Views19K
Драйверы компьютерных игр, которые используются для защиты целостности файлов игры, а также легитимности данных игроков не являются редкостью. Ранее публиковалось несколько обзоров наиболее известных подобных драйверов, например, nProtect GameGuard и Blizzard Lockdown. Такие драйверы могут использовать в своих целях перехваты API-вызовов на уровне ядра Windows, постоянное сканирование виртуального адресного пространства процессов, отслеживание доступа операций к системному реестру и др.



Несколько дней назад компания Capcom уведомила своих пользователей об обновлении anti-hack драйвера (Capcom.sys), который используется для контроля за целостностью файлов игры и предотвращает возможную компрометацию содержимого памяти процесса игры с целью предотвращения читерства. Однако, пользователей в этом обновлении ждал неприятный сюрприз в одной из функций драйвера. Она позволяет отключать защитную меру ядра SMEP и исполнять код по указателю, полученному из пользовательского режима.

Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments34

Современная операционная система: что надо знать разработчику

Reading time22 min
Views67K

Александр Крижановский (NatSys Lab.)


Александр Крижановский

Нас сегодня будет интересовать операционная система – ее внутренности, что там происходит… Хочется поделиться идеями, над которыми мы сейчас работаем, и отсюда небольшое вступление – я расскажу о том, из чего состоит современный Linux, как его можно потюнить?

По моему мнению, современная ОС – это плохая штука.




Дело в том, что на картинке изображены графики сайта Netmap (это штуковина, которая позволяет вам очень быстро захватывать и отправлять пакеты сетевого адаптера), т.е. эта картинка показывает, что на одном ядре с разной тактовой частотой до 3 ГГц Netmap позволяет 10 Гбит – 14 млн. пакетов в сек. отрабатывать уже на 500 МГц. Синенькая линия – это pktgen – самое быстрое, что, вообще, есть в ядре Linux’а. Это такая штуковина – генератор трафика, который берет один пакет и отправляет его в адаптер много раз, т.е. никаких копирований, никакого создания новых пакетов, т.е., вообще, ничего – только отправка одного и того же пакета в адаптер. И вот оно настолько сильно проседает по сравнению с Netmap (то, что делается в user-space показано розовой линией), и оно вообще где-то там внизу находится. Соответственно, люди, которые работают с очень быстрыми сетевыми приложениями, переезжают на Netmap, Pdpdk, PF_RING – таких технологий море сейчас.
Читать дальше →
Total votes 102: ↑94 and ↓8+86
Comments51

Маргарет Гамильтон: «Пацаны, я вас на Луну отправлю»

Reading time14 min
Views55K
«Когда я только начинала работать в этой сфере, все это было для нас как Дикий Запад — мы были первооткрывателями неизведанных земель. Никто нас ничему не учил» Маргарет Гамильтон.



Это Маргарет. Она пишет код хорошо. Делайте как Маргарет.

А еще:
  • программист-самоучка;
  • написала код для навигационного компьютера программы «Аполлон»;
  • когда американцы ступили на поверхность Луны ей был 31 год;
  • Маргарет НЕ автор термина «software engineering»;
  • часто брала на работу 4х-летнюю дочку;
  • дочка помогла найти баг в программе.

Под руководством Маргарет Гамильтон писались программы для бортового компьютера КА Аполлон. В один из самых ответственных моментов миссии Аполлон 11 именно работа Маргарет и ее команды предотвратила возможный срыв высадки на Луну. За три минуты до прилунения сработало несколько аварийных сигнальных устройств. Компьютер был перегруженн входящими данными – в стыковочной радарной системе произошло непроизвольное обновление счетчика, что привело к запросу на выполнение компьютером большего числа операций, чем он был способен обработать. Благодаря устойчивой архитектуре компьютер продолжил свою работу: в разработке бортового ПО использовался подход асинхронного исполнения (asynchronous executive). Процессы с высоким приоритетом (критичные для прилунения) могли прервать низкоприоритетные процессы.
Total votes 64: ↑57 and ↓7+50
Comments34

Советы о том, как писать на С в 2016 году

Reading time20 min
Views90K

Если бы язык С был оружием

От автора: Наброски для этой статьи появились еще в начале 2015 года, правда, до публикации материалов дело так и не дошло. Наконец, решив, что в ящике моего письменного стола от вышеупомянутого «черновика» не будет никакой пользы, представляю его вашему вниманию в исходном виде. Единственное, что изменилось в тексте – год, с 2015 на 2016.

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

Итак, статья ...


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

Когда найти альтернативный метод не удается, самое время вспомнить о современных заповедях программиста.
Читать дальше →
Total votes 92: ↑84 and ↓8+76
Comments80

30 лет С++

Reading time7 min
Views34K
14 октября этого года состоялась одна из важнейших годовщин мира программирования – 30-летие языка C++. За это время он завоевал огромную популярность и до сих пор остаётся одним из самых востребованных и широко используемых языков программирования в мире.

В связи с этим юбилеем мы предлагаем вашему вниманию перевод интервью с основателем языка Бьёрном Страуструпом.


Читать дальше →
Total votes 47: ↑45 and ↓2+43
Comments95

Документируем код эффективно при помощи Doxygen

Reading time18 min
Views344K


Данная статья входит в получившийся цикл статей о системе документирования Doxygen:

  1. Документируем код эффективно при помощи Doxygen
  2. Оформление документации в Doxygen
  3. Построение диаграмм и графов в Doxygen

Это первая и основная статья из упомянутого цикла и она представляет собой введение в систему документирования исходных текстов Doxygen, которая на сегодняшний день, по имеющему основания заявлению разработчиков, стала фактически стандартом для документирования программного обеспечения, написанного на языке C++, а также получила пусть и менее широкое распространение и среди ряда других языков.

В этой статье мы сначала познакомимся с самой системой и её возможностями, затем разберёмся с её установкой и базовыми принципами работы, и, наконец, завершим знакомство рассмотрением различных примеров документации, примеров того, как следует документировать те или иные части кода. Словом, познакомимся со всем тем, что позволит вам освоиться и начать работать с этой замечательной системой.
Читать дальше →
Total votes 52: ↑52 and ↓0+52
Comments39

Робот ATLAS научился ходить по валунам и держать равновесие, стоя на одной ноге

Reading time1 min
Views27K
DARPA продемонстрировало очередные достижения человекоподобного робота ATLAS. Робот уверенно ходит по россыпи камней размером до нескольких десятков сантиметров и балансирует на одной ноге, выдерживая достаточно сильные толчки. Робот ATLAS построен компанией Boston Dynamics — создателем таких известных роботов как BigDog, Cheetah, SandFlea, Petman. DARPA намерено использовать ATLAS для работы в опасных условиях, например во время спасательных операций при пожарах и стихийных бедствиях. Сходство с человеком позволит роботу использовать предназначенные для людей инструменты, оборудование и транспорт.


Читать дальше →
Total votes 41: ↑39 and ↓2+37
Comments48

Квантовая механика для всех, даром, и пусть никто не уйдёт обиженным: часть вторая

Reading time6 min
Views67K
Здравствуйте! Квантовая механика продолжается во второй части цикла Элиезера Юдковски, и сегодня вы узнаете немного больше о конфигурациях, а также поймёте, почему процесс наблюдения влияет на объект наблюдения. Критики в адрес непонятливого человечества, само собой, тоже будет предостаточно. В общем, не проходите мимо!
Читать дальше →
Total votes 53: ↑45 and ↓8+37
Comments33

Квантовая механика для всех, даром, и пусть никто не уйдёт обиженным: часть первая

Reading time10 min
Views215K
Здравствуйте! Я хотел бы представить вашему вниманию отличное введение в квантовую механику, написанное Элиезером Юдковским; быть может, он известен вам по своему сайту lesswrong.com, посвящённому рационализму, предрассудкам, когнитивным парадоксам и ещё многим интересным вещам.
Читать дальше →
Total votes 119: ↑109 and ↓10+99
Comments149

Научно-популярные фильмы о физике

Reading time1 min
Views81K
Всем привет!

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

Недавно случайно наткнулся на ютубе на фильм с Брайаном Грином «Тайны мироздания» и удивился, что у видео так мало просмотров.

Не сказать, чтобы такая подача материала мне очень нравилась, но все равно, местами довольно интересно :) Может быть, будет интересно не только мне.

Сами видео под катом.
Читать дальше →
Total votes 81: ↑76 and ↓5+71
Comments35

Ну вот и про Google сняли фильм, на этот раз комедию

Reading time1 min
Views177K
20 июня выходит в прокат комедия «The Internship» режиссёра Шона Леви (Ночь в музее, Розовая пантера, Живая сталь). Фильм о двух друзьях (Винс Вон и Оуэн Уилсон), которые после увольнения решают устроиться стажёрами в Google. Им предстоит работать под покровительством людей, которые в двое моложе, и самое главное — испытать на себе всю атмосферу современной динамичной корпорации.

Total votes 122: ↑108 and ↓14+94
Comments54

Год с Roomba

Reading time6 min
Views198K

Около года назад мне довелось стать счастливым обладателем iRobot Roomba 564 pet, с тех пор он исправно несёт боевое дежурство на просторах нашей 4-х комнатной квартиры по схеме: 4 раза в неделю (минимум). Намедни, мои руки наконец добрались и до него, я решил досконально почистить «борца за чистоту», а заодно провести фотосессию и рассказать Хабру о некоторых особенностях обслуживания сего зверя.
Надеюсь, что топик поможет вам выбрать оптимальный для себя робот-пылесос, а я приложу максимум усилий, что бы поведать — какие подводные камни ожидают Вас в пылесосах Roomba.

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

Читать дальше →
Total votes 177: ↑170 and ↓7+163
Comments177

10 PRINT CHR$(205.5+RND(1));: GOTO 10

Reading time1 min
Views74K
10 PRINT CHR$(205.5+RND(1)); : GOTO 10 — это название книги, выпущенной издательством MIT press, авторы которой исследуют историю, эстетику и философию программирования, основываясь на одной-единственной крошечной однострочной программе на Бейсике для компьютера Commodore 64, которая генерирует похожий на лабиринт бесконечный узор. Собственно, заголовок книги — её полный листинг. Эта коротенькая демка была популярна тридцать лет назад и портировалась на множество языков и платформ.


Читать дальше →
Total votes 78: ↑74 and ↓4+70
Comments76

Квантовый компьютер: любое сложное состоит из набора простого

Reading time13 min
Views34K
В офф-топик внесены изменения

Пост написан по следующей задумке алгоритму

1.Попытка взглянуть на потенциальные (почти фантастические) возможности квантовых компьютеров
2.Обзор новых исследований и достижений
3.Обьяснить феномен квантовой сцепленности на простом примере
4. Литература


Уплотняя с помощью JPEG и MPEG визуальные материалы, вдруг странная мысль пришла в голову: в случае с виртуальной картинкой или видео речь идет сжатии двухмерного обьекта. А как же быть с трехмерным объектом (например, описанием и сжатием информационного эквивалента антропоморфного обьекта)?



Все программы сжатия данных работают по одному и тому же принципу. Программа просматривает картинку строка за строкой и разыскивает смежные пикселы, имеющие один и тот же цвет. Ясно, что описание трехмерного обьекта потребовало колоссальной по объему информации. В большом компьютере Tianhe-1A (TH-1A), предназначенном для параллельной обработки данных, содержится эквивалент 50 тыс. процессоров. А что произойдет, если заставить работать в параллель эквивалент 32 млрд процессоров?
Читать дальше →
Total votes 89: ↑61 and ↓28+33
Comments59
1
23 ...

Information

Rating
Does not participate
Location
Рига, Латвия, Латвия
Date of birth
Registered
Activity