「デザインパターン」を含む日記 RSS

はてなキーワード: デザインパターンとは

2018-08-15

生産性ゼロどころかマイナスな同僚

ほぼ愚痴です。

エンジニアなんだけど、ひどい同僚がいる。

酷い点を挙げればキリがない。当人が何も生み出さないだけならまだしも、他のメンバー生産性まで下げるので、非常に手を焼いている。

インターンなりエントリー/ジュニアレベルであれば教育すれば良いだけなのだが、経験豊富ベテランという触れ込みでやってきてそれなりの給与をもらっているからタチが悪い。

一度もプレーせずに長年プロサッカー選手として生きたブラジルだかのおっさんのように、きっとこれまでも口の上手さであちこち渡り歩いてきたのだろうと推測する。

奴が入ってきて1年ほどになるが、上司は気づいているし、一緒のプロジェクトで働いたことのある他のエンジニアも皆気づいている。クビにするなり何なり手を打つように直談判すべきか。

2018-06-24

プログラマアニメ好きみたいな風潮

プログラマなら当然アニメ見るよね」みたいな論調の人をたまに見かけるけど、特に前置きもなにもなく「今期何見てますか?」みたいに決めつけないでほしい。昔より遥かにアニメ一般的になったとはいえ、みんながみんなアニメをチェックしてるわけじゃないと思う。

技術者から言われるなら単に「白痴か」って思うだけで済むけど、同じプログラマからだとちょっと不快になる。

別に俺もアニメが嫌いなわけじゃないよ。クレヨンしんちゃんとかたまに見るし。深夜アニメも見たことがないわけじゃないし「こっち来んなアニオタ」などとは思ってないし、幼稚だとも思ってない。

アニメを観てる前提のコンテキストで話されても伝わらないから、プログラマ同士といえども、まずアニメを見てない可能性もあるってことをわかってほしいんだよね。

多くの場合、見てないと言っても「言うほど見てないだけ」と解釈されて、こっちが知ってる前提で話が継続するの悲しすぎる。

本当はもっとこの前勉強したプログラミング言語とかアルゴリズムとか英文法の話とかしたい。

追記

トラバを見て思ったけど、たしかアニメ問題だけではないような気がする。

相手英語を読めるかどうかに関わらず英語サイトを見せたりするし、デザインパターン知識の有無を確認せずに「Visitorパターンで行けそうですね」みたいな話とかするし、なんにせよ軋轢は生まれしまものなのかもしれない。

潔く、バカにされることは受け入れて、普段から「なんですかそれ。わかんない。初めて聞いた。教えて」という白痴モードで接するのが一番いいのかな。

2018-03-18

プログラミング歴とプログラミング能力ほとんど関係無い件について

ほとんどの人はもう既に気付いていると思うけど、あえてこの表題言及している人はあまり多くないんじゃないかと思ったので書く。炎上したら💩なのでここに書く。

結論から言うと、プログラミングを何年やったかプログラミング能力はこのぐらいと言うことは絶対にできない!

これは何もIT業界だけでなく他の分野でもそうだ。たとえば野球とか絵画かにも言えることで、ただ年数を重ねればいいってわけではない。勘違いしてほしくないのは、他の業種ではただ年数を重ねればいいといっているわけではない。

コンビニだったら始めはレジ打ちから入るだろうが、だんだん品出し、他者とうまく調整できv、何が売れるか・何が利益率を叩き出すかを把握し、接客態度は絶えず磨き……というように、能動的にスキルを身につけるなければあっという間に「経験した年数」などというものは何の武器にもならないであろう。(「やっても給料変わんない」とかそういうのは抜きにしても)

IT業界でもこれが言えるのだ。

その証

個人的経験によるサンプルしか無いが、ぼくの経験上では年数が高ければ高いほどいいと思ったことは全くない。もちろん2ヶ月の新人と5年目の人での比較はなかなか難しいが、情熱ある新人プログラマ半年で5年目を追い越すなどということはありふれた話だ。あたか大人小学生中学生さらっと数学英語能力で負けるように負ける。

残念ながらしっかりした実証などはないので、周りの環境がそうではない場合は納得できないかもしれないが、以下は明らかであろう。

経験年数とは時間であり、重要なのは時間を代入すると成長度合を求められる関数(ここではFとする)の違いである。(F: time -> ability)

Fの方が大事理由も明らかだ。timeケチをつけようとする例外を除けば誰にとっても同じであり、おもしろくもなんともない。

Fの次元が違う場合は、能力次元文字通り違う。そのため、かなり重要だ。

プログラミング歴が増えることは恥だと思いたい

プログラミング歴2年だからこんなことを知っている」と周りから評価されるというのは、要は「プログラミング2年生」だということだ。これははっきり言って侮辱である。2年プログラミングをやったから知っているんじゃなくて、2年の間で勉強したことたまたま別の箇所で出現したということだ。決して2年やったからではない。2年の間に獲得したスキルがいっぱいあるからだ。2年は重要じゃない。どれだけやったかだ。2年という期間それ自体は全く重要ではない!

プログラミング歴2年なのにそんなことまでできるのか」というのが真の評価なのだ

これはまあまあ高い評価である。「プログラミングを始めてまだ半年なのにそんなことできるのか」という評価はより容易く得られる。年数を重ねれば重ねるほどこの評価に達するのは難しくなる。したがって「プログラミング10年なのにそんなことまでできるのか」という評価ほとんど得られない。ほとんどの場合、「10年やってるからできるんだな」とか、ひどい場合10年やってるのにこんなこともできない」という評価になる。

これもある種、年数というもの全然重要じゃないとみなされている証左であろう。みんな知らず知らずのうちに周囲の人々の経験年数と能力とでおのおの相関図を作り上げて、標準偏差をなんとなく作り出して、「45歳……クソコード……チーン!こいつは偏差値37!落第!死刑!」みたいなことをやってるんだろう。

プログラミングも慣れてくると、特に新しいことを勉強しなくてもなんとなくできるようになってきはじめる。これが危険シグナルだm

謙虚でありたい

自分プログラミング歴が長いのに、HTTPSの仕組みもTCPの仕組みも詳しく知らず、JavaScriptもまともに書けず、WebAssemblyは全く知らないし、RDBのことは知らないし、もちろんRDB以外のDBちんぷんかんぷんで、デスクトップアプリは作ったことがない、サーバサイドはRailsしか知らない。Railsがどう作られているかも知らない、gitの触りぐらいしか知らない、AWSGCP全然使いこなせない、公開鍵暗号方式もよく知らないし、アルゴリズム簡単ものしかからない。デザインパターン勉強してないし、関数型言語もわからないし、C言語全然読めない、アセンブリはやろうと思ったことすらない、正規表現も複雑なものはいまいちわからないし、機械学習はわからないし、そもそも数学不安で、AndroidアプリiOSアプリもまともなものリリースしたことがなく、エディタは人が作ってくれたプラグインをただインストールするだけで、英語ほとんどできず、セキュリティに関してはザルもいいとこ」

のように自分を見直すべきである。もちろんほとんどの人はそうしているとは思う。そもそも自分プログラミング歴が長いのに」という部分はもはや要らないだろう。

あとはただ穿つだけである能力は、どれだけ、何を、どうやったかとの方と強い相関を持つ。能力とは現在状態であるのだから、強い相関を持つのは最最もである

結論

少年老い易く学成り難しである

一刻も早く「プログラミング歴」でなんとなくの判定するのをやめて、プログラミング歴1秒の人に対しても、プログラミング1000年の人に対しても、そのFを見るようにし、自分はとっとと次元を越えて昇華したいものである

結局、「いっぱいやればいっぱい成長する」という自明結論自体は変わらないんだが(高)

2018-02-16

プログラム設計書とかいもの

最近SE向けに、JavaWEBアプリコードからプログラム設計書を書き起こす作業をしている。

コード自体は今風の書き方で、それなりに読みやすい。そのコードを、日本語文章(たまにフローチャート)に翻訳していく。

基本的に読者は非プログラマーなので、クラス設計原則やら、デザインパターンやらの気配を匂わせてはいけない。通じないし、冗長になるだけだからだ。

辛い。ゴリゴリ精神が摩耗していくのを感じる。果たして、これは必要ものなのか?残念ながら、必要なんだな、今のプロジェクトでは。

いまさらこんなもの書くことになるとは思わなかったなあ…。

2018-01-02

プログラミング初心者の頃の気持ちを忘れた

プログラミング教えてと言われた。

自分PCサーバ立ててドメイン通してアクセスしてみて、HTMLCSSJavaScript概要を教えた。

http://hogehoge.comを叩くとぼくのローカルPC上のHTMLを見ることができるのだ。普通これは感激するはずだ。ヤツは少しも感動しなかったが。

タグのことを教えて、formタグ使ってみて、CSSを教えてセレクタの使い方教えて、なるべくDOMというワードは避けてJavaScriptイベントの追加のしかたを教えた。

で「あとは色んなタグ覚えるだけ」「CSSで色んな組み合わせやってレイアウトを楽しんでね」「あとは色んなイベント覚えるだけだから」みたいな感じ。色んなイベントを追加してもらった。

その後データベースの話をした。

「まずエクセルファイルからデータ取ってみよう(実際はCSV)」「あ、でもこれだと取りにくいし時間かかるね」「しかもこれだとデータ矛盾ちゃうしめんどくさいね」「そこでデータベースですよ」

って言って、sqlite3を教えた。エクセルで「これがインサート、これがデリート」って説明しながら、テーブルレコードSELECT, INSERT, UPDATE, DELETEを教えた。

ヤツは「なんでそんなわかりきったことをわざわざ文字入力するんだ」と憤慨していた。こっちが憤慨したい。

で、次はWebフレームワークの話。まずWebフレームワークを使ってもらう前に、URLを叩いたらアプリケーションが走ることを確認してもらう。僕は「すごいでしょ!!」って言う。

さっきのsqlite3とつなげてみて、データを取得して表示してみた。ここで僕、「すごいでしょ!感激するでしょ!!」って言う。「ふーーん」っていう反応。「データをそのまま表示してるんだからそんなの当たり前でしょ?」みたいな。うるせぇWebサービスなんて大体そんなもんだわという言葉を飲み込みつつ、ここまで3時間

ここで初めてサーバサイドの言語を教える。for-each文、関数までは順調。そしてクラスクラスは若干詰まっていたのでぼくはまず構造体について説明した。

構造体のことはよくわかるみたいだ。まず青赤緑で構成された色の構造もどきを作って、画面に色を出力した。ぼくがこの構造もどきで画面にマリオを描くとヤツは感動していた。

そしてぼくはクラスについて教えた。「この構造体に関数がついてたら便利なときもあるもんだ」って感じ。説明がめんどくさいので「このクラスっていうのが型だよ」とか言っておいた。

共通でいてほしいものもあるけど、共通でいてほしくないものもある」と言って、ぼくはキャラクタークラスを作ってマリオオブジェクトクッパオブジェクトを生成し、FFを究極に安っぽくした感じのフィールドで戦わせた。

ヤツは興奮しているようだった。マリオは負けた。ぼくは「人は目に見えるものしか興味が沸かないんだな」と達観した。

Webフレームワークに戻ってぼくはクラスを使ってViewModel、そしてControllerを教えた。彼はなんだかかなりよくわかった様子だった。ぼくは満足した。

そろそろ5時間になろうとしていたので、ぼくは「あとはデザインパターンと言って、プログラミングしていてよくあるパターンを集めたものがあるんだ」とか「アルゴリズムを知ると色々効率よく書けるよ」とか「非同期処理とかもあるし、とにかく色んなライブラリを試してみて」「他の言語とかも試してみて」とかそんなようなことを言った。

ぼくの仕事は終わった。あとはもうヤツは自分ひとりでなんでもできるだろう。ときどきぼくが質問に答えることもあるだろうけど、ヤツはサーバサイドに必要な大まかな知識を、こんなに短期間で得たのだ。ヤツは優れたエンジニアになるに違いない。ぼくはヤツの家をあとにした。お金ぐらい払ってほしいものだ。

翌日、ヤツから電話があった。

「ごめん、HTMLってなんだっけ……?ていうかファイルってどうやって作るんだっけ……」

ヤツは何も覚えてなかった。俺は発狂した。俺はいったい、何を教えていたんだ。

あと俺、数年勉強しててこれぐらいのことしかわかってなかったのか?そう思って、なんだか猛烈に虚しくなってしまった。

そしてぼくは、二度と人に教えないことを決意した。

2017-12-31

anond:20171228095020

知識としては経営学部学部回生レベルからね。

デザインパターンみたいなものといえばそうだと言える。

その知識を元に、ケーススタディといってビジネスを見て振り返ってというのを繰り返しやるのがMBAだけど、

「生き残ってる」ベンチャー社長で、ある程度まともなのは経営学特にマーケティング知識を踏まえた行動をやらんと生き残れない。

生き残ったのが社長を続けているから、MBAで学ぶ程度の初歩知識はある。

一方、その最低限のマーケティング意識がないのもいっぱいいるか知識としてはやっぱり持っておかないとならない。

ビジネスが完全にわかる奴というのはまあ、たしかに世の中にはいいかもしれない。

いろんな人はビジネスはこんなもんだ。みたいなのを読んでの積み重ねでしかないんだろうね。

まあ、裏張りや「こんなあくどいことしても儲かるオレすげー、世の中バカwwww」みたいな苛立たせるような成金書物もあるからそこはみさだめないと。

2017-12-28

MBA持ってる人と話をしたんだけど

経営学修士持ってるって言ってもこんなもんかよ

絶対オレのほうが詳しいわ(自分が詳しいなんて思ってないけど)

ガッカリだよ

 

そういや、そこらのベンチャー社長の話聞くと皆かなりしっかりしてるけど

ほとんどMBAなんて持ってないんだよね

結局独学、個人資質次第ってこと?

ビジネスちゃんと分かる人って一体どこに居るんだ?

なんかオカシイんだよね、滅多に居ない(そもそも皆興味がない)

 

そもそも、そんなパターン化できるものでもないと思う

喩えるならプログラミングに近い

デザインパターンで全部解決できるわけじゃないのと同じ

パターンでできるなら誰でもできるが、そうなってないというのと同じ)

からこそMBAという「こいつは理解している」という印籠に効力があると思ったんだけど

何、座学受ければ誰でも取れるのかこれ

場所によるとか?

2017-12-14

IT系あるある

ジーパン or チノパン + ワイシャツ

それ以外の格好がなかなか出来ないしファッションもこう、なんかデザインパターンみたいのが欲しいです。(笑)

2017-11-27

子供プログラミングを学ばせる・・・ってやつ

パズルみたいな奴でオブジェクト志向的な発想を学ばせるやつ

あれ本当に効果ある? 

そんなん初歩の初歩で、プログラミングって結局デザインパターンや、アンチパターンライブラリ名前

サーバーデータベースの設定方法や、次々出てくる新しい概念を覚えるという泥臭い勉強必要なわけじゃん

楽しくプログラミングなんかしてたら絶対身につかない知識が実務には必要

パラダイムシフトさせて世界技術の基盤を作るような発想をするにも、やっぱり泥臭い勉強必要

ゆとり教育と同じ失敗やろうとしてる気がするんだけど、あれで本当にいいのか

それよりは大学コンピューターサイエンス科を増やしたほうが・・・

2017-11-22

anond:20171122020027

行き過ぎたオブジェクト指向には弊害があることがわかってきたし、

デザインパターンも、たったそれだけのパターンで何でも解決できるわけがないだろ。

臨機応変もっと頭使えよ。的な論調はあるよ。

考案された時期から考えたら、もう古い技術と言っても差し支えないでしょう。

2017-11-08

anond:20171107110105

> ここ5,6年の悩みで最近はっきりわかってきたんだけど、俺いつのころからかどうやって勉強していいのかわからなくなった。

> 一番大きいのは結婚して子供できて自由時間が減ったことなんだろうけど、でもそれ以前から勉強ぜんぜんできなくなったの。

お前は俺かってくらいまったく同じ状況。なので最近ずっと「俺ってもっと優秀な人間じゃなかったか」って思って自己分析してるんだけど、ここ数年で一気にスキルセットが変わったのが大きな原因かなと思ってる。デザインパターンアスペクト指向UMLプロジェクト管理手法、積み上げてきたものはたくさんあるけど、今はまったく使えない。若者より知識ものすごくあるけど、意味がなくなった知識ばかりなので実質的比較をするとほぼ対等。アジャイルクラウド機械学習・・・新しく出てきて若い世代が中心的に学んできた技術存在を考えると、おっさんたちはむしろ若者よりマイナスになってしまったわけ。知識の量は若者より多いのに関わらず。

なので、勉強をするときも「若者よりスタート地点がだいぶ低い」という観点勉強しないとダメだと言う結論に至った。その方法とは、簡単コンテンツを、大量の時間をかけて大量に吸収する、ということ。

後、子供はもう致命的な。特に休日今までは合計で16時間くらいは勉強に使えていたのが0時間になる。一ヶ月だと64時間くらい消えてるのね。勉強できないってより勉強してない。となると、前述の「大量の時間をかけて」が無理ゲーなので、すでに詰んではいる。

> もう俺は嫁さんと一緒にあと20年近くかけて子供2人育てなあかんからITが好きか嫌いか仕事選べる立場じゃねーーーの!

「すでに詰んではいる」と書いたとおりなのだが、これもまったくの真実。「技術ができない人」が「大金を得なければならない」。しかもそれは自分のためではなく、家族という他人のため。その行為は悪ではなく、善。

驚くべきことに結婚して子供ができると「能力の低下」と「収入の増加」を同時に満足させなければならない。そのためにできた制度が、おそらく年功序列であり、管理職なのであろう。そして今はその制度が壊滅しつつある。それでもこの矛盾と戦わなければならないので、結局は能力がなくても若者からお金を奪っていく方法を考えて、どんな手段を使ってもそれを実践していかなければ家族(言い換えると次の世代)を守れない、ということになるだろう。

管理職になる他にも、自分の持ってるレガシー技術を後輩に強制して、自分レガシー知識有効となる土俵議論を持っていくという手もある。いずれにしてもろくでもない。

2017-02-11

職場の開発スタイルが古すぎて限界なんだが

IT業界プログラマなのですが、どれだけ技術進歩しても何年も同じ開発スタイルから一向に改善しなくて限界を感じています

例えば次の点が挙げられる

バグ個人責任のせいにする

 ・世渡りが上手い奴は口だけ出して手は動かさな

  ・こいつが手を動かすのは最小限で、なおかつビビりなのでよく確認する

 ・手だけが早くリリースしてから考えようぜって思っているタイプバグを出すたびに個人攻撃される

開発プロセスが雑

 ・レビューがない

 ・仕様最初から作るつもりがなく、毎回担当者が長年の勘で仕様を考える

  ・故にどこかで矛盾が生じる

  ・担当者の長年の勘が頼りなので、作り手としては要求に答えるしかない

   ・仕様明確化されていないので、言われた通りに作るしかない

   ・一部しか担当していないので、一部しか知らないのだがそれを「もう何年もやっているのに担当したところしかできない」と言われる

    ・尚、これに対し口答えは許されない模様

 ・仕様がないので自分なりに担当者確認して作る

  ・このあたりはOKなのだが、その内容は一切ドキュメント化されていないしするつもりもない

  ・いつでもこの仕様担当者の気分で変更できる

   ・変更できるのは問題ないが、言い方が「お客さんがバグ報告がきた」みたいな切り出し方

   ・バグではなくただの仕様だし「作る時にそう言いましたよね?」と言ってもドキュメントがないので根拠なし

テストを書かない

 ・開発スピードが遅くなるから理由テストを書かない

 ・というか書き方を知らない

  ・xUnitすら使えない

MVCを知らない

 ・単語は知ってて理解しているつもりなんだけど的外れ(いわゆる Fat Controller が普通だと思っている)

・新しい知識を覚えるつもりがない

 ・自分達で勉強した最新の知識デザインパターン

 ・新人が入ってくるもこの調子なので2〜3年もすると社内の仕事はできるが若いのに技術力は10年以上前技術者レベルになる(仕事必要なことしか知らないのでそれ以下か)

 ・そして、いつまで経ってもこの開発スタイル改善しない

けものフレンズがバズったので、ついカッとなってやった。

2016-11-18

設計について善し悪しを議論をするのは難しい

ブレストとかあるじゃん

あれって、非常に単純なアイディアに対する議論が主なんだよ

構造的になっているような、設計必要タイプの話は中々議論ができない

できるとしたら、その筋のプロ同士とか、デザインパターンが決まったものについてとか、天才同士とか、そのくらいだ

 

からブレストから始めると、構造的な問題に対する話が漏れ

結果「みんなで考える」より「ひとりを中心にして設計する」方がうまくいくケースが有る

そして、そういうケースは得てして非常に重要ものだったりする

(例:物語脚本組織づくり)

 

何かしらの設計に携わる人は、この件について知っていたりするものだが

多くの人は「みんなで知恵を出し合えば解決する」と勘違いしている

そういう風にして手詰まりになるシーンを何度か見たことがある

2016-10-16

プログラマ思考なんて教えられないだろ

俺が日常プログラマ思考が生きているなと感じる対象

・if else の条件分岐の考え方(条件漏れをなくすという考え方含む)

論理和論理積の考え方

デザインパターンの考え方(メソッドという概念を含む)

バグチケットの書き方

製造プロセス全体

  

こんな感じだけど、実務2年くらいやらなきゃ身につかない

学校で一体何を教えるんだ?

2016-04-07

デザインパターン中の人のひとりが亡くなったらしい

やっぱりゴフッていいながら倒れたのかな

2015-11-06

http://anond.hatelabo.jp/20151106113518

デザインパターン」の一言で済む話…のような気がするけど意外とそうでもない(デザパタの話にメソッド設計思想の話とかあんまないからねえ)

そういうプログラミング鉄則集みたいな思想書があればいいんだが。

2014-07-22

オブジェクト指向を学ぶ意味とは

今月に入ってからJava(ゆくゆくはAndroid勉強してる素人なんだけど

http://qiita.com/kenokabe/items/13ea8d2da6adce1b3b9a

http://d.hatena.ne.jp/nowokay/20140718

こういうの読むと、別に理解出来てるわけじゃないものの、じゃ今OOPやる意味ってなんなんだろと思う。

地固めというか、それでも基礎力つけるためにひと通りはやったほうがいいのかな。

デザインパターンUML書きながら、動作と意味を追いながらとりあえず書経してるけど、

周りに相談できる人もいないので、ここで訊いてみた。

初めてはてなダイアリー書いてみたら、記法からなくてアメブロみたくなったので死にたい

2014-06-18

後輩をいい方向に向けてやりたい

情報系の研究室には珍しく女の後輩ができた。

見た目に関してはお察し。

しかしこの後輩、いわゆる「意識高い系」のようなのだ

Windowsバカにするんだけど、さりとてMacの利点を聞いても答えられない感じ。

それでいて自己顕示欲は強いらしく、開発サークルなどで積極的に活動している。

しかし、コーディング力もマネージメント能力も無いので一向にプロダクトができてこない。

プロジェクトを始めるにあたって、設計をしない。

その重要性を全く理解していない。

アジャイル勘違いしている。

デザインパターン理解できていない。

情報隠蔽を「チームメンバにコードを読ませないこと」だと思っていた。

絶句した。

そしてプライドが異常に高い。

から、それは違うよ、と言おうにも、まるで受け付けない。

どうにも自分のことを、具体的なコードは書かないが画期的ヴィジョンを作り、

チームを率いてプロダクトを作る指導者タイプだと思っているふしがある。

まり自分ヴィジョン完璧なのに、周りがそれについてこれないせいで失敗していると思っているふしがある。

自分でまとめていて、なんかもう、絶望的だなと思わないこともないのだけど、

方向はさておきがんばっている姿は本物だと思うので、なんとか良い方向に向かわせてやりたいのだが。

ちなみに彼女は俺のことをブサい口だけの男だと思っているようで、まったく尊敬していない。

から搦め手というか、本人にそれと気づかないやり方で意識を変えてやりたい。

どうしたらいいと思う?

これだから女は」とか、そういうのいらんから真剣に頼む。

2014-06-07

自分より仕事ができない人が嫌い

高卒だし、高校では赤点ばっかりだったし、算数数学も大嫌いだったのに、なんとかプログラマーやってる。

プログラマー歴は5年ぐらい。

零細ECサイト運営してるブラック企業就職してエクセルVBAを触ったのがきっかけでプログラマーになった。

 

それまではコンピューターを触ったこともほとんどなかったのでPC歴は6年ぐらい。

パソコンなんてどっちかっていうと嫌いなぐらいだから休日ネット以外ではほとんど触らない。

仕事から仕方なくやってるレベル

 

驚く事にこんな俺より使えないプログラマー存在する。しか大卒だったりする。

 

去年入って来た早稲田大学卒業プログラマーなんて1年やってもオブジェクト指向が分かってない有様。

デザインパターンに至っては何それ状態。

俺の教え方が悪いってのもあるが、そんなの自分勉強してくれって思う。

なんでもパブリックメソッドにするし、便利クラス作るし、脳みそ腐ってるんじゃないかと思う。

 

先輩は先輩でデータベースが遅いっていうから見たら、インデックス張ってないし。

なんで基本すら分かってないの?

おたく大卒なんでしょ?頭良いんでしょ?

 

別にこいつらがどんなコード書こうが別プロジェクトだしどうでも良いはずなのに、

なんでイライラするのか自分でも分からない。

俺は心が狭いんだろうか?

2014-04-22

http://anond.hatelabo.jp/20140410183410

すごい今更だけど、1に対してだけ少し。

基本的に、まだ発展途上にあるものほど、理論面が強調されがちなんだと思う。

今の関数型言語は、まだデザインパターンが、色々発案されだしているけど、確立しきっていなかった頃のJavaオブジェクト指向時代、みたいな感じ。

Javaで言うデザパタは、関数型言語では大体、モナドとしてまとめられるわけだけれど、そのモナドを色々発明するために、圏論をしっておくに越したことはない、みたいな感じなんじゃないかと。

もっとも、そろそろすでに出てきているデザパタモナドを利用するだけの、純粋学習者も増え始めている頃合だから、気になりだしては来るタイミングなんだろうけど。

2014-04-11

デザインパターンはきっと

使うでも当てはめるでもなくて気がつけばそこにあるもの

2014-04-10

プログラム中級者が感じる関数型の違和感

なんだか話題になってるから書く。

やっと初心者を脱して中級者になりかけてるプログラミング学習者が関数型言語に何を感じているかを書こうと思う。

1 圏論かいらないんじゃないの?

Haskellが短いコードプログラムを書けるというのは分かる。

forループmapやfoldで抽象化する利点も分かる。

それでやりたい処理のほぼ全てがまかなえるということも実感している。

副作用のない小さな関数を合成して大きな関数を作る利点も分かる。

再利用性も上がるし、どこからどう影響を受けているかが簡単に分かるからバグも出にくい。

ただ、Haskellの基礎になってる圏論が何の役に立つのかは、まったく分からない。

むしろ邪魔なんじゃないかと思う。

ファンクターやモナド概念圏論で扱われているのは分かるけど、圏論なんて名前だけ知ってればコードを書くのに不都合はないだろう。

圏論必要なのはHaskell設計する人であって、使う人ではないと思う。

なのに、やれクライスリ圏だ自己関手の圏だのと、うるさいったらありゃしない。

Linux上で開発環境整えるのにカーネルコードを読めって言うぐらい的外れだと思う。

いや、知識として持っとくのはいいだろうけど、役に立たんだろ。

2 言うほど新しい機能ないような?

Rubyが羊の皮をかぶったLispとはよく言われることだけど、関数型言語オブジェクト指向言語とそこまで違いがあるような気がしない。

純粋言語ではできないけど、クロージャに内部状態を保持してもらって無名オブジェクトみたいな使い方をすることはあると思う。

その無名オブジェクトもっとあれこれデータ関数詰め込めば、いつの間にか普通にJavaC#で使うようなクラスのできあがり。

その間はなめらかにつながっていて、不連続に切れるようなもんじゃない。

関数プログラミングと言いつつ、オブジェクト指向の考え方は利用できる。

上級者はデザインパターンdisるのが好きかもしれないけど、逆の考え方をするべきだと思う。

デザインパターンオブジェクト指向言語欠点を補うための苦肉の策じゃないよ。

関数プログラミングの基礎的なパーツだと思う。

からちょっと見た目がすっきりするだけで、結局やることはオブジェクトプログラミングと変わりはないと思う。

3 なんか選民思想にとらわれて無い?

関数プログラミングコミュニティの人って、業務でクソコードメンテさせられて、その現実逃避に美しいコードに擦り寄っているように見える。

もちろん、美しいコードを書けるなら書いた方がいいし、現代的な言語を使えるなら使ったほうがいいと思う。

けど、適材適所というか、オブジェクト指向言語でも、やってやれないことはないわけで。

役に立たない圏論をありがたがる所とか、どうもイキがってるように見える。

せいぜい生産性が倍になる程度で、他の要素が悪ければ帳消しになるような利点でしかないに違いないのに。

開発プロセスとかを見直す方が仕事を楽にしてくれるんじゃないのかな?

2014-03-28

女性エンジニア仕事ぶり

女性エンジニアで「すごい!この人できる!」という人を見たことがない。

いままで出会った女性エンジニアは、

という残念な方々だった。(全部違う人、経験年数4~15年とバラバラ)

設計があればコーディングがすごく早い」とか「お客様へのフォローうまい」とか、ここはいいなと思う点はある。

けど実際、「仕事ができる」と思われる人はどれくらいいるのか?

主観的に「仕事ができる」と書いたけど、定義するなら「仕事が早い」「品質がいい」「マネジメント能力が高い」とかかな

こんなこと書いてるけど、私も女性社会人10年目を迎えるプロジェクトリーダー

半年前に転職した際、一部上場企業スタートアップ企業からプロジェクトリーダーマネージャー枠で内定もらえたから、

その辺りの採用基準はクリアしているのだろう。

でも「仕事ができる」と言えるレベルにはまだまだ達していないと思う。

こんなこと悶々と考えている理由は、

目標としたい年上の同姓のエンジニアが身近にいなくて、将来の不安が年々大きくなっているから。

みんないつ結婚しているの?(相手いないけど、結婚願望はある)

職業柄激務になりがちだけど、子育てと両立できるの?

結婚しない場合はどういう働き方になるの?

謎、謎、謎。

自分の周りの環境がすべてじゃないのはわかっているし、シリコンバレートップ企業とか上を見たらきりがないけれど。

仕事ができる女性エンジニアがいたら、経験とかキャリアパスとか教えてもらいたい。

プライベートも充実している人だったら、師匠にしたい。

2014-03-03

職場レベルに合わせてコードを書きましょう

上司デザインパターン?なにそれ?for文で回せばいいじゃないか」

チームでコーディングするときに最も重要なことはなんだろうか。

それは協調性だ。”コードのリーダビリティ”とは”上司にとって読みやすいこと"を意味する。

リーダビリティを高めるために、"一貫性"を意識することもまた、重要だ。

そう。上司の言うように、すべての関数コメントを付けなければならない。

function up(){ // 上げる. 2014/1/21 3:34 by xxx

コメントのxxxは俺だ。俺なんだ。

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん