Month / December, 2014

Things learned today

And for a little Salesforce nugget to end your year:

It is possible to set the SFDC system audit fields. However, there is no permission set to allow that, so by default only System Admin users are able to. To solve that, the code must be written without sharing, which means the code will almost 100% for sure not pass security review[1. what is the actual likelihood of passing? no idea, but it can’t be 100%].

Whoa, take a step back 2

Alright everyone, recuperated from that massive romp down the “what is functional programming” lane in that previous blog post? I hope so because we are about to actually get into the rabbit hole and go pretty deep! And mix even more metaphors!

Last time we discussed what made functional programming functional. And then we discussed the common data types of Haskell. This time we will dive into data types in Haskell.

Continue Reading

another series to begin soon

For the past couple months I have been leading a weekly book club at work. The focus of this club has been functional programming. We have been reading Learn You a Haskell For Great Good. Overall I believe everyone has been having a good time with it and actually picking up some useful bits of information.

One way a few of us have taken to getting accustomed to idiomatic functional programming has been through the Project Rosalind website. It is essentially a programming challenge site with challenges based on bioinformatics. It has been a lot of fun to work through. One of my coworkers has started a series on his blog based on these problems but using the F# language. Those posts are high quality and filled with great info. So just to prove how good they are, I’m going to write up posts for the same problems but using Haskell. Quickly you will see how much better a writer he is than I.

I’ve got 99 bluetooth problems but a mouse ain’t one

as soon as i updated to yosemite, my bluetooth mouse at work started acting up. it would randomly become lag-y, or even just stop responding. it also seemed to lose tracking resolution, and just jump erratically. it drove me mad, to the point of pounding it on the desk a time or two. not very nice i know.

today though, i finally put together what i think the issue is. i had my laptop plugged in at work, with wifi sharing enabled, and started to download the newly free microsoft office apps to my iPhone. the phone was sharing my laptop’s wifi connection. as soon as the downloads started, my mouse became erratic.


i immediately turned off wifi and my mouse went back to not being stupid. with this knowledge, i went into my sharing settings and put the wifi band up to the highest it could, hopefully that will prevent future issues with wifi interfering with bluetooth.

so far it has worked at least.


Even more damning of this API is that you are unable to use it directly from a UITableViewCell. Unlike the use of UIPopoverController, UIPresentationController requires that it be presented from another view controller. Unfortunately UITableViewCell instances are not view controllers (another pet peeve for another time) and so cannot present view controllers. Ugh.

Custom UITableViewCell Hierarchy

So you want to make a bunch of custom UITableViewCell subclasses, but they all have the same layout, just different behaviors. Sounds like a job for Captain Subclass! That is until you actually start doing the work. How would you accomplish this? Well follow along after the break to find out!
Continue Reading