オープンソース調べOSS 2020年12月24日

オープンソース調べOSS 2020年12月24日
目次

作りながら学ぶ!SwiftPackageManagerでOSSを公開しよう!

# はじめに

この記事は [iOS Advent Calendar 2020](https://qiita.com/advent-calendar/2020/ios) の 24 日目の記事です。
昨日は[アイカワ](https://qiita.com/kalupas226)さんの[「Numbers API を利用した実践的なアプリで学ぶ SwiftUI(UIKit) + TCA」](https://qiita.com/kalupas226/items/fb67003d43df8ad057f7)でした。

今年初めて自分でライブラリを作ってOSSとして公開しました!
SwiftUIでニューモフィズムというデザインを表現できるライブラリです。
ありがたいことに、現在スターが120以上いただいております。
https://github.com/tsuzukihashi/NeumorphismUI

こちらはSwiftPackageManager(SPM)というライブラリの管理ツールに対応しています。
SwiftPackageManager(SPM)は他のライブラリ管理ツールに比べ、とても簡

元記事を表示

OpenChain仕様適合を宣言した企業 / OpenChain Conformant Companies

こんにちは。富士通株式会社の大崎 雅行です。
OSS(Open Source Software)を利用する際に重要となる、OSSライセンスのコンプライアンスに携わっています。

本記事では、OpenChainの仕様適合を確認し(自己認証・第三者認証)、OpenChainプロジェクトに対し適合を宣言した企業について、簡単に紹介します。
#OpenChain仕様について
渡邊 歩さんの[1日目の記事](https://qiita.com/AyumiWatanabe/items/3bbb47d6f14205f78acc)で紹介があったように、OpenChain仕様は、組織がOSSコンプライアンスの遵守体制を構築する際の要件を規定するもので、Linux Foundation配下のOpenChainプロジェクトが取りまとめています。

OpenChain仕様は、以下のように約1年ごとに改版されており、最新版は2.1です。[3日目の記事](https://qiita.com/t-osk/items/587c2a7ed9c1216e6ba9)で紹介した国際標準化に向けた取組みの結果、12月15日に、

元記事を表示

Laradockをちょっと便利にするコマンドラッパーを作った

この記事は[個人開発 Advent Calendar 2020](https://qiita.com/advent-calendar/2020/private-development)の23日目です。

# TL;DR
Laradockをちょっと便利にするコマンドラッパーを作りました。
https://github.com/ngmy/laradockctl

# 背景
WebサービスやOSSを開発するときはDockerを使うと開発マシンが汚れないので便利ですね。
私はもっぱらPHPで開発しており、また一からDockerで開発環境を構築する時間もないので、開発環境は[Laradock](https://laradock.io/)のお世話になることが多いです。
LaradockはPHPの開発に必要なもの全部入りのDocker環境で、PHP界隈ではおなじみのツールです。

そんなLaradockですが、使っていて個人的に不便に感じる点があります。

# Laradockを使っていて個人的に不便に感じる点
## 1. どのコンテナを起動すればいいのか忘れる
「このWebサービスではnginxコ

元記事を表示

【Vue.js】はじめてのOSS -OSS初心者がコントリビューターになるまで-

## はじめに
本記事はOSS初心者(というかはじめて)の私がVue.jsでコントリビューターになるまでのお話です。
(※2020/12/21現在、PRを出している最中なのでm、厳密にはコントリビューターではありません。笑)

## きっかけ
単純に英語を勉強したいな、と思っていたのと、OSSってコードのメンテナンスや機能開発以外にも道があるので、ゴリゴリにコードかけなくてもOSS参加できるよ!ということと、ゴリゴリにコード書くだけがエンジニアの価値じゃないよ!ということを伝えたかったのでチャレンジしてみました。

## 何をやったか
平たくいうと、Vue.jsのドキュメントの翻訳をやりました!

Vue.jsは2020年9月にVue 3.0.0がリリースされ、Vue.jsのコミュニティ内(Slack内)で翻訳されてないものがある、ということだったので覗いてみたところ、分量も多くなく、Google 翻訳やDeepLなども使って良いということだったので、チャレンジしてみました。

## OSSコントリビュートまでの手順
言語やライブラリ、フレームワークによって違うと思いますがVue.j

元記事を表示

かしこい検索システムを作れるOSS「Jina」を使ってみた!

# はじめに

昨今、深層学習技術の発展にはめざましいものがあります。
自然言語の単語や文の意味を捉えた類似検索や質問応答であったり、画像の内容に関する説明文の生成であったりと、ワクワクさせるものが日々登場しています。
それらの技術を使ってよりかしこい検索システムを作ることができれば、これまでうまく活用されていなかったデータの活用促進につながり、より生産性を上げられるのではないかと妄想する毎日を送っていました。
しかし、一からそのような検索システムを構築するのは非常に困難です。
そのため、なかなか一歩を踏み出せずにいたのですが、最近面白いOSSを見つけました。
その名も [Jina](https://github.com/jina-ai/jina) です。
(発音は公式動画等を見る限り「ジーナ」のようです)

今回は、このJinaについて簡単に紹介しつつ、デモを動かしていきたいと思います。

# Jinaって何?

Jinaは、[Han Xiao氏](https://hanxiao.io/)[^1]によって2020年に立ち上げられたベンチャーである[Jina AI](https://j

元記事を表示

Laravel製のオープンソースWebDB『Exment』が正式リリース2年なので、これまでとこれからをまとめてみた

こんにちは。株式会社カジトリの佐藤と申します。
オープンソースなWebデータベース、『[**Exment**](https://exment.net/)』の企画立案、開発、営業、統括を行っています。

Exmentは、2019年1月に正式版をリリースし、そろそろ2年が経過します。
この2年間で、さまざまな企業・組織に使っていただきました。
それに伴って、多くの方々からのフィードバック、改善案、ときには不具合報告をいただくことによって、この2年間で、非常に成熟したソフトウェアに育ってきました。心から感謝です。

また、ビジネスとしても少しずつ、結果が出てきました。
投資額と時間を完全リターンできるほどの結果はまだまだですが、それも実現可能なソリューションであることの確信はしています。

一方で、課題や壁も、もちろんいくつか出ていています。
中には、オープンソースならではの壁や苦労もあり、日々対応策を練っている所です。

前回の記事から、およそ1年が経ったということもあり、改めて記事をまとめていくことにしました。(良ければ、[**前回の記事**](https://qiita.com/hir

元記事を表示

Flash Advent Calendar 19日目 – OSS活動で得られた事 –

今日は休日なので小休憩もかねて
OSSで得られた経験などについて書きたいと思います。

# ソースが公開される

OSSなので当たり前ですが、自分の実装したソースが誰でも見れる場所に公開されます。
OSSを始める最初の障壁なのですが、一番敷居が高い障壁でもあると思います。

自分の場合は、誰にどのように評価されても
ありがとうございます!っという気持ちと
頂いた意見を全てプラスの言葉に変換して実装に反映する!!
たとえどんな失敗があっても訂正すれば良い!!
っという強い気持ちを持ってメンテナンスを行いましたw

このメンテナンスする作業が一番スキルアップに繋がったと思います。
肝も座りますw

# ネットでみていた有名・優秀な方達から意見がもらえる

実装するのに参考にしてるサイトの会社・個人の方
国内・国外問わずOSSで有名な人達からの意見や知識がいただけます。
本当に多くの方から沢山の事を学ばせて頂きました。
これは、OSS活動した事で得られたとても貴重な体験だと思っています。

直接・間接的に教えていただいた事は全てとても貴重な体験で
エンジニア業を行う上で、凄く支えになる体験

元記事を表示

OSS個人開発のモチベーションを高める方法〜金銭的な収益を得る(寄付をもらう)〜

# 個人サイドプロジェクトで開発しているもの
個人のサイドプロジェクトとして、こちらのソフトウェアを作っています。
VSCode用Emacsキーバインド拡張です。
[Awesome Emacs Keymap](https://marketplace.visualstudio.com/items?itemName=tuttieee.emacs-mcx)

[![Awesome Emacs Keymap logo](https://github.com/tuttieee/vscode-emacs-mcx/blob/master/images/icon.png?raw=true)](https://marketplace.visualstudio.com/items?itemName=tuttieee.emacs-mcx)

Visual Studio Marketplace: https://marketplace.visualstudio.com/items?itemName=tuttieee.emacs-mcx
GitHub: https://github.com/tuttieee/v

元記事を表示

オープンソースを開発し続けて得たもの

 自分のGithubのファーストコミットの時期を確認したら2014年だった。私はその時からオープンソースを作って来たんだなと改めて認識した。もう7年近くやっているのかという感慨もあれば、同時にまだ7年しかやってないのかという思いもある。

 まぁ、この7年という月日が自分にとって長いのか短いのかは置いておくとして、**オープンソース開発を通じて私が得られたもの**を、開発したプロダクトと一緒に紹介していこうと思う。

## まずは何よりも英語力

 私が全世界向けにオープンソースとして配布した処女作プロダクトが、WordPress用プラグイン「[Custom DataBase Tables](https://wordpress.org/plugins/custom-database-tables/)」通称「CDBT」だ。自身初のWordPressの公式プラグインで、コンセプトとしてはWordPressの管理画面にphpMyAdminやAdminerのようなデータベース管理ツールを実装しようとしたものだ。今思い返してみると、WordPressプラグイン開発者として駆け出しだったのに、よく

元記事を表示

OpenChain Japan WG, License Info. Exchange SWG: Proposing License Info. Management Scheme for next revision of SPDX.

# はじめに

ルネサスエレクトロニクス(株)の伊藤と申します。
製品開発サプライチェーンでのライセンス情報授受の仕組みに関わる、「組織間のライセンス情報授受」サブグループの活動を紹介いたします。

# なんのための活動?
**組織・企業間でライセンス情報を正しく伝えるために**

製品開発やサービスを行うために、ソフトウェアを開発する場合、ソフトウェアを部品(パッケージ・モジュール)単位で開発を分担することが一般的です。

個別のソフトウェア開発元・コミュニティ → 複数のソフトウェアを取りまとめてパッケージする企業・組織 → 仕様を決め、全体をまとめ、一まとまりの製品として開発する企業 → 製品要件などを決め、実際に顧客へと販売する企業、と企業・組織間のサプライチェーンに沿って、製品を構成するハードウェアに付随するソフトウェアを基盤に開発すること、市販されているソフトウェアをサービスの一部に組み入れること、目的に合わせたソフトウェアをその分野に強い企業・組織に個別に開発してもらう、などと、ソフトウェアは渡っていきます。

それら企業・組織間で授受されるソフトウェアには、必ずライ

元記事を表示

Kubernetes上でPulsar Functions使ってみた

## Pulsar

こんにちは。ヤフー株式会社システム統括本部の木村です。
私の所属するteamではopen-sourceのpub-sub型messaging platformである[Apache Pulsar](https://pulsar.apache.org/)を社内向けに開発, 運用しています。

弊teamでは過去に幾つかPulsarに関する記事を書いてきました。

– [メッセージングPF「Apache Pulsar」の使い方(入門編)](https://techblog.yahoo.co.jp/entry/20200312818173/)
– [メッセージングPF「Apache Pulsar」の使い方(クライアント編)](https://techblog.yahoo.co.jp/entry/20200413827977/)
– [メッセージングPF「Apache Pulsar」の使い方(クライアント編2)](https://techblog.yahoo.co.jp/entry/2020060330002394/)
– [Pulsar Summitのセッションと、ヤフーの

元記事を表示

CircleCIとわたし – いつも多くまわってます!

## はじめに

みなさまこんにちは。この記事は、[CircleCI Advent Calendar 2020](https://qiita.com/advent-calendar/2020/circleci)の18日目の記事になります。[^1]

わたしは2017年の中頃からCircleCIを利用しており、職場&個人として、両方でたくさんお世話になっています。
そこまで高度な作り込み、使い込みはできていないのですが、「この辺がとてもよかった!」といったあたりを添えて、感謝の気持ちを記事に合わせて描いてみました。

## 1. まずは4コマ / とっても助かっています!

![20201218-circleci-and-me.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/27976/a0302122-d134-4ad7-c278-6b36387ee668.jpeg)

## 2. 個人開発でのあれこれ

個人開発では、Redmineのプラグインを作っていました。
その際には、いろいろなCIを利用していた

元記事を表示

Flash Advent Calendar 18日目 – OSSを諦めて、有償化に踏み切った話 –

# 有償化に踏み切った話

`swf2js`は2013年から7年間OSSとして地道に活動していたのですが
注目度も低く、継続してメンテナンスを行うが苦しい状態だったので
2019年に自分の所属する会社(ソニックムーブ)と共同で開発する事で有償化に踏み切りました。

最後までOSSとして開発を行いたかったのですが
`swf2js`は誰からも必要とされないライブラリ。っという状況だったので
会社で認めてもらった時はとても嬉しかったです。

FlashPlayerに対しての風当たりも強かったので余計にそう感じたのかもしれません。。。

# 個人のOSS品質

「個人のOSSは、信頼性が低い」っと判断されがちですが
作っているエンジニアは実際に現場で活躍しているエンジニアが多く
実務では商品プロダクトを実装している方が大半だとおもいます。
どうか、個人のOSSという事だけで品質の判断をしないでもらえると嬉しいです。

# 応援の仕方は色々

誰かに必要とされ、何かの役に立っているという事が分かるだけで開発を継続できます。
もし、利用しているOSSがあれば`GitHub`の`star`を押すだけ

元記事を表示

OSSの監視ツール “Graphite” をインストールする際によくある問題とそれの回避策

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/614998/13312bf9-b61f-372e-bc78-414cd9ab965d.png)

#はじめに

Graphiteは非常に人気のあるエンタープライズ用の監視ツールです。この記事では、Graphiteインスタンスのセットアップ中に発生する一般的な問題と、それらを回避する方法について説明します。読者はすでにGraphiteに精通していることを前提としていますが、Graphiteの基本について知りたい場合は、この記事を読む前に、[Graphiteのアーキテクチャと概念](https://qiita.com/MetricFire/items/4925de84200e41a07ab5)および[インストールとセットアップ](https://qiita.com/MetricFire/items/3ba5d2e89dacec0a6ad9)に関する記事を確認してください。この記事において、事前に知っておく必要のある重要な用語は以下になりますので

元記事を表示

ライセンスをつけないとどうなるの?

GitHub上でプログラムを公開するとき、

* どのライセンスを使えばいいのかわからない
* どうやってライセンスを設定すればいいのかわからない
* ライセンスというもの自体が難しそうでよくわからない

などの理由で、ライセンスを設定しないままになっていることはないでしょうか?

この記事では、個人の開発者によるプログラムにライセンスが設定されていなかった場合にどのようなことが起きるのか、という観点からスタートして、ライセンスについての理解を深めていこうと思います。[^for-individual-developer]

[^for-individual-developer]: ソフトウェアライセンスは当然企業が保有するソフトウェアにとっても非常に重要なものですが、本記事ではとくに個人・コミュニティによって開発されるソフトウェアにフォーカスしていくことをご了承ください。

* 注意1: この記事の執筆者は法律に関する専門家ではありません。法律やライセンスに関する言及や解釈は不正確である可能性があります。実際の問題に対しては専門家による助言を受けてください。
* 注意2: こ

元記事を表示

prompt を Deno に実装した話

Deno (ディノ) Advent Calendar 2020、18日目の記事です。

今日は、prompt 関数を Deno に実装した話をします。

# TL;DR

– ブラウザの window.prompt() に相当する関数を Deno の API として実装しました
– https://github.com/denoland/deno/pull/7507
– 実装そのものは比較的簡単。なぜこの API を入れる必要があるのか、その意義を理解してもらうことに苦労しました。

# モチベーションは本の執筆

以前 [Denobook 2](https://scrapbox.io/deno-ja/Denobook_02) を執筆したときに、完全にプログラムの初心者の人に向けて Deno・JavaScript の機能を1から解説していくという記事を書いたのですが、その時不便に感じたのがプログラムへの入力が非常に煩雑であるということでした。

従来の API だと標準入力から1行受け取る呼び出しは以下のようになります。

“`ts:read_line.ts
import { Buf

元記事を表示

OSSライセンスの解釈を助けるOSLV(OSS License Simple Viewer)/ OSLV (OSS License Simple Viewer) to help interpret Open Source Licenses

# はじめに

毎々お世話になっております。OpenChain Japan WG Tooling sub groupの森下です。

突然ですが「OSSのライセンス、意味分からんな…」と感じたことはありませんか?私はあります。ありすぎます。エンジニアにとってOSSのライセンスは難解極まりないものです。今回はそんな、エンジニアを悩ませるOSSライセンスについて、内容解釈を助けるツールであるOLSV(OSS License Simple Viewer)をご紹介します。

# OLSV(OSS License Simple Viewer)とは?

OLSV(OSS License Simple Viewer)は、トヨタ自動車、日立製作所、日立ソリューションズが共同で開発したオープンソースのツールです。
https://github.com/OLSV-oss/OSSLicenseSimpleViewer

エンジニア向けのOSSライセンスリファレンスとして作成されたExcelベースのシンプルなツールで、ライセンスの論理分解データ(詳細は後述)を可視化することで、ライセンス内容の理解を支援します。

元記事を表示

オープンソース標準がISOになった日

皆さん、こんばんは。
今夜の名古屋は雪です。

2020年12月15日はオープンソースの世界の新たな歴史がまた一つ刻まれた日になりました。
Linux FoundationのOSSライセンスコンプライアンスの標準であるOpenChain2.1が、
ISO/IEC 5230:2020が国際規格として承認されたことが、
日本時間の15日夕方から16日午前中にかけて6ヶ国語で次々とプレスリリースされたのです。
オープンソース標準のISO化は14年間のLinux Foundationの歴史の中ではじめてのことです。

(原文)[ISO/IEC 5230:2020 Is The International Standard For Open Source Compliance]
(https://www.einpresswire.com/article/532725924/iso-iec-5230-2020-is-the-international-standard-for-open-source-compliance)
(日本語版)[オープンソース コンプライアンスの国際規格 ISO/IEC

元記事を表示

AWS ECS vs. Kubernetes 〜コンテナオーケストレーションプラットフォームの比較〜

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/614998/8fb9b3ef-756c-850d-a616-a370894b9766.png)

#はじめに

コンテナを使用することで大きな利点を与えてくれる一方で、その環境を増やすことは、それと同時に難しい選択を迫られるということでもあります。私たちは、自分たちの状況に最適なオーケストレーションツールは何か、そしてシステムをどのように監視するかについて考えていく必要があります。 Dockerはコンテナーランタイムの標準ですが、コンテナーオーケストレーションツールから選択するオプションは複数あります。これらのリーダーは、AmazonのElastic ContainerServiceとCNCFのKubernetesです。実際、調査によると、企業の83%がコンテナオーケストレーションソリューションとしてKubernetesを使用しているのに対し、ECSは24%にとどまっています。

この記事では、[MetricFire](https://w

元記事を表示

分散処理を民主化するRay

# イントロ

日立製作所 研究開発グループの中田です。普段、エッジコンピューティングや分散システムの研究開発、またシステムアーキテクトをやっています。
公私ともにQiitaは初投稿です。

今回は、Rayを紹介します。

Rayは、分散処理を含むアプリを開発するためのライブラリおよび実行環境です。まだ日本では情報が少ないのですが、海外では有名企業や大学がこぞって活用しており、かなりホットなライブラリだと思います。今年2020年10月1日にバージョン1.0がリリースされました。また同じタイミングに[Ray Summit](https://events.linuxfoundation.org/ray-summit/)が開催され、50本程のセッションで多数の活用事例が紹介されました。

Rayは、通常の手続き型言語を容易に分散処理化できるものであり、データ分析やエッジ/IoTの分野で有用に思えるので、日本でも広まって欲しいと思っている次第です。

本記事では、そもそもここでの分散処理とは何か、から始めて、使い方や特徴と、Ray Summitで紹介された活用事例をまとめます。Let’s en

元記事を表示

OTHERカテゴリの最新記事