並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 45072件

新着順 人気順

namespaceの検索結果81 - 120 件 / 45072件

  • AtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問 ~ - Qiita

    本記事を終えた次は? AtCoder Beginners Selection を終えたら、AtCoder 上の過去問が AtCoder Problems に集大成されていますので、片っ端から埋めるような気持ちで精進していきましょう。本記事の続編として AtCoder 版!蟻本 (初級編) AtCoder 版!蟻本 (中級編) AtCoder 版!蟻本 (上級編) AtCoder 版!蟻本 (発展的トピック編) も執筆しましたので参考にしていただけたらと思います。また、アルゴリズムとデータ構造に関するトピックを集大成した書籍として、 問題解決力を鍛える!アルゴリズムとデータ構造 (通称、けんちょん本) を上梓しました。ぜひ読んでみてください。 1. AtCoder とは AtCoder は以下のコンテストサイトを運営しています。今後常に訪れることになるサイトです: AtCoder コンテスト

      AtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問 ~ - Qiita
    • モダンPHPアンチパターン - Qiita

      アンチパターンなので、見出しの内容はすべてバッドノウハウです。 前に書いたやつ PHPのモダンな開発環境を紹介する - Qiita PHP - Functoolsを作った - Qiita PHPのlist()はタプル展開のための機能 - Qiita 関係ないけどこれも: シェル、ターミナル、コンソール、コマンドライン 追記: 本文中でとりあげた「怖い話」について、ちゃんと説明しました PHP - namespaceとBOMに何の関係があるのさ - Qiita ファイルの最後に?>を書く PHPコードは<?phpで始まり?>で締める。それがPHPの常識(キリッ ……そんなことはもう綺麗さっぱり忘れよう。PHPはテンプレートエンジンではあるが、Webアプリケーションを書く上では、もはやテンプレートエンジンとしての機能は求められなくなりつつある。 不要な?>を書いてはいけない理由は明確で、<?p

        モダンPHPアンチパターン - Qiita
      • ニコニココメントサーバーにおけるメモリ使用量増大問題の調査と対策 - ドワンゴ 研究開発ブログ

        はじめに コメントサーバーは、ニコニコ関連サービスのコメントを司るサーバーである。本稿は、ニコニコ広場で起こったコメントサーバーメモリ使用量増大問題について、我々コメントサーバー担当が行った調査と対策のまとめである。 今回のメモリ増大問題の解決にあたり、「仮説を立てる + 計測する→修正する→確認する」というパターンを繰り返した。このパターンは、ソフトウェアの様々な問題を調査するのに適用できる、基本パターンである。 コメントサーバー概要 コメントサーバーについて簡単に概説する。 コメントサーバーはニコニコ関連サービスのコメントを管理するサーバーである。基本的な機能は、新しいコメントの保存、およびコメントの出力である。ニコニコサービスのユーザーがコメントサーバーに直接触れることはなく、ニコニコのプレイヤーがコメントサーバーと直接やりとりを行う。ニコニコ動画の例でいうと、コメントサーバーを使用

        • Dockerの基礎・使い方がよくわかる記事・スライド11選

          オープンソースのコンテナ管理ソフトウェア・Dockerは、軽量な仮想実行環境であり、少ないリソースで効率よくアプリケーションを動かせるとして注目を集めています。また、2016年6月にはソフトウェアのマーケットプレイス「Docker Store」をオープンすることを発表し、プライベートベータ版として開始しています。 今後の利用拡大が見込まれるDockerの使い方について、わかりやすく解説している記事・スライドを11個ピックアップして紹介します。これからDockerをはじめたいと考えている方はぜひ参考にしてください。 Dockerの使い方の参考になるサイト・記事 隔離の技術Dockerの考え方と使い方の基本 / TECHSCORE BLOG http://www.techscore.com/blog/2014/08/05/introduction-to-docker/ Dockerの概要、よく

            Dockerの基礎・使い方がよくわかる記事・スライド11選
          • TypeScript + Vue.jsでのフロントエンド開発 - razokulover publog

            最近webアプリ(RailsのviewでVue.jsを使ってる感じの部分)をフロントエンドだけ切り離してリライトする業務をやった。 他の業務と並行で進め、実装からリリースまでの期間は大体営業日換算で2週間ちょいくらい。 バックエンドのAPIなどはすでに開発済みのものを使えたので純粋にフロントエンドのみ。 途中、既存の動いてるアプリへ機能追加などされていたので都度追従していく作業もやった。 そもそもリライトすることを決めたのは元のアプリが歴史的な経緯などあり、トランスパイルできる環境に無く、加えてAndroid4.2以降のwebブラウザに対応する必要があったため。素手でES5を書き続けるのは規模が大きくなっていくとだいぶ辛いしここらでちゃんと整えましょうということで重い腰をあげたという感じ。 フロントエンドライブラリとしてはVue.jsに元々は慣れてたこともあり、Vue.jsを利用。この夏に

              TypeScript + Vue.jsでのフロントエンド開発 - razokulover publog
            • バックエンド Web API に管理画面/管理機能を追加するアーキテクチャパターン - valid,invalid

              プレゼンテーションレイヤ、いわゆるフロントエンドがクライアントサイドで実装・実行されるアーキテクチャ (注 1) において、管理画面/管理機能をあとから追加する際にどのような実装パターンがあるのかを整理してみます。 注 1: Presentation Domain Separation の実践の中でも、物理的にプレゼンテーションロジックとドメインロジックを分離しているアーキテクチャです。 用語の整理 プレゼンテーションレイヤ 三層アーキテクチャにおける、システムの利用者へユーザインターフェイスを提供する層です。本記事では"フロントエンド"とほぼ同義で使います。 OSI 参照モデルの第六層ではないです。 バックエンド Web API とは プレゼンテーションを持たない Web API (HTTP プロトコルを用いてネットワーク越しに呼び出すアプリケーション) とします。 プレゼンテーションレ

                バックエンド Web API に管理画面/管理機能を追加するアーキテクチャパターン - valid,invalid
              • クリエイティブなC++ライブラリ "Cinder" の紹介 - Preferred Networks Research & Development

                こんにちは、人恋しい季節になってきましたね。 研究開発チームの祢次金(@nejigane)と申します。 本エントリではCinderというクリエイティブなコーディング向けのライブラリについてご紹介したいと思います。 Cinderとは Cinderとは、画像、音声、動画等を簡単に処理&可視化できる、主にビジュアルデザイン向けの強力なC++ライブラリであり、The Barbarian GroupのAndrew Bell氏が中心となってオープンソースとして開発が進められています。 同様の思想を持つProcessingやopenFrameworksによく似ており、C++で簡単に記述できるうえ、Windows、MacOSX、iOS(iPhone/iPad)といった複数のプラットフォームをカバーしています。 細かい機能/特徴の紹介は本家サイトに譲るとして、Cinderを極めるとどのぐらいクリエイティブな

                  クリエイティブなC++ライブラリ "Cinder" の紹介 - Preferred Networks Research & Development
                • 高機能バイナリトレーサqiraはどのように実装されているのか - るくすの日記 ~ Out_Of_Range ~

                  1. qiraとは qiraとは世界的なハッカー、George Hotz氏 (ジョージ・ホッツ - Wikipedia) によって開発された高機能バイナリトレーサーであり、qiraという名は(QEMU Interactive Runtime Analyser)の略である。 GitHub - BinaryAnalysisPlatform/qira: QEMU Interactive Runtime Analyser 略語を見れば分かるがuser mode QEMUを使用したバイナリ解析ツールであり、ELFなどの実行形式バイナリを実際に動作させて各命令のレジスタ、メモリへの操作を逐次記録する。 これらの記録はweb UIを通して好きな命令位置にカーソルを移動させるだけで見ることができ、その時のレジスタ、メモリの記録が再現される仕組みになっている。ソフトウェアのデバッグやCTFにおけるバイナリ解

                    高機能バイナリトレーサqiraはどのように実装されているのか - るくすの日記 ~ Out_Of_Range ~
                  • MeCabの辞書にはてなキーワードを追加しよう - 不可視点

                    MeCabは形態素解析のためのソフトウェアです。日本語を分かち書きするために使われるものとしては最も人気の高いものだと思われますが、チャットや掲示板に書き込まれるような崩した日本語や、正しく書かれた日本語でも新語を期待した通りに分かち書きしてくれないことがあります。これはMeCabの内部で使われている辞書が一般的な言葉を情報源としているわけではないことに関係があります。MeCabというか、より一般的な話ですが以下のような認識が一般的かと思われます。 というのも、一番広く使われているであろう自然言語処理技術は形態素解析(単語分かち書き、と言ったほうがいいのかもしれない)であろうが、これは現在99%くらいの精度になっていて、すでに人間がやるより遙かに高精度で行えるのだが、これだけ高い精度が出せるのは新聞記事を相手にしたときだけであって、それは新聞記事をコーパスとして用いる機械学習により形態素解

                      MeCabの辞書にはてなキーワードを追加しよう - 不可視点
                    • コンテナ導入概要資料2018

                      3. お持ち帰り 3 Key Takeaways 1 コンテナはサーバ 仮装化技術の延長 線上ではない 2 コンテナはプロセス をisolate(分離)して 動かす複数の技術 3 オーケストレーション は複数のコンテナ等 の計算資源を束ねる  従来のハードウェア仮想化による 計算資源の効率的な利用が目的 ではなく「クラウド・ネイティブ」に よる更なる活用のため  スマートフォンの普及は常時利用・ 継続開発が必要なシステムに  労働生産性向上は、開発や運用 スタイルの変化も促す https://cncf.io https://docker.com https://kubernetes.io  アプリケーションの移植性を高め る実装として広く普及した Docker  namespace(名前空間)でプロセ ス空間やファイルシステムやネッ トワーク等を分ける技術と、 cgroups(コ

                        コンテナ導入概要資料2018
                      • にひりずむ::しんぷる - homebrew で最低限これだけはいれておけってやつ

                        新卒向けなんたらカレンダーの X日目です。 そもそも homebrew 使ってない まず Xcode を入れる必要がある。Xcode は App Store からインストールして、 Preference → Downloads → Components → Command Line Tools をインストール。 そしたらおもむろに以下のコマンドを打つ $ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)" おしまい。 sl $ brew install sl 必須コマンド。 zsh $ brew install --disable-etcdir zsh OS X は PATH をゴニョゴニョやられてむかつくので /etc/zshenv を読まないように --disable-etcdir 付きでインス

                        • Sinatra: README (Japanese)

                          This page is also available in English. 始めよう SinatraはRubyで下記のような最小労力で手早くウェブアプリケーションを作成するためのDSLです。 # myapp.rb require 'rubygems' require 'sinatra' get '/' do 'Hello world!' end gemをインストールして動かしてみる。 sudo gem install sinatra ruby myapp.rb localhost:4567 を見る。 ルート Sinatraでは、ルートはHTTPメソッドとURLマッチングパターンがペアになっています。 ルートはブロックに結び付けられています。 get '/' do .. 何か見せる .. end post '/' do .. 何か生成する .. end put '/' do .. 何か更

                          • Dockerのネットワーク構成 - 映画は中劇

                            Dockerのネットワーク構成について整理する。 図1: Dockerネットワーク全体図 物理NICが1個ついたDockerホストに2つのコンテナを立てると、図1のようになる。コンテナは172.17.X.Xのネットワーク内にいて、ホスト側には172.17.0.1のIPアドレスが付く。この構成自体は、VirtualBoxで言うところのホストオンリーネットワークと同じようなもの。異なる点として、Dockerネットワークは、ハードウェア仮想化ではなく、Linuxカーネルの機能であるvethペアとブリッジを組み合わせて実現される。 図2: vethペア veth (virtual Ethernet) は、図2のように、仮想NICのペアと、それをつなぐ仮想ケーブルを作る機能。ふたつの仮想NICはイーサネットで直接通信できる。 図3: ブリッジ ブリッジとは、LinuxマシンがL2スイッチ(スイッチン

                              Dockerのネットワーク構成 - 映画は中劇
                            • ブラウザで X86 のマシン語を動かす! Google 謹製 Native Client をさっそく試してみる - IT戦記

                              はじめに Google から、非常に面白そうなソフトウェアがリリースされました! その名も Native Client なんとブラウザ上で X86 のバイナリを動かしてしまうそうです。 これはすごい! さっそく試してみたいと思います。その過程を逐次更新していきます。 自分が試したときの環境 自分が試す環境は、以下の通りです。 Mac OS X Xcode の gcc (version 4.0.1 (Apple Inc. build 5465)) python 2.5.1 準備 では、さっそく準備をしましょう。 http://nativeclient.googlecode.com/svn/trunk/nacl/googleclient/native_client/documentation/getting_started.html を参考にやってみます。 環境一式をダウンロード まずは、以下

                                ブラウザで X86 のマシン語を動かす! Google 謹製 Native Client をさっそく試してみる - IT戦記
                              • Kubernetes-nativeなアーキテクチャ導入の手引き 先進的なクラウド環境を最強テストベッドで体験|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                Kubernetes-nativeなアーキテクチャ導入の手引き 先進的なクラウド環境を最強テストベッドで体験 Kubernetes-nativeなエコシステムを実現する最強テストベッド環境です。さまざまなミドルウェアを運用したマイクロサービスをフルgRPCなサービス間通信で実現するだけでなく、CI/CDと開発環境も用意しています。 こんにちは。株式会社サイバーエージェントのAI事業本部でインフラエンジニアをしている青山真也(@amsy810)と漆田瑞樹(@zuiurs)です。今回は、Kubernetesが好きな2人が考える最強のKubernetes-nativeなお試し環境を構築してみました。記事公開時点で、総コミット数が900に迫るリポジトリになっています。 現在、Kubernetesとそれを取り巻くエコシステムは急速に発達しており、便利なツールやミドルウェアが日々生まれています。これは

                                  Kubernetes-nativeなアーキテクチャ導入の手引き 先進的なクラウド環境を最強テストベッドで体験|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                • とほほのスタイルシート入門

                                  CSSリファレンス トップ > CSSリファレンス [ABC順] 概要 CSS入門 リンク サンプル 表記について CSS3関連規約 セレクタ * { ... } E { ... } ns|E { ... } E, F { ... } E.class E#id E F { ... } E > F { ... } E + F { ... } E ~ F { ... } E || F { ... } [attr] [ns|attr] [attr="val"] [attr~="val"] [attr|="val"] [attr^="val"] [attr$="val"] [attr*="val"] :any-link :link :visited :local-link :target :target-within :scope :hover :active :focus :focus-visi

                                  • リニューアル後のmixiを2カラム/750px幅化するユーザースタイルシートを書いてみた : akiyan.com

                                    リニューアル後のmixiを2カラム/750px幅化するユーザースタイルシートを書いてみた 2007-10-01 別に2カラム原理主義者というわけではないのですが、カラム変更オプションが無くなったのでついカッとなって書いてみました。 目次 適用前、適用後 適用前 適用後 解説 Firefox向けで、ユーザースタイルシートの適用は「Stylish」拡張をインストールすると便利です。 2カラムにするだけではなく、個人的にほとんど使わない機能へのナビゲーションまで削除しちゃってるので、ちょっと注意が必要です。リニューアル後のmixiのHTMLはid名とclass名が変態的なまでにきっちり設定されているのでCSSがわかる方はソース眺めつつ調整してください。ユーザースタイルシートの内容は以下の通り 調整 全体の横幅 750px化 全体を中央揃え フッターリンク左右の余白調整 非表示 右カラム全部 ロゴ

                                    • RubyによるビルドツールRakeの覚え書き

                                      RubyによるビルドツールRakeの覚え書き。興に乗ったので詳しく書いてみた。 2014/02/20 Rakeの作者、Jim Weirich氏が亡くなられました。安らかに… Rakeとは? インストール 単純なRakefile タスク ファイルタスク ルール ディレクトリ作成 タスクの説明 ファイルリスト クリーニング パッケージ作成 タスクの動的生成 テストタスク 複数のRakefileの連携 名前空間 参考URL Rakeとは? Rakeは、MakeをRubyで実装したものを超越したビルドツールである。 世間では、ビルドツールというとMakeやApache Antが有名で、よく使われている。 Rakeは、これらのいいとこ取りをした上で、特有のフィーチャーを追加した新しいビルドツールであり、複雑なビルドを柔軟に書きこなすことができる。その秘密は内部DSLという仕組みにあり、このおかげでビ

                                      • TypeScript の型定義ファイルと仲良くなろう - Hatena Developer Blog

                                        この記事は2016年に書かれた古い記事です。当時はまだTypeScript2.0も出ていないころで今とは状況がかなり異なっています。参考にする場合注意してください。 はじめに TypeScriptの型システム Declaration space Open-ended ここまでの確認 型定義ファイルを読み書きできるようになるために declare キーワード 既存のオブジェクトの型定義を拡張する グローバルなオブジェクトに対する宣言 module Export Assignments Relative or Non-relative module imports ES2015形式 実際の定義ファイル 既存の定義ファイルを拡張する declare global { } について Typings について おわりに インターン募集中 はじめに こんにちはアプリケーションエンジニアの id:t_k

                                          TypeScript の型定義ファイルと仲良くなろう - Hatena Developer Blog
                                        • プロを目指す人のためのTypeScript 本の感想 #ブルーベリー本

                                          自分も教える事が多いので、読み手にどういう風に学んでほしいか、自分がどういう風に伝えるべきか、という視点で読んだ。 1章・イントロダクション そもそもTypeScript とはなにかみたいな話。 コンパイルエラーが出ている状態ではプログラムが完成したとは言えません。 力強い コンパイルエラーをただ避けるのではなく、利用する気持ち で TypeScript プログラミングに臨みましょう。 初心者に型違反の向き合い方を諭す話。IDEの補助になるとか。 TS年表で取り上げてるのが特徴的。exactOptionalProperty を取り上げてたり。 TSの型はランタイムに影響しない、という話を何度も解説している。これは初心者の誤解がとても多いので、必要だと思う。何度いっても、伝わって欲しい人に伝わらないのだが… enum や namespace については意図的に解説しない。過去のTS独自路線だ

                                            プロを目指す人のためのTypeScript 本の感想 #ブルーベリー本
                                          • メンテのいらないソフトウェア - 誰かの役に立てばいいブログ

                                            ソフトウェアエンジニアとして働き始めて 20 年以上になります。 元々ソフトウェアでいろいろ作りたくて就いた職業なので、結構な数のプロダクトを開発してきました。 私がメインで開発したもので OSS として出ているものでは、 yrmcds: memcached クローンで、レプリケーション機能などを持つ usocksd: SOCKS4/5 サーバー & ライブラリ transocks: アプリのネットワーク通信を透過的に SOCKS サーバーにプロキシする透過プロキシ coil v2: Kubernetes の CNI ネットワークドライバ moco: MySQL を自動運用する Kubernetes オペレーター accurate: Kubernetes 上で namespace ベースのソフトマルチテナンシーを実現するためのソフトウェア などがあります。これらのソフトウェアの多くは、現役

                                              メンテのいらないソフトウェア - 誰かの役に立てばいいブログ
                                            • 【C#】C# の async/await は実際にどうやって動いているか。 - ねののお庭。

                                              はじめに 登壇版 Taskの本質 C# のイテレータ async/await Compiler Transform ExecutionContext builder.Start() の重要性 IAsyncStateMachine.MoveNext おわりに はじめに C#er は呼吸するように使っている async/await。 そんな async/await について、先日 Stephen Toub 氏 (.NET の中の人。中心人物の一人。) が How Async/Await Really Works in C# という非常に面白い記事を投稿していました。 この記事では Stephen 氏の記事をベースに、C# において async/await は実際どうやって動いてるの?というお話をしていきます。 以前に C#での非同期メソッドの分析。 という翻訳記事を書いたのですが、元になった記

                                                【C#】C# の async/await は実際にどうやって動いているか。 - ねののお庭。
                                              • 開発メモ: 50行のC++コードでWebサーバを実装する

                                                「Kyoto Tycoonの設計 その四」改め、50行でWebサーバを書く方法を解説する。前回実装した「多重I/Oマルチスレッド汎用TCPサーバ」の上にHTTPの処理を行う層をつけて、「多重I/Oマルチスレッド汎用HTTPサーバ」を司るクラスを実装してみたので、それを使ってちょちょいとやる。 URLクラス HTTPと言えばURLが使えないと意味がない。URLは単なる文字列として扱ってもよいのだが、様々なシーンで分解や加工が必要になり、その処理はなにげに複雑で面倒なので、予めクラスとして導出しておいた方がよいだろう。 class URL { public: // 文字列のURLを解析して内部構造を作る void set_expression(const std::string& expr); // スキーム要素を設定する void set_scheme(const std::string&

                                                • 5分でわかる最近のPHP - 2011夏

                                                  ここ最近のPHP界隈では、興味深いニュースが続いています。最近PHPを追っかけていない人へ少しづつご紹介。 近頃、PHP界隈でホットなニュースを5つ、つまみぐいして見てみましょう。 1. PHP5.4.0-alphaリリース! PHPの次期バージョン、5.4.0-alphaがリリースされました。 まだ alpha1 ですが、すでに Traits や Array dereferencing support など様々な機能追加が行われています。 特に Traits は面白い機能で、いずれはこれを利用したフレームワークの登場が考えられます。ぜひ使ってみたい機能ですね。 今後、正式リリースに向けてさらなる新機能が追加されていくようなので、目が離せません。 PHP 5.4 alpha1 released 現状のPHP環境はそのままで、PHP 5.4 を試す PHP5.4 alpha1リリース! PH

                                                  • メルカリ社内ドキュメントツールの Crowi を Kubernetes に載せ替えました | メルカリエンジニアリング

                                                    最近、SRE になった @b4b4r07 です。今回は、直近のタスクだった社内アプリを Kubernetes に載せ替えた話をします。 前置き メルカリでは全社的 1 に Crowi という Markdown で書ける Wiki アプリケーションをナレッジベースとして採用しています。 site.crowi.wiki 以前は、プロダクトチームは Qiita:Team、コーポレート系は Google Sites と言った具合に、各部署ごとに異なるドキュメントツールを使っていました。これではよくないと、エンジニアに限らず誰でも書きやすく参照しやすい Wiki のようなサービスが必要とされ、Crowi の採用に至りました。 まずはみんなに使ってもらうために広めていこうと、試験的に導入が始まったため、今回の移行話までは 1 台の EC2 インスタンスにアプリケーションサーバと Nginx、Mongo

                                                      メルカリ社内ドキュメントツールの Crowi を Kubernetes に載せ替えました | メルカリエンジニアリング
                                                    • ターミナル生活を快適にするための端末多重化ソフトウェアtmux入門 - MyEnigma

                                                      ターミナルマルチプレクサ tmux 入門posted with カエレバ戸田 薫 2012-12-30 Amazonで探す楽天市場で探すYahooショッピングで探す 目次 目次 はじめに インストール方法 Macへのインストール tmuxの使うべき理由 1 一本のssh接続で複数のターミナルが使える 2 ssh中にネットワークが切断されても、強制終了しなくていい 3. tmuxの状態が保存される。 4. 別のコンピューターからでも、同じセッションが使える 5. 他の人にセッションに同時に入ってもらって、作業を見せたりできる tmuxのコマンド一覧 セッションを作る 既存のセッションに繋がる 既存のセッションのリストを表示する セッションの削除 セッションの全削除 セッションのdetach セッションの名前の変更 時計モード Windowの作成 Windowの切り替え Windowのrena

                                                        ターミナル生活を快適にするための端末多重化ソフトウェアtmux入門 - MyEnigma
                                                      • C++で作るWebアプリケーション

                                                        14 views Boost.勉強会 #12で発表した「C++で作るWebアプリケーション」 ... More… Boost.勉強会 #12で発表した「C++で作るWebアプリケーション」 C++をJavaScriptにコンパイルするコンパイラ Emscriptenを使ってC++でブラウザ上で動くアプリケーションを開発する方法を解説します C++で作るWebアプリケーション Presentation Transcript そんなC++の進出を拒んできた領域C++はとてつもなく汎用的な言語である2013年6月22日土曜日 WEB2013年6月22日土曜日 サーバ クライアントこっちは割とどんな言語でも書ける問題はこっち2013年6月22日土曜日 JavaScriptWEBブラウザで動く物を作るために長らく使われてきた言語近代的な多くのブラウザが共通して対応している唯一の言語2013年6月22

                                                        • ビット演算 (bit 演算) の使い方を総特集! 〜 マスクビットから bit DP まで 〜 - Qiita

                                                          はじめに はじめまして。 NTTデータ数理システムでリサーチャーをしている大槻 (通称、けんちょん) です。 C や C++ を使用しているとしばしばビット演算を行う場面が出て来ます。 計算機リソースが限られている状況では、ビットを用いることでデータ量を少なく済ませたり、計算コストを小さく抑えたりすることができるメリットがあります。 本記事では、ビット演算を用いて実現できる処理について、簡単なものから高度なものまで集大成します。極力わかりやすく頑張って執筆しました。特に前半 4 つはビットの説明の中でもかなりわかりやすい方だと思います。後半の 7 つのテーマは比較的高度なアルゴリズムの話題ですので、フラグ管理やマスクビットについて詳しく学びたい方は前半 4 つを中心に読んでいただいて、後半 6 つは必要に応じて読んでいただければと思います。反対にビットの知識はあってビットを用いたアルゴリズ

                                                            ビット演算 (bit 演算) の使い方を総特集! 〜 マスクビットから bit DP まで 〜 - Qiita
                                                          • TOMOYO Linuxに学ぶ説得術 - 未来のいつか/hyoshiokの日記

                                                            昨日、TOMOYO Linuxメインライン化記念合同勉強会(カーネル読書会、セキュアOSユーザ会、まっちゃ445)に行ってきて、小崎さんが匿名掲示板でガチでレビューしていたお話を聞いたので、早速過去ログを読んでみた。http://tomoyo.sourceforge.jp/2ch/thread-2.txt (追記:2009/7/4 21:03 なぜか後半部分、アスキーアートの後が切れてしまったので、前半部分を若干カットして(略)の部分、その2を追加しました。) LKML (Linux Kernel Mailing List)というのはLinuxカーネルの技術的なことを議論するもっとも権威(?)あるメーリングリストで、ここで議論され合意されたものがLinuxの本体に取り込まれることになる。このLinuxの本家本元の本体(くどいな)のことをメインラインと呼ぶ。Linuxを創ったLinusさんに

                                                              TOMOYO Linuxに学ぶ説得術 - 未来のいつか/hyoshiokの日記
                                                            • 5年後には標準になっている可観測性のこと - Learning Opentelemetry の読書感想文 - じゃあ、おうちで学べる

                                                              はじめに 本稿は、オープンソースの可観測性(Observability)プロジェクトである OpenTelemetry を取り上げた書籍「Learning Opentelemetry」の読書感想文です。従来の可観測性の課題であったデータの分断を解消し、トレース、メトリクス、ログなどの様々なテレメトリデータを統合的に扱うことができる OpenTelemetry は、可観測性の分野における革命的な存在と言えます。 過去10年間で、可観測性はニッチな分野から、クラウドネイティブの世界のあらゆる部分に影響を与える数十億ドル規模の産業へと発展しました。しかし、効果的な可観測性の鍵は、高品質のテレメトリデータにあります。OpenTelemetryは、このデータを提供し、次世代の可観測性ツールと実践を開始することを目的としたプロジェクトです。 learning.oreilly.com 本書の想定読者は、

                                                                5年後には標準になっている可観測性のこと - Learning Opentelemetry の読書感想文 - じゃあ、おうちで学べる
                                                              • vimって極めればvscode並のIDEになるんじゃないの? - Qiita

                                                                個人用メモです。 *めちゃくちゃ昔の記事なのでasync系のプラグインが無かったりneovimじゃなかったり色々恥ずかしいですが、エンタメ的な気持ちで読んで頂ければ幸いです。 今回は、自分が味噌漬けに育ててきたvimを、初心者の方でもコピペで簡単に再現できるように3分で作っていきます。 ※中央上がエディタ画面、左がディレクトリツリー、右上がターミナル、下がエディタで開いてる機械学習ファイルの実行ログ。全てvimで出してます。 今回は以下の内容を紹介していきます。 インサートモードでもマウスでコピーアンドペースト ファイルのツリー表示 16言語の補完(ディレクトリ補完も有) vim画面でプログラム実行/出力 vim画面でシェルを開く 各種便利ショートカット 覚えづらいコマンドのショートカット化 まずは必要なライブラリのインストール " setting if has('vim_starting

                                                                  vimって極めればvscode並のIDEになるんじゃないの? - Qiita
                                                                • 【結果発表】女子大生プログラマの心を鷲掴みにした最強のコード8選 - paiza times

                                                                  2014年4月16日より開始したpaizaオンラインハッカソン(略してPOH![ポー!])Vol.2「女子大生とペアプロするだけの簡単なお仕事です!」ですが、2014年5月14日いっぱいをもって開催期間を終了いたしました。(コードの実行自体は引き続き可能です)。 今回のオンラインハッカソンも数多くご参加いただきありがとうございました! 今回はpaizaオンラインハッカソンVol.2のレポート、最終結果と、提出された各プログラミング言語毎の最速コード(女子大生プログラマ木野ちゃんの心を鷲掴みにした最強コード)についてお届けします。 ■言語別 最速・最遅実行時間結果 POH Vol.2上でも掲載していましたが、まずはテストケース7(大規模データ)の最速・最遅実行時間、提出数です。 言語 最速実行時間 最遅実行時間 通過数 / 受験数 Java 0.04 秒 5.98 秒 327 / 1364

                                                                    【結果発表】女子大生プログラマの心を鷲掴みにした最強のコード8選 - paiza times
                                                                  • おっさんのためのModernC++入門ガイド(草稿) - dec9ue's diary

                                                                    みなさんはC++の読み書きができますか? 自信がある方、いつ頃勉強しましたか?もし20世紀に勉強したのであれば、その知識は相当古いです。実質現在のModernC++(C++11以降のC++)とは概念上の互換性がないので脳のアップデートが必要です。 自信がない方、文法は知っているけどなんとなく使いこなせていない方、マサカリ屋にあーだこーだ言われて大混乱している方。必勝パターンを身につければもっと楽にコードを読み書きできるようになるかもしれません。 この文章の目的は、ModernC++におけるメンタルモデル(考え方)や必勝パターンをざっくりと導入することでみなさんが楽にModernC++を読み書きできるようなお手伝いをすることです。主要な内容としてはムーブセマンティクスと右辺値 とその次の章でだいたいA4換算で15ページくらい?ほかは正直流し読みしてもらえるような内容です。また、内容的にはその

                                                                      おっさんのためのModernC++入門ガイド(草稿) - dec9ue's diary
                                                                    • 文章を書くことはプログラミングに似ている。 - CARTA TECH BLOG

                                                                      技術広報のしゅーぞー(shuzon__)です。 今日は「文章を書くことはプログラミングに似ている」という話をします。 参考書籍はこちら。論理が伝わる世界標準の「書く技術」 @soudai1025からのリクエストで社内ブログを一部編纂し公開しています。 文章を書くことはプログラミングに似ている。 文章を書くことはプログラミングに似ている。 なぜならば、抽象化すると、一連のトピックに対する意味のあつまりを区切り、扱う行為だからだ。 意味ごとに構造化する行為と思えば非常に似ている。 パラグラフ・ライティングは関数に似ている ここでパラグラフ・ライティング を紹介しよう。 パラグラフの構造 パラグラフ・ライティングは関数に似ている。 パラグラフ・ライティングは段落の先頭に「その段落が持つトピックの結論」を書く。 その後、前述の事実を用いた補足とロジックが続きトピックを補足する。 段落の最後に、議論

                                                                        文章を書くことはプログラミングに似ている。 - CARTA TECH BLOG
                                                                      • Chrome+HTML5 Conference「Webアプリの道も一歩から」講演資料を公開します - Hatena Developer Blog

                                                                        2011年8月21日(日)に開催されたChrome+HTML5 Conferenceにて、id:nagayamaとid:nanto_viが講演を行ったので、その資料を公開します。「Webアプリの道も一歩から 〜はてなブックマークの場合〜」と題し、公式Chromeウェブアプリ はてなブックマークの開発フローや利用技術について解説しました。発表は2部構成で、ディレクターのid:nagayamaがはてなでのChromeウェブアプリの開発フローに関して、エンジニアのid:nanto_viがウェブアプリで活用しているHTML5関連技術に関して述べています。 Webアプリの道も一歩から 〜はてなブックマークの場合〜 View more presentations from nagayama Web アプリの道も一歩から 実装について by nanto_vi スクリプトの設計 表示内容と URL の切り

                                                                          Chrome+HTML5 Conference「Webアプリの道も一歩から」講演資料を公開します - Hatena Developer Blog
                                                                        • ここが変だよ「WSL2」 自作ディストロ開発で発見した知られざる“バグ”と“事実”

                                                                          Kernel/VM探検隊は、カーネルやVM、およびその他なんでもIT技術の話題ジャンルについて誰でも何でも発表してワイワイ盛り上がろうという会です。佐伯氏は、WSL2においてあまり知られていないバグと事実について発表しました。 自己紹介 佐伯学哉氏(以下、佐伯):Kernel/VM online part4ですが、「ここが変だよWSL2」という日本語タイトルで、スライドは英語になっていますが、WSL2(Windows Subsystem for Linux 2)に関するいろいろなことを話します。 アウトラインですが、基本的にはランダムトークで小ネタをたくさん話します。なので、WSLとは何かとか、技術的には興味深いけれど公式のドキュメントがきちんと説明してること、つまりWSLgですね。技術的にはおもしろいのですが、公式が全部説明しているので、ここでは一切触れません。このトークは、僕が個人的に

                                                                            ここが変だよ「WSL2」 自作ディストロ開発で発見した知られざる“バグ”と“事実”
                                                                          • Kubernetes ベスト プラクティス 6 選 | Google Cloud 公式ブログ

                                                                            ※この投稿は米国時間 2020 年 1 月 8 日に、Google Cloud blog に投稿されたものの抄訳です。 数年前、Kubernetes はコンテナ化されたアプリケーションの管理をサポートし、大いに注目を集めました。今では、本番環境でのアプリケーションの大規模なデプロイや管理に広く使用されています。その過程で私たちは、Kubernetes と Google Kubernetes Engine(GKE)を最大限に活用するためのヒントやベスト プラクティスを収集してきました。ここでは、Kubernetes のデプロイと利用方法に関する Google Cloud ブログのなかから、最も人気の高い記事の一部をご紹介します。 リソース管理を容易にする Kubernetes の Namespace : Kubernetes 上でサービスを構築すると、単純なタスクが複雑になっていきます。一種

                                                                              Kubernetes ベスト プラクティス 6 選 | Google Cloud 公式ブログ
                                                                            • 運用に耐えるRailsによるWebアプリケーションの作り方 - Qiita

                                                                              2019/09/09加筆: 注意事項 多くの人に見ていただいていますが,この記事は2017年12月当時(Railsの最新バージョンが4.2ぐらい)に書かれたものであり,現在は内容がかなり古くなっています 2019年9月現在,筆者はRailsどころかwebアプリケーション開発からも離れているため,今の所アップデートする予定はありません(というかできません). そのため,本記事を参考にする場合は使用しているRailsのバージョンに合わせて適宜脳内補完しながら読んでいただければ幸いです. 本記事に書かれているようなベストプラクティスを検討する上で最善の方法は,Railsの公式リファレンスとRailsのコードそのものを読んで最善策を模索することです.Rails5以上を使っている場合は,こんな古い記事を読まずに,自分で最善の方法について検討することをおすすめします. 筆者は,2014年半ばから201

                                                                                運用に耐えるRailsによるWebアプリケーションの作り方 - Qiita
                                                                              • PHPのinterfaceとは何か

                                                                                久しぶりの更新です。最近、修行だと思って色々な本を読み漁っているのですが、やっとこさPHPのinterfaceが分かるようになってきた感じがあるので、まとめてみます。 インターフェースは、クラスから"ユーザー定義型"の能力のみを分離した言語機構です。PHPのそれはJavaのinterfaceのパクリです。 "ユーザー定義型"という単語を使いました。動的型付き言語のことを「型のない言語」と言う人がたまにいるんですが、とんでもねー間違いです。PHPにだって型はあります。変数が型を持たず、値が型を持っているというだけの話です。 interfaceを宣言する文法はクラスとよく似ていますが、キーワードclassの代わりにキーワードinterfaceを使います。中身は定義のないメソッドの宣言を書きます。なお、定数も含めることが可能です。 <?php interface FooInterface { c

                                                                                  PHPのinterfaceとは何か
                                                                                • ドメイン駆動設計は何を解決する手法なのか - stmn tech blog

                                                                                  こんにちは、リファクタリング大好きなミノ駆動です。 株式会社スタメンでは、企業エンゲージメント構築サービスTUNAG(ツナグ)の技術的負債解消と今後の持続的成長のため、ドメイン駆動設計(DDD)の導入を検討しています。 ところでDDDはとかく理解しづらく、何のためのDDDなんだという議論になりがちです。この記事では、DDDの真の主人公コアドメインを中心に、DDDが何を解決するものなのか、全体像を改めて整理します。 この記事で扱う内容 DDDが解決したい課題と解決方法の全体像。 この記事では扱わない内容 設計パターンの実例などの実装詳細。 大事な前提 〜利益を得るためのサービス開発 会社でのサービス開発は、趣味や道楽でやるものでしょうか。違いますね。ビジネスとして、企業活動としてサービス開発しています。当たり前の話ですが、利益を得られるように開発しなければなりません。 ドメイン駆動設計は、継

                                                                                    ドメイン駆動設計は何を解決する手法なのか - stmn tech blog