タグ

ブックマーク / qiita.com (870)

  • パソコンユーザーのためのDRAM入門 Part 2 制御、パッケージ - Qiita

    パソコンユーザーのためのDRAM入門 目次 Part 1 : パソコンにおけるDRAM、DRAMの構造 Part 2(記事) : 制御、パッケージ Part 3 : GHzへの挑戦、PCB Part 4(準備中) : マルチチャンネル、規格、未来 Part 2があまりに肥大化したため、Part 2とPart 3に分割した。そのせいで若干Part 2が寂しい感じになってしまったが許せ。 Part 1 おさらい まず、多くの人にPart 1を読んでいただいたことを感謝したい。Qiitaはソフトウェアの話題が多い中で、このようなゴリゴリのハードウェア、しかも半導体レベルの話題に興味を持っていただけたことは大変嬉しい。勢いで書いた拙い文章であるが、DRAMの話題を通して身近な半導体にさらに興味を持っていただけたらなと思う。(前半のバスの話が長すぎて、大事な後半読まれてない説が若干あるが(汗))と

    パソコンユーザーのためのDRAM入門 Part 2 制御、パッケージ - Qiita
  • 【C#】自作LINQオペレータの作り方 - Qiita

    はじめに C#erなら誰しもがLINQを使っていますよね? WhereとかSelectとかよく使うと思います。あれって魔法みたいに見えますが、その実ただのIEnumerable<T>の拡張メソッドでしかないんですよね。 てことは自分で作れます。しかも、幸いにもC#にはyield returnがあるのでものすごく簡単に実装できます。 試しにWhereとSelectを自前で実装してみましょう。 Whereを自前実装する Whereは受け取ったソースシーケンスの中から、条件に合致したものだけフィルタリングするオペレータです。 これを簡易的に自前で実装したコードは以下になります。 public static IEnumerable<T> MyWhere<T>(this IEnumerable<T> source, Func<T, bool> filter) { foreach (var item

    【C#】自作LINQオペレータの作り方 - Qiita
    t_mori
    t_mori 2021/09/23
  • macOSでもWSLみたいなLinux環境を手に入れる - Qiita

    macOSでもLinuxの仮想環境が欲しい時はある Dockerを利用するなど、macOSであってもLinux環境が欲しい時はあります。 Microsoft365や、Adobe CCなど、macOSWindowsでしか使えないプロプライエタリなソフトウェアを使う、開発もほとんどの場合macOSネイティブで問題ない、でもDockerも使う、などのように主たる作業はmacOSでやりながらLinuxもちょっと使わないといけないということは多々あります。 VirtualBoxなどを利用することによって、仮想環境にLinuxをインストールし利用することはできますが、WindowsにおけるWSL (Windows Subsystem for Linux) のようにネットワークやファイルシステムが統合されたように見える環境を構築するのは面倒です。 そこで、"macOS subsystem for Li

    macOSでもWSLみたいなLinux環境を手に入れる - Qiita
    t_mori
    t_mori 2021/09/21
  • iSH を使って iOS 上で Laravel を動かす - Qiita

    はじめに オープンロジのエンジニアで @ttaka と申します。 この記事は OPENLOGI Advent Calendar 2020 の18日目になります。 さて、先日 iSH という iOS 上で動作する Linux エミュレーターが App Store に公開され、なかなか面白そうだったので、手元の iPad mini でローカル開発環境が構築できるか試してみました。 iSH のインストールと設定 まずは App Store から iSH Shell をインストールします。そして、起動するとこのような root でログインした状態の画面が表示されます。 標準キーボードの左上に、Tab/Ctrl/Esc/カーソルキーのボタンが追加され、これがあれば大抵のコマンドライン操作は困らないのと、設定ボタンから他にもカスタマイズできるので、操作性は申し分ないですね。 また、ベースは Alpin

    iSH を使って iOS 上で Laravel を動かす - Qiita
    t_mori
    t_mori 2021/09/17
  • POSIX 準拠のシェルスクリプトでは find | xargs よりも find -exec {} + を使うべき! - Qiita

    POSIX 準拠のシェルスクリプトでは find | xargs よりも find -exec {} + を使うべき!ShellScriptBashshellPOSIX はじめに find の出力を xargs にパイプで渡すというのはよく見かける使い方ですが、find -print0 | xargs -0 が使えない POSIX 準拠のシェルスクリプトでは find -exec {} + を使った方が良いです。安全かつ十分に速いからです。よく見かける -exec {} ; ではなく -exec {} + ですので間違えないようにしてください。多くのケースでは + の方が優れているのですが ; ばっかり使われているのを見ると、意外と知られてない気がします。 少しだけ予備知識として、-exec {} ; は -exec {} \; と ; をバックスラッシュでエスケープするのがよく見る使い方

    POSIX 準拠のシェルスクリプトでは find | xargs よりも find -exec {} + を使うべき! - Qiita
    t_mori
    t_mori 2021/09/14
  • 図書館オープンデータを使って図書館データポータルサイトを作りました - Qiita

    国立国会図書館では、さまざまなオープンデータが公開されています。 その中に「図書館及び関連組織のための国際標準識別子(ISIL)」試行版LODがあります。 これは、日全国の図書館に関する情報が網羅的にまとめられているRDFデータとなります。 提供されているデータはXMLファイルなので個別にデータを取得するためにはプログラムなどで処理する必要があるので、Webブラウザで各データを見やすく提供するWebサイト「図書館施設データポータル」を作成しました。 ここでは、 図書館施設データポータル を紹介します。 図書館及び関連組織のための国際標準識別子(ISIL)」試行版LOD とは 元データは、「図書館及び関連組織のための国際標準識別子(ISIL)」という図書館等につけられる国際的な識別子で、国立国会図書館では、このISILが付与される図書館の情報をオープンデータ(XMLファイルのRDFデータ)

    図書館オープンデータを使って図書館データポータルサイトを作りました - Qiita
  • すべてのウェブ開発者へ。人気GitHubリポジトリ9選 - Qiita

    記事は、Simon Holdorf氏による「9 Popular GitHub Repos For Every Web Developer」(2021年4月4日公開)の和訳を、著者の許可を得て掲載しているものです。 こちらもどうぞ すべてのウェブ開発者へ。人気GitHubリポジトリ10選 便利なツール、参考になる例など はじめに GitHubは、最近の(ウェブ)開発に関連するすべてのワンストップショップです。フレームワーク、デモ、あらゆる種類のコレクションなど、GitHubで見つけられないものはないでしょう。しかし、この膨大な量が問題です。あまりにも多くのレポジトリがあるので、おそらく聞いたことのないクールなものがあります。 そこで今回も、知っておくべき最も人気のGitHubリポジトリを紹介することにします。各リポジトリには少なくとも30,000個の星が付いています。 1. Realwor

    すべてのウェブ開発者へ。人気GitHubリポジトリ9選 - Qiita
    t_mori
    t_mori 2021/09/03
  • フロントエンドの慣習のまとめ - Qiita

    1. はじめに フロントエンドを始めたばかりの頃、参考書や参考サイトで当然のように使われているものの、特に說明がないような**「慣習」や「テクニック」**に困惑したり、その理由が気になった経験を思い出したので、その一部を簡単にまとめてみました。 2. HTML 2-1. iタグでアイコン HTML の興味深いテキスト要素 (<i>)は、何らかの理由で他のテキストと区別されるテキストの範囲を表します。例えば、技術用語、外国語のフレーズ、架空の人物の思考などです。英文においてはよく斜体で表示されるものです。 <i>: 興味深いテキスト要素 - HTML: HyperText Markup Language | MDN 仕様上は適切な使用方法ではなさそうですが、「Bootstrap Icons」や「Font Awesome」などでも採用されているように、普及している印象があります。 ちなみにHT

    フロントエンドの慣習のまとめ - Qiita
    t_mori
    t_mori 2021/08/26
  • 総当たり攻撃時のパスワード最大解読時間の表(by 上野宣)について分析した - Qiita

    昨日、上野宣(@sen_u)さんがパスワードの総当りに要する時間の表をツイートされ、話題になっています。 総当たり攻撃時のパスワード最大解読時間の表を日語化した。https://t.co/cVSNUZkAKv pic.twitter.com/rtS8ixwOqi — Sen UENO (@sen_u) August 17, 2021 1万件を超えるリツイートがありますね。大変よく読まれているようです。しかし、この表は何を計測したものでしょうか。上野さんにうかがってもわからないようでした。 何ですかね?パスワード空間が大きくなると解読に時間が掛かるということくらいがわかりますかね。 — Sen UENO (@sen_u) August 17, 2021 一般に、パスワードの総当たり攻撃(ブルートフォースアタック)というと、以下の二通りが考えられます。 ウェブサイト等でパスワードを順番に試す

    総当たり攻撃時のパスワード最大解読時間の表(by 上野宣)について分析した - Qiita
    t_mori
    t_mori 2021/08/18
  • エンジニア・プログラマにしか使えないSNSを作ってみた話 - Qiita

    はじめに 通常のSNSで胡散臭い人が多いと感じてしまいました プログラミングスクールが流行り、エンジニアになって億稼いでます!みたいな・・・ そこで、当のエンジニア・プログラマしか使えないSNSを作ってみました! つまり、WebApi提供のみのSNSです 一般ピープルが使うようなフロントエンドなんてありません!! Postmanなり、なんなりを使って叩いてください エンジニア・プログラマしかWebApiが叩けないであろうという考えなので、 エンジニア・プログラマにしか使えないSNS!ということです この記事を見ている、プログラマ・エンジニアの方であれば使えますよね?😁 実際、WebApiが叩くことが出来れば誰でも使えてしまうわけですが・・・。 2021/07/20 更新 このWebApiを作ったシステムについて書きました ソースコード公開しました CRUDのWebApi開発は不要!Js

    エンジニア・プログラマにしか使えないSNSを作ってみた話 - Qiita
    t_mori
    t_mori 2021/07/21
  • VPSサーバの比較(Lightsail,ConoHa,Vultr,DigitalOcean,UpCloud,Linode,LunaNode) - Qiita

    経緯 これまでDigitalOceanを使っていたのですが、 東京リージョンがないことなど微妙な不満が蓄積していたこともあり、 少し手を広げて調べなおしてみました。 選考基準は次のとおり。 時間単位での課金があること ストレージ領域がSSDであること 外部ストレージが別に作成可能なこと APIアクセスができること コマンドツールが存在すること 調査対象にしたVPSサービス ConoHa Amazon Lightsail Vultr DigitalOcean UpCloud Linode LunaNode 各VPSサービスの特徴と概要 ConoHa 国内サービスなので日語でのサポートが受けられる :-) 学生・教職員向けにプリペイドカードの割引がある 適用サーバを付替可能な長期割引「VPS割引きっぷ」がある 誕生月に500円分のクーポンがもらえる 外部ストレージとしてオブジェクトストレージ

    VPSサーバの比較(Lightsail,ConoHa,Vultr,DigitalOcean,UpCloud,Linode,LunaNode) - Qiita
    t_mori
    t_mori 2021/07/19
  • git rebaseでsquashした場合とfixupした場合の違い - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    git rebaseでsquashした場合とfixupした場合の違い - Qiita
    t_mori
    t_mori 2021/07/19
  • OAuth 2.0 + OpenID Connect のフルスクラッチ実装者が知見を語る

    認証は単純な概念で、別の言葉で言えば人確認です。Web サイトにおける人確認の最も一般的な方法は ID とパスワードの組を提示してもらうことですが、指紋や虹彩などの生体情報を用いた人確認方法もありえます。どのような確認方法だとしても (ワンタイムパスワードを使ったり、2-way 認証だったりしても)、認証とは、誰なのかを特定するための処理です。開発者の言葉でこれを表現すると、「認証とは、ユーザーの一意識別子を特定する処理」と言えます。 一方、認可のほうは、「誰が」、「誰に」、「何の権限を」、という三つの要素が出てくるため、複雑になります。加えて、話をややこしくしているのは、この三つの要素のうち、「誰が」を決める処理が「認証処理」であるという点です。すなわち、認可処理にはその一部として認証処理が含まれているため、話がややこしくなっているのです。 認可の三要素をもう少し現場に近い言葉で表

    OAuth 2.0 + OpenID Connect のフルスクラッチ実装者が知見を語る
  • 公開鍵暗号RSAの数的構造 - Qiita

    2のべき乗は決して11の倍数にはなりませんから、余りは1~10の高々10通りしかありません。なので、必ず周期的に繰り返しを見せるのですが、ちょうど11乗したところで元に戻ります。1乗と11乗で結果が同じになっているので周期は10です。 ※べき乗する元の数によっては11乗に辿り着く前に元に戻ることもあるのですが、11乗の時点で元に戻っているのは変わりません。 一般の数式としては $a^p~\equiv~a~~\bmod~p~(~p:素数~)$ で、これは数学者の名前にちなんでフェルマーの小定理と呼びます。 上の表はちょうど $a=2,~p=11$ のケースに該当します。 RSAの数的構造 では、導入で説明したトピックを元に、RSAの構造を見ていきます。 なお、以下では2つの素数を使うポピュラーな方式について説明しますが、一般には3つ以上の複数の素数を使うこともできます。 2つの周期の組み合わ

    公開鍵暗号RSAの数的構造 - Qiita
    t_mori
    t_mori 2021/07/19
  • CentOSなどで使う、EPELってなんだ? - Qiita

    TL;DR EPELは、Extra Packages for Enterprise Linuxの略 エンタープライズLinux用の高品質な追加パッケージセットが含まれている Red Hat Enterprise Linux、CentOS、Scientific LinuxOracle Linuxなどでの利用に限定されるものではない 使う場合は自己責任で CentOSに関するリポジトリ CentOSおよび、サードパーティ製のリポジトリに関する一覧は、こちらのページに記載があります(完全なリストではないようですが)。 Available Repositories for CentOS 大きく、CentOSが提供するリポジトリと、サードパーティ製のリポジトリがあり、EPELはサードパーティ製のリポジトリに該当します。 サードパーティ製のリポジトリに関する注意点は、こちらです。 WARNING:

    CentOSなどで使う、EPELってなんだ? - Qiita
    t_mori
    t_mori 2021/07/19
  • expectやsshpassを使わずにシェルでSSHパスワード認証を自動化する - Qiita

    はじめに 接続先サーバ側を変更できるのであれば公開鍵認証方式をおとなしく使いましょう。 どうしてもパスワード認証方式を使わないといけない場合は、接続クライアント側にソフトウェアをインストール可能ならSSHPassを使いましょう。巷にはexpectコマンドを使った方法があふれていますが、インストール可能な環境ならSSHPassのほうが良い (参考: sshにパスワードで自動ログインするならexpectよりもsshpassを使おう サーバ側もクライアント側も変更がどうしてもできない…残念ながら大人な事情でそういうこともあります。そんな時は記事が参考になるかと思います。 実現方式 sshにはSSH_ASKPASSという仕組みがあります。以下、引用。 SSH_ASKPASS パスフレーズを入力する際、ssh が端末から起動されているとssh はパスフレーズをその端末から要求します。ssh が制御

    expectやsshpassを使わずにシェルでSSHパスワード認証を自動化する - Qiita
    t_mori
    t_mori 2021/05/14
  • 混沌を極めるWindowsのssh-agent事情 - Qiita

    どうしてこうなった。 何の話? WindowsでのSSH-AGENTとSSHの話です。 この記事での用語: SSHとssh, SSH-AGENTとssh-agent この記事では、SSH-AGENTと書いたときにはカテゴリとしてのSSHエージェントを意味します。 ssh-agentと書いたときには、実行プログラムとしてのssh-agentコマンドを意味します。 同様に、SSHと書いたときにはカテゴリとしてのSSHクライアントを意味します。 sshと書いたときには、実行プログラムとしてのsshコマンドを意味します。 SSH-AGENTって? SSH-AGENTは、秘密鍵での署名を代行1してくれるツールです。 SSH-AGENT に秘密鍵をロードしてしまえば、あとはパスワード(パスフレーズ)入力なしでSSH認証できる agent forward機能を使うことで、SSHした先でさらにSSHすると

    混沌を極めるWindowsのssh-agent事情 - Qiita
    t_mori
    t_mori 2021/05/14
  • すべての開発者へ。すごいGitHubリポジトリ10選 - Qiita

    記事は、Simon Holdorf氏による「10 Extraordinary GitHub Repos for All Developers」(2021年4月4日公開)の和訳を、著者の許可を得て掲載しているものです。 こちらもどうぞ すべてのウェブ開発者へ。人気GitHubリポジトリ9選 面接のリソース、build your own X、優れたパブリックAPIのリストなど Photo by Vishnu R Nair on Unsplash はじめに GitHubは、あらゆる種類の技術、フレームワーク、ライブラリ、コレクションなどを共有するためのNo.1プラットフォームです。しかし、その巨大さゆえに、最も有用なリポジトリを探すのが難しいという問題もあります。そこで私は、すべてのソフトウェアエンジニアに大きな価値のある、素晴らしいリポジトリ10選を作ることにしました。すべてに多くのGitH

    すべての開発者へ。すごいGitHubリポジトリ10選 - Qiita
    t_mori
    t_mori 2021/05/04
  • 5歳娘「パパ、余分なpropsいっぱい書くんだね!」 - Qiita

    新しい記事もよろしくやで! 5歳娘「パパのReact、めっちゃ遅いね!」 とある平日 娘(5歳)「パパ、今日は何のお仕事してるの?」 ワイ「おお、娘ちゃん」 ワイ「今日はな、ショッピングサイトを作ってんのや」 今日のお仕事内容 ワイ「↓このデザインの通りに、コーディングをせなあかんのや」 娘「なるほどー」 娘「このショッピングサイトで商品を売りたい!っていうお店があったとして」 娘「そのお店の人が、最初にお店の情報を登録するためのページだね!」 ワイ「せやせや」 まずはデザインを眺めてみる ワイ「この店舗登録ページにはなぁ」 ワイ「↑こんな感じの」 ワイ「項目名と入力欄がセットになったパーツが何度も登場するから」 ワイ「そのためのコンポーネントを作ろうかなー、って」 ワイ「そう思ってたとこなんや」 娘「ふーん」 娘「ラベル付きテキストフィールド的なコンポーネントってことだね」 娘「どこまで

    5歳娘「パパ、余分なpropsいっぱい書くんだね!」 - Qiita
    t_mori
    t_mori 2021/04/12
  • Javascriptで巨大なテキストファイルを少しずつ読み込む - Qiita

    stack overflowのコードをアレンジして実現。 chunk_sizeずつファイルを読み込み、読み込んだファイルを一文字ずつ変数に追加、改行を見つけたら callbackを適用して変数のメモリを解放する。なお、全ての改行コードに対応しているが、出力時には \n に統一される。 残念ながら改行のないテキストデータには使えない。javascriptの変数に格納できる文字数の最大値(Chromeであれば268,435,440文字)を超えた時点でエラーが起きる(その前にタブが落ちる可能性もあるが)。 readBigTextForEachLine = (file, callback, chunk_size = 1024) => { let offset = 0; let text = ""; let slice = ""; let fr = new FileReader(); fr.onlo

    Javascriptで巨大なテキストファイルを少しずつ読み込む - Qiita
    t_mori
    t_mori 2021/04/12