タグ

ブックマーク / news.mynavi.jp (12)

  • C言語1000行以下のエディタ「Kilo」を理解する(1) シンプルな内部構造

    以前、Salvatore Sanfilippo氏によって開発されたエディタ「Kilo」を取り上げたところ、高い関心を集めた。Kiloはclocカウントでソースコードが1000行以下で、しかもcursesなどのライブラリも使っていない。VT100の基的なエスケープシーケンスとlibcで提供されている機能だけを用いて実装されたエディタで、シンタックスハイライトにも対応している。C言語1000行程度でここまで実用的なエディタが開発できるというのは、教育向けの素材として興味深い。 連載では、Kiloのソースコードを読み、どのような仕組みでエディタが作られているかについて紹介する。C言語でソフトウェアを開発する際に利用する機能が網羅されており、学習素材としてなかなかのポテンシャルを持っている。エディタがどのように実装されているのかを知るためにも、一度は読んで見てほしいソースコードだ。 頭から読む

    C言語1000行以下のエディタ「Kilo」を理解する(1) シンプルな内部構造
    yohshiy
    yohshiy 2016/09/29
    curses も使ってないというのはすごいな
  • Microsoft Edge、電力効率でライバル圧倒、MSがテレメトリデータなど公表

    Microsoftは6月20日(現地時間)、Windows 10デバイスにおける「Microsoft Edge」ブラウザの電力効率の良さを示す2つのデータを公表した。1つはラボ環境における電力消費量テストの結果、もう1つは実利用環境におけるデータだ。どちらにおいてもEdgeがChromeやFirefoxよりも長いバッテリー動作時間を実現している。 ラボ環境のテストでは、Surface Bookを使って、Edge、Chrome、Opera(パワーセーブ)、Firefoxなどで、Webサイト(Facebook、Google、YouTube、AmazonWikipediaなど)を開く、タブを開く、記事をスクロール、ビデオ再生といった作業を同じように繰り返した。結果は、Edge使用時のCPUGPUWi-Fiの平均電力消費量が、他のブラウザよりも36%~53%長く作業を行えるぐらい少なかった

    Microsoft Edge、電力効率でライバル圧倒、MSがテレメトリデータなど公表
    yohshiy
    yohshiy 2016/06/21
    OS を作ってる強みを活かしたシェア取得の一環かな。使わせなくする系の囲い込みよりは全然いいな。
  • Microsoft、C言語を拡張する「Checked C」を開発中

    fossBytesに6月14日(米国時間)に掲載された記事「Microsoft Open Sources "Checked C" — An Extended Version Of C To Avoid Coding Errors」が、Microsoftにより開発が進められている「Checked C」と呼ばれる技術について伝えた。「Checked C」はC言語を拡張する機能で、より安全なコーディングが可能になるとされている。 Microsoftのソフトウェアの多くはC/C++で開発されている。C言語はポインタの扱いを間違えると来アクセスしてはいけないメモリを指した操作をしてしまうことがあり、これがバグや脆弱性の原因の1つになっている。「Checked C」はこうした問題を回避することを目指してC言語の機能を拡張するもので、ポインタに対してあらかじめ範囲情報を持たせておき、ポインタの指し示す

    Microsoft、C言語を拡張する「Checked C」を開発中
  • RubyにOpenSSL関連の脆弱性が複数存在

    Rubyコミュニティは4月13日(協定世界時)、「CVE-2015-1855: Ruby OpenSSL Hostname Verification」において、RubyのOpenSSLエクステンションに複数のセキュリティ脆弱性が存在すると伝えた。これはホスト名のマッチング処理を過度に実施してしまうというもので、該当するバージョンを使用している場合は修正されたバージョンへアップグレードすることが強く推奨されている。 脆弱性が存在するバージョンは次のとおり。 Ruby 2.2.2よりも前のすべてのRuby 2.2系バージョン Ruby 2.1.6よりも前のすべてのRuby 2.1系バージョン Ruby 2.0.0 patchlevel 645よりも前のすべてのRuby 2.0系バージョン 修正されたバージョンでは、ワイルドカードの扱いなどが変わっているため注意が必要。特にOpenSSL::SS

    RubyにOpenSSL関連の脆弱性が複数存在
    yohshiy
    yohshiy 2015/04/14
    さすがに 1.8 系はもう触れられてもいないな。
  • そろそろきっちりJavaScript (1) "Firebug"の導入~関数リテラルとは? | マイナビニュース

    多彩な演出効果をカンタンに導入できる事で脚光を浴びたprototype.jsの登場を皮切りに、インターネットで公開されているJavaScriptライブラリの数は、この一年で急激に増加した。何かやりたいことがあったときはWebで検索すれば、大抵、どこかにライブラリが転がっている。便利な世の中になったものだ。 一方、Webを通じて提供されるサービスは多様化の一途を辿っている。JavaScriptライブラリは整ってきたが、当然、置くだけでは機能しない。ライブラリのサポートページには簡単なサンプルが載っているものの、サンプルがそのまま適用できるケースはごくわずかだ。しかたなく、他の誰かが似たような事をやっていないかとWeb検索するはめになる。 思えば、これまでJavaScriptを言語としてとらえ、きっちり向き合う機会は少なかったのではないだろうか。 1995年の終わり、Netscape Navi

  • 避けるべきHTML5機能をまとめたティップサイト「HTML5 Please」登場

    HTML5やCSS3といった最新の技術を活用したWebページの制作は開発者にとっては魅力的な選択肢だが、そこには常に「どの機能ならば使っても良いか」という判断が必要になる。最新のブラウザがある機能に対応していたとしても、それがすべての主要ブラウザでサポートされていないことがあったり、あるバージョンでは特定の問題を引き起こすこともある。「どの機能ならば使っても良いか」という調査にかかるコストを考えると、従来の古い技術のみでWebサイトを構築する、といった選択肢も捨てがたいものとなってしまう。 こうした際に役立つサイト「HTML5 Please」が登場した。HTML5やCSS3、JavaScript APIに関して利用が推奨されるかどうか、どのブラウザのどのバージョンがサポートし、全体としてどの程度の対応状況にあるかをまとめたサイトだ。どの機能を利用すべきかといった判断をするのに役立てることが

    避けるべきHTML5機能をまとめたティップサイト「HTML5 Please」登場
  • そろそろきっちりJavaScript (1) "Firebug"の導入~関数リテラルとは? | エンタープライズ | マイナビニュース

    多彩な演出効果をカンタンに導入できる事で脚光を浴びたprototype.jsの登場を皮切りに、インターネットで公開されているJavaScriptライブラリの数は、この一年で急激に増加した。何かやりたいことがあったときはWebで検索すれば、大抵、どこかにライブラリが転がっている。便利な世の中になったものだ。 一方、Webを通じて提供されるサービスは多様化の一途を辿っている。JavaScriptライブラリは整ってきたが、当然、置くだけでは機能しない。ライブラリのサポートページには簡単なサンプルが載っているものの、サンプルがそのまま適用できるケースはごくわずかだ。しかたなく、他の誰かが似たような事をやっていないかとWeb検索するはめになる。 思えば、これまでJavaScriptを言語としてとらえ、きっちり向き合う機会は少なかったのではないだろうか。 1995年の終わり、Netscape Navi

  • 反磁性体とされてきた金が実は磁性体 - JASRIなどが発見

    高輝度光科学研究センター(JASRI)は1月23日、北陸先端科学技術大学院大学や香川大学、秋田大学、スペイン・バスク州立大学らと共同で、金にこれまで検出されていなかった新たな磁気的性質があることを発見したことを発表した。発見はJASRI利用研究促進部門の鈴木基寛主幹研究員らの国際共同研究グループによるもので、成果は米科学雑誌「Physical Review Letters」オンライン版に日時間1月25日に掲載された。 金は古くから研究されてきたこともあり、その物理的・化学的な性質はよく理解されている。錆びにくく酸などにも侵されにくく、そして軟らかくて加工しやすい、電気をよく通す、などといった性質から工業的にも多彩な応用が展開されている。 特に近年はハイテク材料としての利用が注目されており、鉄やコバルトといった磁性体と組み合わせることで磁気記録材料としての応用も検討されてるところである。さ

    反磁性体とされてきた金が実は磁性体 - JASRIなどが発見
  • 心理学のプロが分析!アニメで八重歯やメガネ女子が人気の理由 | ホビー | マイナビニュース

    マンガ、アニメ、ゲームなどの2次元キャラのチャームポイントや特徴としてよく描かれる「八重歯」や「メガネ」。たとえば八重歯キャラには、『魔法少女まどか☆マギカ』の佐倉杏子や、『らき☆すた』の日下部みさおといった人気キャラがいますよね。なぜ、八重歯やメガネの女の子が人気なのでしょうか。 「それは『八重歯』や『メガネ』といった特徴そのものに秘密があるのではなく、人は珍しいものに対して価値をおく心理傾向があるからです」と語るのは心理学者の内藤誼人(ないとうよしひと)先生。一体どういうことなのでしょうか。詳しくお聞きしました。人は珍しいものに惹かれる 「イタリアのトレント大学のルイージ・ミットンの実験によれば、二人の人間にいくつかの商品を分け合うように指示したところ、たとえ値段は安くても数が少ない商品を好む被験者が多いという結果が出ました。人は希少性の高いものに価値を置く傾向があり、これを『希少性

    yohshiy
    yohshiy 2012/01/23
    つけ八重歯とかはやると、かわいく見えないのか。
  • iPadはスケッチブックになれるか - アプリとペンを徹底検証

    iPadを"スケッチブック"として利用したい!! 資料庫としてiPadが大活躍する一方、私の当初の目的は「格的な"スケッチブック"として利用したい!!」というものでした。米国では、発売当初から豊富な数のお絵かきアプリが出揃っており、ついに気軽にラフスケッチを描ける環境が整うのだと期待感はさらに高まっていたのです。 そして私がまず購入したお絵かきアプリは、iPad版「SketchBook Pro」(900円/掲載時115円、)。Mac版を利用していたこともあり、iPad版の独自性が多少はあるものの、基的な操作に違和感はありません。また、作成したデータは「Adobe Photoshop」や「ArtRage」とも互換があり、実用性も十分です。しかし、問題は意外な場所に潜んでいました。 指での描画に悪戦苦闘 iPadは現状、指でのタッチ操作を前提に作られているからか、ペンとの相性がどうも悪いの

    yohshiy
    yohshiy 2012/01/16
  • Cygwinより手軽にUNIX風環境が手に入る「Gow」

    Gowを使用する際の注意点 GowをメインのUNIX風コマンド環境として使用する上で、注意しなければならない点がいくつかあります。例えばgrepやtailといったコマンドが日語に完全対応しておらず、「grep 阿久津 hoge.txt」といったコマンドはとおりません。また、「grep Windows hoge.txt」と英字だけでの構成でも、「grep: writing output: No space left on device」というエラーメッセージが表示されます。 これは、標準出力先の空き容量が足りないという意味ですが、コンソールに対するバッファが不足していることは考えにくいため、何らかの設定不足かソフトウェア側の問題なのでしょう。文字コードの問題なのかと、あれこれ試してみましたが、執筆時点では解決方法を見出すことができませんでした。しかし、この問題を解決しないと前述のコマンドは

    yohshiy
    yohshiy 2011/12/13
    ちょうどいいと思ったけど、日本語対応がいまいちなのか。
  • Cygwinより手軽にUNIX風環境が手に入る「Gow」

    UNIX風環境をWindows OS上で使用してきた時代 黎明期からコンピューターを使ってきた方にとって、キーボードからコマンド名を入力して実行するスタイルは、ごく自然なものでした。GUI(グラフィカルユーザーインターフェース)が主流になってからも、コマンドラインによる操作は依然と残され、我々が使用するWindows 7にも、コマンドプロンプトやWindows PowerShellといったCUI(キャラクターユーザーインターフェース)が用意されていることからも、その重要性を理解できることでしょう。 そもそもコマンドプロンプトで実現するコマンドラインインタープリターは、Windowsが主流になる前のOSであるMS-DOSを基礎にしており、そのMS-DOSもQDOSという16ビットOSを元にしています。しかし、CUIを採用したOSの源流は、1970年代から大学や研究所などに普及したUNIXにあ

  • 1