タグ

programingに関するatsushifxのブックマーク (27)

  • 『プログラムのわからないえらい人「バグのないプログラムを書くことはできないのか?難しいかもしれないが、十分に気を付けていれば防げるのではないか?」にどう返したらいいのかわからない』へのコメント

    テクノロジー プログラムのわからないえらい人「バグのないプログラムを書くことはできないのか?難しいかもしれないが、十分に気を付けていれば防げるのではないか?」にどう返したらいいのかわからない

    『プログラムのわからないえらい人「バグのないプログラムを書くことはできないのか?難しいかもしれないが、十分に気を付けていれば防げるのではないか?」にどう返したらいいのかわからない』へのコメント
    atsushifx
    atsushifx 2017/02/16
    ブクマに計算可能性理論への言及がなかった(不完全性定理はあったけど)。IT技術者なら必須の教養だと思うんだが、これが日本のレベルなのか
  • 発言広場 - 新入社員プログラマーですが周りについていけません

    まだ満足のいく回答を得られていないみたいなので二度目の回答を 一回目の回答で文系と書きましたが、それは世の中から法則性を見付け定式化できる能力があるかどうかという意味です Jiamari459さんは、RPGなどのコンピューターゲームはしますか? するとしてキャラクターのレベルが上がって強くなったとき、将来どれくらい強くなるか知りたいと思いますか? そして知りたいならどうやって知ろうとしますか? インターネットで検索するのが一番早くてスマートな問題解決方法かもしれません でも、私の場合なら幾つかのレベルのサンプルから計算式を推測します (武器のレベル+キャラクターの能力値)×技による倍率-敵のレベル+乱数 といった感じです こうして次のレベルの数値を予測しレベルを上げて計算式の正しさを証明していきます これは科学的手法そのもので、いわゆる理系と呼ばれる人達はこの能力が長けています 掛け算九九

  • プログラミング。好きだけど、さようなら。

    追記(2015 5/20) 洋屋にジョブチェンジを果たしました。 --- 1年の間、プログラマとして働いていたが、続けていくことが無理だと思い、さようならする話。 プログラマになる前は、コーヒー屋で働いていた。しかし、色々とあり辞め、職業訓練校に通ってプログラミング(php)を学び、60人ほどのソフトウェア開発会社に就職した。 会社に入ると、まずC#の研修があった。研修と言っても、C#で内製ツールを独りで作るという研修だった。この研修中に「あれ、オレ、プログラム書けねー」と思ったりしたが、研修は終えることができたし、社内の人にも「なかなか良く出来ている」と言ってもらえ、大丈夫だろうと思っていた。 研修が終わり、C#の社内で実際に使われているツールに、機能をいくつか追加する仕事を振られた。前任者にどんな設計になっているのか大雑把に聞き、なんとなくイメージができ、コードを読み始めたのだが、こ

    プログラミング。好きだけど、さようなら。
    atsushifx
    atsushifx 2016/04/23
    資質はあるし技術力はあるんだろうけど、オブジェクト指向への違和感がぬぐえないいじょう、現状のプログラマーには向いていないとしかいえない
  • コーディングを学ぶこと、それはあなたが考えるよりも大変です | POSTD

    要約:全ての根拠が示しているのは、「プログラミングには高い適性を要求されますが、適性を持った人間はわずかしかいない」ということです。最近の流行の短期でコーディングを学べるコースは、デマカセを売り付け、プロのプログラマのスキル不足解消に何ら力になってないのです。 これはイギリスからの観点での記事です。私はこの事象について、とりわけソフトウェア開発者の社会的地位に関しては、他の地域決してこの通りではないと思っています。 メディアが共通して取り上げるテーマは、スキルのあるプログラマの不足です(”プログラマ”も”コーダ”も”ソフトウェア開発者”も、ここでは全て同じものを意図し、区別せずに使用しています)。このコーディング技術のギャップには解決の糸口が見えない心配が多くあります。要は”明日の高品質な仕事”を担う候補者を生み出すことに失敗しているということです。例えば、 The Telegraph の

    コーディングを学ぶこと、それはあなたが考えるよりも大変です | POSTD
    atsushifx
    atsushifx 2016/01/20
    see http://www.aoky.net/articles/jeff_atwood/why_cant_programmers_program.htm つまり、変数と制御構造という基本概念を理解し実践できるかどうか。まゆつばだったフタコブラクダはともかく、適性がない人は居る
  • 多くの若きプログラマたちが学ぶべきこと | POSTD

    私はこの7年半、 Ronimo でプログラミングを学ぶ多くのインターン生を指導し、様々なタイプの大学生や大学院生を見てきました。彼らのほとんどには、共通して言える学ぶべきことがあります。特別なテクニック、アルゴリズム、数学、あるいは特定の形式についての話だと思う人もいるかもしれません。もちろんそれも必要ですが、中心的なものではないと私は考えます。彼らが主軸として学ぶ必要があるのは、自己統制力です。常に可能な限り読みやすいコードを書き、開発中の変更により秩序がなくなってきた時にはきちんとリファクタリングを行い、使用されていないコードを除去し、コメントを追加することができるという力です。 プログラミングのインターン生を指導する際、この話にほとんどの時間をかけます。上級のテクニックでもなければエンジンの詳細についてでもなく、概ね彼らにより良いコードを書かせることに主眼を置きます。いつもインターン

    多くの若きプログラマたちが学ぶべきこと | POSTD
    atsushifx
    atsushifx 2015/02/08
    要するにリーダブル・コードとリファクタリングを読んで、それを実践しろと。マネージャー側には、そのための教育コストや時間などのリソースをちゃんと振り分けてくれでFA
  • 型安全性とは何か | POSTD

    以前書いた(C言語についての) メモリ安全性について定義した記事 について、型安全性について説明する記事も投稿してほしいというコメントがありました。型安全性についてはかなりよく知られてきていると思いますが、ズバリこうだと簡単に定義できるほどにはまだ理解が浸透していません。特に誰かが”Javaは型安全な言語だ”と言った場合、これは厳密に何を意味するのでしょう。全ての型安全な言語はある意味”同じ”と言えるでしょうか。ある特定の言語について、そして一般的な意味で、あなたを悩ませる型安全性とは何でしょうか。 実際のところ、型安全性が何を意味するのかは言語の型システムの定義によります。最もシンプルなケースでは、型安全性はプログラムの動作が正しく定義されるように保証します。もっと一般的な話をすると(この記事ではそのあたりをカバーするつもりですが)、言語の型システムはそのプログラムの正確さと安全性を推論

    型安全性とは何か | POSTD
  • エンジニアに求められるコミュニケーション能力とは〜社交性なんてなくたって仕事はできる | Social Change!

    エンジニアにとってコミュニケーション能力は必要でしょうか。この話題については、賛否両論あるでしょうし、そもそもコミュニケーション能力とは何かを考えなければいけないでしょう。 私たちの会社ソニックガーデンでは、プログラマの仕事を「ソフトウェアのエンジニアリングすべてに責任を持つ仕事」と定義しています。具体的には、お客さまと対話して要件を引き出すことから、データ構造から画面までの設計を行ったものをソースコードで表現し、クラウドでの運用まで面倒をみるという、ソフトウェアを作って動かす全てを行います。 そう話すと、よく聞かれる質問があって「コミュニケーションが苦手なエンジニアはどうすれば良いでしょうか?」というものです。もし当に誰とも話をしたくないし出来ないというのであれば、残念ながら、と言うしかありません。しかし、コミュニケーションと一括りにしてしまっていて誤解があるのかもしれません。 そこで

    エンジニアに求められるコミュニケーション能力とは〜社交性なんてなくたって仕事はできる | Social Change!
    atsushifx
    atsushifx 2014/07/31
    エンジニアに必要なコミュニケーションは問題点や課題点をきちんと説明する能力と問題とチームで解決しようとする意欲。http://cpplover.blogspot.jp/2014/07/linus-torvalds-gcc-490.html のLinusが典型的なGeek竜コミュニケーション
  • れいさの本当に目が覚めるPHP - Togetterまとめ

    全てのリンク先で肝が冷えます。 PHPerの早朝のネタトークが思いの外インパクトがあったのでまとめただけです。 PHPや利用者がどうこうという文脈ではありません。 ※タイトル変更しました。

    れいさの本当に目が覚めるPHP - Togetterまとめ
    atsushifx
    atsushifx 2014/06/13
    ホラーだ。しかし、ダメなプログラマーは世界中どこにでもいるということがよくわかる
  • 提言: コミットメッセージの一行目には要求仕様を書け - Qiita

    これは Git (や Subversion などのバージョン管理システム) にコミットする時により良いコミットメッセージを書くための提言です。この提言は特にメッセージの一行目だけを対象とします。せめて最も重要な一行目だけでも良いメッセージを書いて欲しいからです。提言をズバリ一言で表すと 一行目には要求仕様を書け です。 背景 プロジェクトによっていろいろ慣習の差はあるものの、一般的には「コミットメッセージの一行目は変更内容の要約を簡潔に書け」とされます。特に Git は、各コミットメッセージの一行目だけを取り出してそれを一覧表示するなど、一行目を特別に処理する機能が多いので、一行目にできるだけ多くの情報を凝縮させることは重要です。またメッセージを一行しか書かない不届きな慣習のプロジェクトでは、十分な情報を持たないメッセージは無用の長物と化します。 良くないコミットメッセージ しかし私は、情

    提言: コミットメッセージの一行目には要求仕様を書け - Qiita
    atsushifx
    atsushifx 2014/05/29
    コメント問題と一緒。WahtやWhyをきちんとかけということ
  • コードレビューについて : 小野和俊のブログ

    伊藤直也さんが「些末なコードレビュー」というエントリを書いて話題になっている。このエントリで伊藤さんはコードレビューの話と、はてなJavaScriptの話と2つの話題に触れている。前者のコードレビューについてはアプレッソでは8年ほど前から「コードレビューを通っていないコードはコミット不可」というルールですべてのソースコードに対してコードレビューを必須にしてきた関係で私も思うところがあるので、エントリを書いてみようと思う。 伊藤さんが例示しているように、インデントやreturnの省略などの話は好みの問題であり、議論してもソフトウェアの改善につながらない。なのでコードレビューでこうした宗教論争が起こるようなら、コーディング規約を見直すべきだ。「無駄に悩んだり議論したりすることを減らす」ことはコーディング規約の主たる効果のひとつだと言える。 コードレビューに慣れないチームが、何の考えもナシにコ

    コードレビューについて : 小野和俊のブログ
  • リファクタリング―プログラムの体質改善テクニック読んだ - 銀の人のメモ帳

    リファクタリング―プログラムの体質改善テクニック (Object Technology Series) 作者: マーチンファウラー,Martin Fowler,児玉公信,平澤章,友野晶夫,梅沢真史出版社/メーカー: ピアソンエデュケーション発売日: 2000/05メディア: 単行購入: 94人 クリック: 3,091回この商品を含むブログ (307件) を見る 残念ながらピアソン桐原から出版されていたので、現在は手に入りにくいんだけど、読んだ。 内容的には、リファクタリング手法のカタログみたいな感じだと思う。5章くらいまでは、導入とか、リファクタリングの心構えみたいな事が書いてある。 リファクタリングをするときに「いつすべきか?」というのが問題になると思うんだけど、このでは、機能を実装するときにその周辺をリファクタリングするといいと書いてあった。これは「動いてるものは触るな」っていう考

    リファクタリング―プログラムの体質改善テクニック読んだ - 銀の人のメモ帳
    atsushifx
    atsushifx 2014/03/10
    デザインパターン自体は最初から知っておいたほうがいいとおもうが、ハンマーを持つと何でも釘に見えるという病がでるから注意ということ。可能ならエレメンタルデザインパターンが読むといい
  • スラッシュドットに聞け:物理的にモノや人をソートするときはどうしてる? | スラド IT

    先日領収書の束やその他の書類を日付順に分類していたのだが、書類ソーターの類を使わずにソートしていたところ小分けの山がたくさんできあがってしまい、しまいにはどの山が何だったか分からなくなってしまった。 ふとコンピュータサイエンスの授業で習ったソートアルゴリズムを使えばいいのではと思い立ち、紙の山をすべて元に戻し基数ソートをかけたところすんなりと作業を終えることができた。その後別の作業でクイックソートやマージソートも試すことができた。 そこで質問なのだが/.erの皆は物理的にソートする際どんなアルゴリズムを使っているだろうか?

    atsushifx
    atsushifx 2014/03/05
    ソートのアルゴリズムの話が盛り上がっているけど、何をインデックスにするかが重要じゃないのか。
  • プログラマの実力偽装を考える──初心者と中級者を分けているもの

    「プログラマの実力」とは一体何を指すのだろう、とよく考えることがあります。特に、プログラミング雑誌の編集者としては、「プログラミングの初心者と中級者を分けているもの」に、とても興味があります。 中級者と見なされるには、様々なものが求められるでしょう。特定のプログラミング言語の文法を隅々まで把握していることかもしれませんし、最新のライブラリやツールを使いこなせることかもしれません。たしかに、こうした知識は、優れたソフトウエアを開発するうえで重要です。ただ、そうしたノウハウは、使用するプログラミング言語や開発環境が変わると役に立たなくなることもあります。 そこで、日経ソフトウエア2014年4月号で、「中級者に必要なものは何か」をテーマにした「初心者脱出の近道は? プログラミングの『壁』大攻略」という記事を執筆しました。この記事では、中級者に必要なものを「良い習慣」と位置付け、どのような習慣が必

    プログラマの実力偽装を考える──初心者と中級者を分けているもの
    atsushifx
    atsushifx 2014/02/25
    プログラミング雑誌の編集者だからとはいえ筆者のプログラミングの力を知るためにSchemeを学ぶというのはGeekすぎる。
  • 事件は現場で起きていた

    謎のクソコード大喜利

    事件は現場で起きていた
    atsushifx
    atsushifx 2014/02/14
    事件はSIerの現場でおきていた。ということで推理小説の定番トリックやガジェットワードもプログラミングの犠牲に
  • プロジェクトリーダはコードの読み書きできれば良いか - プロマネブログ

    「コーディング技術にこだわり過ぎると~」の反省会 - プロマネブログ コーディング技術にこだわり過ぎるとITエンジニアの地位は向上しない - プロマネブログ そいえば、上記記事のブコメ欄でいただいたコメントの中で考えてみたいなと思うコメントがあったので、記事でまとめてみようかと。 プロジェクトリーダに必要となる技術はコード読み書きできればOK? どっちにしてもコードが読み書きできない人はソフトウェア開発に関わっちゃいけませんので、その辺何卒よろしくお願いします。 考えてみたいのは上記コメント。異論はないのですけど、プロジェクトリーダ(以下、PL。プロジェクト進行の話が中心なので、広義のプロマネって言うと話がごっちゃになるので)はコードの読み書きできるぐらいでいいのかってのはあります。 知っている限りのPL連中は、往々ソースの読み書きできます。 もともと、プログラミングやったこと無いって人も

    プロジェクトリーダはコードの読み書きできれば良いか - プロマネブログ
    atsushifx
    atsushifx 2014/02/11
    コードの読み書きというのはソフトウェアを開発するための技術力という意味だから。進捗の管理、予測をするためにコードを理解できるかが重要。Press Enterがそこらへんのダメさを書いている
  • コードを学べば「デジタルの黒幕」になれると思ったら大間違いだ(ある開発者の独白) | ライフハッカー・ジャパン

    疲れやすい、呼吸の浅さを改善。ストレッチポールは毎日使いたいほど気持ちがいい!【今日のライフハックツール】

    コードを学べば「デジタルの黒幕」になれると思ったら大間違いだ(ある開発者の独白) | ライフハッカー・ジャパン
    atsushifx
    atsushifx 2014/01/18
    元記事が個人のBlogサイトじゃないか。それにサーバもネットワークも技術力が必要だしコーディングの知識も必要。なによりOpenFlowやDockerなどの技術やツールで、これらもプログラミングに近くなっている
  • 命名するという行為 - 林檎の木

    http://codic.jp/ プログラミングをする上で一番時間のかかる作業ってなんだと思いますか? アルゴリズムを考えること? タイピングしてプログラムを組むコーディング作業? いえいえ違いのです、変数・関数などの名前を考えるのが一番時間がかかる。 これ冗談じゃなくて結構おおむねほぼ当の話です。難しいのですよ名前を付けるっていう行為は。ナウシカにおいて、巨神兵をオーマと名付ける事によって自我に目覚めたように、対象の存在意義を定める行為に等しい。だから対象がなんであるかをとことん考え抜く必要があるのです。この関数はどういった機能を持っているのか、この変数はどのような値を格納するためのものか、このクラスは何を表現しているのか、存在するとはなにか、生きるとは。往々にして思考が哲学的な方向に脱線したりしてとにかく時間がかかる。 それに加え一度決めてしまうと、なかなか別の名前に変えるというのも

    atsushifx
    atsushifx 2014/01/02
    プログミングに使える英語ネーミング辞書Webサービス。これはいい。
  • 私がJava EE開発の現場から学んだこと - ゆみちの投げやりブログ

    2013-12-17 私がJava EE開発の現場から学んだこと こんにちは。このエントリはJava EE Advent Calendar 2013の17日目です。昨年に引き続き17日目を担当します。昨日は瑞鳳教徒・@btnrougeの「JSR 356―Java標準のWebSocket API」でした。明日は@kokuzawaさんです。 §1. 事の発端 私は19日のAdvent Calendar(JavaJavaFX)に向けてJavaFX+JavaMailの試作品を作っていまして、全然暇じゃなかったのですが(後期ほとんど学校に行ってないですけど)、@btnrougeのド阿呆から仕事を手伝って欲しいと言われて、結局引き受けてしまったのが発端です。 何でも、Twitterをポーリングして(30秒おきだがレートリミット残によって間隔を微調整するらしい)特定キーワードを含むツイートをWebSo

    atsushifx
    atsushifx 2013/12/18
    できるプログラマーはできるプログラマーのところにしか集まらない理由。できるプログラマーはこういった環境に耐えられない
  • 新人女子プログラマの書いたコードを直すだけの簡単なお仕事です! | paizaオンラインハッカソン(POH)

    開発したいプログラム ECサイト内の2つの異なる商品(値段は同じでも構わない)を購入し、その合計価格が指定の価格以内で最大になる組み合せを探してください。 →問題詳細 新人女子プログラマの野田さんが途中まで書いたプログラム Item_a_b = 4500 // a+bの価格 Item_a_c = 500 // a+cの価格 Item_a_d = 2300 // a+dの価格 Item_b_a = 1240 // b+aの価格 Item_b_c = 5020 // b+cの価格 (中略) if Item_a_b == campaign_price print “AとBの組み合わせが最大!” if Item_a_b == campaign_price -10 print “AとBの組み合わせは-10円差でおしい!” if Item_a_c == campaign_price (以下略)

    新人女子プログラマの書いたコードを直すだけの簡単なお仕事です! | paizaオンラインハッカソン(POH)
    atsushifx
    atsushifx 2013/12/02
    ナップザック問題。とはいえ、Geekとかハッカソンという言葉も安くなったものだ
  • 狼男を撃つ銀の弾丸は,やはり存在しない. - カレーなる辛口Javaな加齢日記

    「優秀なエンジニアがいなくてもやっていくために」 http://bugrammer.hateblo.jp/entry/2013/11/23/144649 うーん,とりあえず元ネタのを読んでから全部書き直した方がいいと思う.*1 人月の神話 作者: フレデリック・P・ブルックス Jr.,滝沢徹,牧野祐子,富澤昇出版社/メーカー: ピアソン桐原発売日: 2010/12/14メディア: 単行(ソフトカバー)購入: 10人 クリック: 91回この商品を含むブログ (50件) を見る最新版.ただしピアソン桐原が技術書より撤退したため,絶版で店頭在庫のみになったの一つ.*2 Amazonでの価格も高騰している. 追記:丸善出版より出版された. 人月の神話【新装版】 作者: Jr FrederickP.Brooks,Jr.,Frederick P. Brooks,滝沢徹,牧野祐子,富澤昇出版社/メ

    狼男を撃つ銀の弾丸は,やはり存在しない. - カレーなる辛口Javaな加齢日記
    atsushifx
    atsushifx 2013/11/25
    プログラマーの生産性は技術力に依存する。古い本だが、Cプログラミング診断室を見るとよくわかる http://www.pro.or.jp/~fuji/mybooks/cdiag/