Skip to content

Instantly share code, notes, and snippets.

View philipshen's full-sized avatar

Philip Shen philipshen

View GitHub Profile
def distilled_most_probable_place(logs, decay):
max_time = logs['timestamp_eastern'].max()
place_probabilities = defaultdict(float)
for _, log in logs.iterrows():
delta_t = (max_time - log['timestamp_eastern']).total_seconds()
# time_weight = max(0, 1 - (decay * delta_t)**3)
time_weight = max(0, 1 - lambda_decay * delta_t)
for place in log.possible_places:
adjusted_prob = place['probability'] * time_weight
place_probabilities[place['name']] += adjusted_prob
func replaceCachedContacts(_ contacts: [UserOrContact]) throws {
let modelContext = ModelContext(modelContainer)
let internalIdSet = Set(contacts.map { $0.internalId })
var internalIdsToNotInsert = Set<String>()
var existingInternalIdsToDelete = Set<String>()
let existingContacts = try modelContext.fetch(
FetchDescriptor<UserOrContact>(
@philipshen
philipshen / FadeInFullScreenCoverModifier.swift
Last active March 10, 2025 14:29
Fade in full screen cover in Swift
import SwiftUI
struct FadeInFullScreenCoverModifier<V: View>: ViewModifier {
@Binding var isPresented: Bool
@ViewBuilder let view: () -> V
@State var isPresentedInternal = false
func body(content: Content) -> some View {
content
@philipshen
philipshen / Race condition stack trace
Created November 22, 2019 19:30
BDA Crash Investigation
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)
* frame #0: 0x000000010b972fe0 Barista 2`specialized OrderQueueCell.status.didset(self=0x00007fabf1408a00) at OrderQueueCell.swift:55:21 [opt]
frame #1: 0x000000010b971647 Barista 2`OrderQueueCell.configure(orderItem:position:urgency:status:isFoodView:) [inlined] bda2.OrderQueueCell.status.didset : bda2.OrderQueueCell.Status at <compiler-generated>:0 [opt]
frame #2: 0x000000010b971642 Barista 2`OrderQueueCell.configure(orderItem:position:urgency:status:isFoodView:) [inlined] bda2.OrderQueueCell.status.setter : bda2.OrderQueueCell.Status(newValue=selected, self=0x00007fabf1408a00) at OrderQueueCell.swift:0 [opt]
frame #3: 0x000000010b971630 Barista 2`OrderQueueCell.configure(orderItem=<unavailable>, position=primary, urgency=urgent, status=selected, isFoodView=false, self=0x00007fabf1408a00) at OrderQueueCell.swift:113 [opt]
frame #4: 0x000000010b9c8670 Barista 2`OrderQueueViewMo
import React, { Component } from 'react'
import { ActivityIndicator, View } from 'react-native'
import { NavigationAction, NavigationScreenProp } from 'react-navigation'
interface Props {
navigation: NavigationScreenProp<NavigationAction, any>
}
export default class AuthLoadingScreen extends Component<Props, {}> {
let request = self.paymentRepository.createPKRequest(order: order)
if self.paymentRepository.canSubmit(paymentRequest: request) {
group.enter()
let paymentController = PaymentAuthorizationController()
paymentController.present(paymentRequest: request) { [weak self] controller, payment, authCompletion in
self?.paymentRepository.createStripeToken(payment: payment, completion: { token, error in
defer { group.leave() }
guard let token = token, error == nil else {
if fetchedPaymentToken == nil {
let request = self.paymentRepository.createPKRequest(order: order)
if self.paymentRepository.canSubmit(paymentRequest: request) {
group.enter()
let paymentController = PaymentAuthorizationController()
paymentController.present(paymentRequest: request) { [weak self] controller, payment, authCompletion in
self?.paymentRepository.createStripeToken(payment: payment, completion: { token, error in
defer { group.leave() }
guard let token = token, error == nil else {
let request = self.paymentRepository.createPKRequest(order: order)
if self.paymentRepository.canSubmit(paymentRequest: request) {
group.enter()
let paymentController = PaymentAuthorizationController()
paymentController.present(paymentRequest: request) { [weak self] controller, payment, authCompletion in
self?.paymentRepository.createStripeToken(payment: payment, completion: { token, error in
defer { group.leave() }
guard let token = token, error == nil else {
let request = self.paymentRepository.createPKRequest(order: order)
if self.paymentRepository.canSubmit(paymentRequest: request) {
group.enter()
let paymentController = PaymentAuthorizationController()
paymentController.present(paymentRequest: request) { [weak self] controller, payment, authCompletion in
self?.paymentRepository.createStripeToken(payment: payment, completion: { token, error in
defer { group.leave() }
guard let token = token, error == nil else {
let request = self.paymentRepository.createPKRequest(order: order)
if self.paymentRepository.canSubmit(paymentRequest: request) {
group.enter()
let paymentController = PaymentAuthorizationController()
paymentController.present(paymentRequest: request) { [weak self] controller, payment, authCompletion in
self?.paymentRepository.createStripeToken(payment: payment, completion: { token, error in
defer { group.leave() }
guard let token = token, error == nil else {