negamaxi

negamaxi

На Пикабу
2395 рейтинг 40 подписчиков 3 подписки 15 постов 1 в горячем
Награды:
10 лет на Пикабу
2222

Децентрализованный музыкальный проигрыватель

Всем привет. Хочу рассказать о проекте, над которым работаю в свободное время. Назвал я его «Патефон» и это полностью децентрализованный, распределённый, безсерверный, p2p музыкальный проигрыватель. Вот так выглядит актуальная версия программы:

Децентрализованный музыкальный проигрыватель

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


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


P2P-системы известны своей устойчивостью к цензуре, блокировкам и региональным ограничениям. «Патефон» не исключение, поэтому будет работать хоть за Великим Китайским Фаерволом, хоть в КНДР, хоть на Марсе (наверное, не проверял).


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


Всё описанное выше доступно в актуальной версии приложения. Дальше я расскажу о запланированных нововведениях.


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


Персональная фонотека - ещё одна из первостепенных задач. Пользователь сможет формировать коллекцию любимых альбомов. Такие альбомы будут загружаться на устройство пользователя в обязательном порядке и будут доступны для прослушивания в оффлайне. Также персональную фонотеку можно будет синхронизировать между устройствами при помощи Google Drive.


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


Кроме того, есть планы на «безголовую» версию приложения, которую можно будет запустить на домашнем медиасервере и подключаться к ней с остальных устройств через браузер. Если вы пользуетесь Plex, то знаете, насколько это удобно.


А теперь о недостатках:


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


- Каждый раз, когда вы расшарите альбом, он будет скопирован в специальную папку. Таким образом на каждый гигабайт опубликованной музыки будет занят ещё один гигабайт. Но это не навсегда.


- «Патефон» не обеспечивает анонимности пользователя. Не составит большого труда посмотреть, что вы раздаёте, и «вычислить вас по IP».


- Приложение всё ещё на ранней стадии развития, так что если словите баг - не удивляйтесь а смело репортите issue на GitHub.


- - - - - - - - - - - - - - -


Вот и всё. Если проект вас заинтересовал, то добро пожаловать на:


Сайт приложения

Твиттер

GitHub


Актуальные версии программы доступны как на сайте, так и на GitHub. Есть сборки для Mac, Linux и Windows.


- - - - - - - - - - - - - - -


Технические детали


«Патефон» использует современный протокол распределённого обмена данными IPFS («МежПланетарная Файловая Система»). Если вы смотрели «Кремниевую долину», то что-то очень похожее разрабатывают главные герои последние два сезона.


Само приложение написано на Electron.js — популярном кроссплатформенном фреймворке для создания десктопных приложений при помощи стандартных веб-технологий.


Спасибо за внимание! Отдельная благодарность @DEgITx за помощь в разработке и подготовке статьи к публикации.

Показать полностью 1
4

Вопрос экспертам

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

Реалити шоу "Как стать айтишником", отчёт за 2 недели

Продолжаю эпопею http://pikabu.ru/story/iz_nedozhurnalistov_v_nedoprogrammist.... Если вкратце, я решил забить на диплом журналиста, попробовать в программирование и сделать из этого видео-блог.


Что я скажу. Не так всё просто. Понтов было на "сайт за пол недели", а закончилось вот только на днях. Сперва я решил сделать выпуск о том, как оформить шустрое рабочее окружение из голой Ubunt'ы. Честно скажу, первая версия этого выпуска меня настолько выбесила, что я снёс к чертям всё, что сделал за два с лишним часа (в том числе и установку Убунты) и на следующий день устанавливал, настраивал и записывал всё с самого начала. Как думаете, во второй раз получилось лучше? Нет, и это меня выбесило. Я впал в апатию, но внезапно это сыграло мне на руку: положив на свой бесконечный перфекционизм немного похуизма я выложил выпуск в таком виде и с тех пор больше не парился.


Кстати, вот такой рабочий стол у меня по итогу:

Потом пару дней пришлось потратить на то, чтобы по-нормальному создать YouTube канал, о чём тоже записал отдельный выпуск. Только к третьему выпуску я наконец подобрался к сути дела - начал писать свой первый (с оговорками) сайт - draftup.org.


Несмотря на то, что базовые вещи мне удалось осилить уже в первом выпуске, постоянно что-то мешало довести дело до конца, и деплой сайта на сервер постоянно откладывался. В итоге создание сайта растянулось на 5 выпусков (~8 часов), плюс отдельные выпуски под настройку Git'а и создание логотипа в GIMP / Inkscape (угнал у MaterialUp / last.fm).

Самое смешное (кому как), что многие из возникших по ходу дела проблем были на самом деле не проблемами, а моими загонами. Половину 5 выпуска я подбирал цвет двум строчкам - как это по-другому назвать? Лишний раз убедился, что терпеть не могу всё, что связано с графическим дизайном. Никаких чётких целей и задач, надо что-то там "видеть".


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

Из более серьёзных проблем - отдельные css-правила, особенно flexbox. Его поведение разбито на большое количество отдельных правил, что постоянно сказывается на производительности мыслительных процессов. Особенно когда пишешь в час ночи. В одном из выпусков я минут пять искал причину одного косяка, пока не допёр, что забыл перезагрузить страницу.


Но в целом не было таких проблем, которые нельзя было решить при помощи гугла и Stack Overflow. Самая сложная стадия, которую я запомнил с моих прошлогодних экспериментов - собственно залив сайта на сервер - внезапно прошла как по маслу, пусть из этого и получился самый длинный выпуск. Но тут надо сказать спасибо туториалам от хостинг-провайдера. Всё расписали как для детей, от установки пароля до настройки SSL-шифрования (год назад с этим был адский ад).


Ну и собственно, что в итоге по цифрам:

- 81 строчка HTML

- 326 строчек CSS (включая промежутки)

- 8 строчек JS (серверная часть)


И выглядит всё это дело вот так:

Примитивная хтмл-страничка со стилями, без клиентского javascript'а. Серьёзные сайты так не делаются, но, как сказали в одном фильме, сперва изучи классику, а лишь потом берись за современное искусство. Само собой, я не перестану над ним издеваться, у меня ещё много вопросов осталось, которые неплохо было бы разобрать (оптимизация загрузки, например). Но графу "Наши проекты" тоже надо как-то заполнять. Пока там одни единственный проект, который мы пилим с друзьями, и этого маловато. По этой причине я решил не ходить вокруг да около, а начать пилить со следующей недели социальную сеть. Ба.


В этот раз всё будет по-взрослому: Webpack для разработки, React для клиента, возьмусь за серьёзные базы данных и вообще пущу бороду и куплю велосипед. Такие дела, ждите новостей.

Показать полностью 4

ItGum 1 : Настройка рабочего окружения Linux для работы на старом ноуте

В продолжение http://pikabu.ru/story/iz_nedozhurnalistov_v_nedoprogrammist...


Перед тем как с головой погрузиться в мир фротненд-разработки решил настроить для себя шустрый и легкий рабочий стол, бо работать придётся на старом лаптопе. За основу взял Федору Убунту Линукс, причём мини-издание, чтобы в комплекте шло лишь минимально-необходимое, а всё остальное я доставлял ручками.


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

ItGum 1 : Настройка рабочего окружения Linux для работы на старом ноуте

Ссылка на выпуск: https://www.youtube.com/watch?v=HXwizAEGvUk


БЗВ. пришлось пересоздать канал на ютубе.

Показать полностью 1
1

Devin Townsend Project - Transcendence (2016)

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


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


Я это всё к чему... Да ни к чему. Так, накипело. А в центре моего внимания сегодня Человек-Вселенная - лысый черепок всея Канады Девин Таунсенд, и его новый студийник.

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


Transcendence - лучшая его работа в рамках DTP, и однозначно самая вылизанная по звучанию (в своих новых наушниках слушал бы её на репите днями, но нельзя). Тут нет попыток заигрывать с откровенной попсой, как на позапрошлогоднем Sky Blue. Альбом больше похож на попытку сделать сиквел Ghost, только с гитарами и вокалом. Это целостная, гипнотическая работа, прогрессивный метал во всей своей красе - мелодии не насилуются, быстро сменяют одна другую. Лично для себя я нашёл лакомый кусочек в 8 из 10 треков. Это пиздец как много, это пиздец какой праздник на моей улице.


Как заведено ещё с Epicloud, в комплекте с основным альбомом идёт диск 2. Как заведено ешё с Epicloud, в интернетах сразу же начался срач "второй диск лучше первого". Это типа демки, но на самом деле это полноценный второй альбом, который тоже ещё предстоит расслушать.


На видосы я всё ещё не насобирал, так что ловите ссыль: https://www.youtube.com/watch?v=44TzcehU0V8

Показать полностью 2
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества