オープンソース調べOSS 2021年08月09日

オープンソース調べOSS 2021年08月09日
目次

初めての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で明らかに怪しそうなコードを探す

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

元記事を表示

Apache Pulsarにおけるレプリケーテッドサブスクリプションの紹介

## はじめに

Apache Pulsarでは、Consumerがトピックの購読を開始する際に**サブスクリプション**と呼ばれる識別子を指定する必要があります。Producerによってトピックにproduceされたメッセージは、それぞれのサブスクリプションに対して1つずつ配信されます。つまり、全てのConsumerが異なるサブスクリプションでトピックを購読していればメッセージがブロードキャストされる事になります。一方、全てのConsumerが同じサブスクリプションに属していればそれらの内どれか1つにメッセージが配信される事になり、負荷分散や冗長化を実現できます。PulsarのサブスクリプションはKafkaで言うConsumer Groupに当たるものと言えるでしょう。

ここからが本題となりますが、Pulsar 2.4.0から**レプリケーテッドサブスクリプション**と呼ばれる特殊なサブスクリプションの作成が可能になりました。今回はこのレプリケーテッドサブスクリプションの機能の概要からアーキテクチャまでを解説してみたいと思います。

なお、以降の記述は執筆時点での最新バージョンであ

元記事を表示

データ活用を促進するスゴ素晴らしいOSS、Streamlitを紹介する。

# はじめに
OSSの[Streamlit](https://github.com/streamlit)が非常に有用でしたので紹介したいと思います。

# 何ができるか
[こちら](https://www.streamlit.io/)をご覧ください。
pythonを書くだけで、PowerBIやTableau、Grafanaでつくるようなダッシュボードをつくることができます。
作成物がコードなので、Gitでコード管理できるのも良いですね。

# どうやって作るか
素晴らしい時代になりました。
YoutubeにStreamlit公式の[解説動画](https://www.youtube.com/watch?v=B2iAodr0fOo)があります。
これを確認しながら、手を動かしましょう。
Streamlitの環境構築方法は、[こちら](https://qiita.com/hiyasichuka/items/68373957bd021435a4a0)を参考にしてみてください。

# おわりに

製造業の現場はパッケージやツールに合わせて業務を遂行するのが非常に苦手な印象を受けます。
したが

元記事を表示

個人開発でwebサービスを作ったら人生で初めてバズった話

## はじめに

先日個人開発したwebサービスをリリースしました。
ありがたいことに思った以上に反響があり、仕事とはまた違った学ぶこともあったので宣伝も兼ねて開発にあたっての備忘録を残そうと思います。

### 作ったwebサービス
BUKUMANGA – はてなブックマーク数を元にwebマンガをまとめたサイト
https://bukumanga.com/

GitHub
https://github.com/ktny/bukumanga

## 開発の目的
### 名作webマンガを整理したい
はてなブックマークで誰かが「webマンガをまとめたサイト作ってくれないかなー」的なことを言っていたのを見てそれいいじゃんと思ったのがきっかけです。
自分もはてなブックマークは主にテクノロジーとアニメ・ゲームカテゴリをよく見ていましたが、はてブで話題になっても世間の話題の移り変わりは激しく、特に読み切りなどは見逃しやすかったりので、せめてはてブで話題になったwebマンガを整理したサイトがあったら自身も楽しめるし需要もあるかもしれないし使いたい技術も使えるしいいなと思って作りました。

あくまで

元記事を表示

Apache PulsarのPartitioned topics Producerについての機能改善 – Pulsar Summit NA 2021での登壇内容まとめ

> [Yahoo! JAPAN Tech Blog](https://techblog.yahoo.co.jp/)向けに寄稿した記事を、会社の許可を得てこちらにも転載しています。
[Apache PulsarのPartitioned topics Producerについての機能改善 – Pulsar Summit NA 2021での登壇内容まとめ – Yahoo! JAPAN Tech Blog](https://techblog.yahoo.co.jp/entry/2021062230161532/)

こんにちは、システム統括本部クラウドプラットフォーム本部の水嶋と申します。私は現在、社内向けにキューイング・Pub-Sub・ストリーミングなどのメッセージングプラットフォームを提供するチームに所属しています。

このチームでは、メッセージングプラットフォームとしてOSS [Apache Pulsar](https://pulsar.apache.org/)(以降、Pulsar)を利用しています。この業務内でPulsarの機能改善に取り組み、OSSコミュニティーにプロポーザルおよび実装

元記事を表示

OSSのChromium OSをやってみようと思う話

前回の記事である、銀河系の情報を調べようとAzureクラウドを使おうとしたら、面食らった話について

の続き記事です。OSSであるChromium OSの記事ですが、当方、ubuntuとLinux mintしか知らない為

かなりの困難が予想される。

元記事を表示

Miro風ホワイトボードOSS “ourboard”

ホワイトボード、オンライン共同作業ツールとして有名なWebサービスとして[Miro](https://miro.com/)があります。
Miroは便利なんですが、自分たちの開発環境に建てられたらなぁと思い似たようなOSSがないかとずっと探していました。
ついに先日[ourboard](https://github.com/raimohanska/ourboard)というソフトを見つけてまさに探していたものに近かったので、概要とインストール方法について紹介します。

# 概要

ourboardはraimohanskaさんのgithubリポジトリで開発され、MITライセンスで公開されています。
デモページも公開されていて、何ができるのかはそちらを見ていただくのがわかりやすいと思います。

https://www.ourboard.io/

できることは大きなホワイボードの上に付箋やテキストを置いたり、エリアを区切ったり、オブジェクト同士を曲線で結んだりです。
他にドラッグアンドドロップで画像や動画をホワイトボード上に置くこともできます。

作成したボードはリンクを共有することで他の人も

元記事を表示

【ゼロからのOS自作入門】フォロー1日目

とある事情で06/30までに「[ゼロからのOS自作入門](http://zero.osdev.jp/)」という本を読み終えたいと思うようになりました。
自律のため毎日勉強したことを投稿しようと思うのでよろしくお願いします。

—–

# UEFI BIOSによる起動

– 電源を入れるとCPUはBIOSを実行する
– BIOSはパソコン本体や周辺機器を初期化する。
– BIOSはストレージから`.elf`ファイルを見つけ、それをメインメモリに読み出す
– BIOSは自分の実行を中断して、CPUはそのファイルを実行する

メインメモリの内容は電源を切ると消える。BIOS自体はROMにかかれている。

# OSを作る道具

– UEFI BIOSが実行するプログラムを**UEFIアプリケーション**という(アプリケーション…)
– これはバイナリファイルである
– バイナリファイルの作り方の例と

元記事を表示

富岳にdonkeycarパッケージをインストールする

表題の手順をgithub上に公開しました。

> GitHub: Donkeycar on Fugaku
> https://github.com/coolerking/donkeycar_on_fugaku

去年あたりからニュース画像でもおなじみになってきたスーパーコンピュータ富岳ですが、OSSを使った計算を行う場合は多少厄介になります。

すでにインストール済みのものであればよいのですが、未インストールであり、さらに依存関係のあるOSパッケージ管理ツール管理化のパッケージを使用する場合、一般ユーザの許可されている権限でなんとかしないといけないので、いろいろややこしくなります。

自分が思いつく方法は、以下の2種類になります。

* ホームディレクトリ上でソースからコンパイル
* spack を使ってコンパイル&インストール

ホームディレクトリ上にソースコードを展開して、手動でビルドするときに、`–prefix` オプションでホームディレクトリ上のサブディレクトリ(ex. `~/local/aarch64fx` )にして`make install`したときにこのディレクトリ

元記事を表示

サブスクリプションタイプKey_Sharedの紹介

[Apache Pulsar](https://pulsar.apache.org/)には、[Exclusive,Failover,Shared](https://qiita.com/equanz/items/47aaa70da4ebe8dd3e67#%E3%82%B5%E3%83%96%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%BF%E3%82%A4%E3%83%97)という3つのサブスクリプションタイプがありましたが、
v2.4.0からはこれらに加えて[Key_Shared](https://qiita.com/equanz/items/47aaa70da4ebe8dd3e67#%E3%82%B5%E3%83%96%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%BF%E3%82%A4%E3%83%97)という新しいサブスクリプションタイプが導入されました。
今回はこのKey_Sharedにつ

元記事を表示

Pulsar Node.jsクライアントライブラリを使ってみた

## はじめに

こんにちは。

本稿では、Pulsarの[Node.jsクライアントライブラリ](https://github.com/apache/pulsar-client-node)(以下、pulsar-client-node)を使って、簡単なメッセージの送受信をしていきます。
サーバには、standaloneモードのPulsarを起動させます。

今回は、CentOS 7.5.0 1台の上に以下の環境を構築して試していきます。

* サーバ
* Java 11
* Pulsar(standaloneモード) v2.7.1

* クライアント
* Node.js v12.22.1
* pulsar-client-node v1.3.0
* pulsar-client-cpp(後述) v2.7.1

## サーバの準備
ここでは、メッセージの送受信を行うためのサーバを準備していきます。

まず、Pulsarのstandaloneモードを動かすために、Javaが必要になります。
Javaのインストール後、Pulsarのバイナリファイルが入ったアーカイブファイルを

元記事を表示

私にコーヒーをおごってほしい – エンジニアと報酬・対価について考えた

表題に他意はなく、単に興味を持った「[Buy me a coffee](Buymeacoffee.com)」を日本語にしたらそういう感じなのかな、というところです。記事の結論を先に書くと「金銭」とまでは言わずとも、「お礼」や「応援」の気持ちは、普段から開発者同士もっと表明して送っていきたい。そういう気持ちを改めてもったという話。

Buy me a coffee、Qiita記事でも紹介されていた。以下。

https://qiita.com/whitphx/items/f37216ab2392ab359f11#buy-me-a-coffee

モノの試しに自分でもBuy me a coffeeアカウントを作ってみた。しかし何かを作ることとお金、もう少し話を広く表現すると「報酬」「対価」の話は各媒体、それぞれ戦略や考え方がある。

## 「お金を稼ぐ」ことにまつわる各コミュニティ等のお話

### 例: Qiita

https://qiita.com/HiromuMasuda0228/items/aa3729882cb59fda9838

https://qiita.com/tama

元記事を表示

データウェアハウスのブロックサイズの初期値

OSSのデフォルトのブロックサイズを調べたのでメモしておきます.

## Hadoop = 128MB

http://hadoop.apache.org/docs/r3.0.0/hadoop-project-dist/hadoop-hdfs/HdfsDesign.html

## Amazon Redshift = 64MB

https://docs.aws.amazon.com/ja_jp/redshift/latest/dg/c-spectrum-external-performance.html

元記事を表示

【C++】時刻計算を簡単に行えるライブラリを自作した

## はじめに
C++ での時刻計算では、`struct tm`を使った方法がよく紹介されています。ただし、struct tmにはクセがあり、1900年始まりだったり、0月始まりだったりとプログラマが注意を払わなければならない部分があります。

そこで、struct tmをラッピングし、時刻計算を簡単に扱えるライブラリを作成しました。
名前を`Easy Datetime`とし、下記のシンプルな機能を提供します。

– 機能一覧
– 日付計算
– 時刻差の計算
– 文字列 ↔︎ 時刻への相互パース
– 現在時刻の取得

### [Eazy-Datetime-Cpp](https://github.com/akihironakayama0225/Easy-Datetime-Cpp) ← ライブラリへのリンクはこちらです!

## 目次
– [インストール](#インストール)
– [EZ::Datetime(日付クラス)](#ezdatetime日付クラス)
– [現在時刻の取得](#現在時刻の取得)
– [時刻の設定](#時刻の設定)

元記事を表示

ビデオ会議アプリ「Jitsi Meeet」をdockerで構築する

# はじめに
– 先日、本屋で立ち読みした時に、[Jitsi Meet](https://jitsi.org/jitsi-meet/) というOSSのソフトウェアがあるということを知り
興味があったので、勉強がてらdockerで構築してみることにした。

# 環境
– MacBook Pro(Retina, Mid 2012)
– macOS Catalina
– Docker version 20.10.5, build 55c4c88

# 前準備
## Docker Desktopのインストール
– ググってください。

## ドメイン取得
– 使用するドメインは[ddo.jp](https://ddo.jp/)で取得

# Jitsi設定手順

## GitHubリポジトリのclone

“`zsh:リポジトリのclone
nekonisi@nekonisi-mbp workspace % git clone https://github.com/jitsi/docker-jitsi-meet
Cloning into ‘docker-j

元記事を表示

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

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

本日は、COCOAについてです。OSSとして少しずつ進んでいると思うので貢献方法について少しでも解説できればと思います。
**Xamarinとか楽々書けるけど、どうしたらCOCOAに対して貢献できるかを書いています。**

## 自己紹介
都内の高校(普通科)に通っている高校3年です。OSSに興味があります。

作成したもの

– Google Assistant用のアプリ(2回作りました)
– [相模原市 新型コロナウイルス感染症対策サイト](https://sagamihara-stopcovid19.com)
– ブログ(WordPressですが)

コントリビューターとして貢献した(している)もの

– COCOA
– 東京都 新型コロナウイルス感染症対策サイト

## COCOAとは
COCOAは、COVID-19 Contact-Confirming Applicationの略称です。日本語名で言うと、新型コロナウイルス接触確認アプリになるそうです。(参照:[厚生労働相 COCOAホームペー

元記事を表示

オープンソースなスマートウォッチの現在の動向(2021/4)

# はじめに
オープンソースなスマートウォッチに興味がありましたが、3つほどメジャーなプロジェクトがあり混乱したため、特徴をまとめました。
# 各種スマートウォッチ
メジャーなものに触れていきます。

1. PineTime
1. Watchy
1. Open-SmartWatch
1. 2021/4現在、仕様が現在進行形で変化しているので、最新のディスカッションを知りたい場合は[Discordサーバー](https://discord.gg/9DK5JY6)に参加することをお勧めします。

# 比較
まとめるのに数時間はかかりました。STORAGEに関しては必ずしも正確でないかもしれません。

||[PineTime]|[Watchy]|[Open-SmartWatch(Light ver.)]|
|-|-|-|-|
|SoC|nRF52832|[ESP32-PICO-D4]|[TTGO Micro-32]|
|CPU|[ARM Cortex-M4]|[Tensilica Xtensa LX6]|[Tensilica Xtensa LX6]|
|MIPS[^1]|48.66|

元記事を表示

OTHERカテゴリの最新記事