Programming

LastaFlute が 1.0.0 になりました

(LastaFlute/DBFluteユーザー向け) 今日はDBFluteの11歳の誕生日です(^^。 11年経ったら、DIコンテナ、Webフレームワークも 付いてきちゃった。。。 => (昨年のブログ)DBFluteは10歳になりました ... LastaFlute-1.0.0 Released sugayaさんの「フォーク話」…

意外と忘れがちな優秀なプログラマーになるための10のコツ

月並みなものは、ここでは話題にしません。よく「忘れがち」なものにフォーカスします。 コツ1. 土日という概念を捨てる 土日は、土日ではなく、たまたま仕事に拘束されない平日です。自分を高めるトレーニングに時間を使えます。とはいえ、普段の生活もあり…

別にパソコンがなくてもプログラミングはできるよ

書く時間と考える時間 o 仕事を早く終わりにして帰りたい o スキルアップのためにプログラミングたくさんやりたい o オープンソース活動のための時間を確保したいこういう感じの様々な悩みがあるかと思いますが、 ズバリ!書く時間と考える時間を分離するを…

フレームワーク選定という寂しい工程と一つの希望

まあ、日記です。 メニューだけ見たことある フレームワークの選定というのが、いつの時代も浅いロジックで終わるのは、「ある意味では仕方のないこと」だと言えるのかも知れないと思うようになりました。「多くのフレームワークに長けた人」なんてほとんど…

レスポンスのある人は信頼される

信頼される人ってこういう人だな! って思ったのです。 10年以上前の昔話ですが... 若いjfluteは、出向でとあるベンチャーにいました。社員が10人くらいしかいなくて、社長は超やり手、小さな会社なのに世界的な会社をクライアントに持ち、その発言力もすご…

プログラマー、議論が進まない四天王

プログラマー (ITエンジニア) ならでは!? かもしれない特徴的なものを四つご紹介。 「姿勢」二つ、「落とし穴」二つに分けています。 o 姿勢1: 提案のない不満と愚痴 o 姿勢2: 論理性のない納得がいかない o 落とし穴1: 分析のないパズルゲーム o 落とし穴2:…

良かったことを続けるために、良かったことを見失わないこと

KPTのKEEP よく、振り返りの手法として、KPTをオススメしています。単純なフレームワークですが、単純なロスをしないために。「単純なロス?」今までできてたことが、気づいたらできなくなっちゃう「そんなことある?」あります。個人の技能も、組織の特性も…

所詮、できる人はできる人と一緒に仕事したい

ちょっとぶっちゃけた話ですが、チームビルディング、採用ブランディング、個人の幸せにとって重要な話だと思って。 辞める人にネガティヴがないわけない 会社を辞める人はたくさんいますし、そこら中でしょっちゅうあります。いまの時代わりと普通のことで…

仲の良いチームじゃないと成り立たない技術がある

タイトルに迷いました。 技術?技術課題?問題解決?技術方式?少し広い意味に捉えてください。jfluteの10年以上の、様々な現場での経験を元にしています。昔も今も全部振り返ってみました。 かぶストーリー かぶを収穫します! resort「かぶを収穫しますよ…

例外メッセージ、敬語で満足でもロスロスパターン

わりとシンプルな話ですが、 10年以上この現象が止まらないので、書きました。 値をロスした例外メッセージ とにかくこれ: String sea = ... Integer land = ... Object miyage = piariLogic.moveToBonvo(sea, land); if (miyage == null) { throw new Dstor…

問題分析と問題解決を分けることがハマらない第一歩

焦りストーリー 焦りマクラー「Sが動かない!(or Sを実現したい)」 jflute「ふむ、したらそれってもともとは...(質問しようと)」焦りマクラー「Aで動きますかね?(質問を遮る)」 jflute「いやぁ今のところそう言い切れないような」 jflute (ふむ、例外見ると…

サービス開発者は、それ必要?いつ必要?スキルが求められる

サービス開発でのアンチパターン ビジネスサイド「D という機能が欲しいです」 エンジニア「じゃあ実装します」(その後...)通りすがり「なんで D を実装してるの?」 エンジニア「"ビジネスサイドさん" が欲しいって言ったから」通りすがり「なんで D をいま…

別に、プルリクレビューの前にレビューしてもらっていいんだからね

レールに乗るとレールに乗らない? 昨今身の回りだと、すっかり Github のプルリクベースの開発で、「プルリク出して Github 上でみんなでレビュー」そんなやり方が当たり前になってきました。レビュー制度自体が崩壊しがちな開発現場で、このレールに乗った…

コードにコメント書くのにDBにコメント書かないの?

Why? ※主にサービス開発におけるDB設計を想定しています。「JavaDoc書きましょう」 「コード上にコメントを書きましょう」 これは、よく言われるし、わりとプログラマーにはだいぶ浸透していることだと思います。もちろん、「どんなコメントを書くのか?の精…

プログラマーに求められるデザイン脳

「デザイン」じゃなくて「デザイン脳」です。いわゆる「Webデザインもできなきゃね」という話ではなく、普段のプログラミングの中でも、Webデザインと同じような脳みそを使うことがあるというお話。プログラマー (エンジニア) は、一般的な先入観として「計…

質問のコツその一: なんでその質問してるのか?も伝えよう

はさみストーリー 後輩「はさみ、どこかわかります?」 先輩「えっ、はさみ? えーっと、誰も使ってなければあっちの棚の上かな」 後輩「ありがとうございます、さすが先輩!」 先輩「...」次の日...先輩「そいえば、はさみあった?」 後輩「えっと、まだい…

任せられるディベロッパー、七つの姿勢

任せられるって? o その一: 自分の道具は使いこなす o その二: 三割でも仕組みに突っ込む o その三: 三割でもビジネスに突っ込む o その四: 全体を把握しようとする o その五: ベストタイミングほうれん草 o その六: 隣の人を助ける o その七: 答えやすい質…

ドキュメントを無料(タダ)だと思っている?

Closed有償ツール v.s. オープンソース(OSS) 「オープンソースはドキュメントがなくて使いづらい」まあ、ドキュメントないと使いづらいのは事実でしょう。「オープンソースはドキュメントがないから使い物にならない」その意見には賛成できないな。ソースコ…

技術的負債の返済プロジェクトが失敗する 11 のワケ

ワケ一覧 序の口: フレームワークだけが負債だと思ってる 序二段: ビジネスサイドに理解してもらう努力がない 三段目: 技術で遊び過ぎてしまう 幕下: 太り過ぎアーキテクチャ 十両: 過去に目もくれず、現状だって見ない 前頭: 技術に詳しいだけでアーキテク…

未来しか見ない人は過去に戻りたい?

両方だいじなんです おそらく人類が何千年としてきた議論だと思います。「歴史を学ぶことで未来を予測しやすくし、同じ失敗を繰り返さないようにする」「昔のことなんかどうでもよくて、未来が大事だから先のことを考えよう」NHKの「ニッポンのジレンマ」で…

フレームワークの経験で採用して空振り三振

エンジニアの採用ジレンマ エンジニアの採用というのは難しいものです。エンジニアがエンジニアを採用するのも難しく、エンジニアじゃない人がエンジニアを採用するのはさらに難しいと考える人もいるでしょう。そこで頼られるのが、エンジニアの特定の技術に…

フレームワーク選び、現場フィットレイヤを忘れずに

忘れてると... 既存のシステムがあるとします。だいぶコードもぐちゃぐちゃしてきて、今のビジネス要求に耐えられない。フレームワークも刷新したい。偉い人「リプレイスします!(英断)」 現場誰か「さて何を使おう?」 他の誰か「"A" が良いのでは?」 現場…

オープンソースに「実績は?」と聞く虚しさ

実績は世に出てこない 永遠のテーマかもしれません。何かオープンソースのプロダクトを現場に導入しようとしたとき、「えっ、実績は?」という質問が発生することがありますが、実はこれほど虚しいことはありません。システムで何のツール使われているのか?…

Seasarカンファレンス2016 Final

行ってきましたー! 終わったー! Seasarカンファレンス2016 に行ってきました。 そして、しゃべってきました。 自分はずっとメインホールにいたので、 そこでの内容だけで。 (ぶっ通しで裏番組のはぶさん、お疲れ様です(^^) 一時間目、ひがさんより 「Seasa…

jfluteが「Seasarサポート終了どうすればいい?」と聞かれたら...

とにかく聞かれます 今年一年、色々な人から...プログラマー仲間で軽いノリで聞かれることもあれば、出先の現場の技術者やマネージャーの方から相談されることも。程度の差はあれど、jfluteの立場的に聞かれることがとても多いです。今までもTwitterやブログ…

レビューしやすいコード (Reviewable Code)

れびゅーわぶる!? レビューしやすいコードよく、jfluteが現場で掲げるコーディングテーマです。主に、事業会社でのサービス開発における、スタートアップの時期から少し経ってチーム開発し始めた、インクリメンタル開発が続いてきた時に適用します。色々とた…

ルーズなDaoパターンなら見たくない

気にせず突っ込む Daoパターンというもの自体の説明はしません。厳密なDaoパターンの話じゃないかもしれません。ここでは、jfluteが現場でよく見てきた、ルーズなDaoパターンのお話。【追記】いまなら、Repository層って言った方がわかりやすいかな?ただな…

メンテ不能の強者、引数リモコンパターン

Let's read! さあ、いきなり、コードを見てみてください。 public void index() { // what do you select? ... = logic.selectNandemoMember(null, "S", null , false, true, false, CDef.MemberStatus.Formalized , true, false, true, true); } Action, Co…

Lombokの除外設定にDBFluteの自動生成クラスを

コンパイルスピード DBFluteのコンパイルスピード改善プロジェクトを立ち上げています。色々と分析して改善ポイントを見つけて、ほんの少しでも良くなればと。今までもかなり頑張ってスリム化を心がけてきましたが、やっぱりコンパイルが遅い環境での実装っ…

破片プログラマーの悲しみ

はへん 破片プログラマー大きなシステムの改修、 巨大に積み上がったプログラムの上での実装、難度の高い仕事、ただし破片巨大な破片 画面を0から 二年、三年、五年と経験を積み、 開発スキルを身に付けたディベロッパー、だがしかし、 0から画面を作って…