タグ

tacchiniのブックマーク (6,856)

  • SOLID: The concept behind the code

    tacchini
    tacchini 2024/02/02
  • Clean Architecture: The concept behind the code

    tacchini
    tacchini 2024/02/02
  • Component Principles: The concept behind the code

    tacchini
    tacchini 2024/02/02
  • 脳科学研究で唯一有効とされた「速読術」。手書きノートも活用すれば理解と記憶がさらに進む - STUDY HACKER(スタディーハッカー)|社会人の勉強法&英語学習

    勉強に専念できる学生とは異なり、社会人の場合は限られた時間を有効に使って勉強することが求められます。参考書などを読むにも、速く読めるに越したことはありません。 しかし、脳電気生理学者の下村健寿先生は、「世のなかの速読術のほとんどに効果がない」と言います。その一方で、脳科学研究でただひとつだけ有効だと確認された速読術もあるとも語ります。 構成/岩川悟 取材・文/清家茂樹 写真/石塚雅人 【プロフィール】 下村健寿(しもむら・けんじゅ) 1972年3月21日生まれ、群馬県出身。元英国オックスフォード大学生理学・解剖学・遺伝学講座/遺伝子機能センターシニア研究員。福島県立医科大学医学部病態制御薬理医学講座主任教授。医学博士・医師。1997年、福島県立医科大学医学部を卒業し、群馬大学医学部第一内科入局。臨床医として勤務。2004年、群馬大学医学部大学院(内科学)卒業:医学博士。同年、日を離れ英国

    脳科学研究で唯一有効とされた「速読術」。手書きノートも活用すれば理解と記憶がさらに進む - STUDY HACKER(スタディーハッカー)|社会人の勉強法&英語学習
  • 実録レガシーコード改善 / Working with Legacy Code: the True Record

    2024/01/15(月) 12:00 〜 13:00 t-wadaさんが後世に残したい、実録レガシーコード改善 https://findy.connpass.com/event/304101/ テストコードが無いコードを引き継いだところからはじまる、実際に2018年に行った受託開発案件のエピソードとコードをプロダクトオーナー(引き継ぎ前のコードを書いた人)の許可を得て使用しています。登場するコードは全て物、登場するデータは講演用の架空のものです。

    実録レガシーコード改善 / Working with Legacy Code: the True Record
  • 新規事業立ち上げのアンチパターン|福島良典 | LayerX

    新規事業立ち上げのアンチパターンについて考えてみる。 このアンチパターンは、完全な飛地の新規事業だけではなく、複数プロダクトを経営する中での隣接領域の新規プロダクトの立ち上げのときや、あるセグメントにPMFした状態から次のPMFを探すときも同様のアンチパターンが適用されうる。 ここでのアンチパターンは、1つ目の事業立ち上げ・プロダクト立ち上げで起こることはない。2つ目の事業や2つ目のプロダクトを立ち上げる際に留意する点であり、コンパウンドスタートアップを正しく経営するには必ず頭に入れておきたい内容である。 規模からの逆算と顧客インサイトの軽視新規事業における市場選択のアンチパターンである。 例えば、売上の30%成長を続けるための、計画と現実のギャップを埋めるために新規事業を規模から探してしまうみたいなケースで見られる。 大前提として、市場規模の推定は重要である。実際に事業をやっていると、い

    新規事業立ち上げのアンチパターン|福島良典 | LayerX
  • 【DDD入門】TypeScript × ドメイン駆動設計ハンズオン

    TypeScriptとドメイン駆動設計(DDD)を組み合わせ、APIを構築するハンズオンガイドです。このでは、DDDとは何かという基礎的なところからソフトウェア開発における戦略的設計、戦術的設計まで、包括的な知識を提供します。 戦略的設計では、ビジネスの要求に合わせたドメインモデルの設計をイベントストーミングを用いて行います。その後、戦術的設計では、具体的なコードの実装に関連するDDDの原則と実践を学びます。 TypeScriptを使ってコードを書きながら、DDDの概念を実際のプロジェクトに適用するヒントを紹介します。

    【DDD入門】TypeScript × ドメイン駆動設計ハンズオン
  • 設計書を書かない設計で開発効率を向上させた話 - Tabelog Tech Blog

    この記事は べログアドベントカレンダー2023 の23日目の記事です🎅🎄 こんにちは。べログシステム技術部 仕入チームの@shohei-yです。 今回は、新規事業の「べログ仕入」プロダクト開発において所謂「設計書」を書かない設計に挑戦して開発効率を向上させた話を書きます。 (結局「書くの?書かないの?どっちなんだい!」と感じた人は、ぜひ読み進めてください。) 所属している仕入チームについてはこちらの記事をご覧ください。 目次 なぜ設計書を書かない設計に挑戦したのか 設計書を書かないチーム 設計書を書かないことによる問題 1. チーム協力の課題 2. ソースコードの複雑化 3. チーム変動に関わる問題 設計工程導入のきっかけ 設計書を書かない挑戦の背景 設計書を書かない設計 フロントエンド・バックエンドのインターフェースの明確化 ソースコードのスリム化対策 設計のレビュー方法

    設計書を書かない設計で開発効率を向上させた話 - Tabelog Tech Blog
  • iki-iki

    WelcomeVisitors / Discord / 執筆者募集中 / 岩瀬義昌 / 『エレガントパズル エンジニアのマネジメントという難問にあなたはどう立ち向かうのか』 / 『An Elegant Puzzle: Systems of Engineering Management』 / PWX-19 / PWX / 『関数型デザイン 原則、パターン、実践』 / 『Functional Desi

    iki-iki
    tacchini
    tacchini 2023/12/13
  • 課題を管理して実行して達成するための手順 - そーだいなるらくがき帳

    今年、この話を何度か別々の人にすることがあってずっと纏めようと思っていたのだけど一年が終わってしまうので来年の自分のために今書いてしまう。 目新しいことは何一つ無いのだけど、大切なことだし、意外と社会人になってしまうと教えてもらえないことも多いみたいなのでここでまとめる。 表題のこと、つまりやりたいことを実現するために必要なことは、そんなに難しいことじゃなくて以下の条件を満たし、実行することが大事だ。 やりたいこと=課題をタスクに分解する タスクを実行できるだけのリソース(時間・お金・体力など)を割り当てる 実行する これだけなんだ。仕事だってなんだって一緒なんだけど、だけどこれを日常的に実現することが難しい。 だからどうやって実現していくか?って説明のために、自分がやってることを書く。 課題を整理する 仕事と作業は違うという話がある。 トヨタでは最初にそれを教わるらしい。 www.har

    課題を管理して実行して達成するための手順 - そーだいなるらくがき帳
    tacchini
    tacchini 2023/11/06
  • "レガシー"と言われないためのJavaScript再入門

    追記: 10/11 ハテブでバズっているようで、色々指摘があったので追記 getElement*は動作が早いのでIDやクラス名が自明の場合はgetElement*を使う方がいいと言う意見もあり、また、ページの表示で大量に呼び出されるわけではないからボトルネックにはならないと言う意見もある。 getElement*で返されるオブジェクトは動的な変化に対応しており、querySelector*は動的な変化に対応していないため、場合によってはgetElement*を使うといい。このサイトで遊んでみよう。 https://ja.javascript.info/searching-elements-dom#ref-263 for await ... ofは非推奨なので Promise.allを現代的な書き方にした 顧客先のブラウザが古い場合も考慮して、あえてレガシーな書き方もする場合があるらしい。現

    "レガシー"と言われないためのJavaScript再入門
  • MySQL 5.7 to 8 check list

    mysql57to8.md 確認すること メンテナンス時間をどれくらい取れるかで戦略が決まる。 基的にはメンテナンス時間を十分に取れたほうが良い。 またリスクをどれだけ許容できるかもビジネスによるので要確認しておくべき。 基的には一度切り替えてしまうとロールバックすることは簡単ではない。 覚悟を決めて突き進む必要がある 最初に諦めること MyISAMを使いたい 8でも動くけど諦めろ、もう未来はない InnoDBのほうがDisk サイズを消費する、countが遅い、などの課題はあるので簡単ではないが… InnoDB memcached Pluginとか使ってるんだよね 諦めろ、未来はない これを機にアーキテクチャを見直しましょう PKが無いtableがあるんだよね すべてのtableにまずPKを付けるんだ このあと、DMSを使ったりとかなにをするにしても死ぬ そもそもデータモデルとして死

    MySQL 5.7 to 8 check list
  • 【テンプレ付】chatgptを使ってツールの要件定義をしたら工数が40時間→4時間になった - みんなのシステム企画

    chatgptを使って要件定義の工数を削減したい」 「そもそもchatgptを使って質の高い要件定義ができるのだろうか」 とお悩みなのではないだろうか。 結論、chatgptで質の高い要件定義を短時間で実現することは可能だ。 実際に私もchatgptを使って下記のような要件定義書を完成させた。 通常この要件定義書を0から自力で作ろうと思うと40時間はかかるが、chatgptを使う事によって4時間で完成させることができた。 しかし、ただプロンプトをなんとな投げ掛ければ良いというわけではない。 目的を達成するために綿密に設計をしたプロンプトを投げかける必要がある。 また、要件定義の中でも ・chatgptに丸投げして良いところ ・自分で手直しをした方が良いところ を精査することも大切だ そこで今回は上記のような要件定義書を4時間で完成させるために、私がchatgptへ投げかけたプロンプトを全

    【テンプレ付】chatgptを使ってツールの要件定義をしたら工数が40時間→4時間になった - みんなのシステム企画
  • ちょっと広く例外を学んでみた - Qiita

    はじめに 6月に凄腕エンジニアさんから学んだ例外の話というQiita記事を書かせていただいたところ、かなり反響がありました。(2023年07月08日時点で570いいね、550ストック、はてなブックマークが560usersにブックマークされています) コメントなども目を通させていただいたところ、自分に基的な例外の知識が足りないなと思ったので、いろいろな記事に目を通したり、を読んだりして、インプットしました。 そのアウトプットとして今回記事を書きます。 エラーと例外 この記事ではエラーと例外という二つの概念は同じ概念で交換可能なものとして扱います。 (ソフトウェア設計のトレードオフと誤りより引用) Javaでは【プログラムではどうにもできない事態が起きた時に発生するものがエラー、そうではないものは例外】というような考え方があったり、他にも【想定内であれば例外、想定外であればエラー】という考

    ちょっと広く例外を学んでみた - Qiita
    tacchini
    tacchini 2023/07/11
  • CakePHP2 から CakePHP4 への移行について (1) – iroha Tech Note

    iroha Tech Note 備忘録です。HTML5/JS、Electron(旧Atom-Shell), NW.js(旧node-webkit)、Adobe AIR/Flex、標準化の話などを中心に、日々学んだことを書いていきます。 フレームワークのアップグレードは、しばしば開発者にとって頭の痛い問題となっています。今回は恐らく多くの組織で課題となっていると思われる CakePHP2 から CakePHP4 へ移行について取り上げてみたいと思います。 小規模かつCakePHP2版のソースのメンテナンスの継続を前提としたソフトウェアを移行対象としており、他のシステムの移行に対してはあまり参考にならない可能性があります。またビヘイビア、コンポーネント、ヘルパー、プラグイン、シェル、テストは移行対象としていません。記載しているコードは事前調査のために独自に作成したもので、動作を保証するものでは

  • 4.0 アップグレードガイド - 4.x

    4.0 アップグレードガイド¶ 4.0 にアップグレードする前に、まず 最新の CakePHP 3.x へのアップグレードを済ませておいてください。 注釈 アップグレードツールは、最新のCakePHP3.xで実行されているアプリケーションでのみ機能します。CakePHP 4.0 にアップデートした後は、アップグレードツールを実行できません。

  • 3.0 移行ガイド - 3.10

    3.0 移行ガイド¶ このページには、CakePHP 2.x ブランチ以来にコアで起こった変更の参照だけではなく、 プロジェクトを 3.0 に移行するのに役立つ CakePHP 2.x からの変更をまとめました。 すべての新機能と API の変更については、このガイドの他のページを必ずお読みください。 必要条件¶ CakePHP 3.x は、PHP バージョン 5.4.16 以上をサポートしています。 CakePHP 3.x は、mbstring 拡張モジュールを必要とします。 CakePHP 3.x は、intl 拡張モジュールを必要とします。 アップグレードツール¶ このドキュメントで CakePHP 3.0 で行われたすべての重大な変更と改良をカバーするほかに、 時間のかかる一部の機械的修正を補助してくれるコンソールアプリケーションを作成しました。 あなたは github からのアッ

  • CakePHP2→4の移行作業で意識している点 - Qiita

    この記事はLancers(ランサーズ) Advent Calendar 2020 11日目のエントリーです。 はじめに ランサーズ株式会社に21卒入社予定でインターンをしている川原です。 現在、Lancersの管理画面のバージョンアップ作業を行っています。 CakePHP2.8→4のバージョンアップのための書き換えを行っているのですが、実際にソースコードを書き換えていく際に意識している(していこうと思う)点について書きます。 こちらの記事でCakePHP2→4バージョンアップについて紹介されています。 旧実装にひきずられないようにする コピペして終了、とならないのが移行作業です。実際にどのような手順を踏むかは以下です。 旧実装の仕様把握 バージョンアップ作業において、最初に認識するべきことは旧実装の仕様です。仕様を把握しないとそもそも書くことができません。 そのため、CakePHP2で書か

    CakePHP2→4の移行作業で意識している点 - Qiita
  • ざっくりcakephp2 vs cakephp4の違い - Qiita

    はじめに CakePHPとはRuby on Railsの概念の多くを取り入れ、Rails流の高速開発とPHPの機動性を兼ね備えたPHPフレームワークです。 現在baserCMS5に向けてucmitzプロジェクトの開発に取り組んでいるのですが、cakephp2→cakephp4への移行にかけて大きな変化があったのでその問題についてざっくりまとめていこうと思います。 baserCMSを利用している場合こちらもcakephp2→cakephp4移行の参考になるのでチェックしてみてください 目次 共通の変更点 名前空間について 初期化について コントローラーの変更点 requestなどがget~/with~形式になっている AuthComponentがAuthenticationとAuthorizationに変更 セッションの変更点 ビューの変更点 id名の変更点 内部のオプションでidが自動で表

    ざっくりcakephp2 vs cakephp4の違い - Qiita
  • Cakephp4へのバージョンアップ - Qiita

    //社内便利コンポーネントの呼び込み $components=array('CommonOriginal', array('model'=>'Work', 'index'=>array('hogehoge'・・・);////省略 public function edit($id=null){ //ログイン者の情報も必要なので取得。 $user = $this->Auth->user(); $status = $this->UserStatus->getXXStatus($user['id']); //データの取り出しJoinしまくり if($status==1){ // 省略 } $WorkCheck = $this->Work->findById($id); $data = $this->Work->find('all', array( 'fields'=>Hash::merge( $t

    Cakephp4へのバージョンアップ - Qiita