タグ

tipsに関するblueleのブックマーク (23)

  • 私が他人のシェルスクリプトから学んだこと | Yakst

    私はシェルスクリプトの大ファンで、他人のスクリプトから面白い方法を学ぶのが大好きだ。最近、SSHサーバの2要素認証を簡単にするためのauthy-sshスクリプトに出会った。このスクリプト群を見まわしていて、みんなと共有したいたくさんのクールなことを見つけた。 出力に色付けする 出力文字列を、成功した時は緑に、失敗した時は赤に、警告は黄色に色づけしたいと思うことはたくさんあるだろう。 NORMAL=$(tput sgr0) GREEN=$(tput setaf 2; tput bold) YELLOW=$(tput setaf 3) RED=$(tput setaf 1) function red() { echo -e "$RED$*$NORMAL" } function green() { echo -e "$GREEN$*$NORMAL" } function yellow() { e

    私が他人のシェルスクリプトから学んだこと | Yakst
  • Javaジェネリクス再入門 - プログラマーの脳みそ

    ジェネリクスでは、「型」を変数にした「型変数」というものを取り扱う。型変数で何が嬉しいかというと、メジャーな例ではコレクションAPIが挙げられる。java.util.Listとかjava.util.Mapとかのデータを格納するタイプのユーティリティクラスのことだ。 2004年にJavaのバージョンが5.0となるまでは、Javaにはジェネリクスの機能はなかった。なので、Listにデータを格納し、取得する場合は List list = new ArrayList(); list.add("hello!"); String str = (String) list.get(0); といったソースコードになる。 add()の引数はObject型で宣言されており、どんな参照型でもadd()することができた。 get()の戻り値もObject型で宣言されておりキャストが必要だった。このキャストはプログラ

    Javaジェネリクス再入門 - プログラマーの脳みそ
  • HashMapの注意点 - プログラマはサイコロを振らない

    HashMapを使う上での注意点について説明します。 Map型変数を使う HashMapオブジェクトを格納するには、HashMap型変数ではなくMap型変数を使います。 // HashMapオブジェクトの生成 Map<String, String> map = new HashMap<String, String>(); HashMapMapの実装の一つに過ぎません。HashMapMapとして使っているのであればMap型変数に格納した方が自然です。また、パフォーマンス上の問題で他のマップ(TreeMapなど)と差し替えることが容易になるなど、プログラムの汎用性が上がります。HashMap独自の操作が必要である場合(あまり思いつきませんが)を除いてMap型変数を使いましょう。 初期容量と負荷係数 HashMap生成時のパラメータとして、初期容量と負荷係数があります。 初期容量は、Hash

    HashMapの注意点 - プログラマはサイコロを振らない
  • Erlang Tips

    Erlang に関する情報を,自分用メモを兼ねて作成しました. 間違い等見つけた方はブログのエントリまで連絡いただけるとうれしいです. 最終更新:2007/07/04 23:56 目次 Erlangの特性 Erlangは以下のような特徴があります. 簡単に言うと,ネットワークサーバを書くのに向いています. 得意なこと ・大量の並列処理 ・複数サーバでの分散処理(ただしEthernet経由で通信するので専用インターコネクトほどは速くないと思います) 苦手なこと ・純粋な計算処理(C言語の10倍程度遅いようです) ・GUIアプリケーション(WingsというErlangでかかれたGUIアプリはあるが,GUI周りの情報は少ないです) ありそうな勘違い ・マルチコア・SMP環境にすれば,コア数に比例して性能が向上する. →もちろん条件によるので,必ず比例するわけではありません. SMPサポートは条件

  • 株式会社アンタス - 次の時代のマーケティングテクノロジーを

    2024年 夏季休業のお知らせ お客様各位 毎度格別の愛願を賜りありがとうございます。 誠に勝手ながら下記日程で休業とさせていただきます... NEWS

    株式会社アンタス - 次の時代のマーケティングテクノロジーを
  • 「結構便利だからみんな使った方がいいぞ!」という7つのPythonライブラリ - None is None is None

    一部で最強と呼ばれているPythonには, virtualenvやipythonのような絶対入れる超定番以外にも, あると便利なライブラリというものがあります. ここではラッキーセブン, 7つご紹介しましょう. なお, furl以外は3.xに対応しています. requests 覚えやすいWebリクエスト(urllib.request.urlopenの代替) furl URLの扱いをもっとシンプルに(urllib.parse.urlparseの代替) PyQuery jQueryのスクレイピング力をPythonに(html.parser.HTTPParser, lxml, BeautifulSoupの代替) Send2Trash/Send2Trash3k クロスプラットフォームな「ごみ箱へ送る」 Windows向けPythonランチャー 2.xと3.xを切り替える PySide/PyQt4

    「結構便利だからみんな使った方がいいぞ!」という7つのPythonライブラリ - None is None is None
  • Python Tips

    このページは Python 2.3 くらいのときに書かれたものです。 内包表記とλ式 >>> fs = [ lambda: i for i in range(8) ] >>> fs[2]() 7 各 i ごとにクロージャが生成されるのではなく、ひとつのクロージャで i の値が書き換えられるため、このような結果になる。これは期待した動作ではないと思う。 同じ問題は for ループでも起こる。 >>> for i in range(8): ... fs.append( lambda: i ) ... >>> fs[2]() 7 これは、デフォルト引数をうまく使えば回避できる。 >>> fs = [ lambda i=i: i for i in range(8) ] >>> fs[2]() 2 デフォルト引数 これは Tutorial にも載っているけど。 >>> def f(xs = []):

  • perl - 勝手に添削 - Storable : 404 Blog Not Found

    2006年05月11日13:45 カテゴリLightweight Languages perl - 勝手に添削 - Storable というわけで、ひさかたぶりの勝手に添削のコーナーです。今回は、Storableに関して。 [を] Perl の Storable モジュールのメモ store [ $first->{uhyo}, $first->{hogera} ], "a.dat"; codingそのものに問題はありませんが、damianにも載っていないbest practiceをここで一つ紹介しましょう。 Always use nstore and nfreeze instead of store and freeze. 常にnstoreとnfreezeを使う事。storeとfreezeではなく。 理由は、その方がずっとつぶしが利くからです。頭にnをつけるだけで、platform依存が

    perl - 勝手に添削 - Storable : 404 Blog Not Found
  • C言語 Super Technique 講座

    このページは、C言語の中級テクニックを中心に解説する。長らくプログラマをしていると、C言語の面白い使い方例が蓄積している。これらを一挙公開するために、このページを作ったのである。しかし、単にCに留まらず、他の言語の面白い特徴なども紹介していく。 内容的にはかなりヘヴィである。当然のことながら、「ポインタ虎の巻」程度の内容はちゃんと使いこなせることを前提とする。意外な技、落し穴、派手なテクニックなど、内容満載だが、ちゃんとデータ構造とアルゴリズムなども説明できれば良いと思う。(まあ、ぼちぼちやってきいます...) 以下の目次には手引きのために、評価がつけてある。凡例として示す。 レベル その解説で記載されている内容のレベル 有用度 その内容が実際に役に立つものかどうか 邪悪度 その内容が薦める方法が、一般的なコーディング規約の中で「邪悪」とされがちなものであるか否か。関数ポインタの活用(濫用

    bluele
    bluele 2012/01/10
  • コンピューター:C言語講座:構造体・共用体・ビットフィールド

    コンピューター:C言語講座:構造体・共用体・ビットフィールド 構造体や共用体はC++などが出現するまでは私にとって他の言語に比べて最もC言語の素晴らしい物でした。とくに構造体を使わずにCADのような大規模なアプリケーションを組めといわれたら気を失ってしまいそうです。今となってはC++JAVAなどのように更に上をいくクラスが出現してしまっていますからやや古くさいのは否定できませんが、いずれにしてもC言語を使いこなしているかどうかはこの構造体と関数とポインターを使いこなしているかで判断できるくらい重要なものではないでしょうか? ここでは構造体がどういうものかとか、そういった入門書に出ているような事ではなく、ビットフィールドや共用体まで含めて考えてみたいと思います。 構造体 構造体はご存知の通り、複数のさまざまな型のデータをまとめて管理するものです。これはデータを保持しておく際にも非常に便利で

    bluele
    bluele 2012/01/09
  • POINTER「配列とポインタの完全制覇」「C言語 ポインタ完全制覇」

    タイトルは「C言語 ポインタ完全制覇」。 このページの書籍化とはいえ、内容の大半は書き下ろしですので、 既にWebで読んでおられる方にも決して損はさせません。 詳細はこちらへどうぞ。 「C言語 ポインタ完全制覇(第2版)」書籍情報 「C言語 ポインタ完全制覇」書籍情報(旧版) 技術評論社さんによる書籍案内はこちら。 第2版 旧版 修正履歴は、このページの末尾にあります このページについて 全くもって僭越ながら、恐れおおくも偉そうにも、 こんな文書をWWWで公開させていただくことにしました。 この文書は、もともと社内向けの教科書として作成したものです。 私は、一介の文系出身プログラマであり、 特に情報関係の教育を受けたわけでもなく、 プログラミング言語に深い造詣を持っているわけではありません。 この文書にも多くの誤りや、誤解を招く表現があるかと思います。 そのような記述を見付けられた方は、ぜ

    bluele
    bluele 2012/01/08
  • Super Technique 講座~ガベージコレクタ

    「ガベージコレクション(略してGC)」は、メモリ管理の大技である。主として Lisp インタプリタで利用したセルを再利用するために使われて来たが、最近のオブジェクト指向言語でも、Smalltalk-80 に始まり、Java や Eiffel でプログラマが作成したインスタンスについて、明示的にデストラクタを起動しなくても済むように利用されている。このようにプログラミング言語とその環境にとって、大変重要な機能なのだが、別に自分が書くアプリケーションで使っていけないわけではない。また、一度自分で実装してみると、ガベージコレクタを備えた言語を使う場合でも、その動作に対する洞察が効くというものである。ここでは、メモリ管理の技との関連でガベージコレクタについて考察してみよう。 realloc モデル 改良された malloc & free モデル 汎用的な malloc & free モデル 参照カ

    bluele
    bluele 2012/01/07
  • git/git覚書 - TOBY SOFT wiki

    はじめに † gitの個人的によく使いそうなコマンドをまとめてみました。自分用チートシートです。 よく使うコマンドは ../コマンドの省略(alias)設定をする方法にて省略形を作っておくと便利です。 各コマンドの詳細は git (コマンド名) --help すると記載があるのでそれ見てもらったら早いと思われます。 ↑ 前提 † 変更したファイルをコミットするときは、 [ローカル]→(addコマンドする)→[インデックスに入る]→(commitコマンド)→[リポジトリに入る] という状態の推移に注意して下さい。 gitでは「コミットしたいものをaddすると一旦インデックスに入るので、次にインデックスに入れたものをcommitでリポジトリにコミットする」と私は理解をしましたが、来の用途とは別かもしれないです。 ※TODO: 概念の背景を後で調べる ※Subversionように「addでファ

  • オンラインCookbookを集めてみた – taichino.com

    最近Python クックブックを良く眺めているのですが、Cookbookをまじめに活用しているのは実は初めてです。以前はプログラムは動けば良いと思っていたのですが、pythonを使い始めてから、他の言語を使う時も「どう書くのが正解なのか」を結構意識するようになりました。そうするとCookbookが非常に役に立つわけで、オンラインで使えるCookbook・逆引きサンプル集的なサイトを集めてみました。 python周辺

  • クラブ・ラボ

    このサイトは、 KLab株式会社が公開しているオープンソースソフトウェアや実験サービスについて紹介するはずだけど ただいま引越中です。

  • リポジトリからファイルを削除する - Git による版管理環境を構築する

    リポジトリからファイルを削除したい場合には、まずは次のようにして、そのファイルを削除対象としてステージングします。 git rm ファイル名 ここで、対象のファイルが既にステージングされた状態だった場合には、次のようなメッセージが表示されて、削除操作がいったん打ち切られます。 error: 'test.txt' has changes staged in the index (use --cached to keep the file, or -f to force removal) このように、ステージングされた状態のファイルをリポジトリから削除したい場合には、次のように "-f" オプションをつけて "git rm" を再実行します。 git rm -f ファイル名 これで、指定したファイルが削除対象として、ステージングされました。 リポジトリ内のこのファイルについては、次のコミット時

  • Gitを使いこなすための20のコマンド | OSDN Magazine

    LinuxカーネルやRuby on RailsPerlなど、近年多くの大規模プロジェクトで採用されているバージョン管理システムが「Git」だ。Gitには非常に多数のコマンドが用意されているが、日常的に使用するコマンドは20個程度と言われている。記事では、Gitを使いこなすために覚えるべき20個のGitコマンドを紹介する。 LinuxカーネルやRuby on RailsPerlなど、近年多くの大規模プロジェクトで採用されているバージョン管理システムが「Git」だ。Gitには非常に多数のコマンドが用意されているが、日常的に使用するコマンドは20個程度と言われている。記事では、Gitを使いこなすために覚えるべき20個のGitコマンドを紹介する。 なお、Gitの基的な考え方や使い方については分散バージョン管理システムGit入門でも紹介しているので、そちらも参照してほしい。

    Gitを使いこなすための20のコマンド | OSDN Magazine
  • はてなブログ | 無料ブログを作成しよう

    日記_2024.8.29 鞍馬と貴船 29日は鞍馬と貴船に行ってきました。こんな天気でバイクは無理、でも引きこもるのも嫌なので前々から行きたかった鞍馬と貴船に行くことにしました。ただ、いつ大雨が降っても全くおかしくないので天気がヤバそうなら帰ることにします。普通に日帰りできる距離ですから…

    はてなブログ | 無料ブログを作成しよう
  • GitHubへpull requestする際のベストプラクティス - hnwの日記

    みなさん、Git使ってますか?僕はまだメインのVCSがSubversionなのもあって、なかなか慣れません。せっかくGitを使っているのに、ちょっと不便なSubversionくらいの位置づけです。でも、同じような理解度の人って多いんじゃないでしょうか。 一方で、最近はGitHub管理のオープンソースプロジェクトが増えてきました。バグレポートを送るにしてもpull request*1が前提のような空気があり、Git初心者には少し敷居が高い印象があります。 そんな僕も先日初pull requestをしてみたんですが、色々な失敗の積み重ねで残念なpull requestになってしまいました。その反省を元に、稿ではpull requestする際のベストプラクティスを紹介します。これは「Git Workflow」をベースにコマンド例などを加筆したものです。 概要 pull requestする際は、

    GitHubへpull requestする際のベストプラクティス - hnwの日記
    bluele
    bluele 2011/11/04
  • ローレベルフォーマット Low Level Format - 物理フォーマット

    余談だが筆者はHDDメーカーの人間ではなくプラスチックフィルム袋の工場を経営している。仕事でアルミ袋やポリ袋、OPP袋、ラミネート袋、チャック袋、印刷袋、無地袋を使っている読者はお気軽に相談いただきたい。 ローレベルフォーマッタを入手する SCSIの場合SCSIカードのBIOS上で操作できる。SATAやIDEの場合は、ハードディスクメーカー製のものをダウンロードして使う。 自社製Hハードディスクに対してのみ有効な場合とどんなハードディスクでも大丈夫な場合とがある。もっともメージャーなローレベルフォーマッタは旧MAXTORのMAXLLF.EXEである。このMAXLLF.EXEはどのメーカーのハードディスクでも利用できる。 MAXLLF.EXEのダウンロード先はこちら  maxllf.exe HDDメーカー各社ローレベルフォーマットツールダウンロード先 Maxtor PowerMax(どのメー