タグ

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

  • コードレビューの話

    新卒エンジニア向けにコードレビューを「する」話をしました。 http://hisaichi5518.hatenablog.jp/entry/2014/10/29/165721

    コードレビューの話
  • Androidソースコードレビューで指摘する事が多い項目まとめ - こやまカニ大好き

    業務でソースコードレビューを行う機会が増えたので、複数回指摘した項目や気になった実装などをまとめてみました。 こういう観点をできる人と共有できるといいなあ…。 2014/09/29 23:00 一部修正しました。 業務上ソースコードレビューの名目で仕様・デザインまで見ることになっていたためこれらを先頭に書いていましたが、わかりづらかったため最後にまとめました。 Fragment関連 FragmentとActivityの密結合 Fragmentが特定のActivityから呼ばれることを想定して書かれている場合、そのFragmentとActivityは密結合である場合が多いです。 具体的には、以下の様な実装です。 ActivityのViewを参照する Activityのメソッドを直接呼び出す なぜダメか Fragmentの利点のひとつは優れた再利用性にあります。 Fragmentが特定のAct

    Androidソースコードレビューで指摘する事が多い項目まとめ - こやまカニ大好き
  • ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習

    最近、あまりプログラミングが得意でない人のサポートをする形で、長い時間にわたってペアプログラミングを行っている。そのなかで、気がついた悪い習慣と成長するための良い習慣というものをまとめてみる。 この記事のバックグラウンドとなる体系的知識がになりました。 エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング あわせて読みたい 経営者マインドが足りない!vs. 現場に任せてくれない!の対立をなくすカードゲームをつくった話 新人プログラマに知ってもらいたいメソッドを読みやすく維持するいくつかの原則 新人プログラマに知っておいてもらいたい人類がオブジェクト指向を手に入れるまでの軌跡 ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習 あきらめるにはまだ早い!ソースコードの品質向上に効果的なアプローチ 心理的安全性ガイドライン(あるいは権威勾配に関する一

    ペアプログラミングして気がついた新人プログラマの成長を阻害する悪習
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2014/05/26
    問題の根本はいろいろありそう。
  • プログラマになるにはどうすればいいですか? | ヤマヤタケシのブログ

    こんにちは。プログラムをはじめて25年経ったヤマヤタケシです。 ニコ生やってると「プログラマになるにはどうすればいいですか?」と、ちょくちょく聞かれます。 資格はいらないので、自称でOKじゃー! 俺が犯罪を犯したら、山屋健(34)プログラマー(自称)とでも報道してくれたまえ! 当に自称でいいのですが、質問した人はきっと「職業として、仕事として、収入の糧としての職業プログラマにどうすればなれるのか?」が聞きたいのでしょう。 アドバイスいたします! 職業人としてのプログラマは基的に普通のサラリーマンに求められる事と同じです。 無遅刻、無欠勤、サービス残業、報告、連絡、相談です。 プログラマとして付け加えるのは、仕様書を見てそれをプログラム言語で書いて問題なくコンピュータで実行させるスキルです。 それができたら派遣会社に登録してください。 どっかの現場に突っ込んでくれることでしょう。 これで

  • プログラムに証明が付く日 | RANDMAX

    この記事は「Theorem Prover Advent Calendar 2013」6日目の記事です。 http://qiita.com/advent-calendar/2013/theorem_prover 神田「野らぼー」にて、地下の薄暗い店内で… 「そう言えばこないだ隣で起こってたポインタオーバーラン、対応大変そうだったですけどちゃんと家に帰れてたんでしょうかね、新婚なのに…」 「ヌルポとかポインタオーバーランとか、どうして無くならないんだろうね。その時はみんな手を抜いてるつもりなんて毛頭なくて、一生懸命考えて大丈夫だと思ってるはずなんだけどね。レビューもして、それでも起こった後でみんなでソース見てみると、なんで気づかなかったんだよ!ってことになる。」 「人間って、そういうの苦手なんでしょうねきっと。ほら、『何かほかにありませんか』って聞かれても出てこないじゃないですか。静的な解析っ

    プログラムに証明が付く日 | RANDMAX
  • プログラマは職人、力なければ淘汰されて然るべき―ソニックガーデン倉貫氏が問う、プログラマの覚悟。 | CAREER HACK

    ▼ソニックガーデン代表倉貫氏へのインタビュー第1弾 “納品のない受託開発”とは何か?―ソニックガーデン代表 倉貫義人氏が全貌を語り尽くす。 プログラマを続けられる人、続けられない人。 「納品のない受託開発」というビジネスを確立したソニックガーデン。代表である倉貫氏は、「従来の受託開発は誰も幸せにできないモデル」と切り捨てる。倉貫氏の考える、新しいエンジニアの働き方とは何なのか。プログラマを一生の仕事にするために、必要な環境や能力とは。 人月商売は、エンジニアを馬鹿にしている。 ― 従来の受託開発モデルは、顧客・ベンダー・エンドユーザーから満足を得られていないというお話でした。では開発を手掛ける当の人、エンジニアにとってはどうなんでしょうか。 働いているエンジニアからみても問題があります。人月商売になっているのに、能力が高かったら開発が早く終わってしまう。短期間で済むということは、売上が下

    プログラマは職人、力なければ淘汰されて然るべき―ソニックガーデン倉貫氏が問う、プログラマの覚悟。 | CAREER HACK
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2013/09/10
    壺が気に入らないから割るのはリファクタリングに通じるところがある…!
  • プログラマを一生の仕事にできるビジネスモデルで目指す未来のビジョン(SIビジネスの本質編)

    SIビジネスの質は保険屋であり、受託開発でアジャイル開発が失敗するのは受託開発が製造業だから。11月19日に行われた楽天テクノロジーカンファレンスでの講演「プログラマを一生の仕事にできるビジネスモデルで目指す未来のビジョン」では、ソニックガーデン代表取締役社 倉貫義人氏によるこのような示唆に富む内容が語られました。 さらに倉貫氏は、ソニックガーデンで行っているクラウド時代の受託開発の新しいモデルについても詳しく紹介しています。 同氏の講演の内容を、配信されたUstreamの動画を基にして紹介しましょう。 プログラマを一生に仕事にできるビジネスモデルで目指す未来のビジョン ソニックガーデン代表取締役社長 倉貫義人氏。 倉貫です。今回のオファーをいただいたときに「技術者の人が元気になるような話をしてほしい」というのがあって、私自身がずっとエンジニア、プログラマやマネージャ、営業などいろいろや

    プログラマを一生の仕事にできるビジネスモデルで目指す未来のビジョン(SIビジネスの本質編)
  • X-BASIC for iOS 概要

    X-BASIC for iOSは、1980年から90年代前半に一世を風靡したSHARPのX68000 に付属したBASIC言語「X-BASIC」(以下X-BASIC/68)およびその互換高速BASIC「ぺけ-BASIC」を iOS上に再現、拡張した物です。 C言語に似た文法の単純な構造化BASICで、容易に習得可能です。 エディターから実行環境までを内蔵しているので、プログラム開発に複雑な手順が不要です。 ですので、iOS上でちょっとしたプログラムを組みたい時、基的なプログラミングの勉強をしたい時 などに使えます。XcodeのようにiOSを駆使したプログラムは作れませんが、その分 はるかに簡単にプログラムを作れます。 X-BASIC/68のプログラムも、スプライトなど一部依存のステートメントや関数、 およびコマンドを除き、多くのプログラムを少しの改変で動かすことが出来るはずです。 (上位

    FunnyBunnyDizzy
    FunnyBunnyDizzy 2013/05/14
    iOS端末上でちょっとしたBASICがかけて、動かせるアプリ。2013/5/14現在、app storeで250円 https://itunes.apple.com/jp/app/x-basic-for-ios/id578147696?mt=8
  • プログラミングはそれ自体が目的であっていい - mizchi log

    これ読んで思ったこと。 プログラミングを勉強したい人が勉強する前にすべきこと - もとまか日記 http://d.hatena.ne.jp/moto_maka/20130512/1368308092 僕がプログラミングをはじめたとき、何を思ってプログラミングをはじめたか思い出してみようとしたけど、よく思い出せなかった。 ただ漠然と感じていたのは、プログラミングは個人が現実的にこの世界に直接手を加えることができる手段の1つであり、それをやらないのは勿体無い、といったことだったと思う。たぶん。 というわけで、最初にやったのはFirefoxのユーザースクリプトを書くことだったし、それはそれでよい経験だった。なんとなくゲームとかウェブアプリとか作りてーなー、と思って色んなライブラリを動かすだけ動かして満足した。プログラミング覚えて初めて最初の一年で10以上の言語のHelloWorldだけやったと思

    プログラミングはそれ自体が目的であっていい - mizchi log
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2013/05/13
    動けばいいコードだけをひたすら書いてベロシティが見かけ上高く見える人たちが出世していくのをよく見る。止める方向にバイアスがかからないので、当然のように破綻するのもよく見る。
  • 中級者向け iOS デバッグ Tips - jarinosuke blog

    導入 iOS 開発者のみなさん、こんにちは。 このブログでは主にチュートリアルだったりフレームワークの紹介みたいなことを書いてきました。 そこで、たまには中級者向けのエントリを書いて「Xcode バリバリ使って、ビシバシ Objective-C 書いてますよ」アピールします。 iOS 開発をはじめて一通り Framework は理解したけど Xcode 使いこなせてる感が足りない方、夢にまで EXC_BAD_ACCESS が出てくる方に参考になる記事となればと思います。 といっても Xcode はマッシブな IDE なので、4つのデバッグツールに分けて「あれ、それ知らなかった!便利じゃん!」な方法を紹介します。 ブレークポイント デバッグには切っても切れない関係ですね。アプリを実行中に指定した行で処理を中断し、そこからステップ実行で細かいデバッグを可能にしてくれます。 ショートカットキー

    中級者向け iOS デバッグ Tips - jarinosuke blog
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2013/01/25
    ありがたいまとめ
  • プログラミングとデザインを続けている理由 - つきあたりを右に

    最近になって、ひとつ気付いた事がある。 僕は仕事としてプログラミングやデザインをするのに向いていない。 一応、職業としてはソフトウェア・エンジニアという肩書きを持っており、 UIUX を専門とする研究職という立場にはなっている。 プロジェクトの進行や状況に応じてプログラマー役、デザイナー役、ビジネスプランナー役をバタバタと切り替えているので、最近は「必要に応じてなんでもやってる感あるので、あんまり自分を専門家的に思えなくなってきたっていうかタダの小間使いでは」としか思えないのではあるが。 ”何か”を作りたい、成し遂げたいと思ってものづくりに取り組んでいない 他のプログラマーエンジニアやデザイナーが、実際どうなのかは知らないけれど自身がプログラミングを独学で始めた時によく言われた事が 「何かやりたいこととか、作りたいものが無いのに覚えたり学ぼうとしても、効果は低く、あまり意味が無い」

    プログラミングとデザインを続けている理由 - つきあたりを右に
  • 「大企業に身を置くことが、致命的なリスクになる」ーnanapiけんすうに訊く![2] | キャリアハック(CAREER HACK)

    「プログラミングをビジネスの手段だと捉えるエンジニア」こそ優秀だと定義するけんすう氏。その代表格としてCrocosのCTO Sotarok氏を挙げ、「いまの時代、最も投資すべきは自らのスキル」と語る。近い将来、技術の価値は下がる。その時カギになるのは、自分の仕事の幅をどこまで広げられるかー。 「優秀なエンジニアの定義とは?」ー nanapi けんすうに訊く![1] から読む 「チャレンジの数」と「優秀さ」は、比例する。 ― 「優秀なエンジニア」と言われて、パッと頭に浮かぶ方っていますか? 他社でいうと、Crocos の Sotarok(株式会社クロコス CTO 柄沢聡太郎 氏)はずば抜けて優秀ですね。 以前ブログにも書いたんですけど、もともと僕のサイトを彼がハックしてきたのがきっかけで友達になったんです。その後 GREE に入社して、Crocos を立ち上げて1年半で Yahoo! JAP

    「大企業に身を置くことが、致命的なリスクになる」ーnanapiけんすうに訊く![2] | キャリアハック(CAREER HACK)
  • ペアプログラミング ホントのところ

    「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、当のインサイトを見つけるUXデザインUXリサーチYoshiki Hayama

    ペアプログラミング ホントのところ
  • 新人プログラマーに読ませて欲しいネーミングの大切さ - プログラマー幸福論

    Photo from Kıvanç Niş ネーミングについてまじめに長文を書いてみました。もし、あなたの会社にネーミングに疎い新人プログラマーがいたら読ませてやってください。 ちなみに、この記事はシステム開発のネーミングについて書いています。また、このブログの特性上、英語でのネーミングを想定していますが、日語のネーミングでも同様に考えることができると思います。 1. ネーミングの重要性 一般に、熟練のプログラマーほど、プログラミングにおける ネーミングに時間をかけます。それはなぜでしょうか。 あなたが付けたその変数名 data は、その時点では、自分のために付けた「目印的なもの」であったかもしれません。しかし、そのソースコードを引き継いだ担当者など多くの人が、その名前を見ることになります。 // データを取得する var data = getData(1); そしてその名前は、そのソー

    新人プログラマーに読ませて欲しいネーミングの大切さ - プログラマー幸福論
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2012/09/27
    booleanの判断系はできるだけ肯定形だけでネーミングしないと、分岐で頭こんがらがるよね。can,exists,-able,should肯定形とかよく使う。コメントには「"""なぜ"""こうコーディングしたのか」が書いてあると嬉しい。
  • オブジェクト指向できていますか?

    3. 自己紹介 1992年~1997年 某ゲーム会社 プログラマ SFC,GB,PS1,N64のゲーム開発経験 1998年~現在 日工学院八王子専門学校 @mozmoz1972 専任講師 プログラミング教育を中心に担当 twitterもfacebookも実名です。よかったらフォローしてください。

    オブジェクト指向できていますか?
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2012/08/29
    ステートマシンとして複雑度が上がりすぎて破綻するのを避けるために、まずは一つ一つのステートマシンを最小化するところから始めましょうね、という感じ。これに従うと自然にテスト書きやすくなりそう。
  • グーグル製のJavaScript MVCフレームワーク「AngularJS」、正式版が公開 − Publickey

    グーグルは、JavaScriptでMVCアーキテクチャのアプリケーション開発をする際に便利な機能を備えたライブラリ「AngularJS 1.0」のリリースをブログで発表しました。 MVCアーキテクチャとは、ソフトウェアがデータモデル(Model)の部分とユーザーインターフェイスの部分(View)、そしてビューとモデルのあいだで制御する部分(Controller)に分離された構造のことを指します。 これらが分離されているとプログラムの見通しがよくなり変更にも対応しやすく、テストも容易になるため、何種類ものユーザーインターフェイスと複雑なロジックなどから構成される大規模なアプリケーションではMVCアーキテクチャの採用が望ましいものと考えられています。 しかしWebアプリケーションをMVCアーキテクチャで実現しようとすると、ビューの役割を果たすHTMLのコードの中に、どうしても複雑なJavaSc

    グーグル製のJavaScript MVCフレームワーク「AngularJS」、正式版が公開 − Publickey
  • 全プログラマーが知るべきレイテンシー数

    Latency numbers every programmer should know — Gist L1キャッシュ参照 0.5ナノ秒 分岐予測失敗 5ナノ秒 L2キャッシュ参照 7ナノ秒 Mutexのロックとアンロック 25ナノ秒 メインメモリー参照 100ナノ秒 Zippy[Snappy]による1KBの圧縮 3,000ナノ秒 1Gbpsネットワーク越しに2KBを送信 20,000ナノ秒 メモリーから連続した1MBの領域の読み出し 250,000ナノ秒 同一データセンター内におけるラウンドトリップ 500,000ナノ秒 ディスクシーク 10,000,000ナノ秒 ディスクから連続した1MBの領域の読み出し 20,000,000ナノ秒 パケットを、カリフォルニア→オランダ→カリフォルニアと送る 150,000,000ナノ秒 Jeff Dean著(http://research.googl

    FunnyBunnyDizzy
    FunnyBunnyDizzy 2012/06/01
    HDDとSSDで読み/書きそれぞれの速度なんかも知りたい
  • code

    CODE < ^ > << new | old >> / 2023-03-27

  • アマゾンにおけるソフトウェア開発の仕事について感じたこと - 達人プログラマーを目指して

    ちょうど、先日アマゾンのオープンハウスというイベントでお話をさせていただく機会があったのですが、開発者向けの20日のセクションだけで90名近くの方々にご参加いただきました。平日にもかかわらず、多数の方々にご参加いただき、どうもありがとうございました。 私自身は、昨年秋にSIerからアマゾンに転職してまだ半年ですが、この機会にアマゾンにおけるソフトウェア開発の文化や考え方について、ブログでご紹介できる範囲でまとめてみたいと思います。 私は、ずっとブログに書いてきたようにSI業界からの転職だったのですが、一般的なSIerにおけるソフトウェア開発の考え方や手法といろいろな面で違っているということは予想していたというか、もともと覚悟の上での転職でした。それでもやはり最初のうちはあまりにも大きな変化に自分の仕事のスタイルを合わせるのにいろいろと苦労しました。基的には転職したての頃に抱いた感想(転職

    アマゾンにおけるソフトウェア開発の仕事について感じたこと - 達人プログラマーを目指して
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2012/04/23
    Scrumでデスマで死にそうになってる、って話まだ聞いたことないな
  • Meteor.js - naoyaのはてなダイアリー

    http://www.meteor.com/ で公開された Meteor.js を少し触ってみました。TechCrunch なんかでも話題になっていましたね。 Meteor.js は JavaScript によるウェブアプリケーションフレームワークですが、クライアントサイドでもサーバーサイドでもない、"Isomorphic" なフレームワークです。 コンセプトとしていくつか特徴があるのですが、その最たるものは "Reactive Programming" で、モデルやセッションなどのストレージを更新するとその更新内容がリアルタイムに、そのアプリケーションを開いている全クライアントに伝わるようなアプリケーションを簡単に作ることができます。 この辺は実例を見るのが早いです。 http://www.meteor.com/examples/leaderboard ここにある動画では、あるブラウザで

    Meteor.js - naoyaのはてなダイアリー
    FunnyBunnyDizzy
    FunnyBunnyDizzy 2012/04/23
    あとで調べる知らなかった単語Isomorphic、publish/subscribe、MongoDB、LESS、asset pipline、pjax、npm、Reactive Programming