タグ

programmingとProgrammingに関するardarimのブックマーク (984)

  • 大きな問題は小さくして1つずつ対処する――分割統治法

    大きな問題は小さくして1つずつ対処する――分割統治法:問題解決力を高めるコツはプログラミングの原則・思考にあり(4)(1/4 ページ) 連載では、さまざまなプログラミングの原則・思考の中から、特に問題解決力を高めるのに役立つものをピックアップ。プログラマーは、その思考法をビジネスに応用し、そうではない人はプログラマーと一緒に働く際に思い出してほしい。今回は「分割統治」「1歩ずつ少しずつ」「繰り返しの最小化」の重要性、論理的思考のコツなどについて。 書籍の中から有用な技術情報をピックアップして紹介するシリーズ。今回は、秀和システム発行の書籍『プリンシプル オブ プログラミング 3年目までに身につけたい 一生役立つ101の原理原則(2016年3月22日発行)』からの抜粋です。 ご注意:稿は、著者及び出版社の許可を得て、そのまま転載したものです。このため用字用語の統一ルールなどは@ITのそ

    大きな問題は小さくして1つずつ対処する――分割統治法
  • 【ワテ解説】エクセルのアドイン【VBA、COM、EXCEL-DNA、XLLアドイン】

    一時、エクセルのアドイン作成に猛烈に凝っていた時期がある。 エクセルのアドインは種類が多くて、初めての人にはなかなか理解しづらいと思う。 ワテもそれらの違いや、具体的な開発手法をマスター出来るまで数か月掛かった記憶がある。 一応、今では、どんな手法でも開発する事が出来る。頼まれれば作っても良いが、今のところそういう依頼は無い。 この記事では、ワテがエクセルアドイン開発で苦労した点など、過去の記憶を頼りに皆さんの為に解説したい。 この記事によって、EXCELアドイン作成に挑戦しようという人の一助になれば幸いである。

    【ワテ解説】エクセルのアドイン【VBA、COM、EXCEL-DNA、XLLアドイン】
  • プログラマをクソコードで殴り続けると死ぬ - megamouthの葬列

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

    プログラマをクソコードで殴り続けると死ぬ - megamouthの葬列
    ardarim
    ardarim 2017/08/01
    文学的クソコード(呪いの呪文)
  • 普通のパズルではない「正規表現クロスワード」がBBCラジオに登場

    文章によるヒントを元にタテヨコに交差したマスに言葉を当てはめてマスを埋めていく「クロスワードパズル」のヒント部分を正規表現にした「正規表現クロスワード」なるものがBBCラジオの「Puzzle for Today」(今日のパズル)に登場しました。 BBC Radio 4 - Today - Puzzle for Today http://www.bbc.co.uk/programmes/articles/5LCB3rN2dWLqsmGMy5KYtBf/puzzle-for-today 2017年7月5日の今日のパズルがこれ。クロスワードパズルですが、マスを埋めるためのヒントが正規表現という、一見すると暗号のようになってます。 例えば、0行目の記載は「[^XZVCHFJLQM]+」。正規表現のルールでは、「^」は「それ以外」を、「[]」は「任意の文字」を、「+」が「前の文字の繰り返し」を意味す

    普通のパズルではない「正規表現クロスワード」がBBCラジオに登場
    ardarim
    ardarim 2017/07/08
    イギリス人変態度たけーなおい
  • 自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編)

    自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編) ふだん何気なく使っている鉄道。改札を降りるときにICカードを自動改札にかざすと、「ピッ」という音と共に一瞬のうちに運賃を計算してくれます。けれど、複数の路線を乗り継いだり、途中で定期券区間が挟まっていたりと、想像しただけでもそこには膨大な組み合わせがあります。それでも運賃計算プログラムはわずか一瞬で正しい運賃計算が求められ、バグがあったら社会的な一大事にもつながりかねません。 爆発的な計算結果の組み合わせがあるはずの運賃計算プログラムは、どうやってデバッグされ、品質を維持しているのでしょうか? 9月12日から14日のあいだ、東洋大学 白山キャンパスで開催された日科学技術連盟主催の「ソフトウェア品質シンポジウム 2012」。オムロンソーシアルソリューションズ 幡

    自動改札機の運賃計算プログラムはいかにデバッグされているのか? 10の40乗という運賃パターンのテスト方法を開発者が解説(前編)
  • コーディングに対する考え方を変える6つのプログラミングパラダイム | POSTD

    私は時折、コーディングに対する考え方を変えさせられるような、従来と非常に異なるプログラミング言語に出会います。記事では、その中でも特に気に入っている発見をいくつかご紹介したいと思います。 これは、先賢による「関数型プログラミングは世界を変える!」的な投稿ではありません。記事で挙げるのは、もっと「知る人ぞ知る」的なリストです。多くの読者の方にとって、以下の言語やパラダイムは聞いたことのないものが大半だと思いますので、私が経験したように、これらの新しい概念を学ぶ楽しさを感じていただければ幸いです。 注:私は以下の言語の多くに関して最低限の経験しかありません。その発想に引き込まれたのであって、専門的知識は持ち合わせていないため、訂正すべき点や誤りがあればどうぞご指摘ください。また、記事で取り上げていない新しいパラダイムや概念に出会った方は、ぜひお知らせください。 最新情報:記事が r/p

    コーディングに対する考え方を変える6つのプログラミングパラダイム | POSTD
  • コードのインデントにスペースを使う開発者はタブを使う開発者よりも高収入という調査結果 | スラド デベロッパー

    Stack Overflow 2017 Developer SurveyのデータをStack OverflowのデータサイエンティストDavid Robinson氏が分析したところ、コードのインデントにタブを使う開発者よりもスペースを使う開発者の収入が高いという結果が出たそうだ(Stack Overflow Blogの記事、 The Registerの記事、 Ars Technicaの記事)。 回答者51,392名のうち、インデントにタブを使うかスペースを使うかという設問に回答したのは28,657名。プロの開発者の回答に限定すると40.7%がタブ、41.8%がスペース、17.5%が両方となっている。このうち12,426名が給与(年間)の情報を回答している。 給与の中央値はインデントにスペースを使用する開発者が59,140ドル、タブを使用する開発者は43,750ドルとなっている。両方使用する

    コードのインデントにスペースを使う開発者はタブを使う開発者よりも高収入という調査結果 | スラド デベロッパー
    ardarim
    ardarim 2017/06/18
    「タブではなくスペースを使用することで給与は6.8%高くなるという。別の表現をすると、タブの代わりにスペースを使用することは2.4年分の経験に相当すると」因果関係と相関関係(以下略)
  • プログラミングの学び方がわからない

    C言語とかC++は・・・これで作らないといけないものが今の所ないし、これでお金を稼ぐのはハードルが高いし、 WindowsAPIを使って複雑なプログラムを作りたいわけじゃないのでwhileとかifとか基的な構文だけ覚えるだけで満足。 Javaは・・・使える人が多いからあえて今から学習しなくてもいいような気がする。 文字列の結合だけでもダメやり方と良いやり方があるらしくて、何かPHPのようにその言語特有のセオリーみたいなのを覚えるのが面倒くさそうなので入門の時点で学習するのをやめた。 Goは・・・HTTP/2が使えるから学習してる。他の言語だとnghttp2をインストールしないといけないようなのでGo便利だと思ってる。 ライブラリの選択肢が多すぎるのでこういうのが作りたいってときにこれを使うのがいいよっていうのが知りたい。 GUI作るのにライブラリありすぎてどうやって選べばいいのかさっぱ

    プログラミングの学び方がわからない
    ardarim
    ardarim 2017/05/27
    目的を見失いすぎでしょ…。いったい何をしたいのか
  • (追記あり)家にパソコンを持たないプログラマー達 - 夜中に前へ

    こんばんは、夜中たわしです。 【追記】 多くのご指摘のコメントをいただいており、軽い気持ちで記事を書いたことを反省しております。 後半の内容は「そういや彼はPC持ってなかったな」とふと思い出したので、おまけとして勢いのまま書いたものです。正直、題とはほぼ関係ありません。 そして複数の方にご指摘いただいている通り、PCの所持・不所持が技術力に必ずしも影響するとは限りません。 補足しますとこのエピソードは私も新人、switch文の彼も新人、笑った彼も新人の頃の話です。 また笑いはあったもののそれで終わりではなく、その後講師の方からは手厚いフォローがありました。 そのあたりの表現が稚拙であったことに加え、他人の過去の失敗を笑い話として持ち出すという、配慮に欠けた文章であったことをお詫びいたします。 コメントいただいた中には私の知らなかった知識もあり、他人のことを面白がっている場合じゃないなと

    (追記あり)家にパソコンを持たないプログラマー達 - 夜中に前へ
    ardarim
    ardarim 2017/05/17
    バッチ実行とかハンドアセンブルの話?(まだ読んでない)
  • 小学生の時からプログラムを組んでいた人が大学から優秀な教員の元で始めた人に抜かれたという話 原因はどこにあるのか

    がたろう TTLでCPUを作る爺(コンパイラやOSも手作りです) @duo6750 【気が付いたら三流プログラマー】 「俺は小学校の時からプログラムを組んでいた。大学の授業なんて全部寝てたけど楽勝だった」と自慢していた新入社員の某君。 そんな某君が入社2年以降に同期や後輩に次々と抜かれた理由の解説図。 この図は決してオーバーな図でも、レアケースでも無い。 pic.twitter.com/rrWqpSnc2B 2017-05-06 14:48:36

    小学生の時からプログラムを組んでいた人が大学から優秀な教員の元で始めた人に抜かれたという話 原因はどこにあるのか
    ardarim
    ardarim 2017/05/07
    主語が大きい系?身近なせいぜい数人の例が大きい話っぽくなってる。優秀な教員というのもどこから出てきたのか分からない
  • 東大のディープラーニング公開講座がヤバくていろいろ考えさせられた件|加藤貞顕

    1カ月ほど前から、東京大学の松尾研のディープラーニング公開講座に行っている。 ネットで募集していたのであわてて申し込んだら、とんでもない数の人が集まっていて熱気がすごい。学部生、院生、社会人、あわせて300人以上が同時に授業を受けている。 初回こそ、人工知能概論のような話だったけれど、2回目以降はものすごい速度で授業が進む。そして宿題の量と質もすごい。2回と3回目の授業だけで、普通の学校の半年分くらいの内容になっている気がする。東大、ほんとにやべーよ。 毎回、授業の冒頭は「ふんふん、そうか」とはじまるのだけれど、終わり間近に大量のサンプルコードを見せられて、それをすごい勢いで説明され、最後にゴツイ宿題が出る。授業終了後は、ポカーンってなる(授業中にぜんぶ理解しているひと、どれくらいいるんだろう)。 友人の物書堂の社長の広瀬くん(iPhone辞書アプリ開発の大御所!)も、たまたまいっしょに講

    東大のディープラーニング公開講座がヤバくていろいろ考えさせられた件|加藤貞顕
    ardarim
    ardarim 2017/05/02
    拙者組込み系侍、未だにアセンブラやC言語が現役でござる。 / どこまで高級になろうとアルゴリズムの基礎は大事。内部の動きを知った上で書くかどうかでだいぶ違うでしょ。
  • プログラム日本語で書けばいい気がするけど(追記した)

    定期的に思うんだけどプログラムで無理な英語にせず日語にすればいいのにって思う。 (実践はしていない) 日語で書ける言語使うんじゃなくて変数名や関数名がUnicode対応で日語書けるもの。 日語でいいと思う理由は主に2つ ○画面に表示する時 フレームワークや言語にもよるけど表示するときに英語の名前から日語の名前に変換して表示って手間があるものがある。 最近見かけた例だと.NETでプロパティの属性に表示名書いて表示するときに取り出していた。 最初から日語だとそのまま表示でいいことが多くて一段手間が省ける ○英語がわけわからん まず自分が英語化するとき。 いい単語が出てこないとか、しょっちゅう。 慣れが必要だし慣れてもなんかコレジャナイ感とかで苦戦する。 次に他の人の英語化したのを見る時。 その人の英語力にもよるけど、動詞名詞が変に混ざっていたり、sがついてたりなかったり、そもそもc

    プログラム日本語で書けばいい気がするけど(追記した)
    ardarim
    ardarim 2017/04/22
    たぶんi18nという言葉を一生知らないで済む幸せな層なんだろうなあ。ネイティブのコメントでも怪しい英語は割とあるし、コメント英語は特殊だから文法的な正しさは考えなくていい。主語とか人称とか冠詞とか省略OK
  • 不思議の国のSE用語 - Qiita

    不思議の国 SEが住んでいるところ、そこは不思議な不思議なお国柄です。 新たな国民として移住してきた人、特産物のシステムを買いに来た人など色々な人がこの国には存在します。 しかしこの国で話される言葉は 独特 です。 ぱっと聞いただけでは意味がわからなかったり、よく似た表現であっても微妙にニュアンスが違っていたり。 似たような表現を使い分けるその裏に、その人の意図や省略された文脈が隠されていたりもします。 どこの国でもコミュニケーションを間違うと非常に厄介ですが、そんなことにならぬよう、 お国言葉らしきもの をまとめてみました。 SEを代表例として、このお国言葉を話す人も、話される人も、改めて言葉の意味合いを見つめなおしてみると新たな気付きが得られるかもしれません。 なお、そんなことから 「絶対にSEしか使わない用語」を集めたわけではない のでその点ご了承くださいませ。 他言語版 @micr

    不思議の国のSE用語 - Qiita
    ardarim
    ardarim 2017/04/07
    ほとんどの場合「配る」=「取りに行く」なんだよなあ
  • 【悲報】小学校でのプログラミング必修化に半数の親が「必要」。理想は「スティーブ・ジョブズ」 : IT速報

    小学校での「プログラミング教育の必修化」について、約半数(48.5%)の親が必要だと考えていることが分かった。 理由として「未来のテクノロジーをさらに進化させて欲しい」「小学生のころから基礎知識を身に付けさせたい」 「将来、プログラミングができて当たり前の世の中になるため」――などが上位に挙がった。 また、子どもが将来、プログラマーエンジニアになることついて半数以上(55.4%)が賛成した。理想とするエンジニアは「スティーブ・ジョブズ」「松下幸之助」「ビル・ゲイツ」――などが多く挙がった。 http://www.itmedia.co.jp/business/articles/1609/23/news080.html

    【悲報】小学校でのプログラミング必修化に半数の親が「必要」。理想は「スティーブ・ジョブズ」 : IT速報
  • JavaScriptで継承を使わないプログラミングスタイル - JavaScript勉強会

    JavaScriptでは「継承による差分プログラミング」はモダンではない、という意見がありました。 なるほど、「継承による差分プログラミング」を使わないスタイルもあるんですね?(参考になります) JavaScriptのオブジェクト指向プログラミング OOPのアンチパターン SOLID原則 オブジェクト指向の基機能 データ構造としてのオブジェクト デメリット メリット PACアーキテクチャー マイクロサービス指向アーキテクチャー JavaScriptのオブジェクト指向プログラミング jsstudy.hatenablog.com オブジェクト指向って便利なの? - JavaScript勉強会 うへええええ継承による差分プログラミングとか現代に言わないでくれよ。しかも「JSはプロトタイプベースのOOP」を初めとして間違いが多いぞ 2017/03/27 09:42 b.hatena.ne.jp

    JavaScriptで継承を使わないプログラミングスタイル - JavaScript勉強会
  • スポーツくじ「BIG」でランダムなはずの予測結果が2連続で一致するも「偶然」との回答 | スラド IT

    コンピュータがランダムに抽選した予測が試合結果と合えば当選というスポーツくじ「BIG」において、14試合×5口分の予想結果が2回続けて全く同じという極めて不自然な結果が出力され、システムの不具合や不正ではないかと一騒動となっているようである(公式の調査発表、ITmediaの記事1、記事2)。 BIGでは1口分が14試合で、予想結果は勝ち・負け・引き分けの3パターンあり、これをコンピュータがランダムに抽選するため、同じ結果が出力される可能性は極めて低い。が、15日に楽天totoにて全く同じ結果が出力されたという画像付きの報告がTwitterに投稿され、不具合や運営側が意図的な操作をしているのではないかといった憶測が飛び交う事態となった。 20日にはくじを運営する日スポーツ振興センターと楽天から調査結果の発表がなされたのだが、「くじは確かに販売されたものである」「重複した投票内容の出現はあり

    スポーツくじ「BIG」でランダムなはずの予測結果が2連続で一致するも「偶然」との回答 | スラド IT
  • 先輩から教えてもらったコードレビュー

    LT大会にお呼ばれしました。 内容は以前ブログにしたためた「コードレビューするのが怖いと思っていたエンジニアが半年間コードレビューを経験して思った 10 のこと」についてです☺ http://b.hatena.ne.jp/entry/yutokyokutyo.hatenablog.com/entry…

    先輩から教えてもらったコードレビュー
    ardarim
    ardarim 2017/03/09
    コードレビュー嫌いではないというかむしろ好きなんだけど、レビュイーが正論だけど…とか、時間がなくて…とか、否定的なことを言い出すとやっぱりやる気なくなる。肯定は大事。
  • プログラミング初心者がつまづきやすい0とnullの違いを「トイレットペーパーで」解説した画像が見事

    プログラミング初心者がつまづきやすい、0(ゼロ)とnullの違い。その違いをトイレットペーパーで表した画像が分かりやすいと共感を呼んでいます。 0とnullの違いは初心者がつまづくポイント TwitterユーザーのR SATO(佐藤 玲)(@raysato)さんが投稿した画像には、2つのトイレットぺーパーホルダーが写っています。左側は「トイレットペーパーがなくなり芯が残っている状態」、右側は「芯も何も存在していない状態」です。 左が0、右がnullを表している(画像提供:R SATO(佐藤 玲)さん) 紙のない芯(=紙が0のもの)が存在している画像で0を、芯も何も存在していない(=無である)画像でnullを表しているというわけです。画像を見たTwitterユーザーからは「これ、的を射てます」「なんと分かりやすい」「これは秀逸」「わかりやすくてわろた」「この状態を見て、この解説を閃くことが素

    プログラミング初心者がつまづきやすい0とnullの違いを「トイレットペーパーで」解説した画像が見事
  • 長文日記

    ardarim
    ardarim 2017/02/16
    「バグのない完璧なプログラム作りました(ただし摩擦はないものとします)」→えらい人「(摩擦がある環境で)正常に動かない!バグだ!さあ直せ!」
  • プログラミング用等幅フォント「Fira Code」がモダンで素敵 | 綺麗に死ぬITエンジニア

    皆さんは普段、PCを使う上で、フォントは気にしますでしょうか。 最近は、Webフォントの登場によって、Webサイトごとに独自のフォントが表示されているのを見る機会も多くなりました。 しかしながら、Webや画像制作等の経験がない方は、あまりフォントをインストールする機会もないかもしれません。 そこで今回は、プログラマー向けに、普段使う開発環境等に導入したら良さそうな、オープンソースのフォント「Fira Code」を紹介したいと思います。 Fira Codeは、プログラミング用・コーディング用フォントで、リガチャー(合字)により、関係演算子(比較演算子)や論理演算子、アローファンクションなどを見やすくしてくれる等幅フォントです。様々なプログラミング言語に対応できるように設計・工夫されています。 具体的には以下のように変換してくれますが、リガチャーになっても表示幅は同じで、文字自体が変化している