- PVSM.RU - https://www.pvsm.ru -

Народное финансирование разработки веб-браузера

Коротко: я хочу создать самый лучший на свете веб-браузер, но для этого мне нужна помощь народа. Ваша помощь, читатели! Если вам это не интересно, смело проходите мимо. Ответы на самые важные вопросы я дал под катом. Не стесняйтесь задавать дополнительные вопросы, если хотите узнать что-то ещё.

Кто ты такой, и чего ты хочешь?

Зовут меня Дмитрий; известен я под ником SoUrcerer. Последние несколько лет я занимаюсь разработкой и портированием приложений для «советской» операционной системы Колибри [1]. За два года нерегулярной работы я смог создать полноценный растеризатор шрифтов [2], а так же потрировать: эмуляторы Gameboy [3], SNES [4], Playstation [5], ARM [6] (да, можно запускать Linux); библиотеки для работы со шрифтами [7] truetype [8] и образами [9]iso, vhd, cow, raw; приложение для чтения pdf [10]; интерпретаторы Lua [11], Basic [12], JavaScript [13]; многие другие утилиты и приложения, включая дизассемблер [14], конверторы графики и текста разных форматов, упрощенный аналог cron [15].

Хочу я создать быстрый и нетребовательный к памяти веб-браузер с поддержкой современных стандартов (пока что ориентир — это Acid3 [16]). Веб-браузер будет работать не только в Колибри; я хочу, чтобы он запускался в Linux, Windows, Android, и вообще на любых платформах, имеющих ANSI C-компилятор.

Зачем мне нужен еще один веб-браузер?

В мире существуют десятки веб-браузеров; большинство основываются на платформах WebKit, Gecko, Trident и Presto. Все они обладают одним общим недостатком: высокими требованиями к вашему персональному компьютеру. Несколько лет назад вы вполне могли себе позволить наслаждаться всеми прелестями веба, имея 64 мегабайта памяти и процессор с частотой 200 МГц. Сегодня для комфортной работы в сети нужны гигагерцы, гигабайты (привет маркетологам) и видеокарта с аппаратным ускорением, даже на мобильных устройствах.

Именно поэтому браузеры типа dillo [17] и netsurf [18] сначала кажутся «волшебными». Ещё бы: десяток открытых вкладок в dillo вряд ли потребует больше 5-7 мегабайт ОЗУ! Однако, через несколько минут работы эти браузеры вызывают разочарование. Нет поддержки новых тегов HTML, нет полной поддержки CSS, нет JavaScript, и — главное — код настолько заточен на статический HTML, что для поддержки всех этих важных вещей потребуется переписать браузер практически с нуля.

Несколько лет я разыскивал идеальный веб-браузер, изучал коды десятков известных проектов, начиная от links и w3c, и заканчивая Firefox и Chromium, и пришел к выводу, что создать современный и в то же время действительно легкий браузер — возможно. Потребуется время, потребуются средства и много работы, но это возможно. Стоит овчинка выделки? Я отвечаю: «да».

Ты уже делал что-нибудь подобное?

Около года назад я создал прототип браузера, идеологически сходного с Opera Mini. Веб-страницы поступают на компьютер-клиент через прокси-сервер; прокси-сервер обрабатывает код страниц так, чтобы браузеру было легче отображать его на тонких клиентах и мобильных устройствах. В прототипе неплохо работают статические страницы с любым сложным форматированием, потребление памяти составляет порядка 300-400 килобайт на одну открытую страницу. Явный недостаток этого прототипа — невозможность поддержки JavaScript. Именно поэтому его разработка была остановлена.
Народное финансирование разработки веб браузера

Хорошо, я хочу поддержать проект. Что требуется от меня?

image [19]Я, как и любой человек, время от времени хочу кушать, и мне необходимо где-то жить. Чтобы я мог работать над браузером постоянно, мне необходимо 15 тысяч рублей в месяц — ровно столько я трачу на оплату квартиры и покупку продуктов. Чего уж греха таить, мне не помешал бы и новый ноутбук, вместо доживающего свои последние дни старичка 15.6"/2.0GHz Celeron/1Gb/80Gb, но всё зависит от людей, которые решат меня поддержать.

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

Веб-форма для поддержки через Яндекс-деньги [19] — расположена в блоге KolibriOS.

Когда будет результат? Есть какие-нибудь гарантии?

Я начну работу, как только сумма собранных средств превысит 15 тысяч рублей. Начиная с этого момента, я буду тратить на проект около 40 часов в неделю. После создания и документирования основных частей браузера, будет открыт доступ к git-репозиторию. Статьи для Хабрахабра про интересные моменты разработки я обещаю писать не реже одного раза в месяц. Других гарантий, кроме моего честного слова [20], я предоставить, к своему глубокому сожалению, не могу.

Автор: sourcerer


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/brauzer/18252

Ссылки в тексте:

[1] Колибри: http://board.kolibrios.org

[2] растеризатор шрифтов: http://habrahabr.ru/post/119608/

[3] Gameboy: http://board.kolibrios.org/viewtopic.php?f=43&t=1953

[4] SNES: http://board.kolibrios.org/viewtopic.php?f=43&t=1956

[5] Playstation: http://board.kolibrios.org/viewtopic.php?f=43&t=2101

[6] ARM: http://board.kolibrios.org/viewtopic.php?f=43&t=2050

[7] шрифтами: http://board.kolibrios.org/viewtopic.php?f=24&t=2059

[8] truetype: http://board.kolibrios.org/viewtopic.php?f=24&t=1661

[9] образами : http://board.kolibrios.org/viewtopic.php?f=39&t=1938&start=15#p39738

[10] приложение для чтения pdf: http://board.kolibrios.org/viewtopic.php?f=38&t=1958

[11] Lua: http://board.kolibrios.org/viewtopic.php?f=45&t=1663

[12] Basic: http://board.kolibrios.org/viewtopic.php?f=45&t=1932

[13] JavaScript: http://board.kolibrios.org/viewtopic.php?f=45&t=2020

[14] дизассемблер: http://board.kolibrios.org/viewtopic.php?f=45&t=1574

[15] аналог cron: http://board.kolibrios.org/viewtopic.php?f=42&t=1684

[16] Acid3: http://acid3.acidtests.org/

[17] dillo: http://www.dillo.org/

[18] netsurf: http://www.netsurf-browser.org/

[19] Image: http://blog.kolibrios.org/2012/10/kolibrios.html

[20] кроме моего честного слова: http://habrahabr.ru/users/sourcerer/topics/