КМБ. Некоторые особенности клонирования объектов в Java

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


Читать дальше →

Меню для Arduino

Мне всегда нравились микроконтроллеры и компьютеры. С компьютером проще, были бы деньги, а вот с микроконтроллерами немного сложнее. Моделей много глаза разбегаются, да и в свободной продаже у нас долгое время не встречалось. Раньше были попытки научится с ними работать, но как то не сложилось. И ATtiny12L отправилась в дальний яшик. Встречались мне новости по конструкторам на микроконтроллерах но на тот момент заказать было его невозможно, да и дорого. Гдето на глаза попалась Arduino и он ли она меня заинтересовала. Немного подумав решил заказать сие чудо и шилд для него в виде ЖК экрана с кнопочками, потому как моргать светодиодами было скучно, а делать что то свое лень.

image
Читать дальше →

Абстрактные размышления о взаимодействии социальных сетей

Несмотря на то, что для довольно большого количества пользователей интернет на 90% состоит из одного лишь ВКонтакте (Facebook, Одноклассники — нужное подчеркнуть), я думаю, никто не строит иллюзий насчет того, что какая-либо социальная сеть (по крайней мере в ближайшем будущем) наберет достаточное количество пользователей и обрастет таким функционалом, что все интернет-сообщество дружно решит, что «Скрипач не нужен, родной» и откажется от всех остальных социальных сетей/сервисов. Во многом такое разделение даже удобно.

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

В качестве конкретных примеров я буду рассматривать Twitter, Facebook/ВКонтакте и Last.fm.

Читать дальше →

Минимизация булевых функций методом Гиперкубов

В этой статье я расскажу про достаточно важную в информатике и теории автоматов тему – минимизацию булевых функций. Этим вопросом задавались пожалуй все, кто изучал или сталкивался с данной тематикой.
Существует немало методов, однако наибольший интерес представляют те, которые могут быть формализованы, а соответственно запрограммированы без особых сложностей. А также работающие с произвольными булевыми выражениями. Идеального метода не придумано, все имеют те или иные слабые и сильные качества. Я остановлюсь на так называемом методе Гиперкубов — Методе Квайна.

Метод, к сожалению, применим только для Совершенных ДНФ, поэтому при большом числе переменных использование затруднено гигантским выражением СДНФ.

Читать дальше →

XML парсер (parser) RSS-лент

XML парсер (parser) RSS-лент

Как говорится: «xml это такая штука, от которой всем очень хорошо ...» — но от этого не становится легче. Есть такой стандарт XML документов, как RSS. Данная заметка посвящена тому, как можно парсить RSS-фиды средствами PHP.

Читать дальше →

Deb пакеты Ubuntu с зависимостями для «offline установки»

Всем привет.

Вступление

При распространении софта в виде deb пакетов для Ubuntu может возникнуть ситуация, когда нужно поставить софт на компьютер, на котором отсутствует доступ в интернет ("offline установка").

Очевидно, что нужно выявить зависимые пакеты и выкачать их. Причем для установки на «чистую машину» нужно получить полный комплект зависимостей, включая возможные подзависимости зависимостей и т.д. При этом нужно выкачать минимальный набор необходимых пакетов относительно «чистой машины». Также нужно учитывать, что в зависимости от версии Ubuntu, установленной на «чистой машине», список пакетов может меняться. Плюс хотелось бы чтобы все это уместилось в shell скрипт.

Найденные мной в интернете способы решения проблемы "offline установки" не решали данную задачу. Поэтому и был написан данный топик. Также, данная статья показывает, насколько велики возможности, которые предоставляет Linux разработчику и с какой легкостью решаются достаточно сложные задачи.

Читать дальше →

Поднимаем http-репозитарий для git

После покупки ноутбука и организации небольшой домашней сети появилась проблема — как синхронизировать проекты на разных комьютерах? Решение очевидно — сделать из одного из них центральный хаб.

Git предоставляет несколько способов организации общего доступа к хранилищам. Сначала я попробовал способ с gitosis — не понравился. Там используется довольно мутный механизм авторизации и организации хранилища. В общем, остановился на Apache + gitweb.

Читать дальше →

Тонкости создания городского портала

Итак, уважаемые сайтоделы уже состоявшиеся и только начинающие.

Сегодня, после столь жаркой баталии о том, каким должен быть сайт, а уж тем более ПОРТАЛ для людей, я и решил собрать несколько тезисов, которые как я считаю основополагающими для успешности проектов такого рода.

Читать дальше →

ZABBIX: сделаем жизнь красивее

PHP
Здравствуйте, с недавнего времени в нашей конторе внедряется система мониторинга ZABBIX. Всем она хороша да прекрасна (споры можно везти долго на эту тему), только вот нас никак не устраивало две вещи:
1. Хотелось, чтобы на странице «Последние данные» каждый элемент данных подсвечивался бы цветом в зависимости от статуса триггера. Это очень наглядно.
2. На графиках вертикальная ось по умолчанию отображает только цифры (это конечно логично), но не очень удобно, когда смотришь, к примеру, пинг узла… Можно еще привыкнуть к нулям и единицам там, но вот значения в виде 0.1, 0.2, 0.3… совсем выглядят дико. Поэтому мы и задались целью сделать так, чтобы лишние значения не отображались, а нужные показывались, к примеру, «Доступен» или «Не доступен».

Как у нас это получилось смотреть под хабракатом.

Читать дальше →

Рабочее место для начинающего радиолюбителя

Предисловие


Добрый день. В жизни каждого начинающего радиолюбителя, был период становления. В моей жизни этот период совпал со школьными годами. Однажды, бороздя просторы нашей сельской библиотеки, я наткнулся на занимательный журнал «В помощь радиолюбителю» (приложение к журналу «Радио»). Журнал мне показался интересным, но совершенно непонятным. Из курса физики я знал, что существуют полупроводниковые элементы, с помощью которых можно создавать различные устройства, и я считал, что данная тематика только для специалистов. Но ошибался. Как, оказалось, существует целое движение увлеченных электроникой людей. И мне захотелось стать одним из них, перечитав десятки журналов и смежных электронике книг, решил попробовать. Первое, что было собрано, мультивибратор на 2 транзисторах. Это казалось чудом, чем-то волшебным. Меня охватила гордость. Устройство было собранно кустарным способом, без проведения каких либо расчетов, без замысловатой разводки, пайкой «навесным» способом. Но мне показалось, что иметь всего лишь паяльник и «прямые руки» мало. Задумался о том, как правильно организовать рабочее место, что нужно иметь в первую очередь.
Читать дальше →