В статье, написанной как учебное пособие, описано создание клиент-серверных приложений, начиная от простейшего эхо-сервера, и заканчивая удаленным доступом к экземпляру произвольного класса с передачей исключений с сервера на клиент (что существенно упрощает отладку).
Удаленный доступ к экземпляру класса реализован через тонкий клиент (оболочку) и перегрузку доступа к атрибутам класса, что вообще говоря может иметь гораздо более широкое применение чем создание сетевых приложений.
В статье рассматривается использование ПО Network UPS Tools для управления питанием с одного UPS для нескольких серверов и не только. Описан веб-интерфейс и подключение к Cacti.
Утилита sudo позволяет пользователям выполнять команды с полномочиями привилегированного пользователя. В sudo имеются возможности, которыми редко пользуются администраторы. В данной статье рассказывается о некоторых подобных возможностях, таких как файлы, тайм-ауты и логические операции.
Вышла обновлённая редакция книги «Работа с Postgresql: настройка, масштабирование». В книге исследуются вопросы по настройке производительности Postgresql, репликации и кластеризации. Изобилие реальных примеров позволит как начинающим, так и опытным разработчикам быстро разобраться с особенностями масштабирования Postgresql для своих приложений. Версия книги 2.0.0 beta. Пока что только сконвертирован pdf. Все правки и замечания автор просит указывать на этой странице - https://github.com/le0pard/postgresql...
Книга доступна в электронном виде под лицензией CC-BY-NC.
Несомненно, заложенная в архитектуру языка Perl гибкость привела к естественному накоплению кода, который технически работает, однако очень хрупок при изменениях и труден для понимания. Проблема может усложняться тем, что авторы кода уже недоступны, так как перешли на работу в другой отдел или компанию. Помимо этого, требования к вашему продукту могли поменяться, либо оказалось, что новая версия используемого вами API доступна только на Python. В этот момент начинается эпохальная работа по переносу кода Perl на Python.
В данной статье вы познакомитесь с некоторыми теоретическими аспектами работы с унаследованным кодом, в том числе узнаете, чего делать не стоит.
Если вы достаточно длительное время используете UNIX/Linux, то у вас уже вероятно имеются хорошо «заточенные» файлы конфигурации Bash, Vim, Emacs и других приложений. Копирование вручную этих файлов между всеми системами, с которыми вы работаете, может быть весьма утомительным процессом. Git может существенно облегчить ваши мучения из-за копирования ваших конфигурационных файлов на новые компьютеры.
Опубликован перевод официальной документации по языку Go «Написание веб-приложений», в которой рассмотрено создание веб-страниц, использование шаблонов и регулярных выражений.
С каждой новой версией мобильные устройства и платформы предоставляют все больше возможностей и функциональности, а важные анонсы ведущих поставщиков зачастую разделяют всего несколько месяцев. Последние новости в основном связаны с функциями пользовательского интерфейса (такими как расширенные multitouch-возможности и технология Adobe® Flash®) и усовершенствованиями аппаратуры (быстродействие процессора, емкость памяти и т.п.). Но решающим фактором остается контент. Контент – или, в более общем смысле, данные – постоянно перемещается между приложениями, серверами, мобильными устройствами и пользователями. Без возможности работать с данными смартфоны, такие как Apple iPhone и Google Android, становятся просто слишком дорогими и малоэффективными сотовыми телефонами.
В этой статье из двух частей рассматриваются методы работы с двумя наиболее распространенными форматами данных, используемых в Интернете – XML и JavaScript Object Notation (JSON) – на платформе Android. Эта первая часть охватывает основы XML и JSON и показывает, как построить Android-приложение, которое анализирует и отображает информацию об обновлении состояния Twitter в обоих форматах.
Вышел свежий, 7-й номер журнала «Практика функционального программирования». В новом номере вы можете прочитать следующие статьи:
«Язык РЕФАЛ — взгляд со стороны». Бойко Банчев расскажет о сущности, истории и современном состоянии языка РЕФАЛ — детища Валентина Фёдоровича Турчина; языке незаслуженно подзабытом, но на десятилетия опередившем своё время и пустившем корни во множество современных ЯП (как, например, Mathematica).
«Circumflex — веб-фреймворк на Scala comme il faut». Александр Темерев даст урок использования этого «обезжиренного» и гибкого веб-фреймворка, написанного на Scala российской командой во главе с Борисом Окунским.
«Разработка алгоритма обнаружения движения в среде программирования Mathematica». Вадим Залива расскажет об опыте прототипирования такого алгоритма при разработке iPhone-приложения iSentry. Хотя Mathematica и не является в полном смысле этого слова функциональным языком программирования, но программирование в этой среде задействует множество не очень распространенных пока в мейнстриме, но очень важных и заслуживающих внимание средств: интерактивный интерпретатор, гомоиконность (единство кода и данных), сопоставление с образцами, wholemeal programming (оперирование целыми структурами данных, а не их частями), акцент на «чистое» программирование, dataflow programming (Manipulate) и т.п.
«Как написать LDAP-сервер на Erlang» и «Как написать LDAP-сервер на Си». Максим Сохацкий и Олег Смирнов обменяются любезностями со Львом Валкиным: Максим и Олег похвалят Erlang за то, что на нем можно за 20 минут написать LDAP-сервер, а Лев докажет, что дело тут вовсе не в Erlang.
«Продолжения в практике». Алексей Вознюк (человек, написавший на LISP самую быструю программу к конкурсу в ПФП №3) расскажет об использовании продолжений для упрятывания асинхронности кода за обыкновенным «последовательным» синтаксисом. Эта тема особенно актуальна в контексте взрывного роста Веба и сетевых сервисов, но интересна и потому, что открывает целый пласт неожиданных структур управления. Рекомендуем перед прочтением ознакомиться с недавно опубликованным в «Библиотечке ПФП» переводом статьи «Паттерны использования call-with-current-continuation».
«Суперкомпиляция: идеи и методы». Илья Ключников, занимающийся суперкомпиляцией в Институте прикладной математики им. М. В. Келдыша, расскажет о суперкомпиляции (кстати, изобретенной также В. Ф. Турчиным в контексте языка РЕФАЛ), построив поразительно компактный и понятный суперкомпилятор простого языка, и покажет, что она применима не только для удивительно мощной оптимизации многих классов программ, но имеет и другие неожиданные применения.
Кроме этого, журнал доступен и в печатном виде (200р, доступны и все предыдущие номера, комплекты еще дешевле, доставка куда угодно, в Москве можно самовывозом).
Системы управления базами данных, не использующие SQL (или NoSQL-СУБД), постепенно выходят на первый план в эру Web 2.0, поскольку они эффективно решают проблемы масштабируемости. Несмотря на то, что эти СУБД еще находятся на заре своей популярности, они уже используются такими крупными компаниями, как Google и Facebook. Базы данных, не имеющие схем, кардинально отличаются от традиционных реляционных БД, однако работа с ними на практике оказывается проще, чем кажется, особенно если проектирование начинать с разработки модели предметной области, а не реляционной схемы.
В данной статье рассматривается пример, относящийся к электронной торговле, но подобные технологии можно использовать и для других предметных областей, чтобы обеспечить собственный Web-сайт информацией с других ресурсов. Подобная интеграция позволяет увеличить количество клиентов основного ресурса. Также, если заключить договор со сторонним сайтом, то действия пользователей можно «монетизировать», получая определенную выплату каждый раз, когда покупатель, находясь на основном сайте, решает приобрести какой-либо товар, поставляемый с сайта Amazon. В этом случае Web-служба позволяет использовать сайт Amazon (или подобный) не только для расширения списка доступных товаров, но и для осуществления покупок.
Выпущен третий номер приложения к электронному журналу UserAndLINUX, ориентированное на системных администраторов. Издание содержит такие рубрики, как «Console», «Hi-tech», «Programming», «Other». Среди материалов, вошедших в номер:
Настройка PPPoE с шейпингом трафика для небольшой сети.
Инструкция по серверу Ejabberd. Установка и настройка Ubuntu Server 10.04 LTS.
Управление несколькими компьютерами одной клавиатурой и мышью.
Vim: необходимый минимум знаний.
«А знаете ли вы, что ...?» или несколько простых приёмов для работы с консолью.
Платформа Django предлагает разработчикам множество функциональности: зрелую стандартную библиотеку, активное сообщество пользователей и все преимущества языка Python. В то время как другие инфраструктуры разработки веб-приложений могут предложить то же самое, уникальным достоинством Django является её встроенное приложение администрирования.
Узнайте, как расширять приложение администрирования, не прибегая при этом к модификации исходного кода.
В этой статье будут объединены предыдущие наработки и рассмотрены основные принципы построения системы управления содержимым (CMS). Такая система позволит управлять хранением, индексацией и поиском текстового содержимого, а также мультимедийного контента.
Вся описательная часть сопровождается примерами кода на PHP, который тестировался на IDE EasyEclipse for LAMP со встроенным просмотрщиком результатов работы PHP. Приводимые скрипты имеют емкие комментарии и описательную часть, достаточную для быстрого усвоения и дальнейшей адаптации проекта к существующим задачам.
Язык Go ещё очень молод и динамично развивается. Несмотря на то, что язык отлично документирован на golang.org, чувствуется недостаток книг.
На сегодняшний день «Learning Go» — наиболее объёмная книга по этому перспективному языку программирования, хотя, как пишет автор, Miek Gieben, это скорее слепок текущего состояния, чем её финальная версия.
Операционная система Linux — само воплощение гибкости и расширяемости. Возьмём, к примеру, виртуальный коммутатор файловых систем (virtual file system switch, VFS). Он позволяет создавать файловые системы на различных устройствах: традиционных дисках, USB флэш-накопителях, в памяти, на других устройствах хранения. Можно даже встроить файловую систему в контекст другой файловой системы. Давайте узнаем, что же делает VFS столь мощным инструментом, и рассмотрим его основные интерфейсы и процессы.