タグ

netaとprogrammingに関するshimookaのブックマーク (45)

  • 「この位置にprintfが無いとなぜか動かないんだ。」 - Qiita

    はじめに 先日ツイッターで見かけた呟き pic.twitter.com/33Yk02hu1U — TOMO (@tomozh) October 14, 2020 そういうこともあるのか的な反応もあるようなので具体例を挙げてみることにする。 例1 所謂FizzBuzz問題。 #include <stdio.h> void fizzbuzz(int n) { int next; int i = 1; do { printf(i % 15 ? i % 5 ? i % 3 ? "%d\n" : "Fizz\n" : "Buzz\n" : "FizzBuzz\n", i); if (i++ >= n) next = 0; } while (next); } int main(void) { printf((char[]){""}); // この位置にprintfが無いとなぜか動かない fizzbuz

    「この位置にprintfが無いとなぜか動かないんだ。」 - Qiita
  • たった7行でテトリスを実装「七行プログラミング」とは - Qiita

    ブログやってます。更新などはこちら。地方エンジニアの学習日記 七行プログラミングとは プログラミングの言語を問わず、 「7行 × 79文字 」という文字数制限のもとにコードを書くといったこと ショートコーディングと呼ばれるらしいです。 1kbに満たないソースでテトリスが出来るのには感動しました(当時中学生ぐらい) Unix哲学の「スモール イズ ビューティフル」もびっくりです()。 ちなみにスーパーマリオブラザーズは40kb程っていうのも驚き ショートコーダー(Short Coder)とは、プログラムのソースコードを極限まで短縮する技術を持ったプログラマのことである。「ソースコードの短縮」は、一見無意味に感じられるかもしれない。しかし最短コードを達成するには、省メモリ・高速プログラム・処理系の知識に加えて、並外れた集中力と熱いショートコーディング魂が必要なのである。 以下に見つけたソースを

    たった7行でテトリスを実装「七行プログラミング」とは - Qiita
    shimooka
    shimooka 2018/12/03
    やっぱりベーマガ思い出す
  • 可読性の高いコードを書きましょう - Qiita

    コードを書く際は、可読性を心がけましょう。パッと見て何をしているのか分かるコードがいいとされています。 以下はその例です。 Brainfuckで書かれたコードで、65025(0xFFの二乗)までの素数を列挙するプログラムです。可読性が低いと言われている言語ですが、コードを書いた人の意図が簡潔に見て取れますね。 ++++++++++[ >+++++>+<<- ]>.>.<+. [-]> .[-] <<+>>>+++[>+ >>+++>+<<<<- ]>++<<<<[->> >[>>>>>+ >+<<< <<<-] >>>>>>[<<<<< <+>> >>>> -]<< <<[> >>-> +<<<<-]>>>[> [<<< <+>> >>-] >+<< [-]] >>-[ +<[<<<<+>>>> -]<< <<<[>>>>+>+< <<<<-]>>>>>[ <<<< <+>>>>>-]<<

    可読性の高いコードを書きましょう - Qiita
    shimooka
    shimooka 2018/07/24
    『コードを書いた人の意図が簡潔に見て取れますね』確かに
  • オーバーフローが引き起こした面白いバグの話|Rui Ueyama

    一度聞いたら忘れられないような印象深いバグというものがある。僕は数値のオーバーフローと聞くと必ずこの2つのバグを思い出してしまう。どちらも面白いエピソードなのでちょっと紹介してみよう。 一つ目は、初代Civilizationにあったバグである。Civilizationは文明間で戦う戦略シミュレーションゲームで、チンギスハンとかエリザベス女王みたいなプレイヤーを選んで、世界制覇か宇宙開発競争での勝利を目指すというゲームだ。 初代Civilizationにあったバグは、非暴力主義のガンジーが突然核攻撃してくるというものだった。原因は文明が民主主義を採用すると攻撃性が2下がるというロジックだった。初代Civではガンジーの攻撃性は全プレイヤー中で最小の1なのだが、ゲームが進んでインド文明が民主主義を採用すると、攻撃性がマイナス2されてオーバーフローで255になり、ガンジーがゲーム中で突如、極度に攻

    オーバーフローが引き起こした面白いバグの話|Rui Ueyama
    shimooka
    shimooka 2017/11/17
    『初代Civilizationにあったバグは、平和主義のガンジーが突然核攻撃してくるというもの』『核ガンジー』インパクトあるなこれ / これっぽい(違) https://twitter.com/vacanada/status/791504083718856705
  • プログラマをクソコードで殴り続けると死ぬ - megamouthの葬列

    ここにクソコードがある。 誰が作ったかはわからぬ。それが、どのような経緯でクソコードとなったのか、 あるいは、最初からクソコードであったのか、それらは全てクソコード自身が知るのみである。 ファーストコンタクト ある日、営業からシステム案件を打診されたので見積もりして欲しい。というメールが来る。 とある企業の既存システムに機能を追加する簡単な案件ですが、なななんとソースや仕様書をご支給いただけます! と、それはサンタにプレゼントが貰えると信じて疑わぬ子供のような真っ直ぐなメールである。 ソースコードが入った圧縮ファイルを受け取ったプログラマは、早速、コードを読んでみる。 そのシステムが当にいいコードで書かれているかを判断するには時間がかかるが、 クソコードであるかはおおよそ30分でわかる。 インデントがタブとスペースどちらかに統一されていないとか、フレームワークの誤用があるとか、またはフレ

    プログラマをクソコードで殴り続けると死ぬ - megamouthの葬列
    shimooka
    shimooka 2017/08/02
    『誰が作ったかはわからぬ』たまに3ヶ月前の自分だったりすrうわなにをするやめくぁwせdrftgyふじこlp
  • C++のコンパイルエラー爆発を競うコンテスト - Faith and Brave - C++で遊ぼう

    Results of the Grand C++ Error Explosion Competition 少し前に、C++のコンパイルエラーの長さを競うコンテストが開催されていました。 受賞のカテゴリは2つあり、ひとつめは最小コードで最大のコンパイルエラーを出した人、もうひとつは芸術的な評価による受賞です。 最小コードで最大のコンパイルエラー この部門で優勝したのはEd Hanwayさんという方で、ソースコード量に対して59億倍のコンパイルエラーメッセージを出力したそうです。 それには、自身を2回インクルードするという手法が使われていたそうです。 #include ".//.//.//.//jeh.cpp" #include "jeh.cpp" 次点として、インクルードに後方参照を使用した、7億9千万倍のコンパイルエラーを出力するコード: #include "set>.cpp" #incl

    C++のコンパイルエラー爆発を競うコンテスト - Faith and Brave - C++で遊ぼう
    shimooka
    shimooka 2017/06/23
    2014年のエントリだけどブクマ / 『ソースコード量に対して59億倍のコンパイルエラーメッセージを出力』なかなかインパクトある。
  • ドナルド・トランプ氏をイメージしたプログラミング言語「TrumpScript」が滅茶苦茶すぎる - BppLOG

    アメリカ大統領選挙候補者であるドナルド・トランプ氏をイメージした Pythonベースのプログラミング言語「TrumpScript」が公開されています。 特徴が滅茶苦茶だったのでご紹介します。 GitHub - samshadwell/TrumpScript: Make Python great again どうやら米ライス大学の24時間ハッカソンで作られたようです。 ハッカソンでの優勝は逃したものの、日々issueにバグ報告が上がっており、 よりトランプ氏らしくなるように改善がされているようです。 特徴 浮動小数点型は使えず整数のみ。アメリカは中途半端なことはしない。 数値は100万より大きくなくてはいけない。それより小さい数字は取るに足らない。 importは使えない。全てのコードはアメリカ製でなければならない。 True,Falseの代わりにfact,lieを使う。 変数名に使えるのは

    ドナルド・トランプ氏をイメージしたプログラミング言語「TrumpScript」が滅茶苦茶すぎる - BppLOG
    shimooka
    shimooka 2016/07/27
    「USA!USA!」のAAが出てきそうなイメージ
  • 長文日記

    shimooka
    shimooka 2016/07/01
    オチが良い
  • not found

    shimooka
    shimooka 2016/06/30
    『PHPが重いというのは有名な話』『PHPが重いというのは有名な話』『PHPが重いというのは有名な話』『PHPが重いというのは有名な話』『PHPが重いというのは有名な話』『PHPが重いというのは有名な話』『PHPが重いというn(ry
  • エンジニアの芸能事務所が発足、各プログラミング言語の担当アイドルを募集

    システム開発およびエンジニア派遣事業を行うリベラルエンジニアズは4月15日、「エンジニアの芸能事務所」キャンペーンと題し、各プログラミング言語の担当アイドルを募集すると発表した。 同キャンペーンは、所属エンジニアのタレント化を目的に行われるもので、オーディションによって入社の可否が決定される。入社後は、エンジニアとして仕事をしながら、SNSなどで自分を発信し、サイドビジネスや社内ジョイント・ベンチャーなどの活動を行う。イベントの登壇や、各種メディアなどへの出演も予定しているという。 同社は、JavaPHPRubyなど全部で12のプログラミング言語に対して「アイドル」を募集しており、すでにCOBOLの担当者が決定している。

    エンジニアの芸能事務所が発足、各プログラミング言語の担当アイドルを募集
    shimooka
    shimooka 2015/04/16
    なんだこれ
  • 「エンジニアでも恋がしたい!」〜転職初日にぶつかった女の子が同僚だった件〜|paizaオンラインハッカソン4 Lite

    ドッキドキの転職初日、最初の仕事炎上PJの鎮火!? 転職初日の秋山氏(あなた)に与えられたミッションは、絶賛炎上中のプロジェクトを鎮火する事です。炎上い止める期待の新人としての役割を全うできるか!?ドキドキの初仕事、無事にコーディングをクリアして、野田さんにいいとこ見せちゃいましょう! 在庫計算プログラムを作成してください。改行区切りで N 個の商品の各在庫数 S が入力されるので、その合計を出力して下さい。 解答次第でこの後のストーリーが変わります!!

    「エンジニアでも恋がしたい!」〜転職初日にぶつかった女の子が同僚だった件〜|paizaオンラインハッカソン4 Lite
    shimooka
    shimooka 2014/12/03
    『ドッキドキの炎上PJ』まで読んだ
  • PHP・⌒ ヾ(*´ー`) ポイ Rubyist is better than PHPer | つい全力ツッコミしてしまうエンジニアCEOのブログ | sumyapp

    株式会社アクトキャットのCEOのブログです。Web系スタートアップ・ベンチャー企業に興味がある人や就活生に役立ちそうな事を自由に考えて投稿しています。 Rubyist is better than PHPer、ルビー使いがペチパーより優れている理由を3つ上げます。PHPおよびPHPerはコードを書くのが嫌いPHPerは実はHTMLに毛が生えた程度しか使えない人が多いPHPは低級プログラマと過去の負債に引きずられるRubyとだけ比較してますが、Pythonと比較しても、Node.jsと比較しても別に良いでしょう。結果は一緒です。さぁPHPを投げ捨てよう!PHPおよびPHPerはコードを書くのが嫌いこの根拠は、PHPがほかの言語に比べてPaaSで動きにくい、というのを根拠にしています。PaaSで動くためには、少なくても下記の条件を満たしている必要があります。DB Schemeをコードで管理して

    shimooka
    shimooka 2014/04/29
    システムを個人で開発するだけ開発して、運用はやらない(やったことがない)のかな?という印象。毎回まっさらから書けて新しい技術どんどん組み込める環境なら遺産なんて残らないし、苦労しないんじゃないかな。
  • バイナリかるた

    shimooka
    shimooka 2013/10/28
    『スパーン!! みたいな感じです』じゃねーよw
  • #プログラマのセリフをジブリっぽく

    ぷりん @puddingat 隠された危険なコードが悪用されそうになるのを主人公が止めようと大冒険するところまで妄想した。 ーー全(IT)業界人が(コードを破壊するシーンで)泣いた。 2012-07-01 23:46:53

    #プログラマのセリフをジブリっぽく
    shimooka
    shimooka 2013/09/19
    『とれねぇバグはただの仕様だ』御意
  • アセンブラ短歌 - 葉っぱ日記

    世の中には常人には理解できない趣味を持っている人がいまして、組み込みOSを作っている坂井さんもその一人で、最近は「アセンブラ短歌」という新しい遊びを提案しています。アセンブラ短歌というのは坂井さんによると、“「アセンブラ短歌」は五・七・五・七・七の三十一バイト(みそひとバイト)から成る 機械語コードでプログラムを書いてみるという近未来の文化趣味であり,近年, 国内のハッカー間で密かなブームが起きています.” ということらしいですが、さっぱり意味がわかりません。 まあ意味がわからないのですがとりあえず嗜みとしてアセンブラ短歌くらい詠めないと恥ずかしい感じなので、自動的にアセンブラ短歌を生成するやつを作りました。 8086アセンブラ短歌ジェネレータ これを使うと、こんな感じの8086のアセンブラ短歌が誰でも簡単に詠めちゃいます。 a7 03 87 13 b7 03 65 a8 fb 1f 2

    アセンブラ短歌 - 葉っぱ日記
  • 朝日新聞デジタル:名古屋市、豪雨情報メール誤配信 意味不明の文面 - 社会

    名古屋市が4日夜、豪雨に関する緊急情報を携帯電話に伝えるメールで誤送信をした。午後9時半ごろ「null null (名古屋市)」という意味不明のメールを配信。市災害対策部によると、来は「避難勧告や避難準備情報の解除」といった内容が送られるはずだった。  配信後に問い合わせの電話が十数件あった。約20分後に別のパソコンで送信すると、来の内容で配信された。メールの文面は担当者がパソコンに手打ちで入力する仕組みだが入力ミスはなかったといい、誤送信の原因を調べている。 最新トップニュース

    shimooka
    shimooka 2013/09/05
    ぬるぬる
  • 肉体言語 Tython - Thanks Driven Life

    Tython とはhttps://github.com/gongo/Tython/tree/development 肉体言語 Tython は、Kinect センサーを用いて、体の動きを利用してプログラムを入力する言語、というかインターフェースというかフレームワークというか。 図にするとこんな感じです。 Kinect を介して動きを検知 (Detector) 検知した動きによって、入力するソースコードを決定 (InputMethod) ソースコードを入力し終わったら、コンパイル (Compile) コンパイルしてできた命令列を実行 (VM) デモ 「Hello, World!」Tython を使って Hello, World! を出力してみました。 Hello, World! 出力まで 4分強 一回で成功しなかった 最終的に成功するまでの時間は 90分 一度でも文字入力失敗すると最初から

    肉体言語 Tython - Thanks Driven Life
    shimooka
    shimooka 2013/07/16
    2年前のネタだけど、これはわろた。YappoさんだっけかのバランスWiiボード使ったプレゼン思い出した
  • Quine リレー - まめめも

    ref: https://github.com/mame/quine-relay/ 以下は、自分自身を出力する REXX プログラムを出力する Python プログラムを出力する R プログラムを出力する (...略...) を出力する Scala プログラムを出力する Ruby プログラムです。合計 50 言語を使います。 eval$s=%q(eval(%w(B=92.chr;N=10.chr;n=0;e=->(s){s.gsub(/[#{B+B+N}"]/){B+(N==$&??n:$&)}};E=->(s){'("'+e[s]+'")'} ;d=->(s,t=?"){s.gsub(t){t+t}};D=->(s,t=?@){s.gsub(B){t}};Q=->(s,t=?$){s.gsub(t){B+$&}};puts(eval(%q("objectXQRX extendsXApp{

    Quine リレー - まめめも
  • メジャーなプログラミング言語とそれらの役割を、素人でも分かるように教えてください。 - Knoh (ノウ) | The Knowledge Hub

    プログラマーたちは、使用するプログラミング言語と驚くほど密接な関係を持っています。プログラミング言語はあなたをイライラさせ、また教え導いてくれます。あなたはそのうちにプログラミング言語の内部構造や、ちょっとした変な癖を学ぶことになるでしょう。それはあなたの頭のなかにも入り込み、考え方をも変えるでしょう。 正しいプログラミング言語を選べば、新しくて美しい何かを一緒に作り上げることができます。間違った選択をすれば、もちろん面倒なことになります。 言い換えれば、プログラミング言語を選ぶことは、恋人を選ぶことによく似ているのです… (注: 私はストレートの男性です。それ以外の方は、自分の興味に合わせて自由に脳内変換してください) PHP は、あなたが高校時代のある夏、不器用ながらも付き合った初めての彼女です。もっと真剣な関係を築こうとしてはいけません。この子は複雑な問題を抱えています。 Perl

    shimooka
    shimooka 2013/03/14
    『あの変な宗派にだいぶ前に入信していて、外の世界の人と付き合おうとしません』ふいた
  • VMwareにも男性社会的な定数が発見される

    以前、マイクロソフトが、LinuxカーネルをHyperVでサポートするパッチに、定数として0xB16B00B5を使っていたことが、物議をかもした。これは、BIG BOOBS(デカパイ)と読める。 Linux開発者の中でフェミニズムの第一人者として知られているMatthew Garrettなどは、特に強く抗議した。 ソースコード中で、定数としてユニークな数値が必要であるが、数値自体はどうでもよい場合、かといって、0とか1などといった簡単でよく使われる数値は避けたい場合、プログラマーは大抵、面白い数値を考えだすものだ。hex speakで解釈したり、ASCIIで解釈すると単語になるような数値だ。 「プログラマーというのは、いまだに高い割合で男が占めており、そのために強い男性社会の特徴が現れ、けしからん。このような男性社会的な定数を選択したことは、その顕著たるものである」というのが、フェミニズム

    shimooka
    shimooka 2012/11/15
    『全世界への公開のほうが、全く関係のない人間によって読まれる可能性が上がるために、発覚するのではないか』確かに。