タグ

プログラミングに関するchitoku_kのブックマーク (25)

  • Big Sky :: モテる男のVim script短期集中講座

    ここで関数リファレンスのみ格納先の変数の先頭が大文字になっていますが、これはVim script特有の制限になります。 数値は一般的な言語と同じ様に四則演算できます。文字列については.を用いて連結します。 また文字列は添え字によるアクセスが可能で、pythonの様に echo "hello"[1:3] という記述が出来ます。その他文字列操作関数については:help evalに詳しく記述されています。 また型同士の比較についてはthincaさんの記事が役立ちます。 Vimスクリプト基礎文法最速マスター - 永遠に未完成 Vimスクリプト基礎文法最速マスター vim 流行ってるみたいなので遅ればせながら便乗。需要?何それおいしいの? Perl基礎文法最速マスター - サンプルコードによるPerl入門 Route 477... http://d.hatena.ne.jp/thinca/20100

    Big Sky :: モテる男のVim script短期集中講座
  • パスワードの判定にstrcmpを使うべきでない理由

    strcmpを使ってパスワードを判定すると、タイミング攻撃 (timing attack) にやられる危険性があることの説明 (約20分)。 まとめ: パスワードなどの文字列を strcmp関数 (およびそれに類する関数) を使って判定すると、 その判定にかかる時間を測定することで、パスワードが推測できてしまう場合がある。 これをタイミング攻撃 (timing attack) という。 この例では、36種類の文字を使った8文字分のパスワードを推測するのに、 通常のしらみつぶしな方法 (bruteforce attack) … 368 = 2821109907456回 の試行が必要なのに対して、 タイミング攻撃を使った方法 … 10000×8 = 80000回 しかかからない。タイミング攻撃を成功させてしまうと、 重要な情報が漏洩してしまう危険性がある。 これを防ぐためには、なるべく実行時間

    chitoku_k
    chitoku_k 2016/02/11
    わかりやすい、何を食べているのかも気になる
  • Amazonが流行ると本屋が潰れる法則は正しいのか? | Tips of Rubbish

    Hello World表示 for文 if文 ファイル読み込み ファイル書き込み ファイル・ディレクトリ操作 計算における演算 文字列操作 配列 正規表現 関数 プログラムのinclude 他言語連動 負荷計算 複数環境における実行環境 1、Hello World表示 どんな方法でもいいので、その言語を書ける基盤が整っていて、print出来る証 そしてプログラムを実行できる環境構築が出来る証 2、for文 プログラムの醍醐味は、繰り返しを端的に行える事にある。 人間が手作業でやると、タイムロスや失敗が生まれるが、バグの無いプログラムは無敵である。 上記、printと組み合われるとアウトプットも可能。 3、if文 上記for文と組み合わせると、既に条件分岐による大量処理が可能となる。 先ずは簡単なif文から書いてみよう。 条件演算も、言語により特性が違うので、一通り出来る事。 同じ、異なる、

    Amazonが流行ると本屋が潰れる法則は正しいのか? | Tips of Rubbish
    chitoku_k
    chitoku_k 2015/10/19
    関数型言語が涙を流してる音が聞こえる
  • プログラマが体験するべきではない50の危険なこと - Cube Lilac

    Togetter - 「プログラマが体験するべき50の危険なこと」 が面白かったのでリスト化してみました(タイトルはこっちの方が適切な気がしたのでちょっと変えましたzzZ).タイトルの元ネタは プログラマが知るべき97のこと かと思ったら 子どもが体験するべき50の危険なこと だそうです.類似シリーズとして,プログラマが知るべきではない97のこと,プログラマの嫁が知るべき97のこと も併せてどうぞ. twitterにハマる ノートPC持ったまま飲み会参加 なれる!SEを読む root権限を持つ rm -rf / crontab -r 「AAA」とかいう変数名 乱立するxxxStringクラスシリーズ ヘッダファイルがランダム 「コード汚いから1から書き直そう!!」 テストコードのないリファクタリング コンフリクトしたソースコードを強制コミット SVNでのコミット合戦 バージョン管理なしでの

    プログラマが体験するべきではない50の危険なこと - Cube Lilac
  • CodeIQについてのお知らせ

    2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod

    CodeIQについてのお知らせ
  • 20億行のコードを保存し、毎日4万5000回のコミットを発行しているGoogleが、単一のリポジトリで全社のソースコードを管理している理由

    20億行のコードを保存し、毎日4万5000回のコミットを発行しているGoogleが、単一のリポジトリで全社のソースコードを管理している理由 Googleは検索サービスやGoogle Apps、Google Cloud Platformなど巨大なサービスを多数運営しています。その同社は、20億行にもおよぶソースコードの管理をサービスやプロジェクトごとに分けず、すべて単一のリポジトリで管理しているそうです。 先週9月14日にサンノゼで開催されたイベント「@Scale」で、Googleによるセッション「The Motivation for a Monolithic Codebase: Why Google Stores Billions of Lines of Code in a Single Repsitory」(単一コードベースへの取り組み:なぜGoogleは単一リポジトリに数十億行ものコー

    20億行のコードを保存し、毎日4万5000回のコミットを発行しているGoogleが、単一のリポジトリで全社のソースコードを管理している理由
  • [Gulp][SketchTool][Sketch 3]これからはじめるGulp(22):gulp-iconfontとgulp-sketchを使ったアイコンフォント作成の自動化

    はじめに この記事はGulp.js(全俺) Advent Calendar 2014です。 前回のこれからはじめるGulp(21):gulp-awspublishプラグインを使ったAmazon S3への静的WebサイトパブリッシュでAmazon S3への静的サイトパブリッシュを試しました。今回はSketch 3のデザインデータからgulp-iconfontとgulp-sketchプラグインを使ってアイコンフォント作成を自動化してみたいと思います。 gulp-iconfontについて gulp-iconfontはSVGアイコンを使ってSVG/TTF/EOT/WOFF形式のフォントを作ることができます。 gulp-sketchについて gulp-sketchはこれからはじめるGulp(19):gulp-sketchとgulp-execを使ったSketch 3デザインデータの画像書き出しの回で紹

    [Gulp][SketchTool][Sketch 3]これからはじめるGulp(22):gulp-iconfontとgulp-sketchを使ったアイコンフォント作成の自動化
    chitoku_k
    chitoku_k 2015/09/07
    gulp でアイコンフォント生成
  • 最も酷いコードを書くのはCプログラマ!?

    プログラマであれば誰しも一度は利用するプログラミング言語に関係なく、最善ではないどころか、"酷い"コードを書いたことがあるだろう。それは納期に間に合わせるためにやむなく実装したものかもしれないし、純粋に技術力が足りない、または、まともに実装するのが面倒くさくて書かれたショートカット的なコードかもしれない。そして文言の違いはあれど、コメントにはこう書くだろう。「/* これは酷いコードだから、誰かいつか書き換えを。 */」と。 ITworldが記事「C leads the way in "ugly hacks"|ITworld」で、コードに関する興味深い分析結果を公開した。それは、GitHubの検索機能を使用して「ugly hack」(酷いコードだ)という文字列が含まれたファイルを調べてまとめたもので、他のプログラミング言語にダブルスコア以上の差をつけてC言語が最も多く「ugly hack」と

    最も酷いコードを書くのはCプログラマ!?
  • Algorithm - 連想配列の実装としてのハッシュはオワコン? : 404 Blog Not Found

    2012年01月17日11:45 カテゴリアルゴリズム百選Tips Algorithm - 連想配列の実装としてのハッシュはオワコン? 珠玉のプログラミング Jon Bentley / 小林健一郎訳 つまり「終わったコンテナ」。 以前からうすぼんやりと考えて来た危惧が、すこしはっきりと見えてきた。 徳丸浩の日記: Webアプリケーションに対する広範なDoS攻撃手法(hashdos)の影響と対策 もうそろそろハッシュ(テーブル)以外の手段の連想配列の実装手段を格的に模索するべきではないか、と。 そのデータ構造は、君の魂を差し出すに足るものかい? 連想配列(Associative array)がコレクション(Collection)、すなわち数多のデータ構造をまとめるデータ構造としての覇者となったのはもはや疑いようがない事実でしょう「配列で実装されるデータ構造ではなくて、配列を実装するデータ構

    Algorithm - 連想配列の実装としてのハッシュはオワコン? : 404 Blog Not Found
  • 5 Programming Languages Marked for Death - Dice News

    As developers embrace new programming languages, older languages can go one of two ways: stay in use, despite fading popularity, or die out completely. We predict the following languages will likely die: Perl There was a time when everyone seemingly programmed in Perl. But for those of us who used the language regularly, there was something about it that didn’t seem right. One programmer I knew ca

    5 Programming Languages Marked for Death - Dice News
    chitoku_k
    chitoku_k 2014/10/18
    絶滅危惧種なプログラミング言語5種類 / VB.NETがC#に置き換えられるっていうのはまさに同意
  • New Programming Jargon

    20 Jul 2012 New Programming Jargon Stack Overflow – like most online communities I've studied – naturally trends toward increased strictness over time. It's primarily a defense mechanism, an immune system of the sort a child develops after first entering school or daycare and being exposed to the wide, wide world of everyday sneezes and coughs with the occasional meningitis outbreak. It isn't alwa

    chitoku_k
    chitoku_k 2014/10/03
    Stack Overflow発祥のネタ
  • Stack Overflow発 プログラミングの隠語(ジャーゴン)30選

    お馴染みのCoding Horrorでプログラミングの隠語(ジャーゴン)についての記事が話題です。 このエントリの元になったのはStack Overflow上で行われた「あなたが新しく作ったプログラミングのジャーゴンはなんですか?(New programming jargon you coined?)」という質問です。この質問にはなんと386もの回答が寄せられ、その中でStack Overflowのコミュニティの投票で上位になった30のジャーゴンをリストにして解説したのがCoding Horrorの「Coding Horror: New Programming Jargon」という記事です。 下記がコミュニティによって選ばれたジャーゴンのリストです。 1. Yoda Conditions(ヨーダ条件式) 変数とリテラルを比較する際にリテラルを左辺に置く記述。スターウォーズのヨーダが「The

    Stack Overflow発 プログラミングの隠語(ジャーゴン)30選
    chitoku_k
    chitoku_k 2014/10/03
    Yoda ConditionsとかEgyptian Bracketsとか好き
  • 古いプログラミング言語がなくならない理由 | readwrite.jp

    今日よく知られているプログラミングの多くは、古い言語として取り上げられるに十分な歴史を持っている。PHPは20年、Pythonで23年、HTMLは21年で、RubyJavaScriptは19年だ。Cなどは42年もの歴史がある。 誰もこの様な事になるとは思いもしなかっただろう。今でも出版されている、世界で最初のCの教の共著者であるコンピューターサイエンティスト、ブライアン・カーニハンですらだ(C自体は同じの共著者であるデニス・リッチーによるものだ。彼は2011年に亡くなっている)。 「編集者とこのを5000部売れたらなという話をしたのをなんとなく覚えている。もっといいものにも出来たが、学生が2014年になってもあのを使っているなど考えもしなかったことだ」と、カーニハンは最近のインタビューで答えてくれた。 Cがあまりに長く使われていることから、グーグルが今でもCを使って解決する問題を

    古いプログラミング言語がなくならない理由 | readwrite.jp
    chitoku_k
    chitoku_k 2014/09/25
    C で書かれたプログラムをわざわざコストを払ってまでして他の言語に書き換えるメリットも皆無だしそんなもの
  • 車買取一括査定を依頼してこんな交渉には注意?

    少しでも高く車を売りたい。そして申込みをスムーズに行うためにも 車買取の一括査定サービスはとても便利です。 複数の業者へ一斉に中古車査定を依頼するのですが、交渉には少し注意が必要です。 一括査定からの申込みなので、業者も始めから競争相手がいることは知っています。 業者としては少しでも低い査定額で早く決めてしまいたいもの。 他の業者が来る前に、決断させるような交渉を進めます。 「今決めるなら、プラス10万円上げます」というような上乗せした査定額を 提示することもあります。思わず決めたくなりますが、冷静に考えてみると 最初からプラス10万円の提示ができたはずです。このやり方に誠意を感じますか? それでも決めてしまうか、他の業者を待つかはご自身次第になりますが、 このような交渉術はよくあることです。頭に入れておくと良いですね。 高額な査定額を探すためには、査定を依頼した車買取業者の金額がすべて

    車買取一括査定を依頼してこんな交渉には注意?
    chitoku_k
    chitoku_k 2014/08/16
    returnを禁止する
  • これからObjective-Cを書くプログラマへ - Qiita

    Objective-Cを愛してください Objective-CはCの拡張です。 Cでできることはすべてできるし、Cでできないこと( 恐らく計算機では不可能なこと )はすべてできません。 Objective-CはJavaよりも年上です。 「Objective-CってJavaに似てるね」と言われると、Objective-Cを愛するものとしては少し悲しい気分になります。 歴史的にはJavaがObjective-Cの影響を受けています。 メッセージングに使うブラケット[]はObjective-Cのチャームポイントです。 Objective-CがSmalltalkの子であると証明するための、とってもチャーミングな形質です。間違っても「キモい」なんて言わないであげてください。 関数とメソッドを見た目で区別できるという利点もあります。 メソッド名が長いのはメソッド自身がドキュメントの役割を果たしているか

    これからObjective-Cを書くプログラマへ - Qiita
    chitoku_k
    chitoku_k 2014/03/06
    雇用創出に一役買ってるのか…なるほどね(曲解) ブラケットはどう考えても気持ち悪いんだけど慣れなんだろうか…
  • 「プログラマではない人」は、プログラマのことをもっと理解するべき

    プログラマと一口に言っても色々な分野があります。 私はWebやスマホアプリの分野なので、その目線で、かなり大げさに書いています。 プログラマという括りにも語弊があるのですが、気にしないでください。 プログラマというのは、とても難解な職種であるように思われています。 実際にやはり特殊な職業ではあるのでしょう。 わからない人から見れば、「やつらは一体あんな真っ黒な画面に文字だけが表示されている画面を睨んで、なにを考えているんだ」と思うでしょう。 体もほとんど動かさない。一体何をやっているのかもわからない。 表情もほとんど変わらない。いつも残業している。 こんなイメージかもしれません。 こういった現状をプログラマからすると、いかにプログラマに対して理解が低いものかと嘆くことが多々あります。 ですので、是非「プログラマではない」皆さんには、プログラマに対する理解を深めて欲しいと思うのです。 そうす

    「プログラマではない人」は、プログラマのことをもっと理解するべき
    chitoku_k
    chitoku_k 2014/02/26
    「バグ」という言葉にプログラマーが敏感で、その仕事自体が理解されにくい性質を持っているというのも確か。めやっぱり非プログラマーにこの性質を理解してもらうのは難しい気がした。
  • C99の仕様

    長い歴史を持ちながら、依然として人気の高いC言語。その最新仕様の情報にキャッチアップするための連載スタート。今回は1999年に策定された「C99」を取り上げる。 連載 INDEX 次回 → C言語(以降、単にC)はDennis Ritchieによって1969~1973年の間にベル研にて開発されたプログラミング言語である。長い歴史を持つと共に非常にポピュラーな言語で、プログラマーでCを知らない人はまずいないと言っていいだろう。プログラミング言語のシェアを調査しているTIOBEでも、ここ最近は常に1、2位を占めている。 Cの言語仕様は今から25年近く前である1989年に初めて規格化され、これは一般に「ANSI-C」と呼ばれている。ANSI-Cは長らくCの言語仕様のスタンダードの位置を占め、世の中の大半のプログラマーは、このANSI-Cに慣れ親しんでいることだろう。しかし、実はCの言語仕様はその

    C99の仕様
    chitoku_k
    chitoku_k 2014/02/06
    結構当たり前のように使ってたのもあれば知らないのもたくさんあって勉強になるな
  • WPFでほかのデスクトップテーマを適用する方法 - Yamakiの日記

    以下の2つのblogを参考にさせていただきました。 http://notstatic.com/archives/56 WPF: Changing control style based on the system theme – Lester's XAML Blog WPFでは、LunaやRoyaleといったマイクロソフト公式のテーマを簡単に適用させる方法が用意されています。以下にその方法を紹介します。 参照設定で下記の4つのアセンブリを追加します。 PresentationFramework.Aero.dll PresentationFramework.Classic.dll PresentationFramework.Luna.dll PresentationFramework.Royale.dll XAMLコードは下記のように記述します。 XAML <Window x:Class="

    WPFでほかのデスクトップテーマを適用する方法 - Yamakiの日記
  • プログラマーのジョーク

    language agnostic - What is your best programmer joke? - Stack Overflow 私はコンピューターサイエンス科で教育しているが、何かユーモアによって場を盛り上げたい。ユーモアは場を退屈させず、物事を印象深くするし、物事を学ぶモチベージョンにもつながる。さらに、ジョークが技術的な理解を必要とするのであれば、さらにモチベーションが上がるのだ。 このstackoverflowの質問を受けて、様々なプログラマーのジョークが投稿されている。その評価順に紹介すると・・・ A man flying in a hot air balloon suddenly realizes he’s lost. He reduces height and spots a man down below. He lowers the balloon furth

    プログラマーのジョーク
    chitoku_k
    chitoku_k 2014/01/14
    これは面白い
  • もっともっと良いコーディングをするための勘所8つ - 病みつきエンジニアブログ

    先日とあるコードレビューを拝見することがあったのですが、それにインスパイアされて記事を書いてみます。レビュワーの方が言ったことも含んでいますが、それと必ずしも一致するものでもありません。 Objective-Cのコードで書いていることが多いですが、わりと一般論だと思います。 photo by Hugo-photography 命名規則は言語の「普通」に任せる 例えば、Objective-Cだと変数にはcamelCaseを使うことが多いです。逆にRubyではsnake_caseを使ったりします。もしくは、略語を使うとか使わないとか、そういう違いもあります。 変数名に対してどういう書き方をするかというのは、個人の好みではなく、言語の慣習に任せるのがいいのではないかと思います。 言語の慣習の調べ方は、Githubで「stars:>100」と検索して、言語を絞るといいでしょう。(参考:Rubyの例

    もっともっと良いコーディングをするための勘所8つ - 病みつきエンジニアブログ
    chitoku_k
    chitoku_k 2013/12/01
    共感できるところが多いのでメモ。早期リターンとか文字列埋め込みとか、直接動作に関係ないコードの美化も意外と大事。