Мы с Vass записали и выложили третью серию подкаста «Заметки о Qt».
На этот раз у нас в гостях Gorthauer87
Сам подкаст на rpod.ru — qt-notes.rpod.ru/274520.html
Читать полностью »
Рубрика «Программирование» - 1041
Подкаст «Заметки о Qt» s01e03
2012-05-01 в 12:18, admin, рубрики: c++, Digia, KDAB, playbook, QML, QNX, qt, qt components, qt quick, Qt Software, qt5, QtCreator, подкасты, Программирование, метки: c++, Digia, KDAB, playbook, QML, QNX, Qt, qt components, qt quick, qt5, qtcreatorЗадача Санта-Клауса и практическая логистика
2012-04-30 в 17:27, admin, рубрики: iOS SDK, objective-c, xcode, Алгоритмы, параллельные вычисления, потоки, Программирование, процессы, разработка под iOS, метки: iOS SDK, objective-c, xcode, параллельные вычисления, потоки, Программирование, процессы
Известно, что только 5% программистов в состоянии решать задачи многопоточного программирования. А в месте с тем, с ростом количество ядер даже у мобильных устройств потребность в использовании нескольких нитей возрастает многократно. С каждым днем появляются как новые языки программирования, специально предназначенные для решения специфических задач параллельного программирования, так и в уже хорошо известных и широко применяемых решениях появляются методы, которые не только облегчают понимание, но и сводят решение задачи к своеобразной поэзии программного кода.
Читая книгу “Идеальный код” под редакцией Энди Орама и Грега Уилсона мне довелось натолкнуться на интереснейшую задачу в главе посвященной параллельной обработке (гл. 24. стр. 444). В ней автор, Саймон Пейтон Джоунс, приводит решение на языке Haskell. Там же он утверждает, что существуют решения задачи Сата Клауса для языков Ada95 и Polyphonic C#. В силу профессиональных интересов несколько ранее мне приходилось обсуждать с коллегами возможности многопоточной Apple реализации для языка Objective-C.
Считается, что программировать нужно на уровне абстракций, а не “на языке”, но с тем же успехом можно искать красоту поэзии в эмоциях, а не в изяществе слога, выраженного посредством языка. Под катом предлагаю вместе со мной спеть песню тем, для кого языковая выразительность не пустой звук, а мелодия, будоражущая воображение.
Читать полностью »
Читая официальный twitter-канал языка D, попал на интересный пост о новом движке на D (vibe.d) для разработки web-приложений ну или даже web-сервера.
Стало интересно — полез смотреть и разбираться!Читать полностью »
Сбор данных с регистрирующих устройств
2012-04-28 в 0:07, admin, рубрики: последовательный порт, Программирование, сбор данных, я пиарюсь, метки: последовательный порт, сбор данныхПриветствую всех обитателей хабра! Я бы хотел поделиться своей идеей, которую мне частично уже удалось реализовать. Но я не могу оценить значимость такого рода проекта, и мне бы хотелось услышать Ваше мнение и Вашу конструктивную критику по этому поводу.
Краткая предыстория
Придя на родной завод инженером в группу АСОДУ, на меня одной из задач легла обязанность сопровождать механизм сбора данных с различных видов регистрирующих устройств. Замечу, что на заводе не плохой «зоопарк» такого рода оборудования. Как известно, для регистрирующих устройств, всегда идёт специализированное программное обеспечение, которое позволяет осуществить его конфигурирование и опрос. Но далеко не со всеми видами приборов идёт программное обеспечение, с помощью которого можно получить данные с прибора и поместить их в общую среду для дальнейшей обработки и архивирования. Так вот такая проблема была решена ещё до меня, путём написания одной программы, которая бы опрашивала все приборы, имеющиеся в наличие, и выгружающая собранные данные в единую базу данных. Но проблема заключалась в том, что при появлении нового типа прибора постоянно приходилось перекомпилировать данную программу, кроме этого она жёстко привязана с конкретной СУБД. Не имея под рукой ни конфигуратора, ни какого-либо тестера, всё это приводило процесс сопровождения в сплошные муки. Вот тогда и появилась идея реализовать некую систему, которая максимально бы упрощала работу по сопровождению механизма сбора данных. Для такой системы мной были выдвинуты следующие требования:Читать полностью »
IDE нового типа или Open-source проект Light Table
2012-04-27 в 8:58, admin, рубрики: IDE, light table, open source, Программирование, разработка, редактор кода, метки: IDE, light table, open source, редактор кодаСегодня пришла рассылка с Kickstarter «Projects We Love». Я решил посмотреть, что нового появилось и меня сразу привлек ярлычок Open-source. Я перешел по ссылке почитать, что такого интересного и нового предлагает автор проекта и мне понравилось. Решил поделиться с хабром.
Light Table
Последнее время в области программного обеспечения есть довольно существенный сдвиг в сторону упрощения пользовательских интерфейсов. На мир средств разработки это распространяется в меньшей степени. Наоборот, непосредственно рабочее пространство все больше сокращается, обрастая дополнительными панелями свойств и навигации.
Уже давно в воздухе витают идеи, что мы можем сделать IDE лучше и удобнее. Какие же это идеи?
- Вы не должны нигде искать документацию и тратить на это время
- Файловая структура — не лучшее представление для кода
- Редактирование должно быть доступно где угодно и редактор должен показывать не только код
- При любом изменении мы должны видеть результат мгновенно
- Мы должны видеть больше информации о связанных кусках кода
Давайте посмотрим как эти идеи воплощает Light Table.
Читать полностью »
Оптимизация в OpenMP
2012-04-26 в 19:07, admin, рубрики: openmp, математическое моделирование, оптимизация, параллельные вычисления, Программирование, метки: openmp, математическое моделирование, оптимизация, параллельные вычисленияПостепенное развитие проекта шло своим чередом.
На часть полученных по гранту средств было произведено обновление парка личной вычислительной техники. В итоге расчёты сейчас осуществляются не на многострадальном ноутбуке, а на вполне приемлемой машине с псевдовосьмиядерным Intel Core i7-2600 и 8 Gb оперативной памяти на борту. А разработка производится под Visual Studio 2005 (получена по программе DreamSpark) с подключенной триал-версией Intel FORTRAN Compiler 12 / Intel Parallel Studio XE 2011 (всё это крутится под Win 7). В качестве параллельного API задействован OpenMP.
Ввиду явно заметного роста доступных мощностей, обнаружились и новые негативные особенности написанного ранее алгоритма. Прежде всего, с марта месяца была проведена глубокая оптимизация вычислительной части кода, что позволило выиграть в производительности около 70%. Такой прирост обеспечила прежде всего ликвидация операций деления, а также увеличение количества предвычисляемых переменных.
Pastie.org может закрыться
2012-04-26 в 10:32, admin, рубрики: pastie.org ddos, Программирование, разработка, метки: pastie.org ddos Только что, зайдя на свой любимый сервис хранения фрагментов кода, обнаружил такое вот грустное сообщение:
Sorry, Pastie is offline.
pastie.org was DDOSed twice last night. To protect it's network and other customers Rails Machine has decided to no longer host and sponsor the site.
I did not see this coming and did not expect my hosting company to just pull the plug so quickly.
I'm in the middle of RailsConf 2012 right now but working on a migration plan to deal with this.
Hang in there, we'll be back.
Под катом перевод
Читать полностью »
Pastie.org отключен
2012-04-26 в 10:32, admin, рубрики: pastie.org ddos, Программирование, разработка, метки: pastie.org ddos Только что, зайдя на свой любимый сервис хранения фрагментов кода, обнаружил такое вот грустное сообщение:
Sorry, Pastie is offline.
pastie.org was DDOSed twice last night. To protect it's network and other customers Rails Machine has decided to no longer host and sponsor the site.
I did not see this coming and did not expect my hosting company to just pull the plug so quickly.
I'm in the middle of RailsConf 2012 right now but working on a migration plan to deal with this.
Hang in there, we'll be back.
Под катом перевод
Читать полностью »
Кодим безумный пассивный сниффер в виде модуля для Python
2012-04-26 в 8:01, admin, рубрики: python, Программирование, Сетевые технологии, сокеты, метки: c++, python, sniffer, сокеты
Сразу скажу: то, чем мы с вами будем здесь заниматься, не претендует, скажем, на какую-то промышленную применимость. Более того, я признаю, что мой код в данном примере может быть ужасен, страшен и ненужен. И тем не менее — почему бы не поперехватывать пакеты посреди недели? Так, слегка.
Итак, сегодня мы вот что наколдуем:
1. Реализуем простейший пассивный перехватчик пакетов для TCP и UDP
2. Засунем его в C-библиотеку в виде расширения для Python
3. Приделаем ко всему этому интерфейс итератора, дабы байты сыпались, как из рога изобилия
4.…
5. PROFIT!Читать полностью »
Многоклиентский сетевой протокол на C#
2012-04-25 в 18:05, admin, рубрики: .net, Программирование, протокол, сетевой, метки: c++, протокол, сетевойПредисловие
Занимаюсь программированием, по возрасту не имею возможности обучатся этому в вузе, а тяга к изучению есть. Хочу представить Вашему вниманию одну из моих недавно написанных программ, хотелось бы узнать свои недоработки в ней, какие вещи можно было бы улучшить и в какую сторону двигся, что изучать для этого.
Программа представляет собой многоклиентский сетевой протокол, который можно было бы использовать в любом клиент-серверном приложении, настраивая только пакеты и их обработчики.