Vue 2 EOL 直前! Vuetify 3のデータテーブルコンポーネントが正式リリース
これは豆蔵デベロッパーサイトアドベントカレンダー2023第1日目の記事です。 はじめに # Vuetify は Vue ベースの UI コンポーネント集です。デザインセンスがない筆者でも楽に整った画面が作れるので、かなりお世話になっています...
記事を読むロボットマニピュレータ制御のアルゴリズム
MathJax.Hub.Config({ tex2jax: { inlineMath: [['$', '$'] ], displayMath: [ ['$$','$$'], ["\\[","\\]"] ] } }); ロボットマニピュレータ制御のアルゴリズム # (株)豆蔵 エンジニアリングソリューション事業部 石井隆寛 1. はじめに # (株)豆蔵では様々なロボット技術を開発している...
記事を読むもっと便利にBash再入門
「ソフトウェア開発でこれがないと仕事にならないソフトウェアを挙げてください。」 この答えに統合開発環境(IDE)を挙げる方が多いかと思います。それ以外にもGit、使い慣れたエディタ、使い慣れたスクリプト言語、プロジェクト(タスク)管理ツール、モデリングツールなどが上位に来るのではないでしょうか? 筆者はシェル(Bash)に一票を入れたいと思います。前述したものが主役とすると、シェルは脇役で縁の下の力持ちのようなソフトウェアです。またソフトウェア開発では必須のツールです...
記事を読むAWS AmplifyにNuxt3のSSRアプリをゼロコンフィグでデプロイする
GAリリースから約1年経過してだいぶ成熟してきた感のあるNuxt3ですが、利用するアプリのタイプに応じてデプロイ方法が異なってきます。 SPAやプリレンダリングを使用した静的ホスティングであれば、生成した静的リソースをデプロイするだけなので比較的簡単です。 ただ、最近主流となりつつあるサーバーサイドでページを生成するSSRアプリを採用した場合は、コンテナ等のサーバー環境を別途準備する必要があり何かと手間がかかります...
記事を読む開発環境の Node.js を Bun に置き換えてみる
はじめに # Bun は Node.js や Deno と競合する JavaScript ランタイムです。 Bun — A fast all-in-one JavaScript runtime 特に速度を売りにしており、公式サイトには、React SSR / WebSocket 通信 / SQLite クエリ実行で Node.js / Deno を大きく上回るスループットを示すグラフが掲げられています...
記事を読む業務システムにおけるアジャイル その3:SaaSとの相性
はじめに # 中佐藤です。 今回は、いろんなベンダーさんから石を投げられそうな話で、ちょっとビクビクしながら投稿します。 とはいえ、同様の話を最近あちこちで聞くので、心を鬼にして(?)解説します。 SaaSはアジャイル開発向きか # 業務システムを刷新する際に、スクラッチ開発ではなく、SaaSベースで開発する、という状況もよく聞くようになりました...
記事を読むOpenAIのAssistants API(ベータ版)を試す
先日のOpenAIの開発者イベント(DevDay)では、新モデル(GPT-4 turbo)やカスタムGPT(GPTs)等、数多くの注目機能が発表されましたね...
記事を読む業務システムにおけるアジャイル その2:業務フローを元に考える
はじめに # 中佐藤です。なんだかんだで1回目から間が空いてしまいました。 本連載2回目で、「業務フロー」を取り上げます。業務フローがどのようなものかは前提知識として説明を省きます。 そしてこれが前回予告した「イケてるプロダクトオーナー」vs「イケてないプロダクトオーナー」の話につながります。 (プロダクトオーナーは以下、POと略します) POが見るべき範囲 # 前回、業務システムの範囲は「人の動きも含めてシステムである」というお話をしました...
記事を読む対戦型ロボットゲームで楽しくJavaプログラミング学習「Robocode」(その2:ゲームルール編)
前回の「Robocode」の紹介記事を書いてから約2ヶ月も間が空いてしまいました。申し訳ありません。 今回は Robocode のゲーム内ルールやバトルフィールド(戦場)、 Bot(戦車)構造を解説していきたいと思います。 ゲームのルール # 「Battle」-「Setup Rules」をクリックします。 ゲームのルールを確認します。(詳細はこちら) 詳細を説明していきます...
記事を読むPiniaを使ってNuxtアプリの状態を共有をする
全てのアプリケーションに当てはまるものではありませんが、規模の大きなアプリケーションではどこからでもアクセスできる中央集権的なストアがほしくなってきます。 今回はNuxtを使って、Vueの状態管理ライブラリとして推奨されているPiniaの使い方を簡単に紹介したいと思います。 なぜPinia? # Vueの状態管理ライブラリと言えば、長らくVuexでしたが現在は違います。 Vuexの公式ドキュメントのトップには以下のように書かれています...
記事を読むDeno Tui でユニバーサルな TUI アプリを作る
はじめに # Deno Tui は TUI (Terminal User Interface)のアプリを作成するための Deno ライブラリです。 https://deno.land/x/tui@2.1.4 GitHub - Im-Beast/deno_tui: 🦕 Deno module for creating Terminal User Interfaces TUI は文字通りターミナルで動作する UI で Linux のインストーラーなどで利用した方も多いと思います...
記事を読むLume入門(第4回) - ページ部品をコンポーネント化して再利用する
前回は、Lumeのタグ管理を使ってページの検索性を高める方法をご紹介しました。 ここでは、SearchプラグインやPaginateプラグインを使ってタグの一覧ページを作成しました。 今回はUIの部品化と再利用がテーマです。 昨今はReactやVue等のフロントエンドフレームワークの普及によってコンポーネント指向でUIを部品化することが当たり前になっています。 LumeはフレームワークではなくSSGの位置付けですが、強力なコンポーネント機能が用意されています...
記事を読むOpen62541を使用したOPC-UAサーバ開発
はじめに # 本記事の目的 # 本記事では,下記の事項について説明します。 OPC-UAの概要について Open62541のインストール方法 Visual Studioでの開発環境構築 OPC-UA サーバのサンプル作成 GitHubリンク # 本記事で実装するコードはこちらに記載しています...
記事を読むCDKを利用してAWSで定期的に起動するパイプラインを構築する
はじめに # リポジトリへのプッシュをトリガーとして動作するパイプラインは広く利用されています。 プッシュトリガーで起動するのでは実行頻度として高すぎるアクションをそのまま実行しているパイプランも多く存在します。 定期的に実行されるパイプラインは、より良いCI/CD環境を構築・運用するために、今後必要性が注目さていくと感じております...
記事を読むLume入門(第3回) - ページをタグ管理して検索性を高める
前回はLumeのテンプレートエンジンとしてJSX/MDXプラグインを使用する方法を見てきました。 サイト運営が順調でページが増えてくると、目的のページを探すのが辛くなってきます。 こんなときは、ページにタグ(目印)を付けて検索性を高める手法がよく使われますね。 今回は、Lumeを使ってタグ付けされた記事の一覧ページを生成する方法をご紹介します。 また、一覧ページにリストアップする記事が多い場合に有効なページネーション機能も見ていきます...
記事を読むDeno Fest(ディノフェス)参加メモ
はじめに # さる2023年10月20日、聖地秋葉原にて Deno Fest(ディノフェス)が開催され、Deno 好きの筆者もこっそり現地参加してきました。 Deno Fest(ディノフェス) (2023/10/20 12:00〜) 公式ブログでもアナウンスされていました。 Register for Deno Fest Tokyo, October 20th 2023 YouTube でも同時配信され、アーカイブを閲覧可能です...
記事を読む独自のデータに基づくAzure OpenAI機能を使ってみた
はじめに # 今回はAzure OpenAI Service(以下AOAIとする)のプレビュー機能である「独自のデータに基づく Azure OpenAI」という機能を試してみた内容をまとめます。 独自のデータに基づくAzure OpenAI (プレビュー) この機能では利用者の独自のデータ(txtファイル、pdf、wordファイルなど)に基づいてOpenAIが公開しているチャット対話モデル(GPT-3.5、GPT-4)に質問することができます...
記事を読むLume入門(第2回) - テンプレートエンジンとしてJSXとMDXを使う
前回はLumeの基本的な使い方を見てきました。 ここではテンプレート言語として、ビルトインで使えるマークダウンとMozillaのNunjucksを使いました。 ただ、マークダウンとは違い、Nunjucksはあまり世の中に浸透しているとは言えず(たいしたことはないですが)学習コストも発生します。 最近はReactエコシステム普及に伴ってJSXが広く使われています。また、マークダウンでJSXを使えるように拡張したMDXを使いたいと考える人も多いのではないでしょうか...
記事を読むDeno のメッセージング基盤 Deno Queues を試す
はじめに # Deno Queues の発表がありました。 Announcing Deno Queues Deno Queues は Deno KV 上に実装されたメッセージング基盤です。 Using Queues | Deno Docs Deno Deploy を非同期処理の基盤として利用できます。アナウンスブログでは以下のようなユースケースが挙げられています...
記事を読むQtWidgets vs QtQuick
ロボットシステムを構成する機器としてティーチングペンダントは欠かせない存在です。 弊社ではティーチングペンダントのGUI開発フレームワークとしてQtを採用することが多いです。 QtはQtWidgetsとQtQuickという2つのユーザインタフェースを提供しており、GUI開発を担当する身としては、どちらを採用するかたびたび悩まされます。 今回はそんなQtWidgetsとQtQuickを比較していきたいと思います...
記事を読む