Читать дальше →
lexich @lexich
User
Разговариваем про PyQt4 — Посиделка вторая
5 min
6.3K
Добро пожаловать!
В прошлый раз мы обсуждали, как можно писать свое PyQt4-приложение, опираясь на логику сгенерированного программкой pyuic4 файла. Как это часто бывает — после написания топик получил много интересных и, что самое главное, содержательных комментариев, объясняющих, почему в отдельных случаях я прав, а в других неправ.
Самое любопытное состоит еще и в том, что обсуждение интересно как для питонистов, так и для приверженцев C++, ибо в данном случае разница невелика, в основном только незначительные вещи в синтаксисе. Все это потому, что PyQt4, по своей сути, является простой оберткой вокруг сишных Qt-классов, сохраняющей все названия и методы. Итак, вот вам чашечка чая или кофе, устраивайтесь поудобнее, давайте начнем нашу беседу.
+35
+18
Многопоточность, общие данные и мьютексы
5 min
58KВведение
При написании многопоточных приложений почти всегда требуется работать с общими данными, одновременное изменение которых может привести к очень неприятным последствиям.
Для блокировки общих данных от одновременного доступа необходимо использовать объекты синхронизации.
В данном топике рассмотренна методика работы с мютексами, существенно уменьшающая количество потенциальных ошибок связанных с созданием/удалением и захватом/освобождением.
Неудаление мютекса приводит к утечке памяти, незахват — к некорректным данным, а неосвобождение — к блокировке всех функций, работающих с общими данными.
Ниже рассматривается работа с мютексами в Windows и Unix, подобная идея может быть использована при работе с другими объектами синхронизации.
Эта идея является частным случаем методики «Выделение ресурса — есть инициализация (RAII)».
+26
Делаем Pidgin красивым как Adium
2 min
16KХочу поделиться своими наработками. Кто видел Adium на Mac OS X, тот знает, что он даже с дефолтными темами красивее Pidgin'a под всеми тремя поддерживаемыми им системами. Кроме того, для Adium'a расширений, icon и прочих паков огромное количество — смотреть здесь, а для Pidgin — кот наплакал, и даже то что есть централизованно нигде не выложено.
Далее я расскажу как прикрутить темы звуков, иконок статуса и смайликов, а также докбар темы от Adium'а к Pidgin'у, используя:
Мой конвентер тем Adium в темы Pidgin
Мой апплет для Cairo-dock:

UPD: Не поленитесь, проголосуйте тут за тикет, чтобы разработчики Pidgin темы трея, статус листа и протоколов прикрутили
Далее я расскажу как прикрутить темы звуков, иконок статуса и смайликов, а также докбар темы от Adium'а к Pidgin'у, используя:
Мой конвентер тем Adium в темы Pidgin
Мой апплет для Cairo-dock:

UPD: Не поленитесь, проголосуйте тут за тикет, чтобы разработчики Pidgin темы трея, статус листа и протоколов прикрутили
+21
Mozilla запускает сервис проверки «сторонних» дополнений Firefox
1 min
1.6KMozilla открыла новый онлайн-сервис Plugin Check, который поможет пользователям быстро проверить актуальность версии плагинов для Firefox. Речь не о тех плагинах, которые устанавливаются с сайта addons.mozilla.org (их Firefox и так без проблем обновляет по мере надобности), а о стороннем ПО других разработчиков (например, Flash или Silverlight), обновление которого нельзя выполнить по обычной для браузера схеме.
+21
Mac OS X в эмуляторе QEMU под Linux
2 min
27KЗдравствуйте хабровчане. Недавно понадобилось писать на Objective C под Mac OS X. Железо у меня не самое подходящее для всяких сборок, да и сидеть полностью в этой ОС религия не позволяет. Решил поставить Mac OS X в на виртуальную машину Qemu в Linux.
+84
wrap — shell скрипт для уведомления о завершении команды
1 min
3.9K
Добрый день, хабрасообщество!
Для меня всегда была проблемой потеря времени на ожидание завершения долгих команд, особенно компиляции исходников. Либо ты сидишь и ждешь, наблюдая за консолью, либо занимаешься чем-то другим, в процессе чего благополучно забываешь о том, что в свернутом терминале уже должно закончится что-то очень важное.
И вот недавно во время очередного ожидания окончания сборки я с экспертной помощью одного моего хорошего знакомого написал скрипт wrap, который отныне помогает мне не терять время в таких случаях
+79
Синхронизируем KDE4 Kontact и мобильник
2 min
1.6KМеня всегда волновал вопрос по поводу синхронизации контактов/календаря мобильника и операционки. Но всё никак не доходили руки. Решил заняться вопросом. На самом деле всё оказывается очень даже несложно. Приведу пример с Ubuntu 9.04 и мобильником Nokia.
+20
Скрипты Python против Bash — 2 или Tips & Tricks
4 min
14K
Довольно давно я написал статью, в которой приводил примеры основ работы с системой с помощью Python-скриптов. Из-за мельком оброненной фразы (достаточно взглянуть на название топика) статья получила довольно много комментариев холиварного и не очень характера. Кому-то, возможно, захотелось воспользоваться возможностями Python для администрирования (сейчас подобного рода тулзы на питоне как раз набирают популярность). Так почему бы не завлечь в свой стан еще немного единомышленников? :) Встречайте — небольшая подборка простых приемов для тех или иных целей.
+51
Что скрывает class Empty {}
3 min
9.2KЭто заметка о методах, которые C++ создаёт автоматически, даже если вы их не создавали.
Для кого эта заметка? Надеюсь, что она будет интересна начинающим программистам на С++. А опытным программистам позволит лишний раз освежить и систематизировать свои знания.
Для кого эта заметка? Надеюсь, что она будет интересна начинающим программистам на С++. А опытным программистам позволит лишний раз освежить и систематизировать свои знания.
+51
Information
- Rating
- Does not participate
- Location
- Россия
- Date of birth
- Registered
- Activity