Clojure

Pisano

2019年11月6日

Pisano

ClojureまたはClojureScriptをどれくらい使用していますか?

当社、Pisanoでは、1年間本番環境でClojureとClojureScriptを使用しています。現在、主力言語となっており、非常に満足しています。

ClojureまたはClojureScriptを使用しているチームの規模は?

フロントエンドとバックエンドのサービスでClojure/Scriptを使用しているフルスタック開発者が6名います。

ClojureまたはClojureScriptを使用して構築している製品またはサービスは何ですか?

Pisanoでは、洗練された革新的なエンタープライズ顧客体験管理プラットフォームを開発しています。このプラットフォームにより、企業は顧客をより深く理解し、様々なチャネルからのフィードバックの収集、行動分析、エンゲージメントという手法を通じて、卓越した顧客体験を提供できます。当社のモットーはスピードと信頼性であるため、プラットフォーム構築には堅牢で、スケーラブルで、生産性の高いツールを選択する必要があり、Clojureを選択しました。

最も作業が楽しかったClojureまたはClojureScriptライブラリは何ですか?

ClojureScript側では、re-frame / reagent / shadow.cljs の組み合わせが気に入っています。非常に使いやすく、フロントエンド開発がこれほど簡単になったことはありません。必要な機能を必要な時に迅速に開発でき、本当に楽しいです。

Clojure側では、liberatorringcompojuremountなどを使用しています。コードをREPLに渡すと変更がすぐに反映されるのが素晴らしいです。また、Specterライブラリ(ClojureとClojureScriptの両方)は、データ操作に関して非常に役立っています。

ClojureまたはClojureScriptを使用することで、どのような価値を得ていますか?

まず第一に、Clojure自体です。偶発的な複雑さ(言語設計)がないため、主要な問題であるビジネスロジックに集中できます。REPLも非常に優れており、対話型開発により迅速に進めることができます。特にエンタープライズプラットフォームを開発する際には、避けられないJVMとJavaScriptの広大なライブラリ/フレームワークエコシステムも大きなメリットです。

ClojureまたはClojureScriptの好きな機能は何ですか?

データ構造でシステムの状態をモデル化することは、素晴らしい体験です。自然に見え、それが本来あるべき姿です。このアプローチにより、システムの理解とテストが容易になります。不変性、純粋関数、REPL、ホスト相互運用性、マクロなどは、優れた機能です。

スタックは?

Webサーバーにはhttp-kitを使用しています。RDSにはPostgres、キャッシュにはRedisを使用しています。また、Rubyで記述されたサービス(大規模なRubyコードベース)も運用しています。フロントエンドでは、一部のアプリにreagent/re-frame/shadow.cljsの組み合わせを使用しています。

ClojureまたはClojureScriptを使用することが、ビジネスにとってどのような価値をもたらしますか?

Clojureを使用することで、堅牢で、シンプルで、小さく、理解しやすいアプリケーションを開発できます。Clojure以外でこのようなことができる言語は見つかりませんでした。少ないリソースで多くのことができるため、非常に価値があります。チーム規模は小さく、通常は短期間(数時間)で機能を追加できます。Clojure/Scriptを使用することで、REPL駆動開発により、より迅速にコードを開発できます。製品をより良くし、開発プロセスを大幅に高速化します。Clojureのおかげで、エンタープライズソフトウェア開発がより楽しくなりました。

Clojureに関するあなたの体験談を共有したい場合は、このフォームにご記入ください。