タグ

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

  • 僕は、なぜ絵文字の長さが、直感に反するのか理解したい...!! - Qiita

    対象者 UnicodeやUTF-16について、よくわかってない人 -> ここから "😀".split("")で文字化けする理由がわからない人 -> ここから [..."👨‍👩‍👧"].lengthが5になる理由がわからない人 -> ここから 文字コードについてもう一度 文字コードは以下の二つで構成されています 符号化文字集合: 文字と、その文字の位置を示す一意の番号の集合 文字符号化方式: 文字に振られた番号をバイト表現にエンコードする方法 符号化文字集合 符号化文字集合は、 文字 その文字の位置を示す一意の番号 この二つの組み合わせの集合のことを指します。 例えばASCIIでは 8bit(128通り) でラテン文字や英数字を表現しています。 しかしASCIIには日語などの非英語圏の文字が収録されていません。 そのため、日語を収録したShift-JISやアジア圏の文字を収録した

    僕は、なぜ絵文字の長さが、直感に反するのか理解したい...!! - Qiita
  • MySQL データベースの負荷対策/パフォーマンスチューニング備忘録 インデックスの基礎〜実践 - Qiita

    TL;DR この記事に書いた事 二分探索木のお話(前提知識) MySQLのInnoDBで利用されているB+木インデックスの構造と特性 (前提知識) MySQLのClusteredIndex,SecondaryIndexについて(前提知識) カーディナリティについて(前提知識) 実際の負荷対策 検出編 スロークエリ 検出編 その他のクエリ割り出しいろいろ クエリ・インデックスの最適化 explainの使い方と詳細 ケース別実践 単純にインデックスがあたっていないケース カーディナリティが低いインデックスが使われているケース 部分的にしかインデックス/複合インデックスがあたっていないケース 複合インデックスの順序誤りでインデックスが適用できていないケース 複合インデックスの最初がrange検索のケース ソートにインデックスが適用できていないケース ソートにインデックスが適用できていないケース(

    MySQL データベースの負荷対策/パフォーマンスチューニング備忘録 インデックスの基礎〜実践 - Qiita
  • Envoy と Kubernetes で始める Progressive Delivery - Qiita

    記事は 2020/01/08 に開催された Envoy Meetup Tokyo #1の LT スライド兼補足資料です。 原則として、スライドモードでファーストビューに入るものはスライドとして、下にスクロールして表示される部分は補足資料です。 Progressive Delivery とは Continuous Delivery ++ 実装はたいてい Canary Release + Canary Analysis + Automated Rollback "Progressive Delivery is the next step after Continuos Delivery, where new versions are deployed to subset of users and are evaluated in terms of correctness and perfor

    Envoy と Kubernetes で始める Progressive Delivery - Qiita
  • 高校生がリアルタイム投票サイトを公開したらいきなり1万PVを記録した話 - Qiita

    今回は高校生の私たちが公開した投票サイトが三日で1万PVを記録したので、その経緯をサイトの紹介も含め、全て公開します。 qiitaで後日談を書きましたので、よかったらお読みください リンクはこちらです サイトの内容 名前はAICEVOTE(アイスボート) リンクはこちら ----> aicevote.com(大量アクセスで現在サーバーが不安定な状況です。ご了承ください。) このサイトを一言で言うとこんな感じです。 "投票用紙を氷に見立てた次世代のリアルタイム投票サイト" AICEVOTEとは 普通の投票とAICEVOTE(アイスボート)の違い 普通の投票 普通の投票では、投票箱A/Bに最終的に投票された票の数の比で結果が決まります AICEVOTE AICEVOTEでは投票用紙の代わりに氷を投票します。 それぞれの投票箱の底は網目になっています 時間が経てばあなたが投票した氷は少しずつ溶け

    高校生がリアルタイム投票サイトを公開したらいきなり1万PVを記録した話 - Qiita
  • 【全部無料】ハマると時間が秒で過ぎる英語圏のプログラミング系サイトまとめ【英語学習】 - Qiita

    はじめに 近頃の翻訳技術の発達は目覚ましいですが、いまだに、「英語ができなくても何も問題はない」というところまでは程遠いのではないでしょうか。特にエンジニアであれば、なおさらだと思います。 英語で情報収集ができれば、英語力の向上と情報収集が同時にできて、一石二鳥ですよね。英語圏の情報は一次情報であったり、情報の速度が早かったりもするので、「情報の価値」、という点においてもかなり優秀です。 というわけで今回は、英語学習はもちろん、情報収集にも死ぬほど役立つ英語圏のサイトを紹介します。すべてのサイトがプログラミング関連で、しかも面白いサイトばかりなので、ハマるとヤバいです。 【10選】ハマると時間が一瞬で過ぎるプログラミング系の英語圏のサイトまとめ ネタ系 Redditで言うところの、2チャンネルとツイッターの中間のようなサイトです。プログラミング関連だけじゃなくて、各種テーマの話題のス

    【全部無料】ハマると時間が秒で過ぎる英語圏のプログラミング系サイトまとめ【英語学習】 - Qiita
  • 【Webエンジニアど素人から3年生ぐらいになるまでに読むと良い本】を段階的にまとめた - Qiita

    これってなんなの? 【ど素人状態=社会人になって初めてプログラミングを勉強したぜ!(特に新卒)】〜【Webエンジニアの3年生ぐらい】になるまでに読むと良いまとめです。「どんな目的で学ぶか?」*「いつぐらいまでに読むといいか?」を段階的にまとめました。「これだけ読めばいい!」と、そんな簡単な話ではありませんが、「今いるレベルより少し上の人がどんなジャンルのことを学んでんだろ?」という方の参考になれば嬉しいです。過去の自分に向けてでもあります、自戒。これからWebエンジニアになる人、なって間もない人の参考になれば幸いですm(__)m ※続編 【Webエンジニアど素人】が【3〜4年生】くらいになったら読むといいを目的別にまとめた ”Webエンジニアど素人から3年生ぐらいになるまでに読むと良い”の段階的まとめ(一部外部記事あり) ど素人の方々が手を動かしながら1〜6ヶ月以内に学ぼう! ◆どの

    【Webエンジニアど素人から3年生ぐらいになるまでに読むと良い本】を段階的にまとめた - Qiita
  • もうデザイナーいらないって言われた話【無料デザインツールCanva】 - Qiita

    みなさま、こんにちは。 プラコレアドベントカレンダー2019も折り返して、8日目。 冒険法人プラコレのデザイナーzukaです。 (投稿が遅れてしまいました。当に申し訳ございません。) なんだかんだとデザイナー歴3年目。 少しずつ社内で力になれることも増えて、毎日充実しております。 令和初のクリスマスも間近に迫り、 女性率の高いプラコレ社内は一層明るい会話も飛び交っておりますが、 先週、信じられない発言が私の耳をつんざきます。 “もう、自分でつくれちゃうから” えぇ…………。 私たちはDressy(ドレシー)というブライダル系メディアを運営しており、 多くの花嫁さまのハートをきゅんとつかむようなコンテンツを 365日毎日発信し、業界へ新しい価値を提供しております。 なかでもデザイナーの役割といえば、 良質なグラフィックを作り出し、企画を盛り上げること。 かつての広告バナー100000000

    もうデザイナーいらないって言われた話【無料デザインツールCanva】 - Qiita
  • DDD くらいできるようになりたいよねって話 - Qiita

    はじめに 私自身は今年の 7 月にドメイン駆動設計(DDD)を実践する企業に転職したばかりで DDD 実践歴は浅いのだが、最近は開発業務の他にも中途採用者の DDD 教育や 現場で DDD!2nd のドライバー役をする機会を頂くなど、DDD の布教活動にも少し関わっている。 その中で「DDD ムズイ」という言葉をよく聞いたので、DDD の実践に悩んでいる人向けにサンプル問題の解説を通して、実は DDD 自体は難しくないんだよってことを教える目的で記事を書いた。 TL;DR(最初に結論) DDD 自体はドメインを中心にモデリングと実装をイテレーティブに繰り返す設計プロセスであり、モデリングと OOP の理解があれば誰でもできる。 難しいのは DDD 自体ではなくて、モデリングまたは OOP である。特に「良いモデル」を得ることは非常に難しい。 なので「DDD ムズイ」と感じる人はモデリング

    DDD くらいできるようになりたいよねって話 - Qiita
  • 今、”猫”で上位表示するためにサイト作る上で必要なこと late2019~自分の感想、とっかかり編~ - Qiita

    「完璧な検索エンジン最適化などといったものは存在しない、完璧な絶望が存在しないようにね」 村上春樹の処女作「風の歌を聞け」の始まりの一節を拝借して始まる。 書き初めに困ったらだいたいこの書き出し方をすれば良いとさえ思っている。 さて2019年も残すところ、わずかになり、世間の喧騒も賑わいと忙しなさにあふれていると思う今日この頃いかがお過ごしでしょうか。 私、プラコレのアドベントカレンダーに参加させていただいている高木と申します。 オッスンさんよりバトンを受け取り日担当させていただきます!ありがとうございます。 サイト制作とか、検索エンジン周りのことを携わらせていただいた前職場、 現在は、フロントのエンジニアをメインに携わらせていただいております。 検索エンジン周りのことを少々書いていきたいと思います。 2019年、検索エンジン周りは久しく大きな変化を見せずともしっかり変わりつつも根は変

    今、”猫”で上位表示するためにサイト作る上で必要なこと late2019~自分の感想、とっかかり編~ - Qiita
  • ヒアリ判定サービスをAutoMLで作ってみた - Qiita

    TL; DR 東京のふ頭でヒアリの女王アリ50匹以上確認され、広範囲に分散すると国内に定着するおそれがあると環境省が言っているらしい[1]が、アリを見て、ヒアリかそうでないかなど一般人にわかるはずもない そこで、一般人でもアリを見てヒアリか判断できるように、AutoMLなるナウい機械学習技術を使い、写真からヒアリかどうか判別できるサービス(外部)を作った。 記事ではAutoMLの技術的詳細ではなく、ビジネスで大切とされる、AutoMLを使ったサービスの作り方を説明することを目的とする。また、 実際にサービスの作成や運用にかかったコストを説明 することも目的とする。 想定している読者層 サービス企画職、サービス開発職、それらの卵である学生の人たち はじめに 断り書きとして、ヒアリのようなアリをみつけた場合は、下記にある環境省のサイトを御覧ください。 特定外来生物ヒアリに関する情報(外部)

    ヒアリ判定サービスをAutoMLで作ってみた - Qiita
  • 個人開発したアプリが大コケしてるので失敗要因を分析してみた - Qiita

    記事は 個人開発 Advent Calendar 2019 12日目の記事です。 はじめに こんにちは!個人開発するSIeraiiroと申します。 プログラミングを初めて1年ちょっとではありますが、3つアプリをリリースしまして 案の定、失敗してるなぁ・・・と感じているので、2019年の締めくくりとして失敗要因を分析したいと思います! 自分のアプリ開発のセンスが無さすぎる、、、という恥を晒す形にはなりますが これから個人開発しようとしている人にとって、参考になれば嬉しいです! 作ったアプリと失敗要因 (1)漫画レコメンドアプリ「ComiReco」 概要 プログラミング学習を始めるにあたって、まずは作りたいものを作ろうと思い、それなら漫画に関係するサービスにしたいなぁという思いからアイデアを検討しました。 その中で「みんなでレコメンドしあえる漫画SNS」があると面白いのでは?という発想から

    個人開発したアプリが大コケしてるので失敗要因を分析してみた - Qiita
  • AWS Amplifyで高負荷に耐えられるWebサイトを早急に立てて、Webフロントコーダーが運用を回した話。 - Qiita

    AWS Amplifyで高負荷に耐えられるWebサイトを早急に立てて、Webフロントコーダーが運用を回した話。AWSWebamplify はじめに こんにちは、AWS Amplify Advent Calendar 2019の12日目担当、Oceans株式会社 竹と申します。 クリスマスまであと2週間、アドベンドカレンダーと共にクリスマスを一緒に過ごせる素敵な方と出逢わなければならない私のカウントダウンも進行しており大変焦っております。 さて、今回は「高負荷に耐えられるWebサイトを早急に立てて、Webフロントコーダーが運用回せるようにしたい!」と言う焦っている方向けに、弊社の事例をお伝えします。 それぞれの詳細な手順は他の方がたくさん上げて下さっていますので割愛しつつ、組み合わせて商用環境で使ってますよと言う事例を参考にして頂ければと思います。 (静的Webサイトのホスティングのお話で

    AWS Amplifyで高負荷に耐えられるWebサイトを早急に立てて、Webフロントコーダーが運用を回した話。 - Qiita
  • リリースまで至らなかった個人開発サービスのコードを全公開して反省してみる【Nuxt + Go】 - Qiita

    これはなに これはDeNA20卒内定者エンジニアによるアドベントカレンダーDeNA 20 新卒 Advent Calendar 2019の記事として書かれています。 はじめに 僕は趣味の一環でWebサービスを作ったり作ろうとしたりしています。ちょうど一年程前に企画・開発を始めたのですが、リリースまで至らなかったサービスがあったことを思い出したのでこれを機にコードを全公開して振り返ってみることにします。 公開したコードはこちらになります。 https://github.com/tockn/emukone_public 自分で実装しておきながらすごく無責任なのですが、正直どういう思想で実装していたのかその詳細はもう忘れてしまっているので、コードを読んで思い出しながら書く形になります。 なぜリリースしなかったのか? まずはこれです。当時DDDやクリーンアーキテクチャといったソフトウェアアーキテク

    リリースまで至らなかった個人開発サービスのコードを全公開して反省してみる【Nuxt + Go】 - Qiita
  • Angularでの開発を快適に進めるために知っておきたいこと - Qiita

    Help us understand the problem. What is going on with this article? この記事は Angular #2 Advent Calendar 2019 3日目の記事です。 こんにちは、奥野賢太郎( @okunokentaro )です。今回は同日に公開された記事『フロントエンドフレームワーク選定前に知っておくべき Angular の 6 つの問題点と、それでも Angular を選ぶ理由』のアンサー記事として、筆者の考える問題点の克服方法、または誤解の解消、および自分がAngularを選ぶ理由を述べようかと思います。 特定のAPIの便利な使い方…とかよりは、もうちょっと視座の高い話になっています。また稿内にてReactの言及が多いことについては、アンサー元の記事がReact推しておられることに由来しており、それらの節で言及してい

    Angularでの開発を快適に進めるために知っておきたいこと - Qiita
  • さよなら本番サーバー - Qiita

    とあるSESの現場では番リリースの時期が近づいてきており、僕を含めた数人のエンジニアは間に合いそうもない残作業の開発を進めたり、番で使うためのデータの整備を番サーバー内で行ったりしていた。ほとんどがその案件のために集められたメンバーだったため特に和気あいあいとするでもなく、エアコンの風の音が響く小さなオフィスの片隅で静かに作業をしていた。 業務上のやりとりもRedmineで行われており、声を発するのもたまにメンバー同士で話をしたり、クライアントから電話がかかってきた時だけ。その日もメールで通知が届いてきており、確認してみるとRedmineで僕が関係しているチケットにコメントが届いているという通知だった。 通知のURLをクリックしてRedmineのチケットを確認してみる。 それによると一旦番サーバー上に存在するデータの中の一部の主要データをCSV形式で送ってほしいという依頼だった。無

    さよなら本番サーバー - Qiita
  • WebAssembly 日本での利用事例 2019年まとめ - Qiita

    他にもあるよ、という方ご連絡ください。追加します。 パーツとしてWASMを使う事例 アプリを全部WebAssemblyにするというよりは、一部にWebAssembly化したライブラリを使いました、という使い方が出てきているように思います。 こえのブログ 株式会社ノックノートによるWebゲームでの利用例 この2つは典型的です。 前者はmp3エンコーダーをWASM化して利用しています。ライブラリを再利用するということで、生産性を高めた例かなと思っています。 後者はライブラリを再利用するというよりも、バックエンド / エッジとフロントエンドとでコードを共通化したいという目的から、WASMを利用しています。ハッシュ値生成アルゴリズムを共通化しています。これをバックエンドでC実装を、フロントエンドでJS実装を、それぞれ利用していたとすると、開発、テスト、メンテナンスとコストがかさんで仕方がないでしょ

    WebAssembly 日本での利用事例 2019年まとめ - Qiita
  • メルセンヌツイスタはそんなに衝突しない - Qiita

    κeenです。こちらのスライドが話題になっているようです。 10秒で衝突するUUIDの作り方 - Speaker Deck 笑い話としても乱数の難しさの側面としても面白いのですが、これを見た人たちの反応がちょっと勘違いしてそうだったので補足します。 別に私は暗号とか乱数とかの専門家ではないです。 発表者の方のコードは読みましたか? 少し速度が必要になるのでRustに移植します。 [package] name = "genuuidv4" version = "0.1.0" edition = "2018" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] rand = "0.7.2" sfmt = "0.6.0" use

    メルセンヌツイスタはそんなに衝突しない - Qiita
  • そろそろSQLのウィンドウ関数を理解したい - 連載1/3話 - Qiita

    はじめに データ分析とデータ品質改善に従事してきた筆者が、SQLを用いた分析の基である「ウィンドウ関数」の使い方とデータ品質の調査改善を行う手法をまとめてみようと思います。 こちらの記事は、SQLの知識向上と振り返りを主題としているので、ABC分析、バスケット分析、RFM分析などの「データ分析の手法」について説明している記事ではありません。(反響やコメントによって別投稿するかもしれません) 背景 SQLエンジニアの大多数が利用しており、多くの方はWebサービス開発などでデータの登録画面や検索画面を作る際にSQLを利用したり、またはシステムの運用保守で障害の原因調査のためにSQLを利用して原因を特定すると思います。そのため、テーブル結合・サブクエリ・集計関数といったSQL構文は理解されている人が多いと思いますが、分析関数を理解して使っている人となると、ぐっと減ると思います。 私は以前、社

    そろそろSQLのウィンドウ関数を理解したい - 連載1/3話 - Qiita
  • 【検証】ディープラーニングがあるからといって、競馬で回収率100%を簡単に超えられるわけではない - Qiita

    どういう馬が予測されているのだろう どういう馬を買って100%を超えたのだろう?メインレースより条件戦の方を狙っているのかな? 競馬ファンなら気になりますよね。 ところが検証用データのDataFrameには馬名が入っておらず、馬番や人気なども前処理加工された値ばかりが入っており、オッズもrawデータではなかったためとてもわかりにくかったです。別途データを作成しなければ、調べることができませんでした. ディープラーニングから他のモデルに変更してみる これは僕が変更したコードです。 シンプルなニューラルネットワークと比較しても、もっとシンプルなロジスティック回帰に変更してみます。 from sklearn.linear_model import LogisticRegression model = LogisticRegression(C=2.0, penalty='l1', random_s

    【検証】ディープラーニングがあるからといって、競馬で回収率100%を簡単に超えられるわけではない - Qiita
  • マルチカーソルで、VSCodeのスニペットをもっと便利に。 - Qiita

    ある日の弊社 社長「お〜い、やめ太郎」 ワイ「なんでっか、社長?」 社長「今度作るショッピングサイトの件なんやけど」 社長「ドラッグ&ドロップ機能を実装することになったから」 社長「それをやめ太郎にお願いしたいんや」 社長「やめ太郎、やったことあるか?」 ワイ「どどどドラッグ!?」 ワイ「あるわけないやないですか・・・!」 ワイ「そんなもの販売して万が一・・・」 ハスケル子「やめ太郎さん、違いますよ」 ハスケル子「ドラッグ&ドロップでしょ」 ハスケル子「マウスで掴んで移動させるやつです」 ワイ「ああ、そっちか」 社長「やめ太郎、できるか?」 ワイ「もちろんですわ」 ワイ「前職でもドラッグやってましたから、余裕ですわ」 社長「よ、よろしく頼むわ」 レッツJavaScript ワイ「確かドラッグ&ドロップを実装するときは」 ワイ「マウスを動かしたときにマウスポインタの座標を取得できるようにして

    マルチカーソルで、VSCodeのスニペットをもっと便利に。 - Qiita