メインコンテンツまでスキップ

2024-08-03

列が足りなくなりました

  • ジミー・ミラーの「We ran out of columns」は、彼の最初のソフトウェアの仕事における混沌としながらも魅力的なコードベースを描写しており、列が足りなくなったためにMerchants2が作成されたという、Merchantsというデータベーステーブルを強調しています。
  • コードベースはVB、C#、さまざまなJavaScriptフレームワーク、および多数のSOAPサービスの混合であり、開発者がコードをチェックインしないことによる追跡が困難なバグなどの顕著な問題がありました。
  • 混沌としているにもかかわらず、そのコードベースは創造的な問題解決を可能にし、開発者が独自の解決策を見出すことで、疎結合なシステムとユーザーとの独自で直接的なつながりを生み出しました。

反応

  • ある開発者が最初の会社で経験した、バージョン管理がなく、多数のグローバル変数が存在する無秩序なコードベースについて共有しました。
  • バグは顧客のサイトにVisual Studioをインストールし、アプリをデバッグモードで実行することで修正され、共有ディスクに複数の不統一な名前のバージョンが保存されることになりました。
  • 開発者は最終的に、新しいプロジェクトに対してgit、Linux、継続的インテグレーション(CI)などの最新の手法を導入しましたが、古いプロジェクトは変更されないままであり、機能不全のコードベースを改善することの難しさを浮き彫りにしました。

p5.js

  • p5.jsライブラリは、ユーザーがその機能を学び、探求するのに役立つさまざまな例やコミュニティスケッチを提供しています。
  • 注目すべきプロジェクトには、Geodata Weaving、Slime Molds、Generative Succulents、Padrão Geométrico、Zen Pots、そしてGlitch animationがあり、ライブラリの多様性を示しています。
  • ユーザーは寄付を通じて、または自分でダウンロードして使用することで、p5.jsライブラリをサポートできます。

反応

  • p5.jsは2023年にSovereign Tech Fundから45万ユーロの助成金を受け取り、ドキュメントとアクセシビリティを強化し、新しいユーザーフレンドリーなウェブサイトを立ち上げました。
  • ユーザーはp5.jsの初心者に優しい性質を評価していますが、d3やthree.jsのようなライブラリと比べてパフォーマンスの制限があることに注意しています。
  • 新しいウェブサイトは好意的に受け入れられていますが、一部のユーザーは、予算配分の批判を受けているProcessingプロジェクトからのp5.jsの起源に関する言及がないことを惜しんでいます。

タウリ 2.0 リリース候補

  • タウリ2.0リリース候補が発表され、8月末までに安定版のリリースが予定されています。ドキュメントの最終調整と重大なバグの修正に重点を置いています。
  • タウリ2.0はモバイル開発の基礎的なサポートを導入していますが、デスクトップの機能と同等にはまだ達しておらず、コアプラグインの固定ネームスペースやRust APIのリファクタリングなどの重大な変更が含まれています。
  • 外部セキュリティ監査が完了し、すべての問題が修正されました。完全な報告書は近日中に公開される予定です。コミュニティの皆さんには、ドキュメント作成や問題解決への貢献を奨励します。

反応

  • タウリ2.0リリース候補が発表され、その機能や潜在的な改善点についてユーザー間で大きな議論が巻き起こっています。
  • タウリは、HTML、JavaScript、CSSにコンパイルされるフロントエンドフレームワークを使用して、主要なプラットフォーム向けに小さくて高速なバイナリを作成するためのフレームワークであり、バックエンドロジックはRust、Swift、Kotlinなどの言語で記述されます。
  • ユーザーはTauriをElectronと比較し、Tauriの軽量なフットプリントとネイティブ統合を指摘しながら、そのセキュリティ重視、クロスプラットフォームUI、およびLinuxのウェブコンポーネントの問題やより良いドキュメントの必要性といった課題についても議論しました。

kdb+の未来は?

  • kdb+は歴史的な市場データの保存と分析のための強力な技術ですが、Clickhouse、QuestDB、Bigquery、Redshiftなどの代替手段も現在では速度面で競争力があります。
  • ローカルな定量分析には、アクセスのしやすさとコスト効率の面から、PythonとDuckDB、Polars、またはPyKXが推奨されます。
  • kdb+のリアルタイムストリーミングおよび分散コンピューティング機能は十分に活用されておらず、KafkaやFlinkのような技術がより人気を集めています。

反応

  • 議論は、高性能な時系列データベースであるkdb+の将来とその潜在的な後継者に焦点を当てています。
  • TimeScale(PostgreSQLの拡張機能)、DuckDB、ClickHouseのような代替案は、そのパフォーマンスとコスト効率の良さで注目されています。
  • 独自の性質と高コストがkdb+の大きな欠点であり、そのため一部の人々は時系列分析のためにPythonとDuckDBやPolarsのようなオープンソースのソリューションを検討しています。

ハノンプロ – デジタル時代のためのピアノ技術と練習

  • ハノンプロは、進捗追跡、フィードバック、練習習慣の構築などの機能を提供する、iPhone、iPad、Mac用の最新のピアノ練習アプリです。
  • 高度な機能には、パフォーマンス分析、自動ページめくり、BluetoothまたはUSB経由でMIDIキーボードに接続した際のインタラクティブ機能が含まれます。
  • このアプリはiCloud同期、毎日の練習リマインダー、実績をサポートしており、SwiftUIとCore MIDIで構築されていて、iOS 17に対応しています。

反応

  • ハノンプロは、デジタル時代に合わせて設計された、エクササイズとフィードバックを提供するピアノ技術アプリです。
  • ユーザーはMIDIコントローラーでアプリがクラッシュすることを報告し、MIDI再生やより柔軟な練習オプションを望んでいると表明しました。
  • アプリはiOS 17以上を必要とするため、古いデバイスを使用しているユーザーの間で不満が生じています。改善の提案には、デバイス互換性の向上や進捗追跡、カスタムスコアのアップロードなどの追加機能が含まれています。

ガベージコレクション付きLispを436バイトで

  • SectorLISPは現在ガベージコレクションを含んでおり、ハイレベルなガベージコレクション付きプログラミング言語をフロッピーディスクの512バイトのブートセクタに、わずか436バイトで収めています。
  • これにより、LISPはFORTHやBASICを超えて最小のプログラミング言語となり、1981年以降のすべてのPCモデルで少なくとも64kbのRAMを持つものと互換性があります。
  • このプロジェクトは重要な最適化を示しており、i8086アセンブリ実装をさらに100バイト削減し、40バイトのガベージコレクタを含んでいます。バイナリとソースコードはGitHubで入手可能です。

反応

  • ガベージコレクション (GC) を備えたLispインタープリタがわずか436バイトで実装され、プログラミングにおけるミニマリズムの驚異的な成果を示しています。
  • このプロジェクトは、justine.lolでホストされており、そのコンパクトで効率的なデザインが注目と称賛を集めています。過去の作品を参照し、教育的な洞察を提供しています。
  • 議論は、ミニマリストなインタープリタを作成することと「本物の」Lispの機能を維持することのバランスを強調し、Brainfuckのようなプログラミング言語の性質とその実用的な応用についての議論を引き起こします。

Vimtutorの拡張版を作成しました – Vimtutor Sequelの紹介

  • "Vimtutor続編"は、コマンド、技術、ステップバイステップのチュートリアル、インタラクティブな演習を含む高度なVimレッスンを提供します。
  • インストールはHomebrewを使用するか、GitHubからリポジトリをクローンすることで行うことができ、両方の方法について詳細な手順が提供されています。
  • このツールはMITライセンスの下でライセンスされています。貢献はCONTRIBUTING.mdのガイドラインに従って歓迎されます。

反応

  • Vimtutor Sequelは、基本的なVimコマンドに慣れたユーザーを対象とし、高度な機能を学びたい人向けの、オリジナルのVimtutorの拡張版です。
  • 主な機能には、分割、スペルチェック、高度な検索と置換、マクロ、Vimスクリプト、プラグイン、セッション、レジスタに関するチュートリアルが含まれており、一貫した学習体験のためのカスタムvimrc設定も含まれています。
  • インストール手順はMac、Windows、およびLinux用に提供されており、作成者はGitHubリポジトリを通じてフィードバックと貢献を求めています。

1991年 WWW-NeXT 実装

  • このGitHubリポジトリは、ティム・バーナーズ=リーのオリジナルのNeXT用WorldWideWebアプリケーションをミラーリングしており、最初のプロトタイプのハイパーテキストブラウザ/エディタを展示しています。
  • このアプリケーションは、ハイパーテキストサーバー、ファイル、およびニュースへのアクセスを可能にし、初期のウェブの機能を垣間見ることができます。
  • リポジトリには履歴の変更ログが含まれており、各ファイルの最終更新日に遡ってコミット日が設定されているため、元のタイムラインが保持されています。

反応

  • 1991年のWWW-NeXT実装がGitHubで公開され、技術愛好家やデジタル考古学者の間で関心を呼んでいます。
  • このリリースは、当時より一般的だったテキストベースのブラウザと対照的に、ウェブの初期のグラフィカルな性質を強調しています。
  • このプロジェクトは、Objective-CとNeXTStepの使用を紹介し、ティム・バーナーズ=リーのオリジナルのウェブブラウザ/エディタにとって重要だった迅速なアプリケーション開発能力を強調しています。

研究者たちは、脳の経路における膠芽腫細胞を殺すことができる治療法を開発

  • マクマスター大学および他の機関の研究者たちは、膠芽腫細胞が使用する新しい脳経路を特定し、これらの腫瘍をブロックして殺す有望な治療法を開発しました。
  • 2024年8月2日にNature Medicineに掲載されたこの研究は、CAR T細胞と薬剤を用いてこの経路を標的とすることで、前臨床モデルにおいて生存率が大幅に向上することを示しています。
  • この治療法はROBO1タンパク質に焦点を当てており、3つのがんモデルで生存時間を2倍にし、2つの疾患では50%の症例で腫瘍を根絶しました。これは、膠芽腫や他の侵襲性脳腫瘍に希望をもたらします。

反応

  • 研究者たちは、歴史的に生存率が低い非常に攻撃的な脳腫瘍である膠芽腫細胞を殺すことができる新しい治療法を開発しました。
  • 自らの膠芽腫を治療しているリチャード・スコイヤー博士は、1年以上再発がないという有望な結果を示し、この新しいアプローチの可能性を強調しています。
  • この議論は、がん治療の複雑さと課題を強調しており、免疫療法が一部のがんには効果的である一方で、すべての腫瘍に対して効果があるわけではなく、ケトジェニック療法のような代替治療法についても依然として議論が続いていることに言及しています。

現代のJavaにおける一般的なI/Oタスク

  • ケイ・ホルストマンによる記事では、特にウェブアプリケーション向けのJavaにおける一般的なI/Oタスク、例えばテキストファイルの読み書き、JSONの処理、ZIPファイルの操作について論じています。
  • Java 8以降のAPIの改善点を強調しており、Java 18からのデフォルトエンコーディングとしてのUTF-8や、java.nio.file.Filesおよびjava.io.InputStreamクラスの強化が含まれています。
  • この記事は、テキストファイルの読み書き、入力ストリームの処理、ディレクトリやZIPファイルの操作に関する実用的なコード例を提供し、レガシーなFileクラスよりも最新のFilesメソッドの使用を強調しています。

反応

  • 議論は、特に等価性チェックとDNS解決に関して、JavaのURLおよびURIクラスの癖や問題に集中しています。
  • Java I/Oの進化を強調し、java.io.Fileからjava.nio.file.Pathへの移行、非ブロッキングI/Oとより良い抽象化を強調しています。
  • JavaのI/O APIを使用する際の実用的なアドバイスや一般的な落とし穴について言及しています。例えば、ストリームでの例外処理やvarの使用などです。

裁判官がFCCのネット中立性復元規則を一時停止

反応

  • 裁判官がFCCのネット中立性復元規則を一時停止し、ネット中立性を巡る法的紛争が激化している。
  • この停止は、連邦規制権限を縮小した最高裁判所の決定に続くものであり、不安定な規制環境を引き起こしています。
  • 批評家たちは、不安定さが既存の企業に利益をもたらし、新規市場参入者の業務を複雑にすると主張しており、これらの問題は裁判所ではなく議会が対処すべきだと提案している。

磁気浮上式宇宙エレベーターによる低軌道への移動 (2001) [pdf]

反応

  • ハッカーニュースのユーザーたちは、低軌道への磁気浮上式宇宙エレベーターに関する2001年の論文について議論しており、Popular Scienceに掲載された類似のコンセプトを懐かしんでいます。
  • 議論は、カーボンナノチューブや高温超電導体のような先進材料の必要性や、テザーが切れるリスクなど、技術的な課題を含んでいます。
  • レールガンやローンチループなどの代替案が提案されており、超伝導材料の進歩とともに、宇宙エレベーターの経済的実現可能性と実用性についての議論が行われています。

カナダにおけるMetaのニュース禁止から1年

  • カナダのニュースメディアに対するMetaの禁止措置は、C-18法案に対応したもので、これによりFacebookとInstagramでのカナダのニュースメディアのエンゲージメントが85%減少し、全体のエンゲージメントが43%減少しました。
  • 約30%の地方ニュース媒体がソーシャルメディアで非活動的になっており、カナダ人のうち22%しかその禁止措置を認識していません。
  • 禁止にもかかわらず、36%のユーザーは依然として迂回手段を通じてニュースコンテンツに接触していますが、カナダ人はこれらのプラットフォームで1日あたり1100万件少ないニュースビューを見ており、全体的にニュースの消費量が減少し、より偏った視点でニュースを消費しています。

反応

  • カナダでのMetaのニュース禁止は、新聞ロビイストや政治家の影響を受けており、プラットフォームがニュースコンテンツに対して支払いを行うことを義務付けているため、Metaはニュースリンクをブロックすることになった。
  • 批評家たちは、ニュースコンテンツがスクリーンショットのような回避策を通じて依然として表示されるにもかかわらず、有益な無料のソーシャルメディアリンクを削除することで、この禁止がニュース組織に害を与えると主張しています。
  • メタがニュースコンテンツに対して支払うべきかどうかという議論が続いており、ニュース消費の減少、偏った情報の増加、ニュース組織の収益と存続への影響について懸念がある。

POSIXのユーザースペース化に向けて – パートI: シグナル処理とIO

  • Redox OSは、ユーザースペースでPOSIXシグナル処理とプロセス管理を実装するためにNGI Zeroの助成金を受け取り、カーネルおよびコンポーネントの改善に1年間集中することができます。
  • スキームパケットフォーマットの強化と新しいシステムコール(SYS_PREAD2およびSYS_PWRITE2)により、RedoxFSのコピー性能が63%向上し、io_uringの効率に匹敵するようになりました。
  • このプロジェクトは、より多くのPOSIXロジックをユーザースペースに移行することを目的としており、シグナル処理の改善や将来的にはユーザースペースプロセスマネージャの開発およびさらなるカーネルの強化を計画しています。

反応

  • POSIXは、ファイルディスクリプタ(FD)が複数のプロセスによって共有されることを許可しており、これはUnix系システムや能力指向のセキュリティにとって重要ですが、この共有はユーザースペースに移すことができます。
  • FDsのグローバルカーソルは同時アクセスを複雑にし、同期が必要になります。Rustのstd::fs::File APIは可変性の要件でこれに対処していますが、他の言語ではバグが発生したり、複雑なAPIが必要になることがあります。
  • 現代のアプリケーションおよびシステムプログラミングは、よりモジュール化され安全なインターフェースの必要性とPOSIXの歴史的な設計とのバランスを取るために進化しており、D-BusやLinuxのplan9ネームスペースなどのツールを利用して、より良い隔離とセキュリティを実現しています。

働くプログラマーのための原始再帰関数

  • この記事は、計算機科学教育でしばしば見過ごされがちなチューリング完全性と原始再帰関数の理解の重要性を強調しています。
  • 多くの実用的な問題は、決定性やセキュリティなどの利点を提供する非チューリング完全な言語で実装できることを強調しています。
  • 議論には、有限状態機械、チューリング機械、および原始再帰関数の違いが含まれており、PRFは常に終了し、多くの実用的な関数を計算できることが指摘されています。

反応

  • この記事は、原始再帰関数とそのコード終了を保証する重要性について探求し、構造化プログラミングの原則と一致しています。
  • それはチューリング完全性の限界と、終了を保証できるCUEやDhallのような言語の利点について論じています。
  • この会話は、関数の終了を証明する実際の課題と、構成言語に対するその影響、計算能力と安全性のバランスについて取り上げています。