オープンソース調べOSS 2020年01月23日

オープンソース調べOSS 2020年01月23日
目次

Mastodonをv3系に上げたらDB負荷が激増した話(と解消してコントリビュートした話)

こんにちは! フィフス・フロアのnotozekiです。今年は記事書いてくイヤーにしたいと目論んでいます:triumph:

先日、[ichiji.social](https://ichiji.social/)というMastodonサーバーをv2.7.3から一気にv.3.0.1までアップグレードしました。

このアップグレード直後、**DBサーバの負荷が異常に高まる**という現象が発生し、解決に苦戦したので、そのときの知見を共有したいと思います:elephant:

また、最後にも記載していますが、解決策を本家MastodonにPull Requestとして送っています。~~記事執筆時点ではまだマージされていませんが、~~もし同様の問題に悩んでいる方がいればこちらをお試しください(2020/01/22 追記: マージされました!):

[Fix slow query of federated timeline by notozeki · Pull Request #12886 · tootsuite/mastodon](https://github.com/tootsuite/masto

元記事を表示

マストドン構築2日目 on AWS

# 経緯

前回書いた [マストドン構築1日目 on AWS](https://qiita.com/suwa3/items/d5d7da30825339704da3) の続きです。

半年ほど前に AWS & Docker ド素人の状態から
なんとかインスタンスをたてて運用していました。

EC2の上にDockerで本番運用していましたが、だんだん辛くなってきたのでDockerから降ろすことにしました。
その作業ログです。

# 環境 / ツール
macOS Mojavi 10.14.6
AWS

# 参考にしたもの
マストドンGitHub
https://github.com/tootsuite/mastodon
公式ドキュメント
https://docs.joinmastodon.org/admin/install/

# サーバー内での作業

まずサーバーにsshログインします。

“`
$ ssh ubuntu@3.112.***.*** -i ~/.ssh/hoge.pem
“`

作業に入る前に、とりあえずrootユーザーになります。

“`
sudo su –

元記事を表示

VTuberのホームページをGitHubのプルリクだけで更新していったらどうなるのか?企画に参戦してみた

# おめシスはいいぞ
VTuberのホームページをGitHubのプルリクだけで更新していったらどうなるのか?という企画に参戦してみた。技術的にも非常に面白い試みだったので書き残しておく。

## 経緯
夜中にTwitterのタイムラインを眺めていたら興味深い動画を見かけた。
[【検証】1ヶ月間、プルリクだけでホームページ作ったらどうなるの?](https://youtu.be/5h1NoX3my0s)

どうやら「[おめがシスターズ(通称:おめシス)](https://www.youtube.com/channel/UCNjTjd2-PMC8Oo_-dCEss7A)」というVTuberが、自分たちのホームページをGitHubのプルリクだけで更新していったらどうなるのか?という検証を行なっていた模様。

OSSライセンス-資料ストック-

#OSSライセンスについての資料まとめ。

[各種ライセンス内容](https://choosealicense.com/appendix/)

[OSS ライセンスの仕組みとプロジェクトへの適用方法](https://frasco.io/how-open-source-licenses-work-and-how-to-add-them-to-your-projects-9400f1b21cb5)

元記事を表示

Party Parrot OSS活動への参加方法

Party Parrotの起源に関して書いた[前記事](https://qiita.com/ayatothos/items/0c3da3d48fe8ade705e6)が好評だったため、Party Parrotに更に興味が湧きました。
そこで思い立ったが吉日。自分でParty Parrotのgif画像を作って公開してみました。

Qiita記事にするために無理やりOSS活動への参加ってことにこじつけています。

# Party Parrotとは

slack等でよく見かける七色に光るオウムのgif画像です。
ファーストビューから目にうるさくなっちゃうのでここでの掲載は割愛します。

詳しくは[こちらの記事](https://qiita.com/ayatothos/items/0c3da3d48fe8ade705e6)をご参照ください。

Party Parrotのgif画像は[Cult of the Party Parrot](https://cultofthepartyparrot.com/)という公式?のファンサイトで取りまとめられており、[GitHubリポジトリ](https://

元記事を表示

F-Droidを使ってオープンソースのAndroidアプリをインストールしよう。

## F-Droidとは?

> F-DroidはAndroidに対応したソフトウェアリポジトリおよびアプリケーションストアである。Google Playと機能は類似するが、扱っているのはフリーかつオープンソースのソフトウェアのみである。

[Wikipediaより](https://ja.wikipedia.org/wiki/F-Droid)

## インストール方法

https://f-droid.org/

からインストール!!

## おすすめアプリ

オープンソースの広告ブロッカー

[DNS66](https://f-droid.org/en/packages/org.jak_linux.dns66/)

をインストールしてAndroid端末から広告を一掃しよう!!!

#まとめ

オープンソースのアプリで快適なインターネットライフを。

元記事を表示

Arthas Java 診断ツール

# Arthasとは何でしょう?
Arthas(読み方:アーサス)はAlibabaがオープンソースとして公開したJava診断ツールです。
開発環境、試験環境、本番環境で、JVMの状態をモニターしたり、障害が発生した時に、JVMを落とさず簡単に診断ができる。jconsole jmap jstackなどJDKツールより強力で、使いやすくできている。

#どういう問題を解決できるのか?
・このクラスはどのJarからロードされているか確認したい!なぜ例外が発生したか?
・私がコミットしたコードが実行されてなかった気がするけど。。。コミットし忘れ?もしかしてブランチを間違った?
・オンラインでデバッグできないので、ログを仕込んで再配備するしかない?
・本番のあるユーザのデータ処理に問題あったが、本番ではデバッグできないし、ローカルでは再現しない!どうしよう?
・今JVMってどういう状況なの?
・リアルタイムでJVMの状況を把握したい!
・FlameGraphを描画してボトルネックを見つけたい!
など様々なシーンで活用できると思います。

#ライセンス
Apache-2.0

#環境
JDK 6

元記事を表示

オープンソースのライセンスの選び方をガイドしてくれる、”choosealicense.com”というサイト

# TL; DR

* ソースコードを公開する時には、ライセンスを設定しよう
* GitHubが作った、[choosealicense](https://choosealicense.com/)というサイトを見るとライセンス選択の役に立つ
* 最終的には専門家にきちんと相談しよう

# GitHubのドキュメントとchoosealicense

GitHubのヘルプにある、以下のドキュメントを見ると、公開するリポジトリにはライセンスを付与しましょうという話が書かれてあります。

[Licensing a repository](https://help.github.com/en/github/creating-cloning-and-archiving-repositories/licensing-a-repository)

この中で登場するのが、以下のサイトです。

[choosealicense](https://choosealicense.com/)

![image.png](https://qiita-image-store.s3.ap-northeast-1.ama

元記事を表示

(番外編)Raspberry Piでcm精度のRTK-GPS~2019年のあゆみ

#はじめに
この記事は私が2019年に苦闘した記録ですが技術的に有用な情報はあまりないのであしからず。

#ここまでの歩み(2018年)
[最初の記事](https://qiita.com/m_take/items/06892a8e25aa577e8455)に書いたようにUblox-M8Pを手にし初めてRTKをしたのが2年前。4ヶ月ぐらいかけて直進ガイダンスを作り春の田植作業に使用。有用性を感じてQittaに投稿したのが6月。秋の農繁期を終えて11月に[FOSS4G](https://www.osgeo.jp/)という地図好きの集まりがあると知り東京までいって刺激を受けてくる。(この頃から[Twitter](https://twitter.com/mnlt18)始める)
 [ボタン一つでAB基準線を呼び出したり](https://qiita.com/m_take/items/69880c44204f77f510af)自分の使いたい機能を付けて満足しつつあるときに、
[AgOpenGPS](https://agopengps.jimdosite.com/) (以下AOG)というソフトをカ

元記事を表示

H2O試してみた

# はじめに

以前からオープンソースの機械学習プラットフォームであるH2Oが気になっていたので、試しに使ってみました。データを投入して機械学習モデルを構築するところまでを紹介したいと思います。

# 環境

環境は次の通りです。H2Oを使うときに`java`を使うのでjavaのバージョンも示しています。

“`shell
$sw_vers
ProductName: Mac OS X
ProductVersion: 10.13.6
BuildVersion: 17G9016

$java –version
java 10.0.2 2018-07-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.2+13)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.2+13, mixed mode)
“`

# インストール

1 . 下のURLにアクセスします。

Downloads Overview

2 . 「DOWNLOAD H2O」ボタンをクリック

元記事を表示

[更新予定] Open Source Compliance 関連

当初 12/24 記事として公開していた記事 「OpenChain Japan WG 第13回会合のご案内」 は、諸事情により「一般公開」ができなくなりました。Japan WG (JWG) の活動に関心のある方は [JWGのwiki](https://wiki.linuxfoundation.org/openchain/openchain-japanese-working-group) から “OpenChain Japan WG ML” への参加をご検討ください。第13回会合の案内なども共有予定です。

そのため、Open Source Compliance 関連で別内容の記事を準備中です。
ご迷惑をお掛けします。

# [番外編] Raspberry Pi +Docker で FOSSology を動かせるか… (2019/12/29追加)

手元で気軽に使える OSS監査ツール環境を作りたかったのと、Linux を少しでも触ろうかなと思いやってみた… というか、やっているところ。

元ネタは、SONYの小保田さんが、[Japan Technical Jamboree 7

元記事を表示

エンジニアとして実務で使えるスキルをオープンソース活動で身につける

こんにちは、@kentya6です。
普段は[LITALICO](https://litalico.co.jp/)という会社でエンジニアをやっています。実務では主にUnityを使用したアプリの開発を行っています。

本記事は[【Mentor Ver.】TechTrain Advent Calendar 2019](https://qiita.com/advent-calendar/2019/techtrain-mentor) 24日目の記事です。

## はじめに
私は、まだ学生時代に実務としてプログラミングをしたことがない時に、オープンソース活動に関わった経験が実務に活かされているなと感じることが多々あります。なので、今回は主に学生時代におこなったオープンソース活動の実例を挙げながら、どういったスキルが学べたかをまとめてみました。

## こんな人におすすめ
– 最近プログラミングの入門書やチュートリアルをやってみた方
– 学生などで、まだ実務としてプログラミングに関わったことがない方
– オープンソース活動は敷居が高いと感じ手を出せていない方
– ライブラリは使っているけど内部がどう

元記事を表示

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

## はじめに

「「「OSS貢献」」」がなにかとても偉大ですげぇことだと思っていた頃が自分にはありました。

筆者は新卒2年目のフリーランスWebエンジニアですが、ちょくちょくとJavaScript(TypeScript)のライブラリに軽微な修正PRを送るようになったのは、まだほんの最近のことです。

この記事では、筆者が執筆時点(2019/12)で実際に送っているPRを参考に、**OSS貢献未経験者向け**に流れをざっくり書きます。

*※なお筆者は主にWebの開発者なので、業界が違えば様々なやり方や慣習が異なることはあらかじめ断っておきます。*

### 本記事で取り上げるPR例

本記事では、Firebaseに最近追加された[Firebase Extensions](https://firebase.google.com/products/extensions)という拡張機能において、公式の拡張機能の一つである `Resize Images` というプラグインにバグを見つけたので、修正しました。

実際のPull Request:
https://github.com/fire

元記事を表示

OSSライセンスコンプライアンス啓発の重要性と Promotion SWGの活動について、25日間のまとめ

#はじめに
メリークリスマス!
[13日](https://qiita.com/MasatoENDO/items/bbd7d7fe96c6cdf75dc7)に続いて2度目の登場の遠藤です。
最終日の本日は、OpenChainのメインテーマである「OSSライセンスコンプライアンス」の啓発がなぜ大切であるのかというお話と、本アドベントカレンダーを企画している「Promotion SWG」の活動をご紹介します。
また、最後の方で25日間の振り返り的なことも行っています。

#OSSライセンスコンプライアンス啓発の重要性について
OSSライセンスコンプライアンスは伝統的な課題であり、新しい課題でもあります。
エンジニアの皆さまは実感していると思いますが、ソフトウエア開発におけるOSSの重要性は年々高まってきており、その適用範囲はIoTの進展により全産業に拡大しています。
ですので、これまでOSSを扱ってこなかった産業の方々がOSSを扱うようになり、業界内でライセンスコンプライアンスの重要性が十分に認知されていないため、十分なリソーセスが割かれていないケースがあります。

また、ソフトウエアの

元記事を表示

1870件以上のカーネルの不具合修正に貢献した再現用プログラムを自動生成するsyzkallerのテスト自動化技術

# はじめに
この記事は [Linux Advent Calendar 2019](https://qiita.com/advent-calendar/2019/linux) の 23 日目の記事です。

## 自己紹介
こんにちは。[OSSセキュリティ技術の会](https://secureoss-sig.connpass.com/) の [fujiihda](https://twitter.com/fujiihda) です。これまで Linux カーネルを含む OSS に関連する技術調査、技術講演、開発、サポート等を経験してきました。最近では、技術コミュニティを設立する側や運営側に関わらせていただく機会も増えてきました。

## 本記事で扱うテーマ
カーネルのテスト自動化技術として Google の Dmitry Vyukov さんが開発し OSS として公開した syzkaller (読み方:シスコーラー [^1] ) というファジングツールについて解説します。2019 年 12 月時点では、内部実装まで踏み込んで調査した日本語の記事は本記事が

Azure Pipelines を使っている有名な OSS まとめ

GitHub から Stars > 50000 のやつを持ってきました。やっぱり MS 系のやつが多めですね。

## Repository results

[microsoft/vscode: Visual Studio Code](https://github.com/microsoft/vscode)

最強の一角のエディター VS Code.

[facebook/create-react-app: Set up a modern web app by running one command.](https://github.com/facebook/create-react-app)

React のテンプレート。

[microsoft/TypeScript: TypeScript is a superset of JavaScript that compiles to clean JavaScript output.](https://github.com/microsoft/TypeScript)

TypeScript のソースコード。

[microsoft/te

OSS初心者がOSSにプルリクエストを送るまでに意識してやったこと

この記事は [くふうカンパニーのアドベントカレンダー](https://qiita.com/advent-calendar/2019/kufu) の22日目の記事です。

みなさんこんばんは。
突然ですが、OSSにコミットしたことはありますか?僕は先日初めてOSSに[プルリクエスト](https://github.com/rubocop-hq/rubocop-rake/pull/21)を送りました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/215444/5b6ce3f8-2a26-f589-a89a-ac0312fede98.png)
(最近githubのアカウントを整理したのでプルリク作成者がよく分からなくなってます…)

ただ、OSSに貢献するのって、やったことない人からすると「なんだかよく分からないし難しそう」「強強エンジニアがやること」のように思っている人も多いのではないでしょうか?僕自身も実際にプルリクを送ってみるまでは「本当に大丈夫かなぁ…迷惑じゃないかなぁ…」とか