タグ

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

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

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

    システムで「性別」の情報を扱う前に知っておくべきこと - Qiita
    lazex
    lazex 2018/04/12
    そんな事考えたこともないなー。データ的にどっちが1だろうがどうでもいいし
  • JavaScriptのクロージャはメモリーリークをちゃんと理解して使おう - Qiita

    はじめに 前にブログで書いた記事なのですが、せっかくなのでQiitaにも投稿します。 脱初級者の壁として君臨しているクロージャ。クロージャの使い方はわかったけど、いろんな記事を見るとクロージャは問題点もあるみたい。それに、そもそもクロージャの使い所がいまいちわかんないと思ってクロージャに再度立ち向かおうと思った次第です。同じような悩みを抱えているデザイナーさん、コーダーさん、フロントエンドエンジニアさんの参考になれば嬉しいです。 クロージャとは とりあえずおさらい & 補足をします。 よく見かけるクロージャの見がこちら。 function closure(initVal){ var count = initVal; var innerFunc = function() { return ++count; } return innerFunc; } var myClosure = clos

    JavaScriptのクロージャはメモリーリークをちゃんと理解して使おう - Qiita
    lazex
    lazex 2018/04/05
    SPAとか常時開いてるチャットソフトみたいなものでもなければ1ページの開いてる時間なんてたいしたことないからあんまり気にしなくてもいいと思う。もっとほかを気にする
  • 工数見積もりのコツ - Qiita

    はじめに 稿では、仕事をする上での作業工数の見積もり方法について説明します。 工数とは何か 工数(こうすう1)というのは、仕事において、あるひとつの作業を完了するまでにかかる総累計時間のことです。情報処理技術者試験に出てくるTAT(ターンアラウンドタイム)とは意味合いが異なります2。 例えば、ある作業に40時間(40H3)かかるとした場合、工数は40時間であるといえます。1日8時間勤務だとした場合、40時間は5人日(にんにち)と表現することができます。さらに、1ヶ月20日勤務だとした場合、0.25人月(にんげつ)と表現することもできます。 一般的に工数の単位は「人日」および「人月」で扱います。 学生時代は工数を気にすることはないですが、ITエンジニアとして会社で働くようになると、かならず工数を意識する必要があります。 なぜ工数を意識する必要があるのか なぜ工数を意識する必要があるのかとい

    工数見積もりのコツ - Qiita
    lazex
    lazex 2018/04/05
    実際の工数ってエンジニアのモチベ上がりそうな難しめなロジックのほうが短く終わって、モチベ上がらない自動化が難しい単純作業の繰り返しのほうが時間かかるんだよね
  • 【新人向け】入社して3年たった僕が後悔していることまとめ - Qiita

    この記事の目的 社会人3年目の僕が後悔していること書いていきます。 新社会人の参考になればと思って書きました。 (普段からQiita読んでる人は頭良い人ばかりなので参考にならないと思います) 筆者の略歴 中堅SIer勤務の3年目(23歳) 【その1】会社に入って満足していた。 会社に入ったらOJTでなんとかなる。自然と技術は身につくものと思っていました。 結論、なんともなりません。やらなければ現状維持どころか、衰える一方です。 僕はというと、アルバイト時代とは比にならない収入に目が眩み、遊んでばかりいました。 3年たった今、周りのエンジニアたちはどんどん高みに行っていて絶望しています。 (Twitterのフォロワーとか見ると焦る) 普段の仕事でやっていない技術についても学んでおけばと後悔しています。 できるエンジニアはとんでもないスピードで成長していきます。 3年間の代償はかなり大きいと痛

    【新人向け】入社して3年たった僕が後悔していることまとめ - Qiita
    lazex
    lazex 2018/04/04
    土日くらい仕事を忘れて好きに遊べばいいと思うよ
  • なぜfor文は禁止なのか?関数型記述のススメ - Qiita

    var totalOfEvenNumberUnder100 = 0; for (var i = 0; i < 100; i++) { if (i % 2 === 0) { totalOfEvenNumberUnder100 += i; } } 命題に、「繰り返す」という文字がないのに、forで繰り返しています。手続き型に慣れたプログラマは、もう違和感を感じなくなってしまっているかもしれませんが、なぜ繰り返すのでしょうか。0から100未満の数字がほしいだけなのに。 また、最初に0で変数を初期化するのも命題にはありません。 さらには、偶数のみを取り出す処理と足す処理が交互に行われることになっています。偶数のみを累計する、という命題とは違う処理になってしまっています。 もちろん答えは一緒ですが、命題とは別の処理になってしまっているともいえます。 推奨 できるだけ処理に名前をつけていきます。 命題

    なぜfor文は禁止なのか?関数型記述のススメ - Qiita
    lazex
    lazex 2018/04/02
    この程度だと下のほうが読みづらいかもしれないけど、複雑な条件を1つのforループで全部やろうとしてると読む時何してるかわからないからmap,filter,reduceなどにわけてそれぞれが1つのことしてるほうが読みやすい
  • 新卒がSIerとして1年働いた結果見えた、深い深い闇の話 - Qiita

    4/1で社会人生活1年目なので、そのまとめとしてなんか書こうと思いました。 とあるそこそこ大手の常駐先でSEをしています。最初に配属された時はJavaの研修を受ける程のド素人でした。 大手あるあるですが、その常駐先では殆どの人がホストコンピュータを日々アセンブラやPL/I、COBOLでプログラミングして運用保守しています。 対して僕は分散と呼ばれる世界に居ます。業務用Webアプリやデスクトップアプリを作り客先に納品したり既存の資産をメンテナンスする事でお賃金を頂いておるわけですが、当然そこにあるのはむかーしむかしにVBや生のJavaで書かれた、錆びついたシステムです。酷い所は未だにWindows2000サーバーが動いてます。一番新しくてStrutsかな。 しかし人間関係に関しては神だったのでなんとか1年働けました。当にいい人しかいない、素晴らしい職場だと思います。なのでブラックとは思いま

    新卒がSIerとして1年働いた結果見えた、深い深い闇の話 - Qiita
    lazex
    lazex 2018/04/01
    消えてたからキャッシュで読んだ。サクラエディタはそのへんのChrome系エディタやIDEより軽いのに高機能で使いやすいからな。AtomやVSCodeとかも使ってるけどメインはサクラ一筋。一時期LinuxでもWineで使ってた
  • 【それでもCSSは破綻する】 CSSの設計手法と書き方を考える - Qiita

    Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationWhat you can do with signing up

    【それでもCSSは破綻する】 CSSの設計手法と書き方を考える - Qiita
    lazex
    lazex 2018/03/31
    スコープのあるwebcomponentで使えば対して気にしなくて良くなった
  • わたしからみたオブジェクト指向プログラミング - Qiita

    はじめに やあやあ、ごきげんよう。🐱です。新人さんも、なんとなーくふんいきでwebフレームワークを触って来たけど、「public static void mainとは🤔」みたいな感じでエンジニアリングしてきた人もこんにちは。Engineerってのは最高にSexyなお仕事だ。おめでとう、おめでとう。 早速だが、オブジェクト指向プログラミング(以下、面倒なのでOOPと記する)というものがあり、今のところ主流ということになってる。お仕事の道具だ。しばらくこいつに付き合うことになると思うから、理解しよう。そのためにこのポエムがある。 OOPを理解するに当たっての当記事の位置付け 私は今から、OOPの鮮烈なイメージを諸賢に提供したい。最低限の裏取りはしたが、厳密性を欠くところも多分にあると思う。正確に言うと、当記事では厳密な定義より鮮烈なイメージを優先する。そうすると何が嬉しいかと言うと、遍く全

    わたしからみたオブジェクト指向プログラミング - Qiita
    lazex
    lazex 2018/03/29
    翻訳かと思ったら翻訳じゃなかった。クラスなんて実体のないものより関数というオブジェクトがオブジェクトを作ってオブジェクトは親となるオブジェクトをプロトタイプにもつjsのほうが何倍もわかりやすく使いやすい
  • C++完全理解ガイド Rev1.4.01 - Qiita

    はじめに C++を完全理解したので完全理解ガイドを書く。 最初に言っておくがタイトルは詐欺で、実際はポエムである。 僕は仕事C++を書いたことはないのでなんか変なことを言っているかも知れない。 ところで無職になったので、普通にC++で職がほしい。 2018年6月から受託で仕事をもらい、毎日C++17を書いています。 2018年9月から雇用され、毎日C++17を書いています。 かなり雑に書いているはずなので、コメント等でどんどんマサカリを投げてほしい。 僕は何者か 工学部を卒業して4年ほど高校の理科教師をやっていたが、現在無職になった人。 工学部を卒業して4年ほど高校の理科教師をやっていた。 最初は良かったのですが、授業に慣れ、このまま自分の成長が止まってしまうのかとなぁと思い、辞めて無職に。 一ヶ月無職を楽しんだあと、某から受託でC++を書く仕事をもらい、C++17を書いている。 主にツ

    C++完全理解ガイド Rev1.4.01 - Qiita
    lazex
    lazex 2018/03/28
    “ごちうさもプリキュアもエンジニアの必須知識らしい”私エンジニアに向いてなかったようだ
  • 【CSS】CSSでうにうにした、まん丸を作ってみる - Qiita

    /* センターに寄せているだけなので、参照しなくてOK */ .bg { height: 100vh; background-color: #000; display: flex; justify-content: center; align-items: center; } .border { width: 400px; height: 400px; border-radius: 50%; border-top: 10px solid #fff; background-color: #fff; animation-name: spin; animation-duration: 3s; animation-iteration-count: infinite; animation-timing-function: linear; } /* 回転するkeyframe */ @keyframes

    【CSS】CSSでうにうにした、まん丸を作ってみる - Qiita
    lazex
    lazex 2018/03/27
    うにうにしたまん丸って表現が面白い
  • ECMAScript 6のArrayに関わる構文を試す - Qiita

    ECMAScript 6 (ECMAScript 2015)のArrayクラスに関わる新しい構文を、いくつかみつくろってご紹介します。網羅的な記事を読んでも、具体的な使い方が思いつかないということはありがちです。そこで、個人的な興味から試してみたコードをご説明してみます。 Array.from()メソッド 静的メソッドArray.from()は、配列型(array-like)あるいは反復可能(iterable)オブジェクトから新しいArrayインスタンスをつくります。文字列も反復可能なオブジェクトのひとつです。 console.log(Array.from('文字列も反復可能')); // ["文", "字", "列", "も", "反", "復", "可", "能"]

    ECMAScript 6のArrayに関わる構文を試す - Qiita
    lazex
    lazex 2018/03/18
    for-ofもconstにできるよ
  • コモナドを使った抽象化の威力をライフゲームで試してみた - Qiita

    class Functor m => Monad m where return :: a -> m a (>>=) :: (a -> m b) -> m a -> m b join :: m (m a) -> m a join = (>>= id) k >>= m = join $ fmap k m extract は return と、extend は >>= と、duplicate は join と、それぞれなんとなく反対になってるような気がしますよね?(m と w も上下反対の対応がありますねw) コモナドの感覚を掴むために具体的な実装を見てみましょう。 -- | List Zipper data Z a = Z [a] a [a] left, right :: Z a -> Z a left (Z (l:ls) c rs) = Z ls l (c:rs) right (Z ls c

    コモナドを使った抽象化の威力をライフゲームで試してみた - Qiita
    lazex
    lazex 2018/03/18
    何故か脳内に浮かび上がったのはクラナド
  • You Don't Need jQuery - Qiita

    注意とお願い この記事の内容はもはや古いです。ここに書いている方法では動かないものをいくつか見つけました。参考にする際は動作をよく確認してから使ってください。 ひとつお願いがあります。「あれ、動かないぞ」というコードを見つけたら是非コメントか編集リクエストで教えてください。解決方法までなくても結構です。「これはもう動かないよ」という印をつけたいのです。 この記事はYou Don't Need jQueryの日語訳と同じ内容です。 先日ひょんなことからYou Don't Need jQueryの日語訳をさせていただきました。著者のCam Songさんからも快諾をいただけたので1、Qiitaでも公開させていただきます。 なお、家の英語の説明は継続的にメンテされているので、この記事の情報は古くなっている可能性があります。 追記 この記事は当初は「もうjQueryは必要ない」というタイトルで

    You Don't Need jQuery - Qiita
    lazex
    lazex 2018/03/17
    jsのコードが長いのは書き方が古いからだな。es2015以降をあんまり活用してない。やろうとすればもっと短く書ける。animationはwebanimationとかある
  • C# で Single Page Web Application が書ける Blazor が凄かった件 - Qiita

    Blazor との出会い 今年2018年2月7日に、自分のソーシャルネットワークのタイムラインに Microsoft のブログ記事が流れてきました。 A new experiment: Browser-based web apps with .NET and Blazor ブラウザベースの .NET による Web アプリフレームワーク、"Blazor" (ブレイザー) だそうです。 これを読んだ当時、自分はこんな感想を持ちました。 「 "ブラウザベースの .NET による Web アプリ" ってなんのこっちゃ? まだ実験段階的なこと書いてるし、急いで試さなくてもいいかー。それよりも、これまで作った Angular 1.x な Web アプリの Angular5 への移行を急がなきゃ...」 ...ということで、何度も import 文を書く苦行や、*[(xyz)] みたいな呪文マークアッ

    C# で Single Page Web Application が書ける Blazor が凄かった件 - Qiita
    lazex
    lazex 2018/03/16
    おもしろそう。言語はjsが至高だと思ってるけど、無駄な書き直しは減らしたいしwaが便利になってくれるといいね
  • アクセス解析担当が必ずやってるGoogleAnalytics設定のまとめ【2018年版】 - Qiita

    この記事について 「GoogleAnalyticsの設定、どうしたらいいんだっけ...」と迷ったときのためのレファレンスです。 新規のサイトを立ち上げる時・GAの再設計がしたくなった時に参照してください。 のちのちアクセス解析しつつ改善していくために、できるだけ汎用的にデータを拾っておく 可能な限り、非コーダーができる作業で完結させる というのをテーマにまとめました。 STEP 0: GTM・GAのアカウントを取得 Googleのアカウントがあれば、驚くほど簡単に取得できます。 GoogleAnalyticsのアカウントを作る GoogleTagManagerのアカウントを作る 基的には、GoogleTagManager(以下、GTM)経由でGoogleAnalytics(以下、GA)を導入します。GTMの使い勝手がよいのはもちろん、GAをカスタマイズしたくなったときに、コーダーの手を借

    アクセス解析担当が必ずやってるGoogleAnalytics設定のまとめ【2018年版】 - Qiita
    lazex
    lazex 2018/03/13
    analyticsなんてページのアクセス数だけ分かれば十分だからデフォのままって使い方だからよくわからない世界
  • 圧縮されたtarの展開方法の変遷 - Qiita

    私がやっていた圧縮されたtarの展開の仕方を書いてみる。 ~1992年 gzipが出る前。圧縮に使っていたのはcompressで圧縮したtarの拡張子はtar.Z。ファイルを伸長して標準出力に出力するzcatがあり、tar.Zを展開するときは

    圧縮されたtarの展開方法の変遷 - Qiita
    lazex
    lazex 2018/03/09
    xfしか使ったことないけど昔は大変だったんだなー
  • ユーザのブラウザで起きた JavaScript のエラーを収集する - Qiita

    なぜエラーを収集するのか バグ探し バグを見つけて潰していくため ユーザからのバグ報告の補助 ユーザに報告の負担をかけないため エラーを取得する 取得タイミング window.onerror Promise のエラー フレームワーク毎の特定のタイミング window.onerror window.onerror にメソッドを登録しておくことでエラー発生時にそのメソッドが呼ばれる。try-catch でハンドリングしていないエラーが流れてくる。

    ユーザのブラウザで起きた JavaScript のエラーを収集する - Qiita
    lazex
    lazex 2018/03/09
    昔これやろうとしたけど、一般公開まで行ったら基本バグなんてそうないし、ユーザのextensionの影響とか(自分も含めて)devtoolsでページ内をあれこれ書き換える人がいるから無意味なデータがいっぱい送られてくる
  • JavaScript 界隈の用語まとめ - Qiita

    最近、格的に JavaScript をやろうかな、みたいなノリが出てきたので界隈の意味不明な用語をまとめてみました。 用語 説明 今使う?

    JavaScript 界隈の用語まとめ - Qiita
    lazex
    lazex 2018/03/04
    ブコメtypescrpt好き多すぎだな。静的型付けすごい好きな人でもなければわざわざそんなの使わず生jsで十分なのに
  • 「暗号化」の反対は「復号化」じゃなくて「復号」なんだよ - Qiita

    言いたいことはタイトルで全部言ってしまってますが、以下細かい内容を。 scivolaさんのQiita などの技術系の記事で残念に思うポイントに触発されて、普段から思っていたことを書いてみました。 まず「暗号化」とは何か。これを説明する時には以下のような図が使われます。 暗号化 ----------------------------------> 平文 暗号 <---------------------------------- ??? 元になる「平文」があって、それを「暗号」「にする」から「暗号化」ですね。 じゃあ「暗号化」の逆の操作をする、上の図の「???」の部分はなんと言えばいいのでしょうか。 平文にするから「平文化」? 流石にこんな言い方をする人は見たことないですね。 元になる単語が「encrypt / decrypt」で"en"と"de"が対になるためか、「復号」という訳語が当て

    「暗号化」の反対は「復号化」じゃなくて「復号」なんだよ - Qiita
    lazex
    lazex 2018/03/02
    昔セキュリティ系の教授がすごく強調していってたなぁ
  • 2018年のフロントエンドエンジニアならこの程度は知ってて当然だよな? - Qiita

    可及的速やかにReactが絶滅しますように。 以下はFront-End Developer Handbook 2018の第三部、Front-end Developer Toolsからリンクされているツールと、その簡単な紹介です。 ドキュメントツール 開発者向けドキュメント、APIリファレンス Dash 200以上のAPIリファレンス、100以上のチートシートを一括ダウンロードできる。有料、Mac用。 DevDocs 200以上のライブラリをオンラインで検索できる。無料。 Velocity 中身はDashと同じ。有料、Windows用。 Zeal WindowsLinuxMacOS用各種揃っている無料のオフラインドキュメント。 チートシート devhints.io JavaScriptCSSGovim等のショートカット、書式などチートシート。字が薄くて見辛い。 SEOツール Key

    2018年のフロントエンドエンジニアならこの程度は知ってて当然だよな? - Qiita
    lazex
    lazex 2018/03/02
    情報は多すぎてもダメってことがよくわかる。半分も行かないうちに読む気なくした