オープンソース調べOSS 2019年12月06日

オープンソース調べOSS 2019年12月06日

goで楽して実装したいので、チート集っぽいマルチ型変換を作って、オープンソースで公開したよ

# まとめると

* goで型やデータ変換に関して、実装したり探したりするのは簡単だけど面倒
* 変換するライブラリを作成
* オープンソースで公開した。簡単な実装なのでサンプルコード集としても使える。
* もちろん対応してない変換も多々ある。(今後も増やしていく)

# 概要

goではたまに別の型へ変数を入れたり、interface{}という何でも入れられる変数を経由して受け渡したりして、そのたびに(簡単だけど)変換処理をする必要がある。

一回一回実装しても良いけど手が疲れて来るので、とりあえず、どんな型で受け取るかは知らんが、ほしい型の変数に変換できるお手軽な(こったやつではない)ものが欲しいなぁと思って、作ってみた。

ToString(v interface{}) みたいな雰囲気で、何も考えずにぶっこむ形を意識。

### できあがった形

“`go
v := 2
s := typeconv.ToString(v).A
fmt.Println(s)
“`

出力結果はもちろん2。
「.A」は「Q&AのA」。
わざわざAってついている理由は、「.IsNil」とか「.

元記事を表示

LazyHighChartsにプルリクを送ってマージされた

(この記事は、[高専OBOG Advent Calendar 2019](https://adventar.org/calendars/4238)の12/5に送った記事です。)

# 要約

普段使っているgemに、Pull Requestを送って、マージされました。

[LazyHighCharts](https://github.com/michelson/lazy_high_charts)というgemの動きが気に入らなくてモンキーパッチを当てて使っていました。
自分のアプリケーション以外でも役に立つ、gem本体に取り込まれるべき修正だと考えたので、gemのリポジトリにプルリクを送ることにしました。

流れはこんな感じです。

1. 不具合を見つける
2. 手元でgemの修正を試す
3. githubのリポジトリに修正を送る
4. マージされる

# PRがマージされるまで
## 1. 不具合を見つける

LazyHighChartsは、[Highcharts JS](https://www.highcharts.com/)というチャートを描画するJavaScriptライブラリを、

元記事を表示

製品開発サプライチェーンでのライセンス情報授受の仕組みに関わる、「組織間のライセンス情報授受」サブグループの活動ご紹介

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

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

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

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

それら企業・組織間で授受されるソフトウェアには、必ずライセンスの条件など、

元記事を表示

crates.ioにクレートを公開するまで

この記事は[Rust Advent Calendar 2019](https://qiita.com/advent-calendar/2019/rust)の4日目の記事です。

こんにちは、ピクシブの福岡オフィスでエンジニアをしている@tasshiです。
最近はNintendo Switchのリングフィットアドベンチャーがマイブームです。[^1]
[^1]: [リングフィット アドベンチャー | Nintendo Switch | 任天堂](https://www.nintendo.co.jp/ring/)

# 概要

Rustのライブラリクレートを作って、[crates.io](https://crates.io)に公開するまでの手順を紹介します。
基本的にはthe bookの[Publishing a Crate to Crates.io](https://doc.rust-lang.org/book/ch14-02-publishing-to-crates-io.html)に従って進めていきます。[^2]
[^2]: [Publishing a Crate to Crates.

元記事を表示

OSSライセンスに関するFAQサブグループのご紹介

こんにちは。富士通株式会社の大内です。
Advent Calendar 4日目は、FAQサブグループの活動を紹介します。

#活動成果
 FAQサブグループでは、「OSSライセンス関連でよくある誤解」というタイトルのFAQを作成して公開しています。今年の7月に公開したバージョン3では、20個のQAを掲載しています。
 下記URLの「成果物 / Outcomes」から「FAQ」をご参照ください。
  https://wiki.linuxfoundation.org/openchain/jwg_outcomes_page

 今回は、このサブグループを立ち上げたきっかけや、活動内容を紹介したいと思います。

###きっかけ
 私は知財部門に所属しており、OSSに関しては、ライセンス条件を遵守するためのガイドラインや教材等を作成して、社内の開発部門を支援しています。

 ある時、1年間程、一緒に活動していたプロジェクトの営業さんと、立ち話しでライセンスのことを話していたところ、
「製品の使用許諾書には、改変したり、配布したりしてはいけないって書いてあるからできないけど、OSSは禁止って書いて

元記事を表示

OpenChain Japan WG 第12回会合 のご案内

# はじめに
[12/2の今田さんの投稿](https://qiita.com/nobuoimada/items/4c63275232711626540f)でもご説明いただいていましたが、[OpenChain Japan WG](https://wiki.linuxfoundation.org/openchain/openchain-japanese-working-group)では2〜3ヶ月ごとに全体会合を開催しています。
次回会合は **今月12/19(木)13:30〜18:00 東京のNEC本社ビル(JR田町駅 or 都営三田駅)** で開催する予定です。
Advent Calendar 3日目は、その全体会合のご案内をさせていただきます。

# 自己紹介
12/3を担当させていただく島直道です。
もともとは組み込みの開発者だったんですが、2010年頃からオープンソースのライセンスやコンプライアンスに関する仕事に携わり、現在は領域を広げてOSSの管理(プロセス・ライセンス遵守/教育・脆弱性対策等)や、OSSの開発関連ツー

元記事を表示

ようこそOpenChain Japan WGへ!

#はじめに
こんにちは。あるいは、はじめまして。
**OpenChain Japan WGのアドベントカレンダーへようこそ!**
私たちOpenChain Japan WGは、OSS(Open Source Software)のコンプライアンスに関する活動をしている日本のコミュニティです。
これから25日間にわたって、コミュニティのみんなでたくさんのことをお伝えしていきたいと思います。このアドベントカレンダーを通して、私たちの活動やOSSコンプライアンスの重要性について知っていただくとともに、コミュニティのメンバーについても知っていただき、参加したいなと思っていただけるようになれば幸いです。
どうぞよろしくお願いします。

#自己紹介
アドベントカレンダーのトップバッターを務めさせていただきます渡邊歩です。OSSの活用に関するコンサルテーションを生業としています。
好きなライセンスは、[Beerware License](https://spdx.org/licenses/Beerware.html)です。
OSSコンプライアンスについ

元記事を表示

gokart, redshellsによるMLOpsへの第一歩

この記事は[創薬 (dry) Advent Calendar 2019](https://adventar.org/calendars/4106) ([#souyaku2019](https://twitter.com/search?q=%23souyakuAC2019)) の12月2日の記事です。

普段は[Medium](https://medium.com/@yamasaKit)で記事を書いていることが多いですが今回はコードが多いので可読性を考慮して久々にQiitaが書きます。

# 背景

日々ますます難しくなっていく新規医薬品候補化合物創出のために、従来のメドケムによるSARにAIや機械学習を組み合わせることが期待されています。

しかし、機械学習手法は

* データセットの外れ値削除
* 記述子発生&選択
* パラメータチューニング
* 予測性能評価

といったタスクから構成されているパイプライン(ワークフロー)を前から進めるというルーチンワークが必要となってきます。

そしてよりよい予測モデル構築のためには「もう一度データセットの外れ値削除から見直そう」というように、パイ

元記事を表示

GitHub Sponsorsに申し込んでみた

## はじめに

自分は[ゴシップサイトブロッカー](https://github.com/ikemo3/gossip-site-blocker)という個人で開発しているChrome / Firefox拡張機能を作っています。

オープンソースだし結構な人に使われているのでいいよねと思ってGitHub Sponsorsに気軽に申し込んでみました。

## GitHub Sponsorsとは

GitHubが提供している、寄付のためのフレームワークです。
今のところ個人への寄付ができます(今後組織単位での寄付も可能になるようです)。

* [GitHub Sponsors](https://github.com/sponsors)

## GitHub Sponsorsの仕組み

GitHubのリポジトリに以下のボタンがついているのをみた人も多いと思います。

スクリーンショット 2019-12-01 9.38.52.pngCentos7.6でHydraを使う

# 目的
ペネトレーションテスト環境を構築する際に検証ツールの一つとして使い方などの備忘録。
※Centos8からは、パッケージ管理もyumから変更されたので気をつけてください
※また、自分の作成した環境以外への使用は犯罪行為になるため行わないでください。

# 環境
| OS | 7.6 |
|:-:|:-:|:-:|
| epel | 7.11 |
| Hydra | 8.2 |スクリーンショット 2019-12-01 15.11.32.png

# インストール
やることは、以下の2つ

* サードパーティリポジトリのepelのインストール
* Hydraのインストール

## サードパーティリポジトリのepelのインストール
[pkgs.org](https://centos.pkgs.org/7/epel

元記事を表示

TimescaleDBの調査

IoT(Internet of Things) システムでは、各種センサーから、秒以下の周期で取得された、大量の時系列データを取り扱います。このようなデータを保持するシステムとして、時系列データベースは求められています。そこで、時系列データベースの TimescaleDB について、まとめました。
動作環境やライセンスなど基本情報から、対応プログラム言語、可用性、拡張性など機能情報やセキュリティなど掘り下げて、以下のようにまとめました。

# TimescaleDB

TimescaleDB は、時系列データの高速格納と複雑なクエリのために最適化された PostgreSQL をベースとした時系列データベースです。
あらかじめ時系列データベースに保存されたデータに従来の RDBMS のように SQL を使うことが可能です。TimescaleDB は時系列データのために、NoSQL と RDBMS の両方の良さを実現しています。
参照 : [TimescaleDB Overview](https://docs.timescale.com/latest/introduction

元記事を表示

JavaScriptのCookie操作を簡略化したライブラリ、pocket-cookieを作成しました

# pocket-cookie

– `pocket-cookie`はJavaScriptのCookie操作を簡略化したライブラリです。
– リポジトリは[こちら](https://github.com/aclearworld/pocket-cookie)
– ぶっちゃけ著者による[js-cookie](https://github.com/js-cookie/js-cookie)の再実装
– でもあっちにない機能もあるよ!([getWithAutoCast](#getwithautocast))
– tsで書いてるので、当然`d.ts`もパッケージに含まれています

## なぜ作ったか
[js-cookie](https://github.com/js-cookie/js-cookie)がes5で書かれており、babelとか使っていなかったので、なんとなくbabel/typescriptで書き直しました

## インストール

npm

“`bash
$ npm install -S pocket-cookie
“`

or yarn

“`bash

元記事を表示

midPointとは

## はじめに
 近年、情報セキュリティの確保は企業の社会的責任と認知されており、クラウドサービス利用の促進、デバイスの多様化が進む中、各企業でのIT統制の実現は経営課題となりつつあります。IT統制の実現において、適切に利用者のIDを管理することはこれまで以上に重要な位置付けとなっています。

 昨今ではIDを適切に管理する「アイデンティティ管理(Identity Management)」だけでなく、**IDを適切に統制する「IDガバナンス&管理(Identity Governance & Administration)」**という概念が提唱されています。(以下、`IDM`、`IGA`と記載する)
![midpoint-1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/207022/f9a2a7ca-3d67-0237-fd9f-166dc7e1e66d.png)
 OpenStandiaチームがお送りする今年のアドベントカレンダーは、「[midPoint by OpenStandia Advent C

元記事を表示

InfluxDBの調査

IoT(Internet of Things) システムでは、各種センサーから、秒以下の周期で取得された、大量の時系列データを取り扱います。このようなデータを保持するシステムとして、時系列データベースは求められています。そこで、時系列データベースの InfluxDB について、まとめました。
[OSSデータベース調査 NoSQLデータベース編](https://qiita.com/kanegoon/items/5ade64336d389feea4bc)の中で、InfluxDB を扱っていますが、可用性、拡張性、セキュリティなど掘り下げて、以下のようにまとめました。

# InfluxDB

InfluxDBは、時系列データのための高機能データ・ストアです。高スループット格納、データ圧縮、リアルタイム・クエリが可能です。InfluxDBは、Go言語だけで開発されていて、外部依存性がなく、高い書き込み/問い合わせ性能をコマンドインターフェース、HTTP API、クライアントライブラリ(Go, Java, JavaScriptなど)を提供します。
参照 : [InfluxDB 1.X

元記事を表示

midPointで構築するシステムの構成例

# はじめに
midPointアドベントカレンダー3日目はmidPointを利用する場合のID管理システムの構成例をご紹介します。

midPointはDBとしてH2 Databaseを内包しており、単体でも利用可能です。今回のmidPointアドベントカレンダーの中で紹介していくmidPointの機能群を試す程度であれば、フルフィルメント(プロビジョニング)を行う場合は連携するRDBやLDAP等を用意する必要はありますが、基本的に[2日目](https://qiita.com/yoshimi0227/private/0cdc010d02150386619c)の記事を参考にインストールしたもので十分です。

しかし、実際に運用していくうえでは性能や可用性を考慮する必要があります。本記事では、midPointを実際に運用する上での基本的な構成をご紹介します。また、midPointとアクセス管理プロダクトを組み合わせた統合的な認証基盤として運用するような構成もご紹介します。

# 単体利用
上述の通り、midPointは単体でもIDライフサイクル管理やポリシー管理、プロビジョニングといった

元記事を表示

Laravel製のオープンソースWebデータベースを開発した話

# はじめに
この記事ではこんなことを書いていきます。ポエムです。

– Laravel製国産オープンソースWebデータベース「Exment」について
– 機能紹介
– このソリューションが生まれた背景
– オープンソースとして公開することによるメリット
– まとめ

自社開発パッケージを開発し、オープンソースとして公開した経緯や、オープンソースとして公開したことによるメリット、今後の展望などをまとめていきます。

## この記事のターゲット
– Webデータベースを探している方
– 自社開発パッケージのオープンソースに興味がある方(特に、オープンソース提供によるビジネス化を検討されている方)
– Laravelベースのソリューションに興味がある方
– などなど!

# オープンソースWebデータベース「Exment」について
2019年1月に、オープンソースのWebデータベース、「Exment」を公開しました。

![exment_logo_side.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/

元記事を表示

2019/11/09 OSC 2019 Fukuoka & Rakuten Technology Conference 2019 @ Fukuoka 参加メモ

# はじめに
セッションを聞きながら書いていた、個人的メモです。
何かを思い出すきっかけになればと、一応公開しておきます。

# ● OSC Fukuoka 2019
[オープンソースカンファレンス 2019 Fukuoka](https://www.ospn.jp/osc2019-fukuoka/)
Twitter ハッシュタグ: #osc19fk

会場はたくさん人がいたが、やはり九産大ということもあって大学生も多かった。
ただ、Kubernetes などの絶対に単語も聞いたことないだろうというセッションは、社会人が多かった印象。

# 1. OpenSDS
> 面白そうだと思って聞きに行ったが、参加者がほぼほぼ大学生で、講師も大学教授だったため、「OSS とは」 の話が全体の9割を占めていて少し残念。

* ストレージはあるものを使って、割付けて使う
* 今までは、ストレージの種類によってそれぞれ別のコンソールで管理する必要があったが、集中管理できる

# 2. 自宅サーバーを始めてみよう!
> 今はクラウドで簡単にサーバの環境が用意できてしまうが、あえて物理的に

元記事を表示

エンジニアに必要な、有名オープンソースソフトウェアライセンス(OSS License)早見表

# なぜ書いたか
IT業界と関わっていくならば、エンジニアだけでなくOSS Licenseの知識は必要不可欠となります。
**よくわからないから商用ライセンスを利用する** という判断は勿体ないし、サイト毎に意見が乱立してて答えがよくわからないので自分用のメモとしてもこちらに表を用意しました。

# OSS License比較表
***2019年11月8日時点(以降の場合、変わっている可能性があります。)***

念の為ですが、 **開示のタイミングは、頒布時** です。

|License|改変ソースの開示|静的リンクでソース開示|動的リンクでソース開示|Webサービスでソースの開示|別のライセンスを課す|特許|使用権|
|:–:|:–:|:–:|:–:|:–:|:–:|:–:|:–:|
|[LGPLv2.1](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html)|:heavy_check_mark:|:heavy_check_mark:|||:x:|||
|[GPLv2](https://www.gnu.o

元記事を表示

midPointにおける「IDライフサイクル管理」実践編(CSV/画面からの取り込み)

# はじめに

今回は、前回の[記事](https://qiita.com/tama1/items/e4ea135aa43a9222fb71)の続きとして、IDライフサイクル管理を体験するための設定を行って行きたいと思います。

midPoint をインストールした状態では、ユーザー(ID)がまだ登録されていません。初期データとして人事システムなどの他のシステムからアカウントを取り込む必要があります。**実践編**では、すぐに試せるように midPoint に付属しているサンプルを元にCSVファイルからアカウントをまとめて取り込む手順を説明させて頂きます。

また、midPoint は、**GUI(画面)** でユーザーを登録する機能もありますので、後半はそちらも紹介したいと思います。

# 源泉(CSV)からのデータ取り込み

midPoint のユーザーを人事システムなどの**源泉データ**から取り込む場合、midPointに接続しているシステムは**リソース**と呼び、リソースとの接続は**コネクタ**と呼ばれるモジュールで行います。

今回は源泉データであるCSVファイルを

元記事を表示

PowerToysでウインドウをいろいろな並べ方にする

# 何がしたいのか
課題:Windows 10のデフォルト機能では画面を十字型に分けた四分割しかできない。
やりたいこと:もっとたくさん、いろいろな画面分割をしたい

これを実現するのが、**PowerToys**に含まれる機能の一つである、**FancyZones**です。

こんな感じです↓
![これをこう.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/86935/17b0aca0-7083-da07-6091-f97cc9b1180e.png)

# PowerToysとは?
Microsoftがオープンソースとして公開しているツール群。

[窓の杜][1] さんの記事によると、Windows 95やXPの時代に活発に開発されていたものとのこと。

Windows 10が成熟してきたこともあるためか、このPowerToysがOSSとして復活し、少しずつ便利ツールをリリースし始めている。

# インストール
[GitHub][2]経由でインストールします。

https://github.com/

元記事を表示

OTHERカテゴリの最新記事