пʼятниця, 14 грудня 2012 р.

Duokan. (Вирішення проблеми відступів у Kindle Paperwhite. частина 2)


Russian version

Минув деякий час з моменту написання статті відносно скрипту призначеного для конвертації pdf у mobi. (http://blog.stvad.org/2012/11/pdf-djvu-mobi-e-ink.html). Це, звичайно, вирішує проблему  з розгортанням книги на весь екран, але це рішення має ряд недоліків:
  1. Кардинальне збільшення розміру файлу. (Ключовий момент, враховуючи обсяг доступної пам'яті у Paperwhite);
  2. При Відносно великому розмірі файлу, перегортання сторінки займає досить великий проміжок часу;
  3. Складність виконання з під Windows;
  4. Довгий та обчислювально-витратний процес.  
Тож я продовжував шукати краще рішення цієї проблеми. У процесі пошуку я знайшов згадки про Duokan.  Це оболонка, яка запускається над рідною. Має власний інтерфейс (є переклад на декілька мов, основна - китайська). І має значно більше функцій для роботи з текстом. Зокрема для роботи з PDF, і що головне - надає можливість розгорнути його на весь екран.

пʼятниця, 23 листопада 2012 р.

Співбесіда на стажування у Microsoft: Початок

Зараз, коли марафон під назвою, підготування до співбесіди, та, власне, співбесіда позаду і стало трохи більше вільного часу, є бажання розповісти про перебіг цього періоду мого життя. Та мотиви до його початку.



Про мотиви

Після завершення цього літа, під час якого я переважно займався GSoC проектом, я твердо вирішив, що наступного хочу поїхати на стажування у велику IT, компанію у Європу чи США. Чому? Це, на мій погляд, безцінний професійний (робота із кращими людьми галузі) та життєвий (само-випробування, чи зможу я ефективно працювати та комфортно себе почувати, у абсолютно новій для себе обстановці) досвід. Ну й врешті-решт це просто круто!)

четвер, 22 листопада 2012 р.

Скрипт для перетворення pdf& djvu у mobi для e-ink

Як я писав раніше у G+, я придбав Kindle Paperwhite.


Так я писав раніше, про свої перші враження:

Враження змішані. З залізної частиною все прекрасно. Працює спритніше ніж всі рідери, які я використовував раніше. Підсвітка виправдала мої очікування. Ну і загальні враження від Хардварі хороші (хіба що * SD слота не вистачає).Як я писав раніше у G+, я придбав Kindle Paperwhite.
Враження змішані. З залізної частиною все прекрасно. Працює спритніше ніж всі рідери, які я використовував раніше. Підсвітка виправдала мої очікування. Ну і загальні враження від Хардварі хороші (хіба що * SD слота не вистачає).
Але от з софтварню частиною - на мій погляд це суворий такий фейл.
1) Купа неочевидності в інтерфейсі. (нехай ще жести які якнебудь показуються в стартовому туторіали, але, наприклад, перемикання формату часу (24-12) через зміну мови це просто шедевр думки).
І ще одна річ яка мене особливо засмучує і рішення якої я поки не можу знайти - відступи по краях екрану, які додаються штучно і я не маю гадки як їх прибрати. Одне текстові файли, там з цим можна змириться, але якщо у вас є бажання почитати PDF - то це сущий жах ..

Але остання проблема не давала мені спокою, і не знайшовши рішення на просторах інтернету, я почав досліджувати це питання (коротко можна знайти історію моїх думок тут  http://www.kindle.copiny.com/question/details/id/82435). Отже у підсумку, вималювалася така схема:

пʼятниця, 24 серпня 2012 р.

GSoC coming to the end



Підходить до завершення літо, а з ним і програма GSoC 2012, у якій мені довелося брати участь. Хотілося б більш детально написати про цей, безумовно цікавий період мого життя, що я й зроблю надалі:).

Як усе починалося


Я вже доволі давно читав про програму GSoC, і в мене було бажання прийняти  у ній участь. Тож, дізнавшись про початок цьогорічної програми, й визначившись, з технологіями, з якими я хотів би працювати (C++/Qt),  я почав ознайомлюватися з FOSS проектами, які використовують ці технології.

Вибір Саймона


Тож, ознайомившись зі списком прийнятих організацій я почав детальніше вивчати ідеї запропоновані організаціями, які декларували використання потрібних технологій. Звичайно ж я, як активний багаторічний користувач KDE, однією з перших відвідав їхню сторінку ідей. Там я знайшов доволі багато цікавих пропозицій. У тому числі й пропозицію про додавання підтримки CMU Sphinx, як backend-a для побудови моделей та розпізнавання у Simon, над якою мені й довелось працювати:). Ознайомившись з доволі великим списком проектів, я все-таки вирішив повернутися до проекту "Simon SPHINX Support". Це рішення спиралося, певно, на те, що Simon зацікавив мене як проект в цілому, і мені було цікаво прийняти участь у його розвитку.

вівторок, 21 серпня 2012 р.

GSoC Midterm report



Ukrainian:

Отже пройдена половина шляху в GSoC проекті "Simon SPHINX support":
як кажуть, час підвести деякі підсумки :). Хоч на початку і були деякі проблеми, пов'язані з браком часу, але зараз розробка йде повним ходом :), і багато чого вже зроблено. Давайте ж подивимося що саме зроблено:
  •  Simon зберігає дані для створення акустичних і мовних моделей у своєму власному форматі. Отже для того щоб HTK або SPHINX могли створювати власні моделі на підставі цих даних, ці дані необхідно привести до зрозумілого їм виду. Отже був створений адаптер, який приводить дані для зрозумілого для SPHINX вигляду;
  •  Наступним кроком було, власне, створення модуля, який за допомогою спеціального ПЗ (sphinxtrain), створює акустичну модель SPHINX;
  • Також архітектура Simon передбачає створення моделі "у фоні". Отже було створено модуль, який працює у окремому потоці і, за допомогою вище названих модулів, створює акустичну та мовну модель з даних Simon;
  • Додана можливість вести розпізнавання, зо допомогою SPHINX, базуючись на створених користувачем моделях;
  • Було додано можливість вибору між двома backend-ами для створення моделей та розпізнавання;
  • Був проведений рефакторинг деяких існуючих модулів Simon (більшою частиною - пов’язаних із новими модулями).
  • Що планується робити надалі:
  • додати підтримку SPHINX у Sam;
  • додати можливість тестування SPHINX моделей;
Які складнощі виникли під час розробки проекту? Ну по перше це критична недостача часу на ранньому етапі. З приводу саме розробки, мабуть - початкове ознайомлення з внутрішнім устроєм Simon.
Але мій ментор оперативно відповідав на усі питання, що зникали, під час цього процесу. Дякую Peter!


English:

So passed half way in the GSoC project, "Simon SPHINX support":
as they say, time to bring some results :). Although at the beginning had some problems with lack of time, but now the development is in full swing :), and much has been done right now. Let us see what is done:
  • Simon saves the data to create acoustic and language models in their own format. So in order to HTK and SPHINX can create their own models based on these data, these data should be converted to the right format. Thus was created an adapter that brings data to clear for SPHINX appearance;
  • The next step was, a module that is using a special software (sphinxtrain), creates an SPHINX acoustic model (at this stage, the quality of models is poor. now i'm working to determine the causes of this.);
  • Simon architecture also provides background model training. Thus was created a module that runs in a separate thread and by using the above mentioned modules, provides acoustic and language model from Simon data;
  • Ability to recognize, using SPHINX back-end, based on models created by the user;
  • Added a choice between two backends for model creation and recognition (in the testing process by now);
  • Carried out refactoring of some existing modules Simon (the most part - associated with new modules).
  • What i'm planing to do next:
  • Add SPHINX support to Sam;
  • Add the ability to test SPHINX models;
What difficulties arose during the project development? Well firstly this is a critical shortage of time at an early stage of project. Regarding the actually development, perhaps - initial familiarization with the internal Simon architecture.But my mentor promptly answered all the questions that disappeared during this process. Thank you Peter!

понеділок, 20 серпня 2012 р.

Hello world


Наслухався різних порад і вирішив вести блог:D. А взагалі у Google+ іноді публікую помітки про технологіям та іншому. Але там вони утопають серед тон контенту. Думаю тут - найкраще місце для їх зберігання. (хоча б тому що, їх тут буде легше знайти:D).
Коли мені буде не ліньки перенесу частину того що писав у G+ сюди.