タグ

ブックマーク / qiita.com (145)

  • システムで「性別」の情報を扱う前に知っておくべきこと - Qiita

    0は性別に関する情報が得られない場合に使います。性別に関する情報はあるのだけど1とも2とも言えない場合は9を使います。要は「0でもなくて1でも2でもなければ9」です。 これを知っていればMだとかFだとかを議論をせずに済みますね。 国際規格に従うべき理由 国際規格に従うことは色々と利点があります。まず、どうしてそういうコード体系にしたのかを説明しやすいです。また多言語対応する際も規格通りに書けば伝わるはずなので迷わずに済みます。別システムへのデータの移行や、異なるシステム間でのデータの統合もコード体系が同じならラクラクです。もしかしたら別のプロジェクトで書いたコードをそのまま使いまわせるかもしれません。技術者に対するトレーニングも不要です。 対して、わざわざ国際規格に反する実装をする場合は上記のメリットがそのままひっくり返ってデメリットになりはしますが、もちろん、それなりの理由があれば規格と

    システムで「性別」の情報を扱う前に知っておくべきこと - Qiita
    cignoir
    cignoir 2018/04/13
  • 次世代監視の大本命! Prometheus を実運用してみた - Qiita

    こんにちは!freeeでインフラゾンビをやっている @sugitak です。ゲームではレベルを上げて物理で殴る派です。 freee ではたまにインフラエンジニアの数が減るのですが、その減ったインフラエンジニアはインフラゾンビへと進化し、社内を闊歩します。インフラゾンビは主に開発チームに所属して、アプリっぽいインフラの仕事をインフラからアプリ側へと持っていきます。デプロイとか、Dockerとか、Jenkinsとかの、いわゆる DevOps 系のところですね。こうすることで開発者は手を出せるものの自由度が増えるし、インフラはより来のインフラとして純度を上げていける、 so, win-win ってわけです。 さて、そんなわけで監視です。freee Engineers Advent Calendar 2016の9日目の記事として、 Prometheus による監視が最高なのでみんなもっと使おうと

    次世代監視の大本命! Prometheus を実運用してみた - Qiita
    cignoir
    cignoir 2018/04/11
  • SSDで道路の損傷を検出した - Qiita

    はじめに SSD(Single Shot Multibox Detector)で道路の損傷を検出しました. 作業環境等に関しては株式会社パソナテックさんにご協力いただきました. なお成果物は学習済みモデルとともにGitHubに公開されています. 不具合もまだ複数あると思いますので,気軽にissueを立てていただければと思います. やったことを最初から文章で説明するより,まずは成果物を見ていただいたほうが早いと思うので,デモをお見せします. このように,横断歩道やセンターラインのかすれ,陥没,ひび割れなどを検出することができます. 道路の損傷を検出する方法はいろいろありますが,画像認識を用いるならば,車で移動しながらスマホや車載カメラでリアルタイムに検出できると便利です. このような認識手法を採用するのであれば,デバイスの制約により,計算量が小さいモデルが求められます. 道路の損傷を物体認識

    SSDで道路の損傷を検出した - Qiita
    cignoir
    cignoir 2018/04/11
  • Impostor Syndrome(詐欺師症候群)とQiitaについて - Qiita

    dev.to を見ていたら、 #impostorsyndrome というタグがあり、 #shecoded でもけっこうみんな Impostor Syndrome に苦しんでいたという記述がありました。 調べてみたら、 Impostor Syndrome (詐欺師症候群) に陥っている方は多いんじゃないかと思い、というか自分がまさに当てはまった気がしたので、エンジニアの視点でまとめてみます。 Impostor Syndrome とは wikipedia によると インポスター症候群またはインポスター・シンドローム(英: Impostor syndrome) は、自分の達成を内面的に肯定できず、自分は詐欺師であると感じる傾向であり、一般的には、社会的に成功した人たちの中に多く見られる。 能力の高い人々は、自分が偽物であると人から思われたくないがために、熱心に働く傾向がある。その勤勉さの結果、人

    Impostor Syndrome(詐欺師症候群)とQiitaについて - Qiita
    cignoir
    cignoir 2018/03/12
  • Rails のアーキテクチャ設計を考える - Qiita

    はじめに ここ一年くらいずっと Rails の何がダメでどうすれば良くなるのかを考えていました。 Rails を使ってそれなりの規模のアプリケーションを作ったことがある人なら、メンテナンスのしづらさを感じたことがあるのではないでしょうか。 メンテナンスの問題は Rails 以外の開発でも発生することですが、実のところメンテナンスしやすいアプリケーションはどうすれば作れるのでしょうか? この難問に対して私も答えを持っていませんが、考え続けています。 少なくとも、 Rails Way や Rails Tutorial をベースにしたアプリケーション開発は、業務で用いるには簡単すぎるように思います。 「レールに乗る」という言葉がありますが、私は考え方を変えました。 Rails は規模の大きいフレームワークですが、土台に過ぎません。 Rails Way の設計方針は小規模な開発では有効ですが、規模

    Rails のアーキテクチャ設計を考える - Qiita
    cignoir
    cignoir 2018/03/12
  • さくらVPSで利用していたmemcachedがリフレクションDDoS攻撃発信の踏み台として悪用された件 - Qiita

    突如メールが・・・ セキュリティ案件 memcached のアクセス制御に関する注意喚起 https://www.jpcert.or.jp/at/2018/at180009.html memcahcedの設定をデフォルトで使用していたため、リッスンするIPに制限がかかっておらず外部からアクセス可能になってたみたい。 なぜ外部からアクセス可能だとDDoS攻撃発信の踏み台になるかはこちらが詳しいです。(2018/03/02追記) 簡単にいうと下記。 UDP通信を使用している場合送信元偽装が簡単 送信元をDDoS攻撃したいIPに偽装して大量のデータをGETする操作を実施 偽装したIPに大量のトラフィックが集中する 参考(2018/03/02追記) memcached を悪用したDDoS攻撃についてまとめてみた http://d.hatena.ne.jp/Kango/20180301/151993

    さくらVPSで利用していたmemcachedがリフレクションDDoS攻撃発信の踏み台として悪用された件 - Qiita
    cignoir
    cignoir 2018/03/01
  • [Unity]シンプルな音ゲーの作り方 part1 譜面作成 - Qiita

    2. 押したタイミングをCSVに保存 書き込む内容が決まったので,実際に保存していきます. これはさらに以下の手順に分けられます. タイミング保存への道 ボタンを押したら音楽を再生する機能を作成 CSVに書き込むスクリプトを作成 キーを押した時間と,押したキーを取得するスクリプトを作成 1. ボタンを押したら音楽を再生する機能を作成 まずはプロジェクトを作成し,シーンを保存します. ここではNotesTimingMakeSceneという名前で作りました. 次にUIを以下のように,テキストとボタンを作成します. このボタンが押されたら音楽を再生するようにします. NotesTimingMaker.csというスクリプトを作成しましょう. using UnityEngine; using System.Collections; public class NotesTimingMaker : Mo

    [Unity]シンプルな音ゲーの作り方 part1 譜面作成 - Qiita
    cignoir
    cignoir 2018/02/19
  • 軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita

    ざっくり言うと リスト構造のデータに対してランダムアクセスはしちゃだめだぞ。お兄さんとの約束だ! 発端 数年前に他部署の支援で作ったJavaのシステムに、ちょっとデカめのデータを突っ込んだらありえないほど遅いので助けてくれ、と連絡が入った。 まぁクエリとかインデックスをちょっと見れば直るっしょ・・・と鼻をほじりながら支援に向かった。 処理内容 遅い部分の処理は以下のようなものであった。 処理対象のデータをListで受け取る。 それをforループで1件ずつ前処理する。 処理結果をオブジェクトに格納し、ORマッパーでDBにINSERTする。 これだけ? そう、これだけだ。並列処理なんて高級なことはもちろんやってない。 インフラ調査 処理中のサーバのようすを調査する。今回のインフラは典型的な3層3サーバ構成。 WEBサーバはなにもかもが余裕。 APサーバではCPUを1つ使い切っている。 14コア

    軽い気持ちでLinkedListを使ったら休出する羽目になった話 - Qiita
    cignoir
    cignoir 2018/02/19
  • エンジニア歴20数年の私が、設計書を書く際に心がけていること - Qiita

    はじめに 時の経つのは早いもので、私がIT業界に身を置いて四半世紀になってしまいました。 その間、膨大な数の「設計書(仕様書)」を書いて来ましたが、未だに悩み・迷いは尽きません。 それでも、亀の甲より年の劫とも申しますので、私なりの経験則を「個人」と「チーム」の両観点でまとめてみました。 稿のテーマは、「主に設計書を想定した、開発ドキュメントの書き方」です。 稿で前提とする設計書は、ExcelやWordで書かれた、フォーマルな(≒納品物になりえる)設計文書、です。 したがって、自社サービス開発よりも受託開発、アジャイルよりもウォーターフォール、を前提として読んでいただいた方が、しっくりくると思われます。 <ご注意> 稿の内容は執筆者独自の見解であり、所属企業における立場、戦略、意見を代表するものではありません。 個人的に心がけていること 当該文書の作成目的や位置付けを冒頭に記載する

    エンジニア歴20数年の私が、設計書を書く際に心がけていること - Qiita
    cignoir
    cignoir 2018/02/15
  • あの日見たYARNのお仕事を僕達はまだ知らない。 - Qiita

    あなたが実行したジョブのこと考えてない間、ずっとYARNがジョブのこと考えててくれてたんだ みなさんはYARNの存在をどれだけ気づいてあげられているだろうか。 よくSparkと一緒にYARNって単語はよくみるよねー 知ってる知ってる、よく図とかでMapReduceとかの下にいるやつだよね? クラスタのリソースを管理してるんでしょ、たしか? いや、間違ってはいないし、やっていることをあたっているんだけど、実はいつも頑張ってくれているYARNのことをもっと理解してあげてもいいじゃないか! ただ、 いざ調べてみると日語の情報が少ない なんかざっくりリソース管理を行うぐらいしか書いてない もしくはいきなり細かい話から始まってよくわからない というのがちまたの現状なので、聖なる夜に暇を持て余した私が、いつも頑張ってるYARNのお仕事を紹介しようと思います。 YARNの素晴らしさを熱く語りたいところ

    あの日見たYARNのお仕事を僕達はまだ知らない。 - Qiita
    cignoir
    cignoir 2018/02/08
  • 今さらProtocol Buffersと、手に馴染む道具の話 - Qiita

    Protocol Buffersは別に新しい技術ではない。同時にそれは、未だ知られざる、未だに可能性を秘めた先端のソフトウェア技術基盤である。 新しくないのは事実で、GoogleがProtocol Buffersをオープンソース化したのは2008年のことだし、オープンソース化前に社内で使われ出したのは更に昔に遡るだろう。たぶん。 デザイン的にもJSON対応は後付けで、将来JSONが隆盛を極めることなんか全然想定していなかったのが透けて見えて古くさい。 しかし、同時にどうも情報に聡い人であってもなかなかその真価を実感し得ておらず、ある意味で未知の技術であるらしい。ならば、Protobuf (Protocol Buffersの略)を解説した文書は幾多あれども、それに1を加えるのもやぶさかではない。 Protocol Buffersとは Protobufはスキーマ言語だ! 一般的にはProtob

    今さらProtocol Buffersと、手に馴染む道具の話 - Qiita
    cignoir
    cignoir 2018/02/08
  • 【今日からできる】コミットメッセージに 「プレフィックス」 をつけるだけで、開発効率が上がった話 - Qiita

    はじめに 今まで commit message を「なんとなく」書いていたが、プレフィックスをつけることで、コミットメッセージに対する考え方が変わった。 そのおかげで開発効率が上がったので、その内容をシェア。 プレフィックスをつけるってどういうこと? 以下のようにコミットメッセージの先頭に、なんらかの文字をつけること。 feat: xxx という機能を追加 fix: yyy で発生するバグを修正 refactor: zzz の機能をリファクタ のように feat, fix, refactor などがプレフィックスです。 最近 OSS の Contribution Guide などでよく見かけます。 導入したプレフィックスルール Angular.js/DEVELOPERS.md Angular.js の開発者ガイドに書いてあるメッセージを参考にしました。 以前のコミットメッセージ(例 ちなみ

    【今日からできる】コミットメッセージに 「プレフィックス」 をつけるだけで、開発効率が上がった話 - Qiita
    cignoir
    cignoir 2018/01/24
  • イチからDiscord Bot 。for Ruby - Qiita

    ※基的なCUI操作などは説明がないです。 DiscordのBotで検索しても、みんなPythonの話しかしてない。 あまりに情報が少なくて辛かったので、今から作ろうとしている人に、残していきます。 OS:windows10 (CentOS,Raspbian) 環境:Ruby2.3.3 Discordrbの紹介 discordでbotを作るためのgem ...だけだと味気ないので少々詳しく。 discordには、外部からテキストチャット、ボイスチャットなどにアクセスできるAPIがあります。 discordrbはそれらのAPIrubyらしくいじれるようにしたラッパーです。GitHubのwikiやClassListが充実しているので、初心者でも(英語を)頑張れば使えると思います。 Discordrbのインストール Discordrbはgemに登録されているので、かんたんに導入できます。 $

    イチからDiscord Bot 。for Ruby - Qiita
    cignoir
    cignoir 2018/01/22
  • 無料のはずのGCEのf1-microインスタンスで11月だけ1円課金された理由 - Qiita

    2017年3月からGCEのf1-microインスタンスが一人1台無料になりました。私自身3月からずっと起動したままで運用してきて10月まで無料で使わせてもらっていたのですが、下記の通り11月は1円を請求されていました。 GCEのf1-microインスタンスは1ヶ月分(月の日数に応じて720時間もしくは744時間)のCPU利用が無料になるのですが、11月は721時間使っていたというのです。 課金された理由はサマータイムの終了 いい大人であれば1円くらい仕方ないなと思うところでしょうが、私は理由が気になって課金ログを確認してみました。すると、11/5だけ25時間分のCPUを使っていることがわかりました。アメリカの11月第1日曜日はサマータイム終了の日なので、実際に1日が25時間あるのです。 これがGoogleさんの意図通りかは不明ですが、おそらく考え漏れなんじゃないでしょうか。サマータイムって

    無料のはずのGCEのf1-microインスタンスで11月だけ1円課金された理由 - Qiita
    cignoir
    cignoir 2017/12/29
  • 2018 年は Hyperapp の年だ - Qiita

    この投稿は Increments Advent Calendar 2017 の14日目の記事だよ。Hyperapp という JavaScript ビューライブラリを自作しているので、その説明と作った理由について話す。 Hyperapp ができるまでのプロセスや、どんな価値観で作ったかなどを書く。新しいフレームワークを作る時の参考になれば嬉しい。 Hyperapp とは? Web アプリのフロントエンドJavaScript ライブラリ。React, Preact, Vue といった代表的なものよりもずっと小さく、1 KB という超軽量サイズ。他のライブラリに依存することなく使えて、さらにスピードもある Elmアーキテクチャーに基づいてて、アプリケーション設計はElmReact、Reduxと似てるけど、ボイラープレートは少ないし、TypeScriptにも対応して、とにかくシンプル。 El

    2018 年は Hyperapp の年だ - Qiita
    cignoir
    cignoir 2017/12/28
  • CSS Grid Layout Generator でレイアウト用CSSを生成する - Qiita

    最近作ってたものの紹介です。だいたいできたんで公開します。 これは何 ワークフローによりますが、CSS書く際に最初に決めるのは大まかなレイアウト構成だと思います。 で、最近はコンポーネント志向でReactComponentとか書いていくと、各領域が何を占めるかみたいな設計に便利なのが、CSS Grid Layout ですね。たぶんそう。 これからのグリッドレイアウト 第1回 Grid Layout Moduleの概要 CSS Grid だと何がいいかというと、やたらプラガブルなんで、機械的に吐き出しても汚くならない点です。というわけで作りました。 レイアウト設計、毎度結構だるくて、僕みたいなあんまCSS書きたがらないエンジニアだと、GUIでポチポチやって、それっぽいCSSを吐き出してくれるといいな、なんて思ったりしていました。 ただ、自分はこれを作る過程で Grid Layout に対して

    CSS Grid Layout Generator でレイアウト用CSSを生成する - Qiita
    cignoir
    cignoir 2017/12/26
  • Electron+React+Reduxで作るレトロなエクスプローラのハンズオン(チュートリアル) - Qiita

    はじめに 前提知識ゼロからReact、Redux、Electronの組み合わせでレトロなエクスプローラーを作って、その仕組みを知るハンズオンです。 プロジェクト作成から、モジュールのフォルダ構成の決定、実際のコードを書き、ビルドして実行するまでを長々と解説します。 目的 ReactやReduxって何?、Fluxとか敷居高そう、解説記事を読んでもよくわからないし、難しいアプリケーションやそのソースコードは重たい。 手っ取り早く動く簡単なサンプル作って動きや書き方を知りたい!という方に向けて作ったものです。 あらかじめお断りしますが、記事単体で完結させたいため長いです。しかしほとんどコードです。 解説は、今回の範囲だけで別の記事がたくさん書けそうなので、整理が終わってから(来週中には)作成したいと思います。 あいさつ 01、02、03は犠牲となったのだ。04以降の犠牲にな。 この記事を読んでで

    Electron+React+Reduxで作るレトロなエクスプローラのハンズオン(チュートリアル) - Qiita
    cignoir
    cignoir 2017/12/26
  • お手軽に静的サイトを構築する - Qiita

    後はcontent以下のディレクトリにMarkdown形式でファイルを置いていったりするだけです。 Themeも用意されており、簡単に導入できます。 hugoの導入は以下が詳しいです。 Hugo | Quick Start サイトを生成する hugo コマンドを実行することで、public以下に生成されます。 S3に設置する public以下に生成されたサイトを設置します。 パブリックアクセスを許可したS3 bucketを設置し、public以下をコピーします。 その後、プロパティからStatic website hostingを有効にします。 東京リージョンに設置した場合、以下のbucket名を置き換えることでアクセス出来るはずです。 https://[bucket_name].s3-website-ap-northeast-1.amazonaws.com CloudFrontを通す C

    お手軽に静的サイトを構築する - Qiita
    cignoir
    cignoir 2017/12/22
  • Unityで小規模なソシャゲを開発&運営してみて感じた10のコト - Qiita

    弊社は、他社さんとタッグを組んで小規模なソシャゲの開発&運用を行ってきました。 その中で、開発者ながらも提案・開発・運用まで全てのフェーズに関わらせていただき、色々知見が溜まってきましたので、その一部を共有します。 1. ソシャゲはユーザ層を幅広く意識する必要がある ソシャゲの大きな特徴のひとつとして、「ユーザが継続的に遊ぶ」という点があります。 ソーシャル性(人との関わり)がある コンテンツを継続投入する ことで発生するワケですが、このとき注意しないといけないのがユーザ層についてです。 通常のゲームであれば「ライトなユーザ」か「ヘビー(マニアック)なユーザ」のいずれかターゲットを絞ることも多いかと思います。 ゲームクリアまで遊んでもらうことを目的とするのであればターゲットを絞っちゃった方がコンセプトがハッキリして良いですが、ソシャゲは継続的に遊んでもらいたいがゆえに、「ライトな層を取り込

    Unityで小規模なソシャゲを開発&運営してみて感じた10のコト - Qiita
    cignoir
    cignoir 2017/12/22
  • 美術の人が考える Haskell - Qiita

    sketchで作成しました。 普段日銭を稼ぐためwebデザインをしておりますが業は油絵です。 Haskell初心者なので間違っている部分があるかもしれません。 数学的なこと・エンジニア的な部分は当に難しく、単語ひとつ理解するのに非常に時間がかかります。 アーティストとエンジニアは似ている部分が数多く見受けられます。 美しいものを大切にする気持ちがとても強いところ。 何度も試行錯誤を繰り返し、形を研ぎ澄ましていくところ。 世の中の「既存」から外れた部分に価値を見出すところ。 これからも、Haskellをゆっくりとですが気長に勉強していきたいと思います。 美術もHaskellも、どちらも美しいです。 以上で 美術の人が考えるHaskell を終わります。

    美術の人が考える Haskell - Qiita
    cignoir
    cignoir 2017/12/22