This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-02-16
Channels
- # admin-announcements (14)
- # announcements (1)
- # aws (1)
- # beginners (105)
- # boot (609)
- # braid-chat (4)
- # braveandtrue (3)
- # cider (24)
- # cljs-dev (13)
- # cljsrn (2)
- # clojure (142)
- # clojure-berlin (7)
- # clojure-ireland (7)
- # clojure-japan (10)
- # clojure-nl (4)
- # clojure-poland (76)
- # clojure-russia (198)
- # clojure-sg (4)
- # clojure-taiwan (1)
- # clojurebridge (1)
- # clojured (4)
- # clojurescript (73)
- # conf-proposals (11)
- # cursive (10)
- # datomic (32)
- # devcards (1)
- # dirac (22)
- # editors (5)
- # emacs (3)
- # events (4)
- # funcool (19)
- # hoplon (18)
- # job (1)
- # jobs (3)
- # jobs-rus (16)
- # keechma (25)
- # ldnclj (33)
- # lein-figwheel (10)
- # leiningen (4)
- # luminus (1)
- # off-topic (19)
- # om (255)
- # onyx (51)
- # overtone (1)
- # parinfer (206)
- # perun (5)
- # proton (2)
- # re-frame (3)
- # reagent (2)
- # remote-jobs (13)
- # ring-swagger (7)
- # slack-help (4)
- # yada (7)
Новые эффективные технологии интересно применить в каком-нибудь стартапчике с непонятным будущим. Где нужно сделать всё быстро и без лишнего напряга. Собственно, cljs в этом поможет. В остальном - если cljs для cljs, а не для продукта, то как-то ниочень.
эм, как можно используя korma отловить ошибку подключения к бд? оно при подключении вникуда занимает весь тред и срет логами
@turtle: Не работает так. Стартапы - это поиск бизнес-моделей, ещё и cljs туда впихивать - рецепт неудачи.
Как мне сказал мой друган - “Сеньора дева отличает от обычного дева тем что он может аргументировать каждое решение”. Если новая технология ради новой технологии - то не взлетит. Пример: Хочу rust, ибо нам нужна C++ скорость + контроль мультипоточности + общение с кучей готовых С++ либ, ОК Хочу Кложуру ибо мы хотим заюзать Java Netty как один из самых быстрых серваков + репл позволит нам сделать 100500 интеграций с другими рест апи гораздо быстрее, ОК Хочу Го ибо мне насрать на бизнесс и хочу чтоб все умерили - NOT OK
хочу кложу ибо мне насрать на бизнес
спасибо, за ответы парни - мне все-таки кажется мы все время съезжаем немного не туда. Это указывает на то, что вопрос сформулирован неверно или проблемы вообще нет
ой, перечитал вопрос
а какой город? Просто в мухосранске обычных девов то 2 с половиной и вообще не вариант. В столице да, можно и хипстеров на пролог найти
дак вообще проблем быть не должно. Наверно.
В общем у меня та же проблема - кложура почти в проде, в городе таких контор одна или две, надеюсь что куча хипстеров придет когда взлетим
@rmuslimov: почему просто не работать с удаленно без опции? Сильно расширите географию и, соответственно, аудиторию.
Не очень понимаю идею искать разработчиков всегда в своём городе, можете пояснить плюсы?
Я как-то работал в проекте, где “Мы делаем скала, потому что многопоточно” Но людям скала так сильно порвала шаблон, что началась сплошная копипаста ибо как программировать никто не понимал.
> Не очень понимаю идею искать разработчиков всегда в своём городе, можете пояснить плюсы? Возможно, я криво написал - имелась ввиду возможность работать удаленно
Почему-то многие не любят удаленщиков
Возможен даже обратный эффект, когда молодая интересная технология станет решающим фактором в принятии решения идти к вам или не идти
дада, как там LISP as a secret weapon
?
Кстати, плюсую Николая
пацаны, а java.shell кто-нить юзает?
да ладно, бабла то срубил, поднимает стартапы Он не забыл - гдет писал что если у вас проект на лиспе то можете вне очереди слать заявку
(shell/sh "bash" "-c" (str (config/config :octo-path) " " cmd " 2>&1"
(when log-path
(str " >> " log-path )))
:env {"DEPLOYMENT" "cogbot"} )
но когда скрипт дергается переменной нет этой
и скрипт отрабатывает дефолтную переменную
как мне его победить?
или мне запилить аргументом
@rmuslimov: возможность работать удаленно - т.е. сидит человек в одном городе и работает в другом? А другая страна подходит? Если никаких поездок не нужно, а можно просто начать работать, то много народа набежит) имхо)
А кстати. Кто какие преимущества кложи ощущает по сравнению с java. А то я год уже пишу на clojure а просветление, собака, всё не приходит.
dottedmag: имеется в виду когда инструмент помогает для поиска. Если cljs это тоже поиск, то не взлетит, да.
Для меня например clojure мой инструмент, я знаю что буду с ним эффективнее в 5 раз чем с ruby и в 10 чем с java ;) (оценки конечно эмоциональные, но мы все люди ;)
Да и для больших не сильно минус. Минус только в проектах, где чуть ли не каждый разработчик не понимает что делает. Там ему хотя бы компилятор по рукам даёт.
С большими проектами динамизм языка будет минусом без тестов, ибо страшно менять код. До сих пор есть довольно много проектов, где нет тестов
На больших проектах со статикой без тестов тоже всё очень страшно и всё ломается. Профита нет.
Тем более, что там везде где-нибудь обязательно заюзан рефлекшн, потому что в статике всё не получается сделать.
Да, были сомнения. Но в java как-то проще. Там и Refactoring и Patterns и Patterns of Enterprise Application Architecture и Growing Object-Oriented Software, Guided by Tests и Domain-driven design
А в кложуре пока ничего этого нет. Да, я могу замапить функцию на лист мапов. Удобно. Да, в джава это целый огород с фором. Но я спрятал его в метод и не вижу.
а смысл? если написать хотя бы какоето демо приложение (веб), то все это придется заюзать и вкурить
Туториалы они все про то как круто и быстро замапить fn. Или глядите, атом. Я это знаю.
ага, вот преза отличная https://vimeo.com/113707214 как рассказать про монады не использую слова монады, прям произвела сильное впечатление когда первый раз посмотрет
То есть туториалы они рассказывают про примитивные конструкции языка и платформы. Типа как для джавы объяснять полиморфизм и fork/join допустим. Но с этим знанием системы не построишь.
Система состоит из подсистем, подсистемы из модулей, модули из классов (в java) Кто мне расскажет бизнес задачу у меня в голове сразу модель. Это режем так, это режем сяк. Тут интерфесы, тут основной модуль всё вяжет. В кложуре у меня получается куча немспейсов, всё топорно прибито друг к другу гвоздями сотками. Какой-то франкенштейн, честное слово. Я чувствую что что-то делаю не так, а где узнать как надо не знаю.
>Система состоит из подсистем, подсистемы из модулей, модули из фукнций. Fixed
все тоже самое, когда речь идет о большом масштабе же, разницы в архитектуре почти нету
Ну не совсем видео, объясняющее что это такое. Просто пример репл+реагент http://www.youtube.com/edit?o=U&video_id=VNRVKcSQQFc
оо, сча кину, помню меня впечатлило
во, там чувак делает игру с реплом в емаксе, прям магия со стороны
@artemyarulin: да, это видео меня тоже завораживает - только magnars написал кучу хороших либ для emacs, собственно ими он и пользуется. Такое же видео можно было бы сделать для того же питона в самом деле если захотеть
ну дада, он безумно крут с емаксом. Я просто кодил почти год наверно на кложуре, иногда запускал репл даже, но фигфил же - сохранил, посмотел. И вот когда я посмотрел это видео я понял что такое repl driven development
емакс можно заменить на любой другой редактор как по мне, главное чтоб к реплу можно было подключить
ну я унес главное оттуда это подход к разработке, у меня емакс почти стоковый - конфиг на 50 строк всего
все безусловно doable, и в других ide - просто вот уже есть пример, других пока не видел
ну там в cursive же будет все почти также работать, рефакторинг и тд, добавить зависимость можно с помощью https://github.com/pallet/alembic
а по факту в большом проекте зависимости новые не так часто добавляются, можно и рестартануть репл
я первый раз познакомился с ФП на Agile! конференции, для меня это была какая-то магия. я ничего не понял, запомнил страшное слово "монады" , но видимо спикер произвел впечатление песней про монады https://www.instagram.com/p/0ac8YTAA9M/ и я вернулся в итоге к ФП и попробовал его, о чем не сожалею , мне нужно было набросать сервер на GAE , я знаю Java , но я не захотел на ней делать из-за громоздкости, выучил питон за пару дней, написал сервер на GAE , питон мне понравился, но когда я через месяц вернулся кое-что попарвить, я все забыл, и смотрел на синтаксис и вспоминал, затем я переписал все на clojure и теперь когда я возвращаюсь через долгие перерывы я легко ориентируюсь и мне не нужно вспоминать синтаксис
оттестил кусочек нового кода в репле, на тестовых данных, если доволен результатом, двигаешься дальше
для меня repl-driven -- это лень перезапускать lein, поэтому eval и тест написанного в репле :)
http://lex-kravetski.livejournal.com/540744.html?style=mine Интересное чтиво , Запах монад по утрам
мне кажется чувак опоздал несколько. """Во-первых, потому, что людям, незнающим слова «монада», будет непонятно, о чём вы, как было непонятно и вам. А информацию на доступном языке об этом слове они реально хрен найдут. Вот «контейнер» — это слово, понятное большинству программистов.""" гг
"""В-третьих, вы блеснули знанием «умных слов», но при этом скрыли от того, к кому обращаетесь, многие важные черты того объекта, о котором говорите.""" — vs "вы назвали концепт каким-то более понятным кому-то словом, но при этом скрыли многие важные черты…"
(https://byorgey.wordpress.com/2009/01/12/abstraction-intuition-and-the-monad-tutorial-fallacy/)
Классная статья, первая инъекция монад для меня
https://habrahabr.ru/post/277323/
ггг ClojureScript все таки избавляет вот этого мусора на ура. Не полностью конечно, но многое сильно проще
>Мне нравится Closure переводчик не осилил, в оригинале CloJure
@rmuslimov: Фокусы Магнара с Emacs'ом мне напомнили написание кода на Java в том же Eclipse.
auto completion is mostly helping you write all the unneeded boilerplate a static language demands.

это я про эклипс и жаву
посоны, а вы ж тут все дофига модные и на острие технологий. Чую я, что мне бы не помешало плеваться везде ивентами. Я почитал-посмотрел и пока пришел в выводу, что нормально будет, если у меня будет кафка как шина данных между сервисами и чтобы она же еще и хранила все мимопролетающие ивенты куда-нибудь себе. Я так посчитал, по данным террабайтника на год должно хватить. Как считаете, взлетит?
Простите за вопрос может оно вам надоело, ноя запуталась на схемах. И что-бы понять хочу спросить что такое datomic чем оно отличается от того же jdbc?
@rm: "хранила куда-нибудь себе" — кафка окошко хранит, если ты сохранять хочешь, надо самому
cookie: datomic -- другая БД, с даталогом как языком запросов вместо sql, append-only и некоторыми другими плюшками. Хорошо подходит, если надо много читать и не очень много писать
@rm: "хранила куда-нибудь себе" — кафка окошко хранит, если ты сохранять хочешь, надо самому можно хранить все. более того, она может сама схлопывать события (https://kafka.apache.org/documentation.html#compaction). но это какое-то сомнительное применение имха
cookie: нет не может. вы посмотрели выступление хики, прочитали доки и теперь у вас есть какие-то вопросы / непонимание?
prepor я прочитала доки, видео не смотрела(не по принципу видео для слабаков), да вроде начала понимать. но потом запуталась.
@prepor @larhat я сохранять все хочу не просто так. Сейчас у нас есть некая структура БД. И взбрело нашему любимому инвестору, что нужно сделать некую уберфичу, которая ни хрена в нашу БД не вписывается. Более того, чтобы она полетела, было бы отлично иметь "лог ивентов", то есть, когда мы делали некоторые операции (которые как раз только в логах и отображены, или потеряны уже к хренам, я не удивлюсь). Ну и ладно, в этом случае мы что-нибудь придумаем, но я с ним третий год уже работаю, дальше будут еще идеи одна другой офигительнее и можно будет уже так не выкрутиться. Что-нибудь понятно? :) Возможно, я хочу не кафку, просто об этом еще не знаю
нет, не особо. в кафке, как @prepor дал линк, можно сохранять "всё", но нужно понимать, что после compaction будут только последние значения для ключа
мне кажется, что если источник ивентов это бд и потребляться тоже будут там же, то может проще прямо в бд и реализовать лог
в БД будем аггрегировать, причем хочется, чтобы через полгода мы захотели фичу, придумали, как смастерить из лога ивентов, прошлись по ним и собрали в новую табличку
ну то есть, как шина данных, в которую в "риалтайме" пишут и читают, кафка будет не нужна?
Если очень грубо, у нас есть, например, двести тысяч видео и тысяча сайтов, которые нужно просканировать, найти там все видео и сматчить с теми видео, которые есть у нас. А потом мы внезапно захотели вести историю видео на каждой странице (было видео А, потом не было никакого, потом стало видео Б, а потом вернулось опять А).
А как шина данных -- ну я могу без нее обойтись (собственно, щас обходимся), но почему бы не писать туда. Типа, один сервис "я нашел ссылку на сайте", другой на топик подписан, берет ссылку, сканит, находит видео, складывает в следующий топик
@cookie: JDBC -- это тупо интерфейс доступа к SQL-базам данных. connect/select/update/delete/commit.
@dottedmag О спасибо, вот это мне и нужно было.
Всем хорошего дня, подскажите "на посмотреть" примеры вывода таблиц с пагинацией, сортировкой / фильтрацией по колонкам. Типа такого, но на cljs http://www.javascripttoolbox.com/lib/table/index.php
ну... тут не будет рокет-саенса, берешь filter и фильтруешь вектор с объектами (это для пагинации). Или сортируешь с помощью sort-by
на рокет-сайнс и не рассчитываю )) но опыта cljs почти нет, хотел подсмотреть какие-то примеры, как такое отображать - в смысле рендерить таблицу и "контолы" фильтров / сортировки для колонок
а у вас голый cljs? или cljs и что-нибудь для реакта? у фб есть компонент для таблицы http://facebook.github.io/fixed-data-table/
ну и вообще, если делать с реактом (или в том же духе), то каждая команда на sort/filter будет менять (либо прям на клиенте, либо фетчить с бэкенда) данные, и тригерить перерисовку
сейчас есть REST API (java glassfish mysql), к которому нужен быстрый прототип, я рассматриваю вариант сделать прототи на cljs
@larhat: спасибо, примерно похоже на то что нужно
это похоже на то, что нужно, но для "прототипа" может быть слишком — может проще взять quiscent какой-нибудь тонкий и по-деревенски рендерить таблицу втупую
сейчас только пагинацию, сортировку / фильтры можно прикручивать в принципе, но не хотелось бы для прототипа там ковырять
сортировку и фильтрацию тогда можно на клиент тож, это просто filter / sort-by может быть
а почему quiscent а не rum / reagent? (ни один из них не пробовали еще)
ага, понял, гранд мерси, почитаю - покручу их
оффтоп: из обсуждения TypeScript
Использую сейчас декораторы для реализации статического конструктора класса. Может есть какой-то способ реализовать это без декораторов?
чота после года кложуры я уже сходу не могу понять что значит это предложение 
все таки кложура гениально проста