オープンソース調べOSS 2023年10月10日

オープンソース調べOSS 2023年10月10日

AWS上にVSCode対応の開発環境を簡単に構築できるOSSのCoderがすごい!

# はじめに
イベントや普段の業務などで開発環境をクラウド上に用意したいなと思うことはありませんか?
そんなときに使えるOSSであるCoderというサービスについて紹介します。
私もとあるイベントで利用しましたが、とても便利でした!!

https://coder.com/

これまで、私は`AWS Cloud9`を使っていましたが、**VSCodeが使えない**という点で非常に不便を感じていました。Coderは私が求めていた**AWS上**に**VSCodeが使える**環境を作りたい!という要件にぴったりでした。

Coderは以下の特徴があります。

– 好きなクラウドサービスを選択できる(AWS, GCP, Azureなど)
– IDEが選べる(VS Code, JetBrainsなど)
– Terraformでインフラを定義できる
– 無料で利用できる(クラウド利用料のみ、一部機能は有料エンタープライズ版のみ)

ここまで聞いて`GitHub Codespaces`使えばいいじゃん!と思った人がいると思いますが、`AWSに請求をまとめたい`、`なるべく安く済ませたい`

元記事を表示

脆弱性スキャンツールGrypeの使い方

grypeは脆弱性検知ツールの一つであり,SBOMをスキャンすることで各ソフトウェアがどのような脆弱性に脅かされているかを検知できます。また,grypeの開発元はsyftと同じであり,syftと連携することを考え作られています。
[grype公式ドキュメント](https://github.com/anchore/grype)には、grypeの様々な機能詳細や仕様、環境変数の設定について記述されています。この記事では、自分が使う上で、使用頻度の高い機能について、紹介します。

**検証環境**
– Ubuntu 22.04.3 LTS (WSL2)

| コンポーネント | バージョン | 使用用途 |
| ————– | ———- | ———————— |
| Docker | 24.0.5 | コンテナイメージのビルド |
| syft | v0.91.0 | SBOM生成ツール |
| grype

元記事を表示

Automatic Prompt Engineer

# はじめに

今回はAutomatic Prompt Engineer(APE)の紹介になります.Automatic Prompt Engineerでは入力と出力のペアを与えることで,その入力から出力を得るためのプロンプトを自動で生成することができます.さらにどのようなプロンプトが良いかや人間が作成したプロンプトの評価なども行うことができます.これによりいくつかのデータセットでIn-context LearningやChain-of-thoughtの性能を上げるような結果が出しています.

記事に誤り等ありましたらご指摘いただけますと幸いです。

https://github.com/keirp/automatic_prompt_engineer

# 目次
– [1. Automatic Prompt Engineer](#1-automatic-prompt-engineer)
– [2. 使い方](#2.-使い方)
– [プロンプトの探索](#プロンプトの探索)
– [人が作成したプロンプトの評価](#人が作成したプロンプトの評価)
– [3. おわりに](#3-おわり

元記事を表示

nuejs にコントリビュートした話(人生初OSSコントリビュート)

## 3行でまとめると

1行修正だけだけど OSS コントリビュートしたよ
エンジニア歴10ヶ月の自分でもできたので、皆さんにもチャンス多いと思うよ
nuejs は、標準 Javascript に近そうな Vue的な 黒魔術 だったよ

## nuejs とは?

Vue・React・Svelte に似た ウェブサイトを作るための軽量なライブラリ。
hooks・effect・propsのような概念を知っていなくても、通常の HTML・CSS・Javascript の知識があれば作れて、なんと言っても売りは軽量であることだそうです。

https://github.com/nuejs/nuejs

React と比べると 10分の1 以下の大きさになっているそうですね(react-dom か react かは不明)。

Vue や React に疲れている人が増えているせいか、すごい勢いでスター数を伸ばしていることで有名になりました。
![スクリーンショット 2023-10-02 20.24.18.png](https://qiita-image-store.s3.ap-northea

元記事を表示

Yocto:rootfsへのパッケージ追加・削除方法

# 1. はじめに
本ページでは、Yoctoでビルドしたイメージに含まれるパッケージの追加/削除方法について紹介します。
BSPなどで作成されるrootfsイメージに対して必要なミドルウェアを追加する場合、パッケージを追加する必要があります。また、パッケージ削除は、組込み用途向けなどストレージ容量が限られているケースで必要とされる他、使用しないパッケージをイメージから取り除くことで、OSSライセンス違反(例:ソース コード開示義務があるのに、公開していなかった、など)のリスクを減らすことができます。

この記事は、上記のような理由でrootfsに変更を加えたいけど、rootfsへのパッケージ追加/削除の方法が良く分からない!という、Yocto初心者向けの内容になっています。
また、以降の説明は、BSP等のビルド環境が既に存在していることを前提に説明します。ビルド環境がない場合、以下ページを参考にビルド環境を構築することができます。
https://docs.yoctoproject.org/brief-yoctoprojectqs/index.html

# 2. 事前準備:イメージフ

元記事を表示

Google Cloud Assured Open Source Software を検証しました

ゼロバンク・デザインファクトリー DevOps チームの鈴木です。
開発生産性を高めつつ安全なシステム開発ができるように環境整備に取り組んでおります。

Google Cloud Assured Open Source Software (AOSS)を導入検証しましたので、その知見を紹介します。
2023年8月時点での内容です。 

# モチベーション

ソフトウェアサプライチェーン攻撃というサイバーセキュリティ上の脅威があります。
現在のソフトウェア開発はオープンソースなくして成立せず、その恩恵に依存している一方で、オープンソースのパッケージに悪意が混入した場合の脅威も大きくなっています。稼働するシステムを守るだけでなく開発工程の段階で安全性を確保する取り組みが必要になります。
由来の確かなオープンソースパッケージを利用することで、ソフトウェア開発ライフサイクルを守っていきたいと考えています。

# Google Cloud Assured Open Source Software とは

Google Cloud Assured Open Source Software(AOSS)

元記事を表示

OSSコードリーディングのすゝめ

# はじめに
### OSSとは
簡単に言うと、誰でも無料で読んだり使ったりすることができるソースコードです。

オープンソースという言葉が生まれた1998年に、定義が定められました。
[オープンソースの定義(v1.9)注釈付](https://opensource.jp/osd/osd19/)

まとめると、
**・再配布自由**
**・ソースコードの公開**
**・派生物の許容**
**・差別の禁止**
**・追加ライセンスの禁止**

これらの条件を守っているものがオープンソースと呼ばれるようです。
### ChatGPTの出現
ChatGPTや各Pluginの活用方法がメジャーになったことで、コードリーディングに関しても今までとは比べ物にならない程、効率的に行うことができるようになりました。
# 何のために読むのか
OSSコードリーディングは、他人のコードを読むことで技術力を向上させる方法として知られています。
実際にどのような良いことがあるのかをまとめました。
### 業務のため
自社のシステムに組み込まれているOSSのコードを理解し, システムの安定性を保つために行います。

元記事を表示

【オープンソース】コントリビュートする方法

## 目次

1.はじめに
2.イシュー発見
3.コントリビュートのガイドライン確認
4.Gitリポジトリのクローン後ローカル設置
5.イシュー修正後PR提出
6.結論

## 1. はじめに
オープンソースを使用していて問題点を見つけたことがありますか。とっても単純なタイプミスからコードのバグまで様々な種類があります。時間があれば、オープンソースに寄与してみるのはどうでしょうか。オープンソースは誰でも参加できる空間であり、そのような寄与一つ一つが積み重なればオープンソースコミュニティ全体に有益な影響を与えます。これから実際の事例を通してGitHubのオープンソースに寄与する方法を見てみます。

## 2. イシュー発見
最近[`bootstrap_form`](https://github.com/bootstrap-ruby/bootstrap_form)というオープンソースを使っていますが、公式文書の`README.md`ファイルにあるリンク3つ(`bootstrap_form_with`、`bootstrap_form_for`、`bootstrap_form_tag`)が動作

元記事を表示

Argocdのapiserverをvscodeでデバッグしてブレークポイントをヒットさせる

# モチベーション
1.Argocdのapiserverの動きを読んでバグフィックスしコントリビュートしたいため。
2.https://github.com/KouWakai/argo-cd/pull/2
のプルリクをあげる際にbadgeの動作を確認したかったため。

# 概要
公式ではtelepresenseを使った方法などありますが、準備も大変で結構複雑です。
apiserverをvscodeで動かすだけならお手軽でまずはとりかかりにapiserverのみをデバッグする方法をメモっておきます。

やることとしては、Argocdのプロセスはgoremanで実行されています。そのうちapiserverのプロセスをvscodeで実行してデバッグします。

一応make stat-local BIN_MODE=trueでサービスを起動してvscodeでローカルプロセスにアタッチする形でデバッグもできますがコードの反映する際に都度make build-localしないといけないのが手間です。
そのためvsocdeでgo run ./cmd/main.goを使ってapiserverを起動する方

元記事を表示

ナレッジ共有OSS「Knowledge」をデバッグする

# 概要

Qiitaライクなナレッジ共有ツール「Knowledge」を導入した.
デバッグ・開発の方法がまとまってなかったので備忘録としてまとめる

https://information-knowledge.support-project.org/ja/

Knowledgeの見た目はこんな感じ

# 手順

## Java11をダウンロードする

SDKMANなどのJDK管理ツールを使うのがオススメ

https://sdkman.io/install

“`sh
$ sdk install java 8.0.382-amzn
“`

## Eclipseをインストールする

最新版をインストールする

https://mergedoc.osdn.jp/

## Eclipseを起動し、ワークスペースを設定する

元記事を表示

VSCodeで誤訳を見つけたのでGitHub issueを作成した話

## きっかけ

VSCode を触っている時に、翻訳ミスを見つけました。
![01-vscode-settings.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/945225/8359586b-2dc5-7b48-ddfc-4454fb0a5e6b.png)
「コピーするする」となっていますが、「コピーする」が正しい日本語訳ですね。
修正しようと思い立ちました。

## GitHub issue 作成までの流れ

### 1. 報告・修正先を見つける

まずは報告・修正先を見つける必要があります。

私は最初、日本語の文章がおかしいので拡張機能「[Japanese Language Pack for VS Code](https://marketplace.visualstudio.com/items?itemName=MS-CEINTL.vscode-language-pack-ja)」あたりを見れば良いかな?と推測しました。
![02-JapaneseLanguagePackforVSCode.p

元記事を表示

dbt-coreに自作のサブコマンドを作成する方法

# 本記事が目指すこと
– dbt-coreのOSS活動を実施するにあたり、自作のサブコマンドを作成する方法について紹介する

# 注意
– 本記事は筆者が所属する会社と関係なく、個人の記事であることをご了承ください

# 背景
– 筆者は、ちゅらデータ株式会社に務める会社員であるが、就業時間中に職務としてのdbt-coreのOSS活動を始めた(OSS活動自体が初めての経験だった)
– 学びになったことを記事として残す
– dbt1.6のリリースによって、幾つかの追加機能が開発された。
その中で、`dbt clone`というサブコマンドも追加されたのだが、そもそもサブコマンドを追加するにあたりどのようなドキュメント、フォルダやファイル、クラスに目を通して作成しなければならないのか気になったので調べてみた。(参考:`dbt clone`の[PR](https://github.com/dbt-labs/dbt-core/pull/7881/files))

# 本編
初めに読むべきドキュメントとしては、[core/dbt/cli/README.md](https://github

元記事を表示

「「ソースコード全部読まなきゃ病」と闘う方法」と戦う方法

「「ソースコード全部読まなきゃ病」と闘う方法」と戦う方法https://researchmap.jp/blogs/blog_entries/view/82322/86ebeec0d6eef671909ad667c18aa856

「ソースコード全部読まなきゃ病」と闘う方法
https://qiita.com/guitar_char/items/3b31f7cc79333120b452

を読んで疑問に思ったことを記述。

# コンパイルする

オープンソース、コンパイルをせずに読んでいる人がいるのに驚いたことがある。

コンパイルしてみるとエラーが出る。

その原因をいくつか記録する

環境OSが異なる
環境の言語の版が異なる
環境の道具が異なる(cmakeとか)
ライブラリが異なる
これまで遭遇したソースの8割がコンパイルエラーが出て、読むどころではない。
エラーが出たところ、エラーの原因となったところを読むしかない。

全部読まなきゃ病にはなりようがない。

# 試験プログラムを動かす。

コンパイルする時に、自動的に試験プログラムも通してくださる場合がある。

エラーにならなくて

元記事を表示

Terraform のライセンス変更についての考察

Terraform (HashiCorp 製品) のライセンス変更の報を受けて考えたことを綴りました。
各種ライセンスの一次情報へのリンクも付けてあるので、OSS に馴染みがない人にも参考になる情報もあるのではないかと思っています (お役に立てるといいな) 。

# 制限事項・補足的事項

– この投稿内容は、2023.08.17 に社内向けに発表したものを公開可能な表現等に修正したものになります。
– 元資料は Marp スライドだったんですが、Qiita のスライドモードで適切に調整する手間を惜しんだため()諦めました。
– 投稿内容は 2023.08.15 頃までに筆者が確認した内容を元に記述しています。
– 記載内容には正確を期すように努めていますが、更新があったなどにより記載内容とギャップが生じていた場合は、HashiCorp 社の情報を正とします。

# これは何?

Terraform はこれまで **OSS (MPL)** で提供されてきた
→ これを **BSL** に変更するという発表が、2023.08.10 にあった。

[HashiCorp 社からの発表

元記事を表示

dbt-coreにおけるOSS活動ことはじめその9 ~ テストカバレッジをローカルで確認する話 ~

# 本記事が目指すこと
– dbt-coreにおけるOSS活動を始めるにあたってやるべきこと、学びになったことを紹介する
– 複数回に渡り連載する予定
– これまでの投稿記事
– [dbt-coreにおけるOSS活動ことはじめ ~投稿記事まとめ~](https://qiita.com/dai_zamurai/items/e48cc3a4f52adc86ccfc)

# 注意
– 本記事は筆者が所属する会社と関係なく、個人の記事であることをご了承ください

# 背景
– 筆者は、ちゅらデータ株式会社に務める会社員であるが、就業時間中に職務としてのdbt-coreのOSS活動を始めた(OSS活動自体が初めての経験)
– CONTRIBUTING.mdには明示的に記載されてない部分があったため、それらの解説を含む

# 本編
## 前提
本記事執筆時点(2023年8月17日)では、dbt-coreに対してPRを作成し、コミットするとGitHubActionsによるCIテストが自動で実施される。
その際に、[Codecov](https://a

元記事を表示

dbt-coreのv1.6における重要なアップデート情報まとめ

# 本編
2023年7月31日(現地日付)にリリースされたdbt-coreのv1.6のアップデート情報をまとめる。(参考:[Upgrading to v1.6 (latest)](https://docs.getdbt.com/guides/migration/versions/upgrading-to-v1.6))
公式ドキュメントによると、今回のアップデートの中で特に重要な点は以下の3つとしている。

> 1. Next milestone of multi-project deployments: improvements to contracts, groups/access, versions; and building blocks for cross-project ref
> 2. Semantic layer re-launch: dbt Core and MetricFlow integration
> 3. Mechanisms to support mature deployment at scale (dbt clone and dbt retry)

上から

元記事を表示

新規事業を立ち上げました!(自身の稼働限界と巻き込み力の不足で困った話)

# 会社として初の試み、新規事業を立ち上げました!(自身の稼働限界と巻き込み力の不足で困った話)

## TL;DR

– 会社として初めての新規事業立ち上げを自分中心ですることになったが、人的リソースが全然集まらない!
– 集まらない以上、不足分は自分(+経営層)でやるしかない!
– 無限労働できると思ってたけど、そんな稼働できなかった。外注や社内のリソースなどを巻き込む力不足を思い知った!
– 会社で事業やる最大の目的は一緒に遊ぶ仲間!

## 新規事業を立ち上げちゃった!

[弊社](https://qiita.com/organizations/classact/profile)はSES事業をやっている会社なのですが、新規事業として
Proxmox Virtual EnvirtomentというOSSの仮想化基盤製品のサブスクリプションサービス(テクニカルサポート)を販売する事業を立ち上げました!

https://proxmox.classact.co.jp/proxmox_ve/

自分が中心となりこの事業の立ち上げをしたのですが、前述のとおり、SES事業以外の事業を

元記事を表示

LXDEの扱い方チートシート

### はじめに
Linuxを愛好している中学生の1t0kkです。競技プログラミングやCTFをしています。
今回は自分なりにLXDEの設定方法をまとめてみようと思います。というのも、自分のPCは低スペックなのでGnomeでもラグに目が余るからです。軽量さを追い求めた結果、LXDEという野暮な環境に慣れてしまったので、日本語記事の繁栄に貢献したいと思います。
## ミニトピック
### LXDEとは
LXDE(Lightweight X11 Desktop Environment)はC++で実装されたLinux用のデスクトップ環境です。CPUやRAMの消費が他のデスクトップ環境よりも大幅に低いので、低スペックなPCでよく利用されます。その反面、基礎的かつ簡素なUIしか提供されていないのでgnomeやKDEには及びません。
### 姉妹環境LXQt
LXDEの姉妹環境であるLXQtもかなり有名です。LXDEよりはUIが充実しているので、特に理由がないなら初めからこれを使えばいいと思います。現在のLubuntuもLXDEからこれに移行しました。
### LXLE Linux
「Recieve

元記事を表示

dbt-coreにおけるOSS活動ことはじめその8 ~ コミュニティの話 ~

# 本記事が目指すこと
– dbt-coreにおけるOSS活動を始めるにあたってやるべきこと、学びになったことを紹介する
– 複数回に渡り連載する予定
– これまでの投稿記事
– [dbt-coreにおけるOSS活動ことはじめ ~投稿記事まとめ~](https://qiita.com/dai_zamurai/items/e48cc3a4f52adc86ccfc)

# 注意
– 本記事は筆者が所属する会社と関係なく、個人の記事であることをご了承ください

# 背景
– 筆者は、ちゅらデータ株式会社に務める会社員であるが、就業時間中に職務としてのdbt-coreのOSS活動を始めた(OSS活動自体が初めての経験)
– CONTRIBUTING.mdには明示的に記載されてない部分があったため、それらの解説を含む

# 本編
dbt-coreにおけるOSS活動を進めていくうちに、何らかの疑問や質問が浮かぶだろう。
そんなときに役立つコミュニティを紹介する。
## 公式ドキュメントに記載のコミュニティ
dbtの公式ドキュメントには、コミュニティ

元記事を表示

dbt-coreにおけるOSS活動ことはじめその7 ~ デバッグの話 ~

# 本記事が目指すこと
– dbt-coreにおけるOSS活動を始めるにあたってやるべきこと、学びになったことを紹介する
– 複数回に渡り連載する予定
– これまでの投稿記事
– [dbt-coreにおけるOSS活動ことはじめ ~投稿記事まとめ~](https://qiita.com/dai_zamurai/items/e48cc3a4f52adc86ccfc)

# 注意
– 本記事は筆者が所属する会社と関係なく、個人の記事であることをご了承ください

# 背景
– 筆者は、ちゅらデータ株式会社に務める会社員であるが、就業時間中に職務としてのdbt-coreのOSS活動を始めた(OSS活動自体が初めての経験)
– CONTRIBUTING.mdには明示的に記載されてない部分があったため、それらの解説を含む

# 本編
これまでの記事では、dbt-coreにおけるOSS活動において、PRを出すまでに必要な手順を紹介した。
本記事では、開発時につまづいた際のデバッグの方法について、ドキュメントをベースにいくつか補足を加えて解説する。
CO

元記事を表示

OTHERカテゴリの最新記事