16

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

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

pet r oma  il @ram bler.r u

17

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

Зачитал, все что выше...постараюсь свои мысли выдать структурировано:
1) Формат хранения данных:
Когда у тебя комп, то обход DOM не так страшен, так как проц грузится не особо на долго, дерево все размещать можно в оперативке, обращения к диску минимальны, НО(!) как только нужно будет переводить на уровень гаджетов, от-лайн синхронизации, возможности поделиться - сразу же упрешься во все замечательные ограничения хранилища на базе ФС. А в случае веб-сервиса для публикации и он-ланй синхронизации, даже если писать на очень быстром php и хранить базы где-то на amazon s3 - ну ты скорее амазон повесишь, нежели чем добьешься качественной работы сервиса. Я это говорю как человек с большим опытом администрирования, и хорошим понятием как делаются он-лайн сервисы. А производительность БД - это легко решается масштабированием БД или изначальной заточкой под движки типа couchdb. Как пример, я знаю работающие веб-решение, клиентоориентированное на базе php+Postgresql, где примерно порядка 7000 баз, к которым цепляется порядка 50000 клиентов, и все это крутится всего лишь на двух 4х процессорных серваках, да и к тому же с 32-битными операционками. И тормозов у БД нет, а вот например 1с с базами на основе ФС, начинает валиться на 4х клиентах, а 14 это максимальный предел хоть какой-то работы, в конечном итоге просто кладется вся ФС, огромные очереди на чтение-запись, огромная фрагментация. В БД эти вопросы решены на уровне синхронизации буферов с дисковой копией БД. Я не пытаюсь доказать, что выбранное тобой представление данных плохое, и не говорю - давай использовать SQL базу...оба этих пути могут быть тупиковыми. А могут и нет. Просто из личного опыта, я считаю, чем больше у тебя уровень абстракции между хранением данных и их представлением, тем проше развивать и переносить проект в современных условиях. К примеру выбрав хорошую ORM-библиотеку, ты сейчас завяжешь скажем локальную базу на sqlite, но потом легко сможешь переписать прогу (или дописать модуль) который буде работать с Ораклом....ну и т.д. Это просто как пример.

2)  Синхронизация через дропбокс или гитхаб....блин! ненавижу костыли, они ломаются - а это КОСТЫЛЬ! Это хорошо будет работать для профи, вернее на том, кто понимает. Но, что делать, когда база начнет переваливать 2 гига (ограничение дропбокса) или там будут закрытые данные (бесплатные аккаунты на гитхабе открыты, да и к тому же ограничение в 300 метров)???? Или как пример, на новом месте придется провести полную синхронизацию с дропбоксом или гитхабом, прежде чем начать работать...то есть ты в командировке, нет толкового инета, кроме 3G (дай бог) и ты сидишь и ждешь когда твои ндцать мегабайт придут к тебе...

Очень рекомендую ознакомиться с Evernote!

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

rudenkovk at gmail.com

18

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

xintrea пишет:

Тут нужно расписать, какие действия будет выполнять патч. Напишите.

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

Плюс к этому ещё можно добавить в диалог настроек программы кнопку для сброса настроек в значения по умолчанию.

19

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

rudenkovk пишет:

1) Формат хранения данных

Какой формат хранения локальных данных вы предлагаете?


rudenkovk пишет:

2)  Синхронизация через дропбокс или гитхаб....блин! ненавижу костыли, они ломаются - а это КОСТЫЛЬ! Это хорошо будет работать для профи, вернее на том, кто понимает. Но, что делать, когда база начнет переваливать 2 гига (ограничение дропбокса) или там будут закрытые данные (бесплатные аккаунты на гитхабе открыты, да и к тому же ограничение в 300 метров)???? Или как пример, на новом месте придется провести полную синхронизацию с дропбоксом или гитхабом, прежде чем начать работать...то есть ты в командировке, нет толкового инета, кроме 3G (дай бог) и ты сидишь и ждешь когда твои ндцать мегабайт придут к тебе...

Я не пойму, что вы предлагаете. Вы хотите сделать сервис с Web-интерфейсом, чтобы пользователи могли просматривать свои записи, хранимые на сервере синхронизации, в онлайне?


rudenkovk пишет:

Очень рекомендую ознакомиться с Evernote!

Я знаком. В MyTetra концепт другой.


rudenkovk пишет:

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

Хорошо, я ваш контакт сохранил.

20

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

DOOMer пишет:
xintrea пишет:

Тут нужно расписать, какие действия будет выполнять патч. Напишите.

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

Плюс к этому ещё можно добавить в диалог настроек программы кнопку для сброса настроек в значения по умолчанию.

Там не всё так просто, как вы написали.

Если копнёте глубже, вы увидите, что в MyTetra есть подсистема обновления версии конфигов. Если вы будете создавать начальный текст конфига, вам нужно учитывать, с какой текущей версией работает программа. И если текст конфига не будет соответсвовать текущей поддерживаемой версии, его надо повышать до нужной. Механизмы "повышения версии" в коде MyTetra есть, но их надо не забывать использовать.

Кстати, в MyTetra 1.25 используется версия 3 конфига (посмотрите переменную version в conf.ini). То есть, до релиза, формат конфига трижды поменялся. И я думаю, что будет меняться дальше.

21

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

Под Suse-11.3x64 завелось после правки исходников (см. вчерашние топики). Подправить бы сразу не мешало. Файлы addnewrecord.cpp и appconfigupdater.cpp, чтоб не сротыкался народ, ага..

Что с локализациями? А то у меня только английский интерфейс..

22

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

xintrea, а по какому принципу вы  меняете версии конфига?  При добавлении новых параметров, или при каких-то иных обстоятельствах?

23

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

xintrea пишет:

Тема для обсуждения программы MyTetra, офицальная страница которой находится здесь: http://webhamster.ru/site/page/index/ar … ctcode/105.

Есть что сказать по существу - пишите.

Пробовал откомпилировать в QT 4.7 под openSuSe 11.2

Ссылки обсолюдные на библиотеки QT из исходников лучше убрать.
Например сделав так
#include <qdir.h>

А вот ресурсы, (раз их код сам не генерирует) лучше добавить в архив исходников.

Ну и русский в меню приятней был-бы - в смысле локализации.
И кнопочка ПОИСК - непомешает, чтоб не нырять в меню постоянно.

Спасибо за внимание.

24

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

DOOMer пишет:

xintrea, а по какому принципу вы  меняете версии конфига?  При добавлении новых параметров, или при каких-то иных обстоятельствах?

При добавлении/удалении параметров, при смене типа параметра. Например, был bool, а оказалось что в новой версии параметр должн принимать не два, а три значения. Или был int, а оказалось, что в новой версии нужно использовать строку, и т.д.

25

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

sv пишет:

Пробовал откомпилировать в QT 4.7 под openSuSe 11.2
Ссылки обсолюдные на библиотеки QT из исходников лучше убрать.
Например сделав так
#include <qdir.h>

Уже исправлено в версии 1.26. Новость: http://webhamster.ru/site/page/index/main/news/107.

sv пишет:

А вот ресурсы, (раз их код сам не генерирует) лучше добавить в архив исходников.

Пока нет, это будет когда появится полноценная система сборки.


sv пишет:

Ну и русский в меню приятней был-бы - в смысле локализации.

Ждите, будет.


sv пишет:

И кнопочка ПОИСК - непомешает, чтоб не нырять в меню постоянно.

Она есть, в правом верхнем углу. Другого места ей не нашлось. Я планирую её перенести вниз влево в строку состояния, но пока не разбирался, позволяет ли Qt делать в строке состояния кнопки.

26

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

Для начала неплохо. Ранее знал только одну альтернативу Microsoft OneNote под Linux - BasKet, но он тянет KDE-шные библиотеки. Так что дело полезное.

Под CentOS 5.5 программа запустилась нормально. Но теперь о грустном. За пять минут знакомства с программой уже замечено несколько багов и недоработок:

* странно работает разбиение ячейки таблицы на несколько;
* кнопка увеличения отступа слева от кнопки уменьшения отступа - очень непривычно;
* При наборе текста в комбобоксе выбора шрифта - пусто;
* Не понятно, как работает и для чего предназначена кнопка "{}";
* Если выделить текст и нажать кнопку "TT", шрифт становится моноширинным, но повторное нажатие не возвращает исходных шрифт - нелогично;
* "Трудночитаемые" синие иконки на панелях;
* При запуске программы размер окна недостаточен для отображения всех кнопок на панелях инструментов;
* Поиск текста в базе выделяет заметки, но не выделяет на них найденный текст, даже не прокручивает до него.

27

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

Win32.Neshto пишет:

* странно работает разбиение ячейки таблицы на несколько;

Это же не OpenOffice. Работа с таблицами в WyEdit находится в зачаточном состоянии. Там логика простая - если надо разбить ячейку по горизонтали, то программа так же разбивает все ячейки снизу и сверху от разбиваемой. Затем объединяет их в "широкие" ячейки, чтобы снизу и сверху от разбиваемой так и осталось по одной (но уже состоящей из нескольких) ячеек. Если в хитрой конфигурации таблицы этого сделать не удасться, разбиение не будет производиться.


Win32.Neshto пишет:

* кнопка увеличения отступа слева от кнопки уменьшения отступа - очень непривычно;

А в какой программе сделано наоборот? Скриншот хотя бы нужен.


Win32.Neshto пишет:

* При наборе текста в комбобоксе выбора шрифта - пусто;

Хм, возможно это баг, я не могу его повторить. Пусто в комбобоксе должно быть только тогда, когда выделен текст с разными шрифтами.


Win32.Neshto пишет:

* Не понятно, как работает и для чего предназначена кнопка "{}";

Это кнопка форматирования в код. В статусной строке есть подсказка.


Win32.Neshto пишет:

* Если выделить текст и нажать кнопку "TT", шрифт становится моноширинным, но повторное нажатие не возвращает исходных шрифт - нелогично;

Хм, вообще-то я специально так сделал. Кнопки TT и {} ведут себя не так, как привычные B U I. Для отмены форматирования TT или {} надо нажимать кнопку сброса [C].


Win32.Neshto пишет:

* "Трудночитаемые" синие иконки на панелях;

Есть такое дело. Темно-синие иконки я рисовал, когда осваивался с Inkscape. Более светлые для редактора рисовал пожже, когда разобрался с субпиксельным сглаживанием. По хорошему, тёмно-синие иконки надо перерисовать.


Win32.Neshto пишет:

* При запуске программы размер окна недостаточен для отображения всех кнопок на панелях инструментов;

Ну сделайте размер окна который вам нужен.


Win32.Neshto пишет:

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

Такое поведение пока в далёкой перспективе.

28

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

Striver пишет:

В моей MeeGo отсутствует Трэй, и программа вместо запуска выдаёт:
"I could't detect any system Tray on this system"

Версия 1.26 научилась работать без трея. Пожалуйста, проверьте у себя в MeeGo, запускается или нет?

29

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

Недостаёт возможности просмотреть документ программы без всех виджетов. Можно просто скрыть остальные виджеты или отдельным окном открыть просмотр документа. Это вроде несколько минут кодинга.

30

Re: Обсуждение MyTetra v.1.25. Пожелания, багрепорты.

Vitaly пишет:

Недостаёт возможности просмотреть документ программы без всех виджетов. Можно просто скрыть остальные виджеты или отдельным окном открыть просмотр документа. Это вроде несколько минут кодинга.

Объясните ситуацию, когда такое поведение необходимо. Я давно пользуюсь MyTetra, ниразу таких желаний не возникало.