並び順

ブックマーク数

期間指定

  • から
  • まで

4001 - 4040 件 / 16789件

新着順 人気順

*programmingの検索結果4001 - 4040 件 / 16789件

  • デスクトップ版「Power Automate」の独自フォーム機能が一般提供に/すべてのマウスボタン操作をサポート、PDFの表データをそのまま抽出するなどの改善も

      デスクトップ版「Power Automate」の独自フォーム機能が一般提供に/すべてのマウスボタン操作をサポート、PDFの表データをそのまま抽出するなどの改善も
    • 【エディタ】VS codeからAntigravityに移行しました - Qiita

      Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? なぜ移行したのか 今話題になってるGoogleのIDEであるAntigravityですが、移行した理由はただ一つ。 Geminiを使っているから Vscodeの拡張機能と互換があるので個人的には、標準でgeminiがあるかCopilotがあるかの違いかなと感じてます。 特に変える理由があるわけでもないが、変えない理由もない状態だったので、gemini標準搭載だし(Microsoftじゃないし) 移行しました。 移行作業 業務では基本Agent機能やそもそもエディタでAI機能を使わないので、その辺りを考慮しながら移行していきます。 (AI

        【エディタ】VS codeからAntigravityに移行しました - Qiita
      • GitHub Actions のワークフローをチェックする actionlint をつくった - はやくプログラムになりたい

        GitHub Actions のワークフローを静的にチェックする actionlint というコマンドラインツールを最近つくっていて,概ね欲しい機能が揃って実装も安定してきたので紹介します. github.com なぜワークフローファイルの lint をすべきなのか GitHub Actions が正式リリースされてからだいぶ経ち,GitHub 上での CI は GitHub Actions が第一候補となってきているように感じます.僕も新規にリポジトリを作成して CI をセットアップする場合はほぼ GitHub Actions を使っています. ですが,GitHub Actions には下記のような問題があり,actionlint でそれらを解決・緩和したいというのが理由です. ワークフローを実装する時は,GitHub に push して CI が実行されるのを待って結果を確認するという

          GitHub Actions のワークフローをチェックする actionlint をつくった - はやくプログラムになりたい
        • 失敗例から学ぶSOLID原則

          PHPカンファレンス北海道2024 https://fortee.jp/phpcon-hokkaido-2024/proposal/7d223fcd-ecc8-4cfb-92b2-4987749463d8 Lについての補足記事 https://asumikam.com/entry/2024/0…

            失敗例から学ぶSOLID原則
          • 一言で理解するReact Server Components

            この記事はReact公式の内容を翻訳・紹介するものではありません。筆者の解釈や理解を伝えるものであり、Reactの公式見解と一致しているとは限りません。あらかじめご了承ください。 皆さんこんにちは。最近Next.js 13.4がリリースされ、App Routerがstable扱いになりました。App RouterはReact Server Component (RSC) をふんだんに用いて構築されています。 React本体でServer Componentがずっとalpha版なのにNext.jsでbetaとかstableとか言ってるのは何で? という問題も、React Canaryのアナウンスにより無事に解消されました。 React Canaryってなに? 先日React公式ブログでアナウンスされた、新しいリリースチャネルです。 筆者の理解による概要をお伝えすると、Canary版のReac

              一言で理解するReact Server Components
            • Ruby/Rails の勉強に何読んだらいいかと聞かれたとき - id:onk のはてなブログ

              「次の職場が Ruby なんだけど」と読み書きそろばんを聞かれたのと、大阪Ruby会議03、大江戸Ruby会議10、Kaigi on Rails 2023 と Ruby/Rails 関係のイベントに続けて参加して、作者の皆さまと会ったので。 「読める」になるために 言語仕様は何らかの本 1 冊の冒頭の方を読めば雰囲気は掴めるだろう。 Ginza Rails27 igaiga - Speaker Deck 著書や技術顧問、健康診断レポート でお馴染みの @igaiga555 さんの作った表で、難易度別にまとまっている。 たのしいRuby か、プロを目指す人のためのRuby入門 が定番かなぁ。 できることを知る るりま (Ruby リファレンスマニュアル) の Enumerable、String Rails Guides の Active Support Core Extensions 日本語

                Ruby/Rails の勉強に何読んだらいいかと聞かれたとき - id:onk のはてなブログ
              • 堀江貴文「やりたいことがない人」3つのパターン まずは自分に正直であれ、損得勘定は挟むな

                自分に正直になる習慣 フランスの哲学者アランは名言を遺している。 「幸福だから笑うのではない。笑うから幸福なのだ」 そのとおりだと思う。アクションから本質が生まれる。本質はあくまでも事後的に発生するものであって、本質という抽象はそれ単独で先行的に存在するものではない。 ぼくは中学生時代、プログラミングに夢中になった。よくわからないまま手さぐりでパソコンを使っているうちに、多彩な処理システムを構築できるプログラミングの魅力にどんどんのめり込んでいった。それがやがてビジネスにつながり、ぼくはそのビジネスでさらに成功を収めるべく野心をたぎらせていった。 要するに今日にいたるぼくのキャリアは、プログラミングとの出合いがすべてだ。プログラミングに出合わなければ、それはそれでまたまったく別のキャリアを描いていただろう。 あらかじめ目指すキャリアがあって、プログラミングに足を踏み入れたわけではないのだ。

                  堀江貴文「やりたいことがない人」3つのパターン まずは自分に正直であれ、損得勘定は挟むな
                • SmoothCSV - macOS & Windows 向けの最強のCSVエディター

                  The Ultimate CSV EditorSmoothCSV は 高機能・高性能な CSV ファイルエディターです。

                    SmoothCSV - macOS & Windows 向けの最強のCSVエディター
                  • 改めて見直すGoの特徴

                    以前にまとめた内容に続き、 極力Goならではな特徴をいくつか挙げていく。 依存解決が必要最低限で互換性を考慮しつつ決定的 モジュール単位で依存をダウンロード。コンパイル対象はサブパッケージ単位。 依存の明示方法はコードに埋め込まれ、かつ未参照のインポートはコンパイルエラー。 つまり動作するコードのすべては正確な依存ツリーが明示されていて余計な依存は引き込まれない。 そして持ち前のコンパイルの速さを含め、相当深い依存ツリーでも依存解決にかかる時間は既知の処理系の中でも最速レベル。(唯一勝てるのはプリビルドバイナリが配布されている場合くらい) また、コンパイルやリンクに必要な処理量そのものが比較的少ないため、開発環境負荷も小さい。 かなり巨大なプロジェクトであってもメモリ8GBで困るようなことが無い。つまり、CI環境の維持にもローコストで済む。 ライブラリの提供側では後方互換性が破壊されるよう

                      改めて見直すGoの特徴
                    • Claude CodeでMCPツール(Context7、Serena、Cipher)を活用してAIコーディングを次のレベルへ - Qiita

                      Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Context7、Serena、Cipher で得られるメリット 開発効率の大幅な向上 Context7:最新のAPIドキュメントを自動取得し、古い情報によるエラーを防止 Serena:IDEレベルのコード理解により、大規模リファクタリングを効率化 Cipher:過去の解決策を記憶し、同じ問題への対処時間を削減 コスト削減効果 ツール利用料0円:すべてオープンソースツール 注意:Claude APIやOpenAI APIの使用料は別途発生します API使用量の削減:Cipherのメモリ機能により、重複する質問を回避 デバッグ時間の短縮:

                        Claude CodeでMCPツール(Context7、Serena、Cipher)を活用してAIコーディングを次のレベルへ - Qiita
                      • WSL2で開発中のWebアプリを同じLANのスマホで動作確認する方法

                        WSL2で開発中のWebアプリをスマホで即座に動作確認したい スマホとPCが同一のWifiに接続している状態でスマホのブラウザから http://<PCのIPアドレス>:<Webアプリのポート> にアクセスして動作確認出来ることがよく知られています。 私は普段PC向けの業務システムやライブラリを作っているのでこの方法を使う機会がほとんどないのですが、久しぶりにスマホでの確認が必要になりました。 開発環境がWSL2の場合に固有処理が必要だったのでメモ代わりに公開しておきます。 WSL2固有処理だけ知りたい人のための結論 PowerShellを管理者権限で開いてください。 以下を1行ずつ入力してもいいし、ps1ファイルに書いて実行でもいいはずです。 私はPowerShellに慣れてないので1行ずつ打ち込んでます。 開始 $ports = @(3000, 8000) # Webアプリで使うポート

                          WSL2で開発中のWebアプリを同じLANのスマホで動作確認する方法
                        • Googleが抽出した10個のカテゴリで技術的負債を捉えなおす - mtx2s’s blog

                          ソフトウェア開発の成果は、エンジニアの特性に大きく左右される。たとえば “コードを理解する能力” がその代表例だ。 こうした特性は、作業負荷や認知負荷に直結し、開発生産性に影響を与える。この観点からの評価も、成果を正しく捉えるうえで欠かせない。 もし、理解しづらいコードを書いてしまったら、現在および将来の開発生産性が損なわれる。技術的負債とは、そうした “開発生産性の低下” を「利息を支払う」ことにたとえた概念だ。 本稿は、技術的負債を10のカテゴリに整理したGoogleの文献を参考にしつつ、技術的負債との付き合い方を考える。 🎧 本記事のAI音声解説版をポッドキャストで公開中 (AI解説版)Googleが抽出した10個のカテゴリで技術的負債を捉えなおす - FLOW(er)ラジオ:チーム指向とソフトウェア開発をめぐる対話 | Podcast on Spotify 【ご視聴時の注意点】A

                            Googleが抽出した10個のカテゴリで技術的負債を捉えなおす - mtx2s’s blog
                          • 『ドメイン駆動設計』の解説記事を書きました - ソフトウェア設計を考える

                            本日(1月18日)発売された、Software Design誌 2023年2月号の第一特集で「ドメイン駆動設計入門」を書きました。 執筆の意図と記事の概要を簡単にまとめておきます。 Software Design 2023年2月号|技術評論社 執筆の意図 特集のサブタイトルにある通り「設計力を磨きたい」読者が、ドメイン駆動設計の基礎を知ることで「設計の手法とアイデアの引き出し」を増やすことの役に立てればと思い執筆を引き受けました。 重視したこと 断片的な用語やパターンの解説でなく、ドメイン駆動設計の全体像と要点を伝える 全体像を伝えるための図や表を多めにした(ソースコードの例は少ない) 全体像と要点は、原典である『エリック・エヴァンスのドメイン駆動設計』(以下『ドメイン駆動設計』)の説明を中心にした ドメイン駆動設計の具体例として『ドメイン駆動設計』に出てくる国際海上貨物輸送の具体的な業務

                              『ドメイン駆動設計』の解説記事を書きました - ソフトウェア設計を考える
                            • 新人プログラマ アンチパターン:原理原則多すぎて脳みそOOMエラー - Qiita

                              // 追記(2023/12/9) なんとミノ駆動 さんにコメントいただけました。 もちろん良いコード/悪いコードで学ぶ設計入門 ―保守しやすい 成長し続けるコードの書き方は読んで影響を受けてます。 とってもうれしい。 想定読者 新卒 ~ 2年目くらいまでのプログラミング初心者 Webアプリの保守開発をしているエンジニア 3ヶ月前くらいの自分(未経験からエンジニアになって1年くらい) こんなことないでしょうか 先輩などから原理原則の観点を共有してもらったり、そのうえで自分なりに勉強をしているはずなのに、実務ではなかなか手が動かない 変更指示に対して、「先輩が言っているんだし正しいんだろうな」とその場では指示の理由や目的が分からないまま修正を行うことがある(分かっていないため別の機会で同じ指摘を受けることがある) 自身のコーディングには判断基準や根拠がなく、なんとなくの判断に頼ることがある 上

                                新人プログラマ アンチパターン:原理原則多すぎて脳みそOOMエラー - Qiita
                              • 市場価値のない無能が勢いでSES企業を辞めたのでご相談

                                追記(04/14)今時点で頂いているトラバもブコメもすべて目を通しました。 はてなの皆さん、増田の皆さんたくさんの反応ありがとうございます。 どうしたもんかと悩んでる状況の中で、エージェントの人に話してもあまりピンと来ない反応が返ってくるし、周りに相談出来る人もいないしで、かなり勇気づけられました。 とりあえず今時点で返せる分だけお返事返しておこうと思う。 フィヨルドブートキャンプやれば? 恥ずかしながらこんなサービスがあるのを知りませんでした。 今の状況では1000時間学習してから転職ってのは難しいんだけど、転職活動終えたら利用してみたいなという気持ち。 開発に夢見すぎ 自己評価低い その通り、かもしれない。 技術記事とか書いてアウトプットしてる同世代以下の優秀な技術者たち見てて、自分とのスキルギャップに絶望してたところだったんだ。 5年弱ぐらいローコードじゃなくて、コーディングで実務経

                                  市場価値のない無能が勢いでSES企業を辞めたのでご相談
                                • NuitkaでPythonプログラムを配布してみよう

                                  こんにちは。Technicalスペシャリストの黒住です。 最近、Pythonの人気がさらに加速していますね。特に、AI開発やデータ分析においてはPythonの利用頻度が非常に高くなっています。 しかし、「Pythonプログラムを配布する」部分では問題が多いのではないでしょうか。そこで、今回は「Pythonプログラムをexe形式で配布する方法」についてご紹介します。 Pythonでexeファイルを作成する方法 C#やC/C++などのプログラミング言語では、実行可能なexe形式のプログラムファイルを作成できますが、Pythonにはexeファイルを作成する機能はありません。 そこで、Pythonのコードを実行可能な状態で配布したい場合は、他のツールを使用してexeファイルを作成する必要があります。exe化のツールはいくつか存在しますが、有名なものは以下の通りです。 PyInstaller Py2

                                    NuitkaでPythonプログラムを配布してみよう
                                  • 「無料でLog4j対策を教えろ」と迫った大企業とオープンソース開発者の痛快なやりとりが公開中

                                    2021年12月に、さまざまなプログラムに使われているJavaのログ出力ライブラリ「Log4j」にリモートコード実行のゼロデイ脆弱(ぜいじゃく)性「Log4Shell」があることが発覚し、世界中のIT産業が対応に追われました。そんな問題に対し、フォーチュン500に選出されるような大企業から対応方法を教えるよう要請を受けたオープンソース開発者が、相手企業と交わしたメールを公開しています。 LogJ4 Security Inquiry – Response Required | daniel.haxx.se https://daniel.haxx.se/blog/2022/01/24/logj4-security-inquiry-response-required/ さまざまなプロトコルを用いてデータを送受信するのに使われるオープンソースソフトウェア「cURL」の開発者のダニエル・ステンバーグ

                                      「無料でLog4j対策を教えろ」と迫った大企業とオープンソース開発者の痛快なやりとりが公開中
                                    • ルールは現場で死にました - The Rules of Programming の読書感想文 - じゃあ、おうちで学べる

                                      本日は人生の数ある選択肢のなかから、こちらのブログを読むという行動を選んでくださいまして、まことにありがとうございます。 はじめに 正直に言えば、プログラミングのルール本には懐疑的だった。「Clean Code」も「Effective Java」も読んだ。読んだが、現場でそのまま使えたことは少ない。コンテキストが違う。チームが違う。言語が違う。ルールは理想であり、現実は常に例外だ。 そう思っていた。本書を読むまでは。 Chris Zimmerman氏の「The Rules of Programming」(邦題:ルールズ・オブ・プログラミング ―より良いコードを書くための21のルール)は、私の予想を裏切った。これは「ルールを守れ」という本ではない。「ルールの本質を理解し、現場に合わせて判断しろ」という本だ。著者自身が、読者にこれらのアプローチを鵜呑みにするなと言っている。この謙虚さが、逆にこ

                                        ルールは現場で死にました - The Rules of Programming の読書感想文 - じゃあ、おうちで学べる
                                      • Claude Codeを10倍賢くする無料ツール「Serena」の威力とトークン効率化術

                                        はじめに:AIコーディングの新たな可能性 Claude Codeを使ってコーディングをしていると、こんな悩みを抱えたことはありませんか? プロジェクトの全体像を理解してもらうのに毎回長い説明が必要 トークン消費量が気になって、詳細な指示を躊躇してしまう 同じような説明を何度も繰り返している コンテキストが切れて、以前の作業内容を忘れられてしまう これらの問題を一挙に解決してくれるのが、今回紹介する「Serena MCP」です。このオープンソースツールを使うことで、Claude Codeの理解力と効率性が劇的に向上し、まさに「10倍賢く」なったような体験を得られます。 Serena とは Serenaは、Claude CodeなどLLMのためのコーディングエージェントツールキットで、MCP(Model Context Protocol)という規格に則り、AIと連携するツールの1つです。 一言

                                          Claude Codeを10倍賢くする無料ツール「Serena」の威力とトークン効率化術
                                        • 【HTML5】マリオのコインの音をブラウザで出そう【ファミコン】 - Qiita

                                          const AudioContext = window.AudioContext || window.webkitAudioContext const audioContext = new AudioContext() const gainNode = audioContext.createGain() gainNode.connect(audioContext.destination) gainNode.gain.value = 0.1 const oscillator = audioContext.createOscillator() oscillator.connect(gainNode) oscillator.type = "square" oscillator.frequency.setValueAtTime(987.766, audioContext.currentTime)/

                                            【HTML5】マリオのコインの音をブラウザで出そう【ファミコン】 - Qiita
                                          • UI要素1200以上!HTML/CSSを直接コピペできる便利ライブラリUIverse

                                            Webサイトを訪れたユーザーが、もっとも重要視するのはUIデザインです。 ユーザーが直感的に操作でき、使いやすく、美しくデザインされたWebサイトは、長期的な成功につながります。 しかし、どんなUIデザインを作成したらよいか分からない、という声もよく聞きます。 そこで今回は、コピペで利用できるUIデザインライブラリ UIverse をご紹介します。 1200を超えるUI要素が公開されており、HTML/CSSをコピペするだけで、だれでも手軽に利用できます。 これらを押さえて、あなたのWebサイトをユーザーにとって魅力的で、使いやすくしてみましょう。 UI要素1200以上!HTML/CSSを直接コピペできる便利ライブラリUIverse UIverseではあらゆるプロジェクトに対応できる、HTML/CSSで作成されたオープンソースのUI要素を作成、共有できるウェブサイトです。 すべてのコードはM

                                              UI要素1200以上!HTML/CSSを直接コピペできる便利ライブラリUIverse
                                            • 動かして学ぶ! Rustの言語仕様

                                              はじめに 本連載では、Webフロントエンド開発において注目されているバイナリ形式のプログラムファイルWebAssemblyを、Rustで実装して活用する方法を説明しています。前回記事では、WebAssemblyに至るまでのWebフロントエンド高速化の歴史を紹介するとともに、RustでWebAssemblyを実装する大まかな流れを説明しました。 本記事では、WebAssemblyの実装で必要となるRust言語の基礎を説明していきます。 対象読者 話題のRust言語について学びたい方 動的なWebページにさらなる速度を求める方 WebAssemblyに興味があるが、Rustのハードルが高いと思っている方 必要な環境 本記事のサンプルコードは、以下の環境で動作を確認しています。 Windows 10 64bit版 rustup 1.24.3 cargo 1.55.0 サンプルコードを実行するには

                                                動かして学ぶ! Rustの言語仕様
                                              • プログラマの抱いている「住所」についての誤謬

                                                この記事は Patrick McKenzie さんのブログ・エントリ、 “Falsehoods Programmers Believe About Names” および Shibata Masaaki さんによるその対訳 “プログラマの抱いている名前についての誤謬” のオマージュです。 欧米のシステムに日本人が住所を登録するとき、表記方法やそのバリデーションに悩まされ、正しいか自信のない住所を入力することが多いだろう。 住所はECを中心とする多くのサービスを提供するための必須情報であり、システムは正しい住所を正しく処理するべきだ。 わたしの住所は漢字と数字からなるアドレス、28文字のアルファベットからなるマンション名、英数字記号が混在した7文字からなる部屋番号を持ち、決まりきった形式の住所しか受け付けないシステムを何度もクラッシュさせてきた。 同様に、べらぼうな超大企業がビジネスをグローバ

                                                  プログラマの抱いている「住所」についての誤謬
                                                • 生SQLに型を手書きする時代は終わり?Prismaの新機能「TypedSQL」

                                                  生SQLを扱う $queryRaw TypeScript向けのORMライブラリとしてPrismaがあります。Prismaは直感的で型安全なAPIを提供し、TypeScript向けのORMとしては第一に名前が上がることが多いライブラリです。 しかしそんな人気なPrismaでも、裏側では少しクセのあるSQLが発行されていたり、欲しいSQLがPrismaのAPIでは実現できない場合があります。 そういった場合のために $queryRaw というメソッドが用意されており、これを使うことで生SQLを書いてその結果を受け取ることができました。他のORMにもよくある機能です。 例えば以下のように実装することができます。 const users = await prisma.$queryRaw` SELECT id, name FROM "Users" WHERE id = ${userID} `; co

                                                    生SQLに型を手書きする時代は終わり?Prismaの新機能「TypedSQL」
                                                  • Software Design連載 2022年2月号 大規模Webアプリケーションの開発環境をモダナイズする - MonotaRO Tech Blog

                                                    こんにちは。モノタロウの八木(t_yagi)です。 モノタロウのECシステムは創業から20年以上ずっと動き続けており、絶え間なくビジネスを支え続けています。 その間、周囲のIT技術も大きく進歩してきました。 そんな中、開発者が増えたり機能も拡張され続けた結果、当初はさほど問題にならなかった開発に関する課題が浮き彫りになってきました。 今回はそんなレガシーな開発環境にモダンなIT技術を取り入れることで「当時は出来なかったことを現代の技術で実現する」を書きました。 流行りのモダンな技術がイケイケだから乗り変えるといったような輝かしいものではなく、長年積まれ続けてきた課題が現代の技術だから解決できたという時代の恩恵にうまく乗れるかを率直に記事にしています。 どうするとデメリットを抑えながらメリットを得ることができるか読んでいただける人に少しでも感じ取っていただければ嬉しいです。 サーバアプリの開

                                                      Software Design連載 2022年2月号 大規模Webアプリケーションの開発環境をモダナイズする - MonotaRO Tech Blog
                                                    • 【GAS (Google Apps Script) 】コードの書き方・テクニック編|Offers Tech Blog

                                                      概要 こんにちは、Offers を運営している株式会社 overflow のバックエンドエンジニアの shun です。今回は、GAS(Google Apps Script)のコードの書き方と、ゴリゴリに GAS を書きまくってきた知見から少しのテクニックを紹介できればと思います。 今の時代、エンジニアリングを利用した業務自動化を実装するのは必ずしもエンジニアだけではないと思っています。ちょっとしたデイリー業務, 対応漏れ確認 など、サクッと自分の業務のサポートをしてくれる相方を、職種問わずに自分自身で実装ができる世界になっています。その大きな協力者になるのが今回ご紹介する GAS(Google Apps Script)となります。 GAS(Google Apps Script) とは? GAS(Google Apps Script) とは、Google が開発した JavaScript 記

                                                        【GAS (Google Apps Script) 】コードの書き方・テクニック編|Offers Tech Blog
                                                      • Apple SiliconでAIやっている人に朗報です。vllm-mlxが凄い。 - Qiita

                                                        Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 最近インパクトの大きいApple Silicon向けフレームワークが出現しました。「vllm-mlx」です。 一言で言うとvllmライクなインターフェースをApple Silicon向けに提供するもので、MacのGPU(Metal/MPS)アクセラレーションによるテキスト、画像、ビデオ、オーディオに対応してます。既存のmlx,mlx-lm,mlx-vlm,mlx-audioを全てvllmライクなインターフェース対応にします。今回はこのvllm-mlxの使い方を紹介します。 1. vllm-mlxの概要 特長: ・マルチモーダル - テキ

                                                          Apple SiliconでAIやっている人に朗報です。vllm-mlxが凄い。 - Qiita
                                                        • あのゲームの作り方Web版 | How to make games on Unity

                                                          みなさんは自分のプログラムに自信がありますか?ここではプログラマの質が、所属する職場や企業に大きな影響を受けるという話をしたいと思います。 【ヒンメルならこう書く】 もしフリーレンがプログラマになったとき、そのプログラムのコードはきっとヒ...

                                                            あのゲームの作り方Web版 | How to make games on Unity
                                                          • HPCプログラマの書くコードってなんで古臭いの?

                                                            TL;DR Q: HPCプログラマの書くコードってなんで古臭いの? A: そうしないと性能が出なかったから はじめに スパコンを使ってそれなりに長いこと研究をしています。初めてスパコンを使ったのは今から25年くらい前です。発展の早い世界ですので、昔と今ではだいぶ違ってきています。この前、スパコンを使う時の「常識」がすでに現在では常識ではなくなっているっぽいことを知り、私も「そっち側」になったのか、と感慨深くなりました。以下は、HPC業界の語り部に片足を突っ込んだおっさんの戯言です。 なお、以下では主に「京」の話をするため、富士通のC++コンパイラに文句を言う形になりますが、富士通が悪いのではなく、昔のスパコンに搭載されていたC++コンパイラはどれもかなり酷かったということはあらかじめ言っておきたい気がします。IBMのコンパイラとかも酷かったし、なんならIntelのコンパイラもバグだらけだっ

                                                              HPCプログラマの書くコードってなんで古臭いの?
                                                            • Claude Code で20年前の商用ゲームをほぼ書き直さずにブラウザ移植するまで - Qiita

                                                              ゲーム側は一切触らず、ゲームと描画APIの間に「翻訳レイヤー」を挟むアプローチ ですね。 この D3D9 to WebGL ラッパーによってゲーム側の描画実装を全く変えずに、最大の windows 依存を取り除くことに成功しました。 自分で作ったんじゃなくて Antigravity と Claude Code のエージェントが頑張ってくれました。この子たち、なんでもできるやん! (簡単そうに書いてますが、ちゃんと描画できる状態になるまで何週間か費やしています) この D3D9 変換部分については別で記事書いてるのでよかったら読んでみてください。 描画以外の移植 描画が最大の課題だったのは確かです。しかし、 GunZ をブラウザで動かすには描画以外にも乗り越えるべき壁がいくつもありました。それについてもいくつか紹介します。 ネットワーク:ゲームサーバーもブラウザの中で動いている 冒頭にも書き

                                                                Claude Code で20年前の商用ゲームをほぼ書き直さずにブラウザ移植するまで - Qiita
                                                              • Reactにおける状態管理の動向を追ってみた

                                                                こんにちは、@nerusanです。 皆さんは、状態管理ツールなどは使っておられますでしょうか。 例えば、有名なところでは、Redux, Recoilなどがあります。 今回は、Reactにおける状態管理についての動向を知ることで、なぜ、Reduxが使われるようになったのか?何をReduxなどのグローバルな状態管理ライブラリで扱えばいいのか?現状どうなっているのか?を調べたので、記事にしたいと思います! 自身の解釈なので、もしかしたら、誤ったことを言っている可能性もあるので、その際はご指摘いただければと思います m(- -)m SPAの流行り SPAとはSingle Page Applicationの略であり、新しいページに移動する際、サーバからページを再読み込みするのではなく、JavaScriptを使って、クライアント側のブラウザで動的にページを書き換えるアプリケーションを指します。ページご

                                                                  Reactにおける状態管理の動向を追ってみた
                                                                • 初老を超えたエンジニアの現実2025

                                                                  MOSHでソフトウェアエンジニアをしている masuyama です。 この記事はMOSHアドベントカレンダー13日目の記事です。 本日はネタ枠なので、気楽に読んでください。 前置き 今年はドラクエ1, 2がリメイクされました。中学生のころ、ドラクエ1を友達の家で、ドラクエ2を駄菓子屋据え置きのファミコン[1]でプレイしたのを思い出します[2]。ドラクエ1の発売年は1986年で、もう39年前になります。当時のROMの容量は512kbit[3]ということですが、今このサイズでプログラムを組めと言われたら頭を抱えるしかありません。 ソフトウェアを取り巻く環境はそのころとは格段に変わり、今もAIなどによって変わり続けています。昨年は身体的なところを取り上げてきましたが、今年はややメンタル寄りの変化とその付き合い方をピックアップしていきたいと思います。 ※内容はあくまでも個人の感想です。 ちなみに去

                                                                    初老を超えたエンジニアの現実2025
                                                                  • 「コードに早まってDRY原則を適用しないこと」とGoogleが呼びかけ

                                                                    Googleに存在するコードを読みやすく保守しやすい形に保つ取り組みを行うグループ「Code Health」が、「DRYを早まって適用しないこと」と題した記事を公開しました。 Google Testing Blog: Don't DRY Your Code Prematurely https://testing.googleblog.com/2024/05/dont-dry-your-code-prematurely.html DRYは「Don't Repeat Yourself」の略称で、コードを重複させないことを重視する考え方です。重複するコードが存在していると、特定の機能を変更しようとした時に同じ機能を持つ部分を全て探して同時に変更する必要があり、見落としやミスが発生する危険性が高まります。一方、コードの重複を防げていれば一カ所だけを変更すればOKというわけ。 一見DRYを厳しく適用

                                                                      「コードに早まってDRY原則を適用しないこと」とGoogleが呼びかけ
                                                                    • 「DIは必ずしも善ではない」| Dependency injection is not a virtue by DHH

                                                                      DHHの Dependency injection is not a virtue(2013) という記事は有名ですが、ちゃんとした日本語訳が意外とないようなので、書き出してみて思ったことを要約してみた。[1] Rubyのエンジニアの中には、何も考えずに他のモデルのnewを書いてる人の割合が多いという(コードレビュー時のヒアリングによる)体感があり、また8年前の記事なので経験の浅い人は読んだことがない人もいると思う。該当する方は是非読んでほしい。 全部読む時間が無い人は要約へ. 原文と訳文 In languages less open than Ruby, hard-coded class references can make testing tough. If your Java code has Date date = new Date(); buried in its guts,

                                                                        「DIは必ずしも善ではない」| Dependency injection is not a virtue by DHH
                                                                      • 人間はロボットになるべき。脳もデータ化して移せばいい

                                                                        そしたら永遠に生きられるし、老化しても部品交換すればいいだけになる。 体の怪我で痛みを感じることもなくなるし、お腹がいたくなることもない。 食べ物もいらないから、食べ物のために働く必要もない。 人間の生き物的な部分って本当面倒なんだよ。こんなのいらないって思う。 食べる喜びは、まあ、オプションで付ければいい。やっすい食べ物で満足するようプログラミングすればコスパ良さそう。 出産もないから安心。ロボットを作るだけになるから。 性欲もなくなるから犯罪もなくなる。 お風呂も入らなくていい。 楽ちん人生になる。 ネガティヴな要素、ないよね?早くそうなりたい。

                                                                          人間はロボットになるべき。脳もデータ化して移せばいい
                                                                        • JavaScriptの非同期処理をじっくり理解する (3) async/await

                                                                          対象読者と目的 非同期処理の実装方法は知っているが、仕組みを詳しく知らないのでベストプラクティスがわからないときがある 実行順序の保証がよくわからないので自信をもってデプロイできない変更がある より詳しい仕組みを理解することでより計画的な実装をできるようになりたい という動機で書かれた記事です。同様の課題を抱える人を対象読者として想定しています。 目次 実行モデルとタスクキュー Promise async/await AbortSignal, Event, Async Context WHATWG Streams / Node.js Streams (執筆中) 未定 用語に関する注意 前々回定義した以下の用語を今回も使います。 1 tick ... タスクキューが1周すること。 1 microtick ... マイクロタスクキューが1周すること。 これらの単位は非同期処理の間の相対的な優先

                                                                            JavaScriptの非同期処理をじっくり理解する (3) async/await
                                                                          • FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ|ハイクラス転職・求人情報サイト アンビ(AMBI)

                                                                            FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ PythonのWebフレームワークとしていま注目を集めるFastAPIは、シンプルにコードが書けるだけでなく、パフォーマンスが高いWebアプリケーションのバックエンドサーバーが構築可能です。同フレームワークの勘所をPythonスペシャリストの杜世橋さんが、初心者向けのハンズオン、そしてより実践的な画像への自動タグ付けサービス実装をとおして解説します。 FastAPIはいま非常に注目されているPythonのWebフレームワークの1つです。Flaskのようにシンプルに書ける一方でPythonのType Hintの機能をうまく活用し、HTTPのリクエスト/レスポンスをPythonの関数の引数/戻り値とシームレスにマッピングして非常に効率的に開発ができるのが最大の特徴です。非同期処理にも対応していてその名

                                                                              FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ|ハイクラス転職・求人情報サイト アンビ(AMBI)
                                                                            • Brad Woods Digital Garden

                                                                              Planted: Jan 2023 Tended: Jul 2024 Status: decay Tended: Jul 2024 Hits: 14926 Intended Audience: Front-end developers The perspective property enables a 3D-space for child elements. Its value determines the strength of a child's z-transform effect. Large perspective values cause small transformations, small values cause large transformations.

                                                                                Brad Woods Digital Garden
                                                                              • 実行環境依存のコードに対してテストを書く考え方

                                                                                社内用の啓発記事ですが、閉じる理由がないのでここに投げます。 ブラウザにべったりなコードを書いてると、ブラウザや node.js 固有の環境をインラインで記述してしまうことが多々あると思います。 あえてダメダメなブラウザ向けのエントリポイントの例を書きます。 // main.ts let id = localStorage.get('id'); if (!id) { id = `${navigator.userAgent}-${Math.random()}`; localStorage.set('id', id); fetch('/auth', { method: 'POST', credentials: 'include', body: JSON.stringify({ id, at: Date.now(), }), headers: {'Content-Type': 'applicat

                                                                                  実行環境依存のコードに対してテストを書く考え方
                                                                                • Spring Frameworkの脆弱性 CVE-2022-22965(Spring4shell)についてまとめてみた - piyolog

                                                                                  2022年3月31日、Spring Frameworkに致命的な脆弱性が確認され、修正版が公開されました。ここでは関連する情報をまとめます。 1.何が起きたの? JDK9以上で実行されるSpringMVC、SpringWebFluxでリモートコード実行が可能な脆弱性(CVE-2022-22965)が確認された。脆弱性の通称にSpring4shellまたはSpringShellが用いられている。 Spring FrameworkはJavaで採用される主流なフレームワークの1つのため、Javaで実行されるWebアプリケーションで利用している可能性がある。 2022年3月31日時点で脆弱性のExploitコードが出回っており、関連するインターネット上の活動が既に報告されている。 2.脆弱性を悪用されると何が起きるの? 脆弱性を悪用された場合、リモートから任意コード実行が行われることで、機密情報の

                                                                                    Spring Frameworkの脆弱性 CVE-2022-22965(Spring4shell)についてまとめてみた - piyolog

                                                                                  新着記事