Комментарии 50
У вас бы быстрее популяризация пошла, если бы Вы начали переводить для начала вводную по elixir в целом. Подобные статьи довольно трудно воспринимать людям, которые не знакомы (либо плохо знакомы) с синтаксисом самого языка. :)
Всю статью по написанию блога на эликсире можно сократить до:
docker run --name some-wordpress -e WORDPRESS_DB_HOST=10.1.2.3:3306 \
-e WORDPRESS_DB_USER=… -e WORDPRESS_DB_PASSWORD=… -d wordpress
На освободившемся месте можно рассказать, как на эликсире легко и непринуждённо пишутся whatsapp'ы и видеокодировщики, как миллионы акторов крутятся в стройном танце, обслуживая сотни тысяч игроков в agar.io-клоне на сервере из двух ардуин. Тогда, я думаю, и популяризация пошла бы семимильными шагами. А очередной блог на хаскеле или c++ порождает всё тот же вопрос — зачем? Может всё-таки задачу, пусть и учебную, подобрать более релевантную имеющемуся инструменту?
Если вы на шареде, вам не сто́ит писать свой движок блога.
Время, необходимое на запуск проекта, не играет никакой роли. Имеет смысл обсуждать время на поддержку проекта. Но, к сожалению, этот цикл (я читал оригинал) не дает представления «зачем это вообще», почему в продакшене иногда важен «hot update» и «zero downtime», и так далее.
Если вам надо что-то, что поднимется за пять минут и задеплоится на шаред — лучшей альтернативы jekyll’у люди не придумали.
сервер, который тоже надо админить, обновлять, чинить дырки, беречь от 0-day и ddos и т.д.
Вы из девяностых-то годов прошлого века выбирайтесь уже. Heroku и тысяча его конкурентов.
Я что-то пропустил и руби теперь дают на шаредах?
Даже на github-pages :)
Jekyll генерирует статический сайт.
github-pages
запустит билд для вас. git commit -m 'New post'
+ git push
и ваш блог обновлен. Мне неизвестны способы, требующие меньшего количества телодвижений.
Когда у вас будет пара тысяч записей в блоге и задача «отыскать записи, со ссылками на habr (с упоминаниями Серёги)» станет более-менее повседневной, ребята в консоли продолжат тратить на обновление блога секунду, а в Виллабаджо начнется эротический танец вприсядку, потому что grep
в том месте, в котором вы сейчас оказались (например, в телефоне) работает одинаково быстро, а вот поиск по вашей базе в шареде может оказаться уже не настолько прозрачным.
Ну и кроме того, хранить текстовые записи в html в базе — это извращение, которое умерло 20 лет назад.
Слушайте, ну вы бы прямо сказали от входа, что занимаетесь поднятием блогов для секретарш на шареде — я бы и слова бы не сказал.
Тут просто как бы тема про другое, а вы влезли с настолько же амбициозным, насколько и неумным обобщением ad web developentum.
Ну и кроме того, да, руби дают на очень многих дешевых шаредах.
А зачем вообще нужно русскоязычное сообщество (не канальчик в слаке, а именно целое сообщество)? Чем плохо коммитить в мировое пространство?
Вот сравните, скажем, вклад в развитие языка медузы и thoughtbot’а (две первые картинки у вас). Пока оно вот так, кого вы ждете у себя в сообществе? Я не обличаю, мне действительно интересно: зачем бы мне рассказывать своим друзьям про команду, которая «готовит крутой проект», когда вокруг полно команд (и просто людей), которые крутые проекты ведут открыто, с возможностью пощупать код и приобщиться к разработке? Если у меня у самого, скажем, три активно развивающихся проекта?
Сайт, очевидно, со временем превратится в лебедя, а пока лишь даёт небольшое представление что к чему, с картиночками более-менее известных компаний, просто использующих либо активно развивающих язык.
Если у вас у самого 3 активно развивающихся проекта, особенно если они преследуют образовательные цели, да ещё и бесплатно дают доступ к информации, да ещё и на тему Эликсира, то предлагаю скорее поделиться ими с сообществом! Наш проект тоже абсолютно открытый, но пока находится в процессе формирования. Не надеюсь, что вы о нём сейчас расскажете друзьям, однако практически уверен, что сделаете это через некоторое время.
> Не надеюсь, что вы о нём сейчас расскажете друзьям
У вас так на сайте написано, я же не сам придумал эту гениальную формулировку.
С другой стороны, я не сторонник велосипедостроения. В экосистеме Elixir’а на сегодняшний день полно́ незанятых зияющих ниш: бери и воплощай. Но у вас на сайте не найти ссылки ни на один захудалый пакетик на hex.pm (или я плохо искал?) Как и у медузы, кстати.
И вот видя такое отношение соотечественников к популяризации, как-то сразу хочется обратно к Валиму и Мак Корду, которые и на письма отвечают, и в рассылке живьем — обучайся не хочу, и книжки пишут на тему «как это было сделано», а не «как это надо бы сделать».
Сами, заметьте, пишут, а не переводят неведомо что.
Со своей стороны приложу все усилия, чтобы лендинг превратился в полноценный сайт с тонной полезной информации по Эликсиру с кучей авторского материала и с совершенно необычным обучением, от которого даже Хосе и Крис придут в восторг.
Ну а получится ли у меня это, покажет только время.
Попробуйте погуглить ответ на вопрос, который обсуждался в канальчике.
Причем если это было в IRC/jabber, то ответ как раз найти можно. В отличие от слака/телеграма.
Блог пишется на рельсах за 15 минут и ничего лучше для написания блога за 15 минут не появилось и не появится, потому что рельсы полностью закрыли эту тему.
Лучше рассказать про вебсокеты, компоновку ответов от разных источников на сервере и т.п.
А заодно рассказать про «дружбу» реакта с phoenix.
Если честно, то сильно брезгую медузой. Мне очень противно оставлять вам свою почту, пока этот проект по непонятной причине там находится.
Почему не выложен код проекта?
Неплохо было бы дать перевод на великий язык или хотя бы объяснение слова скаффолд. Можно ли это считать собственным именем, превратившееся в термин IT-жаргона?
Никак не пойму назначение анонимной функции в параметрах объявления формы:
<%= form_for @changeset, @action, fn f -> %>
Функция пустая или только ее объявление!?
В описании сказано: "form_for/4
receives the Ecto.Changeset
and converts it to a form, which is passed to the function as the argument f"
.
Я правильно понимаю, что это аналогично конвейеру, передающему форму во вложении от функции к функции?
раньше там стоял более понятный `do |f|`, где в палочках передается аргумент анонимной фукнции.
Она не пустая, её тело будет до следующего end и в этом теле по сути вместо кода будет кусок темплейта.
Парсер темплейтов это прочтет и вставит туда код, выплевывающий в буфер этот кусок темплейта.
Я правильно понял, что от фрагмент кода fn f -> до <% end %> составляет темплейт? Хотелось бы знать формальные правила составления темплейта в Phoenix.
Например, какие бывают элементы темплейта? Когда они обрамляются разделителями контента <div>... </div>?
И еще. У меня контент формы в Phoenix
выстраивается вертикально, а хотелось бы горизонтально. Где спрятан этот механизм выравнивания?
Создание движка для блога с помощью Phoenix и Elixir / Часть 1. Вступление