スキップしてメイン コンテンツに移動

投稿

3月, 2020の投稿を表示しています

Qiitaが炎上している

Qiitaは色々情報収集に使っていたが、今回の件で使い物にならなくなりそうである。 Qiita、読んだ記事の傾向を合意無しに表示して炎上 批判受け機能停止中 https://www.itmedia.co.jp/news/articles/2003/26/news087.html 2020-3-25、システムの改変で登録ユーザそれぞれの「投稿した記事」「読んだ記事」「LGTMした記事」の割合が本人の同意なく自動的に一般公開された。 利用規約( https://qiita.com/terms )にはプライバシーに関して次のように書かれている。 第6条(プライバシー) 当社は、本サービスを提供するにあたり必要となる最小限の情報をユーザーから取得します。当社は、ユーザーから取得したプライバシー情報の保護に最大限の注意を払います。 第11条(ユーザーに関する情報の利用) 当社は、ユーザーがQiitaを利用することにより得られる情報を用いて当社の広告サービス、当社が本規約外で別途提供するQiita Jobsのサービス等で利用することがあります。なお、利用する情報は関心ワード、関心カテゴリ、行動ログ、アクセスした際の所在都道府県です。(当該情報の活用を望まない場合にはこちらの対応で回避可能です。) (2019年11月27日 改定) 第6条で書かれていることは最小限の情報を収集することが書かれているが、今回集計された読んだ記事はこの最小限の情報に含まれていないと思われるがどういう根拠で使ったのだろうか? 今回のサービスがリリース前は読んだ記事が表示されていないところを見ると、この情報は「サービスに必要となる最小限の情報」とは言えないだろう。無断で収集していたと思われる。 また、今回の情報は個人情報に当たるので無断で公開したことも個人情報保護法にも反していると考えられる。各ユーザIDごとにデータを収集していたことやオプトアウトが別の企業になっていることも炎上している理由だろう。 Qiitaは以前さくらインターネットの批判記事を無断で非公開にしたこともある為、法律についての知識や理解が不足している人が運営しているようだ。 「さくらのレンタルサーバ」批判記事、Qiitaで公開止められ炎上 さくらは「事実確認中」 https://www

smashing を docker で動かしてみる

smashing とは ダッシュボード用のソフト。 [公式]  http://smashing.github.io/smashing/ ruby で開発されていて、カスタマイズするためにruby、CoffeeScript等を用いる。 うまくカスタマイズすればデジタルサイネージとして使える。 dockerhub に公開されているイメージでsmashingを動作させるための方法。 次のイメージを利用する。 visibilityspots/smashing https://hub.docker.com/r/visibilityspots/smashing 次のコマンドでsmashingを起動する。 $ sudo docker run -d -p 8080:3030 visibilityspots/smashing ブラウザで http://localhost:8080/ にアクセスするとダッシュボードが表示される。

プログラミング言語の選択

はじめに 今現在、多くのプログラミング言語が存在します。 古いものだとよく次の3つが挙げられます。 FORTRAN(フォートラン)1954年  https://ja.wikipedia.org/wiki/FORTRAN LISP(リスプ) 1958年  https://ja.wikipedia.org/wiki/LISP COBOL(コボル) 1959年  https://ja.wikipedia.org/wiki/COBOL 機械語やアセンブリ言語を除いても数多くのプログラミング言語があります。 この為、「 どの言語を学ぶのか 」 ということは悩むことではあります。 ここでは、プログラミング言語を選択する考え方を説明します。 ここでは次の4つの視点について考えます。 実装性(作りやすさ) 保守性(修正しやすさ) 移植性(他の機器での動作させやすさ) 継続性(長い期間でも変わらず動作させやすさ) まず、最も大切なことですが、あるプログラミング言語で作ることが出来る処理は他の言語でも作ることが出来ます。特定の言語でしか行えない処理は存在しません。これは、 構造化定理  (または  構造化プログラム定理 )から証明出来ます。 実装性 本来、学ぶプログラミング言語を選ぶ基準としては作りたいプログラムにより選ぶ必要はありません。ただし、行いたい処理に対し作りやすい言語と作りにくい言語はあります。この為、行いたい処理により言語を選ぶことはあります。 この事をここでは 実装性 と呼びます。実装性は、「 行いたい処理 」と「 動作させる環境 」、「 開発環境 」等を考慮します。 保守性 また、プログラムのソースコードは利用している状況に応じてメンテナンスを行いします。原則として全てのプログラムは 不具合 ( バグ と言います)が存在していると考えます。この為、何か問題があると修正を行う必要があります。この修正のしやすさを 保守性 と言います。 移植性 異なるコンピュータで動作させることはよくあります。 この時、コンピュータは同じハードウェアで異なるOSの事もあれば、異なるハードウェアで同じOSの場合等もあります。この様な場合、ほかのコンピュータで動作させる為の労力が少なけれ