2022/3/24に開催した「オンプレML基盤 on Kubernetes」の資料です。機械学習モデルの開発者が、よりモデルの開発にのみ集中できるようにすることを目指して開発している「LakeTahoe(レイクタホ)」について紹介します。
https://ml-kubernetes.connpass.com/event/239859/
10. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
• 2011年7月にJetBrainsから発表されたJVM言語
11. • 2011年7月にJetBrainsから発表されたJVM言語
Cédric Beust 「 Five reasons why you should rejoice about Kotlin」
http://beust.com/weblog/2011/07/20/five-reasons-why-should-rejoice-about-kotlin/ (2018年1月25日)
25. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
desugar問題
・Androidは、Java8の機能を使用するために、
コンパイル時にdesugarを行う
26. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
desugar問題
・Androidは、Java8の機能を使用するために、
コンパイル時にdesugarを行う
・特定のライブラリを使用している場合、
desugarは無効化される
27. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
desugar問題
・Androidは、Java8の機能を使用するために、
コンパイル時にdesugarを行う
・特定のライブラリを使用している場合、
desugarは無効化される
・そのライブラリを使っている
28. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
desugar問題
・Androidは、Java8の機能を使用するために、
コンパイル時にdesugarを行う
・特定のライブラリを使用している場合、
desugarは無効化される
・そのライブラリを使っている
・Java7でコード書きたくない
30. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
Swiftとの親和性
・SwiftとKotlinのコードは似ている
31. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
Swiftとの親和性
・SwiftとKotlinのコードは似ている
class Person {
let name:String
var age:Int
init(name: String, age: Int) {
self.name= name
self.age= age
}
func isAdult() -> Bool {
return age>=20
}
}
32. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
Swiftとの親和性
・SwiftとKotlinのコードは似ている
class Person {
let name:String
var age:Int
init(name: String, age: Int) {
self.name= name
self.age= age
}
func isAdult() -> Bool {
return age>=20
}
}
class Person(val name: String, var age: Int) {
fun isAdult() = age >= 20
}
33. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
Swiftとの親和性
・SwiftとKotlinのコードは似ている
class Person {
let name:String
var age:Int
init(name: String, age: Int) {
self.name= name
self.age= age
}
func isAdult() -> Bool {
return age>=20
}
}
class Person(name: String, age: Int) {
val name: String
var age: Int
init {
this.name = name
this.age = age
}
fun isAdult() : Boolean {
return age >= 20
}
}
34. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
Swiftとの親和性
・SwiftとKotlinのコードは似ている
・弊社のほぼすべてのiOSアプリは、Swiftを導入している
35. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
Swiftとの親和性
・SwiftとKotlinのコードは似ている
・弊社のほぼすべてのiOSアプリは、Swiftを導入している
・互いのコードが読めるようになり
お互いの仕事に興味を持つきっかけになってくれれば
51. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
ルール
・新規クラスはKotlinで書く
52. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
ルール
・新規クラスはKotlinで書く
・Kotlinに置き換えるだけのタスクは積まない
53. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
ルール
・新規クラスはKotlinで書く
・Kotlinに置き換えるだけのタスクは積まない
ヤフオク!アプリのアーキテクチャ担当として
見直しをしていた時期だったので、ちょうどよかった
54. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
1日合宿
・1日かけてTODOアプリを開発
55. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
1日合宿
・1日かけてTODOアプリを開発
・リスト表示、非同期処理、通信処理、
ローカルDBキャッシュなど
アプリ開発でよく使う要素をだいたい含む
56. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
1日合宿
・1日かけてTODOアプリを開発
・リスト表示、非同期処理、通信処理、
ローカルDBキャッシュなど
アプリ開発でよく使う要素をだいたい含む
・典型的な処理をどう書くか
コードイメージの共有ができる
57. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
エクストリーム・プログラミング
・ペア・プログラミングとペアのローテーションを行う
58. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
エクストリーム・プログラミング
・ペア・プログラミングとペアのローテーションを行う
・知見の共有と技術レベルの平準化がされる
59. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
エクストリーム・プログラミング
・ペア・プログラミングとペアのローテーションを行う
・知見の共有と技術レベルの平準化がされる
・16:30〜のセッションもお願いします
66. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
会社の支援
・トップカンファレンス参加支援制度
KotlinConfへの参加と社内セミナー
See: https://techblog.yahoo.co.jp/advent-calendar-2017/kotlinconfdroidconsf/
67. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
さまざまなレイヤーでの
コミュニケーション
96. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
他のサービスへの展開
・無理に強制しない
97. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
他のサービスへの展開
・無理に強制しない
・人の異動に合わせて、自然と広がっていく
98. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
他のサービスへの展開
・無理に強制しない
・人の異動に合わせて、自然と広がっていく
サーバサイドKotlin
99. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
他のサービスへの展開
・無理に強制しない
・人の異動に合わせて、自然と広がっていく
サーバサイドKotlin
・社内コミュニティが生まれつつある
100. Copyright 2018 Yahoo Japan Corporation. All Rights Reserved.
他のサービスへの展開
・無理に強制しない
・人の異動に合わせて、自然と広がっていく
サーバサイドKotlin
・社内コミュニティが生まれつつある
・Spring使えるし、おすすめ