サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
今年の「かわいい」
techfeed.io
12月7日、Chrome DevRelチームが「CSS Wrapped 2024」と題した記事を公開した。この記事では、2024年に追加されたCSSの新機能について詳しく紹介されている。 12月7日、Chrome DevRelチームが「CSS Wrapped 2024」と題した記事を公開した。この記事では、2024年に追加されたCSSの新機能について詳しく紹介されている。 以下に、その内容をかいつまんで紹介する。 原文では、実際に動作するデモや動画とともにCSSの新機能が紹介されているので、ぜひ原文を参照していただきたい。 1. 新機能の概要 2024年は、CSSにとってさらなる飛躍の年となった。これまでにない新機能が数多く追加され、ウェブ開発者にとって大きな変化をもたらしている。以下は主な新機能の概要だ。 コンポーネント機能の強化 Field Sizing height: auto への
11月25日、海外の技術ブログ「Here Comes the Moon」が「The two factions of C++」と題した記事を公開した。この記事では、C++の進化を巡る対立や課題について深く掘り下げられており、特に「セーフティプロファイル」や「モジュール機能」といった今後のC++を支える新しい概念にも言及されている。以下、その内容を紹介する。 C++の未来を巡る議論の活発化 C++の未来に関する議論は、オンラインフォーラムや公式な標準化委員会の場を問わず、非常に白熱している。特に、進化作業部会(EWG)が採択した新しい設計方針や、プログラミング言語としてのC++の方向性について意見が割れている。 進化作業部会での合意内容 進化作業部会では、以下のような設計方針が合意された。 ABI(Application Binary Interface)互換性の維持:過去のC++およびCとの
11月23日、TypeScriptチームは最新バージョンであるTypeScript 5.7を正式リリースした。このバージョンでは、型チェックの強化、パフォーマンス向上、そして開発者の作業効率を高めるための多数の新機能が追加された。TypeScript 5.7は、既存の開発フローを大幅に改善する可能性を秘めている。 以下は、TypeScript 5.7で注目すべき改善点を簡潔に紹介する(詳しくはリリースノートをご覧いただきたい)。 1. 未初期化変数のチェック機能の拡張 TypeScript 5.7では、未初期化変数の検出能力が大幅に強化された。従来は、特定の状況で未初期化変数の使用が見逃されることがあったが、新バージョンでは、関数スコープ内で「一度も初期化されていない」変数を厳密にチェックできる。 従来は、以下のコードではresultが未初期化のまま使用されてもエラーが報告されないケースが
10月23日、ISRGが「RustlsがOpenSSLやBoringSSLを凌駕する」という記事を公開した。この記事では、Rustlsのメモリ安全性とパフォーマンスに焦点を当て、TLSライブラリの進化について詳しく紹介されている。 10月23日、ISRGが「RustlsがOpenSSLやBoringSSLを凌駕する」という記事を公開した。この記事では、Rustlsのメモリ安全性とパフォーマンスに焦点を当て、TLSライブラリの進化について詳しく紹介されている。 以下に、その内容を紹介する。 Rustlsとは何か? Rustlsは、Rust言語で書かれ、メモリ安全性に優れたTLS(Transport Layer Security)実装である。 Rustlsはすでにプロダクション環境に対応しており、さまざまなアプリケーションで利用されている。C APIとFIPSサポートも備えており、既存のプログ
10月24日、React Nativeチームは、バージョン0.76をリリースした。 本バージョンではアーキテクチャが刷新されており、React Nativeの今後にとって重要なアップデートとなっている。 新しいアーキテクチャの主な改善点 今回のアップデートでは、以下の4つの重要な要素が導入されている。 新しいネイティブモジュールシステム JavaScriptとネイティブ層が直接通信できる「JSI(JavaScript Interface)」を利用することで、ブリッジを介さずに同期的な関数呼び出しが可能となった。この変更により、ネイティブモジュールとのやり取りがより効率的かつ高速になった。 const value = nativeModule.getValue(); nativeModule.doSomething(value); 旧アーキテクチャでは、ネイティブ関数の呼び出しに非同期のコー
OtterTuneが2023年に公開したブログ記事「PostgreSQLで最も嫌いな部分」が、2024/10/21にまた人気を博している。この記事では、PostgreSQLのマルチバージョン並行性制御(MVCC)実装の問題点について詳しく紹介されている。 以下に、その内容をかいつまんで紹介する。 はじめに データベースの選択肢は数多く存在し、2023年4月時点で897種類にのぼる。これだけ多くのシステムがある中で、どれを選ぶべきか迷うのは当然だ。2000年代には、GoogleやFacebookといった新進気鋭のテック企業が使用していたことから、MySQLが一般的な選択肢となっていた。その後、2010年代には、NoSQLストレージとしてMongoDBが人気を博した。そしてここ5年ほどで、PostgreSQLがインターネット上で最も愛されるDBMSとなった。その理由は、信頼性が高く、機能が豊富
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
10月6日、海外のテクノロジーメディア「Ars Technicha」が報じたところによると、数千台のLinuxシステムが数年にわたってステルス型のマルウェア「Perfctl」に感染した状態にあるという。 Perfctlは、2021年以降に確認され、20,000以上の一般的な設定ミスを悪用してインターネットに接続されたシステムに感染している。Aqua Securityによると、Perfctlは、Apache RocketMQの深刻な脆弱性(CVE-2023-33246)を利用し、多くのLinuxマシンに悪影響を与えている。この脆弱性の修正はすでに行われているが、適用されていないシステムが依然として危険にさらされている。 Perfctlの特徴 Perfctlは、Linuxの監視ツール「perf」とコマンドラインツールに使われる「ctl」という名称を組み合わせた名前を持つマルウェアである。これは
9月26日、Wafrisが「RedisからSQLiteへの再構築」と題したブログ記事を公開した。この記事では、Wafrisが提供するRailsクライアントのバージョン2におけるRedisからSQLiteへの移行について、その決定プロセスやパフォーマンスに関する考察、さらにアーキテクチャ変更の詳細が語られている。 以下に、その内容を紹介する。 移行の背景 Wafrisは、Railsアプリケーションに組み込むことで、HTTPリクエストに対するセキュリティルールのチェックを行うミドルウェアを提供している。Wafrisの初期バージョンであるv1は、ユーザーが自身のRedisデータストアを管理することを前提に設計されていた。この背景には、WafrisがHerokuエコシステムから誕生したことが関係しており、HerokuではRedisの導入が簡単に行える環境が整っていたためだ。さらに、Sidekiqの
9月10日、GitButlerが「なぜGitHubが勝ったのか」と題したブログ記事を公開した。この記事では、GitHubが他のプラットフォームと比較してどのように成功を収めたのか、そしてその背後にある要因について詳しく紹介されており、海外で多くの人々に読まれている。以下に、その内容を紹介する。 GitHubが成功した理由 GitHubの成功は、単に技術的な優位性だけでなく、いくつかの重要な要因が相互に作用した結果である。その要因は、主に以下の2点に集約される。 タイミングの良さ GitHubが登場したのは、分散型バージョン管理システム(DVCS)が徐々に普及し始めた頃であった。2005年にGitが誕生し、これまでの集中型バージョン管理システム(SVNやCVS)が持つ問題点を解決するツールとして注目され始めた時期だった。特にオープンソースプロジェクトの拡大に伴い、集中型のシステムでは対応が難
ソフトウェア工学における大規模言語モデルの現状を調査:LLMの適用と成果 9月11日、ソフトウェア工学(SE)における大規模言語モデル(LLM)に関する包括的な調査が公開された。本調査は、SE分野におけるLLMの活用に焦点を当てており、コード生成やテスト、要件エンジニアリングなど、多岐にわたるタスクの自動化におけるLLMの役割を体系的に整理し、LLMがSEの各種業務にどのように適用され、どのような成果を上げているかを明らかにしている。 本調査の成果物はGitHubリポジトリで公開されており、今後も継続的に更新される予定である。ただ、実際のドキュメントは非常にボリュームがあるため、以下にChatGPTを使って要点をまとめたものを紹介する。 LLMのSE業務への適用とその成果 LLMは、ソフトウェア開発の各フェーズで大きな成果を上げており、以下のように様々なタスクに適用されている。 1. 要件
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++によるコードはメモリに関する安全機構が欠如しているため、これらの脆弱性が多くの大規模なコードベースで
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%低下することが確認された。この現象は、高速なネットワーク環境で顕著に現れる。 パフォーマンス差の拡大 基本的な帯域幅が増加
9月10日、MicrosoftはTypeScript 5.6のリリースを発表した。 今回のリリースでは、多くの新機能や改良が含まれており、特にバグの早期発見とコードの安全性が強化されている。以下は、TypeScript 5.6の主要な新機能と改善点である。 真偽チェックの厳格化 TypeScript 5.6では、コード内の真偽値チェックに対する厳格な制約が追加された。具体的には、常に真(truthy)または偽(falsy)となる式に対してエラーが発生する。これにより、意図しない条件式によるバグを未然に防ぐことができる。 以下のコード例では、意図しない真偽式が検出され、エラーとして扱われる。 if (/0x[0-9a-f]/) { // エラー: この式は常に真となる。(.test()の呼び出しを忘れたのかもしれない) } if (x => 0) { // エラー: この式は常に真となる。(
9月5日、「"SRE" doesn't seem to mean anything useful any more」と題したあるブログ記事が話題になっている。この記事では、SRE(サイト信頼性エンジニア)という役割が変容し、現在では単なる「オペレーション担当」へと貶められてしまった現状について詳しく紹介されている。以下に、その内容を紹介する。 SREの本来の役割とは何か SREとは、本来システム管理者とプログラマー、両者の役割を兼ね備えた技術者を指す。SREは、単なる「オペレーション担当」としての役割にとどまらず、システムの深部に精通し、Unixボックスを管理し、プログラムを書いてシステムを効率化することが求められる。しかし、最近ではSREという役割が単に「オペレーション担当」に矮小化されてしまっている。 オペレーション担当の現実 本記事の著者は、自身の経験を元に、SREが「オペレーション
Li Haoyi氏が2017年に執筆した「What's Functional Programming All About?」と題した記事が、どういうわけかTechFeedの記事収集エンジンに最近(2024年9月)拾われた。古い記事なので、読者の皆様に紹介するかどうかためらわれたが、時代を超えて普遍的な内容であり、非常にためになる情報源にもかかわらず、日本ではほとんど読まれていない記事なので、ここに簡単に紹介することとした。 この記事では、関数型プログラミングの本質と、その利点についてわかりやすく解説している。関数型プログラミングを初めて聞く人から、すでに知識を持っているエンジニアまで、幅広い読者が理解しやすい内容になっている。 ここに紹介するのは、元記事の要約である。原文は非常に詳しく、ウィットに富んだ内容となっているので、ぜひ原文も併せて参照していただきたい。 関数型プログラミングとは?
9月1日、海外のテックメディアIEEE Spectrumで「AIがウェブクローリングをめぐる戦いを巻き起こす(AI Has Created a Battle Over Web Crawling)」と題した記事が公開された。この記事では、ジェネレーティブAIの進化とそれに伴うウェブクローリングに関する論争について、AI研究者グループ「Data Provenance Initiative」のリードリサーチャーであるシェイン・ロングプレ(Shayne Longpre)氏へのインタビューを通じて詳しく解説されている。 ジェネレーティブAIとデータ収集の問題 ジェネレーティブAIは、膨大なデータセットを使用して訓練されることで、驚異的なパフォーマンスを発揮するが、そのデータセットの大部分は、私たちが日常的にインターネット上に公開している情報で構成されている。これには、ブログ投稿、ビデオコンテンツ、S
9月5日、Vercelの公式ブログで「What’s new in React 19 – Vercel」と題した記事が公開された。この記事では、React 19における重要な新機能や改善点について、詳細かつ実践的な内容が取り上げられている。これまでのReactのバージョンで導入されてきた実験的機能が、React 19で正式に安定化され、多くの開発者にとってさらなるパフォーマンスの向上と開発体験の向上が期待されている。 ここでは、同記事からポイントを絞って内容をご紹介する。 サーバーコンポーネント (Server Components) サーバーコンポーネントは、Reactの10年の歴史の中でも最も大きな変化の1つであり、React 19の新機能の基盤となるものである。この機能により、以下の点が大幅に改善される。 初期ページロード時間の短縮 サーバーコンポーネントを使用すると、クライアントに送
人事領域に関するプロダクトを多数展開しており、HRTech企業の雄として名高いHRBrain社。年間のリリース回数はなんと1,100回!どうやってそんな開発生産性を実現しているのか、CTOの鈴木悠大さんにお話を伺ってきました。 ブランチデプロイ環境とは ──今日はお話を伺えるのを楽しみにしていました。まずは自己紹介をお願いできますか? 株式会社HRBrainの執行役員CTOをしております鈴木です。技術本部長を務めており、複数プロダクトのテックリードも兼務しています。 ──事前に伺っていたところによると、御社では特に開発生産性を高めることに注力されているとか。 そうですね、色んなことをしていますが、まずはリリースのワークフローはかなり工夫しています。一つは、社内で「ブランチデプロイ環境」と呼んでいる環境は、生産性の向上にかなり寄与しているかと思います。 ──それはどのようなものですか? プル
9月3日、海外のテックメディアThe Registerが「Zen Browser is a no-Google zone that offers tiling nirvana」という題した記事を公開した。 この記事では、Zen Browserという新しいウェブブラウザの特徴や、その進化について詳しく紹介されている。 Zen Browserは、タイル配置やワークスペース機能などを取り入れ、ウェブブラウジングを近代化するために開発された新たなブラウザである。 その最大の特徴はFirefoxベースであり、Googleのコードを一切使用していない ことだ。近年登場したブラウザは、Googleが開発したChromiumブラウザをベースにしていることがほとんどで、Firefox由来の新たなブラウザは非常に珍しい。 現在は開発の初期段階(α版)にあるが、非常に活発に開発が行われており、速いペースでバージ
MIXIで鋭意募集中の求人情報を、担当者に詳しく・具体的に・そして熱く解説してもらう「求人深掘り」シリーズ。今回は『家族アルバム みてね』を手がける みてね事業開発部の仲安さんに、プロダクトマネージャー(以下PdM)募集の背景と、実際の業務内容、そして求める人物像を聞きました。ぜひ当記事を読んで、ご興味をもっていただけたら幸いです! 仲安晃一(なかやす あきかず) みてね事業開発部 プロダクトマネージャー/新規事業開発担当 2018年MIXIに入社。グラフィックデザイナーとして経験を積んだ後、楽天、リクルート、MIXIにてプロダクトマネジメント業務、新規事業開発業務に従事。MIXI入社後はゲーム事業のプロデューサー、マネジメント業務、組織開発業務を経て、現在は『みてね』内のプロダクトマネジメント業務と複数の新規事業企画案件を担当。 PdMには『みてね』KPIの最大化を託したい ──今回の募
8月29日、GoogleはGemini in BigQueryの複数の新機能を正式に提供開始した。 Gemini in BigQueryとは、Google Cloudのデータ分析プラットフォームであるBigQueryにAI機能を統合した新しいサービスであり、データ分析作業の効率を飛躍的に向上させる。これにより、ユーザーはAIを活用して複雑なデータセットの分析や重要な情報の抽出を、より簡単かつ迅速に行うことができる。 特に注目すべきは、自然言語での指示を通じてAIが適切なSQLクエリやPythonコードを生成する機能である。たとえば、ユーザーは次のように指示を出すことができる: 「このテーブルの各製品ごとの総売上を計算して。」 「pandasを使って、製品の売上と顧客レビュー数の相関を求めるPythonコードを書いて。」 「サブスクライバータイプ別に平均旅行時間を計算して。」 これらの指示を
8月30日、Laravelは「Laravel Cloud」を発表した。Laravelアプリケーションを即座にデプロイできる新しいクラウドプラットフォームだ。 Laravelの創設者であり主要な開発者であるTaylor Otwell(テイラー・オットウェル)氏が、Laracon 2024のキーノートスピーチで初めてこのプラットフォームを公開した。デモンストレーションでは、プロジェクトの作成からLaravelアプリケーションの起動までがわずか25秒で完了したことが示された。 Laravel Cloudは完全に管理されたインフラストラクチャプラットフォームであり、LaravelとPHPに最適化されている。 以下に、Laravel Cloudの主な機能を示す。 即時デプロイ:Laravelアプリケーションをわずか数秒で起動・デプロイできる。 自動スケーリング:アプリケーションの需要に応じて、自動的
8月29日、海外の技術メディアLINUXexpertが「時代遅れの Linux コマンドライン ツールの調査: より優れた代替ツールへの移行」という記事を公開した。この記事では、Linux環境における古いコマンドラインツールの現状と、それらを置き換えるべき現代的なツールについて詳しく紹介されている。 以下に、その内容を紹介する。 Linuxの古いコマンドラインツールとその代替品 Linuxは強力なコマンドラインツールを豊富に備えている。しかし、技術の進化とともに、一部のツールは時代遅れとなり、より優れた代替ツールが登場している。この記事では、以前は一般的に使われていた古いツールと、その代替品について解説する。 screen なぜ時代遅れか: screenはかつて、複数のターミナルセッションを管理するための主要なツールであったが、開発が停滞し、現代のツールに比べて機能が劣る。 代替ツール:
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といった浮動小数点型のサポートが追加
8月19日、海外の技術情報メディアTheRegisterが「自分で作ればGitHub Copilotは不要」と題した記事を公開した。この記事では、オープンソースのAIコードアシスタント「Continue」を中心に、どのようにしてLLM(大規模言語モデル)をローカル環境で実行し、IDEに統合するかについて解説している。 Continueをインストールする前提条件 Continueをインストールし、動作させるには、以下の前提条件を満たす必要がある。 マシン要件: 動作に必要なマシン: 近年のプロセッサを搭載したシステムであれば動作するが、最適なパフォーマンスを得るためにはNvidia、AMD、またはIntelのGPU(6GB以上のvRAMを推奨)が望ましい。Apple Silicon搭載のMacでも動作するが、16GB以上のメモリを推奨する。 Ollamaモデルランナー: Ollamaモデルラ
次のページ
このページを最初にブックマークしてみませんか?
『TechFeed - エンジニアのための技術情報収集&共有プラットフォーム』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く