Tag: софт

Про загребание денег лопатой на опенсорсах

Можно меня поздравить, сумма месячных “пожертвований” с Patreon, OpenCollective и Tidelift за мои опенсорсы добежала до 1000 долларов. Ну то есть, даже если полностью перестану получать деньги за рекламу то как минимум голодать уже не буду.

Это хорошо, потому что всякий депресняк “а вот как бы я повертелся без сайта” перестает давить на мозг. Ну и для ЧСВ денежка, полученная за “инженерные таланты” - намного приятнее, чем за умение барыжить рекламой.

Переделали генерилку эмбедных фонтов на FreeType

github.com/littlevgl/lv_font_conv

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

Поэтому пошли другим путем, скомпилировали FreeType в WebAssembly. Стало хорошо.

  • Все билды завернули в докер, усилий по установке - ноль.
  • Для монохромных шрифтов заюзали специальный монохромный хинтер. Получилось подозрительно хорошо, даже не ожидал.
  • Для “стандартных” шрифтов по умолчанию включили “легкий” хинтер. Он улучшает только горизонтальные линии, но при этом не ломает кернинг.
  • Это все по-прежнему умеет работать в браузере (лично мне не надо, но разработчики LVGL просили).
Слепили генерилку битмапных шрифтов для эмбедов

github.com/littlevgl/lv_font_conv

Я тут продолжаю развлекаться с мелкими электронными девайсами, и задался целью намутить там современный интерфейс. Почему-то исторически повелось, что если железка слабая, то интерфейс у нее уныл чуть менее чем полностью. А я с этим категорически не согласен. Сейчас уже есть мелкие цветные дисплеи с высоким разрешением, и вполне реально делать что-то вроде Material Design. Было бы желание.

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

Похоже нашлась замена для Sphinx Search

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

Недавно в очередной раз проверял альтернативы, и обнаружил github.com/manticoresoftware/manticoresearch. Оказывается сфинкс форкнули, и решили все нюансы, от которых у меня пригорало.

В качестве бонуса - в Мантикоре реализовали перколатор (обратный поиск). Это когда люди говорят “хочу отслеживать поисковый запрос” и получают уведомление при появлении новых объявлений (может иметь смысл для барахолки). То есть, вместо поиска тысяч документов по одному запросу проверяется каким запросам из многих тысяч соответствует один документ.

Будем переезжать. По крайней мере уйдет головная боль с поддержкой сфинкса, и все будет по-настоящему опенсорсное, как я люблю.

Ныряем глубже в С на эмбедах. Общие впечатления.

github.com/speedcontrols/ac_sc_grinder

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

Я как-то рассчитывал, что с PlatformIO быстро подключу нужные библиотеки и все будет хорошо. Ага, щаз…

  • Библиотеки с фиксированной точкой имеют левые привязки к фреймворкам, и просто не собираются.
  • В библиотеках эмуляции EEPROM куча левых define-ов, которые не переопределить.

Короче, возвращаемся к стандартному сишному аду, когда в проект копируются внешние исходники и что-то в них правится. Чуда не случилось.

Кастинг программеров stm32 на Rust, в опенсорсы

Посоны, я не могу успеть везде, поэтому ищу желающих поучаствовать в современных и модных молодежных проектах - прошивках для регулятора скорости и reflow-паялки.

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

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

  • Пишем на Rust, т.к. там есть нормальный пакетный менеджер и не потребуется забивать репозиторий тоннами внешних библиотек.
  • Rust дает гарантии статической безопасности, что очень круто для эмбедов. Не надо париться что где-то профукается указатель, освобождение памяти и т.п. Ну и вообще язык весьма хорош.
  • Возможно, надо будет доколбасить некоторые библиотеки (но основные типа HAL / RTOS для stm32 уже есть есть)
  • Всякую кастомизацию, типа генерации прошивок через веб я сделаю, отвлекаться не понадобится.
Мир глазами VPN

Я тут окончательно ушел в подполье, поставил на все девайсы VPN. Забавные ощущения. Не смог зайти на сайт и форум Khadam VIM1 board, а еще в трендах ютюба теперь немецкие ролики. Но вцелом удобно - стали не нужны всякие плагины к браузерам, можно спокойно подключаться к открытым вайфай-точкам и т.п.

Если кому интересно - выбрал NordVPN. Потому что на аккаунт дает до 5 девайсов прицепить (мне надо 4), и не выпиливает торренты. По цене - сейчас акция, 75$ за два года (~ 3$ в месяц). Ссылку не дам, она реферальная 😃

А в каком качестве вообще надо фотки хранить?

Сейчас в нодеке активно разбираемся с альбомами юзеров. Великая цель - сделать наконец-то всем нормальные альбомы и увеличить квоты до человеческих размеров. Ну так чтобы можно было “заливать чего угодно и не париться”. Чисто технически я точно смогу осилить 2 терабайта стораджа, ну или если сильно напрягусь, то 4-10. По прикидкам, выдать на нос 0.5-1 гигабайта реально. Ну и с учетом, что это все будет по альбомам, а не помойка как сейчас, то будет проще отделять полезное от того что не жалко. Конечно, будут всякие мелкие плюшки вроде комментариев к картинкам.

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

  1. Достаточно ли максимального размера 1024х768 (768х1024) или надо обязательно больше? Или меньше, типа 800х600 и так хватает?
  2. Если считать не в килобайтах, а в “штуках”, то сколько у вас вообще модельных фоток, которыми хочется поделиться?
  3. Профили JPEG можно полностью резать или надо оставлять ICC?
  4. С каким качеством нонче на сайтах принято jpeg жать?
  5. Какую информацию реально надо извлекать из фоток кроме геолокации и даты?
  6. Насколько критичен запрет на вставку картинок в сторонние сайты?
  7. … что я еще забыл?
Кто хочет покодить на node.js + angular?

Имеется желание в очередной раз улучшить мир, но не хватает рук 😃 . Задуман вот такой проект github.com/nodeca/softether-panel , веб-панелька для Softether VPN. Сам VPN весьма хорош, но “простая” настраивалка у него только под венду, а хочется универсально и “искаропки”.

В общем, если кто хочет прокачать скилы по node.js + angular и получить чумодан славы - свяжитесь со мной. Тому, кто учтёт мои глубокомудрые пожелания и обеспечит необходимое качество кода, готов выплатить 1000$. Только не надо относиться к затее как к способу быстро нарубить бабла. “Лишь бы работало” мне не надо. Лично себе я могу и ручками все настроить, без всяких панелек.

Мои шкурные интересы:

  • Посмотреть, как можно организовывать нодовские проекты для эффективной разработки web apps.
  • Увеличение ЧСВ от очередного вклада в опенсорсы.
скорость JS vs C

На меня иногда накатывает сделать какую-нибудь странную хрень для разминки мозга. Сейчас с одним комрадом переписываем алгоритмы упаковки/распаковки с языка C на Javascript. Результаты получились очень забавные. В последнем движке v8 разница по скорости всего в 1.3-1.5 раз.

github.com/nodeca/pako

Так что если кто-то как и я быдлокодит сайтики на node.js, то торопиться переписывать тяжелый код на C явно не стоит.

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

Проапрейдил Proxmox PVE на сервере

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

Надеюсь, за 4 часа никто не успел соскучиться.

Кто будет апдейтить Proxmox PVE 2.3 -> 3.0 из кастомной инсталляции, имейте в виду 2 вещи:

  • скорее всего надо будет переставить загрузчик grub
  • дебиан всосет свое ядро 3.2, его надо будет снести, или указать grub чтобы грузил PVE-шное 2.6.32-20
API на fontello.com

Вот казалось бы, нафига API на сайте, который иконки раздает? Оказывается смысл есть - программерам влом ручками импортировать свои настройки и выливать иконки обратно. Надо чтобы из командной строки 😃 . Ну мне не жалко, сделал:

github.com/fontello/fontello#developers-api

Действительно удобно.

Опять работа :)

Нужно 2 программиста на удалёнку. Делать пресловутую нодеку. Технологии в основном node.js + mongodb

  • Денег ориентировочно 50 т.р/мес если человек крут. Или 70 если аццки крут.
  • Особо подчеркиваю: работа удаленная, проект опенсорсный. Будет ли это плюсами или минусами в вашем случае - решать вам.
  • Пишем сюда: vitaly@rcdesign.ru , постарайтесь сначала предоставить информацию о себе, даже если будут вопросы
OMG... демка пятой воблы

Поразительный дизайн! Удивительно, какое говно можно продавать.

www.vbulletin.com/vb5demo/

Ну а для технически подкованных:

  • html5 не осилили
  • тонны скриптов внизу
  • старые-добрые таблички
  • градиенты картинками
  • … дальше смотреть не смог …

А теперь, стихотворение!

Мне мама в детстве выколола глазки,
чтоб я в шкафу варенье не нашел.
Я не смотрю мультфильмы, не читаю сказки,
зато я нюхаю и слышу хорошо!

Редактор Sublime Text 2

Пацаны из webupd8 собрали инсталлятор редактора Sublime Text 2 под убунту. Для ленивых. Вчера поставил, и сразу понял, почему программеры от этого редактора писяють кипятком и радостно покупают необязательные лицензии. Он действительно нереально крут.

Еще один иконочный фонт

fortaweso.me/font-awesome/

Наглядное подтверждение, как одни и те же мысли проходят в голову нескольким людям одновременно. Когда начинали делать фонтомас, было всего 2 качественных открытых фонта с иконками - iconic и websymbols. За 1 месяц(!) анонсировали еще два - Entypo и Awesome.

Попёрла тема.

Github сломали

github.com/…/b83965785db1eec019edf1fc272b1aa393e6d…

В рельсах нашли неслабую дыру. А учитывая, как быстро все обновляются - скоро по инету будет гулять много весёлых червячков.

Автор, кстати, 3 дня назад предупреждал о дыре и просил пофиксить. А теперь ему похерили аккаунт. IMHO, это была очень плохая идея.

UPD. Восстановили и внесли дополнения в правила github.com/…/1069-responsible-disclosure-policy .

Ямлоцацка

Сделали на JS-YAML прикольную дурь: nodeca.github.com/js-yaml/ . Можно прямо в браузере наколошматить ямловский сорец и посмотреть как отпарсится. Серверные скрипты не используются.

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

JS-YAML - свершилося

Браться и сестры жабаскриптеры! Теперь у вас есть нормальный парсер ямла, а не тот клозет, которым приходилось пользоваться раньше.

github.com/nodeca/js-yaml

Продьюсер - самизнаетеко. В главных ролях - ixti. Консультанты - cce, ingy, rz с канала #yaml на @freenode.

Слайды с хайлоада

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

www.slideshare.net/profyclub_ru

За доступ к видеоархиву на сайте хайлоада хотят 350 баксов. Пока жаба задушила 😃 . Да и времени нету чтобы все видео просмотреть. Так что листаю слайды, набираюсь ума.

Еще одна "халява" для SSL-серитификатов

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

www.startssl.com

Смысл в том, что платишь только за валидацию своей персоны/организации. Потом клепешь сертификатов сколько влезет. Стандартная валидация стоит 60 баксов. Для справки, за wildcard на RC Design я платил 130 в год. Причем за несколько IP там хотели отдельные бабки.

Регистрация в startssl откровенно гиковская. У меня получилось со второй попытки, после вопросов в суппорт 😃 . Но если кому нужны сертификаты - дело того стоит. Вообще этот провайдер существует относительно давно, но я о нем узнал только сейчас.

Клоуны опять победили все браузеры

В предверьи выхода IE10 майкрософт порадовал очередными эпическими тестами, из которых следует, что их браузеры самые html5-ые

samples.msdn.microsoft.com/ietestcenter/#html5

Советую также обратить внимание на колонку с IE9. А теперь сравните с реальным положением вещей caniuse.com . Реальный расклад говорит нам, что глубина ануса, где сидит IE, стала несколько меньше. Это конечно радует. Но о хорошей поддержке html5 в IE могут говорить только совсем больные люди.

Как говорится, весна покажет, кто где срал. У меня пока количество IE-браузеров только уменьшается. Осталось 17.5%.

На Github добили "почти нормальный" issue tracker

Неплохо. Теперь есть Milestones, и можно назначать задачи конкретным людям. Ну и прикольные плюшки вроде указания issue ID в коммите для автоссылок. А я сегодня уже искал, где нарыть готовый хостинг redmine-а.

github.com/…/831-issues-2-0-the-next-generation

Графиков, правда, еще не генерят 😃 . Но мне оно вроде и без надобности.

Google Apps for Domains - с полным набором сервисов

Сегодня обнаружил, что в Google Apps наконец-то добавили поддержку ВСЕХ гуглосервисов. Раньше там фичи были ограничены только почтой, документами, календарем и еще несколькими фишками первой необходимости.

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

Включить просто - заходим админом домена, и производим конвертацию аккаунтов.

Теперь смог полноценно покрутить вебовский андроид-маркет. В аккаунте можно посмотреть все свои телефоны и выбрать, какой софт куда ставить. Прямо из браузера. Прикольно.

Путин отсыпал СПО-шникам план

corp.cnews.ru/news/line/index.shtml?2010/12/27/421…

план

Я аж прослезилсо 😃 . К 2015 году чиновники и бюджетники пересядут с мерседесов на волги на линупс. Надо срочно выпускать rc-linux для участия в распилах.