並び順

ブックマーク数

期間指定

  • から
  • まで

121 - 160 件 / 1397件

新着順 人気順

mkdirの検索結果121 - 160 件 / 1397件

  • Big Sky :: clib の使い勝手にマジ感動した

    C言語でアプリケーションを書くのは他の言語と比べて少し気合が必要ですよね。例えば HTTPからデータを取得する 取得したデータを json パースする 結果の一部を色付きで表示する こんな場合、C言語プログラマは 「HTTP か、じゃぁcurlかな」 「JSON か、parson かな」 「色表示か...エスケープシーケンスでもいいけどWindowsがなー...」 といった事を考え、そこから curl や parson といった資材の調達を始める事になります。途中で新しい機能を追加したくなり、それを外部ライブラリに頼る場合だとその都度資材を調達する必要があり、思考を停止しなければなりません。 この辺は ruby や perl、nodejs、golang 等の様に、ちょっとした手間だけで済ませたい物です。 またC言語の場合、ヘッダファイルはシステムの include フォルダに提供元が期待す

      Big Sky :: clib の使い勝手にマジ感動した
    • Subversion+svkでらくらく分散リポジトリ:第1回 Subversionを使おう|gihyo.jp … 技術評論社

      Subversionのセットアップから、基本的な操作方法を説明します。 Subversion概要 ソースコードのバージョン管理システムは、ソフトウェアの開発の中でもっとも重要なツールです。チームで開発を行なうときにソースコード管理システムは必須のツールの一つですが、ソースコードだけでなく様々なフィアルも管理できます。単にチームとしての利用だけでなく、個人のツールとしても威力を発揮します。筆者も、個人でバージョン管理システムを導入して、原稿やサーバの設定ファイルなどのドキュメントの管理をしています。 バージョン管理システムとして、以前はCVSが多くのプロジェクトで利用されていました。しかし、CVSは履歴を保持したままでのファイルの移動ができないなどの問題もありました。SubversionはCVSが抱えていた問題を解決するために開発されました。現在では、多くのプロジェクトでSubversion

        Subversion+svkでらくらく分散リポジトリ:第1回 Subversionを使おう|gihyo.jp … 技術評論社
      • Bashを使いこなすための必須コマンド71選 - Qiita

        はじめに mkdir, ls, cp, touch, mv, rm以上のコマンドにあんまり触れていない。。。という方、もっとコマンドを使いこなしたい!という方。。。必見。 基本的だが全部網羅するには大変な基本コマンド及びショートカットを溢れんばかり71選お届けします。たくさんありますので、表題に何のコマンドか書いてあるのをご活用ください。 一部、macユーザー向けとなっていることをご了承ください。 弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、こちらまで。 Ctrl を使ったショートカット 最初に、Ctrlを使ったショートカットを紹介します。 Ctrl-A 行頭移動 ↓ Ctrl-E 行末移動 ↓ Ctrl-W 直前一単語を削除 ↓

          Bashを使いこなすための必須コマンド71選 - Qiita
        • はじめてのGAN

          今回はGAN(Generative Adversarial Network)を解説していきます。 GANは“Deep Learning”という本の著者でもあるIan Goodfellowが考案したモデルです。NIPS 2016でもGANのチュートリアルが行われるなど非常に注目を集めている分野で、次々に論文が出てきています。 また、QuoraのセッションでYann LeCunが、この10年の機械学習で最も面白いアイディアと述べていたりもします。 “The most interesting idea in the last 10 years in ML, in my opinion.” –Yann LeCun GANは聞いたことはあるけれどあまり追えてないという人向けに基礎から解説していきたいと思います。それでは順に見ていきましょう。 目次 基礎理論 DCGAN 実装 論文紹介 まとめ 基礎理

            はじめてのGAN
          • Perlはもう古い、これからはDocker - ゆううきブログ

            本記事の内容はWEB+DB Vol.88 Perl Hackers Hub 第34回 に「DockerによるPerlのWebアプリケーション開発」という記事にまとめなおしていますのでそちらをご覧ください。 「Perl Hackers Hub」では、「DockerによるPerlのWebアプリケーション開発」と題して@y_uuk1さんにご執筆いただきました!Dockerの基本的な考え方からPerlのWebアプリ向けのDockerfileの書き方まで、実践的な内容です! #wdpress— WEB+DB PRESS編集部 (@wdpress) 2015, 8月 22 この記事は Perl Advent Calendar 2014 の19日目の記事です。 Plack/Carton で構築したモダンな Perl の Web アプリケーションの開発環境を Docker 化するための試行錯誤を紹介します

              Perlはもう古い、これからはDocker - ゆううきブログ
            • 類似楽曲検索システムを作ろう - 人工知能に関する断創録

              もう1年以上かけて音声信号処理の勉強をしてきました(Pythonで音声信号処理)。ここらで具体的なアプリケーションとして類似楽曲検索の実験をしてみたのでレポートをまとめておきます。言語はPythonです。 前に 類似画像検索システムを作ろう(2009/10/3) Visual Wordsを用いた類似画像検索(2010/2/27) という画像の類似検索に関するエントリを書きましたが、今回は画像ではなく音楽を対象に類似検索をやってみたいと思います! 今回作る類似楽曲検索システムは、従来からよくあるアーティスト名や曲名などテキストで検索するシステムや購買履歴をもとにオススメする協調フィルタリングベースのシステムとは異なります。WAVEファイルやMP3ファイルなどの音楽波形そのものを入力とするのが特徴です。たとえば、「具体的なアーティストや曲名は知らないけれど、この曲とメロディや雰囲気が似た曲がほ

                類似楽曲検索システムを作ろう - 人工知能に関する断創録
              • Snow Leopardにアップデートした後に気をつけること 主にMacPortsとrubygemsについて - mizchi log

                DP版ユーザーとして先走って3ヶ月前から使っていました。たぶん修正されないであろう問題があったので、ここに書いておきます。 MacPortsやRubygemsが怪しい挙動を示すんですね。MacPortsが依存を解決せずに中断したり、gems が モノによっちゃrequireできなかったり・・・。この二つ、開発者にとっちゃ致命的な問題。MacPortsはpkgのバージョンチェックでこけたので自分でビルドしたんですが、それが悪いのかと思って調べていたところ、海外の方に既に報告されていました。(日本だと全く情報がありませんでした) 参考 evolution - Snow Leopard with legacy macports and rubygems 超訳 LeopardのユーザーはおそらくOSに載っている標準のRubyを使っていて、既に大量のmacportsとrubygemsがあることだと思

                  Snow Leopardにアップデートした後に気をつけること 主にMacPortsとrubygemsについて - mizchi log
                • 【環境構築不要・スマホ/タブレットOK】東大松尾研のDeep Learningエンジニア育成講座『DL4US』を自習する - Qiita

                  PR: 以前の記事 のデータサイエンティスト向け講座のColab実行方法などをまとめ、 図解速習DEEP LEARNINGという本ができました。[2019年5月版] 機械学習・深層学習を学び、トレンドを追うためのリンク150選 - Qiitaでも、一部内容をご覧いただけます 参考: Colaboratoryユーザによる非公式の情報交換Slackを試験的に立ち上げました。リンクより、登録・ご参加ください。 TL;DR いつも満員抽選となる東大松尾研Deep Learningエンジニア育成講座『DL4US』の演習資料が公開された Google Colaboratoryを使えば、Python等セットアップ不要ですぐに始められる 全ノートブックを実行し、つまずき所も乗り越え方をまとめました セットアップ後は、スマホやタブレットのブラウザでもok GPUだって無料で使える! Colab概要はこちら:

                    【環境構築不要・スマホ/タブレットOK】東大松尾研のDeep Learningエンジニア育成講座『DL4US』を自習する - Qiita
                  • RubyでGUIアプリを作るならJRuby JavaFX Rawrで決まり!

                    Ruby大好きな私としては、一般配布するGUIアプリケーションとかもRubyで書きたい訳です。しかし、Windowsには標準でRubyは入っていないし、Macもバージョンが古い1.8.7が標準だしで、普段プログラミングなんかしない一般ユーザーさんでも簡単に起動できるアプリケーションを作るのがなかなか難しいという問題があります。 そういった問題から、クロスプラットフォームな言語・ライブラリ、例えばC++のQtなんかに一時期浮気したりもしたのですが、やっぱりRubyで書きたい。だってRubyが好きだから。 そして、色々調べまくった結果、はい、ついに「これだ!」と思えるRubyによるGUIアプリケーション開発環境を揃えることができました。それは… JRuby JavaFX jrubyfx Rawrこの組み合わせです…!それぞれ解説していきましょう。 JRuby … JavaでRuby!JRuby

                    • 1px の変化も見逃さない!ビジュアルリグレッションテスト導入で快適フロントエンド開発 - dely Tech Blog

                      こんにちは!dely でフロントエンドの開発をしています @all__user です。 今回は kurashiru のフロントエンド開発に導入されたビジュアルリグレッションテストについてご紹介したいと思います。 【反応を多くいただいた点について記事の最後に追記しました】 目次 目次 ビジュアルリグレッションテストとは 導入の背景 フロントエンドのテスト? SPA移行前後の比較 ツール reg-suit Loki Wraith BackstopJS テストのフロー GitHub + CodeBuild + BackstopJS ステージング環境 テストケースは Google スプレッドシートで管理 結果を S3 にアップロードして Slack に通知 まとめ 【追記】 運用が大変ではないか? 1pxの違いにそこまで工数かける? 広告が差し込まれたり変わっただけでテストが壊れるのでは? ビジュ

                        1px の変化も見逃さない!ビジュアルリグレッションテスト導入で快適フロントエンド開発 - dely Tech Blog
                      • 2回目のC言語で『12ステップで作る組込みOS自作入門 』の通りに組込みOSを作ってみた - 三等兵

                        12ステップで作る組込みOS自作入門 出版社 : カットシステム (2010/05) 発行日 : 2010/05 前回の初めてのC言語で『30日でできる!OS自作入門』の通りに初めてのOSを作ってみた - 三等兵は汎用OSでしたが今度は組込みOSです。参考書は『12ステップで作る組込みOS自作入門 』です。こいつぁすげえや。丁寧に仕上げられた良書でした。 「組込み」とタイトルがついているので興味を示す層が狭そうですが、プログラムを書く多くの人にとって役立つ内容だったと思います。 前回は必死にわかんないーわかんないーを連呼しつつ頭を抱えて苦行みたいな感覚でやっちゃいましたけど、今回はそんな苦労もあったからか余裕を持って楽しめました。 本書ではWindowsだけではなくLinuxでも開発できるよう解説されているのでどんな環境でも問題ありません。Linux入れるのがめんどくさかった私は例によって

                          2回目のC言語で『12ステップで作る組込みOS自作入門 』の通りに組込みOSを作ってみた - 三等兵
                        • 開発に便利なタスクランナー「gulp」で出来る事、導入方法などをまとめました |https://wp.yat-net.com/name

                          2015年 09月 10日 開発に便利なタスクランナー「gulp」で出来る事、導入方法などをまとめました カテゴリ: gulp タグ:gulpタスクランナー タスクランナーの一つであるgulp(ガルプ)。使い出すとすごく便利で今ちょっと手放せない開発ツールの一つなんですが、使ってない人からすると、導入コストとか学習コストが気になって、まだ手を出してないという方もいますよね。なので、今回導入用の記事を書いたので、ちょっと気になってるという方、試してみたかったという方に役立てばいいなと思います。 1.タスクランナーとは? gulpで何ができるのか? 2.gulpに必要な環境を整える – Node.jsのインストール 3.gulpに必要な環境を整える – package.jsonの作成 4.gulpに必要な環境を整える – gulpfile.jsの作成 5.gulp-ejsを使った開発環境 6.

                            開発に便利なタスクランナー「gulp」で出来る事、導入方法などをまとめました |https://wp.yat-net.com/name
                          • Chromeで広告ブロックを使い続ける方法

                            2024年5月30日に、GoogleはChromeにおける「Manifest V2」の廃止を段階的に開始しました。このManifest V2を受けて広告ブロック拡張機能が使用不能になる可能性が浮上しているのですが、Manifest V2を強制的に有効化する設定を施すことでManifest V2にしか対応していない拡張機能も実行できるようになります。 Manifest V2 のサポート タイムライン  |  Chrome Extensions  |  Chrome for Developers https://developer.chrome.com/docs/extensions/develop/migrate/mv2-deprecation-timeline?hl=ja Chrome Enterprise のポリシーリストと管理 | ドキュメント https://chromeenterp

                              Chromeで広告ブロックを使い続ける方法
                            • A Visual Guide to SSH Tunnels: Local and Remote Port Forwarding

                              Bridge vs. Switch: What I Learned From a Data Center TourNetworking Lab: Ethernet Broadcast DomainsNetworking Lab: L3 to L2 Segments MappingNetworking Lab: Simple VLANDon't miss new posts in the series! Subscribe to the blog updates and get deep technical write-ups on Cloud Native topics direct into your inbox. TL;DR SSH Port Forwarding as a printable cheat sheet. SSH is yet another example of an

                                A Visual Guide to SSH Tunnels: Local and Remote Port Forwarding
                              • リソースモニタリングツール「CloudForecast」入門 - As a Futurist...

                                kazeburo さんが開発をされているサーバリソースの可視化ツール「CloudForecast」ですが、個人的に使ってみていてとても使いやすいなと思っています。もっと使ってくれる人が増えるといいなと思い、自重せずに入門エントリを書いてみました。 CloudForecast って何? そもそも何なの?という話ですが、CloudForecast とはリソースのグラフ作成ツールとして有名な「RRDTool」の薄いラッパーとして作られています。記述言語は Perl ですので、Perl と RRDTool の使い方が大体分かっている人にとっては導入さえしてしまえばかなりかゆいところまで手が届く=カスタマイズが簡単かつ自由自在なツールだと思います。とりあえずのイントロとしては kazeburo さんの YAPC::Asia 2010 でのこちらのスライドをご覧頂ければと思います。 RRDTool っ

                                  リソースモニタリングツール「CloudForecast」入門 - As a Futurist...
                                • ウノウラボ Unoh Labs: Linuxをネットワーク経由で自動インストールする方法(前編)

                                  miyakeです。今回は近頃流行りの、サーバの自動インストール方法をご紹介します。 1エントリにまとめるには内容が多かったので、2回に渡って書きたいと思います。ひとまず今日のところは「ネットワークブートから手動インストール」までです。 自動化の部分を期待された方は申し訳ありませんが、次回のエントリをお待ちください(普段より早めに書きたいとは思います)。 ウノウラボでは「 ベンチャー流サーバ構築のススメ(ソフトウェア編)」と題して、OSをインストールではなくコピーする方法をご紹介しています。両者を簡単に比較してみると、それぞれ以下のような特徴があります。 ■OSコピーのメリット 新サーバの環境構築の手間がほとんどない 最低限、IPアドレスの設定だけ変更すればすぐに実践投入できます。 完全に同じ構成のサーバを用意出来る 当然ながら、インストールされたパッケージだけでなく、サーバ内のファイルも同

                                  • CentOS 5 の初期設定 | Carpe Diem

                                    CentOS 5.x をインストールしたあと、いろいろと初期設定を行っています。今は、サーバ用途の場合 kickstart の %post セクションでいろいろな初期設定をまとめて行って自動化しています。kickstart は、別の機会に公開するとして、今回は %post セクションで行っている初期設定を順番に紹介します。紹介する順序は、順不同です。 NOZEROCONF を設定する 余計なネットワーク経路を作らないために、/etc/sysconfig/network に次の設定を追加します。APIPA という仕組みを使う場合は必要です。 NOZEROCONF=yes IPv6 を無効にする IPv6 を使っていないので、/etc/modprobe.conf に次の設定を追加します。 alias net-pf-10 off alias ipv6 off ifdown-eth にバッチをあて

                                    • さくらのVPSのプラン乗り換えをした - YAMAGUCHI::weblog

                                      はじめに こんにちは、Python界の情弱です。いま「さくらのVPS 512」を借りてるんですが、プランが変更になって1Gが同じ料金で使えるようになりました。いまなら乗り換えると1ヶ月無料になるっていうんで、ちょろっと移行してみました。 「さくらのVPS」ご利用中のお客様の新プラン乗り換え優遇施策の実施について(4/5追記) | さくらインターネット ちなみに、今日から会社勤めとなった方々、おめでとうございます。とりあえずIT系に入って技術職するなら「さくらのVPS 1G」を1年分借りて、次のような本でLinuxサーバの管理なんかをしてみるのをおすすめします。rootがもらえるのでやりたい放題です。ハードウェアを買うわけではないので狭い家でも関係なくサーバの管理ができて、グローバルIPも取得できてWebアプリケーションも公開できます。「俺プログラマだから!」って人もLinuxの簡単な管理く

                                        さくらのVPSのプラン乗り換えをした - YAMAGUCHI::weblog
                                      • Linux サーバーを強固にする

                                        原文 は、2015 年 8 月 5 日に掲載されました。 著者は、家にファイル サーバーを 1 台と、サイト、メール サーバー、およびクラウド ストレージ サーバーとして 3 台の Live サーバーを持っています。 ホーム サーバーのセキュリティについては、外部と接続していないため、それほど心配していません。しかし、他の 3 台については、適宜保守をしています。サーバーを構築したいと考えている Linux 初心者が注意すべき点について、本文献で説明します。 必要なものをインストールする サーバーを構築する時、だいたいの人は、「40GB の SSD だから、欲しいサービスをなんでもインストールできる」と考えがちです。間違いではありません。しかし、そう簡単ではありません。どんなに強固なサーバーでもどこかに弱点があり、パッチが当たっていない部分があるため、乗っ取られる危険があります。 ですから

                                          Linux サーバーを強固にする
                                        • Knife-ZeroをマスターしてChef Soloの引退に備えよう! | さくらのナレッジ

                                          今年の6月にChef Soloは役割を終え、今後引退への道をたどると言うアナウンスがChefの公式ブログでありました。Chef Soloがなくなるということは、必ずChef Serverが必要になると言うことでしょうか?答えはなんとYesです。 しかし安心してください。そのためにChef Zeroが用意されています。一言で言うと、Chef Zeroはローカルで動かせるChef Serverです。 そしてChef Clientをローカルモードで動かすことでローカルのChef Zeroに接続するため、別のChef Serverは必要ありません。要するにChef Soloと同じような感覚でChefを使い続けることができます。 更にKnife-Zeroを使うとChef Solo同様にセットアップ先のマシンにChef Clientを簡単に入れることができます。そこで今回はこのKnife-Zeroを使

                                            Knife-ZeroをマスターしてChef Soloの引退に備えよう! | さくらのナレッジ
                                          • リモートの Linux サーバを開発環境にする

                                            これまで Macbook Pro を開発環境としていたんだけど、価格は高いし Docker for Mac は重いしでいいことないなということで Linux の開発環境に移ることにした。前職の最初の数年はすべて VM(当初は jail)にログインして開発していたのでその頃に戻った感じ。ただ GUI は macOS が何かと楽なので Intel NUC を購入して自宅に置いてリモートでログインして使っている。Core i7、メモリ 64GB で10万ちょいと安いのにめちゃくちゃ快適でさいこう。 ここからは備忘録としてリモートを開発環境とするうえで実施した作業を残す。あと作ったものもあるので宣伝。 外部からログインしたい自宅以外からも使うだろうということで(最近京都からリモートで働くこともあり)、VPN サービスとして Tailscale を導入した。 Best VPN Service for

                                              リモートの Linux サーバを開発環境にする
                                            • [意訳]私がGulpとGruntを手放した理由 - Qiita

                                              このポストは、Why I Left Gulp and Grunt for npm Scriptsを筆者の許諾を得て意訳したものです。間違いがありましたら、ご指摘いただけると幸いです。 (以下、訳) 私はGulpとGruntが不要な抽象化レイヤーだと気づきました。npmのscriptsはとても強力で、そっちの方が便利だったりします。 例を挙げましょう 私はかつてはGulpが大好きでした。しかし結局のところ、100行ものgulpfileと大量のgulpプラグインを扱うハメになりました。Gulp上でWebpackやBrowsersync、Mochaなどを統合するのは本当にたいへんでした。なぜでしょうか?それは、プラグインによってはドキュメントが不十分だったり、APIの一部しか公開されていなかったためです。 これらを解決しようと思えばできました。しかしなんと それらのツールを直接使用すると不具合が

                                                [意訳]私がGulpとGruntを手放した理由 - Qiita
                                              • 横断検索で社内情報共有を加速させる - Hatena Developer Blog

                                                アプリケーションエンジニアの id:alpicola です。 このエントリは、はてなエンジニアアドベントカレンダー2018の24日目の記事です。昨日は id:miki_bene のIntelliJを使ってPerlアプリケーションの開発をするでした。 背景 横断検索のアーキテクチャ 閲覧可能範囲の実装 検索精度を高める工夫 形態素解析器Sudachiの使用 N-gramインデックスの併用 おわりに 背景 はてなでは業務の中で得た知見や考えたことなどを書き残し、社内外でどんどん共有していくオープンな文化があります。こうやって発信された情報はエンジニア同士で相互によいインプットになってきました。一方で、情報がそれを必要としている人に必ずしもアクセスしやすくないという課題も抱えています。 発信される情報の量が多く、少し時間が経った情報はすぐ流れてしまう 社内でグループウェア、GitHub Ente

                                                  横断検索で社内情報共有を加速させる - Hatena Developer Blog
                                                • 授業でFirefoxにコントリビュートした話 - /entry/yyyy/MM/dd/:id

                                                  本記事は東京大学工学部電子情報工学科の「大規模ソフトウェアを手探る」という実験の報告記事です 学校の授業でOSSにコントリビュート? 東京大学工学部電子情報工学科にはあらゆる工学系学科の例に漏れず「実験」の授業があります。 実験の内容はいくつかのテーマの中から選択することができ、例えば 「OpenCV/OpenGLによる映像処理」 「情報可視化技術とデータ解析」 「AIロボットを作ろう」 などのテーマが用意されています。 私はその中から 「大規模ソフトウェアを手探る」 というものを選択し、 その結果としてFirefoxのJavaScriptエンジンである SpiderMonkeyにコントリビュートすることができました。 コミットログ1(私の名前のコミット): https://hg.mozilla.org/mozilla-central/rev/7371550c7fc5 コミットログ2(ペア

                                                    授業でFirefoxにコントリビュートした話 - /entry/yyyy/MM/dd/:id
                                                  • フリーフォントM+を丸ゴシック化 ― Rounded M+ - itouhiroはてなブログ

                                                    M+(エムプラス)フォント wikipedia:M+ FONTS を丸ゴシック化 wikipedia:丸ゴシック体 しました! Rounded M+(ラウンデッド・エムプラス)という名前です。 ダウンロード 追記 2013-07-05 MM様が、より新しいRounded M+を作成されました! http://jikasei.me/font/rounded-mplus/ 漢字を多く含みますので、ここで配布しているのよりオススメです。 ※2012-02-29 一部の文字(全角の0〜7)がおかしい問題を修正しました。 ※2012-02-27 フォント名の問題(Windows7のフォントフォルダで見ると「Rounded M+」ではなく「M+」フォントにインストールされる)を修正しました。 フリーフォントです。 プロポーショナル(可変幅) Rounded M+ 1p http://sourcefor

                                                      フリーフォントM+を丸ゴシック化 ― Rounded M+ - itouhiroはてなブログ
                                                    • 10分でつくる、プロジェクト管理ツール"Trac" - Unix的なアレ

                                                      Tracの構築ってなかなか面倒ですよね。自分も初めて作ったときはいろいろと手間取ったことを覚えています。 とくにソースからいれるとなると、いろいろとやらなければいけません。パッケージも用意されていますが、日本語化をする場合などいろいろと面倒があります。 今回も前回に引き続き、簡単にTracのインストールを行う手順を紹介したいと思います。 事前準備 まずは、以下の手順を行っていることが前提です。 10分で作る、Subversionレポジトリ - UNIX的なアレ そのため、動作環境は以前と同様です。試してみたところ、Ubuntuでも同様の手順でいけるようです。 OS Debian Linux etch Protocol http Web Server Apache2.2.3 さて、それでは構築していきましょう! パッケージのインストール さて、Tracを使うにあたって必要なパッケージをインス

                                                        10分でつくる、プロジェクト管理ツール"Trac" - Unix的なアレ
                                                      • Terraform + fluentd + Docker + Puree で小さく始めるモバイル行動ログ収集基盤構築 | PSYENCE:MEDIA

                                                        Terraform + fluentd + Docker + Puree で小さく始めるモバイル行動ログ収集基盤構築 河合 航平 2015.07.07 1273 194192628259 こんにちは。 4月から新卒駆け出しインフラエンジニアとして日々奮闘しております河合です。 "モバイル行動ログ収集基盤" を "小さく" 始めたので、以下にインフラ構築からモバイルまでの設計までをまとめたいと思います。今回このログ収集基盤を作るにあたって私自身がこれまで経験したことのない技術・ツールを利用しましたので、それらの導入についてもご紹介いたします。 導入の背景 私は英単語サプリを中心にインフラを担当しています。 英単語サプリとは、聞ける・話せる・覚えてるをコンセプトとした高校受験からTOEICまで対策できる英単語学習のサービスです。 ユーザの分析によく使われるツールの1つにGoogle Analy

                                                          Terraform + fluentd + Docker + Puree で小さく始めるモバイル行動ログ収集基盤構築 | PSYENCE:MEDIA
                                                        • Rails4 + Fluentd + MySQL でランキング機能作ってみた - 筋肉とエンジニアリングで すべてを解決するブログ

                                                          アクセスランキングを作ってみよう! 今、Rails4 を使ってアクセスログからランキング作ってみたいなぁーと思ってたんですが、みんなどうやってんだろうって聞いてみたところ、 Fluentd ってのを組み込むだけで簡単に集計とかできるよーって話だったので、使ってみました。 Fluentd とは まず読み方は、 「ふるーえんとでぃー」であって、「ふるーえんど」とかじゃないっぽいです。d はたぶんデーモンの d 。 色々説明面倒なんで省略しますが、ログ収集元とか出力先が簡単に設定できて、自分の欲しい形でログ保持できますよーって感じっぽい。なので、 「シェルスクリプトで処理した tail の処理結果をファイルに」「nginx から出力されたアクセスログを mongoDB に」とかそういう処理を自前で書く必要なく、簡単な設定だけでいけちゃう。 詳しくは → 柔軟なログ収集を可能にする「fluentd

                                                            Rails4 + Fluentd + MySQL でランキング機能作ってみた - 筋肉とエンジニアリングで すべてを解決するブログ
                                                          • Docker Desktopの代替方法 - Windows and Mac編

                                                            はじめに 新方針でDocker Desktopが大企業での利用の場合は商用ライセンスの使用が必要になるようです。新料金体系は8/31から実施ですが、2022年1月31日まで猶予期間があります。 個人やスモールビジネス、あるいは教育やOSSプロダクトなどは継続して無料版のPersonalを利用できるようですが、従業員数250人以上/年間売り上げ10億円以上の会社が対象になるようです。今見てる限りだと部署とかチームみたいな契約の単位では無く会社規模なので、大きな組織に所属してるともれなく対象になりそうですね。 $5/userからなので基本的には運用性も含めて払う方が楽だと思いますが、金額の大小にかかわらず予算を取るのが大変な組織や会社自体はデカくても部署がインキュベーションなので予算が基本無い、とか色んなパターンもあるかと思います。 ちょうど、手元のPCでここ最近 Docker Desktop

                                                              Docker Desktopの代替方法 - Windows and Mac編
                                                            • Pull Request発行時にそのコミットIDでデプロイされた環境を自動構築してレビュー時/マージ前に確認しやすくする仕組み - トレタ開発者ブログ

                                                              インフラをアレしてる佐野です。Pull Request(以下、p-r)が発行されると、そのp-rのコミットIDでデプロイされた環境を自動構築する仕組みを作ったので、今日はそれについて。マージ直前の環境が立ち上がるのでレビューアはレビュー時にコードを追うだけでなく、ブラウザ/アプリの接続先をこの環境に向きかえることで実際のアプリケーションの動作も確認できるようになります。レビューが非常に捗ります。 動作 仕組み GitHubのWebhookについて 自動構築の処理 Dockerの活用 tmpfsの活用 まとめ 1. 動作 こんな感じです。ここで、この通知するボットおよびこの仕組みを以下、シャイニング・ウィザードと呼ぶことにします。シャイニング・ウィザードというのは好きなプロレスの技でして最初はこの基盤の仮名だったのですが、チーム内で定着してしまったのでもうこれでいいや的な…。ちなみに、Ama

                                                                Pull Request発行時にそのコミットIDでデプロイされた環境を自動構築してレビュー時/マージ前に確認しやすくする仕組み - トレタ開発者ブログ
                                                              • cron + α が欲しい時には ts(Task Spooler) のご利用をご検討下さいというメモ - ようへいの日々精進XP

                                                                おひさしブリーフ、かっぱです。 tl;dr 下図のように cron ジョブで定期的にスクリプトを生成して実行させようとした時、スクリプト完了する前に次の cron ジョブが走ってスクリプトが生成されて、そのスクリプトが実行されてしまうような状況に遭遇してどうしたもんかなと悩んでいたら ts というツールを見つけたので試してみた。 memo ts とは http://vicerveza.homeunix.net/~viric/soft/ts/ https://osdn.jp/magazine/09/01/20/0150258 スクリプトやコマンドを ts コマンド経由で実行することで、それらをジョブとしてキューに放り込んで順次実行してくれるツール。冒頭の構成に ts を加えると下図のようになり、cron の開始時間とスクリプトの実行時間の依存関係は切り離される。 導入 CentOS 6 に導

                                                                  cron + α が欲しい時には ts(Task Spooler) のご利用をご検討下さいというメモ - ようへいの日々精進XP
                                                                • Amazon EC2性能検証!気になるパフォーマンスをインスタンスタイプやリージョン毎に計測・比較してみた - 元RX-7乗りの適当な日々

                                                                  大手クラウドサービスであるAmazon EC2では、9種類ものインスタンスタイプ(サーバの種類)から、利用したいスペックのサーバを選択できます。また、EC2のサーバは、4ヶ所ものリージョン(アメリカ東海岸、同西海岸、ヨーロッパ西部、シンガポール)から稼動させる場所を選択することができます。 ここで、気になるのが、Amazon Web Servicesの説明ページで、各インスタンスタイプの公表スペック差異として、EC2独自のCPU単位である"ECU"の数値や、IO性能のModerate(中)やHigh(高)で、どのくらいパフォーマンスが違うのかが見え辛いといった点。 また、一部の場所ではパフォーマンスが出ていない等の話が以前に出ていましたが、4ヶ所のロケーション(Region)によって、各場所でのインスタンス性能が全く同じなのか等も気になるところ。 ここを解明すべく、各種ベンチマークを実行し

                                                                    Amazon EC2性能検証!気になるパフォーマンスをインスタンスタイプやリージョン毎に計測・比較してみた - 元RX-7乗りの適当な日々
                                                                  • Perlの開発環境構築メモ - hide-k.net#blog

                                                                    最近、社内で初対面の人に自己紹介すると「あ!twitterでfollowしてます。AKB好きな方ですよね?」と辱めを受けてることが多くて色々反省しています。 こんばんは。 先日、会社で新しいMac Book Airを支給されて開発環境を再構築して、せっかくの機会だったので自分の環境をメモりました。 YAPC::Asia 2010でtokuhirom氏の「モダンな Perl5 開発環境について」で大きく取り扱われたり、あちらこちらで散々エントリされていますが毎回ぐぐるのも面倒なのではっときます。 0. 下準備 gccや各種ライブラリが必要なので何はなくともXcodeをインストールします。僕はiOS SDK付きをダウンロードしてインストールしました。 ついでにhomebrewもインストールしておきます。 sudo dscl /Local/Default -append /Groups/staf

                                                                    • GNU GLOBALとvimで巨大なコードでも快適にコードリーディング

                                                                      人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 これまでも、多くの記事にされていて、恐らくKernelや巨大なコードを読んでいる人にとっては当たり前なのかもしれませんが、あまりに快適だったのとこれをきちんとやれてなかった事に自戒をこめて記事にしようと思います。grepとかscreenを駆使していた時間を返してほしい! 対象者 僕がLinux大好きなので、Linux上での動作を前提にしています。対象者はLinux KernelやApache HTTP Server等、数万から数十万、さらには数百万行のコードをじっくり読んでいきたいと考えている人におすすめしたいと思います。巨大なコードを何のツールも使わずに読むのはかなりきついはずです。しかし、今回はGNU GLOBALと呼ばれるソースコードタ

                                                                      • コンテナ・セキュリティ入門 脆弱性 - Qiita

                                                                        コンテナイメージのレジストリでは、脆弱性検査の実装が当たり前になっている。企業でKubernetesなどコンテナを使用するにあたって脆弱性対策がどれほど重要なものか理解するために、脆弱性検査や、関連する国際的な標準について整理した。 脆弱性(ぜいじゃくせい)とは 脆弱性とは、プログラムの動作の不備を悪用される情報セキュリティ上の弱点である。つまり、ソフトウェア上の問題が原因となって生じた欠陥であり、セキュリティホールとも呼ばれる。当然、ソフトウェア開発者は、脆弱性を産まないように細心の注意を払ってコード開発を進めるが、開発者が利用するオペレーティングシステムのライブラリやパッケージに含まれることもある。そのような事情から、開発者の責任範囲外に原因がある場合も多くある。 潜在的な脆弱性を突いた新たなクラッキングの手口が、時間の経過ともに発見される。そのことから、開発当初はコードに脆弱性は無い

                                                                          コンテナ・セキュリティ入門 脆弱性 - Qiita
                                                                        • lsyncdをつかって簡単にファイル同期を - UNIX的なアレ

                                                                          lsyncdというツールをご存じでしょうか?これを導入することで、リモートのホストとディレクトリ単位で同期をすることができます。 先日のエントリーでも紹介していますが、実は設定や導入がすごく簡単です。した設定でリモート間でファイルの同期をとれるのはやはり便利ですよね。 さて、今回はlsyncdの簡単な導入方法を紹介したいと思います。 lsyncdの仕組み lsyncdはlinux kernel2.6.13で導入された、inotifyというAPIをつかって動作しています。 inotifyはファイルシステムのイベントを取得することができるAPIで、ファイルの作成や削除などをそれぞれイベントとして取得をすることができます。 この仕組みと、rsyncを組み合わせてファイルの同期を行うことを実現しています。 lsyncdのインストール まず、以下のページからsourceをダウンロードしてください。

                                                                            lsyncdをつかって簡単にファイル同期を - UNIX的なアレ
                                                                          • Webpackを一歩一歩確実に理解してReact + TypeScript環境を作る (2022/10/31 追記) - Qiita

                                                                            2022/10/31 追記 2022年時点ではWebpackでReactの環境を構築するより、Viteを用いて環境構築するほうがメジャーになっています。 筆者としても新規開発するならWebpackより、Viteの方で構築することをおすすめします。 ViteではReactのビルド用設定はPluginとしてパッケージされており、Webpackのように設定が必要ではありません。 下記はWebpack v4の話であり、すでに過去の物となっています。 ※自分のブログに投稿したのものと同じです。 https://mr-ozin.hatenablog.jp/entry/2020/06/20/043243 動機 毎回 npx create-react-app で React アプリを生成していて Webpack の勉強から逃げていたが、いい加減向き合いたいと思ったため。 昔 Webpack に入門しようと

                                                                              Webpackを一歩一歩確実に理解してReact + TypeScript環境を作る (2022/10/31 追記) - Qiita
                                                                            • 第8回Jenkins勉強会で「Jenkins with Docker」というLTをしました #jenkinsstudy - Yahoo! JAPAN Tech Blog

                                                                              ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog LT の中で触れた環境を構築するデモコードを Vagrantfile にまとめて GitHub においていますのでよければ触ってみてください。ジョブ登録済の Jenkins が立ち上がるので全く同じ環境を試してもらえます。 yahoojapan/jenkins-with-docker-demo LT は5分でざっと流してしまったため、このエントリで補足します。 ジョブ実行毎にクリーンな環境がほしい 特に説明の必要もなく普段 Jenkins を使っていればジョブ毎にクリーンな環境がほしいと思うはずです。スレーブノードをジョブ毎に新規でインスタンスを立ちあげて実行することもできますが インスタンスの作成、起動はそれなりの時間がかかりま

                                                                                第8回Jenkins勉強会で「Jenkins with Docker」というLTをしました #jenkinsstudy - Yahoo! JAPAN Tech Blog
                                                                              • ウノウラボ Unoh Labs: PHPで暗号化・復号化あれこれ

                                                                                shimookaです。 皆さんはPHPでデータの暗号化・復号をする必要に迫られた場合、どのようにしているでしょうか?今回は、PHPで利用可能なモジュールやパッケージとそれらのサンプルを3つほど挙げてみました。 mcrypt拡張モジュールを使った暗号化 libmcryptを利用したPHP拡張モジュールです。DES、3DES、Blowfish、RIJNDAEL(ラインダール:AES暗号とも呼ばれる)、Blowfishなどのブロック暗号をサポートしています。利用可能な暗号モードはCBC、OFB、CFB、ECBです。 PHPで利用するには、libmcryptをインストールし、configureオプションに「--with-mcrypt」を付ける必要があります。また、PHP5以降、libmcrypt 2.5.6以降が必要です。 以下は、SSHやファイル暗号化ソフトウェアなどに広く利用されているBlow

                                                                                • C/C++中規模プロジェクトのための超シンプルなMakefile | POSTD

                                                                                  私は多くの小規模プロジェクトで Make を使ってきましたが、より大きな規模のプロジェクトになると、それは非常にうんざりするようなものでした。最近までは、自分のビルドシステムに行いたいことが4つあったのですが、Makeでの方法が分かりませんでした。 out-of-sourceビルド(オブジェクトファイルが、ソースとは分離されたディレクトリにダンプ出力されます) 自動生成される(かつ正確!)ヘッダの依存関係 オブジェクト/ソースファイルのリストの自動的な決定 インクルードディレクトリのフラグの自動生成 以下にこれらの全てを行える、C、C++、およびアセンブリで動作するシンプルなMakefileを紹介します。 MAKEFILE TARGET_EXEC ?= a.out BUILD_DIR ?= ./build SRC_DIRS ?= ./src SRCS := $(shell find $(S

                                                                                    C/C++中規模プロジェクトのための超シンプルなMakefile | POSTD