LINUX.ORG.RU

Сообщения ovk48

 

Кому бы чего допилить?

Есть ли у кого на примете интересные проекты, которые нуждаются в не очень больших доработках? Предпочтительные направления - обработка/анализ данных, productivity, системы учета, просто всякая хрень для простых юзеров. ЯП значения почти не имеет, ну не ассемблер и наверно не С, остального знаю всего понемногу и хочу в чем-нибудь, да попрактиковаться. Кидайте ссылки.

 ,

ovk48
()

Нормальный мануал по Qt

Хотел поиграться с Qt (5), но освоению мешает отсутствие нормально написанной и собранной воедино документации. На сайте только формальное описание API и разрозненные туториалы и хауту по каким-то частным вопросам, а нормального большого мануала для начинающих, который учит всему от простого к сложному, нет (а может, я не нашел). Методом тыка же учиться нет времени, да и мотивации. Последняя книга вышла, как я понял, в 2010 г. и видимо уже не отражает актуальное состояние фреймворка. Ткните в общем, что лучше всего почитать.

 , ,

ovk48
()

Intermediate Haskell

Что можно почитать хорошего на тему приемов среднего уровня и best practices при создании реальных неэзотерических программ на Haskell? Новичковые туториалы и теоркатовая наркомания не нать. Интересуют, например, обзоры современных прикладных библиотек, советы по проектированию и т.д.

 , ,

ovk48
()

Не дергается ghc-mod из emacs

Сабж. Вроде бы настроено все как надо, по мануалам. Из командной строки все функции вроде работают, а из емакса - фиг. Исполняемый файл доступен, (ghc-init) ошибок не выдает. company-ghc для автокомплита также не пашет. Как найти источник проблемы?

 , ,

ovk48
()

Годные нишевые языки с перспективой

Частично навеяно этой темой. Накидайте ЯП, которые пришли к успеху или просто активно юзаются в определенной области, но концептуально являются ЯП общего назначения и могли бы быть популярны и в больших масштабах. Например, такие как Erlang.

 , ,

ovk48
()

Ruby прекрасен

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

 , , ,

ovk48
()

Советов и книгопоиска тред

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

- на сервере: Scala, Spray;

- для персистенсу: Slick. БД для прототипа хватит и H2;

- на клиенте: хочу js во все поля, одностраничность и все такое.

Вместо скаловских либ могу рассмотреть вообще что угодно из жабомира. Саму скалу менять не хочется.

Вопросы такие:

1. Жизнеспособно ли такое сочетание:

- для создания прототипа;

- для продакшена.

2. Если нет, что на что нужно заменить?

3. Что можно почитать о правильной архитектуре неэнтерпрайзных веб-приложений? Интересуют не книги типа Learning HTML5/CSS и не мануалы по библиотекам/фреймворкам, а именно цельное руководство по всему процессу, по лучшим практикам и т.д.? Язык предпочтительно английский.

 , , , ,

ovk48
()

Rust - язык системного или прикладного программирования?

Почему создатели языка так упирают на systems programming? По-моему, при тех фичах, которые уже наличествуют в языке, богатстве стандартной библиотеки и легкости создания биндингов как минимум к С, он вполне может стать и языком для прикладухи, это у него получится уж точно не хуже С++.

 , ,

ovk48
()

Прочитать n-ю строку от конца файла

Нужно прочитать строку с определенным номером от конца файла. Все строки в файле разной длины. Никак не могу понять, с какой стороны подойти к этой проблеме. Язык в данном случае значения не имеет, считаем, что в библиотеках есть стандартные методы для работы с потоками (чтение, переход, определение текущей позиции и т.д.). Решения типа «прочитать весь файл в массив строк, а потом взять третью с конца» не нравятся (нет ограничений на размер файла).

 ,

ovk48
()

Smalltalk - отличия современных версий от стандарта

Насколько я понимаю, все основополагающие источники по разработке на Smalltalk описывают в основном Smalltalk-80. А насколько современные версии языка отличаются от этого протухшего «стандарта»? Есть ли такие, что опираются на стандарт ANSI Smalltalk (если он вообще был принят, я что-то не пойму)? И где можно увидеть более-менее вменяемый список расширений? Интересуют на данный момент в принципе только Pharo и Cincom VisualWorks.

 

ovk48
()

Книги по Smalltalk

Поставил поиграться Cincom VisualWorks, что нужно читать по смоллтолку вообще и по этой разновидности в частности? Желательно книжки посерьезней, а не туториалы.

ovk48
()

Бесплатный Java-хостинг

Надо сделать простое веб-приложение на Java или Scala. Нагрузка на него будет минимальной. Есть ли подходящий бесплатный хостинг для подобных целей?

 ,

ovk48
()

Выбор электронной книги - Kindle vs Nook

Задача - выбрать эл. книгу. Требования:

- цена до 4 тыс. руб.;

- качественный экран;

- побольше поддерживаемых форматов;

- вменяемое отображение PDF;

- эргономичный дизайн для удобного чтения в транспорте;

- минимум телодвижений и максимум надежности при разлочивании / перепрошивке и т.д. (красноглазить совершенно не хочется).

Пока выбираю между Kindle 5 и B&N Nook Simple Touch. Плюсы киндла - больше поддерживаемых форматов из коробки и вроде как более удобные кнопки. С другой стороны, на оба устройства при недостатке поддерживаемых форматов вроде как можно поставить сторонний софт. Кто-то пишет, что у нука удобнее корпус и лучше батарейка. Вот, собственно, интересует - какая читалка из двух, по вашему мнению, лучше соответствует вышеуказанным требованиям? А может, вообще есть что-то третье?

Перемещено Dimez из talks

 , ,

ovk48
()

Hibernate + List<Enum>

Есть простое перечисление:

public enum E { V1, V2, V3; }

Есть сущность, в которой есть атрибут типа List<E>, который надо сохранять в БД:

class C {
...
    List<E> enums;
...
    @ElementCollection
    @Enumerated(EnumType.STRING)
    public List<E> getEnums() {
        return enums;
    }
...
}

При попытке вызвать saveOrUpdate в сессии Hibernate возникает исключение: org.hibernate.MappingException: Unknown entity: <...> E

Как правильно определять коллекции перечислимых типов?

Hibernate 4.1.8

 ,

ovk48
()

Java-библиотека для генерации PDF

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

 java pdf

ovk48
()

Ubuntu 12.04 vs Creative X-Fi

ВНЕЗАПНО (именно так) пропал звук с этой внешней звуковой карты. Со встроенной карты звук выводится. Под вендой тоже. В настройках звука все нормально. Куда можно ткнуться?

 sound ubuntu creative

ovk48
()

На чем написать кроссплатформенное десктопное приложение?

Хочется (в порядке убывания приоритетов):

1) не C и не С++;

2) кроссплатформенность;

3) хороший GUI (или хорошие биндинги к Qt);

4) статически типизированный;

5) компилируемый в нативный код.

Бонус-вопрос: может, в свете последних тенденций вообще забить и написать расширение для браузера? :)

 ,

ovk48
()

Visitor Pattern - почему так не принято его реализовать?

Обычно делают так:

package org.ovk.javalearning;

import java.util.ArrayList;

public class Main {
    public static void main(String[] args) {
        Structure s = new Structure();
        s.visit();
    }
}

class Visitor {
    void visit(IntElement element) {
        System.out.println("int: " + element.value);
    }
    void visit(StringElement element) {
        System.out.println("string: " + element.value);
    }
}

interface GenericElement {
    void accept(Visitor visitor);
}

class IntElement implements GenericElement {
    public int value = 0;

    IntElement(int value) {
        this.value = value;
    }

    @Override
    public void accept(Visitor visitor) {
        visitor.visit(this);
    }
}

class StringElement implements GenericElement {
    public String value = "";

    StringElement(String value) {
        this.value = value;
    }

    @Override
    public void accept(Visitor visitor) {
        visitor.visit(this);
    }
}

class Structure {
    ArrayList<GenericElement> elements;
    Structure() {
        elements = new ArrayList<GenericElement>();
        elements.add(new IntElement(10));
        elements.add(new StringElement("Hello!"));
    }
    void visit() {
        Visitor visitor = new Visitor();
        for(GenericElement element : elements) {
            element.accept(visitor);
        }
    }
}

А почему не делают так?

package org.ovk.javalearning;

import java.util.ArrayList;

public class Main {
    public static void main(String[] args) {
        Structure s = new Structure();
        s.visit();
    }
}

interface GenericElement {

}

class IntElement implements GenericElement {
    public int value = 0;

    IntElement(int value) {
        this.value = value;
    }
}

class StringElement implements GenericElement {
    public String value = "";

    StringElement(String value) {
        this.value = value;
    }
}

class Structure {
    ArrayList<GenericElement> elements;
    Structure() {
        elements = new ArrayList<GenericElement>();
        elements.add(new IntElement(10));
        elements.add(new StringElement("Hello!"));
    }
    void visit() {
        for(GenericElement element: elements) {
            if(element instanceof IntElement)
                System.out.println("int: " + ((IntElement) element).value);
            else if (element instanceof StringElement)
                System.out.println("string: " + ((StringElement) element).value);
        }
    }
}


 , patterns, visitor

ovk48
()

Sharing options

Если я в наутилусе расшариваю каталог через sharing options - share this folder, в каком конфиге этот факт прописывается? В smb.conf вроде ничего не добавилось.

ovk48
()

git(hub): вопрос по управлению коммитами в рамках большого проекта.

Я раньше не пользовался гитом, гитхабом и тем более не коммитил в большие проекты. А тут вдруг ради интереса захотел сделать маленький патчик. Что сделал:

- форкнул себе репозиторий
- склонировал на рабочую машину
- внес изменения
- сделал коммит
- запушил на гитхаб
- сделал pull request, его приняли

Но за время между клонированием репозитория и принятием пулл реквеста в апстриме сделали уже много других коммитов. Я сделал так:

- git remote add upstream <???.git>
- git fetch upstream
- git merge
- git push

Теперь на гитхабе в моем форке имеется актуальная копия апстрима, но когда я ради интереса снова нажал pull request, то обнаружил, что мой мерж считается коммитом и по идее я в следующий раз отправлю его в рамках реквеста.

Вопросы:

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

Я знаю, что я недостаточно вкурил гит и распределенные системы контроля версий :)

ovk48
()

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