デジタル経済を支えるオープンソースソフト(OSS)の開発にひずみが目立ってきた。誰でも自由に開発・再配布できる仕組みで普及してきたが、民間調査で8割超に脆弱性が見つかる一方、欠陥の修正対応は有志の開発者頼みという弱点も露呈する。サイバー攻撃のリスクが高まる中、米グーグルなどのテック大手や各国政府も対応に乗り出している。「有名な開発者でも寄付で得られるのは数十万円程度。問題が起こって初めて注目さ

デジタル経済を支えるオープンソースソフト(OSS)の開発にひずみが目立ってきた。誰でも自由に開発・再配布できる仕組みで普及してきたが、民間調査で8割超に脆弱性が見つかる一方、欠陥の修正対応は有志の開発者頼みという弱点も露呈する。サイバー攻撃のリスクが高まる中、米グーグルなどのテック大手や各国政府も対応に乗り出している。「有名な開発者でも寄付で得られるのは数十万円程度。問題が起こって初めて注目さ
どんなプロダクトなの一言でいうと「製造図面からできる限り多くの情報を抜き取る」プロダクトです。 私が入社する一ヶ月前、現チームのテックリードがこんな記事を書いていました。今取り扱っている図面解析プロダクトの1年前の姿です。 課題のひとつは、図番の自動検出です。(中略)まず外枠や罫線を自動認識し、これを消去した上で OCR に入力する必要があります。(中略)他にも差し替え図面との差分検出など、さまざまな課題に取り組んでいます。 すでにここのプロダクトマネージャーになることが決まっていた当時の私は、この記事をとてもワクワクしながら読んでいました。 1枚~10枚 入って数ヶ月、まずは図面を読めるようにならなければなりません。社内の図面研修を受けたり、猛者が開催していた図面1万本ノックを受けるなどして、ドメイン知識を蓄えていきました。私の友人は「図面は製造へのラブレターだ」と言っていましたが、理解
米国防総省、オープンソースをプロプライエタリより優先的に採用する調達方針を明らかに。同省CIOが書面で通知 米国防総省は「Software Development and Open Source Software 」(ソフトウェアの開発とオープンソース)と題する同省CIO John B. Sherman氏の1月24日付けの書面を公開し、プロプライエタリな製品を購入する前に、既存の政府ソリューションやオープンソースソフトウェアの採用を優先する方針を示しました。 この書面は、セキュアなオープンソースソフトウェアや商用ソリューションの採用を増やすことを同省に指示した2018年7月発表のサイバー戦略の下で、どのようにオープンソースソフトウェアを位置づけるかを説明するものです。 書面の本文で、オープンソースを採用する上で2つの懸念を示した上で、付録のガイドラインで具体的な方針を明らかにしています。
function init() { var name = "Mozilla"; // name は、init が作成するローカル変数 function displayName() { // displayName() は内部に閉じた関数 console.log(name); // 親関数で宣言された変数を使用 } displayName(); } init(); init() 関数はローカル変数 name を作成し、それから関数 displayName() を定義しています。displayName() は init() の中で定義されている内部関数で、その関数本体の内部でしか利用できません。displayName() 自体はローカル変数を持っていませんが、外側のスコープで宣言された変数にアクセスできるので、displayName() では親関数 init() で宣言された変数 name を
JavaScriptチュートリアルBeginner's tutorialsYour first website: Adding interactivityDynamic scripting with JavaScriptJavaScript frameworks and librariesJavaScript ガイド入門編文法とデータ型制御フローとエラー処理ループとイテレーター関数式と演算子数値と文字列日付と時刻の表現正規表現インデックス付きコレクションキー付きコレクションオブジェクトの利用クラスの使用プロミスの使用JavaScript 型付き配列イテレーターとジェネレーターリソース管理国際化JavaScript モジュール中級編Advanced JavaScript objectsAsynchronous JavaScriptClient-side web APIs言語概要JavaScr
型付きラムダ計算(かたつきラムダけいさん、英: typed lambda calculus)とは、無名の関数の抽象表現にラムダ () というシンボルを用いる型付き形式手法である。型付きラムダ計算は基礎的なプログラミング言語でもあり、MLやHaskellなどの型付き関数型言語の基盤であり、さらには型付き命令型プログラミング言語の間接的な基盤とも言える。また、カリー・ハワード同型対応によって数理論理学と証明論とも密接に関連しており、圏論のクラスの内部言語と見なすこともできる。例えば単純な型付きラムダ計算はデカルト閉圏 (CCC) の言語である。 ある観点から見れば、型付きラムダ計算は型を持たないラムダ計算を改良したものと言えるが、別の観点からは、より根本的な理論と見ることもでき、型を持たないラムダ計算の方が型が1つしかない特殊ケースと見ることができる。 様々な型付きラムダ計算がこれまで研究され
今回は、文字列の中に記載されたメソッドや関数を Python から実行する方法です。 exec、eval、 literal_eval 、getattr あたりを使うことで実現可能なのですが、呼び出し側(文字列を関数として呼び出す側)と呼び出された側(文字列に記述した式)での値の受け渡しなどは、他のサイトではあまり触れられていないので、この記事ではその点を中心に解説したいと思います。 「文字列をプログラムとして実行する」とは そもそも「文字列をプログラムとして実行する」というのは、例えば文字列として "myfunc(100)" という文字列が与えられた場合、「 myfunc(100) を実行する」と解釈して、myfunc(100)を実行するという事になります。 プログラムと言っても実際には関数に限ったものではなく、文字列をPythonのプログラムと解釈させて実行することが可能です。 文字列を
この記事で伝えたいこと ここでは、私が設計を勉強しながらコーディングした経験から、初心者でも簡単に実践できる簡単なルールを3つピックアップしました。 一つのクラスは150行以内に収める 循環参照はしない 継承はしない この3つを守れば、破滅的なクソコードであれば割と簡単に防げるかと思います。 この記事における「破滅的なクソコード」は「一切のリファクタリングの余地も残されていないほどのコード」を意味し、この記事の目的は、「破滅的なクソコード」から、「最低限リファクタリングすればなんとかなるコード」になる程度の手法を紹介することです。 マサカリは大歓迎ですがお手柔らかにお願いします。 読む上で留意して欲しいこと この記事はあくまで 「初心者のための破滅的なクソコードを書かないための簡単な方法論」 であって、「効率的で分かりやすい設計の方法論」ではありません。 この3つは「銀の弾丸」ではないです
これまで一番ためになったプログラミングのアドバイスは何ですか? 過去を振り返ると、誰にだって教訓的なエピソードがあるのではないでしょうか。 著名なソフトウェアエンジニアであっても、それは例外ではないようです。Google に勤めるロブ・パイクは、UTF-8 や Go 言語の共同開発者として知られていますが、彼も駆け出しのころに先達から教訓を学んでいました。 ベル研究所に入所して間もないころ、ロブはデバッグするより先にまず頭で考える、という教訓をケン・トンプソンから学びました。これは、まさにプログラミングの極意の一つと言えるものではないでしょうか。 頭で考えることの重要性 ベル研究所で働き始めてからまだ1、2年しか経たないころ、ロブ・パイクはケン・トンプソンとペアプログラミングをしていました。タイピングの速いロブがキーボードを担当。ケン・トンプソンはロブの背後に立っていました。コーディングは
2022年2月18日紙版発売 2022年2月18日電子版発売 B5判/192ページ 定価1,342円(本体1,220円+税10%) ただいま弊社在庫はございません。 Amazon 楽天ブックス ヨドバシ.com Fujisan(定期購読のみ) 電子版 Gihyo Digital Publishing Amazon Kindle 本書のサポートページサンプルファイルのダウンロードや正誤表など 第1特集 今さら聞けない暗号技術 セキュア通信を実現する公開鍵暗号のしくみ ネットワーク上の脅威の代表選手として「盗聴」「改ざん」「なりすまし」が挙げられます。これらのリスクを解消するために使われているのはどんな技術でしょうか。そう,暗号技術です。暗号技術は,情報の秘匿を目的とした機密性を実現する技術としてよく知られています。しかし,そのほかにも,データが正確であることを示す完全性や,対象データの証跡を
関連キーワード 開発プロセス | プログラマー | プログラミング | プロジェクトマネジメント 幾つものメディアやブログが、プログラミングで何を重視すべきかを解説している。例えばネイサン・マーツ氏は、同氏のブログ「thoughts from the red planet」の「Suffering-oriented programming」というエントリ(投稿)で、 プログラムが正しく機能すること ソースコードが美しいこと プログラムの処理速度が速いこと という順番でプログラミングの目標を設定するように勧める。「機能すること、美しいこと、速いこと」はまさに本質を突いた名アドバイスだ。その言葉を初めて見たときから、私は心に刻んできた。 「機能すること」が最も重要なのは、ソースコードを解釈してもらう最も重要な「相手」がCPUだからだ。2番目が「美しいこと」なのは、CPUの次に重要な相手が、ソース
元・Java専門記者がLog4j 2脆弱性に見た「複雑性と魔神のかけら」 Javaの歴史とバザールの矛盾(1/6 ページ) Javaのライブラリ「Apache Log4j 2」に深刻な脆弱性が発見されたことは記憶に新しい。1カ月以上経過した現在も、注意喚起や新たな情報提供が続いている。問題は完全に収束したとはいえない。 今回の記事の主題は脆弱性対策ではない。「Javaの歴史的経緯と、今回騒ぎになっている脆弱性の話を、うまく1本の記事にしてください」という編集部のオファーに応じて書いたものだ。記事の半分は「元・Java専門記者のナイショ話」である。現実の情報システムへの対処が必要な方は、まず下記ページから最新情報をチェックしていただきたい。 IPA Apache Log4j の脆弱性対策について(CVE-2021-44228) Apache Log4j 2公式ページ Log4j 2で今回問題
RFIDを利用した業務システム開発の心得 RFIDシステム導入バイブル(1) RFIDシステムの導入を成功させるにはどうすればいいのか? 経験豊富なコンサルタントがノウハウを伝授する(2006/4/18) ・縁遠いRFIDシステムを身近なものにするために ・RFIDシステムを成功させるキーファクター ・RFIDの基本中の基本を確認する ・RFIDシステム本導入までの流れを把握する ・システム開発の全体工程のおけるRFIDシステム導入作業 RFIDシステム導入を成功させるポイント RFIDシステム導入バイブル(2) RFIDシステム導入の最初のフェーズに必要なものとは? フィージビリティスタディや周波数、ハードウェアの選定を解説する(2006/5/23) ・なぜRFIDシステムの導入がうまくいかなかったのか ・RFIDシステムの導入を成功させるために ・フィージビリティスタディとはどういうも
RFIDシステム用プログラム開発の心得 RFIDシステムプログラミングバイブル(1) RFIDシステムに必要なプログラムの実装方法はベンダによってクセがある。代表的なベンダの製品ごとに心得を説く ・メーカーごとにプログラミングのクセがある ・UHF帯RFIDシステムの雄「モトローラ」 ・XR480-JPの基本情報 ・モトローラ機器のプログラミング ・モトローラ機器のモードとアクセスメソッド ・連載に共通なサンプルプログラムの仕様 モトローラ製「XP480-JP」のプログラミングを学ぶ RFIDシステムプログラミングバイブル(2) XP480-JPで動作するリーダ/ライタ用プログラムを開発する。読み取り方法とデータの格納方法を検討しよう ・XP480-JPのプログラミングのクセをおさらい ・サンプルプログラムのフローチャート ・サンプルプログラムの実行結果 ・メインモジュールのソースコードを
本記事では、PythonのPySNMPライブラリを使用して、SNMPに対応したIP機器などに要求するSNMPコマンドの基本的な使い方について学んでいきます。 SNMPとは PySNMPのインストール Ciscoルータの設定 snmpwalkコマンド snmpgetコマンド snmpsetコマンド 最後に 参考書籍 SNMPとは SNMP(Simple Network Management Protocol)とは、IP機器(サーバやルータなど)を管理するために1988年に導入されたプロトコルです。 SNMPを用いることで、サーバなどのCPUの使用率や温度状態をポーリングしたり、またルータなどのインタフェースダウンなど異常が発生した際にトラップ(Trap)と呼ばれるものを管理者(Manager)に送信することで、障害検知を容易にすることができます。 SNMPはこれまでにSNMPv1、SNMPv
重要 一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。 最近のネットワークで使用されている多くのプロトコル用の単純なプログラミング インターフェイスを提供します。 System.Net 名前空間のクラスは Windows ストア スタイルのアプリケーションまたはデスクトップ アプリケーションで使用できます。 Windows ストア アプリで使用する場合、System.Net 名前空間のクラスはネットワークの分離機能の影響を受けます。この機能は、Windows Developer Preview によって使用されるアプリケーション セキュリティ モデルの一部です。 Windows ストア アプリによるネットワーク アクセスがシステムで許可されるよ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く