Skip to content

Instantly share code, notes, and snippets.

@somegeekintn
somegeekintn / Trace.swift
Created December 21, 2017 23:06
Simple logging
//
// Trace.swift
// Super Speller
//
// Created by Casey Fleser on 9/28/16.
// Copyright © 2016 Quiet Spark. All rights reserved.
//
import Foundation

Keybase proof

I hereby claim:

  • I am somegeekintn on github.
  • I am somegeekintn (https://keybase.io/somegeekintn) on keybase.
  • I have a public key ASBrJhEwn01NeWdFBqaCerdKbkd4xg8Uz44YQDMooARWFQo

To claim this, I am signing this object:

@somegeekintn
somegeekintn / DeathByDidSet.swift
Created June 30, 2015 22:03
Why does line 19 trigger didSet on stringProto?
protocol StringProto {
var string: String? { get set }
}
class StringClass : StringProto {
var string : String? = ""
}
class SetterTest {
var stringProto: StringProto? {
@somegeekintn
somegeekintn / OptTest.swift
Created March 18, 2015 14:57
Assorted optional chaining / binding examples
class A {
var tInt: Int?
var tDouble: Double?
var tString: String?
var tObj: B?
func chainTest() {
self.tObj?.tInt = 42
self.tObj?.tDouble = 3.1415
self.tObj?.tString = "Hello"
@somegeekintn
somegeekintn / Developer Quotes
Created July 31, 2014 16:00
An assortment of quotes mostly related to software development
Computers are useless. They can only give you answers.
- Pablo Picasso
You know you've achieved perfection in design, not when you have nothing more to add, but when you have nothing more to take away.
- Antoine de Saint-Exupery, Wind, Sand and Stars
It always takes longer than you expect, even when you take into account Hofstadter's Law.
- Hofstadter's Law
Simplicity carried to the extreme becomes elegance.
@somegeekintn
somegeekintn / gist:8905544
Created February 9, 2014 20:33
Block time calculations
void bridgetest_dumpBlocks()
{
CBlockIndex *blockIndex = pindexGenesisBlock;
uint256 prevHash = 0;
int64_t expectedMintValue;
int32_t blockCount = 0;
int32_t badBlockCount = 0;
time_t lastBlockTime, thisBlockTime;
int32_t totalTime[10][10];
int32_t timeCount[10][10];
@somegeekintn
somegeekintn / gist:8615979
Created January 25, 2014 12:56
Dogecoin incorrrect block values
2212 expected 15250200000000 actual 1000000000000 - a8bf0f4b7c845625c9bfeff6e0ae2b027eb7b53824710575ead5fa4bdb3514be
2228 expected 4597000000000 actual 1000000000000 - 1395eedd15b5d55fcc5674721530c545320ae6285452ad78a8fcce5cc14fce1a
2327 expected 61908800000000 actual 1000000000000 - 582b72a5fda1254fc54778726bc3a2de71940f56b22a1b773befe6049b594aad
2805 expected 58848400000000 actual 1000000000000 - 459827edfceec8214b32c24823d8165e0a39f82b67e6dd491af3a8ec0739eda4
2820 expected 73462200000000 actual 1000000000000 - 51e0639805e130379dca3ed6e76b0339e7c44cceb2acae71195ab0a59d56074a
2872 expected 90301000000000 actual 1000000000000 - c8518110ec3326299906a4ce1d19e3fe305587576fd299e7fee5d6d22410cc88
3217 expected 44391300000000 actual 1000000000000 - dc8cbfcb34fde7f602a57263e709658ed99dbcea467c32aa4353ddb7605e6611
3619 expected 37993600000000 actual 1000000000000 - 3a0aa37eba6ee9c6b21608f9a5f933cf00f13237e4c00944f37fa55178f4a22b
4085 expected 86203500000000 actual 1000000000000 - 07392ca41be8177db080f1b862a9e86ce3da
@somegeekintn
somegeekintn / main.cpp
Last active January 3, 2016 11:29
Proposal for new dogecoin GetBlockValue function
#define kSubsidyRange 1220703125
#define kMinSubsidy 1000
#define SUBSIDY_METHOD 1
int64 static GetBlockValue(int nHeight, int64 nFees, uint256 prevHash)
{
std::string cseed_str = prevHash.ToString().substr(7,7);
const char *cseed = cseed_str.c_str();
long seed = hex2long(cseed);
int64 nSubsidy;
@somegeekintn
somegeekintn / NSCalendar+QS.m
Created July 28, 2013 11:14
NSCalendar method to floor date to some calendar unit
- (NSDate *) floorDate: (NSDate *) inDate
toCalendarUnit: (NSInteger) inCalendarUnit
{
NSDateComponents *dateComponents;
NSInteger calendarUnits = 0;
switch (inCalendarUnit) {
case NSSecondCalendarUnit: calendarUnits |= NSSecondCalendarUnit;
case NSMinuteCalendarUnit: calendarUnits |= NSMinuteCalendarUnit;
case NSHourCalendarUnit: calendarUnits |= NSHourCalendarUnit;