- 1. Google Code-in 2019に参加した感想
- 2. OSSのFirefoxにコントリビュートしてみた話
- 3. 【SQLite】 新機能(3.31.0) Generated Column (生成列)を使ってみました!
- 4. マストドン構築3日目 on AWS
- 5. 簡単に投票を共有できるツールをOSSで公開したよ
- 6. 【OSS貢献記録】emoji-martをReact 17に対応
- 7. Mastodonをv3系に上げたらDB負荷が激増した話(と解消してコントリビュートした話)
- 8. マストドン構築2日目 on AWS
- 9. VTuberのホームページをGitHubのプルリクだけで更新していったらどうなるのか?企画に参戦してみた
- 10. マストドン構築1日目 on AWS
- 11. kubernetesのダッシュボードv2.0.0をデプロイしてみる
- 12. 【実践】SolidusでRails製ECサイトを作ってみる
- 13. OSSライセンス-資料ストック-
- 14. Party Parrot OSS活動への参加方法
- 15. F-Droidを使ってオープンソースのAndroidアプリをインストールしよう。
- 16. Arthas Java 診断ツール
- 17. オープンソースのライセンスの選び方をガイドしてくれる、”choosealicense.com”というサイト
- 18. (番外編)Raspberry Piでcm精度のRTK-GPS~2019年のあゆみ
- 19. H2O試してみた
- 20. [更新予定] Open Source Compliance 関連
Google Code-in 2019に参加した感想
僕は今年Google Code-in 2019に参加していました。
Googleからデジタル証明書が届いたので、これを記念に記事を書きたいと思います。## Google Code-inとは
※以下Google Code-inはGCIと略します。
### 概要
公式Webサイトから引用します。
> Pre-university students ages 13 to 17 are invited to take part in Google Code-in: Our global, online contest introducing teenagers to the world of open source development. With a wide variety of bite-sized tasks, it’s easy for beginners to jump in and get started no matter what skills they have.
要約すると中高生をOSSの世界に引き摺り込むためのイベントです。
Google Summer
OSSのFirefoxにコントリビュートしてみた話
初めてOSSにコントリビュートしました。Firefoxに挑戦してみました。
そのことについて書きたいと思います。
## きっかけ
[Google Code-inを通してOSSに興味を持つ](https://qiita.com/u7693/items/73bd8854d19ad344566b)が、やっぱり高い壁を感じていた。
そんな時にYouTubeおすすめ欄に有名なJust Do Itおじさんが出現。
「いまやらねばいつできる」ということでやってみました。## やってみた
時系列で書きます。
### ドキュメントの確認とソースコードのダウンロード
[MDN Developer guide](https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide)を軽く読み、ソースコードをダウンロードします。
MozillaのプロジェクトはMercurialで管理されています。[開発はGitでもできる](https://developer.mozilla.org/en-US/docs/Mozilla/Develop
【SQLite】 新機能(3.31.0) Generated Column (生成列)を使ってみました!
MySQL, PostgreSQL で使用できる Generated Column (生成列) が SQLiteでも バージョン 3.31.0 (2020/01/22 リリース)からサポートされましたので使ってみましたのでレポートします。
Generated Column を使うと、(同じテーブル内の) 他の列の値を利用した計算結果を、特定の列に格納することが可能になります。Oracleの仮想列に近い機能だと思います。
今回は前半がリリース前のドキュメントのまとめ(ほとんど日本語訳!?)と、実際に使ってみての検証を書いてみました。# Generated Column とは
Generated Column は同じレコードの他の列から計算結果を格納した列です。Generated Column は読み込み可能ですが、直接、値を書き込むことはできません。Generated Column の値を変更する方法は、Generated Column の計算で使用される列の値を変更するしかありません。
## 構文
構文的には、Generated Column は、”GENERATED ALW
マストドン構築3日目 on AWS
# 経緯
前回書いた [マストドン構築2日目 on AWS](https://qiita.com/suwa3/items/eb4fe8303b1b720737fa) の続きです。
半年ほど前に 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 –
“
簡単に投票を共有できるツールをOSSで公開したよ
# 何に使うためにつくったの?
チームのメンバーでブログのテーマを決めるため(結局間に合わなかったけど)# URLは?
https://syukei-san.xyz/# 使い方は?
1. 投票したい/多数決を取りたいデータを1行ごとに入力
1. 利用規約を読んで同意する
1. 出来上がったフォームをメンバーにシェアする
1. メンバーがフォームで投票する(一人が複数投票することはできません!)# どの言語で作ったの?
nodejs# github URLは?
https://github.com/newsdict/syukei-san.xyz/# なんでテスト書いてないの?
急いで作ったのでテスト書いてないです。。。
もっと使う用途が出てきたら書いていこうと思います。仕様を考えながら作る場合、テストコードどうしてるんだろう?
# いつ公開しはじめたの?
[7 Jul 2019](https://github.com/newsdict/syukei-san.xyz/commit/b4c76660a74046d9756fcbf1ca126078074224eb)
【OSS貢献記録】emoji-martをReact 17に対応
前回のOSS貢献記録は[こちら](https://qiita.com/h6akh/items/0817a8ded6f1aeb09917)。
# はじめに
[emoji-mart](https://github.com/missive/emoji-mart)は、下の画像のように絵文字選択フォームを実現するReactコンポーネントです。
このコンポーネントを実際に利用していたら、次のような警告文がJavaScriptのコンソールに表示されました。
“`
Warning: componentWillReceiveProps has been renamed, and is not recommended for use. See https://f
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のプルリクだけで更新していったらどうなるのか?という検証を行なっていた模様。
おめシスのホームページをGithubのプルリクで更新していったらどうなるのか、こっそり検証中です。そのうち動画にします!マストドン構築1日目 on AWS
# 経緯
半年ほど前に AWS & Docker ド素人の状態から
なんとかインスタンスをたてて運用していました。EC2の上にDockerで本番運用していましたが、だんだん辛くなってきたのでDockerから降ろすことにしました。
その作業ログです。# 環境 / ツール
macOS Mojavi 10.14.6
AWS# 参考にしたもの
マストドンGitHub
https://github.com/tootsuite/mastodon
公式ドキュメント
https://docs.joinmastodon.org/admin/prerequisites/# AWSでEC2インスタンスの作成
環境を合わせるため、以前の構築時に使用したAMIを利用します。
なぜeks用Ubuntuを利用したのかは謎です。半年前の自分に問い詰めたいです。
Ubuntuであれば大丈夫だと思います。
kubernetesのダッシュボードv2.0.0をデプロイしてみる# 概要
Docker for Mac で Kubernetes を試すため、サンプルとして[kubernetes/dashboard](https://github.com/kubernetes/dashboard) (**※**)のデプロイをしてみました。
**※dashboard**: k8sで管理しているリソースの状況をグラフや表で確認したり、podの管理やログの確認などをGUI操作で利用したりすることができます。
# 必要なものを確認
– Docker for Mac
– Kubernetesのインストールとセットアップをすることができます。
– kubectl
– API経由でKubenetesを操作するためのクライアントツールです。“`shell
$ docker -v
Docker version 19.03.4, build 9013bf5$ kubectl version –short –client
Client Version: v1.14.7
“`# Docker for DesktopのKubernetesを
【実践】SolidusでRails製ECサイトを作ってみる
SolidusはSpreeの後継のRails製オープンソースECサイトのプロジェクト。
OSSを使わないとしても、ECに最低限の機能が入ってるので、自分たちで機能の洗い出しするより、これを参考にした方が早い。# 準備
以下をインストールしていない人はインストール
Rubyはバージョンが低いとfiniteのエラーが出ます。
テスト環境ではv2.5.1を使用しました。“`
brew install sqlite3 imagemagick
“`### 1. Railsアプリを作成
“`bash
rails new myshop –skip_webpack_install
cd myshop
“`### 2. Gemfileに以下を追加
“`ruby:Gemfile
gem ‘solidus’
gem ‘solidus_auth_devise’
“`‘solidus’をrequireすると、以下がまとめてインストールされます。個別にインストールすることも可能なよう。
`solidus_core`
`solidus_api`
`solidus_frontOSSライセンス-資料ストック-
#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にアクセスします。
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