This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-10-03
Channels
- # aleph (1)
- # beginners (42)
- # boot (34)
- # cider (157)
- # cljs-dev (12)
- # cljsrn (3)
- # clojure (165)
- # clojure-conj (1)
- # clojure-india (1)
- # clojure-italy (6)
- # clojure-russia (20)
- # clojure-spec (27)
- # clojure-uk (173)
- # clojurescript (116)
- # cursive (30)
- # datomic (87)
- # devcards (1)
- # docs (9)
- # emacs (2)
- # ethereum (2)
- # events (2)
- # fulcro (60)
- # graphql (10)
- # hoplon (2)
- # jobs-rus (6)
- # keechma (1)
- # lein-figwheel (9)
- # leiningen (36)
- # luminus (2)
- # mount (3)
- # off-topic (16)
- # om (14)
- # onyx (12)
- # pedestal (19)
- # portkey (107)
- # re-frame (9)
- # reagent (5)
- # ring (26)
- # shadow-cljs (149)
- # spacemacs (3)
- # sql (6)
Morning
månmån
Sean shared this link yesterday. I'd be very interested to hear opinions from anyone that is using / has used NoSQL a fair amount in relation to what's discussed in the blog post
i've been using nosql stores a lot for the past few years, alongside sql - ES, cassandra, postgresql. they each have their uses
ES is great if all your queries are going to require you to do full-table scans of middlesized-data very quickly
cassandra is great if you want to avoid storage and access patterns which won't scale linearly, but it's really like the table-storage engine of a database without a sql interpreter and query planner on top
postgresql is great for lots of things
but whatever db you use, you are probably still going to need to have some understanding of what's going on behind the scenes if you are going to push the db hard
and i definitely don't feel a pressing need to use SQL for everything
but it is nice for analytic queries - being able to run SparkSQL (and tableau) on top of cassandra is ace
@mccraigmccraig are you using flambo/sparkling or powderkeg?
@otfrom we have a little bit of sparkling, but i'm going to throw it all away soon - if you have a clj SparkSQL client recommendation i'm all:ear:s - our greatest use of SparkSQL is via tableau for ad-hoc analytics of stuff in cassandra
i won't use jdbc 'cos it's all blocking and everything
yeah, we don't need to do anything that can't be expressed more compactly as sparksql, and the ops story looks a lot easier with sparksql
I've got some spark that does a fair bit of parsing of lines and then some clojure.math.combinatorics/combinations which doesn't feel like a great fit for sparksql
ah, i misunderstood you, yeah, tableau is using odbc or jdbc for spark - i just won't write code against jdbc
https://www.tableau.com/about/blog/2014/10/tableau-spark-sql-big-data-just-got-even-more-supercharged-33799 yeah there is
could well do @dominicm - difficult to know what's going on in the background - i just give it a port number 🙂 - i know what it does ends up as creating SparkSQL jobs, 'cos i can see those in the console, and iirc it uses the spark-sql-thriftserver, but what's in front of that i have no idea
once you've trawled through all the guides which fail to explain how to set it up correctly and found one which does explain it just does what it says on the tin - and is excellent
Does anyone have a solid recommendation for an Emacs setup that is as friendly / lovely as Emacs Live, where that suggestion is not: 1. Spacemacs 2. “You should really put your own Emacs setup together…” please?
Theres always https://www.braveclojure.com/basic-emacs/ if you can't find anything else
https://github.com/technomancy/emacs-starter-kit/ is something that might be a good place to start. It's not Emacs Live though.
@maleghast what don't you like about spacemacs ?
@dominicm - Yes, well, if I had time and the inclination I might indeed considering “going vim”, but I need a quick fix,..
@mccraigmccraig - I tried it, and I was not thrilled - for one thing it’s default appears to be EvilMode
@jonpither - What’s prelude..?
@maleghast spacemacs has "holy mode" - you can choose it on install these days - regular emacs keybindings - no need to go vim
@mccraigmccraig - Oh… Well that might be ok in that case…
@maleghast prelude is bbatsov's emacs setup
i used use prelude - that was ok too - i stuck with spacemacs after trying it for a bit tho
@dominicm - Ah I see, I will go have a read of the Github page that I assume I will find if I Google “Emacs setup prelude” in that case
mine is loosely based on prelude https://github.com/jonpither/.emacs.d/
@jonpither - Ooh, thanks will have a look at that too.
One day I will set aside some time to build up my own .emacs.d based on my specific preferences, but I need to remain productive right now__ and Emacs Live is throwing errors on startup that I don’t understand, but that makes me nervous…
and Sam does not appear to have committed anything for about a year, so I am not sure whether he’s planning to update it any time soon…
Hakan's is always good: https://github.com/hraberg/.emacs.d
@jonpither - I will have a look at Hakan’s as well, I suppose if I had really__ thought about it I would have gone to his github… 😉
@maleghast Hakan's is nice, as it's simple and minimalist
I think I may well go with Hakan’s, but I will pay with his, Prelude and maybe even Spacemacs (since @mccraigmccraig has told me about “holy mode”) over the next couple of days and make a decision about which one to use until I can put my own together… 🙂
All great suggestions, but I say go for Intellij, preferably on Windows. I realise this is an entirely unhelpful suggestion, but on the offchance you consider it, I keep notes (mainly for myself) on how to do it here: http://conan.is/clojure/clojurescript/windows/2015/10/05/clojure-on-windows.html
one of the great things about intellij is that you don’t need to configure it out of the box
Honestly & contentiously. I suspect there's a real benefit in going with a lower level tool like Emacs/VIM. You feel closer to the code, less stuff advertising at you to be used. When it's harder and less encouraged to open and navigate lots of files, I think people might spend time making the fewer namespaces they want to work with better quality and easier to grok.
funnily enough I moved to emacs from Komodo years ago because it could handle having 100s of open files way better than a GUI IDE
my point is that Emacs modes don't detract from the core editing experience, the way that features tend to in the heavier IDEs. I.e. all the buttons and menus, side-panels etc do in Idea/Eclipse
@guy I am testing the waters with a general point, but I don't disagree with you there 🙂
whenever i’ve used intellij i’ve collapsed most panels and then found them later via the apropos equivalent
fortunately, nobody has ever disagreed about editor choice before, so this should be a simple one to resolve :)
what about if one person on your team said that they were super productive with notepad?
My issue with intellij/cursive is that it's impossible to reconcile with other editors in terms of indentation & alignment rules,
@jonpither in a team scenario that changes things. How do you pair program with notepad 😭
My IDE will always be so optimised for my particular hardware and priorities (pressing as few keys as possible) that it won't make sense for me to use anyone else's computer, and nor should it - any company that cares for its developers will provide each one with their own computer. It's medically infeasible to scale a team without doing so.
But this is great - everybody gets to be super-productive and comfortable in their own environment
there have been times working with @jonpither where he's tried to hit Ctrl-N a few times to just bring my focus to something. And a few times where I'm trying to help him, and end up deleting everything on screen. Even the differences between Emacs & Vim cannot be reconciled.
Staying contentious to see where the debate goes: Sure - you guys are great devs and minimize the buttons and panels etc to work in a Zen like way, and I'm sure it works great and offsets many of the issues that come from trying to work with Emacs etc - I wouldn't for a minute suggest either approach is superior here. That said, doesn't using natively-zen tool force the issue a bit more? I have seen some namespaces that just feel like they were created with the larger IDEs, optimised for quantity rather than quality. I might wrong here though, it's just a feeling.
^ I think my point is subjective to the developers, and good devs will write good code regardless. So now disagreeing with myself to a degree.
I've definitely seen sloppiness from reliance on IDEs that have not done the full job (for whatever reason)
and I feel a bit uncomfortable putting forward what is a biased, straw man argument
although, using a natively-zen tool might mean you’ve got this supercar and are only pottering down to the shops and back
personally i use sublime text for most things, and set up build tools and integrations primarily on the terminal - that way they’re portable for my whole team
and then i add in a few plugins which use the same config files as the CLI tools to bring stuff closer to the edit cycle
There is a humanitarian angle - give someone the gift of a new IDE if they are stuck on Eclipse for example - they may be very resistant to consider learning two things at once, but often it's the best time when change is in the air. How far do you push it?
Ultimately you will want to probably do a bunch of different actions, all thats different is the key binds or clicks. You probably have feature parity across IDE's for the core editing experience, So you just have to learn the different paths and then it becomes all the same
@jonpither why would you push anything though?
i do think it a bit odd that Lisp programmers would choose a tool that isn't hackable
Lisp is a hackable language to the core, so I would expect those that choose to use it to choose other tools that are also hackable
I wouldn't force anything on anyone, but I get nervous when people say 'I don't want to consider learning a new IDE the same time as learning Clojure', because I suspect it's the best time
it's an opportunity missed if they don't. So I would respect their opinion, but I should also be allowed to make the case
i tried to learn emacs and clojure at the same time, emacs was getting in my way so i only learnt clojure instead
Maybe they will see you doing something with emacs and will be like, oh cool, let me try that
I think a lot of this comes down to surroundings. If I work in an environment with people that only use a particular OS and a particular editor / ide, then there are fewer opportunities / chances for me to switch to a new OS / editor / ide / etc than if I find myself working alongside people that are using different tooling
As an example, I often watch videos of people demoing code in emacs and I can't see what keys they are pressing to do inline code evaluation. As such, it is not as simple / natural for me to pick up these nuances as it would be if I found myself working next to someone that was already familiar with it
Wow… I go away to do the school run, the groceries and then come back to verify a data run and look what happened in the meantime! 😬
FWIW, I did not become productive in Clojure until I embraced Emacs. I have tried Cursive and Vim and Lightable and Nightcode and nothing comes close to the Emacs experience for me.
Clearly many other people, more than I thought in truth, don’t feel this way, but I have to say that I don’t give two figs what you use as long as I can read your code if we work together 🙂
(It will mean swapping computers if pair programming and swapping who is driving, ‘cos I am not going to learn your Cursive setup)
I've also played around a little with github's atom editor and protoREPL which is quite nice for someone who's used to ST3
It does sound like the de-facto standard is Emacs/cider/etc though
If there is a de-facto
Excuse my ignorance here, but what is nano? Is that like notepad for the command line?
I really must get to a meetup sometime soon so I can ask Vim and Emacs questions of people in person
@dominicm - I am prepared to spend some time re-evaluating Clojure + Vim at some point, I do ❤️ Vim when I am coding on other langs…
It'll be interesting to see if the balance of editors shifts over the next few years as more people come into Clojure and want to keep their favorite editor...
I used Emacs for years, but switched to Atom/ProtoREPL a year ago and I'm very happy. But it has also taken me a long time to really get into a "standard" workflow -- and my preferences have also evolved over the years.
I've switched from doing a lot in the REPL to doing almost everything in a file and evaluating forms as I type them instead. Per Stu's REPL-driven development talk to the Chicago Clojure group.
https://github.com/vvvvalvalval/breakform this might interest you
@seancorfield +1 for Atom, I tried for a month Visual Studio Code, in electron too, lot of good things.