タグ

ライブラリとプログラミングに関するhamukichi_nbrのブックマーク (7)

  • Semantic Versioningの闇 - knqyf263's blog

    今回も誰も興味ないシリーズなので今まで書いてこなかったのですが、Semantic Versioningに関して幻想を抱いている人がいる可能性があり、そういう方にどうしても現実を知っておいて欲しかったので書きました。3行要約(と可能なら余談)だけでも読んでいただけると幸いです。 3行要約 Semantic Versioning 2.0.0にはバージョン"比較"の定義はあるが、バージョン"制約"(>= 2.1.3みたいなやつ)の定義がない その結果、同じsemver準拠ライブラリでも制約の解釈が異なり結果が真逆になる というかそもそもsemver使ってるエコシステムが少なすぎる 背景 セキュリティアドバイザリでは特定のバージョンが脆弱であることを示すためにバージョン制約が使われることが多いです。例えば >=1.2.0 <1.2.6みたいなやつです。この場合、1.2.5は脆弱だが1.2.6は修正

    Semantic Versioningの闇 - knqyf263's blog
  • 競プロライブラリのためのソフトウェアライセンスについて - うさぎ小屋

    対象読者: 自分の書いた競プロ用ライブラリ1を公開している人2 注意: 法律の専門家でない人間が書いています。内容については保証しません 言いたいこと: 「意味をよく分かってないままとりあえずで MIT License とか書くのやめろ。それなら何も書かない方がましだぞ」 Q. ソフトウェアライセンスとは何ですか? A. 開発者からユーザに対する、「そのソフトウェアを使ってもよい」という許可のことです。 Q. ライセンスがないソフトウェアを使ってはいけないのですか? A. はい。 「ソフトウェアは著作物であり」かつ「他人の著作物を勝手に使ってはいけない」ことから、「他人の書いたソフトウェアを勝手に使ってはいけない」のは明らかです。 ただし、ライセンスについての表示がないとしても、開発者がソフトウェアを他人に使ってもらう意図で公開している場合は、それを使ったとしても問題は起きにくいでしょう。

  • ちょっとしたツールを作るのに便利なPythonライブラリ - Qiita

    この記事は、LIFULL Advent Calendar 2017の2日目の記事です。 おはようございます。新UX開発部の二宮( @ninomiyt )です。 LIFULLではデータ解析や最適化の用途、もしくはAWS Lambda上の簡易ツール実装用途などでPythonがそれなりに普及してきました。数値計算寄りの(いわゆるデータサイエンティスト的な)メンバーも今はPythonを使うことが多く、コード量としては小規模なプロジェクトが多く、簡単なAPIやバッチ処理の実装までやってもらうこともあります。 そのレビューをやっていく中で、「これ使うともっと簡単に実装できるよね」っていうライブラリがいくつかまとまってきたので紹介します。 click コマンドラインパーサー用のライブラリで、デコレータを使って関数を簡単にCLI化できます。 標準ライブラリのargparseがありますが、clickではバリ

    ちょっとしたツールを作るのに便利なPythonライブラリ - Qiita
  • javascriptのライブラリを一覧にしてまとめてみた

    自分用にまとめていたけどせっかくなので公開。 なるべくフロントエンドで完結してライセンスも使いやすいものを選択したつもり。 全部で100個超。 1番目のURLが家 or GitHubのページ、2番目のURLが比較的わかりやすいと思った日語の解説ページになっています。 Node.jsのライブラリもまとめたので合わせて見るといい感じ accounting.js金額のフォーマットを行う カンマ区切りや小数点n桁までなど https://josscrowcroft.github.io/accounting.js/ ace.jsテキストエディタ ハイライト・文字列畳み込み・ショートカットキー 組み込むのが簡単で機能もひと通り揃ってる https://ace.c9.io http://qiita.com/naga3/items/1bc268243f2e8a6514e5 AlertifyJSダイアロ

  • 複素数演算による幾何ライブラリの実装 - ヘクトのメモ

    この記事はMCC Advent Calendar 2016 15日目の記事です.ICPC向けの複素数演算による幾何ライブラリの実装について話します. MCC Advent Calendar 2016 - Adventar 遅れてすいません... 背景 ICPCでは幾何の問題が出てきます. ただし,ICPCでは電子的な事前準備の禁止と標準ライブラリしか使えない制約があります. このため,標準ライブラリ縛りで幾何に必要な関数を一から実装する必要があります. しかし,事前準備なしで幾何に必要な関数を実装するのは大変なことであり,多くのチームは紙媒体でライブラリを用意していると思います. 幾何に必要な関数を一から実装するとコード量も膨大になりがちです. そこで,複素数演算を活用することで実装量を減らすことができます. (ただし,2D限定です.あと,事実だけを淡々と書いていきます.) ベクトル 2次

    複素数演算による幾何ライブラリの実装 - ヘクトのメモ
  • 汎用絵文字ライブラリ Somemoji - ✘╹◡╹✘

    ここ最近絵文字で遊んでいて、Somemoji というライブラリをつくったので知見を共有します。 さまざまな絵文字セット 様々なプラットフォームのために、様々な組織が、様々な絵文字セット (絵文字画像の集合) を提供しています。 Apple emojidex EmojiOne Facebook Google HTC LG Microsoft Mozilla Samsung Twitter 大抵の絵文字セットはUnicodeのEmojiの仕様に則って実装されていて、このコードポイントに対応する絵文字画像はこれ、というように互換性があります。Unicode 6.0, Unicode 7.0, Unicode 8.0, ... とバージョンが増えるに従って定義されるEmojiの数も増えていっているので、それぞれの絵文字セットごとに対応具合はまちまちという状況ではあるものの、よく使う主要なものについ

    汎用絵文字ライブラリ Somemoji - ✘╹◡╹✘
  • 私が選ぶ2015年の”新しい”Pythonモジュール トップ5 | POSTD

    最近、このモジュールをに紹介したところ、そのシンプルさと実用性に驚いていました。 joblib joblibの存在は以前から知ってはいたものの、実際のところはよく理解しておらず、いろいろな機能を寄せ集めたようなモジュールだと思っていました。まあ、その印象は今もあまり変わりませんが、実は非常に便利なモジュールだったのです。私は Flowminder の同僚から再度joblibを勧められて、このモジュールをデータ分析用のコードに幅広く使用しました。では、その機能について紹介しましょう。joblibは大きく分けて、 キャッシング 、 並列化 、 永続化 (データの保存と読み込み)の3つの機能から成ります。実を言うと、私はまだ並列プログラミングの機能は使ったことがないのですが、あとの2つの機能は頻繁に使ってきました。 キャッシング機能とは、シンプルなデコレータを使って、関数を簡単に”メモ化”する

    私が選ぶ2015年の”新しい”Pythonモジュール トップ5 | POSTD
  • 1