タグ

atmarkITと開発に関するmohnoのブックマーク (24)

  • 「ソフトウェアはメモリ安全でなければならない」との声明を発表、米ホワイトハウス

    米ホワイトハウス国家サイバー局長室(The White House Office of the National Cyber Director:ONCD)は、2024年2月26日(米国時間)、サイバー空間における攻撃対象領域(アタックサーフェス)を積極的に削減するよう技術コミュニティーに呼びかける報告書を発表した。 ONCDは、IT企業がメモリ安全なプログラミング言語を採用することで、あらゆる種類の脆弱(ぜいじゃく)性がデジタルエコシステムに侵入するのを防ぐことができると述べている。ONCDはまた、サイバーセキュリティの品質を測定するより優れた診断の開発を可能にするために、ソフトウェアの測定可能性の問題に取り組むことを奨励している。 関連記事 Google、「メモリ安全性」に関する見解と対策をまとめたホワイトペーパーを公開 Googleは、「セキュアバイデザイン:メモリ安全性に関するGoo

    「ソフトウェアはメモリ安全でなければならない」との声明を発表、米ホワイトハウス
    mohno
    mohno 2024/03/19
    「メモリの安全性を保つ特性を欠くプログラミング言語として「C」「C++」を挙げた」「「Rust」などのメモリ安全性の高いプログラミング言語の使用を推奨」/深く考察した上で言っているのか、短絡的思考なのか分からん。
  • C++からRustに移行して幸せになる人、そうならない人 その違いは?

    C++Rustが登場する前から成熟度の高い言語だった。開発者はC++からRustに切り替える必要があるのだろうか。必ずしもそうとは限らない。C++Rustの品質、両言語の相違点と類似点を調べて、どちらのプログラミング言語を選ぶかを決めたい。 C++Rustが登場する前から成熟度の高い言語だった。開発者はC++からRustに切り替える必要があるのだろうか。必ずしもそうとは限らない。 新たなプロジェクトに携わるプログラマーは、プログラミング言語の選択肢が不足することはない。プログラミング言語「C++」と「Rust」は、 ブラウザベースのソフトウェアからビデオゲームに至るまで、さまざまなプロジェクトに適しており、それぞれに利点がある。 C++は効率的で信頼性の高いプログラミング言語だ。信頼性、パフォーマンス、スケーラビリティの高さから開発者はC++を選ぶ。C++の標準テンプレートライブラリ

    C++からRustに移行して幸せになる人、そうならない人 その違いは?
    mohno
    mohno 2023/10/25
    「幸せになる人、そうならない人 その違いは?」←違い、これで分かる?/今のC++は変わり過ぎてついていけないというか、そこまでやるなら他の言語を使うよ、って感じだけど。
  • プログラミング言語の人気ランキング「TIOBEインデックス」で「C」言語が5年ぶりに首位

    プログラミング言語の人気ランキング「TIOBEインデックス」で「C」言語が5年ぶりに首位:新型コロナウイルスの意外な影響か TIOBE Softwareが発表した2020年5月の「TIOBEインデックス」では、「C」言語が2015年以来5年ぶりに首位を占めた。TIOBEインデックスは、プログラミング言語の人気を示すランキングで、毎月更新されている。 ソフトウェア品質の評価と追跡を手掛けるTIOBE Softwareが発表した2020年5月の「TIOBEプログラミングコミュニティーインデックス」(通称「TIOBEインデックス」)では、「C」言語が2015年以来5年ぶりに首位を占めた。TIOBEインデックスは、プログラミング言語の人気を示すランキングで、同社が毎月更新している。 TIOBE Softwareのポール・ジャンセンCEOによると、Cは4月も首位の「Java」にわずかな差で迫っていた

    プログラミング言語の人気ランキング「TIOBEインデックス」で「C」言語が5年ぶりに首位
    mohno
    mohno 2020/06/16
    「TIOBE Softwareが発表した2020年5月の「TIOBEプログラミングコミュニティーインデックス」(通称「TIOBEインデックス」)では、「C」言語が2015年以来5年ぶりに首位」←C言語の楽な仕事とか転がってないかな(←オイ)
  • 実装言語を「Go」から「Rust」に変更、ゲーマー向けチャットアプリ「Discord」の課題とは

    ゲーマー向けの無料音声テキストチャットアプリケーション「Discord」を開発、提供するDiscordは2020年2月5日(米国時間)、アプリケーションを支える基盤サービスの一つである「Read States」をRust言語で再実装し、その結果サービスのパフォーマンスが大幅に向上したと公式ブログで明らかにした。 Read StatesサービスはこれまでGo言語で実装されていた。それにもかかわらず、なぜRead StatesをRustで再実装しようとしたのか、どのように再実装したのか、再実装によってどのようにパフォーマンスが向上したかを解説した。 Rustで再実装した背景とは Read Statesサービスの目的は、Discordユーザーがどのチャンネルのどのメッセージを読んだのかを追跡することだ。つまり、ユーザーがDiscordに接続したり、メッセージを送信したり、メッセージを読んだりする

    実装言語を「Go」から「Rust」に変更、ゲーマー向けチャットアプリ「Discord」の課題とは
    mohno
    mohno 2020/02/10
    メモリ管理は、どのようなシナリオでメモリが使われるかで変わるからなあ。汎用かつ高速にするのが大変で、Cのライブラリでもすごく複雑な実装になってると聞いたことがある。
  • Facebookが社内の標準開発環境を変更、「Visual Studio Code」のリモート開発拡張も強化

    Facebookは2019年11月19日(米国時間)、Microsoftのオープンソースのクロスプラットフォームエディタ「Visual Studio Code」(以下、VS Code)を自社のデフォルト開発環境として採用したことを発表した。同時に、自社エンジニアの大規模なリモート開発をサポートする取り組みの一環として、Microsoftが進めるVS Codeのリモート開発拡張の強化に協力していることも明らかにした。 自社開発の「Nuclide」はどうなるのか Facebookは、自社エンジニアに特定の開発環境の利用を義務付けていないものの、多くのエンジニアが自社開発の統合開発環境「Nuclide」を使ってきた。「vim」や「Emacs」を使っている開発者もいる。 Nuclideは、オープンソースエディタ「Atom」をベースにしたオープンソースパッケージセットとして開発がスタートした。Fac

    Facebookが社内の標準開発環境を変更、「Visual Studio Code」のリモート開発拡張も強化
    mohno
    mohno 2019/11/24
    「Facebook…Microsoftのオープンソースのクロスプラットフォームエディタ「Visual Studio Code」を自社のデフォルト開発環境として採用」「VS Codeのリモート開発拡張の強化に協力」「Facebookが特定の開発言語を優先していない」
  • Microsoft、プログラミング言語「TypeScript 3.7」を公開

    Microsoftは2019年11月5日(米国時間)、オープンソースのプログラミング言語の最新版「TypeScript 3.7」を公開した。 TypeScriptは、静的型付けができる言語で、JavaScriptのスーパーセット。ECMA規格に従った最新のJavaScriptの機能を、古いWebブラウザやランタイムが扱えるようにコンパイルすることもできる。 TypeScript 3.7は、NuGetを使うか、次のコマンドラインのように、npmを使ってインストールできる。 TypeScript 3.7は「Visual Studio 2019」「Visual Studio 2017」の他、「Visual Studio Code」と「Sublime Text」でも利用できる。TypeScript 3.7の主な特徴は次の通り。 セミコロンフォーマッターオプションを追加 TypeScriptのビルト

    Microsoft、プログラミング言語「TypeScript 3.7」を公開
    mohno
    mohno 2019/11/11
    「最新版「TypeScript 3.7」を公開した。オプショナルチェイニングの実装やnullish coalescing演算子の導入といった改善を加えた」/これもまた遠いところに……
  • 国内IT人材が不足、生産性向上で課題を解決する「ローコード開発」とは

    今回、同社の日法人であるOutSystemsジャパンの代表取締役社長であるアーノルド・コンセンコ氏と、OutSystems Platformのユーザーであり、販売パートナーでもある、SB C&S ICT事業部 販売推進技術統括部 統括部長の荒川直樹氏に、日企業における「開発生産性の向上」と「OutSystems Platform」の可能性について聞いた。 ――お二人のこれまでの経歴と、現在の主な業務をご紹介ください。 コンセンコ氏 私は、29年ほど前に米国から留学生として日に来ました。それ以来、ずっと日およびアジア地域に駐在し、幾つもの会社を立ち上げています。その中には、ビジネス向けのサービス開発企業やエンタープライズ系ソフトウェア企業なども含まれていました。 OutSystemsに入社したのは2016年のことです。日法人は、2人体制でスタートし、現在では25人に増え、製

    国内IT人材が不足、生産性向上で課題を解決する「ローコード開発」とは
    mohno
    mohno 2019/09/18
    超高速開発を思い出した。開発の“節約”って、車輪の再発明をしないようにすることだから、必ずしもビジュアルにできるかどうかではないと思うけどね。
  • 「Rust」言語はCよりも遅いのか、研究者がベンチマーク結果を解説

    「C」や「C++」に代わるシステムプログラミング言語として「Rust」が注目を集めている。メモリ安全性が高く、メモリ破壊バグといった脆弱(ぜいじゃく)性を作り込みにくいからだ(関連記事)。 ただし、システムプログラミング言語では、高い処理性能が必須条件であり、これがCやC++が使われ続けている理由となっている。Rustはどの程度「速い」のだろうか。 ドイツのミュンヘン工科大学で博士課程の学生であるポール・エメリク氏は2019年9月9日、Rustで作成したデバイスドライバの性能評価をGitHubで発表した。 同氏のグループはさまざまな言語で同じ機能を備えたデバイスドライバを記述し、性能を比較している。 何が性能低下を引き起こしているのか 性能評価用に作成したのは、Intelのイーサネットコントローラー向けのLinux用デバイスドライバだ(ixgbeタイプ)。 エメリク氏は解説の冒頭で研究に取

    「Rust」言語はCよりも遅いのか、研究者がベンチマーク結果を解説
    mohno
    mohno 2019/09/14
    「性能評価用に作成したのは、Intelのイーサネットコントローラー向けのLinux用デバイスドライバ」←たぶん、一面的ではあると思う。Cなんて処理系ごとの最適化でも違うし。Javaが遅いのは元々だと思うけど。
  • パッケージソフトだか何だか知りませんが、現行システムと同じの作ってくださいよ

    連載目次 IT訴訟事例を例にとり、トラブルの予防策と対処法を解説する連載。今回は「要件の範囲がい違ったことにより生じた紛争」を解説する。 ユーザーが望む機能がシステム開発の要件から抜け落ちたがために発生する紛争は、連載でこれまでにも何度か取り上げてきた。 IT紛争の類型は種々さまざまであり、過去の判例が全てそのまま適用できるわけではないが、裁判所が「たとえ要件としてユーザーから明示されていなくても、その機能が契約の目的を果たす上で、当然に必要な事柄であるとベンダーが認識し得る状態にあれば、ベンダーにはその機能を作り込む義務(債務)がある」と判断した例が幾つもある。 要件定義書よりも契約の目的の方が重いとする考え方だ。 今回取り上げる判例も、「ユーザーが必要と考える機能が、ベンダーの作成した要件定義書から抜け落ちており、これを作り込まなかった」というものだ。これまでと少し異なるのは、パ

    パッケージソフトだか何だか知りませんが、現行システムと同じの作ってくださいよ
    mohno
    mohno 2019/05/08
    「今と同じもの?いいですよ、今の仕様を全部屏風から出してください:-p」
  • COBOL、多分10年経っても今と変わらず生き残る:守銭奴エンジニアが考えていること:エンジニアライフ

    約20年前もCOBOLはもうじき無くなると言われていた IPAから基情報技術者試験からCOBOLが廃止され、Pythonが新しく追加することが発表されました。むしろCOBOLは生き残りすぎでしょ。 http://www.atmarkit.co.jp/ait/articles/1901/28/news038.html 私が新人の時に、初めて携わったプロジェクトCOBOLでした。何回かコラムでも話しています。その当時からCOBOLはもうじき無くなると言われていました。しかし現代でも普通に使われています。同じようなものにVBもあります。VB.netへの移行が求められていますが、まだまだ現役のものもあります。勝手な予想でむしろ外れてほしいのですが、10年後も今と変わらないと思います。 COBOLやVBが生き残る理由 ポジティブな事をいえば、まだまだCOBOLが求められているということです。VB

    COBOL、多分10年経っても今と変わらず生き残る:守銭奴エンジニアが考えていること:エンジニアライフ
    mohno
    mohno 2019/01/31
    .NETでないVBは結構なくなってると思うけどね。ランタイムはともかく、今のWindowsでは開発環境がサポートされない。まあ、古いWindowsも入手は可能だけれど。それよりFORTRAN。
  • 俺、コンサルタント。準委任だから品質には責任持ちません

    俺、コンサルタント。準委任だから品質には責任持ちません:「訴えてやる!」の前に読む IT訴訟 徹底解説(61)(1/3 ページ) コンサルティング会社が作った要件にヌケ漏れがあった。責任を取るのは、開発会社か、コンサルティング会社か、それともユーザー企業か?――IT訴訟事例を例にとり、システム開発にまつわるトラブルの予防と対策法を解説する人気連載。今回のテーマは「コンサルティングの義務」だ。 連載目次 謹んで新年のお祝いを申し上げます。 いよいよ平成最後の年となるが、この30年間、オンプレの汎用機システムがクラウドやスマホアプリに変わり、ウオーターフォールがアジャイルになっても、IT紛争の類型に限っては相変わらず要件定義やプロジェクト管理の問題が取り上げられる。それでも、連載などを参考に、毎年少しずつでもIT導入に関わるプロセスを改善させ、その成功率を少しでも高めていただきたい。そんなこ

    俺、コンサルタント。準委任だから品質には責任持ちません
    mohno
    mohno 2019/01/07
    「既存のシステムに具備され、新しいシステムでも特に不要と判断されていない機能を、要件定義書に記されていないことを理由にベンダーが実装しなかったために、システムが完成したと認められなかった判例がある」
  • Microsoft、手書きのUIスケッチをHTMLに変換する「Sketch2Code」を発表

    Microsoft、手書きのUIスケッチをHTMLに変換する「Sketch2Code」を発表:AIで手書きの図形と文字を認識 Microsoftは、手書きでスケッチしたUI画面をHTMLコードに自動変換するWebベースソリューション「Sketch2Code」を発表した。 Microsoftは2018年8月30日(米国時間)、ホワイトボードなどに手書きでスケッチしたユーザーインタフェース(UI)画面を、AI人工知能)を利用して、HTMLコードに変換するWebベースソリューション「Sketch2Code」を発表した。 Microsoftによれば、UIのデザインプロセスには無駄が多いという。通常は、まずアイデアレベルのスケッチをホワイトボードに描き、数人で検討してから写真に撮影し、HTMLコードを書き下す。これでは手間ばかりかかり、すぐにアイデアを形にできない。 画像認識技術AIを組み合わせ

    Microsoft、手書きのUIスケッチをHTMLに変換する「Sketch2Code」を発表
    mohno
    mohno 2018/09/05
    SketchFlow を思い出したけど(←全然別物)、この程度の作業を自動化したところでたいして開発工数の軽減にならない気がするんだよな。
  • Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT

    平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識

    Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT
  • 開発者が知っておくべき、6つのUIアーキテクチャ・パターン - @IT

    .NET開発者中心 厳選ブログ記事 開発者が知っておくべき、6つのUIアーキテクチャ・パターン ―― 「matarillo.com」より ―― 猪股 健太郎 2011/12/15 「.NET開発者中心 厳選ブログ記事」シリーズでは、世界中にある膨大なブログ・コンテンツの中から、特にInsider.NET/.NET開発者中心の読者に有用だと考えられるブログ記事を編集部が発掘・厳選し、そのブログ記事を執筆したブロガーの許可の下、その全文を転載・翻訳しています。この活動により、.NET開発者のブログ文化の価値と質を高め、より一層の盛り上げに貢献することを目指しています。 Martin Fowler氏の『GUI Architectures』を訳して公開しようと思ったのだが、FAQページに「PofEAAの続編などは商業出版する予定なので翻訳はしないでほしい」と書いてある。なので翻訳の公開はやめて、「

  • .NET開発者のための非同期入門 フリーズしないアプリケーションの作り方 - @IT

    連載目次 「エンド・ユーザーは、0.5秒のフリーズでストレスを感じ、3秒のフリーズはバグだと思う」。昔、冗談半分に言ってみた言葉だが、回りの反応を見るに、割とみな思っていることらしい。 特にモバイル端末向けのOSでは、応答性の悪いアプリケーションはOSによって強制終了されたり、マーケットプレイスでの審査に落ちたりする。フリーズしないアプリケーション作りがますます重要になっている。 そこで、稿では、フリーズしないアプリケーション作りに必要となる「非同期処理」*1について説明していく。 *1 時間のかかるAPIに対して、そもそも非同期版しか提供しないケースが増えてきている。Windows 8の新しいWindows API(WinRT)では、50ミリ秒以上かかるAPIを、すべて非同期なメソッドとして提供するそうだ。 ■非同期処理の今までとこれから ネットワークI/Oのように待ち時間の発生する処

    .NET開発者のための非同期入門 フリーズしないアプリケーションの作り方 - @IT
  • Lisp竹内氏「プログラミングには地を這うような努力が必要」

    なぜ、うっかりTwitterやmixiに自分の秘密を書いてしまうのか 「Twitterはバカ発見器と言われている――なぜ人はTwitterやmixiなどで秘密を話すのか?」 8月10日、情報セキュリティ基礎の講義を担当する、サイバー大学IT総合学部准教授の園田道夫氏は、こう問い掛けた。 「例えば、未成年者が飲酒・喫煙を暴露するケースなどがある。情報はすぐに全世界に公開されるにもかかわらず、なぜ自分にとって都合の悪いことを書くのか」 「なぜ、ソーシャルメディアを見ているのが身内・友達だけだと思ってしまうのか」 園田氏の問い掛けに対して、参加者はグループになってさまざまな意見を出した。 「ツイートはフォロワーからしか見られていないという認識があること、そして気軽につぶやけるということが原因ではないか」 「友人などの紹介で始めることが多いので、プライベートなエリアだと勘違いしているのではないか」

    Lisp竹内氏「プログラミングには地を這うような努力が必要」
    mohno
    mohno 2011/08/30
    「他人に使ってもらうのがソフトウェアで、自分だけが使うだけでよいものがプログラム」←何それ。
  • C#/Scala/Python/Ruby/F#でデータ処理はどう違うのか?

    ■概要 以前、C#でのデータ処理について解説した。今回は、同様のデータ処理を、C#以外のプログラミング言語ではどうしているのか、(C#も含めて)以下の5つの言語を比較しながら説明していく。 C# Scala Python Ruby F# 結果としてできることは似ているのだが、その内部的な実装方法は言語ごとにさまざまである。 ■データ処理のおさらい 概念的には、「データ処理」というのは、Figure 1に典型例を示すように、条件選択や変換など、小さな処理単位に分けて、それをつないでいく形を取る。

    C#/Scala/Python/Ruby/F#でデータ処理はどう違うのか?
  • 第3回 XAMLコードから生成されるプログラム・コードを理解する ―― XAML(2): WPF固有機能の基礎 ――

    第3回 XAMLコードから生成されるプログラム・コードを理解する ―― XAML(2): WPF固有機能の基礎 ――:連載:WPF入門(3/4 ページ) ■依存関係プロパティ ここまでにも名前だけはたびたび出てきているが、WPFでは「依存関係プロパティ(dependency property)」という、通常のプロパティ(区別のために、WPFの文脈においては「CLRプロパティ」と呼ぶことがある)とは異なる「値の保持機構」を持っている。 依存関係プロパティは以下のような用途を想定して作られている(Figure 3)。 包含継承: 親要素で設定した値をそのまま継承して使うための機構。 リソース: 1カ所で定義したオブジェクトを複数カ所から参照するための、リソースの定義/参照機構。 スタイル: HTMLでいうところのCSSのようなスタイル設定機構。 データ・バインディング: モデルとビューの間など

    第3回 XAMLコードから生成されるプログラム・コードを理解する ―― XAML(2): WPF固有機能の基礎 ――
    mohno
    mohno 2010/11/06
    依存関係プロパティ
  • 連載:C# 4入門 - @IT

    第2回 簡潔なコーディングのために (2017/7/26) ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21) Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基の「キ」をマスターしよう 第1回 明瞭なコーディングのために (2017/7/19) C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える Presentation Translator (2017/7/18) Presentation TranslatorはPowerPoint用のアドイン。プレゼンテー

  • CASが廃止。.NET 4のセキュリティはどうなるのか?(1/2) - @IT

    4月12日に米国でのローンチが予定されている.NET Framework 4(以降、.NET 4)では、さまざまな新機能の追加や機能拡張が行われる一方で、廃止されるものもある。その中で最も驚くべきものの1つが、「コード・アクセス・セキュリティ(以降、CAS)を利用したセキュリティ・ポリシー設定の廃止(=デフォルト無効化)」だ。 CASといえば、.NETのランタイム・エンジン「CLR」のセキュリティ機構そのものであり、CLRとは切っても切り離せない機能だ(CASについて詳しくは「解説 インサイド .NET Framework [改訂版]」を参照)。.NET開発をしている人なら、ほとんどの人がCASを知っているだろう。 そんな大事なものが廃止される?! これはいったいどういうことなのか? ●CASが廃止される理由とは? 疑いようもなくCASは、.NET 3.5 SP1までのCLRのセキュリティ