パスワードを忘れた? アカウント作成
11983625 story
プログラミング

コードを特に良いものとするのは何? 98

ストーリー by headless
品質 部門より
本家/.「Ask Slashdot: What Makes Some Code Particularly Good?」より

何がソースコードを特に「良い」ものとするのかについて開発者が話すとき、一握りの特徴が繰り返し言及される傾向がある(動作する、読みやすい、テストできる)。皆さんなら何をリストに加えるだろうか。

元記事のITworldでは良質なコードの特徴として、以下の8つを挙げている。

  1. 正しく動作すること
  2. 読みやすいこと
  3. テストできること
  4. メンテナンスしやすいこと
  5. きれいに整形されていること
  6. 変更しやすいこと
  7. シンプルであること
  8. 効率が良いこと
11982953 story
プログラミング

Dart VMはGoogle Chromeに統合されない 20

ストーリー by headless
方針 部門より
あるAnonymous Coward 曰く、

3月26日にバージョン1.9がリリースされた Dart言語だが、前日の25日にDartプロジェクトはDart VMをChromeに統合しないことを発表している( Dart News & Updatesの記事マイナビニュースの記事TechCrunch Japanの記事)。

DartはJavaScriptに替わるWebプログラミング言語として開発された。いずれはChromeにDart VMが搭載され、他のブラウザもそれに追従すると期待されていたが、方針の転換が行われたようだ。今後Dartは、JavaScriptへのトランスパイル言語の一つとしての活躍が期待される。

Dartを使用する開発者のフィードバックには、JavaScriptとのよりよい統合を求める意見や、開発したアプリをすべてのモダンブラウザで容易にデバッグや最適化を実行できるようにしてほしいとの要望がみられたという。そのため、Google ChromeだけでなくユーザーとWebにとって最も良い方針として、DartのJavaScriptへのコンパイルに注力することを決めたとのことだ。ChromeにDart VMは搭載されないが、開発者向けツールやサーバー、モバイルアプリ向けのDart VMの最適化や改善は引き続き行っていくとしている。

11982168 story
プログラミング

メモリー上で処理するよりもディスクに直接書き込む方が高速? 86

ストーリー by headless
効率 部門より
ソフトウェア開発者の間では一般的に、ディスクアクセスを避けてできるだけメモリー上で処理することが実行時間の短縮につながると考えられているが、これに逆行する研究結果をカナダ・カルガリー大学とブリティッシュコロンビア大学の研究チームが発表した(論文: PDFITworldの記事本家/.)。

実験はJavaおよびPythonを使い、WindowsおよびLinux上で1バイト、10バイト、1,000バイトの文字列をそれぞれ100万バイトになるまで繰り返し結合し、結果をディスクに書き込むというもの。比較対象としては同じく1バイト、10バイト、1,000バイトの文字列を結合せずに計100万バイトになるまで直接ディスクに書き込んでいる。また、同じコードにより100万バイトの文字列を処理する実験も行っている。

その結果、Javaで1バイトの文字列を結合処理してからディスクに書き込んだ場合、ディスクへの直接書き込みと比べて約9,000倍の時間がかかったという。PythonではJavaほどの速度低下は見られなかったものの、直接書き込みの方がメモリー上での処理よりも数百倍高速だったとのこと。また、Linux上で実行したPythonのコードでは、元の文字列に新しい文字列を結合する方が新しい文字列に元の文字列を結合するよりも高速だったとしている。

論文ではこのような結果になった原因として、OSによるバッファリングがあるためにディスクへ直接書き込んでも速度がそれほど低下しないと指摘。また、OSのメモリー管理がメモリー上での処理を低下させる原因になる可能性もあるとし、開発者はOSやライブラリーなどについてより多くの知識を持つことでパフォーマンスを改善できるなどと結論付けている。ただし、論文の最後に掲載されているコードを見ればわかるように、文字列の結合には「+=」または「+」を使用しており、効率の良い処理を選択しているとはいえない。論文には「JavaではStringBuilderやStringBufferといったミュータブルなデータ型を使用すれば結果が大幅に改善する」といった記述もある。本家/.では結論に合わせた結果が出るように実験したのではないかとの指摘もみられるが、皆さんはどう思われるだろうか。
11982076 story
PHP

次期PHPでは、引数や返り値のスカラー型宣言が可能に 33

ストーリー by headless
宣言 部門より
あるAnonymous Coward 曰く、

やや旧聞となるが、PHPコミュニティは数年にわたる議論と幾度もの投票の果てに、PHPの次期バージョン(PHP7)で関数の引数や返り値でintやstringなどのスカラー型の宣言を可能にする提案を3月17日に可決したという(PHP RFC: Scalar Type Declarations東北ギークの記事)。

今回導入が決定された機能は「スカラー型宣言(Scalar Type Declarations)」と呼ばれるもので、これまでオブジェクトや配列でしか使用できなかった型宣言(タイプヒンティング)を拡張し、新たにint, float, string, boolのスカラー型も指定できるようにするもの。PHP7では元々返り値の型宣言の導入も予定されていたため、スカラー型宣言は引数と返り値の両方で使用可能となる。

興味深いことに、スカラー型宣言には暗黙の型変換を行うデフォルトの「弱い型検査」の他、ファイルの先頭でモードを宣言する「厳密な型検査」が搭載されるという。これは元々コミュニティに弱い型検査を求める人々と厳密な型検査を求める人々がおり、RFCが2010年頃から何度も提出されつつも双方が対立して可決に必要な3分の2に達しなかったことから、共倒れを避けるため両方の仕様が採用されたためとのこと。

11981558 story
ソフトウェア

開発者とAppleへの恐怖 72

ストーリー by headless
恐怖 部門より
本家/.「Developers and the Fear of Apple」より

UIデザイナーのEli Schiff氏が、ソフトウェア開発コミュニティーでのAppleに対する「恐怖の風潮」について記事を投稿している。記事では開発者が気軽に批判した発言が記録され、その発言を撤回する結果になることが多い点や、公表された適度な批判が追従や宣伝に終わることが多い点などを指摘する。

さらに、利益を生むためにはAppleの閉ざされた庭に依存していられないことに業界が気付いている点を指摘。不透明なレビュープロセスや価格競争、App Storeでの適切なアプリ紹介をAppleが拒むことにより、より大きな組織やベンチャー企業に個人のアプリ開発者を追いやっているという。AppleはAndroidで先にアプリをリリースした開発者に対する連絡を絶つことでも知られている。また、「恐怖の風潮」はジャーナリストにも影響する。否定的な記事を書いたジャーナリストはAppleから拒否されるだけではなく、Appleファンや他のジャーナリストからアンチAppleとして扱われるようになるとのことだ。

11978933 story
インターネット

Panasonic、IoT関連ソフトウェアや特許などの無償提供を表明 4

ストーリー by hylom
普及へ向けて先手 部門より
headless 曰く、

Panasonicは23日、IoT(Internet of Things: モノのインターネット)のソフトウェアやサービスの開発を促進するため、同社のソフトウェアや特許、製品エコシステムから得られた経験を無償で提供することをEmbedded Linux Conferenceで表明した(プレスリリースeWeekZDNet@IT MONOist)。

Panasonicではホームモニタリングシステムなどの製品で使用しているデバイスとクラウドを連携させるソフトウェアをオープンソース化し、同社が今月設立した非営利団体OpenDOF Projectで提供する。相互運用性やセキュリティーの向上により、同社の動きが企業や大学、個人によるIoTソリューションとインターネットに接続したデバイスの開発・導入を加速させることを期待しているという。また、オープンソースのIoT推進団体、AllSeen Allianceへの知的財産面での貢献も増やしていく計画とのことだ。

11973172 story
データベース

MySQL/MariaDBではなくPostgreSQLを選ぶ理由 56

ストーリー by headless
比較 部門より
本家/.「Why I Choose PostgreSQL Over MySQL/MariaDB

過去10年、開発者や技術者はMySQLとPostgreSQLを比較し、後者が技術的には優れていると考える人が多かった。PostgreSQLの支持者は、そのANSI標準サポートやACID準拠がMySQLのスピードに勝ると主張する。しかし、すべてのLinux Webホスティングパッケージに含まれることから、非常に多くのWeb開発者がMySQLを使い続けている。Diceの記事では、開発者のDavid Bolton氏がMySQL/MariaDB 5.7.6(2015年3月9日、コミュニティーにリリース)とPostgreSQL 9.4.1を比較し、サブクエリやJSONサポート、ライセンス、データの完全性といった点で現在もPostgreSQLの優位性は変わらないとみる。10年以上にわたって両方のデータベースを使用しているというBolton氏は、MySQLにも改善はみられるものの、PostgreSQLを支持するとの結論に達している。

11971664 story
オープンソース

質の低い貢献者をオープンソースコミュニティーから排除? 71

ストーリー by headless
多様 部門より
オープンソースコミュニティーを開かれた友好的で自由なものに育て、多様なスキルを持つ人々に集まってほしいと考える一方で、メンバーの質も重要だ。質の低い貢献者は雑音を生むだけで、優れた貢献者の足を引っ張ることになる。元Ubuntuのコミュニティーマネージャーで、現在はXPRIZE Foundationのコミュニティー担当シニアディレクターを務めるJono Bacon氏は、このように主張する(Opensource.comの記事本家/.)。

オープンソースコミュニティーに参加する人々は様々だが、「誰でも歓迎」という言葉を聞き、自分にできる最大の貢献は意見を述べることだと考える人もいるようだ。このような人の中には、自分の意見が聞き入れられて当然と考える人もおり、意に沿わない決定をブログで批判したりもする。このような行動はコミュニティー内の争いの原因となることもある。批判すること自体は問題ではないが、非建設的な批判をすることが問題だという。

この問題についてテクノロジー系の大企業に対する事業開発を手掛ける人に話したところ、「そんなことをする顧客がいたら、首にする」と言われたそうだ。しかし、オープンソースコミュニティーでは騒がしく、非建設的で非生産的なメンバーがいても自動的に排除することはできないだろうとBacon氏は考える。これは飲まざるを得ない苦い薬であるからだという。記事では結論が出ていないが、皆さんはどのように思われるだろうか。
11970991 story
プログラミング

MSBuildがオープンソース化される 43

ストーリー by hylom
意外なものが 部門より
insiderman 曰く、

Visual Studioなどで使われているMS製Makeツール「MSBuild」がオープンソース化された。すでにGitHub上にてソースコードが公開されている。現時点ではWindowsのみをサポートし、ビルドにはVisual Studio 2015 Previewが必要とのこと。ライセンスはMITライセンスなので、誰かがビルドして再配布してくれると良いのだが(汗)。

.NET Coreのオープンソース化による動きの1つのようで、告知が行われている.NET Framework Blogによると、LinuxやMacのサポートも行われる予定だという。

Windowsでのmakeツールというと、古い人間的にはnmakeのほうが親しみがあったりするわけだが、XMLベースのMSBuildは手書きで設定ファイルを書くのが大変そうというイメージでVisual Studio経由でしか使ったことがない。今後はAntやMavenのように、積極的にオープンソースソフトウェアで使われるようになるのだろうか?

11964310 story
Windows

Microsoft、Windows 10に対する100万件目のフィードバックを受け取る 47

ストーリー by hylom
期待と不安 部門より
headless 曰く、

本家Slashdot「Microsoft Has Received 1 Million Pieces of Feedback For Windows 10」より。

Windows 10 Technical Previewの「Windows Feedback」アプリによる100万件目のフィードバックをMicrosoftが受け取ったことを、Windows Insider Programの責任者 Gabriel Aul氏がTwitterで報告した。

このアプリはWindows Insider Program参加者がWindowsに対する感想や問題点、改善してほしい点などをMicrosoftに送信するためのもので、オペレーティングシステムの開発で非常に重要な役割を果たす。アプリはデスクトップ版およびモバイル版(Windows 10 Technical Preview for Phone)の両方で利用可能で、スタートメニューから起動できる。

ここ最近のMicrosoftは消費者のフィードバックを真剣に聞く努力をするようになり、新機能に関して議論する道を開いているように思われる。皆さんはこのアプリを使ってフィードバックを送信したことがあるだろうか。

11963039 story
プログラミング

「時の翁」が握るNTPの運命 87

ストーリー by headless
tick-tock 部門より
ネットワークに接続されたコンピューターの時刻を同期させるNetwork Time Protocol(NTP)が4月で30周年を迎える。NTPは現在使用されているインターネットプロトコルの中で最も古いもののひとつで重要度も高いが、その一方で重大な岐路に立たされているとのこと(InformationWeekの記事本家/.)。

NTPの重要性は増しているにも関わらず、インフラストラクチャーに深く埋もれているために注目度は低下している。これに伴ってボランティア貢献者は減少しており、資金援助でも確実なものはないそうだ。そのため、資金面・運営面ともに大半がプロジェクトマネージャーのHarlan Stenn氏に依存している状態だという。この3年半ほど、Stenn氏はメールへの返信やパッチの受付、複数のOSで動作させるためのパッチのリライト、新規リリースの準備、NTPメーリングリストの管理など、週に100時間以上の作業を行っている。Stenn氏は自身のコンサルティング会社で不定期に仕事をしているが、4月までに現在よりも多くの資金援助が得られなければ、継続的な仕事を探す必要があるとしている。

Stenn氏を「時の翁」に例えるCloud Foundry FoundationのCEO、Sam Ramji氏によれば、Stenn氏はかつかつの状態でNTPプロジェクトの運営を続けているという。しかし、開発資金の枯渇直前に資金確保に成功したGnuPGの開発者Werner Koch氏のように、苦境にあえぐオープンソース開発者はStenn氏だけではないとのことだ。
11961872 story
プログラミング

Linus TorvaldsのC++批判は正しかったのか 130

ストーリー by headless
主張 部門より
本家/.「Was Linus Torvalds Right About C++ Being So Wrong?」より

最も有名なC++への批判は、おそらく2007年のLinus Torvalds氏の発言だろう。「C++はひどい言語だ。」彼はこう書き始める。「これをさらにひどいものにしているのは、水準以下のプログラマーが数多く使用していることで、またさらに簡単に完全なゴミを作り出せるようになっている点だ。」と続く。C++を嫌うのは彼だけではない。STLやBoostを潜在的に不安定で非効率にした原因がC++だと考える開発者も多い。しかし、C++の需要がなくなることはない。Diceの記事では、C++はそれほど嫌悪するべきものではないとJeff Cogswell氏が主張している。「実際には一度しか使用しないのにも関わらず、複数の継承を重ねて再利用可能なクラスを作成するといった、過剰な設計をこれまでに何度も目にしてきている。」と、Cogswell氏は語る。「しかしこれは例外であり、標準ではないと主張したい。適切に使用すれば、一般的なプログラミングや、C++のより高度な機能を使用したプログラミングで、大きな利益が得られる。」とのこと。Linusの発言は行き過ぎだったのだろうか。

11960877 story
Google

Google Code、2016年1月に閉鎖 19

ストーリー by hylom
そうなるとは思っていましたが 部門より
あるAnonymous Coward 曰く、

GoogleによるソースコードレポジトリホスティングサービスGoogle Codeが、2016年1月25日をもって閉鎖されるとのこと(Googleからの告知ITmedia)。

これに伴い、3月12日をもって新規プロジェクトの作成はできなくなる。また、8月24日以降Google Codeへの書き込みはできなくなるとのこと。閉鎖後も2016年中はソースコードをtar形式でダウンロードすることは可能だという。

Google Code上のコンテンツをGitHubやBitBucket、SourceForge.netに移行するためのツールやドキュメントも公開された。また、SourceForge.netはGoogle Code Importerの提供も行っている。

11957736 story
プログラミング

「プログラミング時専用BGM」を収録したアルバムがリリースされる 35

ストーリー by hylom
難しいことを考える人もいるもんだ 部門より
headless 曰く、

Slashdot「Musician Releases Album of Music To Code By」より。

MIDI楽器を使用してプログラムコードを入力する試みが以前話題となったが、今度はプロのミュージシャンでプログラマーのCarl Franklin氏が、コードを書く時に特化したBGMのアルバムをリリースした。Franklin氏は「最も難しかったのは、本当の音楽を作ることに私の本能を戻すことだった。」と、ITworldのPhil Johnson氏に語る。「この音楽はバックグラウンドに溶け込む必要がある。リスナーの気が散るようなものであってはならないが、退屈なようなものであってもならない。ほとんどのミュージシャンが気が狂いそうになると考えられるようなことが、特に難しかったところだ。」

このアルバム「Music to Code By」は、Kickstarterで資金を調達して制作されたもので、25分のインストゥルメンタル曲が3曲収録されている。価格はCD版が20ドル、MP3版が18ドル。皆さんがコードを書くときには、何かBGMをかけているだろうか。かけている場合はどのような音楽だろう。Webサイトでは試聴が可能なので、ご感想もお聞かせいただきたい。

11956640 story
ゲーム

NVIDIA、PhysX SDKのソースコードを公開 2

ストーリー by hylom
GitHubってそういう使い方もできるのか 部門より
insiderman 曰く、

NVIDIAが物理演算ライブラリ「PhysX」のSDKのソースコードを公開したとのこと。Unreal Engine 4の無料化、ソースコード公開に対応したものらしい(Phoronix)。

なお、ソースコードはGitHub上で公開されるそうだが(NVIDIAのGitHubアカウント)、ライセンスはフリーソフトウェアライセンスに適合するものではなく、NVIDIAの開発者向けサイトにてEULAに同意した上でGitHubアカウントを登録することで、GitHub上の該当のリポジトリへのアクセス権が付与される模様(NVIDIAの開発者向けサイト上の解説ページ)。

typodupeerror

アレゲはアレゲを呼ぶ -- ある傍観者

読み込み中...