soachrのブックマーク (231)

  • 大事ではないことを大事だと錯覚した結果、オーバーエンジニアリングになる - @i2key のBlog

    ブログは Recruit Advent Calendar 2021 - Adventarの25日の記事になります。 ITビジネスやサービスにおけるプロダクト開発で良くある、作りすぎ。やりすぎ。 無駄なく、効率的にと思っても、ついつい発生しちゃう。 こういうの、オーバーエンジニアリングって言うらしいよ!? でも、どこからオーバーで、どこまではオーバーじゃないんだ!! ということで、勝手にオーバーエンジニアリングを定義してみようと思います。 作り過ぎて、時間や金を無駄にすること???? とっかかりとして・・・まずは一般用語としてのオーバーエンジニアリングの意味をwikiで調べてみると以下のように記述されています。 wikipedia英語版) Overengineering - Wikipedia 一部抜粋。 Overengineering (or over-engineering,[1]

    大事ではないことを大事だと錯覚した結果、オーバーエンジニアリングになる - @i2key のBlog
  • ドメイン駆動設計からオブジェクト指向、そしてアジャイル開発まで。関連書籍練り歩きのススメ

    記事はドメイン駆動設計(DDD) Advent Calendar 2021 25日目の記事です。 「もっとビジネス変化に耐えられる設計を目指したい」「ただデータをやりとりするだけなのに複雑化してしまうのを防ぎたい」 様々な動機からドメイン駆動設計に入門しようとする方がいると思います。 自分もエンジニアとして働きはじめて、「どうしてすぐに変更しにくくなってしまうのか」「より柔軟な設計にするにはどうすればよいか」と悩むことが多くなり、良い設計手法を探って出会ったのがドメイン駆動設計でした。 最初はドメイン駆動設計関連のばかりを読んでいたのですが、途中から「これってドメイン駆動設計というよりはオブジェクト指向の話では?」とオブジェクト指向に興味を移し、さらに「より変化に強いプロダクト開発するにはチームから変化させないとまずいのでは?」とアジャイル開発に興味が移りました。 記事では、ドメイン

    ドメイン駆動設計からオブジェクト指向、そしてアジャイル開発まで。関連書籍練り歩きのススメ
  • SQL等価性検証ツールCosetteを使ってみた - Qiita

    はじめに 皆さん、SQLチューニングしてますか?(唐突) 私は仕事RDBMSSQLチューニングをすることが多いのですが、たまにチューニングの一環で SQL文の書き換え をすることがあります。 その際に問題になるのが、書き換えたSQL文が等価であるかどうかの確認が大変なことです。 SQL文を書き換えた場合には、想定通りの結果を取得できるか確認するために、テストをやり直す必要があります。 これが開発早期のフェーズならまだましなのですが、結合テスト以降だと手戻りも多くかなりコストがかかりますし、既に番運用が始まったシステムともなると、テスト自体が困難なこともあります。 また、複雑なSQL文だと網羅的なテストケースを作成すること自体が困難であるため、完全に正しいと確信することはできません。 なので、SQL文の書き換えの正しさを証明する良い手段はないかと考えていました。 SQLチューニングとは

    SQL等価性検証ツールCosetteを使ってみた - Qiita
  • 面倒なドキュメント生成はCIにやらせよう - Gunosy Tech Blog

    こんにちは、koidです。 この記事は Gunosy Advent Calendar 2021 - Adventar の25日目の記事です。 昨日の記事は aitaさんの EKSにJupyterHubを構築した - Gunosy Tech Blog でした。 ドキュメントの更新って面倒だし忘れがち ドキュメントのメンテナンスを自動化しよう コードからドキュメントを自動生成する ツールの利用によるドキュメント生成 CIによるドキュメント生成の自動化 状態からドキュメントを自動生成する ツールの利用によるドキュメント生成 CIによるドキュメント生成の自動化 まとめ ドキュメントの更新って面倒だし忘れがち 題です。 みなさん、Pull Requestのレビュー時に、 ドキュメント・READMEも修正お願いします! こういったコメントをした/された経験ってありませんか? コメントをする側としても

    面倒なドキュメント生成はCIにやらせよう - Gunosy Tech Blog
  • 食べログアプリでの技術的負債との向き合い方 - Qiita

    こんにちは。べログでAndroidアプリ開発をしている @sada と申します。 この記事は べログ Advent Calendar 2021 22日目の記事です。 はじめに 先月、TECH HILLS #1 というイベントで登壇させていただきました。 その時の資料はこちらです。 今回は上記資料でも触れている「レガシーコードと向き合う辛さ」についてお話できればと思います。 イベントにご参加いただけた方は発表やその後のパネルディスカッションなどでお話ししたような内容も含まれるかと思います。その点はご了承ください。 簡単にチーム紹介 私はべログシステム部アプリ開発部基盤チームに所属しています。 アプリ基盤チームはリファクタリングや環境改善を専門にしたチームで、以下のような業務を行っています。 OSバージョンアップ対応 ライブラリ、ツールの継続的なバージョンアップ・差し替え アーキテクチ

    食べログアプリでの技術的負債との向き合い方 - Qiita
  • 2021年、企業が無償公開した新人エンジニア向け研修資料 機械学習やゲーム開発、AWS入門、数学などさまざま

    ミクシィ、iOS/AndroidアプリやUnity開発などの資料 ミクシィは4月28日、iOS/Androidアプリの開発やゲームエンジン「Unity」を使ったゲーム開発が学べる内容の研修資料を公開した。スライドと動画がセットになっており、中には5時間を超えるものもある。 講師はスマホゲーム「モンスターストライク」の開発に関わったエンジニアなどが担当。「(動画なら)新卒以外も受講できるのでは」と考えて動画も公開した。「講師がコーディングを実演しながら進めることも多いので、講師の(作業)画面が見やすいことは大切」とメリットを説明する。 (関連記事:ミクシィの新卒エンジニア研修資料が話題 講師は「モンスト」エンジニアなど iOS/AndroidアプリやUnity開発などを公開) freee、アクセシビリティーに関する研修資料 freeeは11月30日、どんな人でも同じようにサービスなどを使える

    2021年、企業が無償公開した新人エンジニア向け研修資料 機械学習やゲーム開発、AWS入門、数学などさまざま
  • Rustを使ってスケーラブルなプログラムを書く方法 - かとじゅんの技術日誌

    この記事はRust Advent Calendar 2021の12/24日の記事です。 仕事ではScalaを使っていますが、趣味のプログラミングではRustで書いたものが増えました。Rustは楽しいですね。 今回は、Rustでオブジェクト指向プログラミングに関数型デザインを導入することで、スケーラブルなプログラムを書く方法(スケーラブル・プログラミング)について書きます。 「スケーラブル・プログラミング」といえばScalaです。Scalaの「スケーラブル」という言葉には「小さいプログラムも大規模なプログラムも同じ概念で記述できるべきである」という、柔軟性や拡張性を重視した設計の意図が込められています。それを実現するために必要なものは、オブジェクト指向と関数型を組み合わせたマルチパラダイムな設計です。 Scalaはマルチパラダイム言語の先駆者(今も先頭を走り続けています)ですが、他の言語にも

    Rustを使ってスケーラブルなプログラムを書く方法 - かとじゅんの技術日誌
  • たぶんもう怖くないGit ~Git内部の仕組み~ - Qiita

    追記 先日外部向けに、この記事の内容に追加補足などを加えて発表しました。動画のアーカイブ、資料も公開しましたので、もし動画の方がわかりやすい方はこちらをオススメします。 注意: 動画の質疑の中で、 github のリリース機能が、アノテートタグを使っていると明言してしまいましたが、間違いです。gitのデータ上はただの軽量タグで、 release の内容は軽量タグに紐づく形で、 github のアプリケーション上で管理されているはずです。 はじめに 調べてもう1年放置していた内容なんですが、アドベントカレンダーで重い腰を上げました。 Gitの内部の仕組みを知りたい(動機) 毎日使うといってもいいGitですが、どうやって履歴を管理してるんだとか、よくわからないまま使っているのが急に怖くなりました。 Gitを触り始めで、よく以下のような疑問が沸くと思います。 どうやってGitは履歴を管理してるん

    たぶんもう怖くないGit ~Git内部の仕組み~ - Qiita
  • DeepLの”公式”Chrome拡張がヤバイ。TwitterもSlackも英語でつぶやき放題 | DevelopersIO

    ちゃだいん(@chazuke4649)です。 DeepLの公式Chrome拡張機能がヤバかったので勢いにまかせて紹介します。 "公式版"がリリースされてたの知ってた? DeepL翻訳(ベータ版) - Chrome ウェブストア ベータ版ではありますが、いつの間にか公式版がリリースされていました。自分は今まで公式版がなかったので、以前は非公式版のツールを使っていました。 インストールする Chromeウェブストアからインストールすると、右上にアイコンが表示されます。それをクリックすると以下ポップアップ画面が表示されます。 現時点では以下2つの機能が存在します。 読む: ブラウザ上の文章を任意の言語に翻訳して表示できる 書く: ブラウザ上に入力している文字を任意の言語に変換できる それぞれ試してみます。 「読む」 一般的にはこちらがよく認知されている機能だと思います。 下図のように、翻訳したい

    DeepLの”公式”Chrome拡張がヤバイ。TwitterもSlackも英語でつぶやき放題 | DevelopersIO
  • 頼りにするのと依存するのは違うという話 - Innovator Japan Engineers’ Blog

    こんにちは、CTOの山岡(@hiro_y)です。このエントリーは「イノベーター・ジャパンAdvent Calendar 2021」の24日目の記事です。 あなたの会社に「頼りにできるエンジニア」はいるでしょうか。業務に必要なドメイン知識を持っていて、技術的にも複数領域携われる力があるような、そういう存在。 非常にありがたい存在なのですが、彼らに対して私たちはどうしても依存しがちです。この人に聞けば答えてくれる、安心感。それはいつしか依存に変わります。いつの間にか、その人なしではプロジェクトがまわらないようになっていたりしないでしょうか。その人がいるから他にエンジニアを入れなくていい、と判断してしまうこともあるかもしれません。 プロジェクトが小さいうちは、それでもシステム開発が成り立ちます。しかしプロジェクトが大きくなったり、継続性を考えなければならなくなったときに個人の力に頼りすぎてしまう

    頼りにするのと依存するのは違うという話 - Innovator Japan Engineers’ Blog
    soachr
    soachr 2021/12/25
    色々、わかりみが深く、色々、思うところがあるなあ
  • Engineering Managerの役割を無くしてみた - Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)

    こんにちは、ゆのん(id:yunon_phys)です。この記事は Akatsuki Advent Calendar 2021 の22日目の記事です。 アカツキでは数年前よりEngineering Managerの役割をおいているのですが、この度、Engineering Manager(EM)の役割を公式に無くしました。私の個人的な活動で、EMによるEMのためのPodcastをやっているし*1、社内でもそういう活動を知っている人がいるし、世間からするとお前がそれを言うのか〜と言われそうなのでなかなか勇気のいる決断でした。ただ、今後の会社の方針を考えたときに、今見直すタイミングなんじゃないかと思い、思い切って無くしてみました。 記事ではなぜ無くすことにしたのか、これからどうしていくのかを書いていきます。 EMのやることが消滅したわけではない アカツキのEMエンジニアのマネジメントと、プロジ

    Engineering Managerの役割を無くしてみた - Akatsuki Hackers Lab | 株式会社アカツキ(Akatsuki Inc.)
  • 月経痛と血の漏れを体験できるVR、奈良女などが開発 電気と温度で症状を再現

    Innovative Tech: このコーナーでは、テクノロジーの最新研究を紹介するWebメディア「Seamless」を主宰する山下裕毅氏が執筆。新規性の高い科学論文を山下氏がピックアップし、解説する。 月経に伴う身体的な不快感や、月経症状によって行動が制限されることによる精神的な煩わしさを、男性に理解してもらうのは難しい。女性同士でも、月経の症状や程度は多様であるため、辛さを理解し合うことは困難である。そこでこの研究では、電気的筋肉刺激(EMS)による月経痛と、温度制御ができるペルチェ素子による月経時の経血の漏れ感覚をシミュレートするシステムを提案する。 EMSを使った月経痛システムは、2枚の電極パッドをユーザーの腹直筋下部に装着して使用する。各電極パッドの最大電流は23mA。刺激周波数は皮膚インピーダンスを安定させるために150Hzに設定し、最大電圧を一定時間持続するような波形とした。

    月経痛と血の漏れを体験できるVR、奈良女などが開発 電気と温度で症状を再現
  • 今日からできるSQLパフォーマンス向上テクニック3点 - RAKUS Developers Blog | ラクス エンジニアブログ

    はじめに こんにちは。新卒3年目になりましたtaku_76です。 今回はSQLについての記事を書こうと思います。その経緯としては、業務でSQLを少し書くことはあったのですが、 必要な情報を取り出せたらいいや、くらいの意識しかなく、あまりパフォーマンス面を意識するということはありませんでした。 しかし、今後の新規開発でSQLの改修があった際、パフォーマンスの考慮は必ず必要になってきますので学習することにしました。 学習にあたっては以下の書籍を用いて学習しました。1部と2部に分かれているのですが、今回の記事では1部について、パフォーマンス面に注視して印象に残ったことを具体例とともに取り上げています。あくまで考え方を取り上げたかったため、文法の説明などは割愛しています。 www.shoeisha.co.jp はじめに パフォーマンスの向上のために覚えるべきこと CASE式 CASE式の中で集約関

    今日からできるSQLパフォーマンス向上テクニック3点 - RAKUS Developers Blog | ラクス エンジニアブログ
  • 「Googleドライブ」で不適切なファイルの取り締まりがスタート

    by myvaartha news Googleが2021年12月14日に、クラウドストレージサービスの「Googleドライブ」の利用規約を改訂し、ポリシー違反と判断されたファイルへのアクセスを制限する積極的な不正対策を段階的に導入すると発表しました。 Google Workspace Updates: New notifications when Drive content violates abuse program policies https://workspaceupdates.googleblog.com/2021/12/abuse-notification-emails-google-drive.html Google Drive could soon start locking your files | TechRadar https://www.techradar.com

    「Googleドライブ」で不適切なファイルの取り締まりがスタート
  • PHPにはエスケープ関数が何種類もあるけど、できればエスケープしない方法が良い理由

    このエントリは、PHP Advent Calendar 2021 の20日目のエントリです。19日目は @takoba さんによる PHPプロジェクトのComposerパッケージをRenovateで定期アップデートする でした。 SQLインジェクションやクロスサイトスクリプティング(XSS)の対策を行う際には「エスケープ処理」をしましょうと言われますが、その割にPHP以外の言語ではあまりエスケープ処理の関数が用意されていなかったりします。それに比べてPHPはエスケープ処理の関数が非常に豊富です。これだけ見ても、PHPはなんてセキュアなんだ! と早とちりする人がいるかもしれませんが、しかし、他言語でエスケープ処理関数があまりないのはちゃんと理由があると思うのです。 稿では、PHPのエスケープ処理用の関数を紹介しながら、その利用目的と、その関数を使わないで済ませる方法を説明します。 SQL

  • ざっくり理解するSRE - Qiita

    昨今では自社のプロダクトやシステムのエンゲージメント向上のために、「DevOps」や「アジャイル」といったキーワードのもと、大小さまざまな企業がシステムやアプリの開発手法の改善を試みています。その中において、最近だと「SRE」というキーワードを聞く頻度も多くなってきたかと思います。 しかしアジャイルやCICDなどと比べ、SREについては「言葉は知ってるけど具体的になんなのかはよくわからない」という方もいるのではないでしょうか?ここではそんな方々向けに、SREの最初の一歩となる概要について、独自の解釈を交えつつまとめていきます。 ここで話すこと SREって何? なぜSREが必要? SREってどんなことするの? ここで話さないこと SREの技術の具体的なところ(k8sやAPMの導入手順、設定方法など) プラクティスの実践例・具体例(アーキテクチャ、各種設定値、モニタリング指標など) TL;DR

    ざっくり理解するSRE - Qiita
  • Microsoft Research、バグを発見、修正するためのディープラーニングモデル「BugLab」を開発

    Microsoft Research、バグを発見、修正するためのディープラーニングモデル「BugLab」を開発:バグを自動的に埋め込み、それを発見することで学習 Microsoft Researchは、コード内のバグを発見、修正するためのディープラーニングモデル「BugLab」を開発した。BugLabではラベル付きデータを使わずに、バグを自動的に埋め込み、それを発見する“かくれんぼ”ゲームを通じてバグの検出と修正をトレーニングする。

    Microsoft Research、バグを発見、修正するためのディープラーニングモデル「BugLab」を開発
  • VSCode + Markdownでスライドや書籍も書いちゃおう! - Qiita

    はじめに Markdownって便利ですよね? README.md、PR や Issue の文やコメント、Qiita や Zenn はもちろん、Google Docs や Trello や Notion や Jupyter Notebook でも使えるみたいです。もっといろいろな文書を Markdown で書ければいいのになあ、あらゆる文書のソースコードを Markdown にできればいいのになあ。 さあ、Markdown の可能性を広げましょう! 記事では「スライド」と「(電子)書籍」をMarkdownで書く方法をご紹介したいと思います。もちろん、VSCodeMarkdownを効率よく便利に書いていくためのチップスもご紹介していきますよ。 ご参考スライド VS Code Conference Japan 2021 で発表した際の以下スライドもご参照ください。 もちろんこのスライドもV

    VSCode + Markdownでスライドや書籍も書いちゃおう! - Qiita
    soachr
    soachr 2021/12/19
  • テクノブレーン被害者アドベントカレンダー Day 19 - その手の平は尻もつかめるさ

    この記事はテクノブレーン被害者アドベントカレンダーの19日目として書かれています。このアドベントカレンダーは今まさに作りましたから、参加者は自分しかいません。他に被害者がいたら続きを書いておいてください。 この記事は特定の企業に対する苦情および批判が含まれます。お前だ、テクノブレーン。 こんなことが横行していては、「リクルーティング」という職業の価値が著しく毀損されてしまうし、ソフトウェアエンジニアリング産業自体がスポイルされていってしまう。 明確に、俺は強く怒っている。お前たちは「駄目」だ。 TL;DR テクノブレーンは当に悪質なリクルーティング企業なので使ってはなりません。 テクノブレーンから電話が来ましたか? 奴らはカモフラージュしてきますが相手をしてはいけません。 テクノブレーンを貴方の所属する企業が採用目的で利用していますか? こんな邪悪な企業を使っているようでは自身の会社も邪

    テクノブレーン被害者アドベントカレンダー Day 19 - その手の平は尻もつかめるさ
    soachr
    soachr 2021/12/19
    ここまで悪質なのはないけど、代表番号に携帯電話から「<<私のフルネーム>>さんいらっしゃいますか?必ず折り返しをお願いします(さぞ面識あるかのように)」ってのはあった。
  • 自分の中には『社交性ゲージ』が存在していて、人と関われば関わるほど徐々に減っていって0になった瞬間誰とも話したくなくなる

    ジスロマック @yomooog 多分自分の中には「社交性ゲージ」が存在しててこのゲージが高い時はちゃんと人と会話出来るんだけど、人と関われば関わるほど徐々に徐々に減っていって0になった瞬間誰とも話したくなくなる 2021-12-17 17:33:01

    自分の中には『社交性ゲージ』が存在していて、人と関われば関わるほど徐々に減っていって0になった瞬間誰とも話したくなくなる
    soachr
    soachr 2021/12/19
    超絶わかるマン