サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Switch 2
yyyank.blogspot.com
リファクタリングと掃除でも比較してみるかぁ、と愚かなことを思いついて書きました。 ブログにしようかなとも考えたのだけど、多分スライドとかの方がわかりやすいかなぁと思ってスライドにした。 https://speakerdeck.com/yyyank/jie-ju-rihuakutaringututehe-nanoka-sao-chu-karaniu-jie-kurihuakutaringu-refactoring-vs-room-cleaning 資料を作ってみて分かったこと 自分は掃除が苦手なので、結構部屋が散らかりがちで 頭の中では分かっているのだけど、みたいなことがよくある。 日常の中で生活できてしまっているから、散らかってるのは分かっているのだけど掃除しないんだよね。という。 これはなんかリファクタリングに似てる気もする。というのが発端だった。 リファクタリングの感度と部屋の綺麗さに
という完全に仮説というか思考実験みたいなものを書いてみます。 ざっくりまとめ ベテランの何気ない情報は世に出にくいという仮設 ベテランは、独自見解など良い感じのもの以外の簡単な技術記事が書けなくなる、書きにくくなる 簡単な記事は経験浅めの人に偏りベテランは簡単な記事を書かない。簡単なものでも書いてくれるベテランは、アウトプット好きに限られる 簡単なものであったとしても世に出してくれれば嬉しいな 前提 経験の浅い人 = 初級者 ベテラン = 中級者以上 とおきかえてもらっても良いかもしれません。 経験の浅い人は簡単なことでも感動できるのでブログを抵抗なく書きやすい 例えば 「Javaのセットアップが出来た!」 「Rubyのセットアップが出来た!」 「このライブラリで良い感じに出来た!」 はじめのうちは一つ一つが嬉しいし一つ一つにハマりがちだったりするので、 感動もありハマりどころもありブ
すでに何人かの人がクリーンアーキテクチャなんてないよ、って話はしていてイマサラだと思うんですが。 あえてブログの記事に残そうかなと思って書いてみます。 最近、改めてクリーンアーキテクチャ本を読んだり、原文を読んだり、 ここ数ヶ月ツイート色々な人のを観測したり社内で話したりしていて 考えがまとまってきたので、自分の言葉で整理してみたくなった。 「へー、クリーンアーキテクチャっていうソフトウェアアーキテクチャがあるんだー」という微妙な誤解?をちょっとでも減らす一助になればという感じです。あと、本の読み進め方のヒントにもなるかも 先に結論 クリーンアーキテクチャというのはアンクルボブの書いた本。 ソフトウェアアーキテクチャのことではない。 the クリーンアーキテクチャというブログ記事はただのソフトウェアアーキテクチャの例(そして本の一部分)だが、独り歩きしている クリーンアーキテクチャというソ
ここ何年かぼんやり考えていることのポエムです。 最近インターネットしてますか? なんか最近(というかここ数年)ネット上で見てた人を見なくなったなーとか、 発信してた人が発信しなくなったなー?みたいなのを思ってる。 より具体的に言うと、2極化したというか。発信し続けてる人は変わらずなんだけど、温度差が激しいというなんというか。 自分の同年代のライフステージが変わったとか職種が変わったとか、オッサンになったとかそういうのもあるのかもしれない。 1つ、仮説として社内では変わらずインターネットしてるんじゃないかという説を持ってる。 社内で情報を蓄積しやすいツールが増えてきている 考えてみると、Slackなどのチャットツール、社内wiki、その他ドキュメンテーションツール、 Google Workspace(旧 G Suite)など社内に情報は蓄積しやすく、コミュニケーションも取りやすくなってきた。
Scala 2.x、Spring Boot、ScalaTest、Gradle構成のアプリケーションでSpring Cloud Contractを使ってテストを書くまでの準備 ScalaとSpring Boot環境にSpring Cloud Contractを導入する話 Scala x Spring BootなプロジェクトにSpring Cloud ContractによるCDCテストを導入しようとしたら、 色々ハマりどころがあったのでブログにまとめておきます。 ハマりポイント1 - ScalaのテストクラスがSpring Cloud Contractの生成するJUnitのテストから参照出来ない ハマりポイント2 - JavaからScalaのコレクションを呼び出す方法が分からない ハマりポイント3 - ScalaTestとJUnitをGradleから両方動かす方法が分からない ハマりポイント4
モチベーション ターミナルからなるべく色んなことやりたい。動きたくない。冬のこたつみたいな感じ。 前提 MacとArchでだいたい似たような環境が作れたので対象OSはそのあたりです。 まえがき 色々情報交換や情報収拾するうちに 少しずつ自分の開発環境が変わってきたので現時点のスナップショットとして書いてみたくなった。 dotfileの延長でしかないため自分の秘伝のタレであり、自己満感が強い。 他人の参考になるかは分からないけど、なれば幸い。 逆にこういう記事書くと教えてもらえたりしないかな(打算) とどのつまり? https://github.com/yyYank/dotfiles あたり。 iceberg tmux zsh zsh-autosuggestions zsh-syntax-highlighting zsh-completions zsh-history-substring-s
個人的なメモの色々(scrapbox、trello、hugo、Googleカレンダー、mattn/memo) 最近いろんなドキュメントというかメモというか。雑文の置き場所を考えている。 trello scrapbox hugo(github.io) Googleカレンダー mattn/memo などに最近は落ち着いてきたかなと思う。 なんでこんな色々つかってんの?っていう自分なりの理由についてのお話です! どこに公開して誰に見せるか見せないか このブログの内容も大体雑多なものなんだけど、 一応このブログに書くならこういう書き方、こういう内容みたいなものが自分にはある。 なので、全て日常なりなんなりをこのブログにだけに書くわけにもいかない。 そういった中「書きたい内容ごとにツールを分ける」必要性を感じてきた。 そこで、今回は何をどういう意図で使っているかを書いてみます。 trello ここ数
さて、Java is still freeなわけですが https://medium.com/@javachampions/java-is-still-free-2-0-0-6b9aa8d6d244 https://www.sakatakoichi.com/entry/javaisstillfree どのJDKをどのバージョンで使うかねぇという話がありますよね。 JDK 8を使い続けるという選択肢もあります。 いろんなベンダーがLTS(long term support)としているJDK 11を使うということも出来ます。 色々考えてみましょう。 ※ JDKも色々種類があったりで迷ったんですが、一旦バージョンを区別するだけのためにJDK 8などと表記しています。(Java SEとかいう言葉を使うかどうかも迷った) ※ 分かってる人は読まないで良い内容を書きます。 ※ 分かってるけどお時間ある
はじめに タイトルの通り、JavaOne報告会に行ってきました。 僕はJJUGのイベントの中でも、毎年恒例のJavaOne報告会は結構好きです。 みんな海外帰りの余韻でちょっと浮かれた気分が抜けてない感じが良いんですよねー。 本当に個人的な話ですねw https://jjug.doorkeeper.jp/events/66256 今後のJavaのアップデートは? ただ、今回に関していえば、JavaOneの余韻を感じたい人々だけでなくて、 今後のJavaのアップデートのスケジュールなどが知りたい人も結構居たような印象を受けました。 まぁ、イベントタイトルも「リリースイベント」となっているので、当然かもしれません。 Javaのリリース体系が結構大きく変わるので公式見解が聞きたかったんだろうなと予想しています。 当日の内容 ほぼ動画で見れます。ありがたや。 会場で聞いて、家に帰って復習しました。
最近ブログを書いてないなと思い、慌てて書く次第です。 先日、2017/9/21に、Java SE 9とJava EE 8がリリースされたようです。 http://www.publickey1.jp/blog/17/java_ee_8java_9eclipse_foundationjava_ee.html こんなにリリースって盛り上がらなかったっけw 僕の狭い観測範囲あまりワイワイしてる人が少ないです。 せっかくだしちょっとだけ触ってみようと思います。 ホントちょっとだけ。 Java EEは一旦忘れて、Java SEの方のみ。 導入 オラクルのサイトから普通にダウンロード出来るようになっています。 http://www.oracle.com/technetwork/java/javase/downloads/index.html その後のうんぬんは割愛しますが、これを機にjenvを使ってみま
Kotlin入門までの助走読本というfree bookを 僕も参加させてもらって、ちょっと書きました。 楽しかったなぁー。皆さんありがとうございました。 豪華執筆陣による「Kotlin入門までの助走読本」をリリースします! 話題のプログラミング言語の「味見」をぜひ!PDF注意https://t.co/LJJDReAzue — 日本Kotlinユーザグループ (@kotlin_jp) 2017年5月29日 ぜひ読んだ方はアンケートも書いてみて下さい。ありがたく拝見します。 https://t.co/uaFHHfiLuh あくまで個人的な感想&意見という感じですが、裏話としてブログを書いてみます。 いきさつ 5/19日の朝、Kotlin + Androidの超入門本を作るって感じで呼びかけがあってそこから始まりました! リリースが5/29だったので、大体招集から10日ぐらいで出来上がったのです
何も考えずタイトルつけたのに胡散臭い。 どうも、趣味でKotlinの情報を集めてるだけの人です。 KotlinはAndroidで公式採用されることが決まりまして特需が出てきています。 こぞって企業がPRのために「Kotlin使ってますアピール」をしたり、 Kotlinとはなんぞや、みたいな話を書いたりとかしてますので、 この速さなら言える、ということで僕も便乗して久しぶりにKotlinの話を書こうと思います。 前提 プログラミング言語は簡単で、それを難しく語る人や難しく使う人がいるというだけな気がしています。 つまり何が言いたいかというとKotlinは簡単です。あと、ラクです。 僕が今日書こうとしているのはよく分からないボヤキなので単純に学びたいというだけであれば、 Kotlin KoansとKotlinの公式サイトのリファレンスだけ見れば大体充分です。 他の情報はまぁ、あんまり読んでも読
Kotlinにstaticが無いのなんで?(Why doesn't Kotlin have static members inside a class?) って前に聞かれたけど、スッと答えられなかったのでここに記します。 ※このあたり(https://speakerdeck.com/ntaro/kotlinwoshi-meyouhanzuon-number-droidkaigi-number-droidkaigi6?slide=41) とりあえずstaticを使いたければ 「objectかcompanion objectを使いましょう」が、対応としては合ってます。 companion object { @JvmField val CREATOR: Parcelable.Creator<Repository> = object : Parcelable.Creator<Repository>
良い本なので感想とか僕の考えてることを書こうと思います! 「わかる! ドメイン駆動設計~もちこちゃんの大冒険~」というTechBoosterさんが出している本です。 DDDだからページ数多いんだろうなというイメージだったんですが、60ページ。しかも1000円は安い。 買ってハズレでもちょっと1日御飯を控えめにするだけでなんとかなる(大体控えめにすることはない)。と思いPDF版を買いました。 こちらから買えますよ!まわしものじゃないけどw https://techbooster.booth.pm/items/392260 読むきっかけ 知ったかぶりの限界 最近、僕の周りでもDDDについて見聞きすることが増えました。 あー、うんうん、アレなアレ。と知ったかぶってすごすのも若干辛さが出てきたし、 何か知っておきたいなぁとなってきました。 でもDDDの有名な2冊(実践ドメイン駆動設計、エリック・エ
はじめに これはシステムエンジニア Advent Calendar 2016の22日目の記事です。 色んなプロジェクトでのテスト体験や自分で学んだことをもとに、ポエムを書きます。 言いたいこと 普通にテストをこなそう 面倒だと感じたら、テストの設計か作業プロセスに問題があるから見直そう テストでは検証したいことを決めて、それに集中しよう ソフトウェアテストについての知識はざっと知っておこう 前提 本来はSIの現場で考えた場合、 UAT(受け入れテスト)やST(システムテスト)などにも言及すべきかもしれませんが、 あくまで僕個人という開発者目線なのでUT、ITが中心の内容になっています。 なんで作業が捗らないんだろう? Javaを用いた金融系の業務システムをつくっているある日でした。 自分の作業がなんか思ったように進まないなぁということに気づきました。 「何に時間を使っているんだろう?」 な
なんとなく書いてみた。というか書いてみると作業方針ぽくなったし、チケットの捌き方みたいになった。 IDEを駆使して自分の作業をoptimizeする ショートカットキーとコード補完などは覚える。 操作を行う頻度の多いもの、処理に時間がかかっているものを最適化するのが目的。 IDE自体の処理スピードがネックになる場合はチューニングすること。 タイピングからのレスポンシビリティが下がる、 ビルド・デプロイにコードベースの量から想定される以上に時間がかかる。 などと行った場合はなんらかのゾンビプロセスなりが存在しているかもしれない。 なるべくチケット化する これはプロジェクト方針と合致するかということも大いにあるけど、 基本的にチケットは細かくあったほうが良いと考える。 明らかに作業に対してチケットのタイトルが合致していない場合、 チケットにない作業をしている場合などが該当する。 タスクを細かく切
はじめに 毎年年末に大都会岡山で行われている合同勉強会と忘年会議に行ってきました!楽しかった! 合同勉強会 in 大都会岡山 -2016 Winter- 忘年会議2016 togetter 合同勉強会 in 大都会岡山 -2016 Winter- & 忘年会議2016 まとめ #gbdaitokai #忘年会議 合同勉強会の雰囲気 服部駅降りてすぐの風景。 これが大都会 pic.twitter.com/2u5AXfNAti — やんく������ (@yy_yank) 2016年12月17日 岡山県立大学のキャンパスで行われます。 圧倒的キャンパス感 pic.twitter.com/5RGUK4M4C2 — やんく������ (@yy_yank) 2016年12月17日 ていうか寝坊した 午前中はAzure、CSS、ゼロからのプロダクトローンチの話、昼からGoogle Cloud Pla
いや、大した話じゃないんですけど みんなどうしてるのかなって思って。 Javaの定数クラス。皆さんの使用状況はこんな感じだろうか。 なにそれ? 知ってるけど使ってない 全部propertiesファイルとかxmlとかに持ってるから使わない 使ってる 使うとすればどのように使うのが良いかなとか。 わざわざ考えたりしないような気がするので、あえて考える。 定数クラスとは 定数クラスとはpublic static finalなフィールドをたくさん持つクラスで、 定数を管理するために用いられる感じ。 ざっくりとこんなの。 見たことある人は「あー、、。。。」となる。 public final class Constants { public static final String SLASH = "/"; public static final String BLANK = " "; public s
はじめに この記事はJava Puzzlers Advent Calendar 2016の12日目の記事です。 ぼくはハイレベルなJavaプログラマーではないので、本エントリもハイレベルなJava puzzleではありません。力を抜いて眺めて下さい。 昨日の続きの問題 昨日の続編として、昨日のソースコードをちょっと変えたものを書きました。 /** * Created by yy_yank on 2016/11/12. */ public class Puzzler2 { Puzzler2 p = new Puzzler2(){ @Override public void exec(){ Puzzler2.main("で","て","る"); } }; public void exec(){} public void exec(String a){} public static void m
はじめに この記事はJava Puzzlers Advent Calendar 2016の11日目の記事です。 ぼくはハイレベルなJavaプログラマーではないので、本エントリもハイレベルなJava puzzleではありません。力を抜いて眺めて下さい。 ということでさっそく お題となるソースコードは以下のとおりです。 /** * Created by yy_yank on 2016/11/12. */ public class Puzzler { String a; static String b; static { String a = "ははははは"; b = "ふはははは"; } public void exec(){} public void exec(String a){} public static void main(String... args){ final String
はじめに これはJava EE Advent Calendar 2016の11日目の記事です。 @kikutaro_さんがアドベントカレンダーをみんなに書いてもらえるよう頑張ってたのがチラッと見えたので、 まぁ僕も協力したいなぁという次第です。 突貫で雑に書いてしまったので変なところがあるかもしれませんがツッコミを入れて下さい。。 今回はConcurrency Utilities for Java EEというのを使ってみたネタにしようかと思ったのですが頓挫しました。NamimgExceptionでて…あぁって。 こんな風に出来るよ、みたいな話にしかならなかっただろうし。まぁ良いですよね。 @Dependent public class EntryPointBean { @Inject ConcurrentBean concurrentBean; @Resource ManagedExecu
2016/12/03に行われたJJUG CCC 2016 Fallに参加してきました。 50分1コマもらって発表もしてきました。 皆さん、楽しかったですお疲れ様です。 参加セッションと自分のセッションの説明補足などをしようと思います。 JJUG CCC 2016 Fall 2016-12-03(土)10:00 - 22:00 公式サイト 見たセッション 実録 Blue-Green Deployment 導入記 SIerもはじめる、わたしたちのDevOps Event Driven Microservices with Spring Cloud Stream GitBucketを支えるJava技術とグローバルで使われるOSSの作り方 JVMのトラブル解決のためにやったこと~メモリー/スレッド Featherweight JavaやGroovyの漸進的型付けについて 発表したセッション JVM
Payara Microがなんだか存在だけ知っていて気になっていたので、 勢いつけてブログ書きつつ導入してみる。 と思ったのだけど、Payara MicroProfileというものがあったのでそっちの方を選んで導入してみる。 今後Paraya MicroProfileを使いつつ、Java EEで遊びたいものがあれば試してみようかという目的もある。 Payara Micro Payara Micro http://www.payara.fish/payara_micro Payara Microはwarファイルがアプリケーションサーバのインストールなしに実行出来る。ふむ。単純に使うだけなら70MBぐらいでちょー簡単に動くよ、とのこと。 プロビジョニングツールとも組み合わせ合わせられるらしい。(Chef,Puppet,Ansible) ということで、使いやすそう。 Payara MicroPr
Seasar Conference 2016 Finalに行ってきました。 https://event.seasarfoundation.org/sc2016/ Seasar Conference 2016 Final EOLについて そういえば、EOLについて触れておいたほうが良いですね。 「えっと、Seasar 2,SAStruts,S2JDBCが明日で終わります。でもリポジトリは残ってるし自由に使っていいです」 — やんく (@yy_yank) 2016年9月24日 Seasarプロジェクトが提供するプロダクトの多くは 2016年9月26日 をもって EOL (End of Life) となります。 EOLとなるのは以下を除いた全プロダクトです。 DBFlute DBFlute.NET Doma Emecha Mayaa S2Container.NET S2Dao.NET 上記以外の
Kotlinのサーバーサイドどうなんよ?というのを個人的に思っていることを書きます。 また、以前に発表した内容のアップデートをしたく、このブログエントリを書いています。 Kara is dead 以前にかわいいKotlin勉強会でServer Side Kotlinというスライドで発表をしました。 で、これをまだたまに見てらっしゃる人がいるので 一点訂正したいのですが、2016/06月現在、Karaはオススメしません。 この当時(2015-06-05なので丁度一年ぐらい前か…!)、状況からしてwasabiとKaraが有力で、 Karaの方がJetBrainsが肩入れしている印象があったため このスライドでもオススメしてみたのですが、 読みが外れてそれ以降、wasabiとKaraはあまり進歩してません。 特にKaraは全然何も動いてないように見える。 地道にforkして開発してる人がひとりい
SIerはバズってる 最近、というか毎度毎度SIerについて話題が上がる。。 のでなんだかモヤモヤとウンザリを書いてみることにする。 言いたいのは、SIerって言葉が便利すぎるということ。立派なバズワードだと思う。 ・バズワードとは 主にIT関連業界に見られる流行語で、何か新しい重要な概念を表しているようだが、 その実、明確な定義や範囲が定まっておらず、 人によって思い浮かべる内容がバラバラであったり、 あるいは宣伝文句的に都合よく引用されるような新語や造語、フレーズのこと。 http://sp.e-words.jp/w/バズワード.html ・SI、SIerとは 企業の情報システムの企画、設計、開発、構築、導入、保守、運用などを一貫して請け負うサービス。これらの工程のうちのいくつかを請け負う場合もある。 システムインテグレーションを行う企業をシステムインテグレータ(SIer:System
主語がでかいタイトルですが、自分なりに考えようという目的です。 自分の思考の整理。 何か意見があればガンガンコメントなりツイートなりして欲しい。 前提として、 チケット管理システムは2つぐらいしか使ったことがないので、そちらに偏ってしまうかも。 ちなみにRedmineとBacklog。 (今がRedmineだから多分それに偏る気が) アンチパターン アンチパターンというのかは分からないけど 今まで困ったこと、やりにくいと感じたこと、ダメだこりゃ、と思ったこと。 ・運用フローが複雑 フローが複雑だと途端に人は面倒になる。なるべく抜け道を探し秩序が乱れる。 抜け道が見つかると割れ窓理論とかいうやつで、どんどんぐちゃぐちゃになる。 誰もフローに乗ってくれない状態になる。 ・使われていない項目がある なぜあるのかわからない項目。重要そうだけど埋めなくても良い項目。 誰かが埋めてくれるだろう、他の人
そこにいるのはまだ宝箱があるからか ドラクエが好きだ。 みなさん、ご存じだろうか。ドラゴンクエスト。 主人公は突然旅立つことになり、色んな家を物色して強盗したり、 外に出てモンスターを殺したり、なんとなく南に行って洞窟でイベントをクリアして王様に 褒美をもらったりするゲームだ。 僕は昔からドラクエが好きで、あれは色んな街を渡り歩く。 隅々まで色んな町人と話して、宝箱を物色して、イベントをやりきったか確認する。 そして次へ進む。 仕事に置き換えてみよう。 あなたは何故その場所にいるか。 そこに宝箱はまだあるか。イベントは残っているか。 周りのモンスターは弱すぎるか強すぎるか、はぐれメタルは出るか そういう、ふざけた感覚で仕事をやっている僕なのですぐに飽きる。 周りのモンスターを仮にタスクや技術的な難題としよう。 それが容易すぎると自分のレベルアップにはならない。 経験値が少ないから。もちろん
はじめに Android端末からファイルを選択してファイルパスを取得したいと思った時、 どうやろうかなぁって思い調べたらこの記事を見つけました。 Androidでファイル選択ダイアログができなかったのでIntentでファイル選択アプリを呼び出す この記事見た時になるほどなぁと思ったんですが、「あれこれする」ってどうすりゃいいんだ、と。 勝手に続きを書こうかなと思います。 ゴール ・Android端末から外部のIntentを発行してFileエクスプローラのアプリを起動する(Google Driveとか) ・onActivityResultからファイルパスを取得する ・InputStreamを生成する いたってシンプルです。 実際のソース ファイルエクスプローラーを開き、指定したファイルパスを取得するソースは以下のとおりです。 // 識別用のコード private final static i
次のページ
このページを最初にブックマークしてみませんか?
『プログラマのはしくれダイアリー』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く