タグ

2012年3月14日のブックマーク (55件)

  • 最近 PHP のセットアップ時にいつもやってる設定 | バシャログ。

    レーザー治療までしたのにくしゃみ出まくってるんですけど、いったい何なんですか。どうもこんにちは nakamura です。 PHP-5.3.x 系もだいぶ浸透してきた今日この頃ですが、今日はここ最近新規にウェブサーバを立てる際にいつもデフォルトでやっている PHP 周りの設定をまとめてみました(よくよく考えたら PHP-5.3.x 系とかあんまり関係ないけど)。環境は CentOS 5 or 6 の PHP-5.3.x です。remi リポジトリを使って最新版の PHP を入れてます。 /etc/php/php.ini 毎回さわっているのは大体この辺ですね。他はサイトの仕様にあわせて適宜。 [PHP] expose_php = Off [Date] date.timezone = Asia/Tokyo セッションの保存先を memcached に セッションの保存先はデフォルトで memca

    最近 PHP のセットアップ時にいつもやってる設定 | バシャログ。
  • W3C CSS 検証サービス

    Validate by URI Enter the URI of a document (HTML with CSS or CSS only) you would like validated: Address: More Options

  • ラムダ計算をちょっと勉強してみたので、忘れないうちに書いておく - Naoki_Rinの学習 - 補助記憶領域

    なんとなく最近少し理論的な方面もやってみようかなと思い立って、今回はラムダ計算の基礎を勉強してみることにしました。 関数型言語の基盤らしいです。たしかにちょっと雰囲気はあります。 参考にしたページとしては Wikipedia ラムダ計算 - http://ja.wikipedia.org/wiki/%E3%83%A9%E3%83%A0%E3%83%80%E8%A8%88%E7%AE%97 Wikipedia 型付きラムダ計算 - http://ja.wikipedia.org/wiki/%E5%9E%8B%E4%BB%98%E3%81%8D%E3%83%A9%E3%83%A0%E3%83%80%E8%A8%88%E7%AE%97 カリー・ハワード同型対応入門 - http://ocw.kyoto-u.ac.jp/ocw-archives-jp/002-006/pdf/curryhoward

  • 技術者の倫理

    ミラクル・リナックスに入社して1ヶ月経った。3月からまた新しい人(NetBSDハッカー!!)が入ったので、昨日は歓迎会だった。つまりは飲み会なのだけれども、ミラクルの人たちと話していてひとつ驚いたことがある。彼らは、会社の飲み会で技術の話をするのだ。往年の親指シフトから、最新の(?)GNU Hurdまでが話題に上がった。 技術者には個性というものがある。強みである。もちろん、弱みともなりうる。前職の三菱電機では、マネジメント上の最大の焦点とされたものに、技術者の個性の無効化がる。無効化という言葉が過激すぎるなら、均質化と言い換えてもよい。逆に、ちょっと過激な言葉を使うならば、前職のマネジャーたちは、技術者を交換可能な標準化された部品とみなした。 天才的技術者がいたとする。すべての製品を彼の天才に頼っていたとする。ある朝、彼が交通事故に遭うようなことがあれば、直ちに事業は破綻する(スーパーコ

  • 【書評】手動デプロイからの卒業指南書「継続的デリバリー」

    継続的デリバリー 信頼できるソフトウェアリリースのためのビルド・テスト・デプロイメントの自動化著者/訳者:David Farley、Jez Humble、和智 右桂、高木 正弘出版社:KADOKAWA/アスキー・メディアワークス発売日:2012-03-14大型:544ページISBN-13:9784048707879ASIN:4048707876 レビューに参加させていただいた縁でアスキー・メディアワークス社様より献いただきました。和智さん、高木さんの黄金コンビによる翻訳です。 デプロイ自動化に関する話を網羅的に扱ったはこれがはじめてでしょう。 上級技術者向けと書かれているように内容は結構ハイレベルで、構成管理、CI、テスト戦略についての前提知識が求められるように思いますが、アジャイルプロジェクトの中で日々改善を繰り返している人たちにとっては理解しやすいのではないかと思います。 デプ

    【書評】手動デプロイからの卒業指南書「継続的デリバリー」
  • PHPUnit でテスト駆動開発を始めよう

    下北沢で開催したPHPUnit講座の資料です。 動画などはこちら。 http://blog.candycane.jp/archives/1480

    PHPUnit でテスト駆動開発を始めよう
  • Javaのクラス宣言5種+α - プログラマーの脳みそ

    Javaのクラス宣言には5種類ある。 トップレベルクラス・ネストしたクラス・内部クラス・ローカル内部クラス・匿名クラス(無名クラスとも言われる)の5種類だ。 今回はこの5種類のクラス宣言のおさらい。 トップレベルクラス これは普段使っているクラス。拡張子が.javaのファイルを作り、そのファイル名とクラス名を合致させなくてはいけない。そのjavaファイルのトップレベルに位置する。 ネストしたクラス 「ネストしたクラス」(Nested class)とはクラスの中にクラスがネストしている状態。トップレベルクラスの内側にstaticキーワードをつけてクラス宣言を行う。 public class Outer { public static class Nested { } } このネストしたクラスは、トップレベルクラスと同等の機能性を持つ。 クラス名はOuter.Nestedという名前で扱われるが

    Javaのクラス宣言5種+α - プログラマーの脳みそ
  • GitHubのセキュリティホールがふさがったのでSSH Keyを確認しよう - ただのにっき(2012-03-08)

    GitHubセキュリティホールがふさがったのでSSH Keyを確認しよう 先日、Railsアプリにありがちなセキュリティホールがあることが判明したGitHub。詳細は@sora_hによる「github の mass assignment 脆弱性が突かれた件」が非常によくまとまっているので参照のこと。脆弱性の内容そのものもだけど、開発者として脆弱性指摘をどのように受容、対応すべきかを考えさせられる事例だった。 で、これはようするに赤の他人が任意のリポジトリへのコミット権を取得できてしまうという事例だったのだけど、脆弱性の内容をみる限りその他のさまざまな入力もスルーされていた可能性がある。ということで、その対策が(おそらく)なされたのだろう、今朝になってGitHubから「SSH Keyの確認をせよ」というメールがいっせいにユーザに配信された。3日で修正とか、GitHubの中の人もずいぶん

  • Webアプリのパフォーマンスアップ作戦 - ゆーすけべー日記

    予定している機能を実現するアプリが完成するだけでWebサービスが成り立つわけではありません。 運用の最中にパフォーマンスにまつわる問題が出てくる可能性があります。 それは突然大きなトラフィックがやってきたというような時だけではありません。 知識が無いうちですと、いざ運用に乗せてみるとずいぶんとサイトの読み込みが遅いといったケースが発生することもあります。 僕はいくつかのエロサイトを管理しているのですが、 その中に月間700万PVのアクセスをいただいている「サイトA」があります。 サイトAの場合、トラフィックもそこまで無かった当初からパフォーマンスに関する問題がいくつか発生し、 その都度調べては実践で試して対策をしてきました。また、できる限り少ないリソースでの運用を目指しています。 今回はWebアプリのパーフォマンスアップ作戦として、 サイトAでの運用経験からのいくつかの方針やTipsを紹介

    Webアプリのパフォーマンスアップ作戦 - ゆーすけべー日記
  • 情報系修士にもわかるLOUDS - アスペ日記

    一回でわかりやすく書くのは難しいので、簡潔データ構造 LOUDS の解説(全12回、練習問題付き)というシリーズにまとめました。 (2014/01/26) 古い内容を削除しました。

    情報系修士にもわかるLOUDS - アスペ日記
  • 情報系修士にもわかるダブル配列 - アスペ日記

    最近話題の「日本語入力を支える技術」を途中まで読んだ。 3章がものすごく気合いが入っている。 trie(トライ)というデータ構造の2つの実装、「ダブル配列」と「LOUDS」について詳しく説明がされている。 ダブル配列については、ぼくは以前論文を読んで勉強しようとしたのだが、その時は難しくてあきらめた覚えがある。しかし、このの説明を読むことで理解ができた。 ありがたい。 感銘を受けたので、このを教材に友達と2人勉強会をした。 この2人勉強会というのは、ぼくが復習を兼ねて友達に教えるというのがだいたいのスタイル。 しかし、いざやってみるといろいろと難しい。 次のようなところでひっかかるようだ。 例のサイズが小さく、イメージを喚起するのが難しい。 最初の図のノード番号と、最終的なダブル配列上の位置が異なるため、混乱する。 単語終端について言及がないので、どのノードが単語を表しているかがわから

    情報系修士にもわかるダブル配列 - アスペ日記
  • らいおんの隠れ家 : ポール・グレアム「面倒な仕事の無視」 - livedoor Blog(ブログ)

    ポール・グレアム「面倒な仕事の無視」を翻訳しました。原題は Schlep Blindness で、原文はココです。アドバイス等、よろしくお願いたします。なお翻訳にあたり、shiro様、tamo様のアドバイスをいただいております。ありがとうございます!! 面倒な仕事の無視 Schlep Blindness 2012年1月 January 2012 手つかずのすごい起業のアイデアは、私たちの目の前に転がっている。それが私たちに見えないのは、私が「面倒な仕事の無視」と呼んでいる現象だ。「面倒な仕事」は、もともとはイディッシュ語の言葉だったが、アメリカでも一般的に使われるようになった。退屈で嫌な仕事のことだ。 There are great startup ideas lying around unexploited right under our noses. One reason we don

  • PHP: Traits - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    PHP: Traits - Manual
  • クラウドの登場でDevOpsは変わっていく、メトリクス主導へ

    昨日公開した記事「DevOpsとはどんなもので、何が議論されているのか(前編)」では、DevOpsの現状について、先週都内で開催されたDevOpsのイベントで行われた講演を紹介しました。 今回の記事は、同じイベントで行われたもう1つの講演の内容を紹介します。講演を行ったAlexis Lê-Quôc氏は、昨年米国で行われたイベント「DevOps Days Moutain View 2011」でパネリストを務め、DevOps Metrics and Measurementに関する世界的な第一人者。 Alexis氏は、先週日曜日に行われた東京マラソンに参加するために来日、それにあわせて講演をしていただきました。また、Alexis氏はDevOpsのためのツールDatadogの開発も行っており、講演の最後にはDatadogの紹介も行っています。 Webサイトの複雑化で全体像が見えなくなった Alex

    クラウドの登場でDevOpsは変わっていく、メトリクス主導へ
  • MySQLのEXPLAINを徹底解説!!

    以前、MySQLを高速化する10の方法という投稿で「EXPLAINの見方についてはいずれ解説しようと思う」と書いてしまったので、今日はその公約?を果たそうと思う。 MySQLのチューニングで最も大切なのは、クエリとスキーマの最適化である。スキーマの設計は一度決めてしまうとそのテーブルを利用する全てのクエリに影響してしまうためなかなか変更することは出来ないが、クエリはそのクエリだけを書き直せば良いので変更の敷居は低い。そして遅いクエリをなくすことは、性能を大幅に向上させるための最も有効な手段である。従って、アプリケーションの性能を向上させたいなら、まず最初にクエリのチューニングを検討するべきなのである。 最適化するべきクエリはスロークエリログやクエリアナライザで見付けられるが、ではそのようなクエリが見つかった場合にはどのように最適化すればいいのか?そのためにはまず現在どのようにクエリが実行さ

    MySQLのEXPLAINを徹底解説!!
  • さらにMySQLを高速化する7つの方法

    MySQLを高速化する10の方法という記事がとても好評だったようである。記事を読んで頂いた皆さん、ありがとう。 この記事に対する便乗(?)でWeb屋のネタ帳: PostgreSQLを高速化する16のポイントという記事を書いて頂いたようだが、そちらの方もかなり人気だったようである。他人が作ったソフトウェアに改良を加えるというフリーソフトウェアやオープンソースソフトウェアの精神も基は便乗であるので、便乗については大いに賛成したいというかむしろ取り上げてくれてありがとう!!と思うわけであるが、ここでさらに俺はこう考える。 と。 Web屋のネタ帳さんの記事では16のポイントが紹介されているが、漢(オトコ)のコンピュータ道の記事は10の方法だったのであと6つ足りない。オトコは数で勝負!!というわけで今日はネタを振り絞ってさらに7つのMySQL高速化テクニックを紹介しよう。 1. インテルコンパイラ

    さらにMySQLを高速化する7つの方法
  • なぜMySQLのサブクエリは遅いのか。

    よくMySQLはサブクエリが弱いと言われるが、これは当だろうか?半分は当で半分は嘘である。MySQLのサブクエリだってなんでもかんでも遅いわけではない。落とし穴をしっかり避け、使いどころを間違えなければサブクエリも高速に実行できるのである。今日はMySQLがどんな風にサブクエリを実行し、どのような場合に遅いのかということについて説明しよう。 EXPLAINで実行計画を調べた際に、select_typeにはクエリの種類が表示されるのだが、代表的なサブクエリには次の3つのパターンがある。 SUBQUERY DEPENDENT SUBQUERY DERIVED 結論から言おう。遅いのは2番目、DEPENDENT SUBQUERYである。DEPENDENT SUBQUERYとはいわゆる相関サブクエリに相当するもので、サブクエリにおいて外部クエリのカラムを参照しているサブクエリのことである。そし

    なぜMySQLのサブクエリは遅いのか。
  • お手軽並列処理

    Perl でOSネイティブのアプリケーションを作れたらいいなと思ったことはないでしょうか? 私はMovable TypeのクライアントアプリMAUS(https://alfasado.net/apps/maus-ja.html) やいくつかのmacOSアプリを作成・公開していますが、これらのアプリではPerlが活用されています。トークセッションでは 統合開発環境Xojo(https://xojo.grapecity.com)でのアプリケーション開発にPerlを活用するTipsについてご紹介します。

    お手軽並列処理
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
  • デブサミでレガシー開発とアジャイル開発のお話をしてきました。 - regtan’s TechNote

    17ーCー7枠でFrom Legacy to Agile 〜レガシー開発からアジャイル開発へ〜というタイトルで@kwappaと@yoshioriと3人でお話ししてきました。 今回は以前@kwappaとふたりでXP祭りでやったセッションのベースに新しい要素を組み込んだものです。当時、僕はレガシーな開発現場でよりアジャイルな手法を取り入れて現場を少しでも変えて行こうと考えていました。そのなかで引っかかること、気になることをレガシーな開発手法とアジャイルな開発手法の二つの軸で見て行きたいと思いXP祭りでのセッションを企画しました。 2011年12月、僕は今の会社に転職しました。レガシーな開発からアジャイルな現場へと移ったわけです。だからこそ見えたものも多くあります。また、そのような転身するためのキャリアデザインや覚悟の話を前回のセッションの内容に追加して話をしようと企画したものが今回のセッション

    デブサミでレガシー開発とアジャイル開発のお話をしてきました。 - regtan’s TechNote
  • 南相馬市近隣|大学生セフレ募集掲示板【近場|セックスしたい人向け優良出会い系ランキング】大学生セフレ早急募

  • 差別化で未来を生き抜く エンジニアの7つの秘訣

    書籍や論文をあたることもなく、インターネットでほぼ無償に近い形で無尽蔵に情報を手に入れることが出来る現在、エンジニアが価値のある存在として「自分を差別化」することがこれまで以上に難しくなってきているのではないでしょうか? オープンソースソフトウェア開発などを通じてキャリアを重ねている私が「これまでの10年」、如何に差別化を計ってきたのか、秘策を大暴露します。皆様の「これからの10年」のキャリア構築の参考になればと思います。Read less

    差別化で未来を生き抜く エンジニアの7つの秘訣
  • #devsumi 2012 言語の世界 メモ

    さん マニアックな話ばかりするので、明日の仕事には役に立ちません。他のセッション出たほうが役に立つと思いますw Rubyを作ったけど、言語好きです プログラミング言語って プログラム = 手順書 プログラミング言語 = 手順書記述用人工言語 コンピューターは道具、何かコンピュータで達成したいことがある コンピュータに達成させたいことを記述するもの 自分の理想はなにか、思考の表現をするため、具体化された思考を記述するための実行言語 せめぎあうふたつの立場 機械のためか、人のためか、という立場がせめぎ合う プログラミング言語の歴史的な話 FORTRAN FORmula TRANslator 1954年に登場した、世界最初のプログラミング言語 アセンブラも存在していなくて、マシン語をそのまま書くような時代に登場したので、画期的だった 「コンピューターのためではなく、人間が楽をするために」 背

    #devsumi 2012 言語の世界 メモ
  • [デブサミ2012]趣味と実益の脆弱性発見

    神戸ITフェスティバル講演 http://kobe-it-fes.org/kif2014/seminar/entry-197.html

    [デブサミ2012]趣味と実益の脆弱性発見
  • デブサミで僕が話したことの簡単なまとめ - 宇宙行きたい

    デブサミが 10 周年でした。 残念ながらオファーなかったのですが、一昨日くらいに急に参加していいよって言われたので 「From Legacy to Agile 〜レガシー開発からアジャイル開発へ〜」に乱入してきました。 そこでチームビルディング的な話を話させてもらいました。 資料とか特に作っていなかったので僕がリーダーとしてチームメンバーにお願いしている決まり的なことを簡単にまとめておこうと思います。 テストを書け 問題を根性で解決するな 人を殺す以外なら何やってもいい 失敗を引きずるな 個別に補足書いて行きます。 一応状況の簡単な説明をしておくと、最初は 3 人しかいないチームに 「手伝ってくれないか?」と言われ合流しました。その後、僕がリーダーになり 今は 15 人前後のチームで動いています。 テストを書け これは僕がチームに入るときに最初に宣言しました。 「テストを書かないようなプ

    デブサミで僕が話したことの簡単なまとめ - 宇宙行きたい
  • デブサミ2012の資料「大規模化するピグライフを支えるインフラ 〜MongoDBとChefについて〜」を公開します - 元RX-7乗りの適当な日々

    今年で10周年を迎えた「Developers Summit 2012」 まずは10周年おめでとうございます。そして"いつも"ありがとうございます。 そんな記念すべき(通称)デブサミで機会をいただいて話をしてきましたので、資料を公開します。私としては、2010年以来の2回目の登壇となりました。 ※ 参考: デブサミ2012で、MongoDBとかChefを実サービスで使っている話をします オープン3週間でユーザ数100万人を突破したピグライフは、これまでのアメーバのサービスの中でも類を見ないスピードで成長しています。そのため、このピグライフを構成するアーキテクチャや開発/運用についても、よりスケーラビリティが確保できるインフラが求められます。セッションでは、それらを支える取り組みについて、実際の事例をベースにお話しします。 10年後も世界で通じるエンジニアであるために Developers

    デブサミ2012の資料「大規模化するピグライフを支えるインフラ 〜MongoDBとChefについて〜」を公開します - 元RX-7乗りの適当な日々
  • フリーソフトラボ.com

    Windows用ソフトウェア ユーティリティソフト ファイル復元 ファイル完全削除・データ消去 強制削除 ごみ箱拡張 リネーム マウス拡張 キーボード拡張 ランチャー モニター電源オフ ディスプレイ輝度調整 スリープ防止 セキュリティソフト 総合セキュリティソフト ウイルス対策 スパイウェア対策 ファイアウォール オンラインスキャン 脆弱性対策 暗号化 個人情報保護 パスワード管理 パスワード生成 ウェブ関連ソフト ウェブブラウザ ダウンローダー・ダウンロード支援ソフト メール オンラインストレージ ファイル転送ソフト Windowsシステム関連ソフト Windows高速化 フォーマット システムクリーナー メモリ解放 不要ファイル削除 アンインストーラー プロダクトキー解析 PC自動終了 音楽 ・動画ソフト メディアプレイヤー 音楽プレイヤー CD/DVD/Blu-rayライティング リ

    フリーソフトラボ.com
  • Runtime error - PHP Commons

    Error message : Directory is not found or not writable (DATA_DIR) Directory is not found or not writable (DIFF_DIR) Directory is not found or not writable (BACKUP_DIR) Directory is not found or not writable (CACHE_DIR) Site admin: whitestar Copyright © 2007-2023 whitestar. All Rights Reserved. Icons powered by famfamfam. PukiWiki 1.5.0 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL

  • [PHP]ZendFrameworkで作成したControllerをPHPUnitでテストする | ブログが続かないわけ

    [PHP]ZendFrameworkで作成したControllerをPHPUnitでテストする | ブログが続かないわけ
  • PHPUnit マニュアル | プログラムの種ブログ

    PHPUnit マニュアル 地味にバージョンアップしてますね。 PHPUnit、フレームワークだと使いにくい気がするんですけど、どうでしょうか。

    PHPUnit マニュアル | プログラムの種ブログ
  • 開発者向けUnicode FAQ--もう知らないではすまされない - builder by ZDNet Japan

    クラウドネイティブの実現 モダンインフラの構築・運用の課題解決へ コンテナの可能性を広げるVMware Tanzu DX時代のアプリケーションセキュリティ 未来革新プロジェクトに邁進するSOMPO 基幹システムのモダナイゼーションに迫る VMware 渡辺氏に聞く 顧客のデジタル変革のために 自らも改革を続けるヴイエムウェアの戦略 日清品グループのDX(前編) 現場が主役のDXのススメ トップの強い意思で変革に弾み Microsoft 365のデータは安全か? クラウド型アプリを採用する企業のための 包括的なデータ保護のありかたを解説 ともにDXを推進する コンテナ化されたワークロードを管理 継続的な価値を生みだす「協創」への挑戦 ITインフラ運用からの解放 HCI+JP1による統合運用による負荷激減で 次世代IT部門への役割変革へ一歩前進 エンドポイントセキュリティの転機 情報セキュリ

    開発者向けUnicode FAQ--もう知らないではすまされない - builder by ZDNet Japan
  • Welove

    Browse Topics All 2 Computer Science Gaming More Browse Topics Recent Activities Home 2 Room available Create Room @juan 3 months ago Lets play today 1 Joined Gaming @Weloveu 3 months ago Lets learn python 2 Joined Computer Science Recent Activities lopez05.jl62@gmail.com 3 months ago replied to post “Lets play today Hola weloveu638@gmail.com 3 months ago replied to post “Lets learn python looks g

    Welove
  • サービス終了のお知らせ - NAVER まとめ

    サービス終了のお知らせ NAVERまとめは2020年9月30日をもちましてサービス終了いたしました。 約11年間、NAVERまとめをご利用・ご愛顧いただき誠にありがとうございました。

    サービス終了のお知らせ - NAVER まとめ
  • nginx連載2回目: nginxのインストール

    前回はnginxの概要を紹介しましたが、今回はnginxのインストールについて紹介します。なお、設定については今回紹介する予定でしたが、文章が長くなってしまったので次回にします。 「百聞は一見にしかず」ということで、実際にインストールして体験してみましょう。 インストール方法 nginxのインストール方法は主に次の3通りです。 ソースコードからビルドしてインストールする OSのパッケージシステムからパッケージをインストールする nginx.org提供のバイナリパッケージをインストールする お使いのOSがメジャーなLinuxディストリビューションや*BSD系のUNIXであれば、パッケージシステムからインストールできます。なお、記事ではCentOS 6にnginx.org提供のパッケージを利用する前提で話を書きます。 また、次のサイトにも情報がありますので一度ご覧ください。 公式ダウンロード

  • コンパイルするとJavaScriptに! Rubyライクに記述できる「CoffeeScript」とは?

    JavaScriptプログラマーの間で「CoffeeScript」を使う人が増えています。CoffeeScriptとは一体どんな言語なのか、そして実際の現場で使うにはどうしたらいいのか、この連載を通して解説していきます。Webブラウザ向けのフロントエンド開発にも、そしてサーバサイド開発にも使える内容となっています。 CoffeeScriptが登場する前 JavaScriptは広く普及している言語ですが、ソースコードは見苦しいものになりがちです。小さなプログラム程度なら構いませんが、大規模なプログラムを作るのはかなり骨が折れる作業です。冗長な記号や面倒な決まり文句などが積み重なると、読みづらくメンテナンスしづらいソースコードができてしまいます。 JavaScriptを使ってある程度の規模の開発を経験したプログラマーの多くはそのような不満を感じ、もう一度JavaScriptで大きな開発をしたい

    コンパイルするとJavaScriptに! Rubyライクに記述できる「CoffeeScript」とは?
  • 配列か連想配列かを判別する - Unknown::Programming

    PHPにおいて、ある配列が連想配列として使われているのかどうかを判別したい場合どうすればいいのか。 色々調べてたらこんな記事を発見しました。 <?php function is_hash(&$array) { return array_keys($array) !== range(0, count($array) - 1); } テレパス・ラボ : 連想配列 判定関数(is_hash) なるほど。 array_keysで配列のキー一覧を取得し、そのキー一覧が0からの連番になっているかどうかを比較すれば、対象の配列が配列なのか連想配列なのかを判別できるという理屈ですね。 確かにこれで判別ができそうです。 ですがひとつだけ気になる部分があって、array_keysやrangeを使って一時的な配列を確保しているのは無駄が多いのではないかと。 対象となる配列が大きければ大きいほどメモリ効率が悪くな

    配列か連想配列かを判別する - Unknown::Programming
  • [Rails]はじめてのRailsでWebサービス作ってみた - ギークに憧れて

    Twitmemo ここ一ヶ月ほど某社でRailsの勉強をさせて頂いていて、なんか作れーって言われたのでWebサービス作ってみました。 Twitterユーザーへフォローした理由やメモを追加できるサービスで、Twitmemoといいます。過度な期待はせず使ってみてください。 作った理由2/4現在、自分のフォローは1030人弱。300人くらいまでは良かったが、さすがにこの人数になると「あれ?こいつフォローしたっけ…」って奴が出てくる。最近はイベントにいってもメールアドレス教えるのがダルくてとりあえずTwitterアカウントを教える、というパターンが多いので、ある程度は把握しとかないとリアルに支障が出るかなーという危機感があった。そういうのを良い感じにメモできるサービスが欲しかったので作った。プラス、自分がどういう評価されてるか知れたらFavstarっぽくてうけるかなーという感じ。 以下、サービスを

  • 15分でわかる zsh - mollifier delta blog

    2011年01月29日(土) に大阪で Minami.rb 第4回勉強会 が開かれた(告知ページ)。Ruby on Rails(Ruby)メインの勉強会だ。 そこで15分枠の発表コーナーがあったので zsh の発表をしてきた。zsh って高機能なんだけど、実はシェルに詳しくない人でも便利に使える。なので、なんか興味あるけど難しそうって思ってる人は参考にして欲しい。 発表資料 発表資料はこんな感じ。これ自体はあんまり読まなくてもいいけど、一応貼り付けておく。 15分でわかる zshView more presentations from mollifier . これに実際のコマンドライン操作を見せながら説明した。発表内容は以下。 補完 zsh はなんと言っても補完が便利。とにかくこれを ~/.zshrc に書いておこう。 autoload -Uz compinit compinit これでい

    15分でわかる zsh - mollifier delta blog
  • 創造性の高い仕事をしたい人におすすめしたい1冊 - naoyaのはてなダイアリー

    100人が選ぶソフトウェア開発の名著選 デブサミ10周年を記念して2月21日に刊行:CodeZine(コードジン) が出版されます。私も一冊推薦しました。id:secondlife:20120202:1328168076 でセコンさんが公開してるのにならって、私も原稿を公開しようかなと思います。推薦したのは以下のです。 モチベーション3.0 持続する「やる気!」をいかに引き出すか 作者: ダニエル・ピンク,大前研一出版社/メーカー: 講談社発売日: 2010/07/07メディア: ハードカバー購入: 101人 クリック: 5,453回この商品を含むブログ (153件) を見る 邦題があまり好きじゃない。原著は『DRiVE ─ The Suprising Truth About What Motivates Us』です。文の訳は良かったです。『フリーエージェント社会の到来』や『ハイ・コン

    創造性の高い仕事をしたい人におすすめしたい1冊 - naoyaのはてなダイアリー
  • JenkinsとApache Ivyで開発からデプロイまでを管理する - GeekFactory

    Eclipse, Jenkins, Apache Ivyを使ったプロジェクトにおける開発からデプロイまでの流れを図に描いてみました。 図では書き表せないことがありますね。テスト実行時のクラスパスは実行時ライブラリを含むとか、図で描くとカオスになります。GUIツールでビルド設計するのは意外と難しいのかもしれません。 ビルド設計する上で考えたことを書き出しておきます。何かアドバイスがあったら教えていただけると嬉しいです。 開発環境 WindowsでEclipseを使う。 Eclipseのプロジェクト構成で適切なビルドパスを設定する。 依存ライブラリはApache IvyDEプラグインで管理する。 依存ライブラリはMavenリポジトリから取得する。リポジトリ候補にはビルドサーバ上のキャッシュを含める*1。 他プロジェクトへの参照はEclipseのProject Referenceを設定する。 ク

    JenkinsとApache Ivyで開発からデプロイまでを管理する - GeekFactory
  • bashの補完機能を拡張してみた

    bashにはインテリジェントな補完機能があり、ubuntuだとデフォルトでさまざまな補完定義の書かれた bash_completion が有効になっているはず。 なっていなければ ~/.bashrc に、if [ -f /etc/bash_completion ]; then . /etc/bash_completion fiと追記しておこう。 この便利な補完機能だけど、自分で設定できる。が、ものすごく賢く設定できるだけに /etc/bash_completion 見てもよく分からないw ちょうどnkfのロングオプションをよく使うんだけど、よく忘れるw のでいい機会だったので試しに作ってみた。 # nkf completion _nkf() { local cur COMPREPLY=() cur=${COMP_WORDS[COMP_CWORD]} # options completion

  • 【アダルトランキング】優良サイトリンク集

  • zshでもbashと同じくらい快適にgit補完関数を使う | uuu

    zshにおけるgitの補完関数の実装はいまいちでした。zsh + git使いはzshの補完関数_gitを速くしたい! その2のような対抗策を講じるか、gitのときだけbashを使うかしていました。僕は一時期後者でした。 さてgitのtarballにcontrib/completion/git-completion.bashというのがあるのはディープなgit使いならご存知かと思います。残念ながらファイル名の通りbashでしか使えませんでしたが、v1.7.4-rc0でzsh compatibleになりました add the following lines to your .zshrc: autoload bashcompinit bashcompinit source ~/.git-completion.sh と指示通りに.zshrcに追記するだけでzshでもbashなみの快適さでgitを使え

  • チーム内でやる進捗会議はムダ - 勘と経験と読経

    ソフトウェア開発プロジェクトでは、顧客への定期的な進捗報告を行うために、当然のことだが進捗を管理しなければいけない。中規模以上のプロジェクトではプロジェクトはいくつかのチームに分かれていて、さらにチームごとに担当する会社が異なることもある。ありがちな事だが、チーム別にプロジェクト内の進捗会議を行うようになってくると、これが壮大なムダになっていく。 チームリーダーはソフトウェア開発プロジェクトのボトルネック ソフトウェア開発プロジェクトは、ウォーターフォール形式であれアジャイル開発プロセス型であれ、膨大なコミュニケーションと意思決定を行うことで進んでいく。ソフトウェアの仕様や構成について決定するのは、たいていはチームリーダーの仕事だ。また、各開発担当者の仕事の結果が正しいのかをレビューやインスペクションによって判定するのもチームリーダーの仕事であることが多い。そして、チームリーダーはチームメ

    チーム内でやる進捗会議はムダ - 勘と経験と読経
  • 私が思う『良いコード』とは何かを語りたい - じゃがめブログ

    久しぶりにシステムエンジニアっぽい話題。 良いコードというのはケース・バイ・ケースであり案件によって異なるものですので、あくまで『私が思う良いコード』についてです。 私がコードに対して持ってる座右の銘は、これです。 動く汚いコードより、動かない綺麗なコード 動く汚いコードはトラブルが発生して動かなくなったときに「なぜ動かないか」が解らず修正が困難ですが、動かない綺麗なコードは誰かが動くように直せば動き、修正が簡単です。故に、トラブルが発生したときのメンテナンス工数に差が出ます。トラブルは必ず発生するものですからね。動く汚いコードを綺麗にするには多大なるコストが掛かりますが、動かない綺麗なコードを動くようにするのはそれほど難しいことではないでしょう。一切トラブルも追加開発も発生しないと仮定するならば動く汚いコードでも問題ありませんが、果たしてそんなことがありうるでしょうか? むしろ、トラブル

    私が思う『良いコード』とは何かを語りたい - じゃがめブログ
  • Wiktionary

    Wiktionary, the free dictionary 7,973,173 entries with English definitions from over 4,300 languages Welcome to the English-language Wiktionary, a collaborative project to produce a free-content multilingual dictionary. It aims to describe all words of all languages using definitions and descriptions in English. Wiktionary has grown beyond a standard dictionary and now includes a thesaurus, a rhym

  • $this-> をラクに入力する - 永遠に未完成

    PHP 書いてると、$this-> をよく書く割に Shift を 2 回も使わないといけなくてすごく書きづらい。 あまりに書きづらいので @ で $this-> を出すようにした。確か PHPer って @ は滅多なことがないと使わない*1んだよね。 " after/ftplugin/php.vim inoremap <buffer> @ $this-> これでよし。と言いたいところだけど、コメントの中で @return とか書くときに誤爆する。ので、コメント内と、ついでに文字列内では展開しないようにした。 " after/ftplugin/php.vim function! s:at() let syntax = synstack(line('.'), col('.')) let name = empty(syntax) ? '' : synIDattr(syntax[-1], "na

    $this-> をラクに入力する - 永遠に未完成
  • Railsアプリをvimでステップ実行する方法 - プログラマ憧れプログラマ日記

    はじめに 今回はMacVimRailsアプリをステップ実行する方法を紹介します。そこそこ面倒かつ、ちょっと難アリなので、サクっとやりたい人は「汝プログラマの間違っていると思われる部分にprintf文を置きて再コンパイルし実行せよ」ですね。えぇ。 環境 OS: Mac OS X 10.6.8 Vim: 7.2 Ruby: 1.9.2 Rails: 3.1.0 vim-ruby-debugger vim-ruby-debugger https://github.com/astashov/vim-ruby-debugger これを使います。私はpathogenを使っているので、~/.vim/bundleに置きました。 cd ~/.vim/bundle git clone git://github.com/astashov/vim-ruby-debugger.gitREADME.mdを読むとr

    Railsアプリをvimでステップ実行する方法 - プログラマ憧れプログラマ日記
    threeMonths
    threeMonths 2012/03/14
    X必要かー
  • vim-powerline 入れてみた - 気が向いたら

    ゆろよろさんのエントリ見てカッコイイと思って入れてみました。 iTerm2 + zsh + tmux + vim で快適な256色ターミナル環境を構築する - ( ꒪⌓꒪) ゆるよろ日記 こんな感じにできる。 で、エントリの通りにフォントにパッチ当てようとしたらエラーが出たので対処法を書き残しときます。 fontforge をインストール後、 ./fontpatcher MyFontFile.ttf すると The required FontForge modules could not be loaded. You need FontForge with Python bindings for this script to work. と怒られました。 調べたら github の issues に上がってました。 https://github.com/Lokaltog/vim-power

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • iTerm2 + zsh + tmux + vim で快適な256色ターミナル環境を構築する - ( ꒪⌓꒪) ゆるよろ日記

    こんにちわ。債務者ことゆろよろです。家買いました。 さて、最近こんなまとめが話題になりました。自分もコメントしましたが、すごい情報量になってます。 これ知らないプログラマって損してんなって思う汎用的なツール #JavaScript #PHP #Ruby #Python #HTML - Qiita 【まとめ】これ知らないプログラマって損してんなって思う汎用的なツール 100超 #PHP #JavaScript #Python #Ruby #HTML - Qiita で、自分のコメントにも書いたのだけど、基的に仕事はターミナルでssh接続して、Vimでコード書いてるので、この辺の環境構築についてまとめてみた。最近Terminal.appからiTerm2に移行して、screenからtmuxに乗り換えたので、その辺も含めて導入方法を書いておく。 手元の端末はMBPでOSX Lionだけど、ほぼ同

    iTerm2 + zsh + tmux + vim で快適な256色ターミナル環境を構築する - ( ꒪⌓꒪) ゆるよろ日記
  • Vimスクリプトを書いてみよう — KaoriYa

    目的 機能を持ったVimスクリプト(プラグイン)を徐々に作る様子を見て、書き方を学習してみよう 作るのはよくあるタイプのプラグイン Javaの単体テスト用クラスファイルを開く(作る)コマンドを作るよ 「ね、簡単でしょう(by ボブ)」と言ってみたい まずは雛形 ひな形としてこんなスクリプトを作ります。 command! -nargs=0 UtestAppend call &lt;SID&gt;UtestAppend() function! s:UtestAppend() echo 'HERE' endfunction " s:UtestAppend() UtestAppendというコマンドを追加 UtestAppendコマンドいが実行されたら ‘HERE’ と表示する ほら、すごく簡単ですね。 Javaだけに作用させる 以下はdiff形式で変更点だけ。 @@ -1,5 +1,17 @@ c

    threeMonths
    threeMonths 2012/03/14
    必ずしも関数内の変数にスコープの修飾子つけなくてもいい? 初心者向けに省いただけかな
  • PHP Extension を作ろう第2回 - 引数と返値 : DSAS開発者の部屋

    前回の Hello World のサンプルプログラムで一通りの PHP Extension の作成手順を見てきました。しかし helloworld() の様に引数も返値も無い関数だけではプログラミング言語として不便ですので今回は PHPPHP Extension におけるデータタイプの詳細と引数、返値の渡し方について見ていきましょう。 PHP のコードから C言語で書かれたコードへとデータをやり取りする上で「型」についての疑問が浮かび上がります。動的形付けされた PHP の変数を静的に形付けされた C言語で扱うにはどうしたらよいのでしょうか。 まずは、PHP 内部でのデータ表現を知るために PHP のソースを覗いて見ましょう。 php-x.x.x/Zend/zend.h より typedef union _zvalue_value { long lval; /* long value

    PHP Extension を作ろう第2回 - 引数と返値 : DSAS開発者の部屋
  • 「失敗カンファレンス」とって出しレポート - カイ士伝

    今日もとって出してくよー。 写真はあとでまとめていれたのでこれにて修了。 ■登壇者 シックス・アパート関さん NHN Japan 佐々木さん(sasakill) アクセルマーク 尾下さん サイドフィード 赤松さん ギズモード・ジャパン 清田さん モデレータはゼロスタート山崎さん かんさいさん ベンチャーブーム 成功した例はあるけど失敗した例って耳にはいってこない そういうの話してくれる人を 釣りみたいなかんじで行ってみたら反応してくれるひとがいた これまでの失敗振り返るのもあるけど 出てくれる人はそれを踏まえてチャレンジもしている それを学んでなにをするか、前向きな場にしたい そういうこと共有できたらいい 1つだけルール オフレコ札が出たらその内容はかかないように ■パネラー自己紹介 いちるさん 自己紹介 シックス・アパートとギズモードで働いている 前職ニフティ 日の発言はすべて個人 会

    「失敗カンファレンス」とって出しレポート - カイ士伝
  • PHP Framework MVC Benchmark - v20111201-4 | ruilog

    Case Test Simple "Hello World" page output, Simple MVC logic(Router -> Controller -> Viewer), No Database Connections, No complex logic. Hardware platform CPU: Intel Core i5 750 (2.67GHz x4) RAM: 4GB Software Environment Debian 6.0.4 x86_64 (2.6.32-41) apache 2.2.16 (mpm-prefork,mod-php5) php 5.3.10 php-apc 3.1.9 (Optimization for include/require) Copy all projects to /dev/shm/* (Optimization for