СОЗДАТЬ И ИЗОБРЕСТИ VS ПОСТРОИТЬ И УДЕРЖАТЬ
Узнайте, как бороться с выгоранием в культуре Власти...
СОЗДАТЬ И ИЗОБРЕСТИ VS ПОСТРОИТЬ И УДЕРЖАТЬ
Узнайте, как бороться с выгоранием в культуре Власти...
Вврдение
После установки системы Gentoo Linux на свой неутбук я неожиданно обнаружил, что в системе нет штатного средства выключения и перезагрузки от обычного пользователя без использования sudo.
Защитное заяление автора
Сразу хотел бы отметить, что не призываю пользоваться данной программой, так как решение для управления выключением и перезагрузкой, предложенное мной, является нестандартным средством и по этой причине не может быть рекомендовано. Код программы также не может служить примером для обучения, поскольку автор программы не является профессиональным программистом. Данная статья и код на языке C публикуются в ознакомительных целях.
История вопроса
После установки системы Gentoo Linux на свой неутбук я неожиданно обнаружил, что в системе нет штатного средства выключения и перезагрузки от обычного пользователя без использования дополнительных средств вроде программы sudo, а исследование файла
/etc/group показало, что в нём нет группы operator. Любые попытки добавить эту группу и пользователя в неё не принесли желаемого результата - компьютер не перезагружался от простого пользователя.
Несколько поразмыслив, я пришёл к идеи (вероятно, я не был первым) научить планировщик cron перезагружать и выключать компьютер . Для этого мной наскоро был написан скрипт на bash и добавлено задание в cron для суперпользователя.
Скрипт запускался раз в минуту от root, проверял файл в директории пользователя на наличие в нём управляющего символа и осуществлял перезагрузку или выключение, записывал в этот файл код 0 для бездействия, чтобы компьютер не начал перезагружаться бесконечно. Я и сам не заметил, что своими руками создал уязвимость в системе (хотя подозрения были). Спасибо участникам форума Linux.org.ru, которые вовремя указали мне на ошибки и дали ряд дельных советов по улучшению моей скромной системы.
Что такое функциональное программирование?
Прежде чем начинать, давайте закрепим понимание термина «функциональное программирование». В основе своей, функциональное программирование это организация кода вокруг функций, а не вокруг объектов. Чтобы это работало, функции должны рассматриваться как тип данных первого класса в рамках языка программирования. Это лишь модный способ сказать, что функции могут храниться в переменных, возвращаться из других функций, использоваться в качестве параметров, потенциально даже быть изменены, так же как любая другая часть программы. Вместо того чтобы погружаться глубже в теорию, давайте перейдём к примерам.
Блоки — одна из самых мощных и часто игнорируемых фич руби. Признаюсь, у меня ушло прилично времени чтобы разобраться как работают блоки и насколько они могут быть полезными на практике.
Есть нечто в yield
, что делает его крайне трудным для понимания при первом рассмотрении. Я хочу поговорить о концептах и приведу несколько примеров, так что к концу этого поста у вас появится твёрдое понимание руби блоков.
Существует ряд ситуаций, когда это имеет смысл. От полного контроля памяти, до вынужденной необходимости. К примеру, одна из возможных ситуаций:
1. Мы используем alignment аллокаторы
2. Мы перегружаем какой-то класс и данные от нашей 3rd зависимости
3. 3rd зависимость не использует alignment аллокаторы
Всем привет! Меня зовут Артем, я старший разработчик в ИНТЕРВОЛГЕ. Наконец дошли руки рассказать про «обмен с 1С с нуля». Типовой интернет-магазин состоит из двух частей: сайт и учетная система. Редко когда это цельный софт.
В статье речь пойдет о написании с нуля обмена сайта и 1С.
Вам когда-нибудь требовались дополнительные возможности от конфигурации Vite, например, преобразование кастомного расширения, т.е., index.mycustomextension
в index.js
? Или преобразование markdown в JSX?
Плагин Vite позволяет нам решать подобные задачи. Поэтому вам может быть интересно, как создать плагин Vite самостоятельно. В этой статье мы расскажем, как разработать несколько простых плагинов, которые вы сможете использовать в качестве основы и источника идей для своих собственных плагинов Vite.
Всем привет! Меня зовут Константин, я Flutter-разработчик в компании Nord Clan.
В данной статье мы с моей коллегой Анной хотели бы поделиться нашим опытом связки Flutter и home widget на платформе iOS.
Привлекательное название статьи должно раскрывать то, что будет в ней. Так вот, работа специалистом поддержки клиентов подразумевает появление вопросов к пользователю. Иногда возникает как раз такой: "Почему ты делаешь за меня мою работу?", — но он больше риторический.
На самом деле, понятно, почему люди не пишут в поддержку, почему пытаются сделать всё самостоятельно. Я расскажу об этом ниже, а вас попрошу сделать выводы, основываясь на ваших чувствах по отношению к поддержке сервисов, которыми вы пользуетесь каждый день. Причины не писать в поддержку я опишу в лёгкой форме типизации людей.
Привет, с вами Данил Губанов — backend-разработчик в Точке. Сегодня я расскажу о сервисах, которые позволяют разработать целое приложение, при этом не требуя кода. В этой статье я буду говорить о Glide и Lucidchart, а во второй части материала расскажу про Google Sheets и Notion. Почему я буду рассказывать о них? Потому что они простые и доступные. С их помощью я за несколько часов смог создать телеграм-бота и небольшое приложение с админкой без единой строчки кода.
Прежде всего этот пост для джунов и тех, кто хочет быстро создавать и тестировать MVP без привлечения разработчиков. Если вы опытный айтишник со стажем, то вряд ли узнаете что-то новое для себя.
Строго говоря, я более чем уверен, что большинству пользователей Хабра не нужно объяснять, что такое IP-адрес. Тем не менее, мы, "Лаборатория свободного интернета", начали серию материалов, где буквально на пальцах и на примерах их жизни объясняем разные аспекты существования сети Интернет и разных часто вслепую используемых технологий.
Если есть идеи - про что еще мы можем рассказать - пишите в комментариях.
Важное уточнение: мы рассматриваем в статье только классический протокол IPv4. Внедрение протокола IPv6 хоть медленно, но идёт: по разным оценкам на 2022 год трафика по IPv6 передано от 20% до 40%. Чтобы не перегружать статью, про IPv6 мы напишем отдельно.
«IP-адрес (от англ. Internet Protocol) — уникальный числовой идентификатор устройства в компьютерной сети, работающей по протоколу TCP/IP» , – это снова определение по версии Википедии.
Ещё один уникальный числовой идентификатор, который вполне может оказаться неуникальным.
TCP/IP – это набор Интернет-протоколов, которому уже несколько десятков лет и который и обеспечивает нас всех связью.
Итак, IP-адрес. Он уже гораздо более известен широкой публике, даже участвует в широко распространённых мемах типа «Я вычислю тебя по IP». Кроме того, многие дети начинают знакомиться с этим понятием, когда возникает потребность поиграть с другом по сети.
Выглядит он вот так: 192.168.26.85
IP-адрес используется в Интернете непосредственно для связи между различными устройствами. Например, между сайтом Яндекса и вашим компьютером. Или между вами и другим игроком в Minecraft.
Привет, Хабр!
Основным языком разработки у нас, в TIMELESS, является TypeScript
, как на frontend, так и на backend. Поэтому в рамках идеи типизации всего и вся для работы с БД мы выбрали Prisma, которая позиционирует себя как “Next generation ORM for Node.js and TypeScript”.
Спустя год применения Prisma
хотелось бы поделиться опытом ее использования при работе с PostgreSQL
из Node.js
приложения.
Всем салют!
Давно не виделись. Я Леонид Могучев, тимлид группы тарификации Ozon.
Go is love, Go is life. Go — целевая платформа разработки, используемая в Ozon Tech. На Go у нас написано более 1000 микросервисов, обеспечивающих работу сайта, склада, систем логистики.
Выбор Go в качестве целевой платформы обоснован не модой или новизной технологий, а достоинствами языка, важными для разработки решений. Мы быстро растём, и скорость реализации фич вместе с качеством и стабильностью сервисов стоит первой в списке приоритетов. Go очень эффективен: на нём можно просто и быстро писать высокопроизводительные решения, а потом их поддерживать и масштабировать.
А вот и тот анонс поближе, который просили в комментариях. Ждём всех в гости на открытый Ozon Tech Community Go Meetup 9 декабря в 18:00 в Москве.
В статье разберёмся что такое мультидиспетчеризация и как её можно воссоздать на С++
Развитие китайского файрвола, инициативы европарламента и экспансия американских телекомов — есть мнение, что в будущем эти процессы могут привести к разделению интернета на регионы. Обсудим, ситуацию.
Всем привет! С уходом осени по традиции подводим итоги ноября в подборке самых ярких инфобез-новостей прошлого месяца. Сегодня у нас в программе пара сервисов с многолетней историей, по чью цифровую душу нагрянуло ФБР, громкие аресты видных фигур двух крупных киберпреступных группировок, а также, само собой, наиболее примечательные взломы из финального аккорда осеннего сезона. За подробностями добро пожаловать под кат!
Автор не является профессионалом в области защиты баз данных. Поэтому заранее просит не судить его строго. Если в рассуждениях допущена ошибка и предложенная схема не работает, автор с благодарностью примет замечание. А также автор просит извинить, если предложенная схема окажется чем-то банальным и уже давно используемым.