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

  • 仕様の変更に強いコードを書きたいよねって話 - Qiita

    この記事は NIJIBOX Advent Calendar2019の13日目の投稿です。 背景 何かしらのロジックを作る際に、仕様変更に強いコードを書きたいぞい!ってエンジニアだったら思いませんか。今の仕様なら動くけど、もし仕様が変わり、そのために関数全書き直しとかしんどみが深すぎます。今回はこのしんどみを少しでも回避できるように柔軟なコードを書くぞい!って記事です。 ページネーションコンポーネントを例にしますが、なぜページネーションなのかというと僕が最近業務でページネーションを作り、かつ仕様の変更に強いコードの大切さを実感したからです。 そもそもページネーションとは ページネーション(pagination)とは、日語で丁付け、ページ割りという意味で、Web制作においては、検索結果一覧など、内容の多いページを複数のWebページに分割し、各ページへのリンクを並べてアクセスしやすくするために

    仕様の変更に強いコードを書きたいよねって話 - Qiita
    versatile
    versatile 2019/12/14
    実は、元のコードのほうが意図が伝わりやすく、読みやすい。でも変更には弱い。残念
  • 筋肉マージは辞めよう - Qiita

    追記2 2019/12/04 21:00 こんなよくわからない記事をご覧いただきありがとうございます。 この事件を起こしたのは1年前で、Gitを使いはじめて1ヶ月のときに下記の事件を起こしてしまっていてとても混乱していたのを当時覚えています。 内容については、rmをしたかもしれないという記事に結果的になったかもしれませんが、私の記憶ではファイルを消した記憶はありません。 ただ、当時作業していたディレクトリもないのでコマンドを確認する手段がないため一番濃厚なrmをしたというのを今回の結論にしました。 曖昧さは申し訳ありません。 また、意見、感想、批評には全て目を通させております。伝わりにくい内容やわかった事実は適宜編集してできるだけ皆さんに伝わるよう善処いたしますのでどうぞよろしくお願いします。 追記2ここまで 追記 2019/12/04 13:00 1.番環境でやらかしちゃった人 Adv

    筋肉マージは辞めよう - Qiita
    versatile
    versatile 2019/12/04
    なにかの隠喩だろうか。性行為を git というシンボルを使って表現してるとか?
  • Go言語を採用して開発をしている会社一覧 - Qiita

    ではRubyが流行り、ほとんどの会社がRubyを採用しています。現在は開発言語は拘らずサービスやリソースに合わせて開発言語・環境を決めますが、一部のエンジニアの中では言語に強いこだわりを持つ方もいるのと、グローバルエンジニアを目指すにあたりRubyは世界で使われていないため、GoPythonを学ぶ方も一定数いらっしゃいます。 最近Go言語の人気も出てきたため、今回は上記のような方やGo言語にチャレンジをしたい方向けにGo言語をメインに取り入れている企業様一覧を紹介します。 ■Gunosy 言わずと知れてキュレーションアプリの先駆者です。解析とアルゴリズムで情報過多な現代において、最適な情報をユーザーに届ける事をミッションとし、情報の非対称さを正す企業です。 メインサービス「グノシー」はDL数2000万を超え、それ以外にもKDDIとの共同開発サービス「ニュースパス」女性向けバーティカル

    Go言語を採用して開発をしている会社一覧 - Qiita
    versatile
    versatile 2019/11/20
    だいたいどこでも多かれ少なかれ書いてるイメージあるけどね
  • 小中高大生にプログラミング教育をしてきて分かったこと - Qiita

    はじめに 私はこれまでにアルバイトやTA (Teaching Assistant)を通して小学生、中学生、高校生、大学生にプログラミング教育をしてきました。また、予備校に通って一浪して大学に入学したという経歴もあります。これらの経験から、「教育とはどうすべきか」「学ぶのに必要なものは何か」「プログラミング学習の特別な点はなにか」などを自分なりに悟りました。 記事ではこれらのことを踏まえながら、「プログラミングが上達しない人の傾向」や「よく陥るエラー」などを紹介しつつ、プログラミング教育者がすべきことのヒントを示せたらいいかなと思います。 ※記事はプログラミング教育のハウツーをまとめたものではありません。 プログラミングが上達しない人の傾向 検索力が低い、検索の仕方を知らない、知ろうとしない 調べる癖がない、分からなかったことを分からないままにしていても生きていられる 説明文を読まない、

    小中高大生にプログラミング教育をしてきて分かったこと - Qiita
    versatile
    versatile 2019/11/18
    その後のツイート「多くの人に読まれる可能性のある文章は、トゲのないような、誤解を生まないような平易な文章にしないといけない。反省だ。」
  • 2020年のフロントエンドマスターになりたければこの9プロジェクトを作れ - Qiita

    以下はSimon Holdorf( dev.to/ Twitter / GitHub )による記事、9 Projects you can do to become a Frontend Master in 2020の日語訳です。 9 Projects you can do to become a Frontend Master in 2020 Introduction あなたがプログラミングの初心者であるか、既に経験豊富な開発者であるかにかかわらず、この業界では、急速な変化に追いつくために新しい概念と言語・フレームワークを学び続けることが必要です。 たとえばFacebookが4年前にオープンソース化したReactは、既に世界中のJavaScript開発者にとって第一の選択肢になっています。 もちろんVueAngularにも多くのフォロアーがついています。 さらにはSvelte、Next

    2020年のフロントエンドマスターになりたければこの9プロジェクトを作れ - Qiita
    versatile
    versatile 2019/11/12
    いやです
  • トップデベロッパーになるために作成したいアプリ8選 - Qiita

    こちらの記事は、Indrek Lasn 氏により2017年 12月に公開された『 The Secret to Being a Top Developer Is Building Things! Here’s a List of Fun Apps to Build! 』の和訳です。 記事は原著者から許可を得た上で記事を公開しています。 著者Twitter https://twitter.com/lasnindrek 少し考えてみてください。あなたがもし健康に関する書籍をたくさん読んだとしても健康になることはありません。実際には、ジムに行き数時間運動をして汗をかかなければ健康は手に入りません。 同じことが開発にも言えます。努力なしに優れたデベロッパーになることはできないのです。 そこで、コーディング力を鍛える8つの素晴らしいプロジェクトを紹介します。 あなたの好きなテクノロジースタックを使っ

    トップデベロッパーになるために作成したいアプリ8選 - Qiita
    versatile
    versatile 2019/11/12
    つきつめると、「CPU設計しろ」にたどりつく道
  • 合法スマートドラッグでエンジニアリング効率を上げるのは夢ではなかった (非合法ドラッグの事なんか全然好きじゃないんだからね!) - Qiita

    合法スマートドラッグでエンジニアリング効率を上げるのは夢ではなかった (非合法ドラッグの事なんか全然好きじゃないんだからね!) 前置き IT関係にはメンタルを病む人が多いので気をつけよう 医者ガチャ次第で入手難易度は変わります 使用感は個人差があります 精神刺激薬 効能・目的 中枢神経を興奮させて作業効率をあげます 種類 コンサータ (メチルフェニデート徐放剤) ADHD治療薬なので「子供の頃から物忘れが激しい」「会議などを忘れてしまい困っている」「過集中してしまい寝を忘れて仕事することがある」などと相談すると処方されます。流通が管理されており処方できる医院は限定されています。私の場合はある病院でストラテラを処方されていましたが全く効果を感じられず、転院した時に相談するとコンサータが処方されました。 低用量から始めて少しずつ増やしていきます。ジェネリックがないので薬代が高いのですが、効果

    合法スマートドラッグでエンジニアリング効率を上げるのは夢ではなかった (非合法ドラッグの事なんか全然好きじゃないんだからね!) - Qiita
    versatile
    versatile 2019/10/26
    以下の理由により、限定公開となっております。 プログラミングと関係ない
  • 宇崎ちゃんは本当に"過度に性的"なのか? - Qiita

    "性的である"とは? ことの発端はとあるツイートでした. I admire the work the Red Cross does, which is why I’m disappointed that @JRCS_PR in Japan would run a campaign using the over-sexualized Uzaki-chan. There’s a time & a place for this stuff. This isn’t it. #women #metoo #kutoo pic.twitter.com/bhds7IPPTq — Unseen Japan @ 超スプーキー (@UnseenJapanSite) October 14, 2019 日赤十字のポスターに「宇崎ちゃんは遊びたい!」というマンガのキャラクターが採用されました.そのポスターの絵柄が"

    宇崎ちゃんは本当に"過度に性的"なのか? - Qiita
    versatile
    versatile 2019/10/23
    あのポスターを見て不快に思う人が本当にいたのか?ってのは確かめたい
  • プログラミングで一番難しいのは「見積もり」だと思う - Qiita

    前書き プログラミングで一番難しいところの一つは、「見積もり」だと私は思う。人から頼まれてプログラミングをする時、必ず最初に聞かれるのが「だいたいどれくらいで終わるか?」だ。厳しいところだと「何日に納品してくれるのか?」を問われる(むしろこれが普通かもしれない)。まっさらな状況から過去の経験を総動員してかかる時間を予想したり、可能な限りタスクに分解して時間を見積ったりするが、いつも不安に駆られる。多くの人も、見積もりに対して困難と不安を感じているのではないかと思われる。見積もりに対する自分の知識と経験を話して他の人にも参考にしてもらいたいと思って記事を書いた。 見積もりという言葉には色々な意味を含むが、今回の記事では「プロダクトをリリースするまでの期間の見積もり」から「頼まれた一つの機能の完成させるための期間の見積もり」までのスコープで話をしたい。 なぜ見積もりをしないといけないのか? 見

    プログラミングで一番難しいのは「見積もり」だと思う - Qiita
    versatile
    versatile 2019/10/10
    そうだね
  • 浮動小数点って何? - Qiita

    件のまとめでは「今の時代になって…」という意見も出てたりしますが、浮動小数点が何か知ってる人にはアタリマエの知識であっても、そうでないと単なる小数データとしか見えなくて、下手すると「計算でズレが出るなんてケシカラン!」という印象を抱くことも少なくないようです。 …来であれば、(大抵の言語に標準で備わっているデータの種類なので)入門書等で知識を身に着けておくものかと思いますが、ちゃんと説明があるか?というとあまり無いようにも思いますので、ざっくり記事にすることにしました。 固定小数点と浮動小数点 一言で言えば、浮動小数点というのは一般の人が想像するような小数ではなく、計算で誤差が発生することを前提とした数値データのことです。 逆に言えば、浮動小数点を使う時は常に近似計算であることを意識し、結果の精度を考えろということでもあります。 それだけだと、何でそんなイケてないことするの? と疑問に思

    浮動小数点って何? - Qiita
    versatile
    versatile 2019/09/16
    なつかしいひびき。次は「2進化10進」
  • AIが三国志を読んだら、孔明が知力100、関羽が武力99、を求められるのか?をガチで考える物語(自然言語処理編) - Qiita

    吉川英治の「三国志」@青空文庫をINPUTとして、 「自然言語処理」と「機械学習」によって上記のように、 武力や知力などのパラメータを推論する。 三国志小説機械学習結果として、 1つの武将を50次元ベクトルに変換し、そのベクトルを、 全く同じ「式」に入れて出てきた値が、上記の表。 このような方法:「小説(自然言語)」⇒「数値化」⇒「式」 によって、武力/知力を求めることが出来るか? という実験&研究が今回のテーマ。 他の成果としては、 以下のような武将名の「演算」が楽しめる。 (これも実際の出力結果より抜粋) 諸葛亮に近い人は誰? ⇒ 姜維、司馬懿、陸遜、周瑜、魏延、馬謖 劉備にとっての関羽は、曹操にとって誰? ⇒ 袁紹、張遼 ※若いころの馴染み的な意味や対比が多いので袁紹? 孫権にとっての魯粛は、劉備にとって誰? ⇒ 司馬徽(水鏡先生)、徐庶 ※賢者を紹介するポジションなのか? 精度の

    AIが三国志を読んだら、孔明が知力100、関羽が武力99、を求められるのか?をガチで考える物語(自然言語処理編) - Qiita
    versatile
    versatile 2019/07/30
    こういうの最高だよ
  • マッチングアプリ強者を体験できる PWA 開発で、Web プッシュ通知を理解しよう - Qiita

    どうも、親からもらったお年玉でマッチングアプリを始めるも、いいね 0 件のまま 3 ヶ月で退会した@sadnessOjisan です。 今日はタイトルの通り、マッチングアプリ強者を体験できる PWA を開発します。具体的には、いいね 通知がたくさん届くアプリを開発します。なおこのアプリは「通知止まらん www」を体験できるアプリを作ったの影響を深く受けました。ただし、これから作る push 通知体験アプリでは、通知の疑似体験ではなく当に通知が届きます シンプルにプッシュを送るだけのコード: https://github.com/sadnessOjisan/simple-push マッチングアプリ っぽいUIがついたコード: https://github.com/sadnessOjisan/simple-push-ui 書いた動機 この記事では Firebase を使った web push

    マッチングアプリ強者を体験できる PWA 開発で、Web プッシュ通知を理解しよう - Qiita
    versatile
    versatile 2019/07/17
    女性でログインしたら体験できるよ
  • vimを使うとき十字キーで移動して、vimmerに殺されるその前に - Qiita

    はじめに あなたがこの記事を読んでいるということは、私はすでにこの世にはいないのでしょう。 最期に、あなたに私の犯した罪を告白します。 そうです、vimでの移動に十字キーを使っていたのです。 この事実を知ったvim教の信者たちが血眼になって私を探しています。 きっと、私は見つかるでしょう。 そしてMacBookの十字キーを全て剥がされ、Logicoolの青軸キーボードで撲殺されるのです。 それほどまでに私の罪は重いということは重々承知しています。 もし、これを読んでいるあなたが私と同じ業を背負っているのであれば今すぐ逃げてください。vimmerはどこにでも潜んでいます。 今日笑顔で話していた同僚が明日にはキーボードで殴りかかってくるかもしれないのです。 だからせめて、私のささやかな抵抗をここに書き記します。 あなたが私と同じ道を辿らないことを願って・・・・ escは海よりも遠いということ

    vimを使うとき十字キーで移動して、vimmerに殺されるその前に - Qiita
    versatile
    versatile 2019/07/05
    普通に十字キーつかえよ・・・。j と k 、どっちが上か、とっさに言えるか?俺は無理だ。俺は emacs 派だ。
  • 初級者向け:データベース選択の必要性について - Qiita

    はじめに 記事では、データベースに求められる要件の多様化についてまずは触れ、なぜ最適なデータベースを選択する必要があるのかについてお伝えします。 こちらはAWS Summit Tokyo 2019 Breakout Session 「【初級】 AWSにおけるデータベース選択指針」を基にした内容となっております。 目的 なぜデータベースの選択が必要なのかを理解すること 各種データベースの特徴と考えられるユースケースを理解すること 対象 データベースの選定を行う方 リレーショナルデータベースを使ったアプリケーション開発経験をお持ちの方 リレーショナルデータベース以外のデータベースの知識はお持ちでない方 アプリケーション要件の多様化 人事システムやCRM、ERPなど、主に社内ユーザ向けのエンタープライズシステムで使われるデータベースといえば、Relational Database(RDB)が主

    初級者向け:データベース選択の必要性について - Qiita
    versatile
    versatile 2019/07/02
    基本 rdb それが使いづらいとき nosql 特殊な用途で document db って感じだ
  • FirebaseだけでiOS版マッチングアプリ「Rose Me」をリリースするまでの話 - Qiita

    限定公開した日付になっていたので再投稿しました泣 普段は京都大学で学生をしており、iOSエンジニアとしての歴も3年目となりました。 NoSQLもFirebaseも全く触ったことのなかった僕が、バックエンド全てFirebaseで完結させた知見を残しておきます。 何を作ったのか ランディングページ https://app-rose.me/ AppStore https://apps.apple.com/us/app/rose-me/id1453049174?l=ja&ls=1 恋愛は試着する時代 という信念のもと、試着感覚のデートを提供するマッチングアプリRose Meを開発しました。 空いている時間に、好きな場所で1時間だけのデートのおさそいをして、ローズを送ることでデートに行きたいという気持ちを伝えることができます。 デート後に、お互いが気になるボタンを押していれば連絡はとりあうことができ

    FirebaseだけでiOS版マッチングアプリ「Rose Me」をリリースするまでの話 - Qiita
    versatile
    versatile 2019/06/22
    マッチングって気軽に入れる業界だっけ
  • swagger.yamlからSwaggerサーバーを自動生成してデプロイする仕組みを作ってみた - Qiita

    概要 swagger.yamlGitHub に push すると CircleCI 経由で Swagger サーバーを Google App Engine (GAE) にデプロイされる仕組みを作ってみました。 swagger-codegen を使うと swagger.yaml から API ドキュメントとモックサーバーを生成することができます。GitHub で swagger-codegen で生成したサーバーサイドのコードを管理して Webhooks を使ったデプロイをする方法もありますが、生成に必要な swagger.yaml だけをソース管理した方が管理しやすいので、その仕組みを作ってみました。 完成物 今回は Swagger Editor で最初に入力されている Petstore のものをそのまま使いました。 API ドキュメント モック API 使用技術 swagger.y

    swagger.yamlからSwaggerサーバーを自動生成してデプロイする仕組みを作ってみた - Qiita
    versatile
    versatile 2019/06/17
    スワッガーか、スワガーか、スウェイガーか、スワッゲルか、スウェイッゲルか、スワジャーか、スワッジャーか、スウェイガーか、スワッジェルか、
  • 運用・保守 インフラエンジニアの時によく使ってたLinuxコマンド - Qiita

    概要 Linuxのコマンドって多種多様にあるけど、 どういうのを知ってたら良いのかという情報があんまり無いなと思ったので、 インフラエンジニアで運用と保守を経験してよく使うコマンドと、どういう時に使ってたかを書いて行こうと思います。 注意 Linuxのディストリビューション(種類)はRHEL、CentOSです。他のディストリビューションだとパスが違ったり使えないコマンドだったりするのでご留意ください。多分そんなに多く無いはず。。 オプションとかは基書いてないので、内容読んで興味あれば調べてみてください。需要あれば実行例もあげますが。。 運用・保守でよく使ってたLinuxコマンド 指定したパスにあるファイル、ディレクトリを拡張子 .tar.gz で一つにまとめられます。 あとは解凍も出来ます。zipみたいなもんです。Linuxサーバで取得した情報をひとまとめにしてローカルに持ってくるという

    運用・保守 インフラエンジニアの時によく使ってたLinuxコマンド - Qiita
    versatile
    versatile 2019/06/17
    こういうのでいいんだよこういうので
  • 早すぎる抽象化の危険性(その抽象化、今のタイミングで大丈夫ですか?) - Qiita

    ※ 色々と誤解を招くというご指摘を受けたためタイトルを変更しました 早すぎる抽象化の危険性 ↓ 早すぎる抽象化の危険性(その抽象化、今のタイミングで大丈夫ですか?) 元の記事の趣旨としては、 抽象化をするな という訳ではなく、 その抽象化は当に今すべきなのか一歩立ち止まって考えろ ということだと思っております。 何か不適切な点などございましたらご指摘頂けますと幸いですm(_ _)m ~~ 以下文 ~~ ちょっと前の記事なのですが とても印象深く 今後も気をつけていきたいと思い 自分なりにまとめてみました。 早すぎる抽象化とは? 問題になっていることを十分に理解する前に 可能性のあるすべてのパターンを把握しきる前に 抽象化をしてしまうこと ※コメントでのご指摘がありましたように 「早すぎる抽象化」はの結果として 「誤った抽象化」に陥ってしまうことが問題であり、 定義を下記のように修正しま

    早すぎる抽象化の危険性(その抽象化、今のタイミングで大丈夫ですか?) - Qiita
    versatile
    versatile 2019/05/13
    抽象化したからって共通化するとは限らん
  • アプリクライアントがリソース指向なサーバAPI設計に期待すること - Qiita

    酔いどれ設計ナイト2019 - connpassの発表資料です。 イベントのテーマ 「DB設計とAP設計をつなぐナニカ」 ということでこの記事では、アプリケーションサーバの利用者であるクライアントの視点から、どういう構造が嬉しいのか語ります。 自己紹介 iOSアプリ設計パターン入門というの前半で、「設計とは何か」という主語の大きい話をしたり、GUIアーキテクチャの40年の歴史をまとめたりしました 題材をSwiftに絞っただけで、内容としては他プラットフォームにも通用する感じのやつなのでよかったらおひとつどうぞ Qiitaだと、お前らがModelと呼ぶアレをなんと呼ぶべきか。近辺の用語(EntityとかVOとかDTOとか)について整理しつつ考える - Qiitaという記事がよく読まれてます 議論の前提 今回の議論にはいくつかの前提があります。 クライアントチームとサーバチームが充分に協調し

    アプリクライアントがリソース指向なサーバAPI設計に期待すること - Qiita
    versatile
    versatile 2019/04/14
    同意できる部分もあるが、電文時代に比べればお互いずいぶん楽になったなぁという感想
  • GCPで永久無料枠を利用してサービスを立ち上げたときにしたことの備忘録 - Qiita

    はじめに 最近GCPWebサービスを立ち上げたので、そのときに実施したことをメモとして残しておきます。 今回はGCEで Debian + Nginx + Railsで環境を作りました。 ドメイン取得以外は終始無料で進めるための努力をしました。 また、今回はRailsアプリケーションを作成することは目的としていませんので、そこについてはあまり触れません。 やったこと GCEでインスタンスを立ち上げる アカウント作成時に貰える無料トライアル枠とは別に、無料で利用できるリソースがあります。 Always Free と呼ばれていて、GCEの場合は以下の要件を満たすインスタンスのみ永久に無料でインスタンスを立てることができます。 リージョンをus-*1から選択する 1つのf1-micro VM インスタンス 30GB以内 の永続ストレージ ※無料対象リージョンはus-*1のみというご指摘を受けまし

    GCPで永久無料枠を利用してサービスを立ち上げたときにしたことの備忘録 - Qiita
    versatile
    versatile 2019/04/01
    4022 ってかかないほうが