タケハタのブログ

プログラマの生き方、働き方、技術について雑多に書いていくブログです。

KotlinとOpenAI APIで領収書の情報を抽出する

この記事はKotlin Advent Calendar 2024 1日目の記事です。 KotlinからOpenAI APIを使う例を紹介したいと思います。 以前以下の発表で、KotlinとCloud Vision APIを使用して、領収書から金額などの情報を抽出する方法を話したことがありました。 speakerdeck…

Kotlin Fest 2024登壇の振り返り

去る2024年6月22日、Kotlin Fest 2024にて登壇してきました! 2019年以来のオフライン開催、そして初めての登壇ということもあり、とても楽しい時間を過ごすことができました。 登壇内容や、Ask The Speakerや懇親会で他の参加者の方と話したことなども含め…

一生頭がよくなり続ける すごい脳の使い方を読んで

最近「一生頭がよくなり続ける すごい脳の使い方」という本を読みました。 結構面白くて参考にして生活へ取り入れたものもあるので、簡単にまとめと私が導入したアクションを紹介したいと思います。 www.sunmark.co.jp

2023年に読んで良かった本3選

2023年も終わりになりますが、最近読んだ本の書評とかを全然書いてなかったなーとなりました。 なので今年読んだ本の中で良かったものを3つピックアップして、簡単にですがまとめようと思います。 本の内容で気になってメモしていた部分を殴り書きし、全体の…

フリーランスエンジニアのためのお金管理術

フリーランスエンジニアにはお金の管理力が必須 エンジニアに限らずですが、フリーランスという働き方はお金の管理が大変というイメージがあると思います。 確定申告をして自分で税金を納めたり、そのために領収書など整理して帳簿をつけたり・・・ そこで、…

Kotlin NotebookでExposedを動かす

久しぶりの技術記事です。 今回はKotlinConf 2023のOpening Keynoteでも盛り上がったKotlin Notebookを使い、最近JetBrainsが力を入れていくことを発表したO/RマッパーのExposedを動かすというのをやってみます。 特にKotlin Notebookはまだなかなか触ったこ…

KotlinConf 2023 現地参加レポート

KotlinConf2023に現地参戦してきました 去る4/12〜14の3日間、オランダのアムステルダムで行われたKotlinConf 2023に現地参戦してきました! 前回の2019以来3年4ヶ月ぶりのオフライン開催ということで、久しぶりに海外行きたかったのもありチケットを取りま…

KotlessとDynamoDBで自分のツイートを収集するKotlinサーバーレスアプリケーションを作る

本記事は、Kotlin Advent Calendar 2021 24日目の記事になります。 以前書いたKotlessに関する記事で作ろうとしているアプリケーションがあると言っていたのですが、その実装でやろうとしていることを使って、ちょっとしたアプリケーションを作って紹介した…

【Kotlin初心者向け】KotlinでvarとMutableListを使わなくする方法

Swift/Kotlin愛好会 Advent Calendar 2021 3日目の記事です。 最近Kotlinのコードレビューをしていて、色々と「Kotlinならこういう書き方ができるよ」という内容を見つけることが多くありました。 その中でも特に多かったのが、「必要のないvarやMutableList…

Spring WebFluxとKotlin CoroutinesでJDBCを実行した時の挙動

よくSpring WebFluxでのリアクティブプログラミングや、Kotlin Coroutinesの話で、「JDBCの処理を呼ぶとブロッキングなので意味が・・・」という話がでてきます。 が、実際に動かしてどういう挙動になるのか、なにが問題なのかを説明しているものがあまりな…

KotlessでKotlinのアプリケーションをAWS Lambdaにデプロイする

ちょっと個人で作ろうとしてるアプリケーションでLambdaを使おうとしていて、せっかくなのでKotlessで作ってみようと思っています。 そこで一旦導入してみたので、まとめておきます。 Kotlessとは JetBrains社純正のKotlinのサーバーレスフレームワークです…

GradleのマルチプロジェクトによるKotlin、Spring Bootでのオニオンアーキテクチャの実現

4月に発売した書籍「Kotlin サーバーサイドプログラミング実践開発」なのですが、この中で途中まで作っていてボツネタにした内容がありました。 gihyo.jp それが「Gradleのマルチプロジェクトでオニオンアーキテクチャを実現する」というものです。 第2部で…

知識のポートフォリオの管理は金融のポートフォリオの管理とよく似ている(達人プログラマーより)

半年前くらいに達人プログラマーの第2版が出ていたので、復習も兼ねて久しぶりに読んでいます。 www.ohmsha.co.jp その中で以下のような内容がありました。 プログラマーが持っているコンピューティング関連の知識や、仕事の業務知識、あらゆる経験は「知識…

書籍『Kotlin サーバーサイドプログラミング実践開発』のこだわりとオススメポイント

書籍『Kotlin サーバーサイドプログラミング実践開発』を発売しました! 去る2021年4月、技術評論社様より書籍『Kotlin サーバーサイドプログラミング実践開発』を発売させていただきました! gihyo.jp そこで簡単にこの書籍の内容のこだわり、おすすめポイ…

参加者視点から見たKotlin愛好会の良さ

Swift/Kotlin愛好会 Advent Calendar 202022日目の記事です。 (ちょっと遅れました) Kotlin愛好会には初回からよく参加していて、もう2年半くらいになります。 たまに談義枠でも参加したり、技術書典で執筆したり、当時いた会社で会場提供という形で開催した…

Spring BootとKtorの実装比較(初級編)

Kotlin Advent Calendar 2020 1日目の記事です。 サーバーサイドKotlinで使われるフレームワークとして、Spring BootとKtorはよく挙げられます。 Spring BootがJavaの流れを組んで主流で、新鋭の軽量なフレームワークとしてKtorがあるというイメージだと思い…

技術志向、プロダクト志向という考え方がなくなって欲しい

技術志向、プロダクト志向という考え方 エンジニアのタイプとして、よく技術志向、プロダクト志向(あるいはサービス志向、ビジネス志向など)という分類がよくされます。 ざっくりとしたイメージとしては プロダクトを作るというより、プログラムなどの技術に…

リーダーは暇であるべき

リーダーは暇であるべき リーダーという立場の人は暇であるべきだと思っています。 「暇であるべき」は少し極端な書き方ですが、要は「余裕を持っているべき」だと思ってください。 ちなみにここでいうリーダーはチームリーダーとだけでなく、マネージャーな…

リモートワークで仕事とプライベートを切り替えるためにやっていること

転職してフルリモート2ヶ月弱が経ったのですが、コロナの影響で入社以来ずっとフルリモートで仕事をしています。 もともとリモートで働きたい派ではなかったのですが、慣れない中やってみて、頭と身体の切り替えに難しさを感じました。 今回はその難しさを解…

grpc-kotlinをgrpc-spring-boot-starterと組み合わせて使う

前回の記事でgrpc-kotlinとgrpc-javaの実装を比較し、どこまでKotlin化できるかを紹介しました。 これと併せてgrpc-spring-boot-starterと組み合わせてSpring Bootでgrpc-kotlinを使うのも試していたので、今回はこちらを紹介します。

grpc-kotlinはgRPCの実装をどこまでKotlin化できるのか?

先日、GoogleからKotlinのgRPCライブラリであるgrpc-kotlinのバージョン0.1.1がリリースされました。 cloud.google.com これまでもKotlinでgRPCは使ってきましたが、ずっとJavaを使わざるを得なかったので嬉しい限りです。 そこで、このgrpc-kotlinを使うこ…

Kotlin1.4のKotlinインターフェースに対するSAM変換はなにがいいのか?

先月になりますが、Kotlin 1.4-M1がリリースされました。 blog.jetbrains.com アップデート内容の中で「More powerful type inference algorithm」にSAM conversion for Kotlin functions and interfaces(Kotlin関数およびインターフェースのSAM変換)という…

転職活動終了のご報告と今のご時世の中で転職活動してみての所感など

先日Twitterでは報告したのですが、2ヶ月前にこのブログでも書いていた転職活動が先日終了しました。 ご報告ですが、転職活動を終了しました。2ヶ月前にブログとTwitterで宣言してからお会いいただいた企業の皆さま、お声がけくださった皆さまありがとうござ…

転職活動を始めます

タイトルの通り、これから転職活動をします。 なので主にバックエンドのエンジニアを求めている会社さんで、ご興味あればぜひお声がけください。 Twitter(@n_takehata)のDMを開放してあります。 自分がどんなエンジニアなのかは、下記にレジュメ(職務経歴)を…

【てっくぼっとサマリー】サーバーサイドKotlin、gRPCを中心とした「SEVEN’s CODE-セブンスコード-」のバックエンド技術

この前久しぶりに書いたてっくぼっとの記事についての紹介です。 blog.applibot.co.jp

DockerでMySQLを起動した時はバージョン差異に注意

最近はローカル環境でミドルウェアを使う時、直接インストールするのではなくDockerで立てることもよくあると思います。 今回はMySQLをDockerでローカルに起動し使う時の、ちょっとした注意点を紹介します。

ブログの技術記事で書く内容をパターン分けしてみた

2020年一発目のブログです。 新年あけましておめでとうございます。 ふと思いつき、技術系のブログ記事で書く内容のパターンを軽く整理してみました。 一昨年くらいから自分でこのブログも書いていますが、他にも色々な記事を読んだりしている中で感じるメリ…

2019年を雑に振り返る

2019年も終わりということで、一応雑に振り返っておこうかなと思います。 そんなに細かくは書きませんが、今年書いたブログのリンクとか貼りつつ色々な活動の記録ということで。

技術力の構成要素

今日はてブに上がってたこの記事を読んで触発されたので、自分の思う「技術力」について書くことにしました。 alpacat.hatenablog.com 正直この「技術力」という言葉は人によって考え方はまちまちなので完全に個人の見解になりますが、考え方の一つとして読…

Kotlin MPPのライブラリを作りサーバー、Android、iOS、Webでコード共有する

2日遅くなってしまいましたが、Swift/Kotlin愛好会 Advent Calendar 2019 23日目の記事です。 先日KotlinConf 2019のレポートにも書きましたが、Kotlin MPPに関するワークショップを受けてきました。 今回はそこでやったことを参考に、Kotlin MPPでライブラ…