オープンソース調べOSS 2021年11月01日

オープンソース調べOSS 2021年11月01日

VSCodeの複数行コメントアウトの機能改善

# VSCodeの複数行コメントアウトの機能改善

## はじめに
この文章は東大工学部電気電子工学科・電子情報工学科の3年後期実験の科目の1つである**大規模ソフトウェアを手探る**の成果報告記事です。実験の内容は「10日間の実験期間で大規模なOSSを選び何らかの機能実装を試みる」というもので、我々の班は普段からお世話になっているVisual Studio Codeに機能実装改善を行いました。以下にその一部始終を記します。

## Visual Studio Codeとは
Visual Studio Code(通称:VSCode)は2015年に公開されたMicrosoftが開発している統合開発環境です。軽量ながら多機能でカスタマイズ性も高く、今最も人気なIDEの一つと言っても過言ではないでしょう。

最近(2021年10月下旬)には、VSCodeのWebブラウザ版も公開されました!

ソースコードはGitHub上で公開されており、[こちら](https://github.com/microsoft/vscode)からコードを確認できます。

## VSCodeのビルド方法
VSCod

元記事を表示

VSCodeにswap機能を追加しようとした話

# はじめに
こちらは、東京大学工学部電気電子工学科・電子情報工学科の後期実験のうちの一つ「大規模ソフトウェアを手探る」の成果報告記事です。世の中にはOSS(オープンソースソフトウェア)と呼ばれる、ソースコードが一般に無償公開されているソフトウェアが多数存在します。その中から一つ選び、全容を把握出来るわけがない程大きなソフトウェアをいかに理解し、いかに変更を加えられるかという趣旨の実験です。

# VSCodeとは
VSCode(Visual Studio Code)とはMicrosoftが開発しているソースコードエディタで、軽量かつ多機能という特徴を持ち、現在最も多くの人に使われている開発環境の内の一つです。

# 課題設定
GitHubのissueを見ながら改善案を考えていきました。issueでは
“`good first issue
“`とラベルのついたものが最初に取り組むには良いissueということなのですが、この中にめぼしいものがなかったので、
“`add, button
“`等で検索していきました。そうすると[こんなissue](https://github.com

元記事を表示

初めてのOSSへの貢献を果たした話【homebrew-cask】

3年ほど前、初めてLinuxに触れてからOSSという文化にとても感銘をうけ、常々貢献したいと思っていた。
と言いつつ結局特に行動していないワナビだったのだが、この度晴れてプルリクを作成し、マージされるに至ったので共有

### やったこと

最近M1 MacBook Airを買ったので、Macで定番のパッケージマネージャ[^packagemanager]である[homebrew(cask)](https://brew.sh/)[^homebrew]を使って[GnuCash](https://gnucash.org/index.phtml?lang=ja_JP)[^gnucash]をインストールしようとしたらバージョンが古くエラーになったので更新した。

## 状況の確認

### 問題の発生

Homebrewでgnucashをインストールしようとしたら以下のエラーが発生した。

“`
$ brew install –cask gnucash
==> Downloading https://github.com/Gnucash/gnucash/releases/download/4

元記事を表示

言語・環境非依存なOSS界隈の規格一覧

# はじめに

言語や環境に依存しないOSS界隈の規格(デファクトスタンダードを含む)のリストです。

ちょいちょい忘れがちなので、備忘録として纏めておきます。

# 構成管理

構成管理の規格です。

## バージョン管理

構成管理のうち、バージョン管理に関する規格です。
ここで言うバージョン管理とは、git, svnなどのバージョン管理ツールでサポートされる範囲の構成管理のことです。

1. 変更履歴
1. [Keep a Changelog](https://keepachangelog.com/ja/1.0.0/)
1. コミットメッセージ
1. [Conventional Commits](https://www.conventionalcommits.org/ja/v1.0.0/)
1. バージョン番号
1. [セマンティック バージョニング 2.0.0 | Semantic Versioning](https://semver.org/lang/ja/)

## コンポーネント管理

構成管理のうち、コンポーネント管理に関する規格です。
ここで言

元記事を表示

エンジニアはオープンネスを好むのか?

「[OPENNESS](https://r25.jp/article/755626890450596284)」オープンネス、とは開放性とか開示性のこと、で、結論から書くと「エンジニアだからオープンネスを選択するとは別に限らない」と思っている。単にそれは経営方針の違い。オープンかそうでないかと言えば例えばSlack論を以下参考。

– [Slack仕草 – Qiita](https://qiita.com/e99h2121/items/6a6f06cfaf4a74fca0f3)
– [Slack社はSlackをどう使っているのか – Slack利用ガイドラインの話 – Qiita](https://qiita.com/e99h2121/items/71f607a0b46de5013730)

Slack社のSlackガイドラインへのコメントとしては、じつは以下らしい。
> 「Slackの使い方は1000社あれば1000通り。プロジェクトをまわす、会議をする、といった基本的な使い方はもちろん、Twitter的な使い方もできる」。

オープンネス と 生産性 が単純に、完全に比例するかはまた

元記事を表示

Androidのライセンス表示について(license-tools-plugin)

#はじめに
仕事でAndroidアプリにオープンソースライセンスを表示させる必要があり、初めてクックパッドさんの`license-tools-plugin`を使用しました。
今後も使用する機会があるかと思い、導入方法をまとめました。

#license-tools-pluginとは
[クックパッドさんが公開](https://github.com/cookpad/LicenseToolsPlugin)しているプラグインで、以下の機能が提供されています。
– yamlを使ったオープンソースライセンスの管理
– ライセンス追記漏れのチェック
– ライセンス一覧のhtmlの作成

#開発環境
PC:MacBook Pro
OS:macOS BigSur
Android Studio:Arctic Fox 2020.3.1

#license-tools-pluginの導入方法
※今回はAndroid開発でよく使われるライブラリをいくつか追加し、`出力したhtmlファイルをwebViewに表示させる方法`について記載いたします。

##1.プラグインを追加
build.gradle(pr

元記事を表示

OSSについて

# はじめに
本記事では、`OSS`について記述します。

# OSSとは
オープンソースソフトウェア(Open Source Software)の略。
直訳通り、`ソースコードを公開しているソフトウェア`のことです。
[OSS(オープンソースソフトウェア)とは?利用時のメリットと注意点](https://hnavi.co.jp/knowledge/blog/oss/)

> OSSは無償のソフトウェアですが、利用条件や規約がないというわけではありません。`OSSの認定を行う非営利団体`「The Open Source Initiative(OSI)」が、`OSSのライセンスを管理`しています。ソフトウェアがOSSであるかどうかは、ライセンス(使用条件)が「オープンソースの定義(The Open Source Definition)」に合致しているかどうかで決まります。OSIによってライセンスが承認されると、そのソフトウェアはオープンソースであると公式に認められ、「OSI認定マーク」が付与されます。

### OS
スマホやパソコンを使っていく上で基本となるソフトウェア
(紛らわしいの

元記事を表示

PythonとC++が出来る人はRPAのOSSに貢献チャンスあるよ

# プロローグ

@umireonさんの[貢献チャンスの探し方](https://qiita.com/umireon/items/cbf27deea6ff96d79c1d)を見てふとヒラメキ。

「そういえば、PythonとC++が出来る人にもチャンスあったな。」

と思ったので、紹介します。

# チャンスって?

「Pythonの自動化ライブラリって、C++系のポインタとかの知識が無いと書けなくて、実装が遅れてるんだよね」というチャンスです。

RPAが次第に当たり前のものとなりつつある現代、「[退屈なことはPythonにやらせよう](https://www.amazon.co.jp/dp/4873119278/)」なんてタイトルの本を読んで、業務を自動化しようとしたエンジニアは多いことでしょう。しかし、OSSではまだまだ発展途上の領域であり、「全部入り」みたいな覇権を握るOSSは無い感じです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134703/eb2e97b6-b130

元記事を表示

PHPの業務経験6ヶ月で初めてOSSにContributeした話

この記事は Zenn に移行しました。
https://zenn.dev/y640/articles/qiita-20210909-66cd4f362d3e2106c628

元記事を表示

Apache PulsarにおけるBacklogの概念とその挙動

## はじめに

[Apache Pulsar](https://pulsar.apache.org/)におけるBacklogの概念とその挙動、および関連する機能について解説します。具体的にどのような設定があるか、設定時に注意すべき点などについても触れています。読者が「Backlogにまつわる挙動と設定を理解し、ユースケースに合わせた設定を行い、ストレージを使い果たすなどの問題を回避できるようになること」がこの記事の目的です。

注1. この記事ではApache Pulsarの概念及び基本的な用語(Topic, Producer, Consumer, Namespaceなど)の説明は省略します。Apache Pulsarの概要について知りたい方は以下の記事などが参考になると思います:

* [メッセージングPF「Apache Pulsar」の使い方(入門編)](https://qiita.com/equanz/items/47aaa70da4ebe8dd3e67)
* [メッセージングPF「Apache Pulsar」の使い方(クライアント編)](https://qiita.com/s

元記事を表示

COCOAにコントリビューターとして貢献しよう!~実践編~

**この記事の内容は、政府IT室CIO補佐官からの了承を得て投稿しております。**

前回の内容は、GitHubでの貢献方法でしたが、今回は仮想デバイス上にてCOCOAをデプロイする方法について書きます。(Android中心となります)

コードを書くに当たっては、Xamarinの知識があることが望ましいです。

## 環境
Windows 10 Enterprise 21H1
(Home・PROでも下記の方法で実行できます)
Visual Studio Community 2019 v16.11.1
Build Tools for Visual Studio 2019 v16.11.1
Android SDK 29
USB デバッグで利用した端末→Galaxy S10
(不足があれば追記します)

## Visual Studio 関連のインストール
まずは、Xamarin等を利用できるようにするためにBuild Toolsをインストールします。
[ここ](https://visualstudio.microsoft.com/ja/downloads/)から下の方にある[Visua

元記事を表示

JavaScript: isEven

isEven というGitHubトレンドに突如現れたライブラリ。

## プロジェクト

https://github.com/samuelmarina/is-even

> This is a 100% serious project,

そのプロジェクト。

中身がこれ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/93824/958e91cc-cff0-b699-f034-c96fe0466c3f.png)

!?!?!

となる

## 作者

## マジレス

“`js
isEven = (n)=>{
if (n % 2 == 1)
return false;
return true;
}
“`

しかし容赦はないコメント

https://github.com/samuelmarina/is-even/

元記事を表示

jQuery: レスポンシブなWebサイトの構築

Alex, [Alibaba Cloud Community Blog](https://www.alibabacloud.com/blog?spm=a2c65.11461447.0.0.6d025eab6MdSwv) 著者

jQueryは、軽量でより少ない記述でより多くのことができ、JavaScriptライブラリと呼ばれ、HTMLプログラムの開発を容易にします。jQueryの主な目的は、Webサイトの開発にJavaScriptを使用することを容易にすることです。jQueryは、反復的な作業を排除し、1行のコードで呼び出されるメソッドを通じてJavaScriptの問題に取り組みます。ブラウザ技術の高度化やクライアントロジックの要求により、JavaScriptやHTMLを扱うことは非常に困難になっています。しかし、代表的なJSライブラリの1つであるjQueryは、機能の標準化とその実装を容易にします。

jQueryを使用する利点の1つは、ライブラリの習得や作業にそれほど苦労することなく、生産性が大幅に向上することです。jQueryを使うことで、UIの要求やフロントエンドの論理的な問題

元記事を表示

OpenSpielで始める強化学習その① ~OpenAI Gymとの比較~

# 初めに
## OpenSpielとは
https://github.com/deepmind/open_spiel

DEEPMINDが作成した研究者向けの強化学習フレームワークのOSSです。マルチエージェントRLの研究の促進や研究の再現性の向上を目的としています。
主にPythonとC++で書かれていますが、GoやSwift、Juliaもサポートされています。
深層強化学習はTensorFlow1、2、JAXとPytorchに対応しています。

## 想定される読者
自分のように研究者ではないが強化学習について勉強してみたいけど何使えばいいんだっけという人向けに書いています。

## 環境
“`bash
$ sw_vers
ProductName: macOS
ProductVersion: 11.4
BuildVersion: 20F71

$ python3 -V
Python 3.9.5
“`

## インストール方法
“`
pip install open_spiel
“`
でインストールされます。ビルドするため8分程度かかるかと思います。
環境によって

元記事を表示

OpenBSD + xfce で日本語環境を整理(したかった)

#目次
[1. はじめに](#1-はじめに)
[2. xfce_GUIでシャットダウンできない?](#2-xfce_GUIでシャットダウンできない?)
[3. 追加のソフトウェアの設定](#3-追加のソフトウェアの設定)
[4. おわりに](#4-おわりに)

#1. はじめに
前回の記事で、OpenBSDの日本語デスクトップ環境を導入したわけなのですが、何かと普段使いするには物足りないので設定を追加していきます。

#2. xfce_GUIでシャットダウンできない?
デスクトップ画面の右上のところをクリックすると、シャットダウンなどのドロップダウンメニューが出てくる… のですが、なぜか

* ユーザーの切り替え (S)
* サスペンド (P)
* シャットダウン (D)

が暗くなっていてクリックできないんですよね…
![xfce_dropdown.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1874028/293f39c7-26ce-8167-d97a-69e1ad1d8963.jpeg)

元記事を表示

OpenBSD6.9を実機にインストール&日本語デスクトップ環境を導入する!

#目次
[1. はじめに(雑談)](#1-はじめに(雑談))
[2. 環境](#2-環境)
[3. インストールメディア作成](#3-インストールメディア作成)
[4. インストール](#4-インストール)
[5. デスクトップ環境](#5-デスクトップ環境)
[6. doasの設定](#6-doasの設定)

#1. はじめに(雑談)
私はPC初心者なのですが、今回の目標はタイトルの通りです (固い決意)。以前、一度サブデスクトップにOpenBSDを導入したのですが、Mateを入れたところ不安定すぎて挫折して、「もう不安定なのやだ!」となり Pop! OSを入れました (極端)。しかし幸運なことにOpenBSDのアップデートが去る5月にきていたようですし、丁度中古ノートパソコンを仕入れたので今度こそOpenBSDを導入したいと思います。

この記事は長ったらしい、と思ったそこのアナタ!
公式ドキュメントをどうぞ。

OpenBSD – Installation Guide

元記事を表示

初めてのOSSコントリビュートにおすすめのサイト

OSSにコントリビュートしたい気持ちはあれど、はじめは何から始めたらいいかわからないと思います。

Githubでは、初めてコントリビュートする際に着手しやすいissue用に `good first issues` というラベルが用意されています。
それらのissueをまとめているサイトがいくつかありましたので、自分へのメモとしての意味も含めて以下に記載します。

## 参考サイト一覧
#### :star: おすすめ1
個人的にはデザインが一番好み。プロジェクトや選択可能言語も豊富。

https://good-first-issues.page

#### :star: おすすめ2
選択可能言語は1番目のサイトよりも多くはないが、基本的なものはそろっており、デザインも見やすい。

https://goodfirstissue.dev/

#### :star: おすすめ3
こちらも選択可能な言語は1番目のサイトほど多くはないが、程よくまとめられている。

https://goofi.vercel.app/

#### :star: おすすめ4
こちらは `help wanted`

元記事を表示

OSSライセンスを理解する〜OSSを安全に利用するための基礎〜

# オープンソースソフトウェアを安全に利用するための基礎

某ネットワーク機器販売代理店のGPL炎上事件が旬な話題だが、改めてOSSを活用する上でオープンソースソフトウェアライセンスの基礎についてまとめる

## ソフトウェアの配布形式

ソフトウェアの配布形式には **オープンソース** と呼ばれる形式と **プロプライエタリ** と呼ばれる形式がある

### オープンソース・ソフトウェアとは

オープンソースソフトウェア (以下OSS(Open Source Software))

利用者の目的を問わず、ソースコードの使用・調査・再利用・修正・拡張・再配布が可能なソフトウェアの総称
**著作物に対する権利を放棄したわけではない** ←ここ大事

代表的なソフトウェアに GNU/Linux や MariaDB, PostgreSQL などがある

### プロプライエタリ・ソフトウェアとは

プロプライエタリ・ソフトウェア = 私有ソフトウェア

ソフトウェアの入手・使用・改変・複製などに関する権利をソフトウェアの配布者が所有し、利用者の権利を制限的にする
バイナリで配布され

元記事を表示

機械学習の実験管理をトレンドサーチしてみた

# 概要
実験管理ツールがOSSとして複数あるものの、どれが流行っているのか&学習コストに見合うだけ使えるのかの知りたく調査しました。今回はMlflow,Kubeflow,Kedro,Metaflow,ClearMLをGoogleトレンドで調査。結果、Kubeflow,Mlflowがよく検索されているようです。

# 調査
Googleトレンドで12ヶ月,5年,おまけで日本での12ヶ月の3つの結果を載せます。画像は執筆時点で取得したものです。

線の色の対応は次の図を参照して下さい。

![スクリーンショット 2021-07-19 14.50.59.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707407/20279170-a022-216a-9c3c-622425037b8b.png)


![スクリーンショット 2021-07-19 14.41.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1707

元記事を表示

タイポフィックス!Rubyのオープンソースプロジェクトにお手軽に貢献する方法を考える

### タイポフィックスでいいからOSSに貢献したい・・・

先日Go言語で有名なmattnさんの

というツイートを見て、なるほどなーと思ったので記事を書くことにした。

とにかくオープンソースになにか貢献したいと考えている場合は、タイポフィックスのプルリクエストは簡単でとてもいい。しかも、多くの場合タイポフィックスのプルリクエストを嫌がる人はあんまりいない。プロジェクトのオーナーから見ると、タイポフィックスのプルリクエストはさくっとレビューして `Thanks!` とコメントしてマージするだけで自分のプロジェクトのコントリビュータを1人増やせるので、基本的には喜ばれることが多いと思う。

この記事では、いわゆるスペルミスのようなタイポではなくて、打ち損じによってコードの挙動が少しおかしくなっているような、広義でのタイポを発見してプルリクエストを作る方法を考える。

## Rubocopで明らかに怪しそうなコードを探す

お手軽にプルリクエストを作成することを考えた時に、

元記事を表示

OTHERカテゴリの最新記事