adgjmptw4410のブックマーク (354)

  • 市区町村マスタを手に入れろ、そして更新し続けろ - エムスリーテックブログ

    全国の市区町村の名前とコードをデータベーステーブル化したもの、すなわち市区町村マスタはITシステムを作っていれば何かしらの場面で必要になるものです。 ではその市区町村マスタを作るための元データはどこから手に入れたらいいものか。 そして「作る」というのもありますが、市区町村は再編されるものですから最新の変更にどう追従するか、しかもそれを自動化できるかというのも大いに気になるところですね。 エムスリーエンジニアリンググループ三浦(@yuba@reax.work) [記事一覧 ]です。 Unit1(製薬プロモーション)およびUnit9(治験臨床研究支援)のエンジニアです。 今回は私も皆様とまったく同じように市区町村マスタのデータ源に悩んでいろいろ調べましたので、それで得た知見を共有させていただこうと思います。今回は代表的な3つのデータソースをご紹介し比較していきます。 ほしいのはこんな感じのデ

    市区町村マスタを手に入れろ、そして更新し続けろ - エムスリーテックブログ
  • マツコの知らない LINE ログインの世界

    Ubie プロダクトプラットフォーム所属の nerocrux です。今回は Ubie において、 LINE ログインを成功させるために工夫したことをいくつか紹介したいと思います。 面白いこともすごいこともやってないし、対象読者もよくわかりませんが、興味があったら読んでみてください。 はじめに 症状検索エンジン「ユビー」について Ubie では、症状検索エンジン「ユビー」(以下、ユビーと呼ぶ)という一般ユーザー向けのサービスを展開しています。ユーザーが簡単な質問を回答することで、関連する病名や、適切な受診先情報を得ることができるサービスとなっています。 ユビーは Web ブラウザ経由で利用されることが多いですが、iOS / Android のネイティブアプリも提供しています。 ユーザーがユビーを利用する際に、ユビーのアカウントを作成することで、一貫性のある問診・受診・受診後のフォローアップ体

    マツコの知らない LINE ログインの世界
  • テストコードを書く上で個人的に気をつけている5つのこと - Qiita

    はじめに エンジニアの皆様、テストコードはちゃんと書けておりますでしょうか?(挨拶) どんな開発言語や開発手法を導入していたとしても、アプリケーションの機能実装とテストは表裏一体であると言えます。場合によっては機能の作り込みよりも時間をかけるべきケースが多いくらい重要である(・・・と信じたい)反面、デッドラインが近づくにつれて真っ先に工数が削られやすく軽視されがちな工程でもあります。 時間に追われてテストコードを書いた結果、テストの体をなしていないコードになっていたり後で見返したときに記述が煩雑すぎてメンテ不能になっていたり・・・といった苦い経験は誰しもがあるかと思います。かくいう自分もそんなことは多々ありました。 そんな今までの経験則を基に「自分がテストコードを書くにあたってどんなことを意識しているのか?」をいくつかピックアップして備忘録も兼ねて紹介したいと思います。 一応注意なのですが

    テストコードを書く上で個人的に気をつけている5つのこと - Qiita
  • 何をテストするか・どのような状況とシナリオか・期待される結果は何か 明日からでもすぐにできるアンチパターン回避メソッド

    何をテストするか・どのような状況とシナリオか・期待される結果は何か 明日からでもすぐにできるアンチパターン回避メソッド テスト品質を向上させよう! 〜 アンチパターン回避メソッド 〜 #1/2 「いのりん」推し Kanon氏:Kanonと申します。今日は、「テスト品質を向上させよう!」ということで、アンチパターン回避メソッドをお話ししようかなと思います。 まず簡単に自己紹介です。もしかしたらご存じの方もいらっしゃるかと思うんですけど、虎の穴ラボという会社でお仕事をしています。最近、3次元に嫁が1人できまして、2次元にはいっぱい(嫁が)います、という感じですね、はい(笑)。 (会場笑) 業ではあんまりPHPを書いていなくて、サーバーサイドのKotlinNext.jsを使っていて、副業と、あと前職までの4年半ぐらいがずっとPHPで、今も触っているという感じでした。 例に漏れず、アニメ、漫画

    何をテストするか・どのような状況とシナリオか・期待される結果は何か 明日からでもすぐにできるアンチパターン回避メソッド
  • 転職することにした|helloyuki

    USの会社にしばらく勤めていたが、転職することにした。この記事を書いている時点ではすでに退職済みである。かつての同僚も見ている可能性があるからあまり深い理由は書けないが、主にはフルリモートが辛かったなどの文化的なミスマッチだ。やはり詳しくは書けないが、これまで担当していた仕事がピボットの都合で閉じることになったのも契機になった。 次は日系の会社にまた戻ることにした。数年前までサイバーエージェントという会社に勤めていたが、あの頃のワイワイした組織での開発がもう一度やりたくなった。サイバーエージェントの頃が当に楽しかったので出戻りも考えたが、この転職を経て、私の好きなドメインの開発の方がやはりモチベーションを高く保てるだろうということに気づいた。まあ端的にいうと、実のところインターネット広告ないしはアドテクあるいはエンタメには、そんなに興味が持てなかったのだ。アドテク事業はもはや旬を過ぎてい

    転職することにした|helloyuki
  • SSH接続を10倍速くするたった3行の設定 - Qiita

    今回は、SSH接続を劇的に高速化する方法をご紹介します。たった3行の設定を追加するだけで、接続時間を10分の1に短縮できます。しかも、2回目以降の接続では認証も自動的に行われるので、パスワードやパスフレーズの入力も不要になります。 要点 .ssh/configファイルのHost *セクションに以下の3行を追加するだけです。 詳しい説明 1. ControlMaster auto この設定で、1つのSSH接続で複数のセッションを共有できるようになります。新しくSSH接続を確立するたびに認証情報を入力し直す手間が省けて、接続がぐっと速くなります。具体的には: 初回の接続時のみ認証が必要 2回目以降は既存の接続を再利用するため、認証プロセスをスキップ パスワードやパスフレーズの入力が不要になり、接続がほぼ瞬時に完了 2. ControlPath ~/.ssh/mux-%r@%h:%p Contr

    SSH接続を10倍速くするたった3行の設定 - Qiita
  • Object.groupBy で作られるオブジェクトの prototype は null - Object.create(null)

    おさらい: prototype JavaScript のオブジェクトはみんな prototype というのを持っていて, この prototype からプロパティを継承, より正確には, プロパティアクセス時にそのプロパティがオブジェクトに存在しなければ prototype を辿って見つけにいくことになっている. あるオブジェクトを prototype とした別のオブジェクトを作るには Object.create を使う (あるいは new 演算子や __proto__ を使っても良い). const x = {}; x.foo = "foo"; const y = Object.create(x); y.bar = "bar"; const z = Object.create(y); z.baz = "baz"; console.log(z.foo); // => "foo" conso

    Object.groupBy で作られるオブジェクトの prototype は null - Object.create(null)
  • 【Git】同じコンフリクト解消を繰り返している人に教えたい「git rerere」 - Qiita

    はじめに こんにちは、kenです。みなさんコンフリクト解消してますか! チーム開発をしているとコンフリクトとは嫌でも向き合うことになりますが、コンフリクト解消って緊張感のある作業なのでやりたくないですよね。 そんなコンフリクト解消をちょっぴり楽にする(かもしれない)コマンドを最近知ったので今回はそれを紹介します、その名もgit rerereです。 git rerereとは Gitの公式ドキュメント(日語版)には次のように記載されています。 git rerere コマンドはベールに包まれた機能といってもいいでしょう。これは “reuse recorded resolution” の略です。その名が示すとおり、このコマンドは、コンフリクトがどのように解消されたかを記録してくれます。 そして、同じコンフリクトに次に出くわしたときに、自動で解消してくれるのです。 ここに書かれているように、git

    【Git】同じコンフリクト解消を繰り返している人に教えたい「git rerere」 - Qiita
  • Webサービス公開前のチェックリスト

    個人的に「Webサービスの公開前チェックリスト」を作っていたのですが、けっこう育ってきたので公開します。このリストは、過去に自分がミスしたときや、情報収集する中で「明日は我が身…」と思ったときなどに個人的にメモしてきたものをまとめた内容になります。 セキュリティ 認証に関わるCookieの属性 HttpOnly属性が設定されていること XSSの緩和策 SameSite属性がLaxもしくはStrictになっていること 主にCSRF対策のため。Laxの場合、GETリクエストで更新処理を行っているエンドポイントがないか合わせて確認 Secure属性が設定されていること HTTPS通信でのみCookieが送られるように Domain属性が適切に設定されていること サブドメインにもCookieが送られる設定の場合、他のサブドメインのサイトに脆弱性があるとそこからインシデントに繋がるリスクを理解してお

    Webサービス公開前のチェックリスト
  • エンジニアにも知って欲しいChatGPT基本テクニック - Qiita

    はじめに ChatGPTブームがひと段落した感がありますが、周りのエンジニアChatGPTを活用している姿をあまり見みません。 基的なテクニックを理解すれば、エンジニアこそChatGPTを活用できると思うので、普段使用しているテクニックをいくつかピックアップして紹介します。 プロンプトの記載方法 Markdown記法で指示する 色々なところで紹介されていますが、回答や処理の精度を上げる方法としてChatGPTへの指示にMarkdown記法を使用することがオススメされています。 例えば下記のような文章による指示を行おうとした場合

    エンジニアにも知って欲しいChatGPT基本テクニック - Qiita
  • 5分でできる!GitHub README プロフィール 💬 - Qiita

    こんにちは!もみです🐶 皆さん、GitHubプロフィールのREADME は設定していますか? GitHubのプロフィールを充実させることで、 GitHub上での交流はもちろん、就活や転職でもきっとちょっと役に立ったりと、素敵なご縁に繋がるかもしれません。 たった5分で設定できるので、さっそく設定していきましょう! 🚩 今回作成するプロフィール シンプルさを保ちつつ、スキルやGitHub上での活動を中心にした自己紹介テンプレートにしてみました! GitHubリポジトリ: https://github.com/NonokaM/sample-github-profile/blob/main/README.md 1. リポジトリを作成しよう まず、ユーザー名と同じ名前のリポジトリを作成しましょう。 ( ユーザー名と同一のリポジトリは、特別なリポジトリと認識されて自動的にプロフィールに表示されま

    5分でできる!GitHub README プロフィール 💬 - Qiita
  • 今さらですが、幼なじみを好きになってしまいました|note

    第七話 仲直りから三〇分……  ようやく、何の変哲もない日々に戻った、ある夕暮れ。 念願の、数日ぶりの仲直りを果たしたわたしは、しばらくおあずけになっていた、『彼の部屋でダラダラ過ごす時間』を心の底から満喫していた。 わたしは彼のベッドに寝転んだまま。 彼は、ベッドにもたれて。 そうして、いつもみたいに、それぞれ勝手な時間を過ごす、そんなやつ。 「ね~タ~君、なんか新しいマンガとかないの?」 「だから言ったじゃん。電子に切り替えたって。紙のはもう増えないぞ」 こんなふうに、かけがえのな

    今さらですが、幼なじみを好きになってしまいました|note
  • 【謎】「時計の広告はすべて10時10分を指している」の真相をお教えします | オモコロ

    こんな話を聞いたことがあるだろうか。 どこかで聞いたことがある雑学だが、実際に確かめたことはない。 ということで早速、家電量販店で時計のカタログを貰ってきて確かめてみる。 表紙の腕時計の時刻を見てみると、10時8分42秒を指している。 10時10分ではなくなんとも中途半端な時刻だ。 だが、ページを開いてみると…… 10時8分42秒 10時8分42秒 10時8分42秒 大谷翔平がつけているこの時計も…… 10時8分42秒 なんと、掲載されている時計のほとんどが10時8分42秒を指していた。どうやらこの半端な時刻で統一されているもよう。 理由を調べてみると、「セイコーミュージアム銀座」のサイトにこんな記述を発見。 セイコーのアナログ式時計のカタログやパンフレットに掲載されている時計はすべて「10時8分42秒」を指しています。 見ているだけでよだれがでるビーフステーキの広告を見て、「時計の広告も

    【謎】「時計の広告はすべて10時10分を指している」の真相をお教えします | オモコロ
    adgjmptw4410
    adgjmptw4410 2024/06/27
    アップルウォッチは10時9分30秒、iPhoneは9時41分
  • 第819回 Ubuntu 24.04 LTSのリモートデスクトップを深掘りする | gihyo.jp

    今回はリモートデスクトップ機能に関して、Ubuntu 24.04 LTSでの挙動、またコマンドラインでの設定方法を解説します。 リモートデスクトップ機能の変更点 リモートデスクトップに関して、22.04 LTSに実装(バックポート)されるまでのドタバタは第713回で詳しく述べたので、繰り返しません。今から振り返ると、このドタバタは24.04 LTSリリースのドタバタと比べるとまだかわいいものだった気もします。 それはさておき、リモートデスクトップ機能を簡単に説明すると、別のPCからデスクトップを閲覧また操作するための機能です。 Ubuntu 22.04 LTSから23.10までのリモートデスクトップ機能の変更点は、VNC機能が削除されたことくらいです。すなわち、プロトコルとしてRDPのみのサポートになりました。 23.10から24.04 LTSの変更点は、リモートデスクトップ機能の設定箇所

    第819回 Ubuntu 24.04 LTSのリモートデスクトップを深掘りする | gihyo.jp
  • nobuyuki.tanakas.eth|note

    シャッフル あらすじ あらすじ野依治良(28歳)は肉体を盗まれる。年に二度と推奨された健康診断の折に。PMSが普及してからの検診では『己が人格を機械の代体へ転写し、己が肉体のみを検査に預ける』というのが一般的だった。しかし治良の肉体は検査中の病院から持ち去られてしまう。己が肉体を取り返すべく奮闘する治良。協力者のリジ。盗んだ身体を我が物顔で操るクザン。しかしクザンは未来からやってきた自分だった。さらにはリジすらも。敵も味方もどれもが自分、自分同士の奪い合い。はたしてリジやクザンの目的は? それぞ

    nobuyuki.tanakas.eth|note
  • 【JS体操】第2問「画像の横長具合を比較しよう」〜正攻法&ハック部門の解説〜 - KAYAC engineers' blog

    こんにちは! カヤック面白プロデュース事業部のおばらです。 普段は受託案件のデザイン・フロントエンド開発などを担当しています。 さて、『JS体操』第2問 いかがでしたか? 今回初めての方々 第1問に引き続きの方々 複数のアプローチで何通りも回答してくださった方々 普段業務で JavaScript をバリバリ書いているであろう方々 JavaScript を学んでいる学生の方々 などたくさんの方々が挑戦してくださいました。 とても嬉しいです。ありがとうございます! 『JS体操』とは? 『JS体操』とはカヤックが主催する JavaScript のコードゴルフ大会です。 もともとは社内の勉強会として始めた施策です。 その詳細は以下のブログ記事を御覧ください! techblog.kayac.com 第2問の詳細はこちら https://hubspot.kayac.com/js-taiso-002 も

    【JS体操】第2問「画像の横長具合を比較しよう」〜正攻法&ハック部門の解説〜 - KAYAC engineers' blog
  • サンワサプライ、振動機能付きのBluetoothタッチパッド

    サンワサプライ、振動機能付きのBluetoothタッチパッド
    adgjmptw4410
    adgjmptw4410 2024/06/18
    Logicool T650の代替となるか
  • UUIDv7 in 32 languages

    UUIDv7 is a 128-bit unique identifier like it's older siblings, such as the widely used UUIDv4. But unlike v4, UUIDv7 is time-sortable with 1 ms precision. By combining the timestamp and the random parts, UUIDv7 becomes an excellent choice for record identifiers in databases, including distributed ones. Let's briefly explore the UUIDv7 structure and move on to the zero-dependency implementations i

    UUIDv7 in 32 languages
  • IP Anycast について

    Cloudflare は現在120か国、320都市以上に500を超えるエッジデータセンターを保有しています。これらはIP Anycast という技術を用いて同じIPアドレスでその時点でのユーザーから一番近いエッジを判別しています。 また技術的に必然性のある場合を除き、全てのエッジの全てのサーバで全ての機能を動作させるというのが基設計です。 このブログサイトでは今までCloudflareの様々な機能をテストし手順としてまとめてきており、非常に多くの機能が存在していることをお分かりいただけたかと思いますが、パブリッククラウドと異なりそれらの機能は可能な限り内部ルーティングなしで動作するように設計されており非常にモノリシックです。このため、ユーザーはどこにいても一番近いエッジと自動で通信が確立され同じ機能が提供されることになります。ゼロトラスト系のサービスを使う場合これはセキュリティと通信速度

    IP Anycast について
  • 無料でcronの設定を簡単に作成しカレンダーで可視化できる「Cron job editor」 - GIGAZINE

    cronはUnix系オペレーティングシステムのジョブ管理ツールで、タスクをスケジュール指定して定期的に実行させることが可能ですが、スケジュール指定の際に使用するcron式をすぐに読み取るのは難しいものです。「Cron job editor」はcron式を人間が読み取りやすいカレンダー形式に可視化してくれるサイトとのことなので、実際にどんな感じで使えるのか確かめてみました。 Cron job editor: multiple cron jobs, calendar view, AWS & Vercel cron support | CronTool https://tool.crontap.com/cronjob-debugger サイトにアクセスすると下図の画面になりました。左上にはUNIX系OSの「crontab」の仕様と、秒・年・ワイルドカードなどを加えた「拡張cron式」の仕様のどち

    無料でcronの設定を簡単に作成しカレンダーで可視化できる「Cron job editor」 - GIGAZINE