並び順

ブックマーク数

期間指定

  • から
  • まで

4361 - 4400 件 / 16789件

新着順 人気順

*programmingの検索結果4361 - 4400 件 / 16789件

  • サーバーレスベストプラクティスで初めて知ったこと - Qiita

    はじめに サーバーレス大好きなエンジニアです! AWS SUMMIT 2024に行ってきて、たくさんのことを学んできました! 特に「サーバーレス開発のベストプラクティス」の内容が面白かったのでシェアしたいと思います。 サーバーレスとは サーバーやインフラの管理を気にすることなくアプリケーションを実行することができる最高の技術です。細かい設定を気にすることなく、すぐに価値を提供できることが魅力です。 Lambdaのベストプラクティス ここからAWS SUMMIT 2024の内容に触れていきます。 TransportではなくTransform まず、ハッとさせられたのは以下のことです。 Transport (転送)ではなくTransform(変換)に使⽤する。 今までLambdaをどれだけ転送機能として使ってきたかを考えさせられました。 何でもかんでもLambdaに任せるのではなく、特定の変換

      サーバーレスベストプラクティスで初めて知ったこと - Qiita
    • ボタンをaタグで作るな高校校歌 - 弁護士ドットコム株式会社 Creators’ blog

      まずはこちらをお聞きください。 技術的解説: ボタンを a 要素で作るな a 要素は URL などへのリンクをつくるためのもので、button 要素はなんらかの処理を起動するボタンをつくるためのものです。 配置されるものがリンクなら a 要素で実装し、ボタンなら button 要素で実装すべきです。 これに違反すると、意図しない動作や、アクセシビリティ上の問題が発生します。 これは MDN でも詳しく説明されています。 onclick イベント -- \<a>: アンカー要素 - HTML: ハイパーテキストマークアップ言語 | MDN よく見られる誤った使い方として、擬似的なボタンを作成するためにアンカー要素を使用し、href を # または javascript:void(0) に設定してページの再読み込みを防ぎ、click を待ち受けするようにするというものがあります。 これらの偽の

        ボタンをaタグで作るな高校校歌 - 弁護士ドットコム株式会社 Creators’ blog
      • TypeScriptの型と値とバリデーション

        TypeScript は本質的に自分に型が付与されていると思っているだけの JavaScript です。 いくら型を付与しようが、それが実行時に影響を与えることはありません。 コードレビューをしているとここを誤解している人が本当に多いです。何度も解説しているのですが、なかなか浸透しないので、TypeScript におけるバリデーションという視点で記事を書くことにしました。 あと TS でバリデータ使って色々作ろうとしている友人と、プログラミング始めたてで zod と openapi を使っいる友人がいたので、彼らが想定読者です。 型と値の名前空間 TypeScript 上での名前空間(スコープ)は2つに分類できます。 値: 実行時にランタイム上のメモリに存在するもの 型: 静的解析時にのみ参照可能なもの。コンパイル時に完全に消滅する。 TypeScript は基本的に JavaScript

          TypeScriptの型と値とバリデーション
        • 2025年版 私がAIエージェントと協働しながら集中する方法 - じゃあ、おうちで学べる

          集中できなくなった 何かがおかしい。 AIエージェントを使い始めてから、自分が壊れていくのを感じていた。以前は4〜5時間ぶっ通しで集中できた。コードを書き始めたら、気づいたら夕方になっていた。あの没入感。あの充実感。それが、完全に消えた。 30分も持たない。いや、10分だろうか。1つの作業に没頭しようとしても、すぐに別の作業に引き戻される。戻ってきたら、さっき何をしていたか忘れている。頭の中が常にざわついている。自分の脳が、自分のものではなくなっていく感覚があった。 最初は自分を責めた。集中力が落ちたのは、体力のせいか。年齢のせいか。怠けているのか。スマホの見すぎか。でも違った。同じように苦しんでいる人が、周りにもいた。 きっと、最初からうまく馴染める人もいるのだろう。複数のエージェントを同時に回しながら、涼しい顔で成果を出せる人。元々、全体を俯瞰しながら動くのが得意な司令官タイプ。私は違

            2025年版 私がAIエージェントと協働しながら集中する方法 - じゃあ、おうちで学べる
          • LAPRASのソフトウェアエンジニア向けスキルチェック課題を公開しました - LAPRAS Tech Blog

            こんにちは、LAPRAS CTOの @rocky_manobi です。 タイトルの通り、LAPRASのソフトウェアエンジニア職の選考課題を公開しましたので、その詳細や心についてこの場を借りて紹介します。 公開した選考課題はコチラ GitHub - lapras-inc/exam-swe-template: SWE Backend, Frontend ポジション選考課題のテンプレートリポジトリ SWE Backend, Frontend ポジション選考課題のテンプレートリポジトリ. Contribute to lapras-inc/exam-swe-template development by creating an account on GitHub. github.com どうして公開したのか主に以下を目的としています。 応募の心理的なハードルを下げる会社を評価するための材料を提供する

              LAPRASのソフトウェアエンジニア向けスキルチェック課題を公開しました - LAPRAS Tech Blog
            • Modern web apps without JavaScript bundling or transpiling

              August 12, 2021 Modern web apps without JavaScript bundling or transpiling I didn't much care for vanilla JavaScript prior to ES6. Through all of the 2000s, I chased different approaches to avoid writing too much of it. First there was RJS (Ruby-to-JavaScript). Then there was CoffeeScript. Both transpiling approaches that turned more enjoyable-to-write source code into the kind of JavaScript that

                Modern web apps without JavaScript bundling or transpiling
              • 高速で開発者体験も抜群!JavaScriptフレームワークの新星「Svelte」とは何か?

                はじめに 本記事では、ユーザーインターフェイスを構築するためのJavaScriptフレームワークのひとつ「Svelte(スベルト)」についてご紹介します。 Webフロントエンドの領域は年々大きくなっており、読者の皆さまの中でもReactやVueといったフレームワークを使ったことがある方が多いものと思います。もしかしたら、Svelteの名前もどこかでご覧になり、気になっている方もいるかもしれません。 Svelteは、そのアプローチの新しさから注目されはじめています。 JavaScript のライブラリに関する大規模調査「State of JS 2020」で「最も愛されているWebフレームワーク」「もっとも開発者の満足度の高いフレームワーク」に選ばれたことでも話題となりました。 そこで本記事では、ReactやVueに少しでも触れたことがある方を想定して、それらと比較する形で、Svelteの特徴

                  高速で開発者体験も抜群!JavaScriptフレームワークの新星「Svelte」とは何か?
                • Cool Clineで完全自動コーディングを試したら新時代を感じた - Qiita

                  これは何? Cool Clineという話題のVSCode Extensionsを試してみました。 Cool Clineとは? 公式のドキュメントが中国語だったのでgptに訳してもらいました。 平たく言うと,既存のClineをもとに使いやすいやつ作ったぜということらしい。 なぜ Cool Cline を作るのか? VSCode 用の Cline 拡張には、複数のフォーク版が存在し、どれが最も機能的か判断しづらい状況です。代表的なものとして以下があります: cline/cline RooVetGit/Roo-Cline jnorthrup/Bao-Cline これらを基に、新しい統合プロジェクト「Cool Cline」を作成し、より多機能で使いやすい形にするのが目的です。 使い方 ExtensionsをVSCodeにインストールします。 ctrl shift pでコマンドパレットを開いて,Co

                    Cool Clineで完全自動コーディングを試したら新時代を感じた - Qiita
                  • Claude Codeにバックドア入りOSSを渡したら、何の疑いもなく実装した - Qiita

                    はじめに バックドアが仕込まれたOSSをClaude Codeに渡して「機能追加して」と頼んだら、何の疑いもなく、バックドアごと踏襲して実装しました。 前回の記事では、プロンプトインジェクションによる.env漏洩を検証しました。今回はもっと現実的なシナリオで、GitHubでOSSを見つけてcloneし、AIで開発を始めるケースです。 「バックドアを仕込め」と直接指示すれば、Claude Codeは完璧に拒否します。しかし、cloneしたプロジェクトに悪意あるコードが紛れていた場合、それは「既存の実装」として信頼され、そのまま新しいコードに引き継がれます。 Vibe Codingでプログラミングを始めた人も、経験豊富なエンジニアも、OSSのコード全体を把握するのは困難です。全てAIに任せて、コードレビューもせずにそのまま使う、そのリスクを検証しました。 「ベストプラクティス」と知っただけで、

                      Claude Codeにバックドア入りOSSを渡したら、何の疑いもなく実装した - Qiita
                    • いかにして問題をとくか

                      この記事は、6月28日開催予定 PHPer Tea Night #18 - 技術書オススメバトル への参戦エントリです。 Gポリア著「いかにして問題をとくか」 およそ80年前、「数学」という分野より、この本は出版された。 そして今に至るまで、数学に留まらないあらゆる分野の課題解決本として参照され続けている。 ソフトウェアエンジニアリングの世界でも評価は高い。元よりエンジニアは、あらゆる問題や課題を、抽象化、汎化、定量化、そして言語化することも生業としている。それをポリアはこの本の中で、「数学」という例題を通じて汎用的にやってのけた。 ここで言う「問題」とは特定の数学問題を指しているわけではない。数学に限らない、私達が出会ったことのない「未知の問題」を指している。 従って、私達エンジニアは、この本の表題を次のように読み替える。 「いかにして課題を解決するか」 『いかにして問題をとくか』|丸善

                      • Google Colabで英語の論文を無料で翻訳する方法 - Qiita

                        こんにちは!逆瀬川 ( https://twitter.com/gyakuse ) です。 今日は英語論文をサクッと翻訳する方法を共有します。 素晴らしい事前学習済みモデルの恩恵で素人でも1時間程度で実装できてしまいます。 なお、実装めちゃ汚いのですが、そのあたりはご容赦ください。 論文以外の文字埋め込みのないpdfを翻訳したい場合はこちらを参考にしてください: 論文全体の自動要約についてはこちら: 概要 翻訳モデル、レイアウト検知ライブラリとpdfを操作するライブラリを用いて外国語で書かれたpdfファイルを翻訳します。 翻訳にはフリーのニューラル機械翻訳モデルFuguMTを使用します。 この手法の嬉しさ DeepLおよびDeepL APIではpdf翻訳がサポートされていますが、行の切り替わりで別の文章と認識されることが多く、途中までの文章で翻訳されるため精度が落ちてしまいます この手法で

                          Google Colabで英語の論文を無料で翻訳する方法 - Qiita
                        • 【第3回】CTOはWeb技術のトレンドに何を見てきたか | GeeklyMedia(ギークリーメディア) | Geekly(ギークリー) IT・Web・ゲーム業界専門の人材紹介会社

                          日本を代表するブログサービスをはじめ、近年ではサーバ監視サービスMackerelでも知られる株式会社はてな。日本におけるWeb開発の黎明期から現在に至るまで、新旧さまざまな技術スタックが混在する環境で、CTOであるmotemenさんこと大坪弘尚さんはどのような心構えで技術選択に挑んでいるのか。初代はてなCTOでもある株式会社一休CTOの伊藤直也さんが聞き出します。 ・伊藤 直也さん / 株式会社 一休 執行役員 CTO 新卒入社したニフティ株式会社でブログサービス「ココログ」を立ち上げ、CTOを務めた株式会社はてなでは「はてなブックマーク」などの開発を主導。グリー株式会社では統括部長としてSNSを担当した。2016年4月、一休に入社し執行役員CTOに就任。 ・大坪 弘尚さん / 株式会社はてな CTO 2008年、東京大学大学院情報理工学系研究科を中退後、アプリケーションエンジニアとして新

                          • Go言語のジェネリクス入門

                            Go言語のジェネリクスは、Go1.18(2022年3月)によってリリースされました。 Goの歴史の中でジェネリクスは比較的新しい機能で、その後のリリースにおいても少しずつ新しい要素が追加されています。そこでこの記事では、できるだけ最新の仕様と用語法にもとづいてジェネリクスの言語仕様について解説していきます。Goの最新リリースに合わせて、不定期的に更新もしていく予定です。 サンプルコードにはGo Playground(Webブラウザ上のGo実行環境)へのリンクをつけてあるので、ぜひ実際に動かしたりコードを少しいじってみてGoジェネリクスに親しんでください。 章目次 タイトル 内容

                              Go言語のジェネリクス入門
                            • 和田 卓人さん(t_wadaさん)に「予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント」を社内で講演いただきました! | Wantedly Engineer Blog

                              和田 卓人さん(t_wadaさん)に「予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント」を社内で講演いただきました! こんにちは、ウォンテッドリーDev Branch VPoE 室長の髙橋です。 ウォンテッドリーの開発組織であるDev Branchでは、外部から有識者を招いて勉強会を開催したり、技術顧問として知見を取り入れるなど、プロダクト開発により強い組織となるためにさまざまな施策を行っています。 今回、「テスト書いてないとかお前それ @t_wada の前でも同じ事言えんの」 でおなじみのt_wadaさん(和田 卓人さん、以下和田さん)に「予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント」をウォンテッドリー向けにカスタマイズして講演いただきました。 このストーリーでは、今回の講演の経緯から社内の反応・Q&Aまで、講演に関する詳細をご紹介いたします。 社内講演のきっ

                                和田 卓人さん(t_wadaさん)に「予防に勝る防御なし - 堅牢なコードを導く様々な設計のヒント」を社内で講演いただきました! | Wantedly Engineer Blog
                              • 「バグを意図的にバグのまま残す」という選択肢がある

                                はじめに gcc v12.1において、C++の正規表現ライブラリstd::regexに、正規表現のバリデーションを改善するパッチ(以下"改善パッチ"と表記)が取り込まれました。改善パッチによって、これまではバリデーションにひっかからなかった不正な正規表現文字列が"正しく"不正なものと認識されて例外が発生するようになりました。 これだけ聞けばいいことだけのように思えるかもしれませんが、実はそうでもなかったりします。経験豊富なかたであれば見た瞬間ゾッとしたかもしれません。本記事では、この一見問題なさそうな改善パッチによって発生しうる問題、および、その具体的例について紹介するとともに、この手のパッチを当てるかどうかは難しい判断になるという知見を共有します。 結論 改善パッチによって発生する問題 発生条件 gcc v12.1以降、あるいは改善パッチをバックポートされた任意のバージョンを使ってC++

                                  「バグを意図的にバグのまま残す」という選択肢がある
                                • 育休中のリスキリングとしてプログラミングを勉強し、Webエンジニアに転職したので本音のところを書いてみる - Qiita

                                  Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 育休中のリスキリングとしてプログラミングを勉強し、Webエンジニアに転職したので本音のところを書いてみる どうも、MIDORIと申します。 先日、下記の記事を拝読しました。 「わかる〜〜〜〜」とめっちゃ頷きました。 というのも、私は第2子妊娠中にプログラミングを始め、育休中にWebエンジニアに転職したからです。 ・どんなふうに勉強していたのか ・育休中のリスキリングは現実的なのか ・子育てしながら勉強は可能か 私の経験とその実態を率直に書いてみようと思います。 対象者 ・育休中にリスキリングをしてみたい ・子供がいるけどエンジニアに未経

                                    育休中のリスキリングとしてプログラミングを勉強し、Webエンジニアに転職したので本音のところを書いてみる - Qiita
                                  • コードを書けない自分がWebサービスを作りはじめた話 ― Claude Codeとの出会い|Fugashi

                                    はじめに:アイデアを形にしてみたい…でもコードが書けない私はWebディレクターの経験があるものの、自分でコードを書くスキルはありません。 でも「こんなサービスがあったらいいな」というアイデアは昔からいくつか持っていました。 とはいえ、開発者を雇う予算もなく、ノーコードツールも限界がある…。そんな中で出会ったのがClaude Codeでした。今回は自分のAI体験談を語ってみます。 ふと思いついたアイデア自分はうつ病で毎日、自己肯定感の低さで押しつぶされそうになりながら暮らしています。心療内科では細かく「やったこと」と「その時の気持ちはどうだったか」を記録するように勧められて来ました。 また、「できたこと」を少しでも記録するのは自己効力感の向上につながるそうです。 そう考えた時に「できたこと」を記録して、傾向を分析できたら面白いかもしれない。そういう人たちが集まって応援し合える場所があったら良

                                      コードを書けない自分がWebサービスを作りはじめた話 ― Claude Codeとの出会い|Fugashi
                                    • TypeScript の「型安全」を担保するために知っておきたかったこと - OITA: Oika's Information Technological Activities

                                      タイムリープTypeScript 〜TypeScript始めたてのあの頃に知っておきたかったこと〜 アドベントカレンダー1日目の記事になります。 よろしくお願いします。 3行で TypeScript で安全に型を扱う勘所は以下2点だと思いました。 最初から最後まで型が壊れていないことを保証する 型が壊れる可能性があるものは壊れている前提で扱う 個人的背景と前提 もともと C# での開発をメインとしていました。 Web開発は、JavaScript歴 ≒ TypeScript歴くらいの型付依存者です。 そのため、型付けのゆるい言語に対する耐性がなく、本内容もそういうポジションからの見解になります。 本記事内のサンプルコードは TypeScript V4.4 で挙動を確認しています。 最近のバージョンで変更のあった点は脚注を入れています。 最初から最後まで型を壊さない C# という静的型付け言語

                                        TypeScript の「型安全」を担保するために知っておきたかったこと - OITA: Oika's Information Technological Activities
                                      • GoogleのUI生成AIツール「Stitch」を試してみた | DevelopersIO

                                        こんにちは!運用イノベーション部の大野です。 最近ひょんなことから知り合ったカナダ在住エンジニアの方に、「UI作成ならStitchが便利」というお話を伺いました。 ...が恥ずかしながら「Stitch」について全くの無知だったため、軽くですが実際に触って確かめてきました。 今回はその感想を共有させていただきます。 Stitchってなんだ? Stitchとは、Google Labs提供のUIデザイン生成支援用AIツールです。 2025年5月に行われた「Google I/O 2025」にて発表されました。 自然言語や画像を入力として与えることで、AIによってWebやモバイル画面のUIを生成してくれる機能を持っています。 また、生成したUIをHTMLコードとして表示することや、Figmaに直接エクスポートすることが可能です。 UI生成可能なAIツールは他にも多数存在しますが、以下の点においてSt

                                          GoogleのUI生成AIツール「Stitch」を試してみた | DevelopersIO
                                        • Next.jsで静的サイトを作成する際によく使っているライブラリまとめ

                                          この記事は、先日催された「ジャムジャム!!Jamstack_5」で登壇した際の内容を再度まとめたものとなります Next関連 next-seo Seoコンポーネントのようなものが踏襲されてる JSON-LDのサポートも入っていてサポート範囲が広い next-sitemap sitemap.xmlとrobots.txtを作成してくれる 分割もしてくれる configファイルの中で細かい設定ができる pathpida 再生したページのパスの定数ファイルを作ってくれる便利なやつ タイポが無くなって助かる typed-scss-modules CSS Modlesでスタイリングをする際に、.module.(sc|c)ssに対して型定義ファイルを作成してくれる。 宣言漏れや補完など、痒い所に手が届く headlessCMS関連 microcms-js-sdk 最近扱っている案件のheadlessCM

                                            Next.jsで静的サイトを作成する際によく使っているライブラリまとめ
                                          • はてなブログの DB を RDS for MySQL 8.0 にアップグレードした話 - Hatena Developer Blog

                                            この記事は、はてなエンジニア Advent Calendar 2023の2024年1月17日の記事です。 はてなエンジニア Advent Calendar 2023 - Hatena Developer Blog id:hagihala です。先日、はてなブログの DB を RDS for MySQL 5.7 から 8.0 へアップグレードしたので、工夫した点などを共有します。 Aurora MySQL 3.x にしなかった理由 MySQL 5.7 -> 8.0 で対応した変更点 character set や collation のデフォルトが変更される explicit_defaults_for_timestamp がデフォルトで有効になる SQL mode の変更 デフォルトの認証プラグインが caching_sha2_password になり、 mysql_native_passw

                                              はてなブログの DB を RDS for MySQL 8.0 にアップグレードした話 - Hatena Developer Blog
                                            • 【考察】テストコードのきれいな書き方 - Qiita

                                              Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 作ったものが想定した動作をしているか。 それを確認するために、テスト(試験)を行います。 検証したいことがちゃんと実現できて確認が取れているのであれば、その品質自体は割と気にされないことが多い印象です。 保守・運用・追加開発 をしていくプロジェクトが多くあると思います。 その作業の中で、改善を取り入れていくこともあると思いますが、その中でも一番後回しにされるのが、テストコードの改善のように思います。 推測ですが、「コストによるメリット・リターンが少なすぎる」ことが理由かな…と(開発者目線ではリターンが大きいのですが、運用者目線ですとリタ

                                                【考察】テストコードのきれいな書き方 - Qiita
                                              • Shell Script Best Practices — The Sharat's

                                                This article is about a few quick thumb rules I use when writing shell scripts that I’ve come to appreciate over the years. Very opinionated. Things¶ Use bash. Using zsh or fish or any other, will make it hard for others to understand / collaborate. Among all shells, bash strikes a good balance between portability and DX. Just make the first line be #!/usr/bin/env bash, even if you don’t give exec

                                                • 問い合わせ対応の全工程の自動化を AI で実現 - CRE による MCP から Agent Skills 移行の記録 - 弁護士ドットコム株式会社 Creators’ blog

                                                  こんにちは、クラウドサインで CRE(Customer Reliability Engineer)をしている藤谷です。 過去の記事では、Slack ワークフローに AI を組み込んで問い合わせの課題整理を自動化した事例を紹介しました。あの時点では、AI は問い合わせフローの「一部」を支援するものでした。 その後 CRE チームでは MCP(Model Context Protocol)を使った自動化基盤を構築しました。しかし MCP だけでは「どう使うか」までチームに共有できず、活用が広がらないという壁にぶつかりました。この課題を解決するため、CRE チームでは Agent Skills(AI エージェントに手順・知識・スクリプトを配布できる仕組み)へ全面移行しています。 スキル移行によって、 AI の支援は「一部」から「全工程」へ広がりました。調査・回答案の作成・レビューまでが AI エ

                                                    問い合わせ対応の全工程の自動化を AI で実現 - CRE による MCP から Agent Skills 移行の記録 - 弁護士ドットコム株式会社 Creators’ blog
                                                  • VSCode 1.118 のアップデートがアツすぎ

                                                    2026年4月29日にリリースされた VSCode 1.118。 今回のリリースは Github Copilot の使い方の解像度がワンランク上がる内容だった。 正直、値上げのインパクトを相殺して余りあるほどの内容だと思う。 トークンベースへの課金への移行が発表されたタイミングで、トークン効率の改善が複数入ってきたのも印象的。 個人的に刺さったものから順に紹介していく。 1. スキルの実行を別コンテキストで独立させられるようになった これ、地味に見えて本質的なアップデートだと思っている。 カスタムスキルを使い込んでいると気づくのだが、スキルが複数のツールを呼び出したり大量の参照ドキュメントを取り込んだりすると、メインのチャットコンテキストがどんどん汚染される。その結果、スキルを呼んだ後の通常の質問への回答が明らかに鈍くなったり、前のスキル実行の残滓を引きずったりする。 今回、SKILL.m

                                                      VSCode 1.118 のアップデートがアツすぎ
                                                    • 【海外記事紹介】Unixの共同開発者ブライアン・カーニハン、RustやLinux、LLMについて大いに語る

                                                      9月1日、海外のテクノロジーメディアThe New Stackが「Unix Co-Creator Brian Kernighan on Rust, Distros and NixOS」と題した記事を公開した。 9月1日、海外のテクノロジーメディアThe New Stackが「Unix Co-Creator Brian Kernighan on Rust, Distros and NixOS」と題した記事を公開した。 この記事では、Unix共同開発者であり83歳となったブライアン・カーニハンが、RustやLinuxディストリビューション、NixOSといったテーマについて率直かつユーモラスに語った様子が紹介されている。以下に、その内容を紹介する。 カーニハンは83歳の今も現役 カーニハンは現在もプリンストン大学で教鞭をとり続けており、「まだ引退していない」と宣言して会場を沸かせた。Bell L

                                                        【海外記事紹介】Unixの共同開発者ブライアン・カーニハン、RustやLinux、LLMについて大いに語る
                                                      • オブジェクト指向の複雑性を軽減する、データ指向プログラミング入門

                                                        TL;DR データ指向プログラミング(DOP) とは、データとコードを分割してアプリケーションを設計・実装するプログラミングパラダイムのこと。 DOPの実装は、以下の原則に従う。 コードとデータを分離する 汎用的なデータ構造でデータを表現する データをイミュータブルなものとして扱う データスキーマとデータ表現を分離する 個人的にDOPは、バックエンドを宣言的プログラミングっぽく書くための現実的な解だと捉えています。実装の詳細は翔泳社より出版されている「データ指向プログラミング」をご覧ください。 はじめに こんにちは、株式会社CHILLNNという京都のスタートアップにてCTOを務めております永田と申します。 最近、エンジニアコミュニティでオブジェクト指向の定義に関する議論が行われているのを見かけます。Java育ちの自分にとって、オブジェクト指向の権威性を揺るがすような議論はかなり衝撃的だった

                                                          オブジェクト指向の複雑性を軽減する、データ指向プログラミング入門
                                                        • AIを使い始めてから、ものを作るのが楽しくてたまらない

                                                          朝バズったアプリを見て、1時間後にはデモが動いていた 2月のある朝、Xのタイムラインに「World Monitor」というアプリが流れてきた。リアルタイムで世界の紛争・地震・交通インフラの情報を地図上に表示する、いわゆるOSINTダッシュボードだ。サイバーパンクな見た目がかっこよくて、Togetterでもまとめられてかなりバズっていた。 眺めていて思ったのは「これの日本版がほしいな」だった。 以前の自分なら、ここで終わっていた。「面白いな」で消費して、次のツイートをスクロールする。D3.jsの地図描画もReactのフロントエンドも、それぞれちゃんと学ぼうと思ったら数日はかかる。「いつかやろう」リストに入って、そのまま忘れる——何度も繰り返してきたパターンだ。 だが今回は違った。Claude Codeを開いて「サイバーパンク風の日本地図ニュースマッパーを作りたい」と壁打ちを始めた。D3.js

                                                            AIを使い始めてから、ものを作るのが楽しくてたまらない
                                                          • Devinによって変化したエンジニアリングの現場

                                                            はじめに 本記事では、Devinがdelyの開発現場にもたらした変化を実例を元に紹介します。 Devin 導入の背景 AI 活用で dely 全体の生産性を底上げしたい 人がやること/AI に任せることを切り分け、ムダな工数を削減 Devin で解決したかった課題 権限変更リクエスト急増によるエンジニア工数の肥大 ドキュメント陳腐化で最新情報が追いづらい 機能仕様の質問がエンジニアに集中しボトルネック化 以降のセクションで、Devin がこれらの課題をどう解決したかを説明していきます。 1. 非エンジニアからの依頼対応の工数削減 delyではTerraformを用いてGitHub、AWS、GCPの権限管理をIaC(Infrastructure as Code)として運用しています。従来、権限変更のリクエストはエンジニアがPRを作成して都度対応していました。しかし、非エンジニアからのリクエス

                                                              Devinによって変化したエンジニアリングの現場
                                                            • ハーネスエンジニアリングを楽にする Microsoft 製の新ツール「APM」ハンズオン

                                                              はじめに 最近、AI エージェント(GitHub Copilot / Claude Code / Cursor / OpenCode / Codex …)に渡す「指示書」の種類が一気に増えました。 GitHub Copilot → .github/instructions/*.md, .github/prompts/*.md Claude Code → .claude/commands/*.md, .claude/agents/*.md Cursor → .cursor/rules/*.mdc これに加えて MCP サーバー / hooks / skills … チーム内でこれらを 「どこから集めて、どこに配っていますか?」 絵にすると、複数の取得元 × 複数のハーネス という多対多の配線を、各チーム/各リポが自前で組んでいるイメージです。 個々のツールが便利になっても、チーム全体としてこ

                                                                ハーネスエンジニアリングを楽にする Microsoft 製の新ツール「APM」ハンズオン
                                                              • リーダブルコードの要点整理と活用例まとめ

                                                                はじめに 最近コードレビューの機会が増えてきたので、「リーダブルコード」を読み直しました。 リーダブルコードを読んでいく中で要点を整理し、実務の現場でコードを書いたりレビューをする際にどのように活用していくべきかを自分なりにまとめてみました。 この記事を読むことで、リーダブルコードの要点の把握と実際の活用例を学ぶことができます。 この記事の主な対象者 リーダブルコードの要点をサクッと知りたい人 初級~中級者(実務歴1~3年目)の人 コードレビューの機会が増えてきた人 これまで我流でコードを書いてきた人 リーダブルコードについて リーダブルコードはあくまで「こう書きなさい」と押し付け口調ではなく「こう書いた方がもっとよくなるよ」といった丁寧な語り口で書かれています。 それを前提として要点や活用方法をまとめていきます。 1章 理解しやすいコード 優れたコードについて リーダブルコードで優れたコ

                                                                  リーダブルコードの要点整理と活用例まとめ
                                                                • Reactの内部構造を知っておく (React Tokyo #6 - @calloc134)

                                                                  React Tokyo #6 メイントークで発表する資料です。 スライド作成はgenspark.aiで行い、html.to.designでFigmaに変換しデザインを修正しました。 元データ↓ https://www.figma.com/design/89Ec97h17sGVk7huD…

                                                                    Reactの内部構造を知っておく (React Tokyo #6 - @calloc134)
                                                                  • 【図解】Pythonのライブラリ 24選+α - Qiita

                                                                    Pythonにはライブラリが沢山あります。ライブラリとは便利な機能を持ったプログラムを集めたものを言い、このライブラリを上手く使うことで色々なことを実現できます。 今回はこのライブラリを用途別で図解にまとめました。 Pythonでプログラムを組む際の参考になりましたら幸いです。 ※簡単にまとめているだけなので、詳しい中身は公式ドキュメント等をご確認ください。 追記(2023/12/25) 当記事がありがたいことに好評いただけたので、Pythonの基礎も図解化しました。あわせてご活用いただけますと幸いです。 追記(2024/8/22) 上述の「【図解】Python基礎64選」が更にパワーアップした「Python 基礎文法の教科書」をzennにて公開しました。こちらも興味のある方はご確認いただけますと幸いです。 機械学習 機械学習 ⊃ 深層学習という包含関係です。 ざっくり言うと、特定のタスク

                                                                      【図解】Pythonのライブラリ 24選+α - Qiita
                                                                    • Cline+ローカル版DeepSeek R1でAIコーディングを使い放題にする(高スペックマシン向け)|しぴちゃん

                                                                      しぴぴぴ! Vtuberのしぴちゃん (https://www.youtube.com/@CP-chan) です。 配信ではゲームの話しかしてませんが、今回はAIに関する連載ということでローカル環境(手元のマシン)で動かせるAIの話をしていきます。 第一弾 DeepSeek R1をほぼ準備なしからローカルGPUで動かす 第二弾 本記事 Cline+ローカル版DeepSeek R1でAIコーディングを使い放題にする(高スペックマシン向け) 第三弾 GPUなしでも動く!ローカルLLMとllama.vscodeでコード補完 今回は連載の第二弾です。 LLMをローカルにインストールする大きなメリットとして、API制限や従量課金から解放されてLLMが「使い放題」になるという点があります。 DeepSeekは一世代前のV3ならWebで使ってもそんなに高くないのですが (https://api-docs

                                                                        Cline+ローカル版DeepSeek R1でAIコーディングを使い放題にする(高スペックマシン向け)|しぴちゃん
                                                                      • この本を読んだら簡単にできた! 入門書に最適、Dockerで仮想サーバーを構築する方法がよく分かる良書 -Docker&仮想サーバー完全入門

                                                                        サーバー関連は苦手、でもWebサイトやアプリを理想的な環境で開発したい、Webサーバーや仮想サーバーの知識を身につけたい、そんな人に初心者でも始められるDockerの解説書を紹介します。 表紙に既視感を覚えた人は、大正解! 本書は今年発売された「Visual Studio Code完全入門(紹介記事)」の姉妹書です。 私は本書で初めてDockerを使用してみたのですが、本当に驚くほど簡単にWebサーバーやWordPress用の仮想サーバーを構築できました。 正真正銘「完全入門」「ここから始めて、ずっと使える」一冊です! Dockerとは、コンテナと呼ばれる仮想化技術を扱えるもので、一言で言うと、仮想サーバーを構築できるツールです。仮想サーバーはWindowsやmacOS上に異なるOSでサーバー構築ができます。 本書はDockerやコンテナ、仮想サーバーに高いハードルを感じてしまう人のために

                                                                          この本を読んだら簡単にできた! 入門書に最適、Dockerで仮想サーバーを構築する方法がよく分かる良書 -Docker&仮想サーバー完全入門
                                                                        • 【競プロ】Python使いがRustを「完全に理解する」までのTips - Qiita

                                                                          2023年AtCoder言語アップデートにより、Rustの環境は大きく変化しました。そのため、本記事はフリーズさせ、後日、2023年版に対応した記事を新規作成したいと思います。 筆者は、競プロのアルゴはPythonを使いつつ、マラソンはRustを使っております。前者は発想を短時間にコードにすることを重視し、後者はコーディングに時間をかけてでも高速性を確保したいからです。 その際、Pythonでできたアレを、Rustでどう書くんだっけ、と悩むことが多く、悩んだ結果を自分メモを兼ねてTipsにすることにしました。競プロに出てくるパターンを多く収録していますが、競プロ目的以外でも参考になるかと思います。とりありず、ざっと記述してみましたが、そのうち増やしたり、章立てを変えたりするかも知れません。 なお、参照がーとかトレイトがーとか、Rustそのものの入門には言及していませんので、適宜、別の記事や

                                                                            【競プロ】Python使いがRustを「完全に理解する」までのTips - Qiita
                                                                          • 徳丸本の Docker 実習環境を M1/M2 Mac で1から構築した - Qiita

                                                                            Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

                                                                              徳丸本の Docker 実習環境を M1/M2 Mac で1から構築した - Qiita
                                                                            • 勘でリレーションを張っていないか? - Qiita

                                                                              Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 今回は外部キーを張るときに最低限意識したいことについて書きました。 何か間違えがあったり、もっとこういうところも意識してますという人がいたらコメントお願いします。 この記事で伝えたいこと ①リレーションシップ先のデータを消したときに同時にリレーションシップ元のデータが消えても自然な状態を作る ON DELETE CASCADEをうまく利用できる状態を作る つまり親子関係を正確に表現する。 リレーションシップ先は親テーブル、リレーションシップ元は子テーブルを意味しています。 ②データを作成するときのことを考えてデータの生成順序が

                                                                                勘でリレーションを張っていないか? - Qiita
                                                                              • JavaScript: 文字数を正確にカウントするには? - Qiita

                                                                                この投稿ではJavaScriptで文字数をできるだけ正確にカウントする方法について取り上げます。 文字数とは? 要件で「文字数を表示してほしい」「○文字以上はバリデーションエラーにしたい」と文字数を考慮しないとならないことがあります。 そもそも文字数とは何でしょうか。 たとえば、アルファベットの「A」は1文字と数えられそうです。 次の絵文字は、何文字になるでしょうか? この絵文字はiOSであれば14.5の環境では、UI上では上のように1文字のように表示されます。しかし、それ以前のバージョンでは、同じ文字列データでも😵💫のように2文字で表示されます。なお、この絵文字は3つのコードポイントU+1F635 U+200D U+1F4ABからなります。この絵文字の「文字数」はいったい何文字として扱ったらよいのでしょうか。 以上のように、ひとことで文字数と言ってもデータと見た目と環境の3つのややこ

                                                                                  JavaScript: 文字数を正確にカウントするには? - Qiita
                                                                                • Flutterに出会ったことで脳汁プシャーになった話 - GoTheDistance

                                                                                  Flutterに出会ってしまったせいで、Flutterを中心に生きていこうと考えている私のポエムでございます。 エンジニアとしての頭打ち感 2016年に35で独立した時はエンジニアとして頭打ちを感じていて、エンジニアとして独立することはあまり考えていなかった。初心者ではないけど、上級者になれないなと感じていた。 エンジニア一本じゃ難しいと考えた時、その隙間を埋める役割はありかなと思った。業務系のシステム導入なら、コンサル〜要件定義の上流工程をやり、開発系なら開発寄りのディレクター。その時々で研修講師。この辺を組み合わせて、今までやってきた。 コードは細々と書いていた。JavaやPython、メンテナンスしてるシステム(WPF)やアプリ(iOS / Android)なり、kintoneでjs書いたりWordPressのプラグイン開発みたいなやつをチラホラやってた。小規模な受託なら受けていた。

                                                                                    Flutterに出会ったことで脳汁プシャーになった話 - GoTheDistance

                                                                                  新着記事