LINUX.ORG.RU

Сообщения dimv

 

Ищу проект на clojure

Форум — Job

Последние полтора года изучал и писал на clojure. Здесь можно смотреть и оценивать код: https://github.com/vdim/yz

Интересует проект на данном языке. Могу тратить 20-30 часов в неделю.

В целом интересует: функциональное программирование, статистика, визуализация данных, NoSQL, большие объемы данных.

Чуть-чуть работал с erlang (книга «Programming Erlang» и мелкая задача по обработке гигабайтов данных на многоядерной машине).

Английский на уровне чтения технической документации.

 , ,

dimv
()

[loroogle] gramota.ru в offline

Форум — Talks

Хочется gramota.ru в offline, чтобы ввел слово, а оно тебе как правильно писать (и орфографически, и фонетически плюс привел синонимы и антонимы, и еще и дал трактовку). Для stardict нашел только толковый Даля. Может есть какое спец. ПО? Может не там словари для stardict искал?

 

dimv
()

[Lisp] Hello-world

Форум — Development

Осваиваю Lisp. В качестве первого упражнения решаю следующую задачу. Имеется текстовый файл с часами разработчика в формате

<дата> <модификатор деятельности> <количество часов> <описание>

(Файл может содержать комментарии, начинающие с знака «#».) Необходимо подсчитать общее количество часов работы.

Например, для файла

20.05.2011 RD 2 Чтение глав «Функции» и «Параметры» из PCL
20.05.2011 OT 1 Установка SBCL
20.05.2011 CO 2 Кодирование и отладка функции count-hours

Результат должен быть 5.

Вот мое решение:

;;;; Program reads file with working hours of developer                                                                                        
;;;; and outputs sum of hours.

;; Counts working hours from specified filename.                                                                                               
(defun count-hours (filename)                                                                                                                
  (let ((in (open filename :if-does-not-exist nil)) (hours 0))                                                                                 
       (when in                                                                                                                                
             (loop for line = (read-line in NIL) while line do          
                   ; Doesn't process line with comments and empty line                                                                       
                   (if (not (or (= (length line) 0) (char= (elt line 0) #\#)))             
                       (setf hours (+ hours (parse-integer (get-word line 3))))))                                                            
             (close in)) hours))                                                                                                               
                                                                                                                                               
;; Returns nth word in string. Words are separated by Space and Tab                                                        
(defun get-word (str num)                                                                                                                    
  (let* ((white-spaces (list #\Space #\Tab)) (pos (get-white-space-min-pos white-spaces str)))                                                 
       (if (not pos) "0"                                                                                                                       
           (if (= (1- num) 0) (subseq str 0 pos)                                                                                               
               (get-word (string-trim white-spaces (subseq str pos)) (1- num))))))
                                                                                                                                               
                                                                                                                                               
;; Returns minimum position in str of character from list of characters (white-spaces).
;; If str doesn't have characters from list then nil is returned.                                                                              
(defun get-white-space-min-pos (white-spaces str)                                                                                              
  (let ((min-pos NIL))                                                                                                                         
       (dolist (white-space white-spaces)                                                                                                      
               (let ((pos (position white-space str)))                                                                                         
                    (if (not min-pos) (setf min-pos pos))                                                                                      
                    (if (and pos min-pos) (setf min-pos (min min-pos pos)))))                                                                  
       min-pos))                                                                                                                               

Запускать можно так:

(сount-hours «wh-dimv.txt»)

Собственно вопросы:
1. Не кажется ли вам, что здесь все написано в императивном стиле, просто с использованием скобочек? Если да, то направьте на путь истинный.
2. Есть ли в коде места, которые лучше было бы реализовать с помощью макросов? Я таких мест сейчас вижу, скорее всего, потому что слишком мало знаком с lisp. Или задача слишком маленькая, чтобы понадобились макросы?

 

dimv
()

Указание связей в запросе по объектной модели.

Форум — Development

Всем привет. Пусть имеется объектная модель предметной области. Реализована она на языке с ООП (например, java), для хранения в РСУБД используется ORM фреймворк (например, hibernate), для запросов либо API(JPA), либо объектный язык (HQL).

Предположим в модели имеется такая цепочка сущностей (это просто пример): Grant-Project-Team-Manager-University (в принципе сейчас не важно как они связаны между собой один-к-одному, многие-ко-многим или один-ко-многим). В соответствующих классах имеются ссылки друг на друга, т.е. например грант имеет список с проектами, а проект имеет ссылку на грант и т.д.

Теперь, предположим, необходимо получить все гранты с указанием университетов, в которых работают руководители проектов, выполняющихся на данный грант, т.е. структура результата запроса такова:
Grant_1, University_1
Grant_2, University_1
Grant_3, University_2
и т.д.

Чтобы теперь выполнить такой запрос, необходимо связать с помощью join сущность Grant к University (как в JPA, так и в HQL).

Теперь собственно вопрос: есть ли инструменты, которые позволяют делать интуитивные запросы по модели без указания связей (связи, например, выводятся или получаются на основе мета-информации)? Т.е. хочется писать что-то вроде такого псевдокода:

select Grant..University where Grant.country='Russia'
ведь между Grant и University существует однозначный путь.

На основе данного псевдокода строится запрос:

select g, u 
from Grant as g join g.projects as pr join pr.teams as t join t.manager.uniersity as u
where g.country='Russia'

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

dimv
()

[Java] Запросы к БД через Hibernate.

Форум — Development

Добрый день.
Как я знаю можно задавать запросы несколькими способоми:
1. Query by API, используя для этого, например, Criteria API 2.0 из JPA 2.0.

2. Query by String. Пишется запрос, например, на JP-QL или HQL, по которому получаем результат. Все проблемы таких запросов перечислены здесь.

Есть ли какие-нибудь премущества второго способа перед первым? Если ли средства, позволяющие выявлять ошибки и опечатки в запросах-строках на этапе компиляции (возможно, на уровне IDE, в виде плагина)?

 

dimv
()

[хочется] Parsing Techniques: A Practical Guide

Форум — Talks

Хочется сабжа http://www.ozon.ru/context/detail/id/4629616/ , но нищебродство такое нищебродство. Сабж составляет 2/3 зарплаты. Можно ли в нерезиновой или болотостане найти хотя бы за 3-4 тысячи.

dimv
()

[dia] Тень у объекта.

Форум — Desktop

Вот прямо как здесь: http://developer.symbian.org/wiki/images/d/df/File_server.png . Можно как-нибудь сделать с помощью Dia?

 

dimv
()

[тыщураз][админлокалхост]adsl + точка доступа + два компа - не получается настроить

Форум — Admin

Модем d-link 2500u подключен к телефонной линии. Настройки: pppoe 0/0/55 (port/vpi/vci).

Точка доступа d-link di-524 up (4 порта + WLAN) подключена к модема.

В точку доступа втыкается два провода от компов.

Если от модема воткнуть в точку в WLAN оба компа получают IP адреса 192.168.0.100 и 192.168.0.101 соответветственно, доступна страничка точки по адресу 192.168.0.1, НЕ доступна страничка модема по адресу 192.168.1.1, имена разрешает, но сами данные не доставляет, т.е. инета нет.

Если от модема воткнуть в обычный порт точки, то один из компов (который первый загружен) получает адрес от провайдера (такой же адрес, если воткнуть от модема сразу в сетевуху), второй комп не может поднять eth0, видна страничка модема, НЕ видна страничка точки, на первом компе интернет есть.

Может что-то хитрого надо указать в настройки модема или точки, ибо в интернетах говорят, что заводится с полпинка (правда на winxp)?

Линукс тут при том, что на обеих машинах он стоит.

P.S. Пробовал на точке крутить wlan, т.е. настраитьва как pppoe, pppoe only for russian - но безрезультатно. На модеме все что можно разрешил,

P.S.S. Не нашел на модеме, где включается NAT (а он где-то должен по идее включаться ибо пишет NAT is disable).

dimv
()

[php] Не работает функция mail.

Форум — Web-development

Возвращает true, но при этом не приходят письма на указанный адрес. Что такого хитрого надо запустить, чтобы заработало? В php.ini секция [mail function] оставлена без изменений, т.е. все закомментировано. Запускал скрипт от рута в консоле - не помогает, т.е. дело не в правах на запуск процессов. Что может быть такое?

 

dimv
()

[философия] есть что почитать занятного?

Форум — Talks

Собственно сабж.

Через полгода предвидится экзамен по философии, хотелось бы быть в теме. Только чтобы не заснуть на 2 странице, хотя бы к 10-15.

 

dimv
()

Webelements: добавление сервиса от Google на свой сайт

Новости — Linux General
Группа Linux General

На конференции в Сан-Франциско была представлена новая возможность от компании Google по работе с их API. Зайдя на специальный сайт, вы можете выбрать необходимый вам сервис и получить готовый код для вашего web-сайта. Код предоставляется в виде плавающего фрейма,

Поддерживаются следующие сервисы:

  • календарь
  • google maps
  • чат
  • обыкновенный поиск
  • презентации google docs
  • таблицы google docs
  • лента новостей
  • новости с сайта youtube.

>>> Подробности

 ,

dimv
()

[выбор]интерфейс к БД.

Форум — Development

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

Контора небольшая, связанная с недвижимостью. Предполагается выделить сервак(скорей всего будет обыкновенный десктом под столом директора) + 4-5 клиентов, которые будут работать с этой бд.

В случае если клиент предпочтет модель с толстым клиентом мой предложение: qt4 + postresql. А ваше?

 

dimv
()

[kopete]кодировка

Форум — Desktop

неожиданно поломалась кодировка для одного контакта, который с винды с миранды пишет. До сегодняшнего дня все было ОК, В свойствах контакта было проставлена cp1251. Сегодня выдает: äàðîôô . Проставка других кодировок не помогает (по умолчанию, utf-8, koi8-r).

В чем может быть проблема?

ЗюЫюЖ Версия kopete 0.60.3, opensuse 11.1, xfce 4.4

dimv
()

[java] автоматическое написание сеттеров и геттеров в netbeans.

Форум — Development

Описал атрибуты класса. Можно ли как-то netbeans заставить написать за меня все геттеры и сеттеры?

 

dimv
()

[kopete] история не контактов

Форум — Desktop

Где может хранить (или вообще хранит ли?) копыто, системные сообщения? Что-то типа "пользователь Ч вошел в сеть", "пользователь Ч вышел из сеть", "контакт № добавил вас в лист" ну и т.д..

В ~/.kde4/share/apps/kopete нашел только историю разговоров.

Пните где можно найти это дело?

dimv
()

[php]Не работает конструкция <?=$var;?>

Форум — Web-development

Сабж. Не работает на локальном десктопе. Приходится исправлять на конструкцию <?php echo $var;?> . Ума не приложу где и что можно (нужно) поменять, чтоб заработало.

opensuse11.1
PHP 5.2.9 with Suhosin-Patch 0.9.7 (cli) (built: Mar 12 2009 21:22:29)
Server version: Apache/2.2.10 (Linux/SUSE)


Все ставилось из репов.
Перемещено hibou из Development

 

dimv
()

[xfc4.4.3][opensuse11.1]не работают некоторые хот-кеи

Форум — Desktop

Через раз (здесь это употребляется в буквальном смысле) в русской раскладке не работают backspace и alt-f2. Если с alt-f2 еще можно смириться, то backspace доставляет. Что нужно поправить и где?

dimv
()

[анабиоз]чтение и постинг на форум

Форум — Talks

Есть форум, предположим движок известен.

<мечта>

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

</мечта>

Что мне нужно для себя открыть?

dimv
()

[jabber]Ошибка аутентификации

Форум — Desktop

Все клиенты, что я попробовал под opensuse 11.1 выдают мне сабж. Что пробовалось: mkabber, kopete, sim, psi, tkabber.

VirtualBox + WindowsXP + miranda = все отлично работает.

Сервер - jabber.org:5222

Пните куда копать надо?

 

dimv
()

Тренинг по maemo

Новости — Linux в России
Группа Linux в России

Тренинг предназначен для начинающих разработчиков на платформе Мaemo и состоит из следующих аспектов:

  • Установка и использование среды разработки.
  • Создание GUI‐приложений при помощи GTK+ и Hildon.
  • Интеграция с платформой Maemo.
  • Использование сетевой подсистемы и библиотек.
  • Вопросы качества кода и хорошего стиля программирования.

Участие в тренинге бесплатное, но участники должны зарегистрироваться на сайте http://maemo.cs.karelia.ru/registration/. Количество мест ограничено и регистрация осуществляется по принципу “first come, first served”. Последний день регистрации – 20 апреля.

Тренинг пройдет 27 и 28 апреля в Санкт‐Петербургском Государственном Университете Аэрокосмического Приборостроения, по адресу Санкт‐Петербург, ул. Большая Морская, д. 67.

>>> Подробности

 , ,

dimv
()

RSS подписка на новые темы