Hello world introduction

Hi Clojureverse,

I am Henning from Norway. Head first Clojure - I am starting a new journey on my developer path from January 2020, embarking a new position/company with emphasis on Clojure as the main language. We will use ClojureScript and Datomic - besides that I really don´t know much more of the company technology stack at time of writing. The business problem domain is within public transport, managing naval vessels, asset management & optimization and such. Really interesting stuff, and challenges are piled high with potential reaching beyond any foreseeable horizon :slightly_smiling_face:

I have spent 20 years developing software and doing systems engineering in the Oil & Gas industry, from .Net early days through 3.5, via C++ and most recently Java 8/9, ElasticSearch, and sprinkles of JavaScript (limited to JQuery, D3, OpenLayers)

Areas of particular interest are all things GIS related, lucene/elastic, basic machine learning, stream processing for event detection/classification etc.

I will work with (most likely) IntelliJ and Cursive as main tools. I have reached some level of productivity/efficiency with VIM for a number of years, but it appears as if VIM and Clojure is a little left behind. Currently I´m at a point where I need to decide pathways between Emacs/Cider or IntelliJ/Cursive…

So, where do I go from here?

3 Likes

Hello! Why Clojure and why not Lisp ealier?

1 Like

Hello @henningzen!

Welcome to Clojureverse.

Considering that

  • you’ve spent effort getting to know Vim
  • you’re about to use Clojure,
  • and getting started with Emacs in general is quite hard,

I’d strongly recommend having a look at Spacemacs. Spacemacs is an Emacs distribution that’s higher-level than plain Emacs, making installing Clojure support as simple as saying “yes” when you open your first .clj-file. It’s also tailored to Vim users. I’m using it myself, and I’m really happy I spent some effort learning it.

http://spacemacs.org/

Also, I’m glad to see more Norwegians here! I’m based in Oslo, and if you’re not too far away from that, I’d be happy to grab a coffee and chat, if you’re interested.

Teodor

2 Likes

? :slight_smile:

Why Clojure? Between a number of reasons; because Clojure used by a company that I am starting working for? And this is a company that I really want to work with, due to an interesting problem domain and industry, things that fascinates me, wanting to understand, wants to learn. Problems with an invite to intriguing problem solving…

This opportunity finally gave me a reason to take one step further into functional programming; I have tried to shift sideways inside Java and I suffer from function-fatigue with all heavy lifting and scaffolding required in Java 11 to do basic FP. Still, I very much appreciate the JVM ecosystem. This opportunity open doors to new playgrounds without closing doors to what I already have invested in.

Why not Lisp earlier? Because I never needed it? The part of software industry I relate to never considered Lisp a first class citizen; it simply didn´t belong there.

1 Like

Thanks @teodorlu

I have read mixed messages on Spacemacs. Maybe I’ll give it a try?! Either way, I need to get an IntelliJ/Cursive env working efficiently as I expect more coworkers onboarding 2020. For productivity reasons, I need a mainstream dev-env for general purpose needs. A pragmatic and safe approach :slight_smile:

I work in Stavanger, and expect to spend time in Oslo, work related, in 2020. I will definitely engage over coffee and conversations.

Kindest regards, Henning

2 Likes

If team synergy and onboarding is the primary goal, Intellij/Cursive is probably the safest choice. Spacemacs requires you to want to buy in, in a way. And it’s a serious option if you want to keep your Vim skills around!

Reading your initial post a second time, I realize I might not have understood what you were asking for. Are you looking for general getting started advice? If so, Clojure for the Brave and True was the first book I read, which I liked. Following from that, I’ve learned quite a bit from Eric Normand’s newletter (signup on the bottom of https://purelyfunctional.tv).

Considering coffee, I sent you a message :slight_smile:

cursive, emacs, vim, atom and vscode are all good tools for Clojure development. there won’t be a problem if you and your coworkers use different tools. because Clojure development is REPL driven, all these tools do a good job. just use whatever make you feel comfortable.

Hey! Please use the Vim keybindings in Cursive/IDEA! That is by far the best combination… :wink:
Alan

1 Like