Pull to refresh
0
0

Sysadmin

Send message

2. Nix в пилюлях: Установка в вашей системе

Level of difficultyMedium
Reading time5 min
Views1.8K

Вторая статья из цикла Nix в пилюлях. Устанавливаем Nix в нашу систему, разбираемся и профилями и поколениями, и выясняем, что в Nix есть база данных.

Читать далее
Total votes 12: ↑11.5 and ↓0.5+11
Comments4

Guix — самая продвинутая операционная система

Reading time15 min
Views90K
Операционные системы (ОС) — обширная тема. На протяжении десятилетий здесь доминировал один подход: Unix. Действительно, большинство современных систем, включая большинство дистрибутивов GNU/Linux, *BSD и macOS, придерживаются архитектуры Unix. (Windows нет, но там почти ничего интересного по этой теме).

В 2000 году Роб Пайк выступил с докладом о том, почему исследования системного ПО не релеванты. Из-за пессимизма или пренебрежения к сообществу он, кажется, полностью проигнорировал жалобы, собранные многими Unix-пользователями в книге The Unix-Haters Handbook (1994). Книга умышленно саркастична, однако указывает на некоторые критические проблемы систем Unix — и они не решены до сих пор.

В 2006 году Элко Доситра опубликовал диссертацию «Полностью функциональная модель развёртывания программного обеспечения», где описан функциональный менеджер пакетов Nix. В 2008 году автор опубликовал NixOS: полностью функциональный дистрибутив Linux. В то время как NixOS повторно использует много свободного ПО для Unix-систем, она настолько отходит от дизайна и философии Unix, что вряд ли её можно назвать «системой Unix».
Читать дальше →
Total votes 66: ↑59 and ↓7+52
Comments119

1. Nix в пилюлях: Почему вам стоит попробовать Nix

Level of difficultyMedium
Reading time7 min
Views8.2K

Предисловие


В 2014 и 2015 годах Люка Бруно (Luca Bruno aka Lethalman) опубликовал серию постов, описывающих пакетный менеджер Nix, операционную систему NixOS и хранилище Nixpkgs.


Люка назвал свои посты пилюлями (англ. pill — таблетка, пилюля).


Берясь за перевод, я пытался выяснить, нет ли у выражения in pills устойчивого смысла.
Оказалось, что скрытый смысл есть у самого слова Nix.
Это одна из торговых марок перметрина — средства против клещей, которое доступно только в виде мази.
Иными словами, медицинского Никса ни в пилюлях, ни в таблетках не бывает.


С момента публикации, Nix в пилюлях считается классическим введением в Nix. В 2017 году Грэм Кристиансен (Graham Christensen aka grahamc/gchristensen) инициировал работу по переводу серии статей в формат электронной книги.


Актуальную оригинальную версию книги вы найдёте по адресу https://nixos.org/guides/nix-pills/.
Там же доступен вариант в формате EPUB.


В 2024 году Марк Шевченко начал перевод книги на русский язык.
Актуальная версия доступна по адресу https://nix-pills-ru.github.io.


ℹ️ В примерах, команды, которые начинаются с символа "решётка" (#), должны быть запущены с правами пользователя root.

(Адрес статьи на официальном сайте перевода).


Почему вам стоит попробовать Nix


Введение


Добро пожаловать на первую пилюлю из цикла «Nix в пилюлях».
Nix — это чистый функциональный пакетный менеджер и система развёртывания для POSIX-совместимых ОС.

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

Надёжная и воспроизводимая установка Linux с NixOS

Reading time10 min
Views28K

NixOS — это дистрибутив Linux, обеспечивающий надёжность и позволяющий легко воспроизводить состояния системы. Знакомим с Nix и развёртыванием NixOS на вашей машине к старту курса по Fullstack-разработке на Python.

Читать далее
Total votes 12: ↑10 and ↓2+8
Comments6

Как написать свою маленькую ОС

Level of difficultyEasy
Reading time7 min
Views37K


Большое начинается с малого. Например, ядро Linux 0.0.1 состояло всего из 10 239 строк кода, из них 20% комментарии. Такой проект вполне может осилить студент в качестве курсовой или дипломной работы, программируя по вечерам на домашнем ПК (собственно, Линус и написал его во время учёбы в университете, когда вернулся из армии).

Если один студент смог это сделать тогда, то почему нельзя повторить? И действительно, в интернете есть даже специальные обучающие ресурсы для написания новых ОС и целые сообщества энтузиастов, которые помогают друг другу в этом непростом деле.
Читать дальше →
Total votes 108: ↑103 and ↓5+98
Comments25

Пошаговый план старта на Upwork

Reading time3 min
Views262K
image

Рано или поздно разработчик всерьез задумывается о фрилансе. В этот момент большинство идут на биржи. Выбор бирж огромен. В СНГ: fl.ru, weblancer и прочие. Но когда доходишь до дела начинаешь понимать в каком все упадке. Единственным местом где водятся более-менее нормальные заказы можно назвать fl.ru и еще одну-две биржы. Но на fl.ru нужен pro аккаунт, ведь оказывается чтобы взять заказ нужно заплатить бирже, и далеко не факт что тебе что-то светит. Поэтому было решено идти на Upwork.
Читать дальше →
Total votes 57: ↑51 and ↓6+45
Comments99

Администратор узла сети I2P. Полный курс

Reading time16 min
Views21K

В I2P присутствует две основные сущности: роутер и конечная точка. Роутером называется программный клиент, который необходимо установить для использования I2P. По умолчанию роутер публикует реальные IP-адреса и активно взаимодействует с другими подобными участниками, выступая в роли транзитного узла и расширяя собственный рисунок сети, т.е. накапливает информацию о других доступных роутерах для их дальнейшего использования в своих туннелях. Конечная точка – это осмысленная сущность сети, ведущая скрытую активность. Например, скрытый сайт, или выходной прокси обычного пользователя. Фактор анонимности I2P заключается в секретности месторасположений конечных точек: выявить роутер, являющийся родителем конечной точки, крайне сложно, а при должном подходе администратора – невозможно.

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

Читать далее
Total votes 26: ↑25 and ↓1+24
Comments7

Пишем простое веб-приложение используя Spring MVC, Spring Data JPA и Hibernate

Reading time16 min
Views77K
Привет, Хабр! Представляю Вашему вниманию перевод руководства «Spring MVC + Spring Data JPA + Hibernate — CRUD Example» автора Nam Ha Minh.

В этом руководстве по Java Spring вы узнаете, как настроить Spring MVC приложение для работы с Spring Data JPA, разработав простое веб-приложение, которое позволяет управлять информацией о клиентах.
Читать дальше →
Total votes 18: ↑11 and ↓7+4
Comments6

Moose: ООП в Perl

Reading time4 min
Views12K
Moose — расширения для Perl 5, позволяющее упростить реализацию ООП.

Создание класса происходит очень легко:
package MyClass;
use Moose;


все, пустой класс создан. Он может иметь произвольное количество: аттрибутов, методов, суперклассов, модификаторов метода, конструктор(1шт), деструктор(1шт) и мета-класс(1шт) который содержит все метаинформацию о данном классе.

Теперь подробнее об этих составляющих:
Читать дальше →
Total votes 34: ↑27 and ↓7+20
Comments23

Визуальный генератор регулярных выражений

Reading time6 min
Views231K
Все разработчики рано или поздно сталкиваются с регулярными выражениями. Практически в 100% случаев нам совершенно не нравится их составлять, считая это побочной работой, не связанной с программированием.

Большинство из нас, впервые столкнувшись с данной проблемой, начинают забивать в поисковых системах что-то типа: «regexp online generator» и к своему великому сожалению осознают что гугл сломался все результаты в поиске являются сервисами для проверки корректности уже составленного регулярного выражения (или я плохо гуглил).

А как же составить это самое регулярное выражение?


image

До недавнего времени существовало 2 ответа на этот вопрос:

  1. Изучить документацию по регулярным выражениям и составить регулярку самому
  2. Попросить кого-то более опытного сделать это за вас

Теперь, после нескольких месяцев разработки, рад представить и 3-й ответ:

» Генератор регулярных выражений

История


Давным давно, в одном проекте пришел довольно интересный и сложный запрос от внутренних пользователей. Персоналу технической поддержки нужно было самим задавать правила валидации для определенных полей, разным пользователям. Правила должны были часто и очень оперативно изменяться.
Читать дальше →
Total votes 70: ↑63 and ↓7+56
Comments66

Как проектировать программы (HtDP)

Reading time6 min
Views17K
Следующая статья о том, как писать игры на Scheme

Учебник HtDP (How to Design Programs), посвящен программированию на языке Scheme в среде drRacket.
drRacket можно скачать с сайта.
Вводная часть учебника содержит описание функции empty-scene, предназначенной для работы с изображениями. Например, эта программа создает пустую сцену

#lang racket  
(require 2htdp/image)      ;библиотека для работы с изображениями 
(empty-scene 100 60)     ;сцена (канвас) размером 100х60 

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

Спор о первом языке программирования: окончательное решение

Reading time10 min
Views30K
Некоторые относятся к спору о выборе первого языка программирования примерно так:



Говорят, на выбор влияет миллион фаторов и спорить по этому поводу не имеет никакого смысла. Тем не менее, холивары продолжаются.

Виталий Брагилевский решил поставить точку и на Saint AppsConf представил окончательное решение. После прочтения статьи (или просмотра доклада) вы будете знать, как правильно отвечать родственникам или знакомым, которые узнали, сколько зарабатывают в IT и что удалёнка тут не помеха, и теперь интересуются, с чего же начать.

Total votes 50: ↑43 and ↓7+36
Comments166

Книжная полка компьютерного криминалиста: 11 лучших книг по Digital Forensics, Incident Response и Malware Analysis

Reading time6 min
Views69K


Хотите разобраться в компьютерной или мобильной криминалистике? Научиться реагированию на инциденты? Реверсу вредоносных программ? Проактивному поиску угроз (Threat Hunting)? Киберразведке? Подготовиться к собеседованию? В этой статье Игорь Михайлов, специалист Лаборатории компьютерной криминалистики Group-IB, собрал топ-11 книг по компьютерной криминалистике, расследованию инцидентов и реверсу вредоносных программ, которые помогут изучить опыт профессионалов, прокачать свои скиллы, получить более высокую должность или новую высокооплачиваемую работу.
Читать дальше →
Total votes 7: ↑6 and ↓1+5
Comments2

Руководство инструктора к книге «Программирование: Принципы и практика с использованием C++»

Reading time55 min
Views26K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Instructor’s Guide for Programming" автора Бьярне Страуструпа (дата последнего посещения: 20.12.2017).


От переводчика


Бьярн Страуструп известен как разработчик языка программирования C++. Книги его авторства лежат на столах многих маститых разработчиков.


Особенно стоит отметить учебник по основам программирования "Программирование: Принципы и практика с использованием C++". Бьярн написал его для студентов Техасского университета агрокультуры и машиностроения, в котором он долгое время преподавал курс для студентов. В дополнение к самому учебнику, на сайте www.stroustrup.com можно найти Руководство инструктора. Изложенный в нем опыт преподавания курса основ программирования может быть полезен не только для курса по C++. В руководстве можно найти ответы на типичные вопросы преподавателей: Как подавать материал? Как бороться с расслоением группы по навыкам? Насколько глубоко нужно погружаться в тему?


Мне не удалось найти русской версии Руководства инструктора к книге "Программирование: Принципы и практика с использованием C++", поэтому я решил перевести его и опубликовать.

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

Портрет слушателей вечерних курсов

Reading time8 min
Views11K
Добрый день.

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

Допускаю, что такая классификация актуальна только в моем контексте, поэтому немного расскажу об организации. Курсы проводятся очно. Занятия начинаются примерно в 18:00 по местному времени. Чаще всего раз в неделю. Время, отведенное на обучение, варьируется от 7 до 30 занятий и зависит от платежеспособности и желания студента. Стоимость одного занятия студенту обходится примерно в 900 рублей. У нас нет даже формального отсеивания студентов. Кто хочет учиться, с тем и работаем.

Если вам это интересно, добро пожаловать под кат.
Читать дальше →
Total votes 30: ↑28 and ↓2+26
Comments13

Избавляемся от страха перед первым трудоустройством

Reading time11 min
Views14K

Кадр из к/ф «Гарри Поттер и узник Азкабана»

Проблема этого мира в том, что воспитанные люди полны сомнений, а идиоты полны уверенности

Чарльз Буковски
Недавно я проводил очередное индивидуальное занятие по программированию. В отличие от обычных занятий, темой стала не конструкция языка и не проблема при решении задачи. Студент поделился своим беспокойством на тему будущего трудоустройства. Сам ученик был довольно сообразительным. Один из тех, кто приходит на курсы, проходит всю программу быстрее всех и с оригинальными решениями, но все время искренне недооценивает себя. На мой взгляд, такие сомнения возникают только от недостатка информации. Этот пробел я постарался заполнить экспромтом во время занятия.

Вопросы были примерно такие:

  • Каждый год из ВУЗов выпускается множество студентов и они все идут искать работу. Это ведь очень много людей. Наверняка возьмут лучших, а мне места не достанется.
  • Что если я накосячу и меня сразу уволят?
  • Что если в процессе работы они поймут что я тупой и выгонят?

Этот студент не был первым человеком, которому я отвечал на подобные вопросы. Они возникают у многих, и обычно приходится рассказывать без подготовки. В этот раз я решил записать свой монолог в блокнот. Думал, что получится пара абзацев, а набралось на целую статью.
Читать дальше →
Total votes 8: ↑6 and ↓2+4
Comments11

Вот зачем нужна школьная алгебра

Reading time4 min
Views120K
Обычно на вопрос «зачем нужна математика?» отвечают что-то вроде «гимнастика для ума». На мой взгляд, этого объяснения недостаточно. Когда человек выполняет физические упражнения, то он знает точное название групп мышц, которые при этом развиваются. Но разговоры про математику остаются слишком абстрактными. Какие конкретно «мышцы ума» тренируются школьной алгеброй? Она ведь совсем не похожа на настоящую математику, в которой делаются великие открытия. Что дает умение искать производную каких-то запутанных функций?

Преподавание программирования слабым студентам привело меня к более точному ответу на вопрос «зачем?». В статье я постараюсь донести его вам.

Читать дальше →
Total votes 134: ↑100 and ↓34+66
Comments659

Учеба это не лотерея, метрики лгут

Reading time7 min
Views8.7K
Это статья — ответ на пост, в котором предлагают выбирать курсы исходя из величины конверсии студентов из поступивших в устроившиеся.

При выборе курсов вас должны интересовать 2 цифры — доля людей, дошедших до конца курса и доля выпускников, устроившихся на работу в течение 3-х месяцев после окончания курса.
Например, если курс заканчивают 50% начавших, а на работу в течение 3-х месяцев устраиваются 20% выпускников, то ваши шансы войти в профессию с помощью конкретно этих курсов — 10%.

Внимание будущего студента обращается на две метрики и на этом «советы по выбору» заканчиваются. При этом учебному заведению почему то ставится в вину то, что кто-то из студентов не окончил курс.
Поскольку автор не уточнил, что именно он понимает под «ИТ-профессией», я интерпретирую ее как захочу, а именно «программирование». Всякий блоггинг, IT-менеджмент, SMM и SEO я не знаю, поэтому отвечу только по знакомой области.

На мой взгляд, выбор курсов исходя из двух показателей — в корне неправильный подход, под катом я подробнее опишу почему. Сначала я хотел оставить развернутый комментарий, но текста получилось много. Поэтому оформил ответ отдельной статьей.
Читать дальше →
Total votes 19: ↑17 and ↓2+15
Comments65

Как научить преодолевать трудности, а заодно и писать циклы

Reading time19 min
Views18K
Несмотря на то, что речь пойдет об одной из базовых тем, данная статья написана для опытных специалистов. Цель — показать какие заблуждения бывают у новичков в программировании. Для практикующих разработчиков эти проблемы уже давно решены, позабыты или вообще не замечены. Статья может пригодиться, если вдруг вам придется помогать с этой темой кому-нибудь. В статье проводятся параллели с материалом из различных книг по программированию авторства Шилдта, Страуструпа, Окулова.

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

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

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

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity

Specialization

Specialist
Perl
Linux