15 Sep 2022

wise

"Outcomes, not output"

"Less but better"

"There is only one way to avoid criticism: do nothing, say nothing, and be nothing." — Aristotle

Read more

19 Mar 2021

text in code

Good rule: for header and docs main question is - what/how? for comments in code - why?

Read more

11 Jan 2021

git settings to display original version from before in case of merge conflict

Display "original" version from before the same area of the file was modified twice on different branches e.g. "original" version before conflict.

git config --global merge.conflictStyle diff3

Read more

01 Apr 2020

Git undo rebase

Link to manual : Manual

Read more

23 Jan 2020

Git Change-logs between commits

To get a changes history between commits just use:

git log --pretty=oneline hash0...hash1 --no-merges --format=%s

where hash0 and hash1 - hashes of commits.

Read more

09 Dec 2019

Xcode build autoincrement

Add in "Build Phases" new "New Run Script Phase"

buildNumber=$(/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "${PROJECT_DIR}/${INFOPLIST_FILE}")
buildNumber=$(($buildNumber + 1))
/usr/libexec/PlistBuddy -c "Set :CFBundleVersion $buildNumber" "${PROJECT_DIR}/${INFOPLIST_FILE}"

Read more

05 Dec 2019

Localizable strings linter

In case of error in Localizable.string just use:

plutil -lint <your_strings_file>.strings

Read more

24 Sep 2019

Apple TV Aerial Screensaver for Mac

Apple TV Aerial Screensaver for Mac

Read more

12 Sep 2019

Wonderful Tools Screensaver

Screensaver

Read more

10 May 2019

Swift attributes

Swift has an available attribute that you can use for this. It's available arguments include:

  • unavailable
@available(*, unavailable, message: "f is unavailable ")
func f() {
}
  • deprecated
@available(*, deprecated, message: "f is deprecated ")
func f() {
}
  • obso

Read more