セカイノカタチ

世界のカタチを探求するブログ。関数型言語に興味があり、HaskellやScalaを勉強中。最近はカメラの話題も多め

マーブルワーズ

システム開発

Oracle JDK 11のリリースと有償化について

さて、以前から有償サポートのみとなったことが話題になっている、Oracle JDK ですが、初のLTS(長期間サポート)となる、JDK 11 がリリースされました。 JDK 11 Release Notes, Important Changes, and Information 有償サポートになったからといって、お金を…

Javaランタイム(JRE)のサポートと互換性について

qtamaki.hatenablog.com 先日、Oracle Javaの今後のサポートについて考察したのですが、1点漏れていた議論がありました。 Javaのランタイムエディション(JRE)のサポートについてです。 結論から言うと、JREは強い後方互換を保ってアップデートされるため、「…

ScalaのFutureに渡す ExecutionContext の挙動がわかりにくいので図解する

Scalaには、非同期実行をサポートするために Future というクラスがあります。 正確にはJavaにも同名の仕組みがあるのですが、それをちょっと便利にした感じのものです。 Futureの仕組みを簡単に言うと、関数を渡すと別のThreadでその関数を実行してくれるも…

テストしようよ

先日、息子と遊んでいると私達が「作品入れ」と呼んでいるファイルを持ってきて、私にこう言った。 「ここのぶぶんにはいる紙がないんだよねー」 そこで私は、部屋に戻ってA4サイズのコピー用紙を持ってきて提案してみた。 「これなら入るんじゃない?」 す…

システム開発時のネーミングついて

※ 筆者の特性上、話題の対象が業務システム開発に偏っていることを予めご承知おき下さい システムのネーミングですが、困りますよね。 長年業務システム開発で、DB設計などに携わった身として、少しだけコツをお話したいと思います。 前提 まず、前提として…

システム開発の見積もりは、覚悟と覚悟のぶつかり合いだ

システム開発の見積もりには、色々な手法があります。 ファンクションポイントとかCOCOMO法とか。 これらはなるべく見積もりの根拠を確かにし、実際の工数とのブレがなくなるようにするために考え出された方法です。 しかし、いくら根拠を以って正確に見積も…

システムの発注者は自分に必要なシステムを自分で知らない

システム開発系のエントリーでちょいちょい言及していますが、自分が欲しいと思うものが、本当に必要だったものとは限らないと言う話です。 もうちょっと、強く言うと、コンピュータによるシステムは、「作ってみて」「改良」しないと、本当に必要なものを知…

ウォーターフォールが成功する可能性

agnozingdays.hatenablog.com すっかり、書くのを忘れていたのですが、ウォーターフォールプロジェクトでも成功することがあります。 それどころか、エンタープライズ系システム開発プロジェクトの成功率は、24~28%ぐらいだったはずなので、100本プロジェク…

日本がウォーターフォールを脱却できないのは予算取りのせい

simplearchitect.hatenablog.com なんか、SIっぽい話題が多いですね。 アジャイルの時にも書きましたが、日本でユーザー企業が、SI案件を発注するまでの間には、「予算取り」という工程が欠かせません。 元記事では、主に開発者サイドにフォーカスしてウォー…

絵に描いたようなSI炎上案件を見たので過去の経験から勝手に解説する

www.tsubakimoto-neko.com 絵に描いたようなSI炎上案件ですね。 僕も長らくシステム開発業界に漬かっていますので、身につまされる思いです。 自分の拙い経験から、行間からあふれる業界の闇を勝手に解説したいと思います。 営業主導で案件が決まる 30%OFFの…

アジャイルは死んだのか?

www.infoq.com 死んだというか、死んでないと思いますけど、よく耳にするのはこんな感じでしょうか。 パターン1 元々向いてない分野に無理やり導入しようとした パターン2 聞きかじった程度の上司が始めてドキュメントを無くしただけで後は何も変わらず状況…

日本のSIerはいつまで親の脛をかじり続ける気なのか

かつての技術大国日本 かつて、日本は技術立国と言われ、機械電気電子産業において、世界に名だたる企業を幾つも輩出し、それこそ日の出の勢いで世界を席巻した。 これらの産業が好調だった頃、日本におけるシステム開発とは、それらの巨大な利益を挙げる企…

「納品」をなくしてもうまくいかない(読書感想文『「納品」をなくせばうまくいく』)

「納品」をなくせばうまくいく ソフトウェア業界の“常識"を変えるビジネスモデル作者: 倉貫義人出版社/メーカー: 日本実業出版社発売日: 2014/06/12メディア: 単行本(ソフトカバー)この商品を含むブログ (6件) を見る たまに発生する読書感想文です。 今回…

試したことのないプログラムは絶対に動かない

今更言うまでもないかもしれませんが、動くことを確認したことのないプログラムやシステムは絶対に動かないと思って間違いありません。 よく、「本番にあげたら動かない」とか言う事象が発生しますが、当たり前です。試してないのですから。 なので、本番環…

夢の構造についての考察

そもそも、夢とは何でしょうか? 夢をかなえるとはどういうことなのでしょうか? そして、どうやったら夢はかなうのでしょうか? 誰もが知っている言葉ですが、いざ厳密に定義しようとすると難しいものです。 ぱっと思い浮かぶのが「サッカー選手になりたい…

「都会脱出型ハッカソンVol.01 SHONAI de HACK in 山形県酒田市(庄内地方)」を終えて

先週末は、ハッカソンのため山形県は酒田市まで行ってきました。 syonai.doorkeeper.jp きっかけはStartup Weekend Yamagata きっかけは、9月に参加したStartup Weekend Yamagata(以下SWY)で、「ふるさと開発合宿」をテーマに、庄内地方で開発合宿をすること…

「第2期 第23回 H本読書会 in 秋葉原」を終えて #readhbon #haskell

第2期第23回H本読書会を開催しました。 第13章「モナドがいっぱい」の最後の部分と第14章「もうちょっとだけモナド」を読みました。 H本読書会とは? すごいHaskellたのしく学ぼう!作者: Miran Lipovaca出版社/メーカー: オーム社発売日: 2012/09/21メディ…

都会脱出型ハッカソンというイベントを開催してみることに

日頃、ごみごみした都会でプログラミングをしていると煮詰まってくることが多いですよね? 縁あって、山形県は酒田市の施設を安く借りることが出来そうなので、「都会脱出型ハッカソン」と銘打って、田舎の広々とした所でコードを書くイベントを開催してみる…

純粋な関数がツリーをなすということ

プログラミングにおけるコミュニケーションパスの問題 - セカイノカタチqtamaki.hatenablog.com 先日、この記事で「参照透明性のある関数を組み合わせてプログラミングすると、出来上がったプログラムは、きれいなツリー構造になります」と書いたのですが、…

プログラミングにおけるコミュニケーションパスの問題

組織におけるコミュニケーションパスの問題 - セカイノカタチqtamaki.hatenablog.com 先日、組織やプロジェクトの運営におけるコミニュケーションパスの問題について書きました。 同じような問題が、プログラミングにおいても言えます*1。 プログラムにおけ…

プログラミング言語の難しさはより遠くに飛ぶための翼である

複雑さについて思うこと。rentwi.textfile.org この記事に触発されました。 というか、丁度この事について考えていてブログを書こうかと思っていたところでした。(^^;マジデ ソフトウェア開発とは、現実世界の複雑さをプログラムコードの難しさに置き換える作…

組織におけるコミュニケーションパスの問題

人が何人か集まってプロジェクトを行う場合、どのような組織を組み、レポートラインをどのようにするかというのは非常に重要な問題です。 常時炎上しているような組織やプロジェクトは、コミュニケーション戦略に問題があったり、そもそも戦略そのものがない…

CURDは死んだのか。と、論理削除

Re: 論理削除はなぜ「筋が悪い」か - Blog by Sadayuki Furuhashi 論理削除の話が盛り上がっているので考えて見ようと思った。 まず、自分の立場では、論理削除賛成で追記型のimmutable DBは懐疑的。 ドキュメントDBとかオブジェクトDBとかはよくわからない…

山の民のウォーターフォール理論

ブックマークにコメントしたらスターがついてるので蒸し返してみる。 ソフトウェア開発における海の民と山の民 - セカイノカタチ ソフトウェア開発における海の民と山の民 - セカイノカタチ ソフトウェア開発における「山の民」とは、SIerと、そこからそびえ…

PDF出力ライブラリlibHaruを使う

PDF出力ライブラリとしてlibharuを使ってみることに。 libharuのgithub その他の選択肢 iTextSharp -> AGPLなので却下 PDFSharp -> 日本語フォントが使えない(調査し、解決しそうだったがC#での開発が却下になってしまったのでお蔵入り) 開発プロダクトがC#…

ソフトウェア開発における海の民と山の民

ソフトウェアを行っている会社は世に数多ありますが、これらの会社はその出自により「海の民」と「山の民」に分けられると思っています。 山の民 山の民は、先祖をたどると恐らくIBMに行き着きます*1。彼らは、スーツを着てプログラムを書くことで知られてお…

Ansible Best Practices構成を作ってくれるPlaybook作ってみた

練習がてら、適当にBest Practices ― Ansible Documentationのディレクトリ構成を作ってくれるPlaybookを作った。https://github.com/qtamaki/ansible-best-practices使い方は、簡単。git cloneして、init_dirs.shにプロジェクトのディレクトリを渡すだけ。 …

「価値創造契約」と企業のシステム開発を覆う暗黒ロジック

永和さんの「価値創造契約」が大苦戦を強いられている件この件ですが。新しい契約形態での受託開発サービス「価値創造契約」 | 永和システムマネジメント最初に、このニュースを見た時には、「これは凄いことだ」と思いました。こんな事がうまくいくのであ…

ソフトウェア開発とは、現実世界の複雑さをプログラムコードの難しさに置き換える作業だ

こんな記事に触発されて。富士通、業務プログラム開発支援ツール「Interdevelop Designer」を販売開始:ITpro Active・・・未だにこんな事やってるのか。正直、驚きと失望と倦怠感と怒りと哀れみと嘲笑がないまぜに押し寄せて、(・_・)こんな顔になりました。S…