パスワードを忘れた? アカウント作成

スラドのRSSを取り込んでみよう。

14990321 story
Firefox

Mozilla、Firefox 85でNPAPIサポートの削除を開始する計画 20

ストーリー by nagazou
完全終了まであとちょっと 部門より
headless 曰く、

Mozillaが来年1月リリース予定のFirefox 85でNPAPIプラグインサポートの削除を始めるそうだ(Jim Mathies氏のGoogle Group投稿Ghacksの記事)。

かつては広く使われていたNPAPI(Netscape Plugin Application Programming Interface)だが、Google Chromeでは2015年にサポートを廃止し、Firefoxでも2017年のFirefox 52以降でFlash以外のNPAPIプラグインサポートを終了している。MozillaではAdobeがFlashのセキュリティアップデート提供を年内で終了するのに伴い、Firefox 85でFlashサポートを削除する計画を示しているものの、NPAPIサポートの削除計画は示していなかった。なお、2019年初めの段階でMozillaは2020年初めにESR版を除くFirefoxでFlashサポートを削除する計画を示していたが、2020年中の変更はロードマップから削除されている。

MozillaのJim Mathies氏によると、Firefox 85の段階ではUXからNPAPIプラグインサポートの痕跡を除去、使用できるプラグインがなくなって機能しないテストの除去または無効化、NPAPIプラグインサポートに結び付けられたコードベースの重要な領域をクリーンアップ、などにとどめ、プラグイン関連コードの全面的な除去は行わないという。プラグインサポートの削除で大きな問題が発生することは予測していないそうだが、プラグインサポートはコードベースの多数の領域にかかわっているため、安全性を重視したようだ。

Firefox 85がNightlyでのテストを終えてBetaにマージされたのちは、さまざまな領域のコードベースからプラグイン関連コードの除去が可能となり、Firefox 86ではさらにコードの除去が進む見込みとのことだ。

14980960 story
Python

11月のTIOBE Index、Pythonが初の2位 33

ストーリー by headless
交代 部門より
11月のTIOBE IndexでPythonが初めてJavaを上回り、2位に上昇した(InfoWorldの記事Neowinの記事)。

JavaはCとともにTIOBE Index開始当時から不動のトップ2で、2015年4月以降は1位を維持していた。しかし、今年3月以降急速にレーティングを落とし、5月以降はCが1位となっている。一方、Pythonは2017年後半からレーティングを伸ばしており、2018年後半にはC++と並び、2019年半ばからは完全にC++を上回って(2位との差が大きい)3位を維持していた。

11月のレーティングはPythonが前年から2.27ポイント増の12.12%、Javaは4.57ポイント減の11.68%となっている。1位のCは0.17ポイント増の16.21%とわずかな増加にとどまるが、2位以下との差は広がっている。

このほか、増加幅が1ポイントを超えたのは4位のC++(7.60%、+1.99)のみで、減少幅が1ポイントを超えたものはない。いずれも増加幅は小さくレーティングも1%前後だが、R(16位→9位)やPerl(21位→12位)、Go(20位→13位)、Transact-SQL(32位→20位)が大きく順位を上げている。逆にSwift(10位→14位)やRuby(11位→15位)、Delphi/Object Pascal(13位→18位)、Objective-C(12位→19位)は大きく後退した。

Pythonの人気が上昇した理由としてはデータマイニングやAI、数値計算といった分野での需要増が挙げられることも多い。一方、TIOBE Software CEOのPaul Jensen氏はプログラミングがソフトウェアエンジニアだけのものではなくなり、容易に学習して開発可能なプログラミング言語の需要にPythonがマッチしていることを挙げている。スラドの皆さんのご意見はいかがだろうか。
14979617 story
プログラミング

Excelでドラクエ3を再現。VBAなし縛りでも高い再現度 25

ストーリー by nagazou
なぜ人はExcelでゲームを作ってしまうのか 部門より
Excelでドラクエを再現した人がいるそうだ。しかもVBAを使用しない状態で。再現度に関しては動画(音声はなし)を見てもらう方が早いが、かなりの再現度になっている(パパセンセイ365)。

VBAなしという縛りで再現するため、図やモンスターは散布図で表示、循環参照を使ってカウンタを作りF9を押しっぱなしにする、循環参照を使ってセル上で疑似的にプログラミングを作る方法を開発したという。マップ上でキャラクターを自動で移動させたり、戦闘シーンに入る部分などをVBAを使わない状態で再現するのに苦労したようだ。具体的な手法については元サイトで詳細に解説されている。
14976420 story
プログラミング

なでしこが教科書に採用されたことで日本語でプログラミングができる意味を考える 173

ストーリー by nagazou
意外と仕事に使われてる 部門より
あるAnonymous Coward 曰く、

以前、日本語プログラミング言語「なでしこ」が中学校の教科書に採用されたという話があったが、なでしこ開発者である酒徳峰章氏と知人だという柳井政和(めもりーくりーなーの作者)氏が「なでしこ」の開発経緯とその意味に関してのコラムをまとめている(HARBOR BUSINESS Online)。

コラムなのでニュース性があるわけではないが、よくある教科書に載せるなら現場で使われている言語の方が良いのでは、という意見については、

学校でプログラムを学ぶ全員が、開発者になるのではない。普段見慣れた言葉でプログラムが書いてあるだけで、ずいぶんと気持ちが楽になる人も多いはずだ。母国語でプログラムを学べるのは有意義なことだと思う。

と返している。似たような意見はスラドにもあったが、これに関してはもっともだと感じる。なおこのコラムによれば、なでしこ利用者のうち仕事に使っている人は43%ほどいるそうだ。

この利用者数の数字は「なでしこ」公式サイトが15周年時に行ったアンケートによるもの。それによれば、利用年齢層は40代が38%、30代が25%、60代と10代が13%となっている。利用場所は趣味と仕事が43%で同率。タレコミの元記事によれば、日常の自動化処理などに使われている模様(15周年日本語プログラミング言語なでしこ)。

14974342 story
ソフトウェア

藤井二冠の自作PCをネタに将棋ソフト開発者が対談。プロ棋士とプログラマーがタッグを組む未来も 47

ストーリー by nagazou
長いけど元記事面白い 部門より
スラドでも藤井聡太二冠が自作PCでRyzen Threadripper 3990Xを導入したことは話題になったが、その藤井二冠の使用している将棋ソフト「水匠」の開発者である杉村氏と、その水匠のベースとなった「やねうら王」の開発者である磯崎氏の対談が行われたそうだ(ニコニコニュースORIGINAL)。

磯崎氏によると、コンピュータ将棋の世界では思考時間を2倍にすると、段位に相当するレーティングが上がり、一段強い指し手になるのだという。このため、高速かつコア数が多いCPUを持ってくれば、研究の速度がアップすることになる。ベースとなっているやねうら王はThreadripperにすでに最適化されており、その派生である水匠も同様であるとしている。現状では将棋ソフトを動かす上では、Threadripper 3990Xが最強であり、藤井二冠を上回る環境を手に入れるのは困難だとしている。

ただし、将棋ソフトにはGPUで処理するタイプのものも存在するという。dlshogiやAobaZeroといったもので、現状ではやねうら王の強さには及ばないものの、これらのGPU系ソフトがCPUで処理するやねうら王や水匠に匹敵する性能になれば、藤井二冠の環境を上回ることができるかもしれないとしている。

またGPUを使用した将棋ソフトは、大局観が優れているというCPUを使用したものと異なる特性があるという。このほかにも、手の内がバレやすくなるから使っているプロは使用している将棋ソフト名はあまり表に出さないといったかなり興味深い内容が語られている。また、チェスのように、開発者がプロ棋士とタッグを組んでソフトを発展させたいといった話もでている。
14967341 story
プログラミング

プログラミング言語とエネルギー効率 76

ストーリー by nagazou
条件次第 部門より
ポルトガルの大学に所属する6人の研究者が「プログラミング言語全体のエネルギー効率[PDF]」というタイトルの論文を発表したそうだ。研究者たちは、27種類の異なる言語で書かれた10個のプログラミング実行し、実行時の速度と消費電力、そしてメモリ使用量を計測した。テスト用の10個のプログラムには"Computer Language Benchmarks Gameが使用されたという(The New Stackブログ: 最も電力を使わないプログラミング言語は?)。

この論文では、より高速なプログラムは総合的なエネルギー消費は少ないという考えは見直されるべきだと指摘している。プログラム実行中は電力が一定の割合で消費されているわけではないためだという。例えば、実験で使われたベンチマークテストの中の一つでは、Chapel言語で記述されたものは、Pascalで記述された同等のプログラムより55%実行時間は短縮されたが、エネルギー使用量はPascalで書かれたものの方が10%少なかった。

確かにエネルギー効率が最も高い上位5つの言語は、エネルギー効率は実行時間の短い順で高い。しかし、これを24言語にまで広げた場合は、OCaml、Haskel、Racket、Pythonに関しては、エネルギー効率と実行時間の短さが一致するものの、ほかの言語は条件によっては全く一致しなかったとしている。
14350441 story
プログラミング

日本語プログラミング言語「なでしこ」が中学校の教科書に載る 102

ストーリー by nagazou
かな入力感があるとだけ言っておきます 部門より
あるAnonymous Coward 曰く、

日本語プログラミング言語の「なでしこ」が、教育図書社が発行する来年度の中学校の技術・家庭の教科書に採用されたらしい(プレスリリース, 窓の杜の記事)。

「なでしこ」は正式リリースが2005年なので、今年で15周年になる。元々はDelphiで開発されたインタプリタ言語であったが、最新のバージョン3ではJavaScriptにトランスパイルされて動く、いわゆるAltJS的な言語となっているとの事。

日本語プログラミング言語に対しては昔から賛否あるが、中学生に教育する上ではやりやすいのだろうか?生徒の感想が気になるところである。

情報元へのリンク

14321528 story
ゲーム

龍が如く7、ほぼ全自動のバグ取りシステムを構築 57

ストーリー by nagazou
すごい 部門より
セガの「龍が如く7 光と闇の行方」では、全自動バグ取りシステムなるものが導入されたらしい(ファミ通.com)。

手動での操作を記録し、自動テスト用のファイルを作成する「どこでもリプレイシステム」、バグのような挙動が発見されると、ログやスクリーンショット、動画などをまとめて自動送信するバグ報告の自動化。バグの再現性を確認する自動テストプレイ機能、さらに解決処理作業のの優先順位を付けるバグ選別の自動化などの機能も備わっているとのこと。

この全自動バグ取りシステムの導入により、バグ1件あたりの作業時間が以前のシリーズと比較すると軽減されたとしている。
14260101 story
プログラミング

大塚製薬CalorieMate to Programmerが話題に 57

ストーリー by nagazou
健康に気をつかうプログラマーというパワーワード 部門より
大塚製薬のカロリーメイト リキッドのプロモーションサイト「CalorieMate to Programmer」が、凝った作りだとして話題になっているようだ。このプロモーションサイトには、UNIX風のコマンド入力で操作することができるCUIモードも用意されている。はてなのコメントによれば、こんな感じらしい。

crexist 試しにCUIに which を打ち込んだら `\Which flavors do you like?/` って出るし、touch を打ち込んだらカロリーメイトに触るAAが出てきて笑った。ちなみにきちんとtabで補完されて良いですね(osx chrome)

なお監修はRubyの生みの親でもある、まつもとゆきひろ氏が行っているとのこと。リリースに記載された本人のコメントによれば「プログラマーならニヤリとするコードになっています。Enjoy!」だそうだ(PR Times)。

14253589 story
プログラミング

「じゃんけんゲーム」のロジックに対する意見の相違で兄弟げんか 246

ストーリー by nagazou
こうしていくさが始まる 部門より
はてなに子供二人がプログラムの方針で対立したという話が掲載され話題になってるらしい(はてな匿名ダイアリー[B! 増田] )。原因は「じゃんけんゲーム」の実装方針であるらしい。ゲーム内容は、画面でグー・チョキ・パーのいずれかを選びボタンを押すと、相手となるCPU側の手と勝敗が表示されるシンプルなもの。喧嘩の原因となった方針の違いを元記事を引用すると、

次男はまずCPUの「手」を乱数で決定し、画面に入力された「手」と比較して勝敗(と引き分け)を決める、素直な処理だった

長男はそれに飽きたのか、まずは乱数で「勝ち」「負け」「引き分け」を乱数で最初に決めてしまい、その後で結果に応じたCPUの「手」を決定するというロジックだった

そうだ。次男は長男の設定したロジックに納得がいかなかったらしく、「兄ちゃんのはじゃんけんで勝負してない」「勝ち負けを最初に決めてしまうなら意味がない」と批判、対して長男は「結果は同じなんだからこれで問題ない」と突っぱね、収拾が付かなくなったようだ。どちらが正しいかの議論は元ネタ自体のコメント欄にも飛び火している模様。

14252976 story
IBM

イラン支援のハッカー組織、新人育成用動画を流出させる。驚くほどの手際の良さが判明 8

ストーリー by nagazou
隠し動画流出 部門より
イランのハッキンググループが、自分で撮影していた動画を流出させてしまったようだ。どこのカップルだという感じだが、この動画は新人テロリストを育成するためのトレーニング用として撮影されたものである模様。流出させたハッキンググループは「ITG18」で、「APT35」や「Charming Kitten」「Phosphorus」とも呼ばれるグループであるようだ(WIREDZDNet)。

動画はIBM X-Forceの研究者らがオンライン上のサーバーに置いてあったものを誤って公開しているところを見つけたものだそうだ。内容としては、ハッキングしたGmailやYahoo!メールのアカウント情報への対処方法などが実演されていたという。

WIREDのUS版がIBMに見せてもらった動画では、ハッカーが不正アクセスしたGmailアカウントから、ものの約4分ほどで情報を盗み出したところが映し出されていたそうだ。ちなみにYahoo!アカウントの情報は3分ほどで盗み出した模様。
14244505 story
プログラミング

Apple、包括的用語使用の義務付けを含むスタイルガイド更新 83

ストーリー by headless
更新 部門より
Appleは16日、ドキュメントやユーザーインターフェイスなどで使用する用語のガイドライン「Apple Style Guide」を更新した(Appleの告知The Registerの記事)。

更新版には「blacklist/whitelist」「master/slave」といった非包括的な用語の使用を禁止する項目が追加されている。blacklist/whitelistについては使用が禁じられ、文脈に応じて適切な代替用語を選ぶよう求めている。代替用語の例としては「deny list/allow list」「unapproved list/approved list」が挙げられている。

master/slaveに関しては、2つのデバイスやプロセスの関係を説明するために使用することが禁じられる。こちらも文脈に応じて適切な代替用語を選ぶよう求めており、代替として「primary/secondary」「primary/replica」「main/secondary」「host/client」といった例が挙げられている。

いずれの場合も、非包括的用語が変更不可能なコード内で使われていて、それに関するドキュメントを作成する場合は例外として認められる。ただし、例外となるのはユーザーがコードの通りに入力する必要がある部分のみで、その説明には代替用語を使用する必要がある。

包括的用語といえるかどうか微妙だが、「Asia Pacific」という用語を使用する場合に「Japan」を分けて列挙することを禁じる項目も追加されている。つまり、Asia PacificにはJapanが含まれているため、「Asia Pacific and Japan」という表記はガイドラインに違反するというわけだ。

blacklist/whitelistからdeny list/allow listへの置き換えはWWDC20で公開したベータ版ソフトウェアや開発者向けドキュメントで導入されており、Xcode 12のデフォルトSCMブランチ名はmasterからmainに置き換えられているという。今後、排他的用語を使用しているAPIに関しても、内部のコードベースで代替を導入した段階で非推奨にしていくとのこと。なお、Appleは以前からAllowList/DenyListという用語を一部で使用していた。
14237810 story
プログラミング

Linuxカーネルのコーディング規約、包括的用語使用のガイドラインが追加 132

ストーリー by headless
包括 部門より
Linuxカーネルのコーディング規約に包括的用語使用のガイドラインが正式に追加された(Phoronixの記事coding-style.rstDiff)。

このガイドラインは「master / slave (またはslave単体)」および「blacklist / whitelist」という用語の使用に関するもので、シンボル名やドキュメンテーションでこれらの用語を新たに追加しないよう求めている。ユーザースペースABI/APIの維持に必要な場合や、これらの用語の使用を義務付けている(2020年時点で)既存のハードウェア仕様やプロトコル仕様に関するコードを更新する場合は除外される。

「master / slave」を置き換える用語として推奨されているのは、「{primary,main} / {secondary,replica,subordinate}」「{initiator,requester} / {target,responder}」など。「director / performer」のような用語も挙げられている。「blacklist / whitelist」を置き換える用語としては「denylist / allowlist」「blocklist / passlist」が推奨されている。
14228963 story
ビジネス

Microsoft、コロナ失業者支援としてデジタル技能学習コンテンツを無償提供へ 2

ストーリー by nagazou
求む人材 部門より
あるAnonymous Coward 曰く、

Microsoftが、新型コロナによる失業者のフォローも兼ねて、デジタルトレーニングや能力認定プログラムを安価に提供していくそうだ。無料のデジタルトレーニングや安価な能力認定プログラムを提供することにより、需要のある職に就くのに必要なスキルの育成を支援するとのこと。手始めに「LinkedIn Learning」「Microsoft Learn」「GitHub Learning Lab」で学習コンテンツを無料提供する模様。

米国ではこの2か月で4200万人以上が失業しているとされる。Microsoftでプレジデントを務めるBrad Smith氏は「経済の回復を安全かつ確実に進めるために欠かせない重要なステップの1つは、新しい仕事に就くために必要なデジタルスキルを学ぶ機会を拡大することだ」と話しているそうだ(ZDNetCNET)。

14223112 story
プログラミング

Perl 7が発表される。実質的にはPerl 5系のリネーム 43

ストーリー by hylom
現代における素人にはオススメできない言語 部門より

Perl Foundationが運営するPerlの情報サイトPerl.comで、Perlの時期メジャーバージョンである「Perl 7」が発表された

Perl 5系の最新安定版は5.32系だが、これをベースにいくつかのデフォルト設定を変更したものがPerl 7としての最初のリリースになる予定。

すでにPerl 5系に続くPerl 6系は2016年にリリース済みだが、その後Perl 6系は「Raku」という名称に名前が変更されている。Perl 5系とPerl 6系とでは互換性はなく、Perl 6が「Raku」となったのはそのことも理由の1つとなっている。

今回のPerl 7はPerl 5系の後継という位置付けで、Perl 5系との互換性が保証されている。いくつかのデフォルト仕様は変更されるが、プラグマで指定することで旧バージョンと同様の挙動にすることも可能だ。

typodupeerror

ナニゲにアレゲなのは、ナニゲなアレゲ -- アレゲ研究家

読み込み中...