This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-04-18
Channels
- # beginners (25)
- # boot (30)
- # cljs-dev (22)
- # cljsjs (2)
- # cljsrn (1)
- # clojars (4)
- # clojure (223)
- # clojure-boston (1)
- # clojure-dusseldorf (1)
- # clojure-gamedev (8)
- # clojure-italy (5)
- # clojure-russia (122)
- # clojure-sg (3)
- # clojure-spec (26)
- # clojure-uk (42)
- # clojurescript (69)
- # clojuresque (10)
- # core-async (25)
- # cursive (10)
- # datascript (5)
- # datomic (12)
- # emacs (18)
- # garden (1)
- # interop (1)
- # jobs (1)
- # jobs-discuss (10)
- # leiningen (2)
- # liberator (1)
- # lumo (21)
- # nyc (2)
- # off-topic (210)
- # om (11)
- # om-next (3)
- # onyx (1)
- # pedestal (6)
- # re-frame (10)
- # rum (9)
- # specter (38)
- # uncomplicate (1)
- # vim (23)
- # yada (22)
ну спекой мейби покрыть легко вроде так (s/or :yep int? :nope nil?)
а тьфу, там же свой враппер да, хз. Я юзал как раз тока в “паре мест” и потом выпилил вообще, чота чужеродно как-то
@akond я такую штуку делал на прошлой работе https://github.com/roman01la/html-to-react-components очень помогает, когда есть отдельно верстальщики и отдельно программисты. Чтобы руками не перегонять верстку в компоненты.
а https://github.com/clojure/core.match/ у кого-нибудь прижился вместо здоровых cond/case'ов?
аж в одном месте один раз использовал (матчить вектор описывающий роут)
@roman01la но это только один раз? в самом начале работает? после того как компонента обрастёт логикой второй раз запустить не получится?
да, конечно. только один раз. это тупая трансформация из одного формата в другой
@misha так и делали раньше, сейчас верстальщики сразу компоненты пилят
Есть в кложе аналог вот этого: http://www.cplusplus.com/reference/algorithm/partition/ ?
"Rearranges the elements from the range [first,last), in such a way that all the elements for which pred returns true precede all those for which it returns false. "
Сортбай то что надо. А редьюс тут как?
О. Групбай тоже подходит
Спасибо
еще есть
(defn split-with
"Returns a vector of [(take-while pred coll) (drop-while pred coll)]"
если уже сортированная(?) коллекция, и нужно только посплититьНе. Я делаю radix sort, так что не сортированная
>>> (sort-by odd? (range 10))
(0 2 4 6 8 1 3 5 7 9)
То, что я и хотелНу и что?
Я просто спрашивал, чтобы не велосипедить
А. Ты к вопросу "как через редьюс"
Спасибо
Можно сделать radix-sort на clojure лучше, чем вот так?
(defn single-elem? [s] (and (seq? s) (empty? (rest s))))
(defn radix-test [bit value] (bit-test value bit))
(defn msd-radix-sort
([s] (msd-radix-sort s 63))
([s msb]
(if (or (neg? msb)
(empty? s)
(single-elem? s))
s
(let [next-bit (dec msb)
{l false, r true} (group-by (partial radix-test msb) s)]
(lazy-cat
(msd-radix-sort l next-bit)
(msd-radix-sort r next-bit))))))
Тут прям сидят специ по цифровой сортировке 🙂
я бы сортировал группой бит, например 4-ками
Ну да, конфа не по алгоритмам, но я и спрашиваю конкретно про кложур. Не видно ли в коде велосипедов, например
ну я бы просто погуглил clojure radix sort
https://github.com/kokatoo/clojure-algorithms/blob/master/src/clojure_algorithms/sort.clj первая ссылка
Don’t Just Require, Use!
For convenience, the use function will require and refer a library in a single step:
(use quoted-namespace-symbol)
Programming clojure. S. Halloway.
oh boyчто-то давно когнитект не балует нас релизами clojure или новыми крутыми либами на уровне core.async. затаились?
их там 20 человек всего работает, надо иногда и деньги зарабатывать, а не либы лабать
когда спеку зарелизят, и гайды по ней предложат, то в общем и целом кложу только ускорять останется (компилятор тюнить). Новое, наверно, действительно сложно предложить. а на том что есть можно ехать очень долго.
Когнитект - это premium консалтинг фирма. У них есть несколько заказчиков типа wallmart’а которых они учат как кложей все кложить, свой продукт datomic, который они пилят и пытаются втюхать и несколько (2) человека выделенных на пиление кложи (собсно Рич и Алекс Миллер)
когда у тебя всего 10-15 billable консультантов и несколько коммерческих клиентов датомика, сложно как-то выделить большую команду пилить саму кложу, кложускрипт и новые плюхи. Они держатся на том, что там есть несколько крепких бойцов типа Нолена и Стю, которые пока пилят datomic успевают еще чего-то наопенсурсить и т.д.
я не говорю, что плохо. я говорю, что там маленькая команда чтобы 20 плюшек в год делать. плюс они делают то, на что спотыкаются у заказчиков. Тот же core.async скорее всего появился потому, что наступили на грабли у какого-нибудь заказчика, рич полежал в гамаке, дал идею и Тимоти пошел ее пилить и внедрять
та же кложа появилась, потому что Рич сидел долго многое пилил, потом ему все надоело, он вынул все свои накопления из 401K и 2 года сидел пилил кложу. В какой-то момент деньги надо все-таки зарабатывать, поэтому они договорились с relevance и типа смеджили компанию “рич” и “relevance” чтобы рича оплачивать из денег relevance’а и их консалтингового бизнеса
этож язык программирования и платформа, под них непросто деньги у инвесторов поднять. Хотя если бы они сидели в долине, под датомик могли бы легко денег поднять как монга под себя
monga, rethink и прочие пошли подняли денег у инвесторов под продукт и пилили его с нуля. Когнитект не поднимал денег - они оплачивают внутренние разработки за счет своего консалтингового бизнеса
когнитект - это консалтеры, которые свои внутренние наработки (и поделки, которые они пилят у заказчиков) пытаются продуктизировать чтобы иметь subscription revenue от продукта а не только services revenue от тел консультантов
startup 101: валюация сервисной компании - 1.5x, максимум 2х от их revenue, валюация продуктовой может быть и 10х и 50х от продуктового revenue
инвесторы бывают разные, и условия подъема денег бывают разные. Просто последние годы венчурный бизнес очень агрессивный (типа как sequoia или a16z делают) и найти кого-нить кто даст деньги не под рабские условия сложно
гамак часто накрывается, потому что вместе с инвестициями в компанию в board of directors сажают представителя инвестора и CEO начинает отчитываться перед бордой, где ему связывают руки. если не брать под такие условия денег - остается какая-то свобода принимать решения
DHH, кажется, хорошо сказал, что любые венчурные инвестиции нужно не праздновать, а оплакивать.
если ты не можешь пилить свой опенсорс на работе, делая вид что работаешь, то дело дрянь 😄
ой, этот dhh - примадона бунтарского мира. Сколько компаний вырасли успешными по модели 37 signals? а сколько компаний вырасли успешными по модели получения венчурных инвестиций? Публиковать в интернеты радикальные статьи и книжки про то, как надо “пилить свой продукт и класть на все стандарты” - это часть бизнес модели 37 signals, которая резонирует с инженером, который работает на дядю 🙂
@kishanov По модели 37signals (а точнее, по модели нормального бизнеса) вырасли тонны компаний. Просто они работают, а не корчат из себя несуществующих зверей, и поэтому про них не слышно нигде, кроме своей ниши.
@dottedmag это достаточно сильное и упрощенное заявление. даже компании, которые сами потихоньку растут обычно перепинываются кредитными линиями или имеют founder’ов которые принесли персональные деньги с предыдущих успехов. бизнес он не такой черно-белый, как на хакерньюз пишут 🙂
Да, с другой стороны, музыка гораздо хуже масштабируется, так что требуется больше исполнителей.
я и не утверждал, что “венчурная накачка” - это стандартный путь. это лишь один из способов получить деньги. Многие компании получают деньги не от венчуров, а как результат spin-off’а от какой-нибудь крупной компании, или как результат диверсификации бизнеса крупной компании
просто ты как-то сразу в штыки воспринял, что я пропогандирую венчурные инвестиции. Мой основной поинт - если начальных денег нету (или неты финансовой подкачки) - без профессиональной сервисной организации которая кормит бизнес выжить сложно. Если есть - можно обойтись без этого. Опыт 37 сигналов - это скорее исключение и так встали звезды (или они чего-то недоговаривают)
@kishanov У 37s хорошо легли звёзды и основатель оказался без дислексии, поэтому про них знают.
@fmnoise я тоже думаю, что clojure под задачи AI очень даже ничего. с ее динамикой.
объясните плиз что такое dhh
вроде ж даже гугол знает https://www.google.de/search?q=dhh 🙂
на скале я уже несколько лет скала потребовала год на более-менее вхождение после php
смотрю первый комит у меня в скаловском проекте в мае 11-го года значит в 10-м изучать начал
но в кложу я в результате пришёл со знанием jvm и функциональных парадигм и имел базу для сравнения
Autoscaling приводит к каскадным ошибкам в утыкании в недостаточно широкое место системы (DB, например)?
неужели здесь это еще не запостили?! ))) https://habrahabr.ru/post/326726/
там очень много постят, не все успеваю читать... пропустил
гм... а кинься плз линком, можно в личку