This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-08-25
Channels
- # admin-announcements (3)
- # alda (2)
- # beginners (10)
- # boot (44)
- # cider (31)
- # cljs-dev (5)
- # cljsjs (2)
- # cljsrn (17)
- # clojure (181)
- # clojure-austin (2)
- # clojure-brasil (18)
- # clojure-canada (1)
- # clojure-conj (5)
- # clojure-dev (11)
- # clojure-gamedev (30)
- # clojure-russia (380)
- # clojure-spec (50)
- # clojure-uk (35)
- # clojurescript (146)
- # clojutre (1)
- # component (1)
- # cursive (62)
- # datomic (27)
- # dirac (7)
- # editors (23)
- # emacs (7)
- # events (34)
- # funcool (22)
- # hoplon (134)
- # jobs (22)
- # jobs-rus (7)
- # juxt (1)
- # kekkonen (1)
- # lein-figwheel (54)
- # leiningen (7)
- # luminus (2)
- # off-topic (5)
- # om (4)
- # onyx (27)
- # proton (5)
- # protorepl (2)
- # re-frame (16)
- # reagent (29)
- # rethinkdb (2)
- # schema (1)
- # untangled (61)
- # yada (9)
удалось побороть лаги в редакторе intellij idea при использовании FiraCode, через настройку Settings > Appearance > Antialiasing -> Editor:Grayscale
@yashaka Спасибо за комментарии и ссылочку. Пока что думаю про что-то в духе "clojure.spec vs static typing", но ещё денёк-два подумаю и там уже решу.
@comerc Ну че выложил статью?
может лучше в выходные? может еще кто вычитает? вон как Роман вычитал хорошо, но он только первую половину
Так господа
У меня дилемма
ВОт у меня есть репозиторий, я думаю просто выложить ссылку, или надо все-таки по шагам рассказать про каждую часть?
Кстати говоря, можешь в PS написать прямолинейно "ищу работу". Один знакомый так устроился неплохо.
В этом и задумка статьи )
Не понимаю, как работает подсчет кармы на Хабре. Заминусовали коммент, карма должна уйти в минус, а она вчера понизилась на две единицы, а потом вернулась обратно на одну. Каким-то образом я получил иммунитет? Плюсанул статью и карму автора. Еще раздал оставшиеся плюсы в карму котанам. Больше вроде ничего не делал. https://habrahabr.ru/post/308446/#comment_9769494
А тут будут желающие почитать статью перед публикацией?
@lowl4tency: я говорил про вот этот пример https://habrahabr.ru/post/274129/
при том, что чувак сидит в Калиниграде. правда у него стек инструментария попсовый node.js.
https://github.com/comerc/Rewriting_Your_Test_Suite_in_Clojure_in_24_hours_RU/blob/master/article.md
сам блог http://www.lispplusplus.com/2013/10/mass-clojure-file-formatting-with-emacs-batch-mode.html
ну дада, надо чтоб был мессадж что все ЯП кроме лиспов говно, ну и редакторы все кроме емакса сосут Чтоб охватить бОльшую аудиторию
профит емакса? или чо?
ну то что можно заюзать всю скриптовую мощь elisp и либ иже с ним, хоть clj-refactor и запустить в batch режиме
аа, смысла добавить в статью наверно нету ага, там просто упоминается что они не смогли починить отступы, а тут вот одно из решений просто
я просто сюда кинул для общего развития
гг, у меня емакс 90 метров жрет, а клиент для слаки 1.5гб, прогресс
про emacs кто спрашивал аргументацию? https://www.youtube.com/watch?v=u0hVc-wCYuE&feature=youtu.be&t=495
@nicola: вроде @abtv просил его дождаться две недели, чтобы поучаствовать про om.next. но уже все сроки вышли 🙂
А есть какой-то способ поиска в истории нашего чатика? я накидывал, кого можно призвать, да все уже похерилось.
> Заминусовали коммент, карма должна уйти в минус, а она вчера понизилась на две единицы, а потом вернулась обратно на одну. @comerc: плюсы/минусы к статьям и комментариям влияют на рейтинг, а не на карму
да, подробности описаны на сайте: https://habrahabr.ru/info/help/karma/
полтора месяца назад нашёл какой-то сервис, где можно держать архивы слака забесплатно для opensource сообществ. похерил сцылку
но там надо было получить админский доступ в слаке и заплатить денюжку. я написал @gjnoonan, чтобы открыл и что я готов заплатить. ответа так и не получил. а теперь не вижу свое письмо в личке.
не, что-то другое. помню только зрительно, как выглядит интерфейс. там было перечислено дофига каналов. и руби и т.п.
блин, точно! это оно. или дизайн поменяли, или у меня память отшибло. хожу мимо битый час 🙂
ну все равно - хоть что то 🙂 а откуда эта штука? https://clojurians-log.clojureverse.org/clojure-russia/ это что ли по умолчанию в слек такое есть?
Gavin-John Noonan (owner), Anna Pawlicka, clojurians-inviter, Donny Burnside, Robert Stuttaford, and Sean Corfield.
> adulteratedjedi [12:25 PM] > @comerc I have received no message from you to answer?! I will take a look at your link .. we do have a log bot set up by one of the community members also
@comerc В целом у меня пока впечатление от Om.Next не очень, прежде всего из-за почти полного отсутствия документации и примеров (тех, которые есть, мало). Я еще серверный парсер для Om.Next не дописал; то есть клиентский парсер написал, а серверный поленился сделать. Я пока про него не смогу рассказать. @a.espolov @lapooh - вы готовы рассказать про Om.Next? знаю, что вы писали приложения с Om.Next))
@abtv: я прям все концепции не использую. на данный момент апп вообще с бекендом на django работает
@abtv: а это не подходит в качестве учебного пособия? я вот прямо сейчас собрался учиться 🙂 https://awkay.github.io/om-tutorial/
чет не понимаю систему хабра. вчера получил статус - пользователя. и писал коменты без модерации. сегодня написал, и опять с проверкой
надо нам создавать партийную ячейку против минусаторов. иначе не продвинем Clojure в комментах 🙂
намбер ван Milfgard недавно сам признался, что статьи билайна плюсуют все сотрудники Хабра в обязательном порядке 🙂
этот чат превратился в чат комментов на хабре, ребят создайте отдельную комнату для этого
@rmuslimov не ругайся! лучше вычитай полезную статью для Хабра 😇 https://github.com/comerc/Rewriting_Your_Test_Suite_in_Clojure_in_24_hours_RU/blob/master/article.md
кстате по задачкам, не могу найти в документации, вот этот прием t# https://github.com/seryh/example-selenium-project/blob/master/src/example_selenium_project/profile.clj#L98
@seryh: я вчера проходил
;; Error Handling
;; ============================================================================
;; Error handling in ClojureScript is relatively straightforward and more or
;; less similar to what is offered in JavaScript.
;; You can construct an error like this.
(js/Error. "Oops")
;; You can throw an error like this.
;; (Highlight and evaluate the `throw` form below)
(comment
(throw (js/Error. "Oops")))
;; You can catch an error like this.
(try
(throw (js/Error. "Oops"))
(catch js/Error e
e))
;; JavaScript unfortunately allows you to throw anything. You can handle
;; this in ClojureScript with the following.
(try
(throw (js/Error. "Oops"))
(catch :default e
e))
;; Catches are optional. You can also use multiple forms to handle different types of errors.
(try
(throw (js/Error. "Oops"))
(catch js/Error e
e)
(catch Error e
e)
(finally
"Cleanup here"))
user=> (quote `(1 2 rich#))
(clojure.core/seq (clojure.core/concat (clojure.core/list 1) (clojure.core/list 2) (clojure.core/list (quote rich__1249__auto__))))
вот еще, чтобы понятнее было:
;; передача значения в макрос
(def x 25)
(defmacro my-macro1 []
(let [xx 'x] ;; i.e. [xx (symbol "x")
`(println ~xx)))
(my-macro1)
(macroexpand '(my-macro1))
;; генерация уникального символа для переменной в макросе
(defmacro my-macro2 []
(let [xx (gensym "x")]
`(let [~xx 28]
(println ~xx))))
(macroexpand '(my-macro2))
ребят без обид но раньше тут было интересно задачки серьезные, вам нужно создать ветку обучение 😂
а я конспектирую уроки в отдельный файлик. и по задачкам, какие тут встречались раньше 🙂
@potapenko а где такое раздают?
@potapenko: Reagent + re-frame, Om.Next or Rum ???
@potapenko т.е. поддерживает все это?
http://clojure.org/api/cheatsheet - все вкусности в одном месте
@potapenko а как же ubuntu?
там кстати можно машинку завести какую виндовую, и там смотреть результат, ну и на устройстве тоже
@potapenko для десктоптной убунты запилили react native
@potapenko товарищ откомментировал: > Жалко, что винда мобильная уже все
думаю, что совсем без VS можно будет только хелло ворлды запускать в общем случае. без xcode пока обойтись не сильно получается
девелоперскую версию винды, там сразу VS стоит, отрываешь солюшен, жмешь деплой и все
@comerc кстати есть ubuntu https://github.com/CanonicalLtd/react-native
@potapenko О круто, пробовал на реальном девайсе? Не тормозит?
@potapenko: 19,3 ГБ - это я не скоро поставлю на ADSL-модеме :)
@abtv: смотри, чего я насобирал про Om.Next https://github.com/drakezhard/tic-tac-toe https://medium.com/@softwarecf/om-next-normalisation-7db6f2a8f89f#.8n97qhhck https://juxt.pro/blog/posts/course-notes-2.html https://medium.com/@kovasb/om-next-the-reconciler-af26f02a6fb4#.ld5u7u6t4 http://jdunruh.github.io/2015/12/01/exploring-om-next-part-1.html http://frontender.info/om-sweet-om-high-functional-frontend-engineering-with-clojurescript-and-react/ https://anmonteiro.com/2016/01/om-next-query-syntax/ https://circleci.com/blog/why-we-use-om-and-why-were-excited-for-om-next/ https://youtu.be/KxZGeD2ugOw?t=3820 https://youtu.be/u0hVc-wCYuE?t=4973 https://youtu.be/sYPoqHnudNI?t=2213 https://youtu.be/rjBDZQCgAJw?t=2758 https://youtu.be/rjBDZQCgAJw?t=4418 https://youtu.be/vgfv_12zKWk?t=2510 https://github.com/roman01la/om-example https://github.com/madvas/cljs-react-material-ui-example https://github.com/madvas/todomvc-omnext-datomic-datascript https://github.com/codebeige/om-next-dataflow https://github.com/arohner/foam https://github.com/madvas/re-natal https://awkay.github.io/om-tutorial/ https://github.com/artemyarulin/ktoa https://github.com/anmonteiro/compassus https://github.com/bnomis/om-next-datascript-localisation-demo https://github.com/Jannis/om-next-kanban-demo https://github.com/jordillonch/om-next-datagrid-example https://github.com/datodev/datodomvc https://github.com/untangled-web/untangled-cookbook https://github.com/anmonteiro/anmonteiro.github.io
я вчера рассказывал: > Посмотрел доклады Никиты (@tonsky) и Виктора Грищенко https://youtu.be/1ddm7WCMclA про синхронизацию данных между клиентами и расстроился. Совсем нет готового решения? Я переметнулся из Meteor-а, там ад, но всё готово из коробки. Мне хочется собрать Meteor на Clojure, заместо монолитного памятника - из отдельных самостоятельных библиотек, подобно сборкам https://github.com/mattkrick/meatier и https://github.com/flipace/lovli.js Но @lowl4tency тут рассказывает страшилки про Datomic под нагрузкой, а я планировал его заюзать вместе с Om.Next. Остаётся RethinkDB+Horizon? Но как их подружить с Clojure вообще и с Om.Next в частности - похоже буду первопроходцем. :
я надеюсь увидеть в om.next что-нибудь такое, что может пригодиться. а что конкретно там есть - этого я не знаю
можешь использовать это - https://github.com/couchbaselabs/react-native-couchbase-lite
@abtv Datomic в топку - @lowl4tency убедительно напугал.
comerc не, ну если у тебя нет планов выводить это в огромные объемы то пользоваться можно
@potapenko если я не путаю, RethinkDB - выросло из CouchBase? и вроде как ребята продвинулись дальше
вот есть технолоджи адвокаты, а я себя чувствую технолоджи прокурором
еще кстати, если планируете использовать notion то тоже могу попугать)
я имел уже счастье 10 лет тому назад юзать API монстроидального HP OpenView ServiceDesk. во внутрь не заглянешь. и пляшешь вокруг, чтобы хоть как-то заработало. закрытый софт - ацтой!
господа и дамы, подскажите как мне сделать умный merge (или это уже join получается?) да вложенных векторов?
(magic {:attachments [{:id 1 :content nil}
{:id 2 :content nil}]}
{:attachments [{:id 1 :content 1}]})
;; хочется чтобы магия вернула
{:attachments [{:id 1 :content 1}
{:id 2 :content nil}]}
я могу со всякими reduce/map/filter сделать, но будет не красиво
вопрос снимается, все оказалось просто
(defn magic [c1 c2]
(let [[left right] (map :attachments [c1 c2])
right-id (->> right (map :id) set)]
{:attachments (concat right (filter #(contains? right-id (:id %)) left))}))
не, у меня там вектора внутри, не очень подходят, тоже думал применить по началу, но не получилось
@artemyarulin какая-то либа попадалась для джоинов
дада, спектр вроде или типо того. Но мне ок и так
> Data Transformation > cats clj cljs > Dewdrop clj > Fresnel clj > Instar clj cljs > Specter clj cljs > Traversy clj cljs
спасмбо гугл 🙂
@artemyarulin вроде бы ты хвалил Planck, что в 10 раз быстрее? а для убунты ничего такого скоростного нет? 🙂
оно в альфе для убунты есть уже, хз в каком состоянии правда
@potapenko не могу найти, с чего это я решил, что RethinkDB откололся от CoutchDB, которая потом стала CouchBase. в RethinkDB обещают GraphQL и ваще "The best of both worlds" https://www.rethinkdb.com/docs/rethinkdb-vs-mongodb/
в коуче хорошо что у тебя это все оффлайн работает, обратился - взял, через async красиво положил в атом и рисуй UI.
парни еще раз кидаю статью, может кто глянет https://github.com/comerc/Rewriting_Your_Test_Suite_in_Clojure_in_24_hours_RU/blob/master/article.md
о . кстати @potapenko у тебя нет случайно инвайта на хабр?
потрясающе! я запустил tic-tac-toe на Om.Next + boot с REPL-ом в LightTable. внимание, вопрос: когда в коде меняю что-нибудь и сохраняю файл, в браузере (в правом левом углу) выезжает маленький кружочек с логотипом CLJS. нажать его не успеваю. он просто сообщает, что обновился интерфейс - я правильно понимаю?
@potapenko ты тоже read-only - срочно напиши статью про Clojure! 🙂 а для начала оставь в нашей статье коммент, чтобы я мог апрувить. выходи из тени! 🙂 https://habrahabr.ru/post/308228/
@potapenko в этом весь прикол! я фигвил не ставил. хочу дружить с boot-ом! 🙂
@comerc а не хочу 🙂 я там столько статей хороших писал, а меня раз и выпнули, пошли они в жопу.
а что по поводу перформанса RethinkDB ? я бы тоже с монги бы ушел куда где лучше. Про Couch пишут что x4.5 быстрее монги, и там есть откуда.
ну местами монга вполне хороша, я метеор не любил и не ел его, но девелопить на монге вполне так
> Один мальчик выложил на GitHub в open source облачный распределенный BigData IoT SaaS мэшап с TDD, BDD, DDD, ATDD, STDD, DRY, CQRS, SPoF, EAFP, IoC, DI, DVCS, YAGNI, TMTOWTDI, convention over configuration, zero configuration, SEO, Scrum, microservices, Docker, Cassandra, Hadoop, Cucumber, responsive isomorphic Angular, machine learning, data mining, loose coupling, event sourcing, FRP и Kanban. Но без MongoDB. Потом его все равно в ад забрали, конечно. https://twitter.com/nikitonsky/status/578457029876047872
Монга не масштабируется с метеоровским livequery, а RethinkDB типа реактивная DB с самого начала, как они сами о себе говорят 🙂
и типа расширяется горизонтально мизинцем. и еще теперь Horizon накрутили. ваще все круто. только как ее подружить с Clojure при наличии отсутствия опыта. а еще и с Om.Next "дата агностик", ага 🙂
я чегой-то этой реактивности пугаюсь, мне тут анимацию играть на устройстве, а оно тут хрясь и реактивится. И так через раз. Не, я хочу отыграть анимашку, и данные подгрузить когда я хочу.
ну флажков не напасешься, я тут делал в firebase проект - так не нашел там ничего такого
а в коуче у меян данные уже на клиенте есть, мне нативная база их доставила, мне лишь нужно их загрузить через REST и отрисовать. Я про то, что data driven development отличная штука, только не нужно ее до абсурда доводить и пихать куда не нужно. База даннных с DDD. Жуть! Нафига?!!!
у меня монгер + реагент + ре-фрейм. доволен как слон, simple made easy, все красивенько а главное просто
- чего желаешь? - эх, добрая фея, сейчас бы потрахаться. - на студент (банку чернил на диплом), трахайся
@potapenko Никита в первой части доклада пытался донести, что реактивный веб - наше всё. ты не смотрел штоли? 🙂 https://www.youtube.com/watch?v=ZWNtxmrA4UY&index=20&list=PL8sJahqnzh8JST_ZwTcGG1FHGgKBMcpn6
В новом видении DDD я пока ничего не увидел чего не было во флексе. На сервере и тогда пытались это дело притянуть. Может сейчас когда всякие биг-дата и можно это распределить на кучу серверов это будет работать, хз. Вижу главную ошибку - делать сложно ради красоты. Это всегда выходит боком.
@comerc кончай флудить ютубом:)
@artemyarulin а у тебя какой редактор? я не помню.
единственный 🙂
@artemyarulin а чем ты сделал screencast ?
@andre ты спрашивал, зачем om.next https://youtu.be/sYPoqHnudNI?t=2198
а как можно использовать Planck? кроме побыстрому поглядеть доки, source итд? node.js, фигвила нет ведь?
@romul я пытался дословно переводить не искажая слов автора, не привнося своего видения или мнения, ты поменял текст сильно
много от себя, и текст исказился под твое видение. не думаю что это хорошо для перевода
@andre: дело в том, что слишком близкий к оригиналу перевод плохо читается.. я когда перевожу сам сначала близко к тексту держусь, а потом уже с русского на русский перевожу )))
а я вообще уже не воспринимаю текст. перечитав еще раз пять. свежий взгляд - это хорошо! 🙂
ну и там автор местами накрутил так, что в оригинале можно запутаться ))) например, с form был прикол:
@potapenko зачем тебе нода? мы же на клиенте орудуем > а как можно использовать Planck? кроме побыстрому поглядеть доки, source итд? node.js, фигвила нет ведь?
@potapenko не сталкивался с Warning: Every element in a seq should have a unique :key ?
ты должен помечать полем key элементы коллекций, чтобы react мог понять, когда пересоздавать компонент
еще полезно key использовать когда ты Reagent хочешь объяснить - что компонент нужно пересоздать
@potapenko как я использую планк 1 Как быстрый репл да 2 CLJS как скриптовый язык - например у меня весь пре-процесинг кложуровых файлов для Buckbuild сделан на нем https://github.com/artemyarulin/clojure-clojurescript-buck/blob/master/build.cljs 3 Как тест раннер для юнит тестов - уже писал тут тот-же doo да и просто компиляция/JVM/lein/GoogleClousure, на моей машине холодный старт 17 секунд, планк 1.7. У меня 80% тестов без IO - поэтому планк хорошо вписался. Как пример из последнего вон народ экспереминтирует с ом-некст под планком (ессно никакого DOM, но render-to-str работает) https://anmonteiro.com/2016/08/om-next-and-bootstrapped-clojurescript/
@andre: я закончил вычитку статьи, если есть вопросы по правкам, то можно прямо в комментариях к коммиту обсудить 😉
@romul: byzanz - смотри второй ответ и третий ответ: http://askubuntu.com/questions/107726/how-to-create-animated-gif-images-of-a-screencast
@artemyarulin: а почему ты не переезжаешь на boot?
а зафега?
что для тебя там крутого что ты не мог с лейном?
ну у тебя на демонстрации все зависло. я так понимаю, что это регулярная беда. @prepor еще где-то рассказывал.
пытаюсь понять о чем ты. Ты про видео где я про ReactNative рассказывал или какое?
аа, неа, там тулзы еще сырые были, фигфил через жопу работал
по сути буут тоже самое предлагает - описывай билд на своем языке и строй его под себя, но у меня уже есть такое
@artemyarulin: смотрю на boot-react-native и не вижу волшебных слов: reagent, rum, om.next
> This guide is the first part of a series of posts on Boot React Native. In the next installation, you'll learn more about building mobile apps interactively using Reagent and React Native. Stay tuned!
слушай, вот хз - я ни буут, не все что ты перечислил не юзаю. Ты спроси в #cljsrn, там народ поможет да и автор brn отвечает часто
я люблю только свои велосипеды)
@potapenko тоже под re-natal прикручивает винду. печалька
дак re-natal хорошо работает чо
BRN еще сыроват
Planck + LightTable в убунте корявенько работает, хотя вообще не должен 🙂 подцепил вот этим плагином: https://github.com/rundis/ltplanck