ブックマーク / blog.jnito.com (4)

  • ひどいコードをメンテしてきたからこそ実感する、良いコードや良い設計の大切さ - give IT a try

    はじめに 先日、社内で「良いコードの書き方やお作法、プログラミングの原則って、どうやったら身に付くんだろうねえ?」という話になりました。 もちろん、「を読んで勉強する」っていのも勉強法のひとつなんですが、そもそも、もっと強烈なモチベーションがないと、必死になって良いコードの書き方やプログラミングの原則って勉強できないのでは?なんて思ったりします。 強烈なモチベーションというのは、たとえば、 いったい何なん!?このスパゲティコードは!!! なんでこんなコードを俺がメンテしなきゃあかんの!!?? あ~、もう最悪や!!俺はこんなコード、絶対に書かへんぞ!!!! っていうぐらいのモチベーションです。 というか、これは単純に僕のケースですね、はい。 幸い、ソニックガーデンに入ってからは、周りのプログラマがみんなちゃんとしているので、そんな思いをすることはほぼなくなりましたが、前職、前々職ではそんな

    ひどいコードをメンテしてきたからこそ実感する、良いコードや良い設計の大切さ - give IT a try
  • 漢数字が数字順にソートされない理由を調べてみた - give IT a try

    はじめに:「なぜ漢数字は数字順に並ばない!?」 先日、こんなツイートをしたところ、結構たくさんの人にリツイートされました。(執筆時点で50件以上) 「漢数字はソートしても数字順に並ばない」という事実を生まれて初めて知った。まさかのサプライズ。 pic.twitter.com/Eqx3ltIfHs— Junichi Ito (伊藤淳一) (@jnchito) 2014年11月27日 「なぜ漢数字は数字順に並ばないのか」という問いに対して、表面的な回答をするなら「数字順に並ばないのは、数字の大きさではなく文字コード順でソートされているから」ということになります。 いや、もちろんそれはわかってるんです。 問題は「そもそもなんで数字順に文字コードを振らなかったの!?」ということです。 感覚的には「一郎、二郎、三郎」って並んでほしいじゃないですか。でも、プログラム上でソートすると「一郎、三郎、二郎」

    漢数字が数字順にソートされない理由を調べてみた - give IT a try
    mumincacao
    mumincacao 2014/12/04
    漢数字だけならゆーざそーとでなんとかなるかな?とちょっと考えてみたら単位の有り無しとかただの羅列とかいろいろ考慮しないといけない項目が出てきてちょーめんどそうなのです・・・ (´ロ`;【みかん
  • サンプルストーリーで理解するDNSの設定方法と周辺知識(改) - give IT a try

    2013.4.20 追記 CNAMEの間違った使い方を書いていたので、「3. DNSレコードでCNAMEやAレコードを設定する」の項を一部修正しました。 というか、実際に痛い目に遭いました・・・(T T)。 詳しくは文にて。 2014.10.10 追記 結局Herokuでは「Aレコード + ネイキッドドメイン」の設定を使うことはできなくなりました。 ネイキッドドメインを使う場合は、かわりに「CNAME flattening」という仕組みを使います。 詳しくは以下の記事で説明しているので、参考にしてみてください。 のパン屋のwebサイトをいろいろ更新した話 ~Rails 4アップデートとかサイトの高速化とか~ - give IT a try はじめに みなさん、DNS、ネームサーバー(NS)、Aレコード、CNAME、と言われて、「ああ、アレね」ってすぐに頭の中にイメージが浮かびますか?

    サンプルストーリーで理解するDNSの設定方法と周辺知識(改) - give IT a try
    mumincacao
    mumincacao 2013/04/17
    404 になるから awesome-sns どっと com を whois してみたらまだ空いてたのです・・・ (・x【みかん
  • 正規表現で楽々コード置換 - give IT a try

    会社で紹介した正規表現の入門的なテクニックをこっちにも載せておきます。 まずは例題から ちょっと訳あって、これまで型付けDataTableを使って書いていたロジックを、型無しのプレーンなDataTableに書き換える必要が出てきました。 イメージ的にはこんな感じです(もちろん説明のためにかなり簡略化しています)。 // 変更前 BookShopDataSet.BookTable table = FindBooks(); BookShopDataSet.BookTableRow row = table[0]; Assert.AreEqual("詳説 正規表現", row.Title); Assert.AreEqual("ジェフリ− E.F.フリ−ドル", row.Author); Assert.AreEqual("オライリージャパン", row.Publisher); // 他にもたくさんの

    正規表現で楽々コード置換 - give IT a try
    mumincacao
    mumincacao 2011/08/08
    普段使ってる notepad++ での正規表現置換は row\.(\w+) → row["\1"] な感じで $ じゃなく \ だなぁ・・・ (・x【みかん
  • 1