Skip to content

Instantly share code, notes, and snippets.

@hujunfeng
hujunfeng / wwdc2020_sessions.txt
Last active June 9, 2021 01:24
The list of WWDC 2020 sessions
101 Keynote
102 Platforms State of the Union
10004 Expanding automation with the App Store Connect API
10005 What's new in assessment
10006 Introducing Car Keys
10008 Optimize the Core Image pipeline for your video app
10009 Edit and play back HDR video with AVFoundation
10010 Export HDR media in your app with AVFoundation
10011 Author fragmented MPEG-4 content with AVAssetWriter
10012 Discover ray tracing with Metal
@hujunfeng
hujunfeng / wwdc2019_sessions.txt
Created June 24, 2019 01:51
The list of WWDC 2019 sessions
101 Keynote
103 Platforms State of the Union
104 Apple Design Awards
202 Using Core Data With CloudKit
203 Introducing Desktop-class Browsing on iPad
204 Introducing SwiftUI: Building Your First App
205 Introducing iPad Apps for Mac
206 Introducing SF Symbols
207 Introducing SiriKit Media Intents
208 Creating Independent Watch Apps
@hujunfeng
hujunfeng / Hardware.swift
Last active January 9, 2019 04:07
A Swift struct to read the model names for iOS devices.
import Darwin
/// A struct for reading device model names for iOS devices.
public struct Hardware {
public let machine: String
public init() {
machine = Hardware.getSystemInformation("hw.machine")
}
@hujunfeng
hujunfeng / wwdc2018_sessions_list.txt
Created June 12, 2018 01:48
WWDC 2018 Sessions
101 WWDC 2018 Keynote
102 Platforms State of the Union
103 Apple Design Awards
201 Creating Apps for a Global Audience
202 What's New in Cocoa Touch
203 I Have This Idea For An App...
204 Automatic Strong Passwords and Security Code AutoFill
205 Advances in Research and Care Frameworks
206 What's New in watchOS
207 Strategies for Securing Web Content
101 - WWDC 2017 Keynote
102 - Platforms State of the Union
201 - What's New in Cocoa Touch
202 - Advances in TVMLKit
203 - Introducing Drag and Drop
204 - Updating Your App for iOS 11
205 - What's New in watchOS
206 - Introducing Password AutoFill for Apps
207 - What's New in Cocoa
208 - Natural Language Processing and your Apps
# Reset branch with remote branch (or force pull)
$ git fetch origin master
$ git reset --hard FETCH_HEAD
$ git clean -df
# Altering `master` to whatever branch you want to be following.
@hujunfeng
hujunfeng / Optional+SafeValue.swift
Last active July 8, 2016 09:51
A `safeValue` method for Optional type. It returns an empty value if the wrapped type of the Optional type has one, for example String and Array.
/// A type that supports an "empty value"
protocol EmptyValuable {
/// Returns the empty value of `Self`
static var emptyValue: Self { get }
}
extension String: EmptyValuable {
static var emptyValue: String {
return ""
}
@hujunfeng
hujunfeng / wwdc16_sessions_list
Last active May 8, 2021 06:17
WWDC16 Sessions List
101 - Keynote
102 - Platforms State of the Union
103 - Apple Design Awards
201 - Internationalization Best Practices
202 - What's New in Accessibility
203 - What's New in Cocoa
204 - iMessage Apps and Stickers, Part 1
205 - What's New in Cocoa Touch
206 - What's New in tvOS
207 - What's New in Foundation for Swift
@hujunfeng
hujunfeng / Root.plist
Last active September 30, 2022 20:40
Add version in Settings.bundle for iOS apps
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PreferenceSpecifiers</key>
<array>
<dict>
<key>DefaultValue</key>
<string></string>
<key>Key</key>
@hujunfeng
hujunfeng / random.swift
Last active January 2, 2016 18:54 — forked from mattt/random.swift
import Darwin
extension Int {
static func random() -> Int {
return Int(arc4random_uniform(UInt32(Int.max)))
}
static func random(range: Range<Int>) -> Int {
return Int(arc4random_uniform(UInt32(range.endIndex - range.startIndex))) + range.startIndex
}