オープンソース調べOSS 2022年12月14日

オープンソース調べOSS 2022年12月14日

OSPOCon Japan 2022 Report: コントリビューション分析について/Analysis of Organization’s Contribution

## はじめに

OpenChain Japan WGのPlanning SG(subgroup)リーダを担当しています福地と申します。本日は、オープンソースイベントOSPOCon Japan 2022にて発表した、企業のコントリビューションについての分析を紹介します。

## OSPOCon Japan

OSPOConは、Linux Foundationが主催する、OSPO(Open Source Program Office)やオープンソース推進のベストプラクティスにテーマを絞ったイベントです。昨年までは、毎年日本で開催されているOpen Source Summit Japanの1トラックでしたが、2022年から独立して同じ場所での同時開催イベントとなりました。

OSPOに関する発表を集めたOSPOConが独立同時開催になるほど、OSPOは世界的に注目を集めています。

日本にいながら世界のオープンソース推進の最前線の情報を聞いたり、海外のOSPOと直接議論したりできる貴重な機会を提供していますので、OSPOに興味をお持ちの方にはお勧めのイベントです。

## OSPO(Ope

元記事を表示

OSSであるEC-CUBEでバグバウンティを実施してみたら結構盛り上がったのでその全てをお伝えします

## バグバウンティ(Bug Bounty)
この言葉をご存知でしょうか?(私は知りませんでした…)
バグに対する報奨金制度のことです。
企業の製品やサービスに関する脆弱性に関する報告を外部の方から受け、その対価として報奨金を支払う仕組みです。
自社サービスのセキュリティ対策を行う有効手段の1つとなっています。

今回はそんなバグバウンティを、私が所属するEC構築オープンソース「[EC-CUBE](https://www.ec-cube.net/)」を提供する株式会社イーシーキューブで初めて実施してみたら、手前味噌ながら結構手応えがあったので、その全てをお伝えしてみようと思います。

## 本記事のおしながき
1. EC-CUBEの紹介
2. なぜバグバウンティを実施しようと思ったのか
2. どのように準備したのか
2. 開催中は何をしたのか
2. 実施結果
2. 実施してみて(振り返り)

## EC-CUBEの紹介
– EC構築のオープンソースソフトウェアです。
– 無限のカスタマイズ性が強みです。
– また、無

元記事を表示

OSSにコントリビュートするアイデアとRuby gemsでの実践例

# OSSにコントリビュートするアイデア

これまでいくつかの OSS にコントリビュートしてきた中で、**非推奨・廃止コードの対応**は比較的取り組みやすいと感じています。

そこで、今回は Ruby gems での非推奨・廃止コードに対応する例を紹介します。Ruby gems は1つの例であり、同じような対応をする事で他の言語やパッケージなどに応用できます。

主に「OSS にコントリビュートしたいけれど、具体的なアイデアが思いつかない、手段が分からない」といった課題を感じている方が参考になればうれしいです。

# 非推奨・廃止コードとは?

Ruby は一定の後方互換性を保ちつつ、時には非互換な変更を加えながら進化を続けているプログラミング言語です。非互換な変更として、例えばクラスやメソッドの廃止が該当します[^ruby]。

[^ruby]: 非互換な変更により、Ruby ユーザは既存コードの改修を余儀なくされます。しかし、ソフトウェア開発において、最初からすべてを予測する事は不可能であり、時代の変化に合った必要な対応だと考えています。また、Ruby の人気の高さは後方互換性の

元記事を表示

Kubernetesコミュニティへのコントリビューションに興味がある人へ

これは [Kubernetes Advent Calendar 2022](https://qiita.com/advent-calendar/2022/kubernetes) の12/8(木)の記事です。

この記事では「Kubernetesコミュニティへのコントリビューション」について書こうと思います。
他の方が書く技術的な記事とは毛色が違う内容ですので、読み物的に読んでいただければ。
なお、本日の内容は私個人の見解になっておりますのでご承知おきを。

# TL;DR
– Kubernetesを始めとするCNCFのコミュニティはOSSを使うユーザからのコントリビューションが増えることを希望しています。
– コントリビューションとはソースコード更新のみを指しません。ドキュメントのアップデートやIssueの登録なども含みます。
– Kubernetesコミュニティに参加する日本の人が増えると良いと思い、私はコントリビューションを開始するための日本語トレーニング講師をこれまで3年間ほど実施しています。
– 興味のある人は是非トレーニングを受けてみてください。また、講師も募集しています。

元記事を表示

OSSにissueを立てた話

## はじめに
アドベントカレンダー7日目の記事です

https://qiita.com/advent-calendar/2022/hrbrain

HRBrainでバックエンドエンジニアをやっている入中です。
OSSにissueを立てようと思った経緯、実際にissueを立てるまでに行ったことを書きます。

## 誰に向けた記事

– OSSを使ったプロダクト開発を行っているエンジニア

OSSを使用していて、あれこの機能まだ実装されていないんだ…や
期待挙動が返ってこないな…という経験があった場合にissueをあげてみたいんだけど…
と思って躊躇している方の参考になればと思います。

## 経緯

HRBrainでは現在`goban`というOSS開発を行っています。
(詳しくは[HRBrainアドベントカレンダー1の1日目](https://qiita.com/yuonoda/items/22a6dd04eb18b4dca240)の@yuonodaさんの記事を御覧ください!)
そのOSS開発のContributorとなることを決意しました。

そこであてられた`goo

元記事を表示

キミもAngular日本語ドキュメントの翻訳に協力しよう!

こんにちは、[あかい](https://twitter.com/Ver1000000000)です?

本記事は [Angular Advent Calendar 2022](https://qiita.com/advent-calendar/2022/angular) の5日目の記事です!! 遅刻してスミマセン?

4日目は[@Jialipassionさん](https://qiita.com/Jialipassion/items/b65d4231fe389d8e9f14)で6日目は[@beltway7さん](https://ksakae1216.com/entry/2022/12/06/070000)です!

Angularには非常に丁寧で網羅性のある、高品質なドキュメントがあります。

– [Angular](https://angular.io)

これは、[Angular開発チーム](https://github.com/orgs/angular/people)と有志の編集者たちによって管理されているドキュメントプロジェクトです。

ドキュメントは英語で書かれています

元記事を表示

Tech Mediaへの寄稿も!Promoting SGの今年の活動について

こんにちは!
本アドベントカレンダーの企画も行っているOpenChain Japan WGのPromotion SG(Subwork Group)のリーダーを務めている遠藤です。
本日[Open Source Summit Japanでパネルディスカッション](https://sched.co/1EMhy)を行う予定なので、
クロアチア戦は横浜で観戦します!
ちょうど、[前回のW杯のときもOpen Source Summit Japan](https://monoist.itmedia.co.jp/mn/articles/1806/22/news046_2.html)が開催されてましたね。

# Promotion SGの復習
[以前の記事](https://qiita.com/MasatoENDO/items/324354bc9d86520917ba)でも紹介しましたように、
Promotion SGは、オープンソースコンプライアンスの重要性をPromoteするために、
オープンソースそのものやコミュニティ活動の重要性についてのPromoteも行っています。
これまで様々なイベントに

元記事を表示

“OSSライセンスに潜む落とし穴”とは失敬な!コピーレフト【著作権法】

アドベントカレンダーの1人フルマラソンに挑戦中です?
翌日はこちら:[ソフトウェアの不正利用は社内窓口に通報できる?Docker Desktop有料化【公益通報者保護法】](https://qiita.com/okinocchi/items/8fcaf67703f4edf43afa)
前日はこちら:[ミームLGTM画像や推しキャラアイコンの社内利用は?フェアユースって?【著作権法】](https://qiita.com/okinocchi/items/83abe096192f7bbac2eb)

# OSSライセンスとコピーレフトと著作権
「コピーレフト」は偉大な発明です。
名前も秀逸。著作権を表す Copy**right**(右) ではなく Copy**left**(左)とは、洒落が利いていますね。
コピーレフトの発明がなければ、現代のOSSも生まれませんでした。しかし、多くのエンジニアがコピーレフトに関して最初に耳にする言葉は、「コピーレフトやGPLは危険なので利用は避けよ」ではないでしょうか? OSSの生みの親とも言える(?)コピーレフトは、なぜ逆に落とし穴扱いされてしまうのでし

元記事を表示

【OSS】小さなコントリビュートで得た気づき

Ruby開発の[Advent calendar](https://qiita.com/advent-calendar/2022/ruby-dev)の4日目です。本日はOSS参加での学びを書こうと思います。
数年経験を積んで開発はある程度できるけどOSSにはまだ参加したことない方に読んでもらえると嬉しいです。

# 自己紹介?‍♂️
経験5年程のエンジニアです。最近はRubyとReactを書いている事が多いです。
現在は福岡県に住んでいます。

# OSS参加のきっかけ
まず私がOSSをちゃんと認識したのは今在籍している会社に転職してきたタイミングです。
社内にRubyのコミッターが2名在籍されていてすごいなと思った記憶があります。
その後、社内の勉強会でOSS活動についての発表を聞いたりと意識する機会は何度かありました。

特に、RubyKaigiで登壇された方のエンジニアの話を聞いた時と、
10月に開催される[hacktoberfest](https://hacktoberfest.com/)のイベントを知った時は印象に残っています。

大きなきっかけは、11月から社内で**OSS

元記事を表示

逆引き!TAPではこんなことができるよ

こんにちわ!TUNA-JPの運営メンバーをしている @hirosat です。
本記事は、「[TUNA-JP Advent Calendar 2022](https://qiita.com/advent-calendar/2022/tuna-jp)」の3日目のエントリです。
(実は、本業が忙しくなってきて、執筆当日になってバタバタしながら書いてます。。ひぇぇ)

# TL;DR (この記事の要約)
– VMware Tanzu Application Platform (以下、TAP) では、こんなことができるよ!を、ちょっとご紹介

# この記事の狙い

[Advent Calender 2日目](https://qiita.com/hirosat/items/7b1104110e339dfbacf4) では、TAPには色んなOSSが使われていることをご紹介させていただきました。
その後、恐らく次に思うことは、「で、結局それらを使ってどんなことができるんよ?」なのではないかと思います。VMwareからもいくつかTAPの記事がでていますが、「何か凄そう!」と思える記事はあるけど、具体的に

元記事を表示

オープンソースソフトウェア(OSS)へのIssueの書き方〜Elixirの例を題材に

この記事では,オープンソースソフトウェア(OSS)への貢献のしかたの1つとして,Issueの書き方を説明します.たとえばOSSに対して,バグを報告する,新機能を提案するというような時にIssueを書きます.特にOSSでバグを報告する場合について書いてみたいと思います.

# Issueとはどのようなものか

Issueを直訳すると「問題」というような意味になります.ソフトウェアにおけるIssueには,バグや新機能の提案などを含みます.

GitHubにはIssueを報告する機能があります.たとえばElixirには次のURLでアクセスできます.

https://github.com/elixir-lang/elixir/issues

OpenなIssueは,未解決の問題を表しています.ClosedなIssueは,解決済みの問題を表しています.

たいていのOSSでは,Issueは英語で書かれていると思います.臆してしまうかもしれませんが,現代ではGoogle翻訳やDeepLなどの機械翻訳が発達していますし,Issueを書く場合には後述するような「定型的な書き方」というものがありますの

元記事を表示

CentOSにOpenFOAM 10をインストール

この記事は流体解析のオープンソースソフトウェアであるOpenFOAMのバージョン10を,CentOS 7にインストールした際の手順を備忘録としてまとめたものです.

# OpenFOAMのダウンロード

OpenFOAMのバイナリパッケージ及びソースコードは以下のサイトから入手できます.

* [OpenFOAM – The Open Source CFD Toolbox](http://www.openfoam.com/)
* [The OpenFOAM Foundation](http://openfoam.org/)

1つめのサイトはESIグループによるもので,4桁のバージョン名(yymm)が付いたものが入手できます.一方,2つめのサイトはOpenFOAM Foundationによるものであり,今回インストールするバージョン10はこちらのサイトから入手できます.

# インストールの種類

OpenFOAM Foundationのサイトによれば,以下の方法でインストールできます.

* Windows 10: WSLを使ってUbuntuパッケージ上でインストール
* Mac O

元記事を表示

VMware Tanzu Application Platform のOSSを一挙ご紹介!

こんにちわ!TUNA-JPの運営メンバーをしている @hirosat です。
実は、去年も「[TUNA-JP Advent Calendar 2021](https://qiita.com/advent-calendar/2021/tuna-jp)」を行っており、
[1日目](https://qiita.com/hirosat/items/aa1fb8efd9d95251679a)、[12日目](https://qiita.com/hirosat/items/9d2ac85adda9a8eccc6e)、[24日目(カレンダー2)](https://qiita.com/hirosat/items/08e28895098361e0e270)、[25日目](https://qiita.com/hirosat/items/62b8ebeeca5ea02d1e80)、[25日目(カレンダー2)](https://qiita.com/hirosat/items/c6e330212f01f766cc42) を担当させていただきました!

本記事は、「[TUNA-JP Advent Calendar

元記事を表示

【Python】私のissueがきっかけでPEP585が改訂されたお話【型アノテーション】

## 前置き
私はPythonでCOMオブジェクトを操作するライブラリ[`comtypes`](https://github.com/enthought/comtypes)へのコントリビュートをしています。

その中で型アノテーションを各モジュールにつけていくことを計画しています。

`comtypes`はPythonバージョン互換性を持ったライブラリです。
`version==1.1.11`時点で`2.7`、`3.3`、`3.4`、`3.5`、`3.6`、`3.7`、`3.8`、`3.9`、`3.10`に対応しています。

これほどまで大量のバージョンをまたいでサポートしていると、「あるバージョンにあったモジュール/クラス/関数があるバージョンからなくなる、若しくは非推奨(deprecated)になる」「逆に追加されたりできるようになる」といったことがよく起こります。
そのため、`comtypes`には下記のような「ブリッジ」が書かれることがあります。
“`py
if sys.version_info >= (3, 0):
text_type = str
else:

元記事を表示

Flutterのから始めるOSSコードリーティングのススメ

# Flutterのコミットを1ヶ月読んで

この記事はiPresence合同会社 Advent Calendar 2022 の12/1の記事です。

## はじめに

1ヶ月ほど前(厳密には11/6)からGitHubの[Flutterリポジトリ](https://github.com/flutter/flutter) のmasterブランチに入るコミットを読んで[note](https://note.com/723ch)にまとめるという趣味をはじめました。
始めたきっかけは今までFlutterのコードリーディングはしていたのですが、
規模が大きく(FlutterのWidgetの実装,エンジンの実装、コマンドツールの実装etc etc)読み続けるのがしんどい、間があくとそこまで読んできた全体像がぼやけてしまう
などモチベーションの維持が出来なくなってきたため、Ruby on Railsのコミットを毎日読まれている[なるようになるブログ](https://y-yagi.hatenablog.com/)を参考に
全体のコードを読むことをやめその日に変更された内容だけ読むようにし

元記事を表示

GoでデータフレームパッケージのOSSを作ってみた話

## はじめに
Goのデータフレームパッケージを作り、OSSとして公開しました。この記事では、このOSSをつくるまでの経緯と、今回作った[Goban](https://github.com/hrbrain/goban)の基本的な仕組みの解説をしていきます。

### こんな人に読んでほしい
– OSSを作ってみたいが、何をしたらいいのかわからない
– Goを使ったデータフレームパッケージを探している
– Gobanにコントリビュートをしてみたい

## データフレームとはなにか
そもそも、データフレームについて聞いたことのない方も多いと思います。データフレームについては、以下の説明がわかりやすいです。

> データフレームとは、スプレッドシートのような、行と列からなる二次元のデータ構造です。データフレームは、柔軟かつ直感的にデータを格納し操作できるため、現代のデータ分析において最も一般的なデータ構造です。

引用元:[DataFrames – Databricks](https://www.databricks.com/glossary/what-are-dataframes#:~:t

元記事を表示

はじめてのOSSコントリビュート

# はじめに

なんとなくOSSに貢献は難しい、英語のやり取りだからハードルが高そう、私にはできないと思っていましたが、意外とやってみたらプルリクが受理されてコントリビュートできましたので、その時やったことをまとめたいと思います。
OSSやってみたいけどなんかハードルがあるという方の参考になればと思います。

# やったこと

## ①[GitHubのOSSコントリビュートのガイドライン](https://opensource.guide/ja/how-to-contribute/)を読む
やり方がよくわからなかったので、とりあえずGitHub公式のガイドラインを読みました。
ソースコードの修正がOSSコントリビュートだと思っていましたが、ガイドラインによると以下などもコントリビュートであると知りました。
– プロジェクトのドキュメント修正
– プロジェクトのドキュメントの翻訳
– 重複したIssueの紐づけ
– 古いIssueのクローズ
– Issueの質問に回答
– Stack Overflowでプロジェクトの質問に回答

また、経験が浅いならドキュメントの修正がおすすめとも書いて

元記事を表示

【MapLibre】PLATEAUデータを表示する

## はじめに
この記事は#30DayMapChallenge2022 28日目の記事です。
テーマは3Dです。
MapLibre GL JSを使って東京23区のPLATEAUデータを表示してみます。

![image](https://raw.githubusercontent.com/tjukanovt/30DayMapChallenge/main/images/flyers/30dmc-2022.png)

https://30daymapchallenge.com/

## PLATEAUとは
国土交通省が主導する3D都市モデル整備・活用・オープンデータ化プロジェクトです。
3D都市モデルには、家屋やビルなどの「建築物」、都市計画区域などの「都市計画決定情報」、土地の用途を示した「土地利用」、都市のインフラである「道路」や「橋梁」など、都市に関するデータが格納されています。

## PLATEAUデータについて
### データ形式
PLATEAUデータには、様々なデータ形式があります。
例えば、CityGML、3D Tiles、MVT、ファイルジオデータベース、OBJ、FBXな

元記事を表示

【QGIS】PLATEAUデータを表示する

## はじめに
この記事は#30DayMapChallenge2022 27日目の記事です。
テーマはMusicです。
QGISを使って[音楽のまち](https://www.ongakunomachi.jp/)、川崎市のPLATEAUデータを表示してみます。

![image](https://raw.githubusercontent.com/tjukanovt/30DayMapChallenge/main/images/flyers/30dmc-2022.png)

https://30daymapchallenge.com/

## QGISとは
フリーでオープンソースの地理情報システム
ほとんどのUnixプラットフォーム、Windows、macOS上で動作する

## PLATEAUとは
国土交通省が主導する3D都市モデル整備・活用・オープンデータ化プロジェクトです。
3D都市モデルには、家屋やビルなどの「建築物」、都市計画区域などの「都市計画決定情報」、土地の用途を示した「土地利用」、都市のインフラである「道路」や「橋梁」など、都市に関するデータが格納されています。

##

元記事を表示

【QGIS】シェープファイルを表示する

## はじめに
この記事は#30DayMapChallenge2022 26日目の記事です。
テーマはIsland(s)です。
QGISを使って小笠原諸島のポリゴンデータを表示してみます。

![image](https://raw.githubusercontent.com/tjukanovt/30DayMapChallenge/main/images/flyers/30dmc-2022.png)

https://30daymapchallenge.com/

## QGISとは
フリーでオープンソースの地理情報システム
ほとんどのUnixプラットフォーム、Windows、macOS上で動作する

## シェープファイルとは
Esriが提唱したGISデータフォーマット
地物の位置や形状、属性情報を持つベクターデータを格納できる
複数のファイルから構成されており、必須のファイルはshp, shx, dbfの3つ

## 事前準備

既にインストール済みのQGIS(バージョン3.22.3)を使います。
QGISを開きます。
![image.png](https://qiita-ima

元記事を表示

OTHERカテゴリの最新記事