Pull to refresh
11
0
zero @zero

User

Send message

Современные медиа-носители — что выбрать для большого файлового архива

Reading time1 min
Views2.7K
Все началось с того, что я задался вопросом — на чем выгоднее хранить коллекцию из тысячи фильмов. Поиск ответа привел к масштабному сравнению, и в результате получилась очень наглядная картина — относительная стоимость хранения для всех существующих сегодня типов носителей.

Я сделал так: взял недорогой и проверенный магазин (так мною любимый Ф-Центр) и выписал позиции для всех доступных видов носителей. То, что в их ассортименте отсутствовало, я добавил из других известных интернет-магазинов с тем же уровнем цен. Затем построил график удельной стоимости, в пересчете на 1 мегабайт. Чтобы не быть голословным, после графика приведена таблица с реальными позициями из прайса, а также некоторые выводы. Вот, что получилось:
Читать дальше →
Total votes 137: ↑133 and ↓4+129
Comments143

Социальные сети и формирование групп

Reading time9 min
Views4.2K
Примечание: ниже расположен перевод академического исследования «Social Networks And Group Formation», рассматривающего некоторые аспекты выделения групп и формирования связей в социальных сетях.

«Принцип рычага» в действии



Пользователи страдают от избытка информации: по любому вопросу сейчас доступно гораздо больше сведений, чем человек способен воспринять. Как результат, люди опираются на знания других людей. Среди типичных вопросов «как?», «что?» и «почему?» ключевым является вопрос «кто?» (и, соответственно, ответ на него). Это влечет за собой необходимость знакомства и поддержания контакта с людьми, которые может помочь в каждом конкретном случае.

В контексте заявленной проблемы важным становится также понимание образования, развития и использования социальных сетей в интернете. Социальная сеть — это «группа людей (или организаций, или других социальных единиц), связи в которой являются социальными, а именно: дружбой, совместной работой или обменом информации» (Garton и др., 1997). Хотя интернет и является основным источником избыточной информации, он также позволяет пользователю эффективно управлять своими социальными сетями и таким образом получать ту информацию, которая ему необходима.

Эта область знаний находится на пересечении таких наук, как информатика, социология и математика. Ее исследователи изучают использование социальных сетей в общественных и деловых целях при помощи информационных и коммуникационных технологий (information communication technologies (ICTs)), в том числе, интернета. В этот статье рассматривается, как социальные сети, используя преимущества таких технологий — особенно, интернет-технологий, — создаются, развиваются и приносят пользу.

Социальные сети в интернете являются обширным полем для исследовательской деятельности, и любой научный обзор будет так или иначе базироваться на наборе академических публикаций. Данная статья концентрируется на последних исследованиях в области центра сети (centrality), силы силе связей, индивидуальности, доверии, активности и преимуществах. Без сомнения, статья несколько сложна для понимания, но призвана донести до разработчиков несколько полезных идей по реализации веб-приложений, активно использующих социальные сети.

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

PyCon Украина (23-24 октября, Киев)

Reading time1 min
Views1.7K
Друзья питоноводы,

Для тех кто ещё не знает хочу сообщить радостную весть: 23-24 октября мы проводим в Киеве конференцию PyCon Ukraine посвящённую Python.

Конференция международная, и в ней будут принимать участие много иностранных гостей. Ожидается много интересных людей:
Стоимость участия всего 350 грн (примерно $44, или 1 367 руб.).

Регистрируйтесь на http://ua.pycon.org/.

Каждый участник получает бесплатную футболку PyCon Ukraine.


Читать дальше →
Total votes 38: ↑35 and ↓3+32
Comments15

PyCamp Киев

Reading time1 min
Views695
image30 января мы будем рады видеть вас на конференции PyCamp Kyiv.

В конференции примут участие python-разработчики украинских и российских команд, уже полученно более 250 заявок на участие.

Ожидаются доклады хорошо известных в питоновских кругах Юрия Юревича из Омска, Александра Шигина из Москвы; также среди докладчиков Михаил Кашкин(aka xen) из Днепропетровска, Александр Бельченко из Запорожья, киевляне Александр Соловьев (aka ingspree), Андрей Светлов, Серегей Кириллов (aka rushman), Андрей Мишковский, Владимир Пузанов (aka farcaller), Владимир Кириллов (aka darkproger), Дмитрий Кожевин. Также рассказать о новой IDE для Python — PyCharm планирует Дмитрий Жемеров (aka yole) из JetBrains.

Участие в конференции платное. Регистрационный сбор (на входе) составит 50 грн. По студенческому билету (любой страны) — 20 грн.

Конференция пройдет в помещении i-klass, по адресу ул.Ивана Мазепы, 34 (прежнее название улицы — ул. Январского Восстания), Киев.
Ориентиры — Киево-Печерская Лавра, музей Великой Отечественной Войны, музей «Мистецький Арсенал».
Ближайшие станции метро — Арсенальная (красная ветка), Печерская (зеленая ветка)
Карту можно посмотреть тут: http://www.i-klass.com/rus/contacts/how
Total votes 30: ↑26 and ↓4+22
Comments19

Highcharts: Красивые, динамические чарты за 5 минут!

Reading time2 min
Views66K
image
Highcharts — библиотека для создания чартов написанная на JavaScript, позволяет легко добавлять интерактивные, анимированные графики на сайт или в веб-приложение. На данный момент чарты поддерживают большое количество диаграмм линейных, круговых, колоночных рассеивающих и многих других типов.

Чарты работают со всеми популярными браузерами, включая Safari на iPhone.
Минимальная версия для IE составляет 6+. Также браузеры поддерживающие Canvas элемент, и в некоторых случаях SVG для графического рендеринга.
Читать дальше →
Total votes 139: ↑132 and ↓7+125
Comments49

Реинициализация кластера баз данных PostgreSQL

Reading time4 min
Views32K

Предмет описываемой проблемы



При работе с базой данных в PostgreSQL необходимо не забывать, в какой локали (locale) был инициализирован кластер БД — так в постгре называется директория (обычно /var/lib/pgsql/data), в которой хранятся данные всех баз этой установки PostgreSQL.

Читать дальше →
Total votes 39: ↑36 and ↓3+33
Comments11

Простой способ восстановить удаленные файлы

Reading time3 min
Views135K
Поделюсь небольшой находкой, маленькой программой для восстанавления удаленные файлы. Какое-то время назад было очень нужно, но программы Scalpel, тогда не нашел, к сожалению. На мой взгляд, из всех известных мне способов — это один из наиболее простых. Scalpel появился из проекта Foremost.

И так любителям rm -rf посвящается:

Читать дальше →
Total votes 65: ↑62 and ↓3+59
Comments29

IPython: замена стандартного Python shell

Reading time5 min
Views56K
Python shell достаточно удобная вещь для тестирования и изучения возможностей языка, кто-то даже использует его в качестве калькулятора(что между прочим весьма удобно), в этом цикле статей я бы хотел рассказать о IPython — замене стандартного Python shell'а, который предоставляет расширенный список возможностей, что делает работу с ним более эффективной.

Читать дальше →
Total votes 54: ↑50 and ↓4+46
Comments16

Используем 2+ провайдера (вторая часть)

Reading time5 min
Views27K
Продолжим настройку нашего шлюза, про который я говорил в предыдущей статье. Напомню, там мы настроили правила маршрутизации, теперь нам надо заняться iptables. Сейчас мы настроим сеть состоящую из шлюза и сервера. На шлюзе будет работать SSH и DNS, а сервер у нас будет виндовый на нем у нас RDP и SMTP. Сеть будет настроена таким образом, что через любой из внешних айпишников мы сможем подключаться к любому из серверов, а SMTP сервер будет выходить наружу через основного провайдера.
Читать дальше...
Total votes 34: ↑29 and ↓5+24
Comments10

Объединение пропускной способности двух интернет каналов и простая отказоустойчивость

Reading time5 min
Views84K
Есть у меня своя домашняя сеть, с linux сервером, и подключена она к интернет с помощью беспроводного соединения — на крыше антена и роутер, к серверу подключено витой парой. Все вобщем то неплохо, канал с гарантированой полосой в обоих направлениях, постоянный IP адрес, довольно надежный — падает редко. Но вот есть у него один минус — цена кусается.
Ценовая политика провайдера построена так, что для того, чтоб увеличить скорость в два раза — платить тоже надо в два раза больше. А скорости хочется больше! И надежности тоже — как то во время сильных заморозков роутеру стало «холодно» и интернета вечером и ночью небыло.
Поэтому задумал я провести домой второй интернет-канал, выбар пал на одного известного на Украине провайдера, предоставляющего доступ по ADSL. У него и тарифы недорогие и модем ADSL стоит недорого. Так я и сделал, подключился, воткнул ADLS модем в свич — все работает. Но от старого доброго беспроводного канала отказываться мне нехотелось, поэтому задумал я сделать так, чтоб интернет трафик шел сразу по обеим каналам, так, чтоб я мог воспользоваться суммарной пропускной способностью. Да еще и чтоб при падении одного канала всю нагрузку на себя брал другой.

Читать дальше →
Total votes 105: ↑100 and ↓5+95
Comments106

Типы данных, паттернг матчинг и функции

Reading time5 min
Views9.9K
Сегодня, как обещал, вкратце расскажу про пользовательские типы данных, определения функций и сопоставления с образцом.

Предыдущие статьи:
Основы
Последующие статьи:
Классы типов, монады
Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments9

Использование драйвера Yota под Linux

Reading time2 min
Views8.7K
C начала бета-тестирования сети Yota и по настоящий момент единственной официально поддерживаемой ОС является Windows. Обходить это препятствие можно с помощью VirtualBox или VMware, но в этой статье вы найдете руководство по использованию более экономичного варианта — драйвера madwimax.
читать дальше
Total votes 57: ↑55 and ↓2+53
Comments25

Firebug: Part 2 — commands

Reading time2 min
Views1.7K
Это продолжение серии статей про Firebug.

Весь цикл: Console, Commands, Debugging ,Profiling

Firebug имеет приятную особенность — собственные функции.
Некоторые из них вам уже встречались, например в Prototype.
И чтобы вы не сомневались в том, что все честно, то мы продолжим мучать домашнюю страничку Firebug, т.к. на ней нет подключенных js файлов.

Читать дальше →
Total votes 57: ↑55 and ↓2+53
Comments11

Стать мэинтейнером. Часть первая

Reading time5 min
Views6.1K
Когда я прочитал эту и эту статьи, мне захотелось рассказать, как человек может внести свой маленький вклад в распространение своей любимой программы среди пользователей всеми любимой операционной системы. Полистав Убунтариум, я увидел, что статей на эту тему вроде бы не было, поэтому я решил смело приняться за дело.
(Части 2, 3 и 4)
Почитать дальше
Total votes 51: ↑50 and ↓1+49
Comments26

Стать мэинтейнером. Часть вторая

Reading time9 min
Views5K
На второй день мы уже пообвыклись с идеей, что в дебиане и убунту любят действительно свободное программное обеспечение и уже начинаем задумываться о том, как бы нам начать собирать свой первый пакет. Но стоп! А какими программами мы вообще умеем пользоваться? Что?! OpenOffice.org Writer и Kopete? Не, ну так дело не пойдёт. Сегодня я расскажу вам обязательный минимум, который понадобится каждому будущему сопровождающему пакеты (я решил принять этот термин, оставив заморское слово «мэинтейнер» только в заголовке, как дань первой статье), да и просто любому убунтоводу пригодится в жизни.
(Части 1, 3 и 4)
Какие тайны нас ждут под хабракатом?
Total votes 50: ↑49 and ↓1+48
Comments79

Memoization в Python

Reading time1 min
Views17K
Memoization – свойство функций сохранять (кешировать) результаты вычислений, дабы не вычислять в последствии повторно.

Эта технология оптимизации позволят достичь прироста скорости работы за счет потерь в свободной памяти.

Допустим, у нас есть некая функция bigfunc, результат которой зависят только от переданных в нее аргументов, а сложность вычислений достаточно большая. Естественно нам не хотелось бы производить вычисления при каждом вызове bigfunc если она уже вызывалась ранее с теми же параметрами. Тут то нам на помощь и приходит memoization.

Для python декоратор для функции будет выглядеть следующим образом:

import cPickle
def memoized(func):
    memory = {}
    def memo(*args,**kwargs):
       hash = cPickle.dumps((args, sorted(kwargs.iteritems())))
       if hash not in memory:
           memory[hash] = func(*args,**kwargs)
       return memory[hash]
    return memo

Далее, нам достаточно объявить bigfunc как

@memoized
def bigfunc(…):
…

Или переопределить, если она уже объявлена:

bigfunc = memoized(bigfunc)

Декоратор, объявленный в начале статьи, работает только с пиклезуемыми объектами. Если ваша функция работает с непиклезуемыми объектами – вы можете заменить

hash = cPickle.dumps((args, sorted(kwargs.iteritems())))

на

hash = (tuple(args), frozenset(kwargs.items())

но вы потеряете возможность работы с mutable объектами.

Декоратор можно легко модифицировать, для ограничения количества закешированных элементов.
Total votes 57: ↑51 and ↓6+45
Comments17

Памятка дизайнеру сайтов

Reading time10 min
Views245K
Вторая версия статьи, расширенная и дополненая.

Большая часть готовилась для моего выступления на «РИТ: Клиентские технологии», куда я, к сожалению, не доехал.

 

Памятка дизайнеру сайтов

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

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

Читать дальше →
Total votes 453: ↑444 and ↓9+435
Comments231

25 самых опасных ошибок в программировании

Reading time8 min
Views2.8K
Всем привет.
Под катом — перевод статьи Джеффа Атвуда, в которой он приводит список 25 наиболее опасных ошибок в программировании от Common Weakness Enumeration со своими комментариями.

Сразу хочу сказать. Большинство ошибок, перечисленных там — общеизвестны и многим набили оскому. Несмотря на это, мы продолжаем вновь и вновь наступать на те же грабли. И я в том числе.
Однако, поехали
Total votes 101: ↑85 and ↓16+69
Comments34

Скрипт для рекурсивного сравнения директорий

Reading time3 min
Views7.7K
В этом посте хочу поделиться с вами простым, но весьма полезным скриптом на питоне, который я написал для сравнения директорий тестового и рабочего проектов Django.

Читать дальше →
Total votes 29: ↑20 and ↓9+11
Comments27
1

Information

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