Credit to Mohammad Majed Khan
https:/
/dribbble.com/shots/5726952-Bingo-App-UI-Kit
Slide 20
Slide 20 text
Credit to Taras Migulko
https:/
/dribbble.com/shots/6215241-Sport-activity-dashboard-application
Slide 21
Slide 21 text
No content
Slide 22
Slide 22 text
https://shapeshifter.design
Shapeshifter
Slide 23
Slide 23 text
Code has a big effect on UX
Slide 24
Slide 24 text
val uiStates = observeData()
.map { getUiState(it) }
uiStates.subscribe { state ->
// Render state.
}
Slide 25
Slide 25 text
val uiStates = observeData()
.map { getUiState(it) }
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
uiStates.subscribe { state ->
// Render state.
}
Slide 26
Slide 26 text
val uiStates = observeData()
.map { getUiState(it) }
.replay(1)
.refCount()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
uiStates.subscribe { state ->
// Render state.
}
Slide 27
Slide 27 text
val uiStates = observeData()
.map { getUiState(it) }
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.replay(1)
.refCount()
uiStates.subscribe { state ->
// Render state.
}
Slide 28
Slide 28 text
Username
Password
LOGIN
My Wonderful App
Slide 29
Slide 29 text
Username
Password
LOGIN
My Wonderful App
Slide 30
Slide 30 text
Username
Password
LOGIN
My Wonderful App
Slide 31
Slide 31 text
Username
Password
LOGIN
My Wonderful App
Slide 32
Slide 32 text
Username
Password
LOGIN
My Wonderful App
Picasso.get()
.load(R.drawable.blurred_bg)
.into(loginBg)
Slide 33
Slide 33 text
It’s important to understand what you’re
making the computer do
Slide 34
Slide 34 text
Credit to Joseph Gentle
https:/
/josephg.com/blog/electron-is-flash-for-the-desktop/
Slide 35
Slide 35 text
Buck the trend. Make quality software.
Communicate your domain specific knowledge.
Become a disgruntled user.
Work closely with designers. Up your game.
Slide 36
Slide 36 text
Developers
The last line of UX defence
chris_h_codes
chris-horner
chrishorner.codes