タグ

あとで読むに関するyusuketのブックマーク (377)

  • 要件定義以降の工数は50%減少、開発ボリューム・件数は増加 PM組織立ち上げの「現状把握」「目標設定」「問題特定」で得られた効果

    現状把握のために実施したこと じゃあ、これを基に実際にどういうふうに考えてどういうところをやってきたかをこれからお話しできればなと思います。 まず現状把握です。(スライドを示して)今見てもらっているのが、これまで自分が体験してきたり、ほかの企業の方との情報交換とかで出てきた、製品開発におけるよくある問題だと思ってもらえればと思います。みなさんもたぶん、これまでの経験の中で、こんな声や課題は、かなりあったんじゃないかなと思っています。 前職のECの経験でもこのあたりはありました。例えばシステムが肥大化して品質維持のためにかかる工数が多くて、「新規機能開発になかなか時間がかかりますよ」となったり、事業部とかから要望、HOWの指定がけっこう多くて、顧客の課題がぼんやりしていたり。 あとは、ビジネス側からすると、思ったとおりのタイミングでリリースできないことがあるとか、もっと多くの要望を実現したい

    要件定義以降の工数は50%減少、開発ボリューム・件数は増加 PM組織立ち上げの「現状把握」「目標設定」「問題特定」で得られた効果
  • 詳細設計の書き方 - Qiita

    はじめに システム開発において詳細設計という工程があります。 プログラマーはこの詳細設計を確認しながら開発を行うことになります。そのため詳細設計ではシステムの構造や仕様、動作などを細かく定義することが必要になります。 詳細設計を行うことでシステム開発の方向性が明確になり、コーディングやテストをスムーズに行うことができます。 詳細設計の成果物としてはクラス図やシーケンス図、画面設計書やデータベース設計書などがあり、システムの動きや機能を具体的に表現するものです。 今回は詳細設計を作成する機会があったので、詳細設計の書き方についてまとめたいと思います。 詳細設計の目的やメリット 詳細設計の目的は、システム開発の品質や効率を向上させることです。詳細設計では、システムの仕様や動作を細かく定義することで、以下のようなメリットがあります。 開発工程でのバグや遅延を減らすことができる テスト工程での不具

    詳細設計の書き方 - Qiita
  • x86-64機械語入門

    この記事はx86-64の機械語を書けるようになるためのガイドとなることを目指します。読者はアセンブリー言語について既にある程度知っていることを想定します。 情報源 x86-64の機械語のオフィシャルなガイドはIntelのSoftware Developer ManualまたはAMDAMD64 Architecture Programmer's Manualです。 Intel SDM: Intel® 64 and IA-32 Architectures Software Developer Manuals AMD64 Architecture Programmer's Manual, Volumes 1-5 このほか、Cから呼び出される関数を定義したり、Cの関数を呼び出すためには、呼び出し規約の知識も必要です。使用される呼び出し規約はOSに依存し、Unix系では主にSystem V ABI

    x86-64機械語入門
  • Pike VMとEarley法の関係についてRubyで実装して考えてみる | makenowjust-labs/blog

    正規表現マッチングの実装手法の1つとしてPike VMと呼ばれるものがあります。 これはGo言語の正規表現実装やRustのregex crateで使われている手法であり、正規表現rrrと入力文字列wwwに対してO(∣r∣×∣w∣)O(|r| \times |w|)O(∣r∣×∣w∣)の計算量でマッチングができるのが特徴です。 Earley法はJay Earleyの提案した文脈自由文法 (CFG) の構文解析手法の1つです。 すべてのCFGを構文解析できる手法で最悪計算量はO(∣w∣3)O({|w|}^3)O(∣w∣3)ですが、無曖昧であればO(∣w∣2)O({|w|}^2)O(∣w∣2)で、決定的であればO(∣w∣)O({|w|})O(∣w∣)で構文解析ができます。 実装してみると分かりますが、Pike VMとEarley法には類似している点があり、Earley法をPike VMの発展系の

    Pike VMとEarley法の関係についてRubyで実装して考えてみる | makenowjust-labs/blog
    yusuket
    yusuket 2023/08/08
    あとで読む
  • Linuxのローダを自作する

    概要 Linuxのスタンダードなローダ、ld-linux-x86-64.so.2 の挙動を理解するために、ld-linux-x86-64.so.2を置き換え可能な https://github.com/akawashiro/sloader を2年ほど前から開発しており、ある程度動くようになってきました。 目次 ローダとは何か ld-linux-x86-64.so.2 の問題点 sloader sloader の現状 sloaderの実装 libc.so内のシンボルの解決 ロードされたプログラムのためのTLS領域の確保 sloaderの課題 お願い ローダとは何か Linuxで実行可能なバイナリファイルをexecve(2)を使って実行するとき、その実行パスは大きく2つに分類されます。 Linux カーネルが直接、バイナリファイルをメモリ空間にロードする。 バイナリが指定したローダ[1]がバイ

    Linuxのローダを自作する
  • 【1日たった5分】メリットだらけ!股関節の可動域を広げる毎日続けたいヨガポーズ5選 | ヨガジャーナルオンライン

    普段の生活であまり意識することのない股関節ですが、立ち上がったり歩いたりなどの日常動作に重要な役割を果たしています。股関節の可動域が狭まると他の関節に負担がかかり、痛みが生じるなど身体の不調につながる場合もあるため、ストレッチなどを通して常に股関節の動きをスムーズにしておくことが大切です。今回は股関節周りの可動域を広げるのに効果的なヨガポーズをご紹介します。 股関節の可動域が狭い!その原因は? 股関節とは、大腿骨と骨盤が接する部分のことを指します。大腿骨上部のボール状の部分が、骨盤のソケットにはまるような構造をしていて、通常それなりに可動範囲のある関節です。股関節の可動域が狭い原因としては、生まれつき骨の構造上可動域が狭いということや、病気や怪我によって動きづらくなるということがありますが、そのような要因が考えられない場合は、筋力不足や筋肉の硬さなどが原因の一つとして考えられます。 股関節

    【1日たった5分】メリットだらけ!股関節の可動域を広げる毎日続けたいヨガポーズ5選 | ヨガジャーナルオンライン
  • テキストエディタで使われがちなデータ構造 Piece Table の概要と実装 - A Memorandum

    テキストエディタのデータ構造 Gap method Piece Table method Piece Table の構造 Piece Table の実装 Piece Table のメソッド まとめ テキストエディタのデータ構造 テキストエディタで採用されているデータ構造にはいろいろあります。 こちらの論文 Data Structures for Text Sequences では各種データ構造について比較検討されています。 多くは、Gap method や Piece table method をベースにしたものが多いのではないでしょうか(図で言う最下部の中心の丸印に当たります)。最近では Rope なども有名ですね。 Gap method Gap method では、現在のカーソル位置で、テキストバッファを2つに分割し Gap を間に挟み、カーソル位置に対する編集(テキスト追加/削除)を

    テキストエディタで使われがちなデータ構造 Piece Table の概要と実装 - A Memorandum
  • 池袋の達人・谷頭さんにおすすめスポットを案内してもらった

    池袋駅東口に集合! やってきました池袋! 周知の事実だが、池袋駅はとにかく人が多い。平日の昼間だから空いているだろうとたかを括ってきたが、サラリーマンや学生で人がごった返していた。 「最初のスポットはこちらです!」と早速ガイドさん並みの仕切りを見せる谷頭さん 駅前の交番。池袋にはいたるところにフクロウがいる 池袋とフクロウの関係は勝手ながらダジャレ的な意味だけだと思っていたが、昔このあたりに池があって、そこにフクロウがいたことに由来しているとかいないとか。 目的地まで歩きながら池袋トーク 谷頭さんは実家が池袋周辺らしく、幼少期から慣れ親しんだ街だそうだ。池袋で生まれ育ったなんてかなりワイルドでかっこいい。生粋の地元民からどんなおすすめスポットを教えてもらえるのか……楽しみで仕方ない! ジュンク堂書店 9階にある「ふるさとの棚」 ジュンク堂書店へやってきました! ツアー最初の地点へ到着。池袋

    池袋の達人・谷頭さんにおすすめスポットを案内してもらった
  • 表紙 - 本物のC

    このサイトは「物の C 言語」について学習する機会の提供を目的としています。 「物の」とはつまり、 標準規格(仕様)が C 言語をどういうものとして定めているか C プログラムが実際に CPU をどう動かすか という二つの意味合いに於いてです。 どうも巷間にはその辺りを気にせず何となくで書かれた資料が多い様なので、このサイトにより少しでも世界が最適化される事を期待します。 権利について 当然ですがこのサイト全体は著作権法により保護されています。法と良心に則って御利用下さい。 連絡はcontact<アット>real-c.infoまで。

  • Electronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達

    WindowsmacOSLinuxなどのクロスプラットフォーム対応のデスクトップアプリ開発を容易にするフレームワークとして高い人気を持つフレームワークが「Electron」です。 ElectronはChromiumとNode.jsを用いることで、HTML/CSS/JavaScriptのWebテクノロジーによってデスクトップアプリケーションを開発できるのが最大の特徴です。 いまやElectronは、Visual Studio CodeやMicrosoft Teams、SlackGitHub Desktop、そして最近話題のNotionなど、さまざまなアプリケーションに採用されています。 このElectronの優れた特徴を備えつつ、よりメモリ消費量が小さくファイルサイズもコンパクトで、高いセキュリティを備え、柔軟なライセンスを実現しようと開発されたのが「Tauri」です。 Tauriは、

    Electronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達
  • ジャズのコード進行の原理 -

    前置き はじめまして, コンポーザー, DJなどをやっているArakurです. 昔は打ち込みジャズを専門で作っていたのですが, ここ最近は殆ど作る機会がなく, 知識やTipsを持て余すくらいなら同志や後進に託そうと思ったので少しずつ記事にしてみることにしました. 第1回は, 古典和声またはポピュラー和声についてある程度知っている方向けにジャズのコード進行の理論の原理的な部分について解説します(第2回が今後書かれるかはまだ分かりません). とりあえずこれを読み切ればそこいらのスタンダードの進行は最低限アナライズできるようになる, という感じの内容を目指しています. 記事は他ジャンルの制作にあたってジャズの知識を取り入れたいというような層を主に想定しています. 僕自身体系的なジャズ・音楽理論の教育を受けたわけではなく, 知識の大半はネットや古い教則, およびセッションなどによる実践的経験を

    ジャズのコード進行の原理 -
  • AWS全資格の概要と主な学習コンテンツをまとめてみた | DevelopersIO

    ブログは、2021 AWS Partner Ambassadors で構成するアドベントカレンダー Japan APN Ambassador Advent Calendar 2021 の 24 日目のエントリです。 こんにちは。CX事業部MAD事業部のYui(@MayForBlue)です。 年の瀬も迫った12/24ですが、みなさん資格勉強してますか?(挨拶 さて、IT系の資格の中でも人気の高いAWSの資格ですが、数も多いし何から取ったらいいのかわからない・・・という方も多いのではないでしょうか。 この記事ではAWSの全資格を紹介するとともに、2021 ALL AWS Certifications Engineers ホルダーとして資格取得やAWSの学習に有用なコンテンツをまとめてみました。 ブログをご一読いただくことでAWSの資格取得の一歩を踏み出していただければ幸いです。 想定読者

    AWS全資格の概要と主な学習コンテンツをまとめてみた | DevelopersIO
  • MySQLでIN句の中に大量の値の入ったクエリがフルスキャンを起こす話 - freee Developers Hub

    こんにちは、freee Developers Advent Calendar 2021、19日目のid:shallow1729です。昨日はtdtdsさんで【マジで】サイバー演習シナリオの作り方【怖い】でした!障害訓練後に攻撃方法を解説された時はリアリティの高さに驚きました。 僕はMySQLを使っていて発生した不思議な挙動の調査の話をしようと思います。 今回問題となったクエリ 今回話題にするクエリは以下のようなシンプルなものです。 SELECT * FROM hoge WHERE id IN (...) MySQLのパラメーター次第ですが、デフォルトの設定だとこのIN句の中の値の数が数万になると適切なインデックスが用意されていてもフルスキャンが発生する事がありました。このクエリがテーブルのほとんどのレコードを網羅するような場合や高速でレコードを大量にinsertして統計情報が追いつかないケー

    MySQLでIN句の中に大量の値の入ったクエリがフルスキャンを起こす話 - freee Developers Hub
  • Goのロギングライブラリ 2021年冬 - moriyoshiの日記

    この記事はPySpa Advent Calendar 2021の14日目のエントリーとして書かれました。昨日のエントリーは冷凍品でウキウキ引きこもり生活 でした。ちなみに私も70ℓの冷凍庫を購入しましたが当にライフチェンジングでした。 総論: なぜログが必要か 可観測性 たとえ目的は自明でも、その動作までが自明なアプリケーションというものはほぼ存在しません。現実の世界のアプリケーションというものは、動作パラメータだったり実行環境だったり、起動時点でのさまざまな要因によって挙動を変えるものだからです。そして、そうしたアプリケーションにはライフサイクルというものがあります。ここでいうライフサイクルは、アプリケーションの処理が実行されるにつれ、アプリケーションの内外との情報のやりとりで生じる大局的な状態の変化のことです。アプリケーションが並行処理を行うようなものであれば、個々の並行処理の単位

    Goのロギングライブラリ 2021年冬 - moriyoshiの日記
  • GitHub上のsensitive dataを削除するための手順と道のり | メルカリエンジニアリング

    Advent Calendar day 7 担当の vvakame です。 予告では Apollo Federation Gateway Node.js実装についてポイント解説 としていましたが、社内各所のご協力によりAdvent Calendarの私の担当日に間に合う形で公開できる運びとなりました。そのため告知とは異なりますが GitHub上のsensitive data削除の手順と道のり をお届けしていきたいと思います。 メルペイVPoE hidekによるday 1の記事で振り返りがあったように、今年、弊社ではCodecovのBash Uploaderに係る情報流出という事案が発生しました。当該インシデント対応において、プレスリリースにも記載のある通り、ソースコード上に混入してしまった認証情報や一部個人情報などの機密性の高い情報(sensitive data)について調査を実施し、対応

    GitHub上のsensitive dataを削除するための手順と道のり | メルカリエンジニアリング
  • AWSが無料オンライン講座を拡充、対面のクラウド学習スペースも開設へ

    AWSは、ユーザー向けにオンラインで最新の技術を学べる500種類以上のオンデマンドコースや対面でのクラウド学習専用スペースなどを無料で提供する。 Amazon Web Services(AWS)は2021年11月19日、ユーザーのスキル向上やキャリア開拓に向けた学習コンテンツを無料で提供すると発表した。 同社は具体的な取り組みとして、AWS関連スキルの学習コンテンツ「AWSスキルビルダー」を提供する他、社会人向けのITスキル習得プログラム「AWS re/Start」の内容を拡大し、クラウド業界向けキャリア支援施設「AWSスキルセンター」も開設する。 コロナ禍で業務のスキルに変化「学びたい」ニーズに無料で応える内容とは AWSは2020年12月に「2025年までに2900万人に無料のクラウドコンピューティングのスキルトレーニングを提供する」と発表した。今回の発表は、これを拡充するものだ。 A

    AWSが無料オンライン講座を拡充、対面のクラウド学習スペースも開設へ
  • Rustのメモリ管理機能とその特徴

    初出:技術評論社刊「ソフトウェアデザイン 2021年9月号」 先日、技術評論社よりRustのメモリ管理機能についての特集に寄稿させて頂きました。 この記事は自分が寄稿させていただいた記事をブログ用に一部推敲・加筆を加えたものです。 なお、ソフトウェアデザインでの特集ではより実践的な例でのメモリ管理についての解説もあるので、興味のある方は誌のほうも手にとっていただければと思います。 プログラム言語におけるメモリ管理の課題プログラミングにおける課題の一つとしてどうやってメモリ領域(ヒープ領域)を管理するかというものがあります。 C言語ではmalloc/free関数などを用いて手動でメモリを管理しています。 これらの関数はメモリアドレスを示すポインタを介してメモリ管理を行います。 malloc関数は必要なメモリ領域を確保してその先頭番地のポインタを返し、プログラム内ではその番地のメモリを読み書

  • ゼロからのPython入門講座 - python.jp

    このPython入門講座では、プログラミング経験の未経験者・初心者を対象に、ブラウザからPythonを実行できるサービスGoogle Colaboratory(Colab)を使って、Pythonの基礎をチュートリアル形式で解説します。 Colab は、Google社が提供する、Webブラウザからプログラミング言語Pythonを実行できるサービスです。Colabは無料で使えますし、めんどうな環境設定なしに、いきなりプログラミングを体験できますから、これからプログラミングをやってみたい、という方にはおすすめの学習環境です。 この講座では、プログラミング未経験者を対象に、Pythonプログラミングに必要な最低限な操作方法と、基礎知識を覚えてもらうことを目標にしています。この講座でかんたんにプログラミングの概要を学び、それから一般的なPythonの入門書に取り組むと、学習がスムーズに進むのではない

    ゼロからのPython入門講座 - python.jp
  • Rust初心者殺しの文法10選 - Qiita

    概要 この記事ではRust初心者が驚いたり混乱させられたりするようなRustの文法を10項目集めてみました。 これらの項目は知らないと理解できなかったりコンパイルエラーに悩まされたりする一見厄介なものたちなのですが、そのような直感的でない挙動を敢えてさせているところには重要な意味が込められていることが多いです。 そのため、これらの項目を通してRustが目指しているものや実現したい機能の一部を垣間見ることができると思います。 1. デフォルトの代入がムーブ Rustの最大の特徴が所有権の概念であることは有名ですが、それでもなお初心者殺しになるのがムーブです。 以下のコードがコンパイルエラーになるメジャーな言語は現状Rustくらいしか無いでしょう。 let mut a = vec![1, 2, 3]; let mut b = a; // ここでaの持つベクタの所有権がbにムーブされ、aは無効に

    Rust初心者殺しの文法10選 - Qiita
  • 正規表現の"正規"とは何か気になったら正規表現の歴史を紐解くことになってしまった話

    正規表現の"正規"って何 ある時ふと思いました。 「正規表現の"正規"って何だろう?」 「何を根拠に"正規"を名乗っているのか?」 と。 「誰かが『これが正規の表現だ』と言ったはず」で、 「それは周りにどうやって"正規"だと認められたのだろう」 ということが気になったので調べてみました。 "正規表現"という名前でなくて、"ジャックさんの表現"とか"記号ごちゃごちゃ表現"だったらこんな疑問も持たなかったのですけど。 数学における"正規"とは 一般に"正規"というと、"正規品"や"正規の手順"といったように"物の(genuine)"や"公式な(official)"といった意味がありますが、数学の"正規"はちょっと違います。 数学で"正規"(および"正則"、英語では"regular"または"non-singular")は、ある概念に強い制限をかけたもの、という意味です。強い制限をかけたものは取

    正規表現の"正規"とは何か気になったら正規表現の歴史を紐解くことになってしまった話