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

オープンソース調べOSS 2020年10月25日
目次

お堅い企業で働く人こそ読みたい「伽藍とバザール」

## 「伽藍とバザール」について

初めてOSS貢献してみた

# はじめてOSSにコミットした…:v:

今回、 @ryo2132 さんが紹介されていた OSS の [type-challenges](https://github.com/type-challenges/type-challenges) というプロジェクトに興味を持ち、ほんの一部ではありますが 人生初めてのOSS活動を行いました!
内容としては未翻訳のページを見つけていって英語の原文を訳していくだけだったのだけど、結構良い影響があったので以下にまとめていきます。

![image](https://pbs.twimg.com/media/EkDBo9aUcAE3h9q?format=jpg&name=small)

#### コミット
https://github.com/type-challenges/type-challenges/commit/f9b3bb0b5f7e9095be840fe3cba154f6f0566693

## OSS活動から得られた良い影響

### 1. 自分の知らない文化を知れ、自身を見つめ直す機会になる

まずこの部分が大きいと思い

元記事を表示

メッセージングPF「Apache Pulsar」の使い方(サーバー編)

> [Yahoo! JAPAN Tech Blog](https://techblog.yahoo.co.jp/)向けに寄稿した記事を、会社の許可を得てこちらにも転載しています。
> [メッセージングPF「Apache Pulsar」の使い方(サーバー編)](https://techblog.yahoo.co.jp/entry/2020092430016844/)

こんにちは。ヤフー株式会社システム統括本部の坂本です。現在、私はオープンソースのメッセージングミドルウェアである[Apache Pulsar](https://pulsar.apache.org/)を社内向けの共通プラットフォームとして提供・運用するチームに所属しています。

私たちのチームでは、Pulsarを紹介する記事を過去4回にわたって連載してきました。過去の記事については以下をご覧ください。

1. [メッセージングPF「Apache Pulsar」の使い方(入門編)](https://techblog.yahoo.co.jp/entry/20200312818173/)
1. [メッセージングPF「Apache

元記事を表示

会社の共用ライブラリをOSSで公開する時にGithubの設定でハマったこと

## 会社の共用ライブラリを公開しました。

弊社の広報・採用強化・Androidエンジニアへの貢献の一環として下記のライブラリモジュールを公開しました。
– https://github.com/arsaga-partners/AndroidViewExtensions
– https://github.com/arsaga-partners/AndroidViewModelExtensions
– https://github.com/arsaga-partners/AndroidGatewayExtensions

(鋭意改修中です!)

その際、githubで公開する際に3時間!ハマったことがありましたのでその共有の記事になります。

## github organization内のレポジトリの外部ユーザーのマージ権限について

会社内のレポジトリのmaster / developブランチにはブランチルールでマージに必要な条件を付けているので、
organization外部のユーザーからのマージコミットを弾く設定をしなければいけないものだと思い込んでしまったが、
そもそもorg

元記事を表示

経歴の浅いエンジニアがOSSにプルリクを送ってみた話

## EC-CUBEプルリクを送ってみた話

タイトルにもございますように、オープンソースソフトウェアであるEC-CUBEコミットしましたので、記したいと思います。

私は経歴1年半程度のエンジニアで「OSSコミッター」というと、いかにもツヨツヨでギークな方がやっているイメージが強かったのですが、こんな私でもできたので、少しでも多くの方がやってみようと思えるように、手順と心構えを記したいと思います。

## なぜEC-CUBEか
EC−CUBEとの関わりは業務で使用したことがきっかけです。
カスタマイズをしていた印象としては、[開発ドキュメント](https://doc4.ec-cube.net)があるため経歴の浅いエンジニアだった私にとって、お作法を学ぶ上でもいい題材であると感じました。

当時私よりも更に経験の浅いエンジニアにタスクの割り振りをしていた私は「このタスクはちょうどいいな、Aさんの勉強になる」と無意識に、経験を積む上でいい題材を選んでいることに気づきました。そこでEC-CUBEを使ったタスク集があれば、エンジニアを目指している人やエンジニアになったばかりの人が、実務で経

元記事を表示

Prometheus vs. Nagios

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/614998/de3d9a02-d961-4c58-bcb1-e39dc577d159.png)

#Prometheusとは

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/614998/e34ecac2-4d45-026c-890a-2d0301fd7c63.png)

Prometheusは、時系列データベースを中心に構築されたオープンソースのサービス監視システムで、クエリ、グラフ、組み込みのアラートのサポートに加えて、データを受信して保存できます。 ターゲットエンドポイントに接続してHTTP経由でメトリクスをリクエストするPrometheusは、メトリクスを一意の時系列の一部として識別する名前やタグでメトリックを定義できる多次元データモデルを提供します。 Hosted Prometheus by MetricFireでは、データを最大2

元記事を表示

社内でSOC構築してみた② #MISP構築編

以下の記事の続きです。
社内でSOC構築してみた① EXIST #概要編

MISPについて

Existの構築の前に、データ取得先として必要なMISPの構築について、ここで簡単に説明します。
詳細については以下のサイトに詳しく記載されているので、ぜひ参考にしてください。

参考:https://ninoseki.github.io/2018/09/15/head-first-misp.html

MISP(マルウェア情報共有プラットフォーム)とは

OSSのWebアプリケーションで歴史を紐解けば、個人の開発が軍主導による開発となり、
NATOで開発が活発化しました。
現在はルクセンブルクのCERTであるCIRCLにて管理されています。

MISPの特徴

元記事を表示

社内でSOC構築してみた① EXIST #概要編

初めに

2020年のある日、自社内でSOCを刷新してみよう!という話になりました。
※SOC=Security Operation Centerの略

実際には24h/365dayの本格的な運用ではなく体制や必要なシステムを構築して、検知したらアラート鳴らして担当社員が分析する。
そんな流れをまずは整えていくこととなりました。

これから構築に至るまでの過程をこちらに備忘録としてQiitaに残していきます。

未知の脅威情報への対処 – EXISTを使用する理由

構築にあたって一番最初に課題として、かつ重要であると議題に上がったのが未知の脅威情報をどう対処するかでした。

そんな中で見つけたのがEXISTでした。
※EXternal Information aggregation System against cyber Threatの略

情報の収集方法や、情報の属性が多様であることに加えOSSなので今後の拡張性が望めたため、今回は採用を決定しました。

構築から簡単な検証に至るまでを行い、改めて優れた点を

元記事を表示

OSS上のPHP – MySQLアプリケーションデータのバックアップ

このブログ記事では、**PHP – MySQL**アプリケーションのバックアップを取ること、バックアップをアリババクラウドのオブジェクトストレージサービスに保存することに焦点を当てています。

*本ブログは英語版からの翻訳です。オリジナルは[こちら](https://www.alibabacloud.com/blog/backing-up-php-mysql-application-data-on-oss_595556)からご確認いただけます。一部機械翻訳を使用しております。翻訳の間違いがありましたら、ご指摘いただけると幸いです。*

#序章
アプリケーションのバックアップは、システム管理者にとって最大の課題でした。クラウド技術の進化により、人々はシステムのスナップショットを使用してバックアップとして使用することができます。しかし、バックアッププロセスをより簡単にするために、いくつかの調整やツールを使用した他の多くの方法があります。

このブログ記事では、PHP – MySQLアプリケーションのバックアップを取ることに焦点を当て、OSS(アリババクラウド[オブジェクトストレージサービス

元記事を表示

「行政手続きのデジタル化」プロジェクト成功のための8カ条

# はじめに
### なぜこの記事を書こうと思ったか
ここ数ヶ月、いわゆる「行政手続きのデジタル化」のプロジェクトに複数携わらせてもらっています。
どのプロジェクトも、当事者である職員が高いモチベーションと課題意識を持ち、デジタル化の実現に向けて邁進しています。

ですが、複数のプロジェクトに関わる中で感じるのは、共通の’How To’のようなものがまだまだ確立されていないということです。
『行政 デジタル化 事例』と検索すると、「こういうツールでやりました」「業務の棚卸しを行ったことが大きかったです」など、成功を左右する要因に関する話しはみかけるのですが、いわゆる「お作法」について書かれている記事はなかなか見つけることができません。

デジタル化のプロジェクトでは、それまで続けてきた仕事をデジタル技術でガラっと変えてしまおうという、ある意味未開の地を開拓するようなものですから、暗中模索になるのは当然です。
とはいえ、何かしら共通する’型’というか、押さえるべきポイントはあって、そこを押さえることで、無駄な議論を避け、手戻りなくプロジェクトを進めていけるのではないかと思うのです。

元記事を表示

OSS PHP SDKを使ってSwooleで機能を掘り下げる

**Swoole**はPHPの非同期・並列リクエストのための高性能なネットワーク通信エンジンです。

*本ブログは英語版からの翻訳です。オリジナルは[こちら](https://www.alibabacloud.com/blog/swoole-based-simple-http-server-with-oss-sdk_347088)からご確認いただけます。一部機械翻訳を使用しております。翻訳の間違いがありましたら、ご指摘いただけると幸いです。*

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/647921/97250e97-d561-6f7f-abef-27747cf0646e.png)

#序章
Swooleは、最近ではコーダーの世界で新たな “最高の言語 “として定着しています。

公式に説明されているように、PHPの非同期・並列リクエストのための高性能なネットワーク通信エンジンです。そのコンパイルは、PHPの非同期マルチスレッドサーバ、非同期TCP/UDPネットワーククライアント、非

元記事を表示

もう複雑なState管理や非同期処理に悩まない。そう、Trelaならね?

trela icon

# この記事について

この記事は、筆者が現在製作しているフレームワークについて解説した記事です。

紹介するフレームワークは`JavaScript`で使う事が出来ますが、`TypeScript`を使う事で最大のメリットを受けれるフレームワークであるため、この記事で紹介するソースコードは`TypeScript`を用いて解説します。そのため、`JavaScript`の知識に加えて`TypeScript`の理解もあるとより理解できます。

# 言い忘れてたので追記( 2020/10 )

ライブラリのサイズについて、すっかり頭から抜け落ちていたので、追記です。
Twitterで久々のエゴサをしてたら、以下のツイートを見つけました。

Redmineのコードリーディング用環境をDocker上に構築する

## 概要

[redmine](https://github.com/redmine/redmine)のソースコードを読むための環境をDockerで構築します。以下の状態をゴールとします。

* [redmine](https://github.com/redmine/redmine)のmasterブランチのコードがDocker上で動作する
* Debug用のツールが使える

## モチベーション

動作環境を構築するのは実際のアプリケーションの挙動とコード内容を頭の中で紐付けながらコードリーディングしたいからです。

### なぜコードリーディングしたいのか?
人が書いたコードを読むことは新たな発見や学びに繋がると考えています。
私の場合は、クラスの分け方、命名、テストコードの書き方、エラーハンドリングの仕方などに悩むことが最近多いので、そのあたりの引き出しを増やしたいというモチベーションがあります。

### なぜRedmineか?
Redmineを選んだのは以下の理由です。

* 普段からRedmineを使っているため馴染みがあり、画面や外部仕様をある程度知っている。
* 長年

元記事を表示

OSSのバグを踏んでIssue立てたら2時間で修正されて感動した話

# TL;DR
OSS系の話と言うと、Pull Requestを送る系の話をよく見ますが、Issueを立てる話はあまり見ないので
今回書いてみました。

# 経緯
最近、仕事でPHPのCI環境を立てていました。

workflowのyamlを書いたまでは良かったのですが、特定のPHPバージョンでのみ、コードの実行に必要な
PHP extensionが有効にならずに、エラーになってしまう謎の現象に陥りました?

**使ったAction**
https://github.com/marketplace/actions/setup-php-action

[![Image from Gyazo](https://i.gyazo.com/777e953588b9262470a6d3cde8359f06.png)](https://gyazo.com/777e953588b9262470a6d3cde8359f06)

# やってみたこと
ソースを見ても該当するところを見つけられなかったので、こんな感じでIssueだけ立ててみました。
https://github.com/shivammathu

元記事を表示

READMEに競プロのバッジを追加するアプリを作ろうとしたら既にあったので OSS開発したお話

# はじめに

こんにちは。ganariyaです。

7月頃からGitHubのアップデートで、[自分のアカウントページにプロフィールに関するREADME](https://qiita.com/ganariya/items/009efffb237b85ae1a47)を書けるようになりました。
「自分の履歴書」として、一箇所に情報をまとめられるため便利です。

![スクリーンショット 2020-09-13 18.52.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/211482/b84ff1dc-9ad0-cebd-f197-407cef6b0388.png)

GitHubのREADMEの機能の追加により、以下のようなバッジを追加する記事が増え、自分もなにかバッジにまつわるツールを作りたいなと考えました。

– [Qiitaコントリビューション数をGitHubのプロフィールに貼ってドヤれるサービスを作った](https://qiita.com/mikkame/items/f2c60d9caf8a8e

元記事を表示

CentOSにOpenFOAM v2006をインストール

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

# OpenFOAMのダウンロード

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

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

1つめのサイトはESIグループによるものです.一方,2つめのサイトはOpenFOAM Foundationによるものです.リリースされた年月でバージョンがついてるもの,すなわち今回のv2006(2020年6月リリース)は前者のESIのサイトから入手できます.

# インストールの種類

ESIのサイトでは,Windows,Mac,Linuxのバイナリがダウンロードできます.Windowsでは,Windows Subsystem for Linux (WS

元記事を表示

国産OSSをまとめてみた

ちょくちょくQiitaでも上位の話題に上がってくるOSSですが、[GitHub公式の検索機能](https://github.com/explore)を用いても英語に紛れて中国語のOSSは出てくるものの、あまり国産のOSSを見つけることができません。さらに国産の物でも日本語で書かれていることが多く見分けがつかないこともあると思います。
一方で母国語が日本語である以上日本語の情報が見つけられた方が好ましい/英語は苦手だけどOSSに興味がある、という方も多くいらっしゃると思いますが、見つけられないのではどうしようもありません。
本投稿ではそんな方々の力になれればと、国産OSSを少しばかり集めてみました。

なお、掲載基準は独断と偏見かつ見つけられた範囲のですので、このOSSも!という方は絶賛編集リクエスト受け付け中です。

# カテゴリ別OSSまとめ
## 言語
### Ruby

| 項目 | |
| — | — |
| コードベース | [Gi

元記事を表示

OOSとCloudから何を発想するか

技術的な議論するのではありません、OSS(Open Source Software)とCloudが登場して随分時が経ってきています。
果たして、どれだけの企業で、これらの登場によって新しい方向へと転換できたのでしょうか?
OSSを開発で使用すればコーディング量が減り、品質貢献が期待できます。
場合によっては、コーディングせずにシステムを実現できるような期待が出来るようになりました。
OSSの効果的な一つの方向性として**OSSをリファレンスとする**のはどうでしょうか?
OSSでは多くの人が関与するので、おのずと読みやすさ、コーディングルールが自然と整ってきます。日本と欧米とのソースコードの可読性について大きな違いがあります。それは欧米ではキャリア流動性が高いので、普段から可読性が高く、**開発者からの手離れが良いコーディングを尊重**してきました。日本はその逆が多いのではないでしょうか?今ほどではないにしろ、他人に分かりにくく効率が良いプログラムを構築できることが良しとされ、そのような方がスキルが高いと評価される傾向がまだまだ残っているのではないでしょうか?一部の非常に効率とリアルタ

元記事を表示

macOSにGitLab開発環境セットアップ (GDK) (2020年9月)

**tl; dr:** GitLab本体(Web UI, API)をmacOS環境で開発する環境を用意する。

毎年のように、統合DevOpsプラットフォームGitLabの開発環境のセットアップ記事が作成されるが、日本語でQiitaで閲覧できる最新版になると想定して記述する。

### 想定

macOS: 10.13, 10.14, 10.15の想定。10.15の人はZshになっている可能性もある。MacBook Pro (Retina以降)が望ましいが、MacBook/MacBook Airでも動くと思われる。筆者はMacBook Pro (Retina, 13-inch, Mid 2014) i5 2コア 8GBメモリ、128GB SSD(空き容量20GB)で確認した。

GitLabコミュニティメンバー(つまり誰しも)を想定。

### なぜ書くのか。

2020-09-02/2020-09-03で開催されるGitLab Hackathon 3Q 2020を日本語で https://gitlab-jp.connpass.com/event/187652/ https:

元記事を表示

【監視】独自監視ソフトウェアからのロックドインを避け、オープンソースの恩恵を最大限に受ける方法

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/614998/ddd6ee6c-5aaa-f231-2bcd-61d321bd941d.png)

#ベンダーロックインの回避
監視で使用しているツールに求めていた以上の機能がなかったり、スケールによってより高額な支払いを請求された場合でも、大手の監視会社と契約してしまうと、そのツール簡単に離れられないというのはよく聞く話です。 大きな理由としては、高価なソフトウェアまたはハードウェアを交換し、チームを再教育し、大量のデータを新しいシステムに転送することは大きな労力を要するからです。

多くの場合、主要な監視サービスは、カスタマイズ、カスタム作成プラグイン、またはオンプレミスセットアップでは柔軟ではありません。 多くの製品は、学習曲線が急であるため、従業員の教育に時間がかかります。 同様に、**項目化された隠れたコストの結果として、コストは天文学的なものになる可能性があります**。

###ベンダーロックインとして、次のような例あります

元記事を表示

OTHERカテゴリの最新記事