タグ

celt69cobraのブックマーク (8,536)

  • ささいなことに、わざわざ「良いと思います!」って言うようにしている - hitode909の日記

    いろんな人の相談役をやっているのだけど、ささいなことに、わざわざ「良いと思います!」って言うようにしている。 この調子でいいと思います!ってわざわざ言う 言われた方からは、迷うことなく進めたら良いのだな、ということが伝わる 意見を言えるチャンスがあったら「この調子でよさそうだけど、ゆくゆくはこんな問題に直面しそうですね」とか、ちょっと意見をはさんでおく 頭出ししておいたら考えてもらえるかもしれないし、想定と違ったら、えっそんなことはないんですけど…と早めに変なことに気づけるかもしれない シニアっぽいロールの人物としては、聞かれてもないのに、良いと思います!って言っておくのが大事。 やってみてもらって、うまくいかなかったら、想定と違ってうまくいかなかったんですけど、って声をかけてもらえる。 最初の段階で黙っていたら、どういうスタンスだったのか不明で、相談しにいくときに、まず、どう思いますか?

    ささいなことに、わざわざ「良いと思います!」って言うようにしている - hitode909の日記
  • Value Objectについて整理しよう - Software Transactional Memo

    Value Objectとは何であるか? マーチン・ファウラーのPatterns of Enterprise Application Architecture(PofEAA)やエヴァンス・エリックのDomain Driven Design: Tackling Complexity in the Heart of Software(DDD)が原典であるが、PofEAAではこう切り出している。 When programming, I often find it's useful to represent things as a compound. プログラミング時は物をcompound(合成物)として表現すると便利なことがしばしばある。 例えば2次元空間上での座標のように複数のメンバ(属性)を持つ物は便利である、と。しかしそれらを比較する方法は一意ではない、そこで Objects that a

    Value Objectについて整理しよう - Software Transactional Memo
  • メモ:値オブジェクトの定義と差異について - かとじゅんの技術日誌

    「値オブジェクト」の定義について不勉強だったので「DDDの値オブジェクト」の定義とDDD以外の「値オブジェクト」との違いについて、改めて関連書籍を読み直し整理してみました。 すごい長いし細かいので他人に読ませるような記事ではなく、自分のために書いたメモです。 もし読むなら興味がある人だけで。 自分向けのメモですが、一応 この記事の前提や意図を書いておきます。 「DDDの値オブジェクト」以外を否定する記事ではありません。 原理主義のように書籍の理想どおり実践するべきだと主張するつもりはありません 「理想に従えばよい」「理想に従うの無意味だ」と決め付けの二項対立的な思考ではなく、理想と現実の絡み合ったグレーゾーンを見極めつつ、現場で手を打つのが優れた実践者ではないでしょうか 下記に紹介する、それぞれの値オブジェクトの優劣について細かく議論し、論破する・されることを目的としていません。 言い訳と

    メモ:値オブジェクトの定義と差異について - かとじゅんの技術日誌
  • Sprint Planning をやめた話 - スタディサプリ Product Team Blog

    小中新規開発グループ (a.k.a. tara チーム) の qsona です。 tara チームでは、スタディサプリ中学講座というプロダクトを開発しており、約1年前 (2022-02) にリリースして以来、継続してプロダクト開発を続けています。 tara チームのプロダクト開発は、基的にスクラムの手法にのっとる形で行っています。ビジネス的な境界により分けられた3つのスクラムチームが存在します。 スクラムの運用については、それぞれの現場において悩みごとが起きがちだと思いますが、tara チームでもご多分に漏れず、うまくいっていること・いっていないことが存在します。今回は、その3つのうちの1つのチームである「学習コアチーム」において存在した、Sprint Planning に関する (あるいはそこから掘り出された) 課題と、それに対してどう対処したかについて書きたいと思います。 なお、

    Sprint Planning をやめた話 - スタディサプリ Product Team Blog
  • DBのリストアテストを全自動化した話 - Pepabo Tech Portal

    ホスティング事業部の業務信頼性向上チームでエンジニアをしているはらちゃんです。 先日STREET FIGHTER 6のオープンベータに参加し、友人にボコボコに負けました。 製品版買っていい勝負ができるように特訓を重ねたいと思います。 今回、ホスティング事業部のサービスであるロリポップ、ムームードメイン、ヘテムル、おさいぽのDBリストアテストを自動化したので紹介します。 まず業務信頼性向上チームとは? リストアテストを継続的にやっている理由 なぜ自動化したのか 全体像 具体的な実装 実装時に困ったこと dumpのサイズが大きすぎて通常のrunnerではリストアテストができない場合 scpをするアカウントにdumpファイルを操作する権限がない場合 dumpファイルのファイル名が微妙に違ってうまく指定できない場合 終わりに まず業務信頼性向上チームとは? 最初に、自分の所属している業務信頼性向上

    DBのリストアテストを全自動化した話 - Pepabo Tech Portal
  • TypeScript 本体のコードを読んでみよう

    みんなお世話になっている TypeScript のコードを読みたいと思ったことはないだろうか。読んだ。 一週間ぐらいかかった。完全に読み切ったとは言えないが、概要は掴んだ。 なかなかに複雑でドメイン知識を得るのが難しかったので、これから読む人向けに、登場人物や概念を整理して紹介したい。 読んだのは 2023/6/8 時点で git clone したコード。 最初に: 自分のゴール設定 複数ファイルにまたがった参照を、 TypeScript の Language Service が提供する findReferences() や findRenameLocations(), goToDefinitions() を使って、インクリメンタルに書き換えたかった。 Terser を使うと、今触ってるオブジェクトが何で、何のメンバを書き換えたかの情報が残らない。これを TypeScript のレイヤーで

    TypeScript 本体のコードを読んでみよう
  • iOS13のSceneDelegate周りのアプリの起動シーケンス - Qiita

    概要 iOS13から新たにUIWindowSceneDelegateが導入され、プロジェクトを新規作成するとclass SceneDelegateがテンプレートとして生成されるようになりました。この記事では、このSceneDelegateとアプリの起動シーケンスについて説明します。まだわかっていない部分もあるので、そこは疑問の内容を書きました。 Sceneの概要 Sceneについてザックリと説明します。正確なところは公式の文書を参照してください。 SceneとはアプリのUIを表示するための窓の事です。iPadでは以前から複数のアプリを同時に分割表示する事ができましたが、同一のアプリを同時に複数表示する事はできませんでした。iOS13からはこれが可能になります。この時、分割されている画面1つがSceneに対応します。同一のアプリが複数表示されているときは、内部的にアプリケーションとしては1つ

    iOS13のSceneDelegate周りのアプリの起動シーケンス - Qiita
  • DB設計の共有で疲弊してない?dbdocsのすゝめ

    DB設計の管理や作成に疲弊してません?こんにちは。ukmshiです。今日はDB設計の共有と管理に便利なツール、dbdocsについてお話しします。dbdocsを使えば、設計の可視化や共有がめちゃくちゃ簡単になるんです。今回は、その魅力と利点、そして実際の使い方について詳しく説明します。 dbdocsとは? dbdocsは、コードベース(DBML)でDB設計を管理し、URLで共有することが可能なツールです。データベースのテーブル構造や関係性を可視化し、それを他のチームメンバーやステークホルダーと手軽に共有することができます。 DBMLについてはこちらを参考に dbdocsの利点 dbdocsの利点について詳しく見ていきましょう。 無料 まず最初に、dbdocsは基無料です。コストを気にせずに利用できるので、チームの誰もがアクセス可能です。 コードベースで管理 dbdocsはコードベースでDB

    DB設計の共有で疲弊してない?dbdocsのすゝめ
  • 既存の Xcode プロジェクトを SwiftPM でマルチモジュール化する最初のステップ

    記事では Swift Package Manager(SwiftPM) を用いて、既存の Xcode プロジェクトをマルチモジュール化する最初のステップについて説明します。 「最初のステップ」であるため、SwiftPM格的なプロジェクトのマルチモジュール化を行う際に起きるかもしれない問題の解決策などについては説明しません🙏 記事では以下を理解できるようになることを目指しています。 SwiftPM を用いたマルチモジュール化の始め方 SwiftPM を用いたマルチモジュール化の基的な流れ 以降では非常にシンプルなプロジェクトを参考に、SwiftPM を用いてマルチモジュール化を行う方法について説明します。 マルチモジュール化していくプロジェクト まずマルチモジュール化していくプロジェクトについて触れておきます。 例としてはシンプルすぎますが、以下のような作りたての SwiftU

    既存の Xcode プロジェクトを SwiftPM でマルチモジュール化する最初のステップ
  • Protocol-oriented Programming とは

    Value Semantics と違って、 Protocol-oriented Programming という用語は Swift プログラマの間で広く知られています。しかし、筆者の知る限り Protocol-oriented Programming の定義は明確に述べられていません。 WWDC 2015 のセッション “Protocol-Oriented Programming in Swift” の中では、 Self-requirement Protocol Extension プロトコルの後付け など数多くの例が取り上げられていますが、何が Protocol-oriented Programming なのかは明確に述べられていません。 それでは、Protocol-oriented Programming とは何なのでしょうか。筆者の解釈は次の通りです。 Protocol-oriente

  • React Application Architecture for Production〜これ一冊で全てが網羅〜

    はじめに この記事は、Alan Alickovicさんの著書「React Application Architecture for Production」をまとめたものになります。Alanさんと言えばZennで最も人気のある記事「bulletproof-react」の作者であり、彼のprojectから学ぶことはとても多い印象です。 今回紹介する2023年1月に公開されたため、bulletproof-react以後のReactアプリケーションにおけるベストプラクティスの宝庫となっています。また、で扱われているアプリケーションのProjectがGitHubで公開されていることから、Projectを眺めるだけでも勉強になる点があるかと思います。 想定読者 Reactのアーキテクチャを模索している方 テスト手法やCI/CDなどのアプリケーション設計に関心がある方 使用される技術の構成 言

    React Application Architecture for Production〜これ一冊で全てが網羅〜
  • フリーWi-Fiを使ったら秘密情報を抜かれる経路にはどのようなものがあるか - Qiita

    ゴールデンウィークのはじめ(4月29日)に投稿された以下のツイートですが、5月7日20時において、1,938.8万件の表示ということで、非常に注目されていることが分かります。 我が名はアシタカ!スタバのFreeWi-Fiを使いながら会社の機密情報を扱う仕事をしてたら全部抜かれた。どうすればよい! pic.twitter.com/e26L1Bj32Z — スタバでMacを開くエンジニア (@MacopeninSUTABA) April 29, 2023 これに対して、私は以下のようにツイートしましたが、 これ入社試験の問題にしようかな。『スタバのFreeWi-Fiを使いながら会社の機密情報を扱う仕事をしてたら全部抜かれた』と言う事象に至る現実的にありえる脅威を説明せよ。結構難しいと思いますよ。 https://t.co/LH21zphCTV — 徳丸 浩 (@ockeghem) April

    フリーWi-Fiを使ったら秘密情報を抜かれる経路にはどのようなものがあるか - Qiita
  • 2020年現在のNewSQLについて - Qiita

    Disclaimer 当記事はNewSQL開発ベンダの技術ブログや各種論文、その他ニュースサイト等の内容を個人的にまとめたものです。 そのため、理解不足等に起因する誤解・誤認を含む可能性があります。更なる理解が必要な方はリファレンスに挙げた各種文献を直接参照下さい。技術的な指摘は可能であれば取り込み修正しますが、迅速な対応はお約束できません。 NewSQLの解説は二部構成 当記事は前編でNewSQLの概要編となる。 全体の目次は下記である。 NewSQLとは何か NewSQLのアーキテクチャ NewSQLとこれまでのデータベースの比較 NewSQLのコンポーネント詳解 1章から3章までの内容を当記事で解説する。 4章はさらに詳細な技術的解説となり、後編の「NewSQLのコンポーネント詳解」で記述している。 こちらも合わせて一読いただきたい。 1. NewSQLとは何か NewSQLとは、海

    2020年現在のNewSQLについて - Qiita
  • Vimをwasm runtime化する

    はじめに 最近Dockerwasm対応を発表していて、wasmがこれからますます盛り上がりそうな予感がしています。 一Vimmerとして、なんとかこのビッグウェーブに乗りたいため、Vimwasm runtimeにすればいいのでは?と思ったので実際に簡単なものを実装してみました。 足し算、引き算、フィボナッチ関数、分岐を動かせる程度で実用的ではありません。 Vimwasm runtime化する 上記のプラグインをインストールすれば、こんな感じで使えます。

    Vimをwasm runtime化する
  • AI News の公開と、裏側の OpenAI の活用話 - A Day in the Life

    AI News という、AI・データサイエンス(DS)・機械学習(ML)関係の話題を集め、AIで3行に要約して配信するサイトを公開しました。twitter @AINewsDev や Atomフィードでも配信しています。数日前から運用していて、手前味噌ですが便利に情報集めに使えています。また英語記事も日語で要約されるので便利です。 なぜ作ったのか 以前、 @syou6162 さん作の ML-News で、ML系の情報を便利に読ませてもらっていたのですが、Twitter API の有料化の話が出た前後で閲覧できないようになってしまったようでした。 そのため、DS・ML系の話題を追いかけるのが大変になって、そのうち同じようなサイトを作ろうかな、と思っていた所でChatGPT(GPT4)というふつうに便利なLLMが登場しました。その後は御存知の通り、それらの話題が大量に溢れ、情報過多で見きれない

    AI News の公開と、裏側の OpenAI の活用話 - A Day in the Life
  • GitHub Actionsにおける設定ミスに起因したGitHubスタッフのアクセストークン漏洩

    (You can read this article in English here.) 免責事項GitHubはBug Bountyプログラムを実施しており、その一環として脆弱性の診断行為をセーフハーバーにより許可しています。 記事は、そのセーフハーバーの基準を遵守した上で調査を行い、その結果発見した脆弱性に関して解説したものであり、無許可の脆弱性診断行為を推奨することを意図したものではありません。 GitHub上で脆弱性を発見した場合は、GitHub Bug Bountyへ報告してください。 要約GitHub Actionsのランナーのソースコードをホストするactions/runnerリポジトリにおいて、セルフホストランナーの使用方法に不備があり、結果としてGitHub Actionsに登録されているPersonal Access Tokenの窃取が可能だった。 このトークンはGit

    GitHub Actionsにおける設定ミスに起因したGitHubスタッフのアクセストークン漏洩
  • 大規模なマルチモジュール開発をSwiftPackageに移行して運用してみた - Timee Product Team Blog

    はじめまして、iOSエンジニアの阿久津 @sky_83325 です。 タイミーでは、機能ごとにEmbedded Frameworkに分割して開発するマルチモジュール開発に取り組んでいます。 現在では、体AppやAppExtensionの他に7つの共通Framework、そして16個の機能Frameworkという規模になってきました。 今回は、そのマルチモジュール開発をEmbedded Frameworkではなく、Swift Packageを利用した方法に乗り換えてみたので、その成果や学びについて共有できればと思います。 取り組んだ経緯・背景 タイミーでは、技術顧問の@d_dateさんと隔週で「ツバメの会」という情報共有の場を設けています。そこでは、直近タイミーで取り組んでいることの共有や相談をしたり、SwiftやiOS、その他エンジニアリングの最近の話題について議論したりしています。 そ

    大規模なマルチモジュール開発をSwiftPackageに移行して運用してみた - Timee Product Team Blog
  • Swift Package centered project - Build and Practice

    Swift Package中心のプロジェクト構成とその実践 - iOSDC JAPAN 2021 https://www.youtube.com/watch?v=e_T1-XrYf4A

    Swift Package centered project - Build and Practice
  • ChatGPT で何が変わったか

    2023 年 3 月時点で、自分の開発スタイルがどう変わったかを雑に書いておく。 どんなタイミングで何を聞いているか主に GoTypeScript や W3C や IETF の仕様について聞く場合はほぼ ChatGPT Plus を利用している。間違いとかはどうせ公式ドキュメントを読めばいいので、正しさは求めておらず、きっかけを求めている。 最近では Cloudflare Workers 上で動く WebAuthn サーバーを実装しているが W3C の WebAuthn を開きつつも、ほぼ ChatGPT相談しながら実装している。 TypeScriptUint8Array から ArrayBuffer に変換する方法を聞いたり、証明書について聞いたりと色々。参考までにどんなことを聞いているかを紹介しておきたい。 WebAuthn で送られてくる署名の r と s がたまに

    ChatGPT で何が変わったか
  • とってもやさしいフロントエンド入門

    まず、新しいアイデアが提案されると、ステージ0の「Strawman」と呼ばれる段階に入ります。ステージ0のアイデアが価値のある提案として見なされ、大まかな形で問題点や解決策を説明できるようになると、ステージ1の「Proposal」と呼ばれる段階に進みます。そして、提案がある程度まとまって仕様の草案として認められると、ステージ2の「Draft」と呼ばれる段階に上がります。さらに細かいところまで練り上げられて、仕様がほぼ完成した状態になると、ステージ3の「Candidate」の段階になります。最後に、2つ以上のブラウザがその機能を実装していて、ECMAScript の編集者に承認されると、ステージ4の「Finished」と呼ばれる段階になります。 ステージ4に上がった提案は、毎年 6 月のタイミングで ECMAScript の新しいバージョンとしてリリースされます。リリースする際は、ECMAS

    とってもやさしいフロントエンド入門