https://kotlinlang.org logo
Title
j

JungIn Choi

04/29/2021, 1:26 PM
Day44
• Worked on demo app using map API & company API ◦ Displaying bike marker ▪︎ Resolved the confusing points in current app logic. Did work after adding deletion method. ◦ Displaying bottom sheet diaglog (on marker click) ▪︎ Used BottomSheetDialogFragment ▪︎ Using this fragment itself was not that difficult. I didn’t care xml layout design much, so I just made some grey dialog with white letter. ▪︎ However, I had to attach click listener to the marker, and I was creating the marker objects inside ViewModel. So, I had to create fragment from view model, which is weird as it sounds. • At first, I declared context .. … … .. inside the view model. (something like context = application.getApplicationContext(). But since this app was huge, there were some type casting problem with multi-dex thing. I mentioned this issue earlier, and it somehow worked that time, but this time.. I didn’t want to do such thing. • So I asked my supervisor for advice. Company used some context utility with koin..? dependency injection etc., but that seemed to be tail wagging the dog. So, supervisor’s advise was to use Rx! Inside the Viewmodel, just create a Subject, and pass some “flag” to it, and from the Fragment, subscribe that subject, and show dialog under certain condition. It was so nice and intuitive. ▪︎ Now I’m getting used to data binding - it was actually nothing difficult. Just adding <layout> <data> blah blah and I can access xml components and viewmodel methods easily from the fragment. (Of course there was a stupid moment. I wondered why my data binding was not working, but I just made a dumb mistake, I didn’t return binding.root … …..) ▪︎ Had disgusting issues with json, gson. Problem is, I didn’t know how to debug this. Supervisor’s tip was to add
doOnError {it.printStackTrace()}
, (I used to print logs by Log.d, e which didn’t show many information) So I was able to track, I put some name wrongly.
Self-Comment
• It’s quite frustrating, but worth it. • I occasionally feel some anxiety, “Am I too slow..? Am I under qualified..? What if other people think that I’m under qualified ..? Maybe other people might ask why that android intern is still doing on-boarding jobs, instead of working on actual tasks which are piled up. ” etc. Well, I really hope to catch up faster and be put into actual tasks, help my supervisor, but I know that I need more time. But this onboarding job is not that far from actual task, quite close, since I have to read current application codes to do my onboarding tasks. • There are several things left. Biggest thing is BLE. Other things left are service and layout. I hope I can finish onboarding next week, which means total three weeks of onboarding.
Goals-Tomorrow
• Implement authentication flow • Read BLE posts and check to-dos related to BLE, RxBluetoothKit etc.
Input box for weekend and etc.
• [context] [app components] [kotlin scope functions]  • should know the fundamentals related with context, to avoid memory leakage. • I’m just using let{}?:run{} as practice, but I should know the exact operation of those scope functions. • should know how to use profiling utilities, too. • Socket programming hmm
🔥 1
b

Bryan L

05/01/2021, 2:30 AM
From what I can tell, you seem to be catching on quick! You've been doing so much since you started at the company. It really is impressive! You'll fly past me in no time 🤪
j

JungIn Choi

05/01/2021, 7:29 AM
THANKKKS BRYAN 🥺 I know that I have to handle this anxiety, sense of inferiority, stress etc. in a healthy & productive way. But still there’s some moment that I feel overwhelmed by my current status (not much experience, knowing nothing at all compared to other coworkers). It’s really weird that I get so much encouragement and energy from a person I never met! It’s very fortunate that I can share my daily learning progress and share my experience with u!
🙇‍♂️ 1
1