タグ

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

  • 量産型プログラマを撲滅したい

    プログラマの生産性の差は、出来る人と出来ない人で10倍とも100倍とも言われる。そんな馬鹿な、と思われるかもしれないが、事実だ。 むしろ、一緒に働かせると、出来るプログラマが、下手に作られたプログラムの修正をしなければいけなくて、全体の生産性を落とすことになる。 つまり、出来ないプログラマはチームで働くと、生産性をマイナスにするのだ。厳しいことを言えば、いない方がマシなのである。 ソフトウェア開発にの手はいらないのだ。 では、出来ないプログラマとはどんな人たちか。 コピペで書くプログラマだ。他で動いているプログラムをコピペして、なんとなく直して書いているプログラマだ。 なぜプログラムが動くのか、どう書けば動くのか、わかっていない。 ただ沢山のプログラムを書くだけの量産型プログラマだ。こういう人のプログラミングは、デバッグさせてみて、横で見てるとすぐにわかる。 まず、エラーメッセージを見な

    iTaro
    iTaro 2017/01/13
    人の数で勝てる戦争をしている認識の経営者が多いから、競争力が失われたのではないか。兵として数を揃えるべきはCPUであって、それを人がどれだけ上手く使えるかを競う社会になっていると思う。
  • フリーエンジニアのIT案件ならレバテックフリーランス

    2016年11月3日(祝)、大田区産業プラザPiOにて開催された国内最大のPHPイベント「PHPカンファレンス2016」。レバテックフリーランスでは、カンファレンスセッションの登壇者のひとり・和田卓人氏にインタビューを実施しました。 テスト駆動開発の先駆者として知られる和田氏ですが、今回の講演テーマは「PHP7で堅牢なコードを書く-例外処理、表明プログラミング、契約による設計」。あえてテスト以外のテーマを設定した理由をはじめ、PHPの優位性や今注目している言語、初心者エンジニアへのアドバイスなど、幅広くお話を伺ってきました。 <この記事の要約> 1. PHPの良い点は、ゆるふわな言語に見せかけて堅牢なコードも書けるところ。悪い点は、覚えることが多くて難しいところ。 2. テストを書いていればコードの品質が高いわけではない。また、テストが書けないくらい問題を抱えたコードでも、中から改善してい

    フリーエンジニアのIT案件ならレバテックフリーランス
    iTaro
    iTaro 2016/11/16
    良い記事。言語に関係なく、正しいプログラムを適切に作成するため、文法が分かりますの次のステップとして多くの初学者に読んでもらいたい。
  • null安全でない言語は、もはやレガシー言語だ - Qiita

    これらは、表中の「リプレース対象言語」に挙げたように、多くのメジャー言語に対する代替手段でもあります。 Java の代わりには Kotlin や Ceylon が、 JavaScript には TypeScript や Flow が、 Objective-C には Swift が、そして PHP には Hack があります。 Python は自身に null 安全 を取り込みました。 Crystal は直接 Ruby と連携して使えるわけではありませんが、 Ruby 風の null 安全 な言語です。 RustC++ の代替を目指して開発され、 Firefox の一部で C++ のコードを置き換えるのに使われています [^100] 。 null が引き起こしてきた数々の問題を考えると、僕は、 null 安全 は GC (やその他の安全なメモリ管理手法)に匹敵するプログラミング言語の進

    null安全でない言語は、もはやレガシー言語だ - Qiita
    iTaro
    iTaro 2016/11/07
    もう「ヌルポ」「ガッ!」ってネタが通じなくなるのか。感慨深いなぁ。→(n年後)Java 8 以降の機能が使えるのって、あと何年かかりますか?ってならないと良いな
  • ASCIIコードの秘密 - ザリガニが見ていた...。

    当はエスケープシーケンスのことを調べていたのだが、その前にASCIIコードについて調べることになってしまった...。文字コードの基として知っているつもりだったASCIIコードについて、あらためて見直してみると、実は当の意味をよく分かっていなかったことに気づいた。 ASCIIコード表 ASCIIコードは、7ビット(2進数7桁)の文字コードであり、全部で128のコードが定義されている。 最も基的な文字コードであり、その他多くの文字コードはこのASCIIコードと互換性を維持している。 00 10 20 30 40 50 60 70 00 NUL DLE SP 0 @ P ` p 01 SOH DC1 ! 1 A Q a q 02 STX DC2 " 2 B R b r 03 ETX DC3 # 3 C S c s 04 EOT DC4 $ 4 D T d t 05 ENQ NAK % 5

    iTaro
    iTaro 2015/02/10
    BSとDELの下りにへ~ってなった。Unicodeのサロゲートペアと結合文字の処理に最近泣かされた身として、興味深く読ませてもらった。
  • 昔ながらの「片手間に書くJavaScript」の限界 - mizchi's blog

    Javascriptを使うのをやめろ:Railsの時代遅れ云々についての結論 - Qiita この記事は、全体的に自分の業務以外の評価基準やトレンドを知らないんだなという感じで、わざわざ付き合うと精神的に消耗する感じがした。ただ、それが彼らの職でない以上、自分もこの結論に至るのは仕方ないと感じている部分はある。 真の問題は、自分がレガシーなJavaScriptを書いているという自覚がない人間が、ここ数年の技術トレンドから乖離したコードを書き続けることで他のエンジニアやエコシステムそのものに悪影響を及ぼしているケースが散見されている。一行書く毎にグローバル汚染するスクリプトを見せられてもメンテ出来んと言われても、はいそうですねとしか言えないし、そういう人に最近のライブラリを触らせると遅くなるというのは、画面全体を一つのMustacheテンプレートにしてBackbone.Modelのパラメー

    昔ながらの「片手間に書くJavaScript」の限界 - mizchi's blog
    iTaro
    iTaro 2014/06/30
    一時期のPHPと同じポジションにJavaScriptがおかれている気がする。誰でも動くコードは書けるが、保守性の高いコードを書くのは全員ではないということ。下手な奴にコードを書かせるなって大声で言えたら良いのに……。
  • AngularJS使い方メモ - Qiita

    AngularJSアプリケーション開発ガイド を読みながら勉強したときのメモ。 HelloWorld AngularJS を入手する 公式サイトから angular.min.js をダウンロードする。 HTML を書く <html ng-app> <head> <script src="angular.min.js"></script> <script src="helloWorld.js"></script> </head> <body> <h1 ng-controller="HelloWorldController">{{message}}</h1> </body> </html> angular.min.js を読み込む。 ng-app ディレクティブを付けたタグの中が、 AngularJS のテンプレートとして処理される。 ng-controller ディレクティブを付けたタグの中

    AngularJS使い方メモ - Qiita
  • 技術的負債という(非エンジニアにとっての)隠しパラメータが生産性100倍を起こす - mizchi's blog

    元糞コードマイスターとしては、生産性については思うところある。 技術的到達深度が深い人じゃないとそもそもかけないコードってのももちろん存在して、その前提で10倍とか100倍になりうる話をする。 そもそもマイナスになる人がいるって話。 隠しパラメータをモデル化 エンジニアA:「週に10の成果を出して3の負債を生む人」を考える。この人は開発を止めてリファクタリングをすれば10-3 = 7の技術的負債を返却できるとする。 ここで正確には成果10には* aの係数が掛かっている。これはプロジェクト開始時1.0で、技術的負債が貯まるほど0に近づいて行く 次に、エンジニアB:「週に15の成果を出して10の負債を生む人」を考える(これにも係数aがかかる)。この人は見た目上は上の人の1.5倍速く成果を出しているように観測できるが、負債もたまりやすい。リファクタしても綺麗になりにくい。 これは割とエンジニア

    技術的負債という(非エンジニアにとっての)隠しパラメータが生産性100倍を起こす - mizchi's blog
    iTaro
    iTaro 2014/02/20
    予測される変化点を特定し、その周りに安定したインタフェースを作成する。できるだけ実装の負債を凍り付かせたまま、サービスを改良していける設計が好き。
  • VB6からVB2008 への移行に関して

    VB6(Visual Studio6.0)がWindows7や8で使えずいずれサポート打ち切り、最悪はそのEXEも次期OSでは動かなくなる恐れから止むをえずVB2008へ変換を試みていますが、余りにVB2008は利用者泣かせよくもこのような製品を世に出したなと言わざるを得ません。VB6で便利に使えていた機能をことごとく排除、オブジェクト指向と言う単に技術者の傲慢、自己顕示欲を示すだけの製品になっている。オブジェクト指向になってどこがどう便利になったのか複雑怪奇にしただけで便利さや機能の優れている点等どこにも見えない。VB6の便利な機能排除の主な物は以下の通り。 Inetコントロール、Winsockコントロールの排除、コントロールの配列機能排除、ポップアップメニュの左クリック排除、フォームのUnloadの排除等等 その他枚挙にいとまない。またこれを代わりの方法で実現する方法等にも書いてない

    iTaro
    iTaro 2014/02/09
    弘法筆を選ばずというのは、本質を理解していれば、道具が変わっても継続性があるという事なのだと思う。小手先の芸ではなく、下地のある技術を身につけよう。35歳定年?ようやく分かり始めてくる頃じゃないかな。
  • 1