Pull to refresh
3
Karma
4.7
Rating
  • Followers 8
  • Following
  • Posts
  • Comments

Осваиваем кросс-компиляцию с помощью Clang и LLVM

Open source *C++ *C *Build automation *
Translation
Tutorial

Каждый, кто когда-либо пробовал собрать программу на C/C++ через кросс-компиляцию знает, насколько болезненным может быть этот процесс. Главными причинами столь печального положения вещей являются недружелюбность систем сборки при конфигурации кросс-компиляции, а также запутанность процесса настройки набора утилит (тулчейна).


Одним из основных виновников этих проблем, по моему опыту, является тулчейн GNU — древний мамонт, на котором много десятилетий строится весь мир POSIX. Подобно многим компиляторам былых времён, семейство GCC и binutils никогда не ориентировалось на поддержку множества различных целей сборки в одной установке, и единственным способом хоть как-то добиться желаемого была настройка полной кросс-билд-системы для каждой целевой платформы на каждом хосте.

Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Views 3.7K
Comments 8

SFTP под root-ом в WinSCP для удаленной отладки(PyCharm)

Python *Programming *Development for Windows *
Tutorial

Этот пост предназначен в первую очередь для новичков в разработке, впервые столкнувшихся с необходимостью запуска скриптов из-под root-а, взаимодействующих с ресурсами/устройствами, доступ до которых возможен только с сервера приложений, находящимся за NAT-ом. Частая ситуация в телекоме.

Читать далее
Total votes 5: ↑5 and ↓0 +5
Views 2.5K
Comments 6

Kafka, Python и золотая рыбка

High performance *Python *Apache *
Sandbox

Поймал как-то программист золотую рыбку, а она ему и говорит человеческим голосом: «Отпусти меня в синее море, я исполню любое твоё желание». Программист ЦПУшечкой поскрипел, да и выдал техзадание. «Построй мне», – говорит, – «систему обработки неидемпотентных запросов, да чтоб она была высокопроизводительной, масштабируемой, гибкой и отказоустойчивой!». Охнула сперва золотая рыбка, но взяла себя в плавники и молвила: «Не печалься, ступай себе домой, код написан, система развёрнута. Отпускай меня уже». Удивился программист: «Да ладно? Ну, сейчас проверю и отпущу». «Нет», – возражает рыбка – «пока ты проверяешь, я уж засохну, и всё волшебство исчезнет». Программист задумался: «Что же делать: сначала отпустить, а потом проверить, или сначала проверить, а потом сушёную рыбу к пиву получить?».

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

Читать далее
Total votes 8: ↑8 and ↓0 +8
Views 8.7K
Comments 14

Структура каталогов исходного кода для Android устройства

Global Positioning Systems *Development of mobile applications *Development for Android *Mobile applications testing *Transport
image

Статья написана 10 лет назад! Но до сих пор та же самая версия Андроид осталась свободной и открытой. Многие компании продолжают в своих устройствах ориентироваться на Андроид 4.4.

Китайские и Тайваньские производители Android-устройств поставляют исходный код и свои добавления без документации. Сейчас (Прим. автора: на момент осени 2012 года) в регионе Тайбэй и Шеньчжень наблюдается взрывной рост технопарков. Зачастую, сотрудники многочисленных компаний только сейчас начали работать с кодом. И, как правило, проектные сроки очень сжатые. Документации нет совсем.

Постараемся разобраться, из каких частей состоит дерево исходного кода типичного Android-устройства и какие любимые места модификации кода у производителей софта из ЮВА.
Читать дальше →
Total votes 3: ↑1 and ↓2 -1
Views 3K
Comments 2

Букварь материалиста

Algorithms *Data visualization Brain Logic games Visual programming *
Sandbox

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

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

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

Мир вокруг нас порой
Total votes 20: ↑13 and ↓7 +6
Views 6K
Comments 146

Квантовые миры и возникновение пространства-времени. Порядок и случайность

Издательский дом «Питер» corporate blog Reading room Popular science Quantum technologies
image Привет, Хабр! Обращаем ваше внимание на одну новинку (сдана в типографию), доступную уже сейчас для покупки в электронном виде.

Надеемся, что отсутствие формул в книге не отпугнет потенциальных читателей. Шон Кэрролл — физик-теоретик и один из самых известных в мире популяризаторов науки — заставляет нас по-новому взглянуть на физику. Столкновение с главной загадкой квантовой механики полностью поменяет наши представления о пространстве и времени. Большинство физиков не сознают неприятный факт: их любимая наука находится в кризисе с 1927 года. В квантовой механике с самого начала существовали бросающиеся в глаза пробелы, которые просто игнорировались. Популяризаторы постоянно твердят, что квантовая механика — это что-то странное, недоступное для понимания… Чтобы все встало на свои места, достаточно признать, что во Вселенной мы существуем не в одном экземпляре. Шонов Кэрроллов бесконечно много. Как и каждого из нас. Тысячи раз в секунду во Вселенной возникают все новые и новые наши копии. Каждый раз, когда происходит квантовое событие, мир дублируется, создавая копию, в которой квантовое событие так и не произошло. В квантовой механике нет ничего мистического или необъяснимого. Это просто физика.
Читать дальше →
Total votes 8: ↑8 and ↓0 +8
Views 4.2K
Comments 18

Растения I класса опасности. Памятка по идентификации

Popular science Health Chemistry Ecology Biology
Tutorial
Признаю честно, я не собирался сейчас писать заметку, ибо в лавине разномастного хабр-научпопа ботанике с примесью химии конкурировать достаточно сложно. Да и все, кому интересны мои публикации давным-давно координируются телеграм-каналом, а самые активные даже patreon-ируют и влияют на создание контента. Но внезапно, после того, как аннотация заметки в фэйсбуке набрала кучу репостов, я решил вынести ее на Хабр, ибо «Знание-сила». Под катом короткая статья, про растительные сверхтоксины, которые в прямом смысле вокруг нас. Как не крути, а это надо знать всем!

Вторая часть — Токсины растений. User Stories
Третья часть — Ядовитые декоративные растения в саду и огороде. Справочник
Четвертая часть — Опасные «вкусняшки». Ядовитые лесные ягоды. Памятка для детей и взрослых


Определить сверхтоксичное растение!
Total votes 170: ↑164 and ↓6 +158
Views 109K
Comments 164

Самодельный миниатюрный лазерный гравер на Arduino Uno

RUVDS.com corporate blog Developing for Arduino *DIY Lazers
Translation
Tutorial

Полагаю, что проект, о котором я хочу рассказать, будет интересен всем, кто занимается электроникой. А именно, речь идёт о миниатюрном лазерном гравере, с помощью которого можно наносить изображения на картон, на дерево, на виниловые наклейки и на прочие подобные материалы. Идею проекта я почерпнул из этого руководства, сделав кое-что по-своему.
Как сделать гравер?
Total votes 48: ↑45 and ↓3 +42
Views 16K
Comments 20

Wireshark для всех. Лайфхаки на каждый день

VDSina.ru corporate blog Information Security *Cryptography *Software

Пакет с сертификатами от Хабра

Wireshark — очень известная программа для захвата и анализа сетевого трафика, незаменимый инструмент хакера, сетевого инженера, программиста, специалиста по безопасности. Да вообще любого любознательного человека, который хочет детально изучить трафик со своего или чужого мобильного телефона, фитнес-браслета, телевизора.
Читать дальше →
Total votes 56: ↑54 and ↓2 +52
Views 39K
Comments 16

10 лучших игр по программированию, которые улучшат ваши навыки

SkillFactory corporate blog Python *JavaScript *Programming *Logic games
Translation

Вы помните далёкие дни из детства, когда вы, проводили целый день, а иногда даже не ели целый день, чтобы поиграть в игры на Nintendo? (Ах, дни Mario и Contra!!!)

С того времени игры претерпели гигантские преобразования и сфера стала более обширной. Это уже не просто хобби. Сейчас в Интернете доступно множество игр, связанных с программированием, и вы можете использовать их чтобы изучить и отточить свои скилы в увлекательной форме. Более того, эти игры могут помочь вам улучшить навыки решения задач, поскольку вам нужно будет решать задачи различной сложности, а также соревноваться с другими опытными программистами по всему миру. Специально к старту новых потоков курсов Fullstack-разработчик на Python, разработка на C# и разработка на Java, в этой статье мы отобрали несколько таких игр, играя в которые можно параллельно качать и себя самого.

Start game
Total votes 21: ↑18 and ↓3 +15
Views 25K
Comments 12

Всего лишь меняем модель эмулятора Android устройства

Development of mobile applications *Development for Android *Reverse engineering *Mobile applications testing *Flutter *
Sandbox

Казалось бы, на первый взгляд весьма простая задача. Некоторые читатели могли еще в те бородатые времена лазить по всяким 4пда, рутить свой сенсорный самсунг, менять содержимое файла build.prop и показывать наивным ламерам свой iPhone 15+ Max Pro. Однако, как оказалось, и как оно часто бывает, не все так просто и здесь есть свои подводные камни. Статья призвана помочь простым работягам избежать все кочки да ямы на пути к своей цели!

Поменять модель эмулятора
Total votes 13: ↑10 and ↓3 +7
Views 7.5K
Comments 0

Загрузка и сборка AOSP

Development for Android *
Tutorial

Решил поделиться своей инструкцией как собрать AOSP (Android Open Source Project). Эта инструкция будет полезна тем кто хочет посмотреть что-же внутри Android и возможно заняться системной разработкой. В любом случаи эти знания полезны для понимания самого Android, как раз для этого и решил собрать AOSP.

Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Views 13K
Comments 2

Как разрабатывают и выпускают игры в пандемию: интервью со Стивом Гибсоном

RUVDS.com corporate blog Game development *Biography of geeks Interview

Недавно в наших соцсетях выступал Стив Гибсон — президент компании GearBox Software, которая разрабатывала игры Half-Life: Blue Shift, а также дополнений Half-Life: Opposing Force, Half-Life High Definition Pack и Half-Life: Decay и игру Borderlands.

Делимся с вами расшифровкой и записью интервью.

Спикеры:

Стив Гибсон
Президент издательства Gearbox Publishing

Сергей Уланкин
Главред «Канобу»
Total votes 29: ↑29 and ↓0 +29
Views 2.2K
Comments 0

Первое знакомство с отладчиком Ghidra и взлом игры Spiderman

RUVDS.com corporate blog Information Security *Game development *Reverse engineering *Lifehacks for geeks
Translation


В середине декабря в твиттер-аккаунте NSA было объявлено о релизе новой ветки Ghidra с долгожданной поддержкой отладки. Теперь с помощью GDB-заглушки и прочих механизмов можно будет выполнять ее пошагово внутри самой Ghidra. Желая отпраздновать это событие, которое совпало с моим домашним карантином, я подготовил небольшой обзор сборки этой версии, включая пример использования ее отладчика для интересной цели.
Читать дальше →
Total votes 35: ↑35 and ↓0 +35
Views 8.4K
Comments 1

Отладка Makefile /часть 1/

Programming **nix *Debugging *
Sandbox

Отладка makefile - это что-то из черной магии. К несчастью, не существует такой вещи как makefile отладчик, чтобы изучить ход выполнения конкретного правила или как разворачивается переменная. Большую часть отладки можно выполнить с помощью обычных print’ов и проверкой makefile. Конечно, GNU make немного помогает своими встроенными методами и опциями командной строки. Один из лучших методов отладки makefile это добавить отладочные перехваты (hooks) и использовать техники безопасного программирования, на которые можно будет опереться, когда дела пойдут совсем плохо. Далее представлено несколько основных техник отладки и практик безопасного программирования, которые будут, на мой взгляд, наиболее полезными.

Дай две!
Total votes 31: ↑31 and ↓0 +31
Views 7.6K
Comments 4

Загадочные субтитры на CNN

Typography *Accessibility *History of IT Natural Language Processing *
Зрители CNN обратили внимание, что в выпуске новостей 12/11/2020 на их официальном YouTube-канале вместо субтитров какая-то каша из обрывков английских слов, сплошным капсом:


Как такое могло получиться? (По состоянию на 1/12/2020, субтитры на YouTube так и не исправлены.)

Stenotype


Американские стенографисты уже больше сотни лет как используют специальные устройства с минимальной 22-клавишной клавиатурой — по две клавиши под каждый палец, чтобы минимизировать движения кистей:



Сто лет назад стенотайп был вариантом печатной машинки, и каждая клавиша оставляла оттиск на бумаге. Каретки не было: после каждого «аккорда» из одной или нескольких одновременно нажатых клавиш, бумага проматывалась на одну строчку вниз. Оттиск каждой литеры приходился всегда на одно и то же место в строке. Клавиши P, R, S, T присутствуют в двух экземплярах каждая — под левой и под правой рукой.

Читать дальше →
Total votes 153: ↑153 and ↓0 +153
Views 48K
Comments 102

Ласточка в мире микросервисов

Java *

Helidon – по гречески ласточка (Χελιδόνι), это такая маленькая птичка из отряда воробьиных с длинными острыми крыльями и характерным двойным хвостом. 

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

Helidon для нас, программистов, это набор библиотек прежде всего для разработки микросервисов, и является представителем семейства, назовем его, MicroProfile based средств разработки. Является полностью Open Source проектом, лежит на GitHub, и распространяется под лицензией Apache 2.0.

Читать далее
Total votes 18: ↑18 and ↓0 +18
Views 7.6K
Comments 12

Что там с офлайновыми конференциями, выживут? Нужны? — подкаст-интервью с Олегом Буниным

Conferences Interview

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

IT-индустрия подстроилась, как и всегда, за исключением некоторых. Например, ребят, у которых бизнес — устраивать огромные федеральные конференции. Перевести конференции в онлайн — это не просто отправить офис по домам, это чуть ли не новый бизнес. Рассказать про все это к нам на подкаст пришел Олег Бунин, организатор Highload++, РИТ++, PHP Russia, Moscow Python Conf, FrontendConf и других.

Ниже — аудио, видео и цитаты.

Читать далее
Total votes 13: ↑8 and ↓5 +3
Views 1.2K
Comments 1

Линукс-порт Far Manager: прогресс за 4 года

Development for Linux *
Первая публикация исходников far2l, порта Far Manager под Линукс — штуки, которая когда-то считалась принципиально невозможной — состоялась 10 августа 2016го. Поскольку главный разработчик поговаривает о переходе проекта в статус беты, решил написать обзорный пост, как там идут дела и чего удалось добиться за прошедшие четыре года.

Консольная версия


Первый же вопрос, который все задавали и здесь, и на опеннете, и на лоре — а чего не в консоли? Изначально far2l действительно работал только в графическом режиме, через wxWidgets. Это оказалось самым простым способом быстро получить работающий порт со всеми пользовательскими удобствами: иксовым буфером обмена и всеми сочетаниями клавиш, причем с поддержкой событий не только KeyDown, но и KeyUp.

Сейчас это ограничение в прошлом: far2l прекрасно себя чувствует в консоли. Более того, там появились так называемые расширения терминала far2l, поэтому если запускать консольный far2l внутри графического (например, зайдя куда-нибудь по ssh), они «сконнектятся» между собой, и внутренний far2l тоже будет видеть и буфер обмена (с разрешения пользователя, конечно), и все возможные горячие клавиши. Более того, сделана даже специальная сборка putty, позволяющая наслаждаться всеми этими фишками из Windows.

Вот, смотрите, это far2l в GNOME Terminal


Читать дальше →
Total votes 236: ↑235 and ↓1 +234
Views 56K
Comments 549
1

Information

Rating
757-th
Registered
Activity