TechFeed[B!]新着記事・評価 - はてなブックマーク (original) (raw)

5 users
techfeed.io
10月10日、Denoは「Deno 2」を正式に発表した。Denoは、JavaScriptおよびTypeScriptをサポートする現代的なツールチェーンとして、すでに数多くの開発者に愛用されているが、新バージョンのDeno 2はさらに多くの機能と強化を備え、特にNode.jsおよびnpmとの互換性を大幅に改善している。 Deno 2の主要機能 Deno 2では、多くの新機能が導入されている。以下は主な機能である。 Node.jsおよびnpmとの互換性:Deno 2は、既存のNode.jsプロジェクトやnpmパッケージをシームレスにサポートしており、package.jsonやnode_modulesを直接利用可能である。これにより、既存のNodeプロジェクトにDenoのツールを導入することができる。Denoでは、npm:という形式でnpmパッケージをインポートすることも可能で、node_mo

5 users
techfeed.io
10月6日、海外のテクノロジーメディア「Ars Technicha」が報じたところによると、数千台のLinuxシステムが数年にわたってステルス型のマルウェア「Perfctl」に感染した状態にあるという。 Perfctlは、2021年以降に確認され、20,000以上の一般的な設定ミスを悪用してインターネットに接続されたシステムに感染している。Aqua Securityによると、Perfctlは、Apache RocketMQの深刻な脆弱性(CVE-2023-33246)を利用し、多くのLinuxマシンに悪影響を与えている。この脆弱性の修正はすでに行われているが、適用されていないシステムが依然として危険にさらされている。 Perfctlの特徴 Perfctlは、Linuxの監視ツール「perf」とコマンドラインツールに使われる「ctl」という名称を組み合わせた名前を持つマルウェアである。これは

5 users
techfeed.io
9月26日、Wafrisが「RedisからSQLiteへの再構築」と題したブログ記事を公開した。この記事では、Wafrisが提供するRailsクライアントのバージョン2におけるRedisからSQLiteへの移行について、その決定プロセスやパフォーマンスに関する考察、さらにアーキテクチャ変更の詳細が語られている。 以下に、その内容を紹介する。 移行の背景 Wafrisは、Railsアプリケーションに組み込むことで、HTTPリクエストに対するセキュリティルールのチェックを行うミドルウェアを提供している。Wafrisの初期バージョンであるv1は、ユーザーが自身のRedisデータストアを管理することを前提に設計されていた。この背景には、WafrisがHerokuエコシステムから誕生したことが関係しており、HerokuではRedisの導入が簡単に行える環境が整っていたためだ。さらに、Sidekiqの

3 users
techfeed.io
9月10日、GitButlerが「なぜGitHubが勝ったのか」と題したブログ記事を公開した。この記事では、GitHubが他のプラットフォームと比較してどのように成功を収めたのか、そしてその背後にある要因について詳しく紹介されており、海外で多くの人々に読まれている。以下に、その内容を紹介する。 GitHubが成功した理由 GitHubの成功は、単に技術的な優位性だけでなく、いくつかの重要な要因が相互に作用した結果である。その要因は、主に以下の2点に集約される。 タイミングの良さ GitHubが登場したのは、分散型バージョン管理システム(DVCS)が徐々に普及し始めた頃であった。2005年にGitが誕生し、これまでの集中型バージョン管理システム(SVNやCVS)が持つ問題点を解決するツールとして注目され始めた時期だった。特にオープンソースプロジェクトの拡大に伴い、集中型のシステムでは対応が難

4 users
techfeed.io
ソフトウェア工学における大規模言語モデルの現状を調査:LLMの適用と成果 9月11日、ソフトウェア工学(SE)における大規模言語モデル(LLM)に関する包括的な調査が公開された。本調査は、SE分野におけるLLMの活用に焦点を当てており、コード生成やテスト、要件エンジニアリングなど、多岐にわたるタスクの自動化におけるLLMの役割を体系的に整理し、LLMがSEの各種業務にどのように適用され、どのような成果を上げているかを明らかにしている。 本調査の成果物はGitHubリポジトリで公開されており、今後も継続的に更新される予定である。ただ、実際のドキュメントは非常にボリュームがあるため、以下にChatGPTを使って要点をまとめたものを紹介する。 LLMのSE業務への適用とその成果 LLMは、ソフトウェア開発の各フェーズで大きな成果を上げており、以下のように様々なタスクに適用されている。 1. 要件

3 users
techfeed.io
9月7日、Googleが「既存のファームウェア コードベースに Rust を導入する(Deploying Rust in Existing Firmware Codebases)」という記事を公式ブログ(Google Security Blog)で公開した。この記事では、ファームウェアをRustで書くことの利点や、RustがC/C++を置き換えていく現状についての見解が述べられている。 Rustの導入によるセキュリティ向上 Googleのブログ記事によると、ファームウェアのコードベースをRustで書き直すことで、メモリ安全性が大幅に向上し、バッファオーバーフローや解放したメモリを誤って使用してしまう(use-after-free)といった脆弱性の原因を排除できると述べている。従来のCやC++によるコードはメモリに関する安全機構が欠如しているため、これらの脆弱性が多くの大規模なコードベースで

4 users
techfeed.io
9月10日、ACMが「QUIC is not Quick Enough over Fast Internet」と題した論文を公開した。この論文では、QUICプロトコルが高速なインターネット環境下でどのようにパフォーマンス低下を引き起こすかについて詳しく紹介されている。 QUICのパフォーマンス検証 この記事では、QUICがウェブアプリケーションのパフォーマンス向上に寄与することが期待されている一方で、高速インターネット環境下では、QUICのパフォーマンスに深刻な問題があることが示されている。特に、以下の点が指摘されている。 データレートの減少 UDP + QUIC + HTTP/3のスタックは、TCP + TLS + HTTP/2と比較して、データレートが最大45.2%低下することが確認された。この現象は、高速なネットワーク環境で顕著に現れる。 パフォーマンス差の拡大 基本的な帯域幅が増加

3 users
techfeed.io
9月10日、MicrosoftはTypeScript 5.6のリリースを発表した。 今回のリリースでは、多くの新機能や改良が含まれており、特にバグの早期発見とコードの安全性が強化されている。以下は、TypeScript 5.6の主要な新機能と改善点である。 真偽チェックの厳格化 TypeScript 5.6では、コード内の真偽値チェックに対する厳格な制約が追加された。具体的には、常に真(truthy)または偽(falsy)となる式に対してエラーが発生する。これにより、意図しない条件式によるバグを未然に防ぐことができる。 以下のコード例では、意図しない真偽式が検出され、エラーとして扱われる。 if (/0x[0-9a-f]/) { // エラー: この式は常に真となる。(.test()の呼び出しを忘れたのかもしれない) } if (x => 0) { // エラー: この式は常に真となる。(

23 users
techfeed.io
9月5日、「"SRE" doesn't seem to mean anything useful any more」と題したあるブログ記事が話題になっている。この記事では、SRE(サイト信頼性エンジニア)という役割が変容し、現在では単なる「オペレーション担当」へと貶められてしまった現状について詳しく紹介されている。以下に、その内容を紹介する。 SREの本来の役割とは何か SREとは、本来システム管理者とプログラマー、両者の役割を兼ね備えた技術者を指す。SREは、単なる「オペレーション担当」としての役割にとどまらず、システムの深部に精通し、Unixボックスを管理し、プログラムを書いてシステムを効率化することが求められる。しかし、最近ではSREという役割が単に「オペレーション担当」に矮小化されてしまっている。 オペレーション担当の現実 本記事の著者は、自身の経験を元に、SREが「オペレーション

3 users
techfeed.io
Li Haoyi氏が2017年に執筆した「What's Functional Programming All About?」と題した記事が、どういうわけかTechFeedの記事収集エンジンに最近(2024年9月)拾われた。古い記事なので、読者の皆様に紹介するかどうかためらわれたが、時代を超えて普遍的な内容であり、非常にためになる情報源にもかかわらず、日本ではほとんど読まれていない記事なので、ここに簡単に紹介することとした。 この記事では、関数型プログラミングの本質と、その利点についてわかりやすく解説している。関数型プログラミングを初めて聞く人から、すでに知識を持っているエンジニアまで、幅広い読者が理解しやすい内容になっている。 ここに紹介するのは、元記事の要約である。原文は非常に詳しく、ウィットに富んだ内容となっているので、ぜひ原文も併せて参照していただきたい。 関数型プログラミングとは?

36 users
techfeed.io
9月1日、海外のテックメディアIEEE Spectrumで「AIがウェブクローリングをめぐる戦いを巻き起こす(AI Has Created a Battle Over Web Crawling)」と題した記事が公開された。この記事では、ジェネレーティブAIの進化とそれに伴うウェブクローリングに関する論争について、AI研究者グループ「Data Provenance Initiative」のリードリサーチャーであるシェイン・ロングプレ(Shayne Longpre)氏へのインタビューを通じて詳しく解説されている。 ジェネレーティブAIとデータ収集の問題 ジェネレーティブAIは、膨大なデータセットを使用して訓練されることで、驚異的なパフォーマンスを発揮するが、そのデータセットの大部分は、私たちが日常的にインターネット上に公開している情報で構成されている。これには、ブログ投稿、ビデオコンテンツ、S

6 users
techfeed.io
9月5日、Vercelの公式ブログで「What’s new in React 19 – Vercel」と題した記事が公開された。この記事では、React 19における重要な新機能や改善点について、詳細かつ実践的な内容が取り上げられている。これまでのReactのバージョンで導入されてきた実験的機能が、React 19で正式に安定化され、多くの開発者にとってさらなるパフォーマンスの向上と開発体験の向上が期待されている。 ここでは、同記事からポイントを絞って内容をご紹介する。 サーバーコンポーネント (Server Components) サーバーコンポーネントは、Reactの10年の歴史の中でも最も大きな変化の1つであり、React 19の新機能の基盤となるものである。この機能により、以下の点が大幅に改善される。 初期ページロード時間の短縮 サーバーコンポーネントを使用すると、クライアントに送

3 users
techfeed.io
人事領域に関するプロダクトを多数展開しており、HRTech企業の雄として名高いHRBrain社。年間のリリース回数はなんと1,100回!どうやってそんな開発生産性を実現しているのか、CTOの鈴木悠大さんにお話を伺ってきました。 ブランチデプロイ環境とは ──今日はお話を伺えるのを楽しみにしていました。まずは自己紹介をお願いできますか? 株式会社HRBrainの執行役員CTOをしております鈴木です。技術本部長を務めており、複数プロダクトのテックリードも兼務しています。 ──事前に伺っていたところによると、御社では特に開発生産性を高めることに注力されているとか。 そうですね、色んなことをしていますが、まずはリリースのワークフローはかなり工夫しています。一つは、社内で「ブランチデプロイ環境」と呼んでいる環境は、生産性の向上にかなり寄与しているかと思います。 ──それはどのようなものですか? プル

3 users
techfeed.io
9月3日、海外のテックメディアThe Registerが「Zen Browser is a no-Google zone that offers tiling nirvana」という題した記事を公開した。 この記事では、Zen Browserという新しいウェブブラウザの特徴や、その進化について詳しく紹介されている。 Zen Browserは、タイル配置やワークスペース機能などを取り入れ、ウェブブラウジングを近代化するために開発された新たなブラウザである。 その最大の特徴はFirefoxベースであり、Googleのコードを一切使用していない ことだ。近年登場したブラウザは、Googleが開発したChromiumブラウザをベースにしていることがほとんどで、Firefox由来の新たなブラウザは非常に珍しい。 現在は開発の初期段階(α版)にあるが、非常に活発に開発が行われており、速いペースでバージ

3 users
techfeed.io
MIXIで鋭意募集中の求人情報を、担当者に詳しく・具体的に・そして熱く解説してもらう「求人深掘り」シリーズ。今回は『家族アルバム みてね』を手がける みてね事業開発部の仲安さんに、プロダクトマネージャー(以下PdM)募集の背景と、実際の業務内容、そして求める人物像を聞きました。ぜひ当記事を読んで、ご興味をもっていただけたら幸いです! 仲安晃一(なかやす あきかず) みてね事業開発部 プロダクトマネージャー/新規事業開発担当 2018年MIXIに入社。グラフィックデザイナーとして経験を積んだ後、楽天、リクルート、MIXIにてプロダクトマネジメント業務、新規事業開発業務に従事。MIXI入社後はゲーム事業のプロデューサー、マネジメント業務、組織開発業務を経て、現在は『みてね』内のプロダクトマネジメント業務と複数の新規事業企画案件を担当。 PdMには『みてね』KPIの最大化を託したい ──今回の募

4 users
techfeed.io
8月29日、GoogleはGemini in BigQueryの複数の新機能を正式に提供開始した。 Gemini in BigQueryとは、Google Cloudのデータ分析プラットフォームであるBigQueryにAI機能を統合した新しいサービスであり、データ分析作業の効率を飛躍的に向上させる。これにより、ユーザーはAIを活用して複雑なデータセットの分析や重要な情報の抽出を、より簡単かつ迅速に行うことができる。 特に注目すべきは、自然言語での指示を通じてAIが適切なSQLクエリやPythonコードを生成する機能である。たとえば、ユーザーは次のように指示を出すことができる: 「このテーブルの各製品ごとの総売上を計算して。」 「pandasを使って、製品の売上と顧客レビュー数の相関を求めるPythonコードを書いて。」 「サブスクライバータイプ別に平均旅行時間を計算して。」 これらの指示を

20 users
techfeed.io
8月30日、Laravelは「Laravel Cloud」を発表した。Laravelアプリケーションを即座にデプロイできる新しいクラウドプラットフォームだ。 Laravelの創設者であり主要な開発者であるTaylor Otwell(テイラー・オットウェル)氏が、Laracon 2024のキーノートスピーチで初めてこのプラットフォームを公開した。デモンストレーションでは、プロジェクトの作成からLaravelアプリケーションの起動までがわずか25秒で完了したことが示された。 Laravel Cloudは完全に管理されたインフラストラクチャプラットフォームであり、LaravelとPHPに最適化されている。 以下に、Laravel Cloudの主な機能を示す。 即時デプロイ:Laravelアプリケーションをわずか数秒で起動・デプロイできる。 自動スケーリング:アプリケーションの需要に応じて、自動的

3 users
techfeed.io
8月29日、海外の技術メディアLINUXexpertが「時代遅れの Linux コマンドライン ツールの調査: より優れた代替ツールへの移行」という記事を公開した。この記事では、Linux環境における古いコマンドラインツールの現状と、それらを置き換えるべき現代的なツールについて詳しく紹介されている。 以下に、その内容を紹介する。 Linuxの古いコマンドラインツールとその代替品 Linuxは強力なコマンドラインツールを豊富に備えている。しかし、技術の進化とともに、一部のツールは時代遅れとなり、より優れた代替ツールが登場している。この記事では、以前は一般的に使われていた古いツールと、その代替品について解説する。 screen なぜ時代遅れか: screenはかつて、複数のターミナルセッションを管理するための主要なツールであったが、開発が停滞し、現代のツールに比べて機能が劣る。 代替ツール:

16 users
techfeed.io
8月26日、Codonプロジェクトは新たなPython実装であるCodon 0.17をリリースした。 CodonはLLVMコンパイラインフラストラクチャを活用し、Pythonコードをネイティブマシンコードにコンパイルすることで、従来のPythonよりも10〜100倍の高速化を目指すオープンソースプロジェクトである。GitHubでも14,000以上のスターを獲得しており、開発者たちからの注目度の高さが伺える。 Codonは、Pythonコードのランタイムオーバーヘッドを回避し、C/C++のパフォーマンスに匹敵する速度を目指している。また、ネイティブのマルチスレッド処理をサポートしており、さらに高いパフォーマンスを引き出すことができる。 今回のバージョン0.17では、LLVM 17コンパイラを基盤とし、新たにfloat16、bfloat16、float128といった浮動小数点型のサポートが追加

174 users
techfeed.io
8月19日、海外の技術情報メディアTheRegisterが「自分で作ればGitHub Copilotは不要」と題した記事を公開した。この記事では、オープンソースのAIコードアシスタント「Continue」を中心に、どのようにしてLLM(大規模言語モデル)をローカル環境で実行し、IDEに統合するかについて解説している。 Continueをインストールする前提条件 Continueをインストールし、動作させるには、以下の前提条件を満たす必要がある。 マシン要件: 動作に必要なマシン: 近年のプロセッサを搭載したシステムであれば動作するが、最適なパフォーマンスを得るためにはNvidia、AMD、またはIntelのGPU(6GB以上のvRAMを推奨)が望ましい。Apple Silicon搭載のMacでも動作するが、16GB以上のメモリを推奨する。 Ollamaモデルランナー: Ollamaモデルラ

3 users
techfeed.io
8月17日、「PyTorchは死んだ、JAX万歳」と題した記事が公開され、海外で人気を博している。この記事では、PyTorchの問題点と、それに対するJAXの優位性について、コードサンプルを交えて詳しく分析されている。 この記事では、PyTorchが科学計算の分野でどれほどの生産性を低下させ、技術的負債を増大させたかを強調している。PyTorchは本来、迅速なプロトタイピングを目的として開発されたが、その設計は大規模な分散システムでの使用に適していないという。 設計思想の違い PyTorchの設計思想は、TensorFlowの静的でパフォーマンス重視のアプローチに対して、動的でデバッグが容易、そして「Pythonらしい(Pythonic)」フレームワークを目指すというものである。しかしこの設計思想は、特に大規模なプロジェクトにおいて、スケーラビリティとパフォーマンスの面で妥協を強いられる。

46 users
techfeed.io
8月17日、海外のエンジニア向けメディアInfoQが「es-toolkit, a Modern Lodash Alternative」と題した記事を公開した。 この記事では、JavaScriptのモダンなユーティリティライブラリであるes-toolkitについて詳しく紹介されている。es-toolkitは、Lodashに代わるライブラリとして注目されている。 es-toolkitの特徴 es-toolkitは新たに登場したJavaScriptライブラリであり、LodashやUnderscore.jsの直接的な競合であり、以下のような特徴を持つ。 es-toolkitは、 debounce、delay、chunk、sum、pickなど、日常的に使用するユーティリティ関数を提供する es-toolkitは、最新の JavaScript 環境で2~3倍のパフォーマンスを実現する es-toolk

15 users
techfeed.io
8月7日、Node.jsはv22.6.0をリリースした。このバージョンにはいくつかの注目すべき新機能が含まれている。 本記事は、以下のエキスパートに監修していただきました: 古川陽介さん(Japan Node.js Association代表理事) 実験的なTypeScriptサポート Node.jsは、初期的なTypeScriptサポートのために--experimental-strip-typesフラグを導入した。この機能は、TypeScript特有の構文を変換することなく.tsファイルから型注釈を削除する。現在の制限として以下の点がある。 インライン型注釈のみサポートし、enumやnamespaceなどの機能はサポートしていない。 importおよびrequire文に明示的なファイル拡張子が必要である。(import x from 'x.ts') 実行時エラーを避けるため、型インポート

37 users
techfeed.io
7月30日、Denoで「HTTPインポートに関して私たちが間違っていたこと(What we got wrong about HTTP imports)」と題した記事が公開された。この記事では、Deno、そしてNode.jsの開発者であるライアン・ダール自身が、DenoのHTTPインポートの設計に関する誤りと、それに対する解決策について(そして、JSRとDeno 2のPRも含め)述べている。 以下に、その内容を詳しく紹介する。 本記事は、以下のエキスパートに監修していただきました: 古川陽介さん(Japan Node.js Association代表理事) HTTPインポートとは DenoのモジュールシステムをHTTPインポートに基づいて設計するという試みは、npmに代わる分散システムをHTTP上で実現することを目指していた。これにより、package.jsonファイルやnode_modul

30 users
techfeed.io
8月1日、Vercel Newsで「Google がインデックス作成プロセスで JavaScript を処理する方法 – Vercel」と題した記事が公開された。この記事では、Googleがインデックス作成プロセスでJavaScriptをどのように処理しているかについて詳しく紹介されている。 以下に、その内容を簡潔にまとめて紹介する。 まず、Googleがインデックス作成プロセスでJavaScriptをどのように扱うかについて、以下の主要な誤解があることが指摘されている。 「GoogleはクライアントサイドのJavaScriptをレンダリングできない」 「GoogleはJavaScriptページを異なる扱いをする」 「レンダリングキューとタイミングがSEOに大きく影響する」 「JavaScriptを多用するサイトはページ発見が遅くなる」 これらの誤解を解消するため、VercelはSEOおよ

3 users
techfeed.io
7月26日、RustチームはRust 1.80.0を発表した。 Rustは信頼性が高く効率的なソフトウェアを構築するためのプログラミング言語であり、今回のバージョンアップではいくつかの新機能と改善が含まれている。以下に主な変更点を紹介する。 本記事は、以下のエキスパートに監修していただきました: LazyCell と LazyLock これらの「遅延」タイプは、データの初期化を初めてアクセスされるまで遅らせるものである。1.70で安定化されたOnceCellとOnceLockタイプに似ているが、セル内に初期化関数を含んでいる点が異なる。この機能はもともと、人気のあるlazy_staticおよびonce_cellクレートから、標準ライブラリに取り入れられた機能を安定化させたものである。 LazyLockはスレッドセーフなオプションであり、static値のような場所に適している。以下の例では、

19 users
techfeed.io
本記事は、TechFeed Experts Night#31 〜 フロントエンドアーキテクチャの現状と未来のセッション書き起こし記事になります。 イベントページのタイムテーブルから、その他のセッションに関する記事もお読み頂けますので、一度アクセスしてみてください。 本セッションの登壇者 セッション動画 「Module Harmonyについて」ということで発表を始めさせていただきます。「フロントエンドアーキテクチャーの現状と未来」というイベントタイトルからは少し外れますが、モジュールと言われるJavaScriptの1つの仕様の中で、こういうことが起きてるんだよという、少し角度を変えた話をさせていただければと思います。

5 users
techfeed.io
6月12日、The Astro Blogで「JavaScript を使わないビュー遷移(Zero-JavaScript View Transitions)」と題した記事が公開された。この記事では、JavaScriptを使用せずに、ネイティブアプリライクなビュー遷移を実現するための新しいプラットフォームAPIについて詳しく紹介されている。 Zero-JavaScript View Transitions View Transitions APIは、ページ間のネイティブなブラウザ遷移を可能にするAPIのセットである。歴史的には、これが可能だったのはJavaScriptを多用するシングルページアプリケーション(SPA)だけだったが、最近の進歩により、ネイティブなページ遷移がウェブプラットフォームに導入されている。 AstroユーザーはAstro 2.9以来、ビュー遷移への早期アクセスが可能となっ

6 users
techfeed.io
7月10日、CSS Tricksが「If CSS Gets Inline Conditionals」と題した記事を公開した。この記事では、CSSの条件付きスタイル適用に関する新しい提案について詳しく紹介されている。 if() ー CSSにインライン条件式が導入される 6月13日、CSSワーキンググループ(CSSWG)がCSS Values Module Level 5仕様にif()条件を追加することを決定した。このニュースは、同日Lea Verouの投稿によって注目を集めた。 A historical day for CSS 😀🎉 If you write any components used and/or styled by others, you know how huge this is! background: if(style(--variant: success), va

次のページ