Программирование

Паундер, Л. Python: ваш цифровой помощник

Паундер, Л. Python: ваш цифровой помощник [Текст] : [создание цифрового персонального помощника на базе Raspberry Pi] : [руководство] / Лес Паундер [Les Pounder]  //  Linux Format. — 2017. — № 4 (222), апр.. — С. 90-91. — (Linux Format. Пользователям Pi) (Raspberry Pi) (Цифровой помощник). — Прил.: "Вам нужны" : [аппаратное и программное обеспечение проекта]. — С. 90 ; "OpenWeather Map: Как получить свой ключ API" : [получение и испольование в проекте ключа открытого API сайта Open Weather Map, http://openweathermap.org]" : [краткая информация] ; "Скорая помощь. Выполните в терминале sudo raspiconfig для вывода звука через разъем 3,5 мм для наушников. Для  изменения уровня громкости воспользуйтесь alsamixer в терминале. Управлять громкостью можно с помощью клавиш вверх и вниз, и Esc для выхода. Это работает и в SSH" : [совет]. — С. 91.
     Аннотация
     Как собрать, запрограммировать и настроить карманного цифрового персонального ассистента на базе Raspberry Pi, который будет сообщать последние новости и состояние погоды.
 

Цукалос, М. Python: кропаем утилиту

Цукалос, М. Python: кропаем утилиту [Текст] : [кодинг утилиты wc] : [практическое руководство] / Михалис Цукалос [Mihalis Tsoukalos]  //  Linux Format. — 2017. — № 4 (222), апр.. — С. 84-87. — (Академия кодинга) (Python). — Библиогр. "Скорая помощь": с. 85 (3 назв.). — Прил.: "Скорая помощь. Код этого урока можно загрузить
с www.linuxformat.com/files/code/tms16.code.zip". — С. 84 ; "О стандартных потоках ввода, вывода и ошибок" : [концепция стандартных потоков данных в Unix и её использование] : [краткая информация] ; "Скорая помощь" : [термины скрипт и программа] : [краткая информация]. — С. 85 ; "Обработка аргументов командной строки" : [обработка аргументов командной строки в Python 3] : [краткая информация и пример]. — С. 86 ; "Скорая помощь. С помощью каналов процессы Unix могут взаимодействовать друг с другом. При использовании каналов вывод одной программы становится входными данными для другой программы. Чтобы создать канал, нужно разделить две команды вертикальной чертой (|)." : [краткая информация]. — С. 87. 
     Аннотация
     Одна из самых старых утилит командной строки Unix, wc, сокращение от “word count” (подсчет слов), позволяет быстро получить информацию о текстовом файле. Утилита wc, например, подсчитывает слова, строки и число символов во входном потоке, который обычно представляет собой один или
несколько текстовых файлов. Михалис Цукалос полагает, что написание этой утилиты на Python 3 будет хорошей тренировкой и проводит по всем этапам ее кодирования. 
     Рекомендуется книга о Python 3 — “Dive Into Python 3" ("Погружение в Python 3", http://www.diveintopython3.net), а также полезные книги для опытных разработчиков — Luciano Ramalho “Fluent Python” (Лучано Рамальо "Беглый Python") и Brett Slatkin “Effective Python” (Бретт Слаткин "Эффективный Python"). 
 

Ельчук, К. Angular JS: настроим вид

Ельчук, К. Angular JS: настроим вид [Текст] : [разработка с помощью Angular JS одностраничного веб­-приложения со стандартными файлами, формами и галереей Bootstrap] : [практическое руководство] / Кент Ельчук [Kent Elchuk]  //  Linux Format. — 2017. — № 4 (222), апр.. — С. 80-83. — (Академия кодинга) (Angular JS). — Прил.: "Пользовательские элементы DOM" : [селектор JQuery в управлении моделью DOM] : [примеры]. — С. 81 ; "Гибкость PHP" : [включение и исключение PHP­-файлов из приложения Angular] : [на примере запуска Captcha2]. — С. 83. 
     Аннотация

     Как добавить новую тему в одностраничное приложение, как с помощью AngularJS создать галерею изображений, повседневные функции, применяемые в web­-разработке, изменение внешнего вида приложения с помощью адаптивного фреймворка Bootstrap, CSS и JQuery. 
     По сути, предлагается шаблон на AngularJS, с помощью которого можно быстро разработать одностраничное веб­-приложение со стандартными файлами, формами и галереей Bootstrap. 
 

Браун, Д. По советам м-ра Брауна [Linux Format, 2017, № 4 (222), апр.]

Браун, Д. По советам м-ра Брауна [Текст] : эзотерическое системное администрирование из таинственных закоулков серверной : [материалы для сисадминов Linux-систем] / Джолион Браун [Jolyon Brown]  //  Linux Format. — 2017. — № 4 (222), апр.. — С. 56-59. — (Советы мистера Брауна). — Содерж.: Прощай, Советы : [будущее Джолиона Брауна на ближайшие несколько лет обеспечат знания и навыки в сфере облачных вычислений, в языке программирования Google Go и освоение дистрибутива для тестирования на вторжения Kali Linux] ; Взгляд внутрь Google. Поисковый гигант рассказал, как решает вопросы безопасности, и намекнул на защиту с применением "собственного железа" : [документ компании Google "Infrastructure Security Design Overview" ("Обзор модели инфраструктуры безопасности", https://cloud.google.com/security/security­design), описывающий механизмы защитны облачных служб компании, — назначение, краткое содержание документа (схемы, аппаратные решения, шифрование), кому следует обратить на него внимание; книга специалистов Google для начинающего системного администратора “Site Reliability Engineering" ("Обеспечение надежности сайтов", https://landing.google.com/sre/book.html) доступна под лицензией Creative Commons; Linux Foundation объявила о правах на исходный код открытой RethinkDB, который выкуплен от кредиторов организацией Cloud Native Computing Foundation (CNCF)]. — С. 56 ; Масштабирование приложений : [способы реализации DC/OS]. — С. 57 ; Операционная система дата-центра : [Datacentre Operating System (DC/OS) — интерфейс командной строки, запуск контейнеров, приложения, планирование заданий, рекомендация как решения для управления контейнерами]. — С. 57-59 ; Обнаружение служб : [Mesos­DNS и именованные VIP для обнаружения служб в кластерах DC/OS]. — С. 58. 
     Аннотация 
     Последняя колонка "Советов" Джолиона Брауна — размышления о своем будущем, полезные новости от компании Google и приятная новость от Linux Foundation, продоление обзора Datacentre Operating System (DC/OS). 
 

Шерышова, Л. Tizen и Web

Шерышова, Л. Tizen и Web [Текст] / Лада Шерышова  //  Linux Format. — 2017. — № 4 (222), апр.. — С. 22-23. — (Tizen) (Программирование). — Прил.: "Рис. 1. Жизненный цикл web-приложения Tizen" [Изображение] : [цвет. схема]. — С. 22 ; "Рис. 2. Комбинации приложений в гибридных мультипроектах" [Изображение] : [цвет. схема]. — С. 23. 
     Аннотация
     Чем нативное приложение отличается от веб­-приложения. Этапы жизненного цикла те же, но налицо некоторые особенности. 

Гондаренков, А. Из «Берлина» в «Токио». Новый релиз RAD Studio поддерживает Linux

Гондаренков, А. Из "Берлина" в "Токио". Новый релиз RAD Studio поддерживает Linux [Текст] : [усовершенствования среды быстрой разработки RAD Studio 10.2] : [краткая информация] / рубрику готовил Андрей Гондаренков  //  Linux Format. — 2017. — № 4 (222), апр.. — С. 8. — (Новости) (Средства разработки). 
     Аннотация
     Среда быстрой разработки RAD Studio 10.2 Tokyo от Embarcadero Technologies — поддержка Linux и другие усовершенствования. 
 

Fuego 1.1

Смедли, Р. Fuego. Версия: 1.1. Сайт: http://fuego.sf.net [Текст] : движок для игры в го : [обзор] / Ричард Смедли [Richard Smedley]  //  Linux Format. — 2014. — № 5 (183), май. — С. 104. — (LXFHotPicks). 
     Аннотация
     Благодаря своим правилам и сложной стратегии, древняя игра го является постоянным объектом исследований искусственного интеллекта и испытательный стенд для алгоритмов ИИ. Программные реализации стратегий игры го и стратегия реализованная в Fuego (древовидный поиск Монте-­Карло с верхним доверительным пределом, которую мы здесь и узрим, в виде коллекции и хорошо документированных библиотек C++ — отличного набора для изучения вопросов програмирования ИИ).

Оделл, Д. JavaScript: улучшаем рабочий процесс

Оделл, Д. JavaScript: улучшаем рабочий процесс [Текст] : [автоматизация повторяющихся задач и повышения качества кода с помощью JavaScript Grunt]  / Деннис Оделл [Dennis Odell]  //  Linux Format. — 2014. — № 5 (183), май. — С. 92-95. — (Академия кодинга) (JavaScript). — Прил.: "Наш эксперт" : [Деннис Оделл как глава международного отдела веб-­разработки AKQA, автор нескольких книг о JavaScript и больших интернет-приложениях] : [краткая справка]. — С. 92 ; "Модульное тестирование Grunt" : [фреймворк для модульного тестирования JavaScript — Jasmine (http://jasmine.github.io); плагин для Grunt (http://bit.ly/1eKW66O), позволяющий запускать тесты вместе с другими задачами в PhantomJS (http://phantomjs.org), известном как "безголовый браузер"] : [краткая справка]. — С. 93 ; "За мной следят" : [плагин grunt-contrib-watch (http://bit.ly/1pU2BZ8) для запуска задач каждый раз, когда указанный файл или любой файл из группы файлов добавляется, сохраняется или удаляется] : [краткая информация]. — С. 94. 
     Аннотация
     JavaScript Grunt (http://gruntjs.com) — средство для запуска задач JavaScript, которое прервет страдания разработчика от ЗПС (Злость на Повторные Скрипты) так как умеет запускать задания Java, экономя время на кое-­что получше. Например, пока JavaScript Grunt будет выполнять анализ статического кода JavaScript-проекта, проверку возможных ошибок и внедрение единого набора правил написания кода во всех файлах JavaScript-проекта для всех разработчиков, можно будет спокойно выуживать драгоценные знания из журнала Linux Format. 
     JavaScript Grunt подойдет каждому веб-­разработчику, желающему выполнять задачи вроде контроля кода JavaScript на соответствие стандартам (проверка синтаксических ошибок и наличие неэффективного кода), модульного тестирования, минимизации кода (удаления ненужных символов из исходного кода), компиляцию Sass в CSS и интеграции с другими системами. 
 

Девлин, И. HTML5: создаем свой видеоплейер

Девлин, И. HTML5: создаем свой видеоплейер [Текст] : учебник : [использование API от HTML5 для создания видеопроигрывателя с интерфейсом, одинаковым во всех браузерах] : [практическое руководство] / Иэн Девлин [Ian Devlin]  //  Linux Format. — 2014. — № 5 (183), май. — С. 88-91. — (Академия кодинга) (HTML5). — Внутритекст. вэблиогр. и библиогр.. — Прил.: "Поддержка браузеров" : [какие типы мультимедиа поддерживаются в каких браузерах, как перекодировать медиа­файлы, чтобы с ними можно было работать в HTML5; программы для перекодировки медиа-файлов (Miro Video Converter (www.mirovideoconverter.com), Online Convert (www.onlineconvert.com); программа для переноса информация о файле MP4 (содержащаяся в индексе файла) из конца в начало файла, чтобы тот начал проигрываться сразу — QTIndexSwapper (http://bit.ly/MyvXwk)] : [краткая справка]. — С. 88 ; "Книга Иэна Девлина, которую он, наглец, здесь рекламирует — это более подробное введение в мультимедиа в браузерах (http://bit.ly/1pCtTDh)." : [книга "HTML5. Multimedia. Develop and Design" by Ian Devlin] : [краткая аннотация]. — С. 90 ; "Плагины для медиа-проигрывателей" : [плагины: MediaElement.jswww.mediaelementjs.com, jPlayerwww.jplayer.org, LeanBack Player www.leanbackplayer.com, Playrwww.delphiki.com/html5/playr, Video.jswww.videojs.com; удобная таблица со сравнением возможностей популярных медиа­проигрывателей HTML5, которую составил Геррит ван Аакен (Gerrit van Aaken)www.praegnanz.de/html5video]. — С. 91. 
     Аннотация
     Неплохо бы разместить на своем сайте видеоконтент со своим личным настраиваемым плеером )))) и посетители могли бы прослушивать аудиозаписи и смотреть видео прямо в браузере, не приспосабливаясь к норову воспроизведения браузера по умолчанию. Иэн Девлин, как специалист в этом и автор книги ""HTML5. Multimedia. Develop and Design" подготовил руководство по написанию собственного видеоплеера на HTML, CSS и API для работы с мультимедиа HTML5. 
     Востребованный медиапроигрыватель нового поколения от Иэна Девлина (демо­версия — на http://bit.ly/LXFhtml5vid) — дизайн (простой шаблон HTML­страницы, содержащей код проигрывателя), добавление кнопок, добавление плейлистов. 
 

Шарма, М. IDE программиста

Шарма, М. IDE программиста [Текст] : [сравнительный обзор интегрированных сред разработки (Integrated Development Environment, IDE)] / Маянк Шарма [Mayank Sharma]  //  Linux Format. — 2014. — № 5 (183), май. — С. 24-29. — (Сравнение). — Содерж.: Наша подборка : [перечень тестируемых IDE] ; Про наш тест : [платформа тестирования] ; "Интегрированная среда разрабтки [Integrated Development Environment], она же IDE — это…" : [введение в обзор]. — С. 24 ; Функции редактора кода. Как они помогают программисту? : [как реализованы функции, — выделение синтаксиса, свертывание кода, заполнение кода, автодополнение и автоматическое замыкание тэгов, рефакторинг кода, выделение переменных — которые помогают разработчику лучше визуализировать и организовать код] ; Вердикт : [лучшие — Bluefish, Eclipse, Komodo; Bluefish реализует целый ряд полезных функций] ; Поддержка контроля изменений. Позволяют ли они сотрудничать? : [поддержка совместной работы через системы контроля версий (например, Subversion или Git)] ; Вердикт : [лучшие — Bluefish, Eclipse, Komodo; если для проекта важно сотрудничество, рекомендуется Eclipse]. — С. 25 ; Поддержка языков. На многих ли языках программирования они говорят? : [все IDE сравнительного обзора помогают писать код на разных языках программирования, но, многие ориентированы на определенный язык] ; Вердикт : [лучшая Eclipse; Bluefish делает достаточно, чтобы удовлетворить потребности веб-­разработчиков] ; Начало работы. Достаточно ли интуитивен пользовательский интерфейс? : [введение к рассмотрению удобств интерфейса каждой из интегрированных сред разработки (IDE)] : Geany ; Bluefish. — С. 26 ; Komodo Edit ; Eclipse ; Aptana Studio ; Помощь и поддержка. Где искать помощь? : [лидирует в этой области Eclipse, предлагая обширную информацию в приложении, и еще больше — онлайн на канале YouTube, также предлагает шаблоны проектов] ; Вердикт : [Eclipse]. — С. 27 ; Поддержка отладки. Облегчают ли они хоть в какой-­то мере эту задачу? : [самая популярная программа отладки с открытым кодом — GNU Debugger (GDB) — работает для многих языков программирования, предлагает расширенные возможности отслеживания и модификации кода; многие IDE используют GDB, но Aptana Studio и Eclipse имеют собственные программы отладки] ; Вердикт : [большинство IDE идет с программами отладки для выбранных ими языков] ; Дополнения и плагины. На что еще они способны? : [расширение функциональности плагинами] ; Вердикт : [Eclipse превосходит всех, но у других IDE тоже есть полезные плагины]. — С. 28 ; IDE программиста. Вердикт : [что определяет выбор IDE конретным программистом и два основных критерия ее выбора; чем хороша каждая из интегрированных сред разработки и почему Eclipse лучшая] ; I. Eclipse : [Eclipse 4.3.1 (www.eclipse.org), лицензия EPL: общая оценка в баллах и резюме — лучшая IDE для всех видов разработки] ; II. Geany  : [Geany 1.23.1 (www.geany.org), лицензия GNU GPL v2: общая оценка в баллах и резюме — гибкая IDE для индивидуального разработчика] ; III. Aptana : [Aptana 3.4.2 (www.aptana.org), лицензия GNU GPL v2: общая оценка в баллах и резюме — идеальная IDE для веб­-проектов] ; IV. Komodo Edit : [Komodo Edit 8.5.3 (http://komodoide.com/komodo-edit/), лицензия MPL: общая оценка в баллах и резюме — функции ограниченные; не предлагается ничего особенного] ; V. Bluefish : [Bluefish 2.2.5 (http://bluefish.openoffice.nl), лицензия GNU GPL v2: общая оценка в баллах и резюме — неплоха, но проигрывает более функциональным соперникам] ; Рассмотрите также : [Emacs или Vi, NetBeans, MonoDevelop, Anjuta, KDevelop и Code::Blocks, веб-IDE — Cloud9, ShiftEdit и Codeanywhere]. — С. 29. 
     Аннотация
     Пять лучших IDE для программистов, которые способны помочь разработчикам создавать программы — Aptana Studio, Bluefish, Eclipse, Geany, Komodo Edit. Протестированы функции, которые предлагают их редакторы кода, дана оценка того, насколько они способствуют командной работе и развивают ее, испытаны их интерфейсы пользователя, проверены поддерживаемые ими плагины и прокомментированы их функции отладки. 
 

Чернова, И. Прикасание к Ubuntu

Чернова, И. Прикасание к Ubuntu [Текст] : [процесс создания и распространения программ для Ubuntu Touch] : [руководство] / Ирина Чернова  //  Linux Format. — 2014. — № 5 (183), май. — С. 22-23. — Библиогр. и вэблиогр.: с. 23 (9 назв.). — (Мобильные альтернативы Android). — Прил.: "PhoneGap" : [(она же Cordova, http://phonegap.com) от Adode — технология создания мобильных приложений на HTML5 и JavaScript и при помощи Platform Acess API для фиксирования прикосновения пользователя к сенсорному экрану] : [краткая справка]. — С. 22 ; "Типы приложений для Ubuntu Touch" : [apps, Scope (руководство — http://developer.ubuntu.com/scopes/overview/), WebSite (gодробности — http://developer.ubuntu.com/web/overview/)] : [краткая справка] ; "Скорая помощь. Чтобы сделать свое приложение для Ubuntu Touch, нужно совсем немного: изучить дизайн-­концепции этой операционки, овладеть основами Qt+QML и научиться обращаться с Ubuntu SDK." : [совет]. — С. 23. 
     Аннотация
     Как подключиться и участвовать в разработке для мобильной ОС Ubuntu Touch — создание и распространение программ для Ubuntu Touch. 
     Рекомендуемые к прочтению книги: Стив Макконнелл "Совершенный код", Энди Орам, Грег Уилсон "Идеальная разработка ПО. Рецепты лучших программистов", Роберт Мартин "Чистый код: создание, анализ и рефакторинг. Библиотека программиста", Марк Саммерфилд "Qt. Профессиональное программирование. Разработка кроссплатформенных приложений на С++".
     Материалы, с которыми стоит ознакомиться перед началом разработки приложений для Ubuntu Touch:
http://developer.ubuntu.com/apps/sdk/tutorials/ — руководство по использованию Ubuntu SDK
http://design.ubuntu.com — ключевые указания по дизайну
http://developer.ubuntu.com/apps/qml/tutorial/ — учебник по QML
http://developer.ubuntu.com/apps/cordova — руководство по управлению аппаратной частью устройства средствами HTML5 (если вы собираетесь создавать приложение на PhoneGap).
 

Паундер, Л. GPIO Zero: тренировка памяти

Паундер, Л. GPIO Zero: тренировка памяти [Текст] : [создание версии игры «Simon» для тренировки памяти] / Лес Паундер [Les Pounder]  //  Linux Format. — 2017. — № 3 (221), март. — С. 90-91. — (Linux Format. Пользователям Pi) (Raspberry Pi). — Прил.: "Скорая помощь" : [улучшения в последних версиях GPIO Zero]. — С. 90 ; "Разберемся с компонентами" : [компоненты устройства]. — С. 91.
     Аннотация
     Как с помощью GPIO Zero, Python, кнопок и светодиодов создать на базе Raspberry Pi под управлением Raspbian Pixel свою собственную игру в стиле 1980-х. 

Паундер, Л. МicroPython: светим рукой

Паундер, Л. МicroPython: светим рукой [Текст] : [введение в МicroPython] : [использование МicroPython и платы BBC micro:bit для создания интерактивной портативной перчатки] : [руководство] / Лес Паундер [Les Pounder]  //  Linux Format. — 2017. — № 3 (221), март. — С. 84-87. — (Академия кодинга) (МicroPython). — Прил.: "Платы MicroPython" : [плата с поддержкой языка MicroPython — pyboard (2013, разработчик Дэмьен Джордж), Wipy плата для приложений Интернета Вещей (IoT, https://www.pycom.io/solutions/py-boards/wipy1)] : [краткая характеристика]. — С. 85 ; "Растущее сообщество" : [деятельность сообщества МicroPython (http://forum.micropython.org) и итоги определенного периода на фестивале любителей платформы Electromagnetic Fields, также известном как EMF Camp]. — С. 87. 
     Аннотация
     Использование МicroPython — реализации Python 3 для микроконтроллеров — на получившем широкое распространение BBC micro:bit для создания управляемой жестами светящейся перчатки.
     Краткая справка о МicroPython и плате BBC micro:bit. 
     Реализация проекта создания интерактивной светящейся перчатки, которая будет реагировать на движения носителя, на базе платы BBC micro:bit при помощи МicroPython и простого редактора кода Mu (http://bit.ly/Mu4microbit). Также показано, как использовать MicroPython, создавая проекты, которые заливаются в micro:bit и могут использоваться снова и снова даже без подключения компьютера. 

Цукалос, М. Psutil: учебник для сисадминов

Цукалос, М. Psutil: учебник для сисадминов [Текст] : [кроссплатформенный модуль Python psutil в системном администрировании на примерах из практики] : [практическое руководство] / Михалис Цукалос [Mihalis Tsoukalos]  //  Linux Format. — 2017. — № 3 (221), март. — С. 80-83. — (Академия кодинга) (psutil). — Вэблиогр. "Скорая помощь": с. 82 (2 назв.). — Прил.: "Скорая помощь. Модуль psutil может заменить целый набор утилит командной строки, таких как ps, top, lsof, netstat, ifconfig, who, df, kill, free, nice, ionice, iostat, iotop, uptime, pidof, tty, taskset и pmap!" : [краткая информация]. — С. 80 ; "Скорая помощь. Для интерпретации результатов psutil необходимо хорошее понимание того, как работает Linux. Проще говоря, изучите необходимую теорию, а потом уж пользуйтесь psutil!" : [совет] ; "О процессах в Linux" : [суть концепции процессов Linux] : [краткое изложение]. — С. 81 ; "На рисунке показаны различные состояния процессов в Linux и способы перехода
из одного состояния в другое
" [Изображение] : [цвет. схема]. — С. 82 ; "Состояния процесса" : [почему в системах Unix и Linux предусмотрено несколько состояний процесса и комментарий к цветной схеме состояния процессов в Linux]. — С. 83. 
     Аннотация
     Применение кроссплатформенного модуля Python psutil, предоставляющего информацию о процессах и потреблении ресурсов, для изучения системы под управлением ОС Linux, чтобы стать продвинутым пользователем и системным администратором. 
     Psutil — назначение, основная задача, установка, методы получения требуемой информации и применение на примерах решения задач с помощью скриптов — узнать количество процессов на компьютере Linux, узнать время работы компьютера (эмуляция утилиты командной строки uptime), получение информации о заданном процессе по его идентификатору, получение информации о смонтированных файловых системах, получение информации о жестком диске, получение сведений о сети, получение информации о пользователях, которые вошли в систему на компьютере Linux, исследование процессов веб-сервера Apache; демонстрация построения графика с помощью matplotlib, программы для построения двумерных графиков, на основе результатов утилиты. 
     Рекомендуются книги о внутреннем устройстве Linux и Unix: 
     W. Richard Stevens and Stephen A. Rago "Advanced Programming in the UNIX Environment" (3rd edition, Addison-Wesley Professional, 2013).
     В. Ричард Стивенс и Стивен А. Раго "UNIX. Профессиональное программирование" (3-е изд., перевел А. Киселев, Символ-Плюс, 2014).
     "UNIX. Профессиональное программирование" — подробнейшее справочное руководство, которое на протяжении 20 лет помогает профессиональным программистам на языке С писать исключительно эффективный и надежный код. Стив Раго, коллега Рича Стивенса, вновь полностью обновил классический труд, сохранив точность и стиль оригинала. Новое, третье, издание охватывает современные ведущие платформы, отражает новейшие технические достижения и передовую практику и соответствует 4-й версии Single UNIX Specification. 
     Maurice J. Bach "The Design of the UNIX Operating System" (copyright © 1986 Bell Telephone Laboratories, Prentice-Hall, Englewood Cliffs, NJ). 
     Морис Дж. Бах "Архитектура операционной системы UNIX" (перевел с английского Крюков А. В., http://lib.ru/BACH/chap02.txt)
     Описание внутренних алгоритмов и структур, составляющих  основу операционной системы (ядро), и объяснению их взаимосвязи с программным  интерфейсом. 
     Хочу обратить внимание на книги B. W. Kernighan and R. Pike "The UNIX Programming Environment" (Prentice-Hall, Englewood Cliffs, NJ, 1984) и M. J. Rochkind "Advanced UNIX Programming" (Prentice-Hall, 1985), где описывается программный интерфейс UNIX.

Паундер, Л. Whiptail: меню как система

Паундер, Л. Whiptail: меню как система [Текст] : [создание системы меню] : [руководство по написанию кода скрипта оболочки Bash] / Лес Паундер [Les Pounder]  //  Linux Format. — 2017. — № 2 (219-220), февр.. — С. 90-91. — (Raspberry Pi) (Whiptail). — Прил.: "Скорая помощь"  : [графический интерфейс Zenity (https://help.gnome.org/users/zenity/stable) для Linux] : [краткая информация]. — С. 90 ; "Превращаем меню в команду" : [как сделать из скрипта системную команду] : [практический совет]. — С. 91.
     Аннотация
     Создаём собственную систему меню — скрипт оболочки Bash, — используя интерфейс под названием Whiptail, который добавляет к ряду основных команд терминала графический слой. Для создания проекта используем Geany, редактор, поставляемый с предустановленной последней версией рабочего стола Raspbian Pixel. Geany годится для кодирования на любом языке, и его функциональность расширяется за счет системы плагинов.