Собираем
информацию
по крупицам
Главная страница

Здравствуйте!

 

Вы находитесь на сайте WebHamster.ru. Наш хомячок бегает по интернету в поисках интересной информации. Он собирает её по крупицам и аккуратно складывает здесь. А еще хомячок знает буквы, садится за свою маленькую пишущую машинку и сам пишет всякую ерунду. Он такой непоседа...


Новости

Опубликован ответ на самый сложный вопрос вебмастера
28-09-2018
18:35:43

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

 

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

 

 

Ответ на вопрос: почему сайт с хорошей посещаемостью приносит так мало дохода?

 

 

Всем вебмастерам, которые находятся в таком же положении, как и я, давно уже следует понять эти простые истины. И не питать иллюзий по поводу возможного увеличения прибыли с сайта. Хотите зарабатывать в вебе - ломайте себя и занимайтесь той тематикой, в которой есть деньги. По-другому заработков не будет, какой бы прекрасный сайт у вас не был.

 


MyTetra научилась работать с национальными кодировками в путях к файлам
24-09-2018
00:17:57

Долгое время PIM-менеджер MyTetra умел работать только с директориями, в пути к которым используются только латинские символы. Это обычная проблема для кроссплатформенных программ. Ноги у нее растут из того, что корпорация Microsoft в момент создания Windows-95 посчитала, что системная кодировка (которая используется, в частности, при работе с файлами и каталогами) может отличаться от кодировки консоли. И аукается это даже в Windows 10. Для русскоязычной версии Windows системная кодировка установлена как CP1251, а кодировка консоли CP866. Молодцы, что еще сказать.

 

Наконец, у меня дошли руки поразбираться с этим вопросом. В результате чего было написано две статьи:

 

 

Как в Qt узнать системную кодировку локали под Windows

 

Как в Qt работать с русскими именами файлов и директорий под Windows

 

 

А так же в ветке experimental PIM-Менеджера MyTetra появилось обновление кода, благодаря которому теперь MyTetra может:

 

  • Запускаться из каталога, в пути которого есть национальные символы;
  • Работать с каталогами данных, в пути которого встречаются национальные символы. Это особенно актуально для Windows-пользователей, которые используют русские буквы в своем логине, и устанавливают MyTetra в стандартном режиме (в этом режиме данные размещаются в каталоге пользователя, который и имеет русскоязычные символы в своем названии);
  • Правильно отображать национальные символы в консольном логе, если включена опция логирования отладочных сообщений.

 

Работа проверена на русскоязычной Windows 7 с кодировками CP1251 (системная) + CP866 (консоль) и на Linux с кодировкой локали UTF-8.

 

Эта доработка будет включена в следующий крупный релиз.

 


Страх и ужосо: как выглядит PIM-менеджер MyTetra под Android?
24-09-2018
13:26:52

Фремверк Qt настолько крутой, что позволяет собирать десктопные программы под Android. Да, на Android можно запускать Qt-программы, даже если они сделаны без использования QML. Вопрос в том, как эти программы отрисовываются и можно ли ими пользоваться.

 

В начале развития поддержки Android, специалисты Qt еще не знали, выстрелит ли их технология QML. Поэтому достаточно аккуратно пилили поддержку нативных десктоповых приложений в Android. После того, как на мобильной платформе плотно устаканился QML, на поддержку десктоповых приложений забили, и она сейчас существует просто как данность. Да, компиляция под ARMv7 работает, да, формы кое-как рисуются и... все!

 

К сожалению, у меня не осталось старых скриншотов, в которых MyTetra for Android выглядела более-менее приемлемо. Но сейчас, спустя несколько лет после предыдущих экспериментов, я снова решил посмотреть, на что похожа сборка под Android. Собрал последнюю актуальную версию MyTetra, и вот что увидел.

 

Запуск. Для начала вроде неплохо, окошечко с тоненькой рамочкой и тенью:

 

 

 

 

Далее следует вход в режим отрисовки дерева. Это уже страшно:

 

 

 

 

Панель поиска особенно уродлива. Куда-то исчезла кнопочка закрытия, чтобы не видеть её. Эта панель нас будет преследовать все время.

 

Выберем ветку, и можем просматривать список записей:

 

 

 

 

На панели кнопок, в Android-интерфейсе, появляется кнопка "Стрелка назад", с помощью которой можно вернуться в просмотру дерева.

 

Нажмем на запись в списке, и можно посмотреть саму запись:

 

 

 

 

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

 

В общем, зрелище удручающее. Заманчиво иметь единую кодовую базу как под десктоп, так и под мобильную платформу. На практике же такой подход работает не очень.

 

Можно, конечно, причесать немного, и выпустить релиз "чтобы был". Если пользователю нужны не шашечки, а ехать, то можно и этим интерфейсом попользоваться. Но вопрос на самом деле не в интерфейсе, а в синхронизации базы. На десктопах можно синхрить файлы в директориях через Git, Svn, Dropbox, Yandex.диск и т.д. А под андроидом так не получится. Хотя, может быть есть какой-то сервис, о котором я не знаю, с полноценной синхронизацией каталогов под Android.

 

В общем, если есть что сказать, можно отписаться вот в этой теме нашего веселого форума: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты.

 


Лайфхак по работе с интерфейсом РСЯ + небольшой финстрип
21-09-2018
18:41:11

Сегодня опубликовал статью, которую написал сам для себя, с целью не забыть куда надо тыкаться в интерфейсе Рекламной Сети Яндекса чтобы посмотреть баланс счета. Почему-то в РСЯ для такого простого действия надо выкрутить мОзги наизнанку.

 

 

Как посмотреть баланс заработанных средств вебмастеру в интерфейсе РСЯ

 

 

Плюсом, в конце данной статьи показаны суммы, которые зарабатываются этим сайтом в Яндексе. Кстати, я уже публиковал эпичный пятилетний финстрип по заработку в Google Adsence. Кратко можно сказать, что Гугол раза в три жаднее Яндекса. В любом случае речь идет об очень смешных суммах. Дети, которые бегают к ларькам и собирают с земли монетки, зарабатывают куда больше.

 


Linux Format, сентябрь 2018: MyTetra названа самым лучшим свободным программным обеспечением на планете
15-09-2018
21:32:26

Случайно узнал удивительную новость о том, что в сентябрьском номере журнала Linux Format (английская версия) в разделе "Самое лучшее программное обеспечение с открытым исходным кодом на планете" появилась статья про мой PIM-менеджер MyTetra.

 

 

 

 

Сама статья написана в классическом буржуйском утилитарном стиле, и рассказывает о MyTetra в сравнении с ПО, основанном на Linux-библиотеке доступа к персональной информации Akonadi (фреймверк, используемый в KDE). Неожиданное сравнение, хотя почему бы и нет. Сама статья выглядит так:

 

 

Увеличить

 

 

Текст следующий:

 

 

MyTetra

 

Version: 1.43.27

Web: https:// github.com/xintrea/mytetra_dev

 

It’s like a Wordpad with power-ups and project management features.

We would love to write endless praise for Akonadi, if only it didn’t crash from time to time, so in the meantime there is still a demand for a solid, stable and well-designed personal information manager (PIM) for Linux. Before taking MyTetra for a review spin, we Googled for existing PIM apps and after a while discovered that MyTetra may be not instantly the best, but it has some special features to offer and generally looks very strong.


Good things spring out from the moment you use it. In our memory MyTetra is the first app that asks if you want to store its data in ~/.config (standard behaviour) or in the current directory (portable version). The latter lets you take your notes with you anywhere on a USB flash drive, for instance.

 
The main window resembles the famous CherryTree note-taking app, for which we had a sweet tutorial in LXF237. Basically, there are three panels: the left one for the notes tree, the upper one for the inbox-like table view, and the main area for working with your documents. MyTetra has outstanding rich text editing capabilities that don’t leave you hanging, because MyTetra has everything a word processor should have, and in this regard it clearly outperforms CalligraWords (formerly KWord), the only dedicated Qt-based word processor. MyTetra lets you select fonts, their sizes and styles, change indents with a ruler, work with tables and cells, format your text as a numbered list and do many more things. Everything is stored using the HTML format, and you can even edit the code right in the application, as if it was a web composer!

What is where in MyTetra...

 

1. The tree of your notes
No matter how big your MyTetra library
is, you always see the entire structure here,
with all sibling and child items.
2. List of notes inside an item
Each element of the tree can hold more
than one note. You can check the entire list in
this table view.
3. Documents with rich formatting
It goes far beyond just playing with fonts.
Tables and images are also supported!
4. See what you get
Each note is an HTML document inside,
and here you can see its rendered preview.
5. Search the knowledge base
MyTetra diligently puts all your body texts,
titles and tags into a searchable index.

 

Apart from being a cross-platform application, MyTetra can be used as an online encyclopedia if you upload your mytetra.xml and other data files to a remote host. The project website contains instructions about the required steps with GitHub and Bitbucket used as example hosts. The MyTetra download page offers a static build for those who don’t want to compile the code themselves.

 

Как хорошо иногда рекламировать свое ПО! Достаточно было назвать MyTetra "Самой нужной программой не свете", как эстафета была подхвачена, и теперь она самая лучшая на планете. Так и до Вселенной недолго добраться.

 


MyTetra v.1.44.31 - Опубликован внеплановый релиз
15-09-2018
10:09:37

Процесс публикации Qt-программ никогда не был простым и однозначным. Все дело в том, что в Qt до сих пор нет готовых инструметов для подготовки релиза на разные операционные системы. Документация заявляет о наличии утилит windeployqt и macdeployqt, однако эти утилиты поставляются почему-то в исходниках и не доступны при обычной установке среды разработки. А такой утилиты как lindeployqt нет вообще как понятия. Как будто для Linux не нужно разруливать зависимости библиотек. А я всю разработку веду как раз под Linux.

 

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

 

Из-за этого, в предыдущей сборке PIM-менеджера MyTetra v.1.43.27 не были подключены все библиотеки печати. И печать из MyTetra просто не работала. Задним числом выяснилось, что недостаточно наличия libQt5PrintSupport, нужны еще библиотеки libcupsprintersupport.so для Linux и windowsprintersupport.dll для Windows.

 

Я бы мог сделать исправленную сборку, но решил, что смысла ее делать нет. Вместо этого сегодня сделан выпуск последней актуальной версии MyTetra v.1.44.31. Она отличается от предыдущего релиза только наличием поддержки формул. Эта поддержка еще будет дорабатываться в плане удобства (например, нужен предпросмотр формул). Но все остальное осталось так же как и в предыдущей версии, плюс добавилась поддержка печати.

 

Скачать новую версию можно, как всегда, на официальной странице MyTetra.

 

Примечание: Если кто не желает переустанавливать программу на новую версию, можно просто скопировать из архива каталог /printsupport, и печать заработает в предыдущей версии.


ЖЖшечка-стайл: Год после увольнения из Росатома (Часть 2)
11-09-2018
21:28:40

Фирма, в которой я удаленно работаю, занимается разработкой устройств высокоточной GNSS-навигации. Одно из развиваемых направлений - судовая гражданская навигация. Для навигационных устройств, которые выдают данные по протоколам BINR и NMEA2/3, требуется ПО, которое бы все эти измерения красиво показывало на мобильных устройствах.

 

Разработку я веду на C++ - фреймверке Qt с использованием QML. Это очень удобно, так как сразу получается бесплатная компиляция под десктоп 32/64 bit для Linux и Windows, и, что самое главное, под платформу Android. Мой код интегрируется с проприетарной библиотекой, которая обеспечивает парсинг NMEA и BINR протоколов, и которая до этого проекта существовала для нескольких embedded-платформ под 16/32 bit, плюс под Windows 32 bit компилировалась через какой-то древний Borland-компилятор. Да, в таком деле все время приходится работать с легаси. Зато, если понадобится, мы сможем сделать сборку хоть под микропроцессор Эльбрус, благо на последней выставке "ЭкспоЭлектроника-2018" уже появилась куча отечественных устройств на нем.

 

Недавно, сделав крупный релиз, я организовал проверку работы системы в "боевых" условиях на яхте:

 

 

 

 

В самом начале работы был нарисован оригинал-макет того, как должна выглядеть страница с навигационными датчиками:

 

 

 

 

В ходе работы были некоторые трансформации, в результате получилось вот такое Android-приложение с навигационным экраном. Практически, один-в-один, как заказывали:

 

 

 

 

Все стрелочки прикольно упруго двигаются, а цифровые счетчики "прокручиваются" как настоящие. Такое поведение можно отключить в настройках, но мне так больше нравится. Далее пришлось научиться работать из C++ со встроенными сенсорами мобильного устройства в ОС Android:

 

 

 

 

Встроенные сенсоры - это демонстрационная возможность. На самом деле настоящие навигационные данные передаются по сети по TCP-протоколу или берутся из файловых логов, если работает режим имитации. В планах передача данных по Bluetooth и USB/Com. Меню у приложения многоуровневое, и выглядит так:

 

 

 

 

Далее наметилась работа на поддержку картографии. Картография - это вообще отдельный большой мир. В новых релизах появилось окно, в котором отображаются слои Open Street Map и Open Sea Map. Конечно, это все демонстрационно, так как для реальной навигации должны использоваться профессиональные морские карты, но реализовано это будет позднее:

 

 

 

 

Для карт такой стиль экрана не очень подходит, так что видимо предстоит работа по переделыванию на планарный стиль, с картой во весь экран, без этих всех олдстайловых рамочек, кнопочек и счетчиков.

 

В общем, работа кипит.

 

* * *

 

Этим постом я сдержал обещание рассказать о том, как обустраивает свою жизнь программист после увольнения из "теплого" места. Я неимоверно рад, что в мире есть Интернет, благодаря которому такая деятельность как удаленная разработка вообще стала возможна. Да, иногда приходится ездить в командировки, но это лишний раз мобилизует, потому что к очередным испытаниям надо доводить проект по-максимому до вылизанного состояния.

 

Всем удачи.


ЖЖшечка-стайл: Год после увольнения из Росатома (Часть 1)
11-09-2018
23:02:16

В фервале 2017 года я опубликовал на Хабаре резонансную статью "Каково это — быть разработчиком в России, когда тебе сорок", а в сентябре уволился из болотной трясины из Росатома. Прошел год, наступил сентябрь 2018 года, и для тех, кто просил рассказать о том, что в итоге получилось, я пишу эту заметку.

 

В комментариях к вышеозначенной статье можно найти часть того, о чем будет рассказано далее. Но чтобы не рыскать по портянке из over 700 сообщений, все основные вещи я напишу здесь.

 

Итак. Увольнялся я в тот момент, когда "дошел до ручки", не имея новой работы. На тот момент я вел переговоры с буржуйскими рекрутами, с местными городскими производственными фирмами, искал работу в интернете на всяких HH-сайтах. В конечном итоге ни один из этих способов не сработал. Я сказал себе, что в крайнем случае влезу на фриланс-биржу и буду работать за еду.

 

Анализируя запросы, которые высказывали работодатели, я выделил два направления, в которых мог бы работать: программирование front/backoffice на PHP и разработки прикладного кода на C++. Роботодатели, котором требовались плюсовики, были в большинстве своем консервативны, и найти в этой сфере работу на удаленку я не мог, ибо все хотели работника в офис.

 

PHP выглядел более перспективным в плане удаленки, и я начал прокачивать свои навыки в программировании на фреймверке YII2. Я начал восстанавливать свой давнишний многолетний pet-проект, чтобы оценить скорость разработки и понять, смогу ли я его тянуть параллельно с другими проектами. Вместе с этим я продолжал искать работу через интернет. В принципе, работа была, но это была скучная работа во всяких веб-студиях, в которых надо было допиливать уже запущенные типовые проекты, 90% из которых - это интернет-магазины. Бее...

 

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

 

За все это время я успел наобщаться с разными работодателями, адекватными и не очень. Периодически выполнял тестовые задания, которые, такое впечатление, что давали "на отвяжись". Из-за одного неадекватного руководителя проекта, который успешно шифровался под адекватного человека (пока не дошло до конкретного дела) появился OpenSource проект MoveNoid. В этом тестовом задании я демонстрировал свои навыки по работе с C++, Qt, OpenCV, Box2d. И только после отправки тестового задания выяснилось, что ему нужен не C++ а C#, а про Linux он просто мечтал, а на деле нужна разработка под Windows. В общем, на рынке работы в области IT творился какой-то трындец. Или мне так везло, не знаю.

 

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

 

О самой работе рассказывается во второй части.


Обнаружена новая статья про PIM-менеджер MyTetra
07-09-2018
17:40:48

В декабре 2017 года некто Наумов Антон, скрывающийся под ником PRS516, написал развернутую статью про менеджер накопления информации MyTetra. Написал и написал, а автору ничего не сказал, потому что не обязан. И только сегодня эта статья была случайно обнаружена на просторах Интернета:

 

 

MYTETRA - Персональная база знаний

 

 

В этой статье меня заинтриговало вот эта фраза:

 

Нет простого инструмента для ссылок на конкретное место в другой записи. Можно сослаться только на запись «в целом». Хотя этот инструмент лично мне не нужен. Этот пункт мне озвучил инженер-конструктор. Ему надо ссылаться на конкретные пункты нормативных документов. Также он сообщил, что решил эту проблему введением специальных тегов.

 

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

 


В MyTetra появился ввод формул
06-08-2018
00:34:32

Ура! Сегодня произошло важное событие.

 

В экспериментальной ветке менеджера накопления информации MyTetra сделано крупное обновление кода, благодаря которому в MyTetra теперь можно работать с математическими формулами. Так как моя работа стала ближе к инженерному делу, у меня ребром встал вопрос о возможности ввода формул в своих личных записях. Примерно за месяц я добавил эту (достаточно сложную) возможность. Начиная с экспериментальной версии v.1.44.28 поддержка формул присутствует в MyTetra в полном объеме.

 

Для ввода формул используется новая клавиша со знакомым значком суммы:

 

 

 

 

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

 

Формулы вводятся, как это принято в научной среде, на языке разметки TeX:

 

 

 

 

Я перебрал несколько языков разметки: TeX, Libre/OpenOffice Math, MathML, и обнаружил, что кроме mimetex не существует готовых библиотек, которые можно было бы без проблем использовать в программах на языках Си или Си++. Для Libre/OpenOffice Math необходимо тянуть всю Java инфраструктуру. А для MathML нужно, по сути, запускать полноценный движок HTML-браузера, в котором производить рендеринг изображений с математическими выражениями. Поэтому был выбран самый легковестный и самый устоявшийся вариант.

 

Кстати, имеется возможность ввода русских (кириллистических) символов. Делается это с помощью тега {\cyr символы}, который задается в формате Washington Cyrillic:

 

 

В общем, в следующем официальном релизе поддержка формул уже будет работать.

 

Следите за новостями.

 


Страницы:  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Далее › 

Интересное на сайте


BASH » Cron Emulator

Многие системные администраторы Linux часто сталкиваются с одной и той же проблемой: при попытке запуска команды из-под демона Cron, она ведет себя не...


Flash-анимация » Анимированый логотип портала RockFM.ru

Оборудование: Pentium-200MMX, RAM 32Мб Среда: Xara X, Flash MX Год: 2002   Этот логотип я разработал для портала RockFM.ru. Задача стояла следую...


Мультиплатформенные игры » Ежик-попрыгунчик. Лесная тропа.

Игра про ёжика, который прыгает по подвижным платформам и собирает яблочки.   Эта игра писалась в рамках конкурса конференции разработчиков игр ...

RSS подписка

Подпишитесь на новости сайта по RSS

Поделиться этой страницей


Статистика


О, смотри-ка какое хорошее место. Дайте два!

Внимание!


На этом сайте разрабатывается программа MyTetra и её родственные проекты. Доступны к просмотру следующие базы знаний:

 

База Xintrea (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)

База Rarrugas (1, 2)

База Balas

База YellowRaven

База Yurons

База Lesnik757

База Shandor

База Sirrichar

База Anatolean

База Аrmagedec

База SorokinRed

База Deadelf79

База Adgaver (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)

База Pipitos1983

База Soxsten

База Silenn

База Shlyapnikova - херомантия и ригидность

База Svoynickname

База Larson227

База Velonski

База BrokeRU

База Mcold

 

Требуют доработки:

 

База Tairesh

База Ivnglkv

База Kolyag87

База Andyk101

База Garik456456

База Harpokrat

База SalexIzyh

База Duwaz

База RuDennn

База Manakaden

База Vitvrn

База Fanrok

 

Подробности на странице MyTetra Share.

 WebHamster.Ru
 Домик любопытного хомячка
Яндекс индекс цитирования
Почтовый ящик