タグ

nharukiのブックマーク (2,475)

  • Rustで実装するmalloc - NTT Communications Engineers' Blog

    この記事は、NTT Communications Advent Calendar 2021 21日目の記事です。 はじめに こんにちは、イノベーションセンターの鈴ヶ嶺(@suzu_3_14159265)です。普段は、クラウド・ハイブリッドクラウド・エッジデバイスなどを利用したAI/MLシステムに関する業務に従事しています。日は、Rustで動的メモリ確保(dynamic memory allocation)のmallocを実装してPythonvimを動かしてみようという内容をお届けします。 また、去年もRustネタのアドベントカレンダーを書いているのでぜひ見ていただけると嬉しいです! NTTコミュニケーションズ Advent Calendar 2020 Rustで実装するNetflow Collector 実装するmallocのアルゴリズム 今回実装するmallocのアルゴリズムは小さな

    Rustで実装するmalloc - NTT Communications Engineers' Blog
    nharuki
    nharuki 2021/12/22
  • Apache Log4jの脆弱性とともに浮かび上がったオープンソースのメンテナの責任範囲の問題 - YAMDAS現更新履歴

    www.jpcert.or.jp piyolog.hatenadiary.jp 先週は Apache Log4j の脆弱性問題が大きな話題となった……と過去形で書いてはいけないのかもしれない。危機はまだ続いている。 今回、脆弱性の破壊力のヤバさとともにクローズアップされたのは、今日、多くのビジネスの生命線となっているオープンソースソフトウェアのメンテナンスが、無報酬であり感謝されない仕事になっており、「オープンソースは壊れている」んじゃないの? という問題である。 20年以上みんなずっと同じ話してるなと思ってしまうが、オープンソースが壊れている、壊れていないの話がやたらに流れている。この文脈ならフリーソフトウェアの時代からずっと壊れてるんだよ。それでも動いているのは自由だからだよ。— Shuji Sado (佐渡 秀治) (@shujisado) December 14, 2021 dev

    Apache Log4jの脆弱性とともに浮かび上がったオープンソースのメンテナの責任範囲の問題 - YAMDAS現更新履歴
    nharuki
    nharuki 2021/12/22
  • Log4J問題で明るみになった「ボランティア頼み」の危うさ

    世界中で広く使われているオープンソースのログ収集ソフト「Log4J」の深刻な脆弱性をめぐって、開発者が対応に追われている。インターネットの運用を支えるほど重要な存在であるにもかかわらず、オープンソース・ソフトウェアは無報酬の労働にほとんど頼っている状況だ。 by Patrick Howell O'Neill2021.12.21 133 45 8 ヴォルカン・ヤズジュは今、1日22時間タダ働きをしている。 ヤズジュは、さまざまなタイプのソフトウェア内部のアクティビティを記録するオープンソース・ツール「Log4Jプロジェクトのメンバーの1人だ。Log4Jは、アイクラウド(iCloud)からツイッターに至るまでさまざまなアプリケーション、つまりインターネットを構成するかなりの部分を機能させるのに使われている。ヤズジュと彼の同僚は現在、数十億台のマシンを危険にさらしている極めて深刻な脆弱性に対処

    Log4J問題で明るみになった「ボランティア頼み」の危うさ
  • 超凄いIPv6解説書(488ページ)を無料配布します!:Geekなぺーじ

    「プロフェッショナルIPv6 第2版」を無料配布します。2018年7月にプロフェッショナルIPv6初版を発売&無償配布開始しました(すごいIPv6を無料配布)。初版発売開始から3年、さらにパワーアップした「プロフェッショナルIPv6 第2版」がついに完成しました! 書を企画して、少しずつ文章を書き溜めはじめた2011年から10年近くかけて完成した488ページにおよぶ「プロフェッショナルIPv6 第2版」をお楽しみください。 プロフェッショナルIPv6第2版の構成 プロフェッショナルIPv6第2版は5部構成になっています。 第1部は「インターネットとIPv6の概要」というタイトルで、IPv6の視点からインターネット自体の仕組みを復習し、そのうえで、詳細の説明に入る前に把握しておくべきIPv6の概要として、次のような事項を解説しています。 従来のIPv4アドレスとは大きく異なるIPv6アド

  • WordPressが改竄された時の復旧方法と絶対に改竄されない対策

    どういうハッキングをされるのか? さて、題です。ここ10年ちょっとWordPress専門で仕事をしていますが、自分が遭遇したり知り合いが遭遇したケースは「サーバー内のファイルが書き換えられて、アクセスすると他のサイトにリダイレクトされる」というケースです。 サーバーのファイルを見てみると概ね以下の症状になります WordPressをインストールした各ディレクトリのindex.phpなど、phpファイルの文頭に怪しげなコードを書き込まれているwp-content/uploads/ の中には通常画像ファイルなどばかりのはずが、見に覚えのないファイルを大量に置かれる通常の投稿内にいろいろ投稿される(このケースは近年は自分や周りでは遭遇していない) これらのファイルは全部キレイに駆除しない限り、該当部分を削除したり、該当ファイルを削除しても残っているファイルから再度改竄してくるので面倒です。 復

    WordPressが改竄された時の復旧方法と絶対に改竄されない対策
  • 初心者が実践すべきお金の勉強方法を公開!目的別に詳しく解説

    初心者が実践すべきお金の勉強方法を公開!目的別に詳しく解説
  • 「Log4j2の脆弱性から垣間見えたOSS開発の厳しさ」と「OSS開発者に投げ銭する文化(未来)」について

    Log4j2の脆弱性から垣間見えたOSS開発の厳しさ」と「OSS開発者に投げ銭する文化(未来)」について by nao · 公開済み 2021年12月12日 · 更新済み 2021年12月13日 前書き:災害レベルの脆弱性 記事は、紛うことなきポエム記事です。Log4j2の脆弱性問題を追っている間に「OSS開発の醜い部分」を目の当たりにしたので、記事では「せめてOSS開発者が金銭的もしくは他の手段で報われればいいのに」と主張します。 2021年12月10日、Javaのロギングライブラリであるlog4j2は任意コード実行の脆弱性(CVE-2021-44228、内容は以下の引用文を参照)が見つかり、その実行方法の容易さから話題となりました。 Apache Log4jにはLookupと呼ばれる機能があり、ログとして記録された文字列から、一部の文字列を変数として置換します。その内、JNDI

    「Log4j2の脆弱性から垣間見えたOSS開発の厳しさ」と「OSS開発者に投げ銭する文化(未来)」について
  • 自作したChrome拡張を公開する方法!【画像付き解説】 | すずきライフ

    Chromeウェブストアにアプリを登録する作ったChrome拡張をZipファイルにまとめるまずは自作したChrome拡張をZipファイルにまとめます。 前回のChrome拡張で使ったmanifest.jsonが含まれているディレクトリをそのままZipアーカイブすればOKです。 Chromeウェブストアからデベロッパーページに移動する デベロッパーページでアイテムを追加する画像を参考にしてアイテムを追加します。 公開に必要な情報を記入していく次に必要な情報を記入していきます。 何を記入すべきかはページ上部に記載されている「公開できない理由」を参考にします。 At least one screenshot or video is required.少なくとも1つのスクリーンショットまたはビデオが必要です。翻訳そのままですがアプリを紹介するスクリーンショットを設定します。 【ストアの掲載情報】

    自作したChrome拡張を公開する方法!【画像付き解説】 | すずきライフ
  • Log4Jの問題について貢献って結局金しかないっていう事がよくわかる

    Log4Jについてなんだけど、結局金がないので働いてもらえなくてどん詰まりになっている。世界はプログラマの暇つぶしによって支えられているといっても過言ではない。開発者たちは寄付金がなくて回らないということをいい機会だからと訴えている。 一方で「金を払う以外の貢献もある」と強弁する人がちらほらいて、「いやいやお前、それはもう違うだろう、少なくともLog4Jはもうそういう段階じゃないだろう」と思ったので書いてみる。 これからクールで世界を変えるOSSを作る、いろんな人に知ってもらいたい、というフェーズならば、いろんな人に使ってもらってフィードバックをもらってひたすらブラッシュアップすればいい。何ならライセンス違反上等なところもあるかもしれない。そういうOSSにとっては雑で間違いだらけのブログ記事だって貢献になる可能性がある。 だが、Log4Jみたいに世界中に広まったものに対してその貢献は単なる

    Log4Jの問題について貢献って結局金しかないっていう事がよくわかる
    nharuki
    nharuki 2021/12/15
    こんな議論、記憶にある限りではHeartBleedの時からある(多分探せばもっと昔から)。問題は数か月かそこらで話題が風化してしまう事だ。
  • 「オープンソース」は壊れている

    christine.websiteのブログより。 または: お金を払わない限り、有用なソフトウェアを書かないのか? 最近、重要なJavaエコシステム・パッケージに大きな脆弱性が見つかりました。この脆弱性が完全に兵器化されると、攻撃者はLDAPサーバから取得した任意のコードを実行するよう、Javaサーバを強制することができます。 <マラ> もしこれがニュースで、あなたがJavaショップで働いているなら、残念ですが、あなたには2、3日が待っています。 私は、これが「オープンソース」ソフトウェアの主要なエコシステム問題の全ての完璧な縮図だと考えています。log4j2が、この問題の最悪のシナリオの1つの完璧な例であると思うので、このすべてについていくつか考えを持っています。この問題に関与したすべての人が、現実世界の問題に対する完全に妥当な解決策のためにこれらすべてを行ったことは完全に合理的であり、

    「オープンソース」は壊れている
    nharuki
    nharuki 2021/12/15
    お金だけの問題ではないけれども、お金は依然として大きな影響を与えるファクターであることに変わりはない
  • インデックス投資で億りました

    新刊に書いたのでいずれ明らかになるため自分で言います。億りました。 資産1億円を達成したということです。当ブログの読者さまならご存知のとおり、ほぼインデックス投資(国際分散投資したインデックスファンドの積み立て投資)だけでここまできました。 私のポートフォリオの期待リターンは年率+4.4%、リスク(標準偏差)は13.6%です。運用期間は20年弱で、実際のリターンを計算したら年率+6%でした。平凡な実績ですが、期待リターンよりは少し良い方にふれたようです。良い方にふれたのは、たまたまここ数年の相場状況が良かったからだと思います。こんなのは計算期間によってころころ変わるのであまり意味はありません。 それよりも、リスク水準を自分のリスク許容度の範囲内におさめることを重視して、同じ資産配分で毎月1回ひたすら積み立ててきました。年1回程度リバランスをしてきましたが、計算してみたらあまり変わっていなか

    インデックス投資で億りました
    nharuki
    nharuki 2021/12/14
    何がすごいって、リターン総額と利率から求めた結果毎月約23万の積立を20年弱ひたすら繰り返したその継続力が一番すごい
  • Log4jの深刻な脆弱性CVE-2021-44228についてまとめてみた - piyolog

    2021年12月10日、Javaベースのログ出力ライブラリ「Apache Log4j」の2.x系バージョン(以降はLog4j2と記載)で確認された深刻な脆弱性を修正したバージョンが公開されました。セキュリティ関係組織では過去話題になったHeartbleedやShellshockと同レベルの脆弱性とも評価しています。ここでは関連する情報をまとめます。 1.何が起きたの? Javaベースのログ出力ライブラリLog4j2で深刻な脆弱性(CVE-2021-44228)を修正したバージョンが公開された。その後も修正が不完全であったことなどを理由に2件の脆弱性が修正された。 広く利用されているライブラリであるため影響を受ける対象が多く存在するとみられ、攻撃が容易であることから2014年のHeartbleed、Shellshock以来の危険性があるとみる向きもあり、The Apache Software

    Log4jの深刻な脆弱性CVE-2021-44228についてまとめてみた - piyolog
  • GitHub - public-apis/public-apis: A collective list of free APIs

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - public-apis/public-apis: A collective list of free APIs
    nharuki
    nharuki 2021/12/10
    オープンなWebAPIリソース集
  • PostGISとMySQL8のGIS機能の違い - Qiita

    記事はPostgreSQL Advent Calendar 2019の7日目となります。 はじめに 私は普段PostGISを使っていますが、最近MySQL 8.0.xのGIS機能について調査する機会がありました。 記事は筆者が調査の中で気づいた両者の違いをまとめたものです。 PostGISは2.x〜3.x、MySQLは8.0.17を対象としています。 両者は共にOpenGIS1やSQL/MMなどの標準に基づく実装を進めているため共通している部分も多いものの、独自拡張や実装の違いによりいくつかの違いもあります。 記事の目的は両者の優劣をつけることではありません。 両者の違いを理解して、場面に応じた適切な使い方を選択するための一助となることが目的です。 所感 文に入る前に、私の所感を述べておきたいと思います。 まず、普段PostGISを使っている人が、MySQLGIS機能に乗り換える

    PostGISとMySQL8のGIS機能の違い - Qiita
  • フレッツ光回線でscpが遅かった話 - Qiita

    この記事は、Supershipグループ Advent Calendar 2021の7日目の記事になります。 先日、sshを使用したファイル転送が回線速度と比べて異常に遅いという現象に遭遇したので、その際に行った調査を再現しつつ原因や対策について書いてみたいと思います。 要約 OpenSSHはデフォルトでinteractiveなセッションに af21 、non-interactiveなセッションに cs1 をDSCP値としてIPヘッダに設定する フレッツ網はIPヘッダのDSCP値を帯域優先サービスで使用しており、契約に応じて指定された優先度以外が設定されたパケットの転送は保証されない そのため、OpenSSHをデフォルト設定のままフレッツ網で使うと通信ができなかったり、速度低下などの悪影響を受ける可能性がある OpenSSHがDSCP値を設定しないようにするためには、IPQoS noneを設

    フレッツ光回線でscpが遅かった話 - Qiita
    nharuki
    nharuki 2021/12/08
    ここからがクセ強い→“次にフレッツ網の仕様を確認してみます。”
  • Python 3.10の新機能(その1) パターンマッチ - python.jp

    今年も、Pythonのメジャーリリースの季節がやってまいりました。 Python 3.9から、Pythonのメジャーバージョンアップは年に一度、10月に行われるようになりました。Python 3.10は一年周期のリリースに切り替わってから、2度めのリリースです。 Python 3.9の次のバージョン番号は4.0? と思っていた方も多かったようですが、4.0ではなく3.10となります。 このシリーズでは、何回かにわけてPython 3.10の新機能を紹介していきます。まず、Pythonの新たな文法として追加された構造的パターンマッチ について、簡単に紹介します。 構造的パターンマッチ¶パターンマッチは、将来のPythonのコーディングスタイルに大きな影響を与えると思われる、重要な機能です。けっこう複雑な機能ですが、しっかり理解しておきましょう。 構造的パターンマッチの詳細は、次のPEPで解説

    nharuki
    nharuki 2021/12/03
    ついに if~elif~elif~else から解放される!
  • 去年買って今も使い続けている良かったもの5選 - 本しゃぶり

    当に良いものかどうかは、時間が経たないと分からない。 だから今になって2020年に買って良かったものを紹介する。 Amazonブラックフライデーはこれを買え。 時の洗礼に耐えたモノたち 気がついたらもう12月になろうとしている。ブロガー的に12月と言えば、「今年買って良かったもの」である。これは割と最近出た物を知れるから良いのだけど、もっと使い込んだ上での紹介を聞きたいと思ったことはないだろうか。 買った当初は良いと思っていたけど、気がついたら使わなくなっていた。そういうのはなるべく避けたい。当に大事なのは、使い続けることができるものである。 ということで「2020年」に買って良かったものを紹介する。 AfterShokz Air やはり筆頭は骨伝導イヤホンの「AfterShokz Air」である。 AfterShokz 骨伝導 ワイヤレス ヘッドホン イヤホン ランニング Trekz

    去年買って今も使い続けている良かったもの5選 - 本しゃぶり
  • ソースコードを公開したソフトウェアで収益を得ている会社

    ソースコードを公開したソフトウェアで収益を得ている会社をまとめる。いわゆる「オープンソースソフトウェア(OSS)」という有名な言葉を使わなかったのは、OSS の定義に当てはまらない、またはその可能性があるものが含まれているため。 この記事では "OSS" の定義に当てはまらないものも含め、主要な事業を構成するソフトウェアを一定のライセンスの下で公開している会社をまとめていく。このようにソースコードを公開して利用者やフィードバックを集めるビジネスモデルは open core とか COSS: Commercial Open Source Software と呼ばれているようだ。 企業が「ソースコードが公開されているソフトウェア」を利用するメリットとしては、主に以下の2つがあると考えられる。 コア機能の開発に集中できる 自社のビジネスの核となるソフトウェアの開発に集中し、それ以外の機能的・非機

    ソースコードを公開したソフトウェアで収益を得ている会社
  • clickの引数をまとめて受け取る話 - Qiita

    $ python a.py a b --opt-c c --opt-d d {'opt_d': 'd', 'opt_c': 'c', 'arg_b': 'b', 'arg_a': 'a'} そこで とりあえず **kwargs で受けるようにしてみれば、まとめて受け取れるけど、 dictだとtypoが検知しづらいつらみがあるので、もうひと工夫。 ビルトインの type には2種類の使い方があって、 http://jfine-python-classes.readthedocs.io/en/latest/type-name-bases-dict.html type(name, bases, dict) で新しい型のインスタンスを作って、dict の内容で初期化できる。 after 無名structみたいな感じで使える。 元が **kwargs なので、普通に引数で受け取った残りをdictでま

    clickの引数をまとめて受け取る話 - Qiita
  • 【JavaScript + JQuery】DOMの変更を監視するリスナー - 新米エンジニアの失敗再発防止メモ

    特定のページで面倒な操作を自動でやりたいときなど、拡張機能を作成すると思います。 リンクやボタンをクリックした時に、ページ遷移じゃなくてDOM全体がふわっと変わるような洒落乙なサイトも時々あって、そういうときって DOMが変更された時に反応して処理を走らせたかったりします。 やり方 $('HTML').on('DOMSubtreeModified propertychange', function() { // DOMが変更された時に動く処理 });この場合、htmlタグの中の何かが変更されたら処理が走ります。 セレクタ「$('HTML')」の部分を変えれば範囲を絞れます。 ただ気を付けて欲しいのが、 セレクタが配列だとだめ $('div').on('DOMSubtreeModified propertychange', function() { // DOMが変更された時に動く処理 })

    【JavaScript + JQuery】DOMの変更を監視するリスナー - 新米エンジニアの失敗再発防止メモ