Scripton登場!リアルタイム可視化機能を備えたPython IDEとは
引用元:https://news.ycombinator.com/item?id=43090214
いい商品だね!クリエイターには拍手を送りたい。ただ、Mac専用でこの価格設定は厳しいかも。他にも選択肢があるから、毎月20ドルが高く感じる人も多いと思う。でも、このプロジェクトには注目しておくよ。
サブスクリプションを止めたらどうなるの?scriptonライブラリはオープンソースだし、lyraやorionのプロット機能はリファクタリングなしで画像ファイルに出力できるの?それとも再度サブスクしないといけないの?(製品のローンチおめでとう!)
すごく見栄えがいいけど、サブスクリプションの価格設定にはあまり満足できないな。趣味用の割引はないの?
Clojureでこれをやりたいなら、Clerkをチェックしてみて。自分が使ってるIDEをそのまま使えるのが嬉しいよ。
IDEでClerkが使えるなんて知らなかった!教えてくれてありがとう!
これすごく良さそう!今はLiveCodeを使ってデータの絞り込みや変換をしてるけど、似たようなツールを探してる。求める機能は、テキスト入力、テキスト出力、ボタン、メニュー、スライダー、チェックボックス・ラジオボタンが欲しいな。
その中で今は、2、3、5があるみたい?もっとUI構築に進んでいく予定はある?
ありがとう!そうだね、現在は2、3、5があるよ。この初期セットはUI機能を示すためのもので、今後もっとウィジェットやコントロールも追加する予定だよ。7のバンドルについても考えてるけど、今は優先度が低いかな。
それはワクワクするニュースだね。Scriptonをもっと詳しく調べて、適切なインターフェースウィジェットが揃えば、自分のニーズに合いそうだ。
PyTorchのテンソルを追加のメモリコピー無しで可視化できるの?テクスチャにマッピングして表示できるとか?Appleの最近のコンピュータではあまり問題ないけどね。
まだできないよ。内部プロトタイプではmacOSのIOSurfacesを使ってゼロコピーを試したけど、いくつかの制約があった。でもIPCはコピーを最小限に抑え、大きな数値配列を効率的に扱えるよ。
これ、1昔前のLight Tableを思い出すな。https://news.ycombinator.com/item?id=3836978
見た目がめっちゃ綺麗!データビジュアライゼーションには使わないけど、ウェブ開発がメインなので、UIがTypeScriptだと聞いて驚いた。Reactみたいなフレームワーク使った?
ありがとう!最初のプロトタイプではReactを使ってたけど、特定のケースでのオーバーヘッドが問題になって、カスタムの仮想DOM実装に置き換えた。複雑な更新のデバッグが難しくなって、最終的にはvscodeみたいにフレームワークなしでコアコンポーネントだけで構成されてる。
一度きりの購入は考えてるの?それともサブスクリプションだけ?
現段階ではサブスクリプションだけの予定。でも、将来的にはJetbrainsの『永続的なフォールバックライセンス』みたいなのがあって、1年後は特定のバージョンまで使い続けられるようにしたい。
Observable Plotはどうやって働いてるの?コードをJavaScriptに変換してるの?
scriptonのPythonライブラリは、一般的なPythonデータ形式(通常の配列や辞書、numpy配列、データフレームなど)を中間形式に変換して、プロット関数を呼び出すとIDEに送信され、JavaScriptに自動翻訳されるんだ。あなたのPythonのプロットコードはこうなるよ:https://docs.scripton.dev/api/plot/orion/overview
すごく良さそうだね!これにはどのくらい取り組んできたの?自分は今年中にhackerman.aiのテキストエディタをリリース予定だよ。ニッチな製品で、自分の言語用のレクサーを作成・編集できたり、ほぼ全てをカスタマイズできて、キーバインディングも自分で定義した関数を使うようにできるし、もちろんAI機能も組み込まれていて、カスタマイズやコマンド追加もできる。Qtフレームワークベースでね。
これめっちゃカッコいいけど、サブスクリプションは嫌だな。みんなデジタル大家業に走りすぎじゃない?何かを売ってくれよ。
コマンドキーを押しっぱなしで終了ってやめてほしい!ショートカットは一瞬で押すもんだろ。
確かに、押しっぱなしで終了するのは accidental quit を避けるための方法だから、好みはあるね。でも次のアップデートで設定可能にする予定だよ。 >”ノートブックは便利だけど、いくつかのトレードオフがあるから完全には代替できない。” デザインはいいけどJetbrainsの方が好きなんだよね。統合するのはどう?それにMac限定は俺には向かない。Linuxしか使わないんだ。 でも、変数エクスプローラーはあるの?MATLABやRStudioみたいなこの機能が多くのPython IDEに欠けていて、Spyder使うのは情報を見れるから妥協してるんだ。 現在のバージョンではアクティブな変数を表示してるよ(numpy配列やTorchテンソル、DataFramesの形状や型も)。 Vanilla VSCodeにもデバッグモードで似たような機能はあって、Python拡張をインストールする必要があるけどそれだけで済むよ。 PyCharmはこの機能をうまくこなしてる。 Pythonのデプロイに悩んでる。サーバーなしでコードを配布するためにWebAssemblyを勉強してみるつもり。 >自分が作ったBuckarooテーブルは、ヒストグラムや要約統計、検索機能を持ってる。テーブルについて語りたいから、連絡してくれたら嬉しい。 Scriptonの初期に、百万行以上のデータフレームを扱う仮想化テーブルを作成した。初リリースではビジュアルの部分に集中したけど、テーブルも後で必ずやる予定! テーブルは自作したの?百万行を扱えるのはいいね。ウィンドウベースで表示を考えると、他のアーキテクチャもシンプルになる。 うん、自分で書いたよ。柔軟な仮想化テーブルは確かに複雑なものを作りやすくしてくれる。現状、ユーザーの拡張はできないけど、IPythonのいくつかの機能はサポートしてる。今はipywidgetsは使えないよ。 JetBrains Monoっぽいね。 広告おめでとう。私は月額サブスクリプションで自由なオープンソースを借りることには抵抗があるけど、頑張ってね。 誰がターゲットユーザーなんだろう?自分はPythonをよく使うけどNotebook以外でプロットする必要を感じたことがないし、たくさんプロットする人向けなのかな?電子工学のエンジニアとか? 見た目はすごくいいね!お疲れ様!でも、個人的には魅力は薄いかな。JetBrainsの更新料に173ドル払ったばかりで、PyCharm Proがすごく良いからね。このサイトを見る限り、すごく良い機能がいくつかあるけど、PyCharm Proや他のJetBrains製品を置き換えるにはならなそう。悪いけど、競争は歓迎するよ。 ありがとう!フィードバックはありがたいです!初めは視覚化に重点を置いてるけど、IDEの機能も開発中です。PyCharmのどの機能が一番必要ですか? 必要な機能のリストは長いんだけど、最近特に思うのは: すごく洗練されたUIだね。サブスクリプションの価格は気にしないよ、みんなが揃ってる方がいいし。UIツールキットは特にワクワクする、Streamlitの代わりを探していたから。 >”エディタコンポーネントはMonacoに基づいているが、IDEはVSCodeのフォークではなく、ゼロから書かれた。” 個人的にVSCodeのコードベースは優れていると思う。機能の大部分がサービスに抽象化されてるし。ただし、そのサービス間の相互作用には難しい制限があるかな。フォークしたり拡張したりすることはできるけど、やっぱり大変だし、Scriptonにはゼロから書くのが適していたよ。VSCodeのエコシステムの利点を失うリスクはあるけど、Scriptonに慣れやすい部分があればいいな。 20ドルは実際に必要な人には安い。マネージャーレベルに説明してROIを伝える方が良いかも。 いいアイデアだと思うけど、IDEじゃなくて別のプロダクトにしたほうがいいんじゃない?Pythonを実行するツールと可視化ツールに独立させた方がいいと思うよ。大きなIDEに追いつく必要もないし、IDEのコードを保守する必要もないから、いろんなIDEを使ってる人たちにも使ってもらえるしね。 なんでVSCodeの拡張機能として作らないの? VSCodeの拡張機能の道は、Scriptonの機能には制約が多すぎて無理だったんだよね。 これ、VSCodeをフォークしたり独自のエディタを作る人たちがよく言うことだよね。PythonのIDEだから理論上は大きな問題じゃないけど、Microsoftの一部拡張機能(dotnetとかcpp)は、MicrosoftのVSCodeのリリース以外では動かないんだ。あなたのエディタはvsix拡張機能に対応してるの?多分無理だろうけど、これは多くの人にとっては致命的な問題かも。 うわ、これめっちゃかっこいい!C++の部分についてもう少し教えてくれない?よくわからないんだけど。 ありがとう!C++の部分はIDEとPythonの間のIPC(プロセス間通信)に関係してるんだ。Pythonプロセスがデータを可視化のために送ったり、コマンドを受け取ったりするためにいくつかの方法があって、たとえばHTTPを使うこともできる。でも用途によっては性能にかなりのオーバーヘッドが出るんだ。だから、Scriptonはバイナリペイロード(大きなnumpy配列とか画像)を送るのに最適化されたプロトコルを使ってるんだ。これはC++のネイティブなマルチスレッドノードモジュールで実装されてて、非常に低遅延で高スループットの可視化を実現してるよ。 Neovimのプラグインにしたら購入するよ! これはCursorみたいなAIエディタなの? 個人的な希望だけど、Linux版も出してほしいな。アドバイスとしては、まずは計画中のWindows版を早く出した方がいいよ。頑張ってね! いいプロジェクトだね! めっちゃクールだね! 俺はロボティクスのエンジニアで、データ可視化に大量に関わってるんだ。どんな高精度・高レートのデータでも可視化してる。自分で作ったライブラリから、Rerunに移行したよ。実際に使ってるけど、シンプルだし、オープンソースだし、すごく役立つ。 >最近、ちょっと苦労してて、インターンが資料を使わずにLLMを使おうとするんだが、グチャグチャなコードができてきて困ってる。お前のリアクションはポジティブだね。インターンは、そのレベルの仕事なら誰でもできることを理解してるの? 面接や採用の決定は多くが組織やマネージャーレベルで行われるからね。インターンは主にまだ学生で、リモート授業を受けてきた世代なんだ。彼らに資料を使うように言っても、ちょっと時間奪われてる気がする。 RerunのLLM用のエクスポートを最近追加したけど、どう扱うべきかいまいち不安だった。今はChatGPTのテストでは大分良くなってるようだよ! Microsoft ResearchのData FormulatorのAI統合がすごく簡単でいいな。これで簡単に始められそうだ! ReRunは簡単に使えるけど、自分はWGPUとEGUIを使った視覚化重視のエンジンに乗り換えたよ。カメラや可視化の制御がしやすいからね。 俺はRaspberry PiにデータをCSVで保存してて、デスクトップでSSH経由でMatplotlibで読み込んでる。でも、ちょっとカクカクするんだ。Rerun使ったら改善できるのかな? はい!Rerunは絶対、君の作業を楽にしてくれるよ!Rerunはサーバーとビューアーが別のデバイスにあるのもサポートしてるから、CSVのデータをRerunにログするコードを追加すればいい。 “Show HN: We open-sourced our [rpi CSV] compost monitoring tech”って記事や、Grafanaの機能についてのコメントが出てきて、pyqtgraphやMatplotlibの使い方も話題になってるね。リアルタイムの可視化ツールとしては、Genesisが興味深いかも。 rerunには前から注目していたけど、コメントを見て試してみようと思った。簡単なことにはノートブックを使ってたけど、GUIを自作するのは割に大変だったから。IMGUIを使った場合、100行以内で自分の動画やプロットが作れるのはいいね。 ドキュメントをマークダウンファイルにスクレイピングして、インターンにLLMのプロンプトに入れさせてるけど、結構うまくいってる。いいスペックのREADME.mdを作れば、役立つかもと思ってる。 rerunは多次元データの可視化に必要なものそのもの。色々質問したいことがある!mmapファイルにアクセスして、リアルタイムで表示しながら履歴を保存できる? rerunを初めて見たけど、すごく良さそう! Python開発をかなり長くやってるけど、最近使ってるのはPyCharm。見た目が綺麗で時短機能もいいけど、Mac専用でサブスクリプションモデルなのが気になる。 PyCharmを使ってるって言うけど、サブスクリプションモデルについてもっと知りたいな。JetBrainsのはどうなんだろう? Jetbrainsのサブスクリプションモデルには大事な点があって、支払いを止めても使えるライセンスがあるんだ。こういうモデルがもっと増えるといいな。 Jetbrainのモデルは、昔のIDEの価格モデルに似てるね。開発者は結構お金払ってたし、マニュアルも付いてた。今でも紙のマニュアル欲しいな。 Jetbrainsはもともとアップグレード制だったけど、今はサブスクリプションモデルに行き、収益が安定するようになったらしい。面白い変化だね。 Oracle RDBMSは昔、PL/SQLやCバインディング、Fortranなどの20冊以上の本が付いてきたんだよね。そんな時代には戻りたくない! コーヒーを飲みながら、そういう本を一冊読んでみたい気分。でも、現実はそう甘くないんだよな。オンラインドキュメントより紙の本の方が好きだよ。 確かに似てるね。Borland C++やVisual Studioのソフトウェアも、メジャーバージョンとパッチアップデートが揃ってた。Jetbrainsの物理コピーがあるのかは分からないけど、昔の大きな箱が懐かしい。 デベロッパーが製品を本当に理解している証拠として、大きな箱が好きだな。最近は素早い展開が普通になってて、急いで新機能を求めるのは悪くないけど、じっくりとやるメリットもあると思う。 それは違うと思う。ツールのプロジェクトチームにはデベロッパーだけじゃなくて、優れた技術ライターやプロジェクトマネージャーも含まれていたんだ。ドキュメント化のための仕様がついてたしね。 デベロッパーが中途半端な仕事を許されないのはいいことだと思う。 > perpetual fallback license いくつかのこと。1. SaaS製品でのperpetual fallback licensesはあまり一般的じゃないから、明示されてないとほぼ無理だと思っていいよ。2. 開発者が言ってたけど、今のところはサブスクリプションのみで、将来的にはJetbrainsの「perpetual fallback license」のようなものを考えてるらしい。 > 1. SaaS製品でのperpetual fallback licensesはあまり一般的じゃないから、明示されてないとほぼ無理だと思っていいよ。もっとコメントを表示(1)
具体的に何を言ってるの?VSCode使ってて、#%%を使ってスクリプトをセルに分けて実行してるけど。
ただ、さらに詳しい情報をテーブル表示する機能はまだ計画中なんだ。
・uv/poetryの検出と環境利用
・リファクタリング
・unittest/pytestサポート
・docker composeのサービスサポート
・djangoのアプリ/モデルの検出と補完
・複数ランナーのサポート
・デバッガーがすごくいい
・djangoとjinjaのテンプレートサポート
・データソースへの接続とSQLクエリの実行
・Vimエミュレーション
面白い!どんなトレードオフがあるの?もっとコメントを表示(2)
もっとコメントを表示(3)
Scriptonがこれを提供してるか本当に確か?価格ページに「サブスクリプションが有効な間すべての更新が含まれます」と書いてあるけど、それはサブスクリプション終了後は更新が止まるだけで、使用はできるってこと?よく分からない。
私もperpetual fallback licensesは良いと思ってるし、hackerman.aiのテキストエディタでこれを使いたい(今年後半にリリース予定)。一回の支払いも復活してほしいな。