Mechanical Keyboards:

Key Caps:

My personal top 3 "top print" keycap preferences:

Best: PBT double shot
Pro - Legends will last the lifetime of your keyboard. Can be compatible with backlighting.
Con - None.

2nd Best: PBT Dye Sublimated
Pro - Legends will last the lifetime of your keyboard.
Con - Legends not quite as sharp as double shot keys.

3rd Best: ABS double shot
Pro - Legends will last the lifetime of your keyboard. Can be compatible with backlighting.
Con - ABS is subject to wear shine.

Video: Keycaps for mechanical keyboards

Reddit Keycap Wiki

Good deals on Tai-Hao 104 ABS Double Shot Keycap Sets, available in 9 Color Combinations

WASD Custom and Full Keycap Sets

Max ANSI Custom and Full Keycap Sets

IMHO Best O-Rings

Making Keyboards Smarter:

Autohotkey

Sharp Keys

Touch Cursor

Mac Keyboard on a PC

Whant to use a MAC keyboard on a Windows personal PC?

Then here is an Autohotkey script to remap your Apple keyboard for use with XP through Windows 10 PCs

Github Gist article

;
; AutoHotkey Version: 1.x
; Language:       English
; Platform:       Win9x/NT
; Author:         Matt Heath 
;
; Script Function:
;	Remaps keys when using an Apple Keyboard with a Windows PC
;

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

; Volume Controls
;
F10::Send {Volume_Mute}
F11::Send {Volume_Down 2}
F12::Send {Volume_Up 2}

; Play Controls
;
F7::Send {Media_Prev}
F8::Send {Media_Play_Pause}
F9::Send {Media_Next}

; Missing keys
;
F13::Send {PrintScreen}
F16::Send {Pause}

; Task manager
F4::Send, {SHIFTDOWN}{CTRLDOWN}{ESC}{SHIFTUP}{CTRLUP}

; Cursor Movement
;
; cmd + arrows - start & end of lines, with shift for selecting text
#Left::SendInput {Home}
#Right::SendInput {End}
#+Left::sendInput +{Home}
#+Right::SendInput +{End}
!Left::SendInput ^{Left}
!Right::SendInput ^{Right}
!+Left::SendInput ^+{Left}
!+Right::SendInput ^+{Right}

; Desktop rotation ( Spaces )
; Ctrl Left & Right remapped to F18 & F19 which switch virtual desktops ( I use Dexpot )
;
^Left::Send {F18}
^Right::Send {F19}

; Remapping control key shortcuts
;
; copy, paste, save, select all etc
#c::^c
#x::^x
#v::^v
#s::^s
#a::^a
#z::^z
#b::^b
#i::^i

; Keyboard Characters
;
!3::Send {Raw}#
+2::Send {Raw}@
+'::Send {Raw}"