For full functionality of this site it is necessary to enable JavaScript. Here are the instructions how to enable JavaScript in your web browser.
For full functionality of this site it is necessary to enable JavaScript. Here are the instructions how to enable JavaScript in your web browser.
何が良いプログラムかという点はもちろん人やコンテキストによって異なりますが、少なくともプログラマーとしての私の信念としては、 機能拡張や変更が容易なプログラム 単体試験によって正しく動作することの検証が容易なプログラム どういった内容が記述されているか理解しやすいプログラム といったものこそ、「品質の高い」プログラムが持つべき性質として、まず真っ先に挙げるべき事項であると考えています。もちろん、前提として顧客の要件に従うということは大切なことです。しかし、一般に要件は長期にわたって変更されるものですし、使い捨てのプログラムを除けば、プログラムを長期にわたって保守するコストという点も見過ごすべきではありません。したがって、ユーザーの目には触れない上記の性質をもっと重視すべきだと思うのです。 DRYの原理 上記のような性質を満たすプログラムを作る上で大切になってくる原理として、DRYの原理とい
いろんなエンジニアを見てきて、成功パターンはそれぞれだけれど 失敗パターンはだいたい決まっている。以下、アンチパターン。 成し遂げるのではなく、中途半端で満足する。 自分の責任と考えず、人のせいにする。 よりよくしようとせず、現状維持を良しとする。 仕事を中心においていない。 自分の特徴を構築していない。同世代と比べてさしたる特徴がない。 生活習慣を重視しない。日々の積み重ねに価値をおいていない。 与えられたチャンスに乗っからない。やる前から怖じ気づく。 アウトプットの質にこだわらない。 自分を分析していない。強み弱みを問われても答えられない。 刺激よりも、平穏を求める。変化に弱い。 行動よりも熟考を優先する。考えた末に行動しない。 現在の仕事の進め方に疑問を持たない。既存踏襲が正しいと思っている。 チームへの貢献よりも、自分の仕事の進捗を優先する。 焼き畑農業的な人間関係。信頼の構築では
vimは使いこなしている人は超人のように使いこなしているのですが、「たまにconfファイルいじる時だけ使うよ。まあ、普段はemacsだけどね」という人は、vi時代の機能のみ使っているのをたまに見かけます。 そこで、通ぶって恐縮なのですが、僕が普段vimを使っていてとっても便利で効率が上がると思う操作を紹介したいと思います。また、僕自身が Mac OS X な環境なので、「外部コマンドとの連携」などでWindowsだと再現できないものがあるかもしれません。ごめんなさい。 用語の使い方や理解が間違っている部分があるかもしれませんがその場合はご指摘いただければと思います。あと、「これ抜かしちゃ駄目でしょ!」みたいなのがあればアドバイスお願いします〜。 それでは、 [あとで読む] vimの基本操作 (知っていると思うので省略) 超概略 挿入モードと編集モード キー操作 内容 i 挿入モード突入(文
ウェブサイトやブログの運営でよく使いそうな便利な.htaccessの設定を紹介します。 こういうまとめは定期的にあがってきますが、やっぱり必要なのでシェアします。 10 useful .htaccess snippets to have in your toolbox [ad#ad-2] 下記は各ポイントを意訳したものです。 URLからwwwを削除 hotlinkingの防止 feedをfeedbunnerにリダイレクト カスタムエラーページ ダウンロードファイルの処理 PHPのエラーのログ URLからファイルの拡張子を削除 ディレクトリのファイルリストを見せない ファイルを圧縮して軽量化 文字コードの指定 URLからwwwを削除 SEOなどの理由で、URLからwwwを削除して使うことがあるかもしれません。このスニペットは、あなたのウェブサイトにwww付きでアクセスしてきてもwww無しに向
たまにはこういう生産性のない話題もいいよね! さて、まあおまえらも GNU Screen くらいは使ってるとおもうわけだが。こいつがまたひどいバッドノウハウでさあ。ほとんどの人が他人の .screenrc をコピペしてきて済ませちゃうんだよね。俺くらいカスタマイズして使ってるやつとか見かけないわけよ。本当に。CodeRepos 見ても俺に比肩する規模の .screenrc 書いてる奴はいないもん。で、たまーにプロジェクタに表示して見せたりすると「それどうなってるんですか」とか。まあ一般人のおまえらは info なんか読まないよね。そうだよね。 でも今日は気が向いたから line-by-line で何が起こってるか解説しちゃうよ。 .screenrc の前にスクリーンショットの解説をちょっとだけ これが普段俺が使ってるノート PC の画面である。これで全画面。OS は普通の Ubuntu で
bonlifeです。11月1日に引越をして大阪市民ではなくなりました…。ネットもつながらない陸の孤島で生活してます…。という話はさておき。 [programming][python]pythonで連番ファイルダウンローダ この記事を見ていたら、以下のような処理が載ってました。 def putplace(self, num): """ ex) if self.place == 3, putplace(23) => "023" == 4, putplace(23) => "0023" """ s = str(num) while len(s) < self.place: s = "0" + s return s 数値を指定した桁数になるように前ゼロを付与して文字列にしています。このやり方だと文字列の連結が何度も発生するし、コードがちょっと冗長っぽい気がしたりして。 def putplace(s
世の中にGitのチートシートはいくつかあるけど「Gitを知らない人に渡して最初に読んでもらうのに適したもの」が見つからない。チートシートじゃなくてチュートリアルと呼ぶべきかもしれないけど、とにかく印刷してA4で1枚になるくらいの資料が必要だ。Gitに触れた技術者が軒並み同じ落とし穴でコケるのは正しい状態ではない。「Gitには、indexっていう『コミットする前にワークツリーで行った変更のうちのどの部分をコミットするか整理するための場所』があるんだよ」とか「git revertはsvn revertと違っていきなりリポジトリに変更を加えるから気をつけて」とか最初に言ってもらえればもっとスムーズに進めたはずだ。 というわけでどういうチートシートが必要かに関して考えてみる。 登場人物 http://www.ndpsoftware.com/git-cheatsheet.html このチートシートが
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く