Some Jekyll Tools
Seeing as how a Jekyll site is really just piles of marginally-documented mar...
(In|De)flation
TLDR; I released another app.
I’m of the age where I constantly notice that ...
New (To Me) Music - 2022
In recent years, my music listening habits have been getting somewhat stale. ...
A Simple Card Trick
TLDR; I released my second iOS App.
Back in junior high school, my friend ta...
Text Permutations on iOS/macOS
TLDR; I released my first iOS/macOS App.
In prior jobs, I wrote a lot of SAS...
A Function to Mask Strings
here’s a handy function to mask strings while retaining some useful metadata....
Setlist Events in Go
Over the past few months, I’ve been toying around with go. Python has never r...
Wallets
I’ve gone through a number of wallets over the years.
a studded Fossil wa...
Shifty Metadata
I’ve got a set of Excel files (.xlsx) containing weekly spend breakouts. Thes...
Simplenote to Vesper
It started with a tweet from @benjaminbrooks:
Has anyone written a tool to m...
Current File Path
Sometimes I need to reference the path of the current (saved) file. Thanks to...
Finding Conventions, Establishing Standards
I’m creating a perl script that reads through all .sas files in a directory t...
We Blew It
Thomas Brand on the hoopla surrounding twitter’s new timeline:
As far as ...
getOption
SAS has a number of system options that we can access through dictionary tabl...
Benchmarking the sasload Statement
in the middle of re-writing some macro code where different datasets were bei...
On Interruptions
Last month, Ben Brooks ran a poll on his website asking readers their attitud...
Rebuilding Wide Macros
Recently I needed to pull the values of potentially long macro variables (mor...
Last Week of Quarter
A coworker recently asked me how I would identify the last week of a quarter ...
Setting %array Values Through %do_over
I’ve been using Ted Clay’s %array and %do_over macros lately. a lot. Everytim...
$329 Retina iPad Mini
Last night, the Apple store was down for something or other. This morning, I ...
A New Home
growing displeasure with another stagnant hosting provider prompts yet another move.
transactions.pl: A Mint Parser
i make mint do what i want via a custom perl script.
Convert to a [hhmmss-Type Integer to a] SAS Time - (SO)
converting time integers like 144500 into sas dates values like 2:45:00.
Pretty Note Blocks
here is how i make sas comment blocks a little less jagged.
Setting the Price Early
early disappointment with the ipad mini pricing disappears with hands-on reviews.
In the Future, I'll Only Buy Memorex Optical Media
proof that memorex optical media is the best.
writing fractions in html
a blip on making fractions more fraction-like.
SAS Global Forum 2013
SAS Global Forum proposals were due last week. Here’s mine.
A SAS Macro...
blocks, not lines
someone elightens me on “line” numbering in sas macros and i am grateful.
dates from date times
input, substring, put or datepart. whichever, really.
Too complex to edit
squarespace is dumb.
classical sas
his fifth.
The non-letterboxed keyboard
Look at this one. A letterboxed app with a non-letterboxed keyboard.
resolve function
Stumbled across a nice post on dynamic macro call using the RESOLVE() functio...
The paywall, the backdoor, and twitter
Personally, I like Ben Brooks’ writing style–both long form and even though ...
Western Users of SAS Software 2012
I was invited to submit a paperNot one to let a good paper go to waste, I als...
why i look forward to collection calls
Back in 2004, i was recently married, i was nearly finished with grad school,...
windows environment variables
a mental note for how to fetch windows environment variables in sas.
My SAS Global Forum 2012 Timeline
Monday, April 23 (7 Sessions)
Technology Connection and Keynote Presentation...
self-purging macros?
unfortunately, this doesn’t work:
%macro test;
proc catalog cat=work.sasmacr...
simulating child's play
as of late, the kids are enjoying simple, pre-risk board games. of these, i p...
getting feedback on macro parameters
adding the following code inside a macro:
%local macro; %let macro=&...
macros and the data step
recently, i had a need to use and update a macro variable within a data step....
clearing out the cruft
there’s a new minimalist todo app on the scene called clear by realmac softwa...
api upgrades
For the past year (maybe two), I’ve been refining a SOAP web service consumpt...
a small portion of a large number…
basic math on the large number that is the Romney’s 2011 tax bill.
vending machine math
Last week, Andy from NOTE: introduced me to code katas. Then he posted his fi...
my k'nex iphone stand
The kids (and I) made a pretty sweet iPhone 4/4S stand out of random k’nex pi...
the positive side of keeping all your eggs in one basket
in any work environment with multiple SAS users, the are likely common data s...
tweetbot
About six months ago, Tweetbot came to my attention–probably via the B&B ...
free app idea
an iOS app that, when connected to the home wifi network, could initiate an i...
Western Users of SAS Software 2011
My submission was accepted for presentation at the 2011 Conference of Western...
dates in datetime fields
Got date values intermingled with datetime values? Here’s a brute force way t...
continue-looping
if you’ve ever needed to stop processing a loop under certain conditions but ...
returning a well-formatted date-time
in OS X, entering this in a terminal window
date "+%A, %d%h%Y%t%l:%M%p"
wi...
the VVALUE function--like a quick PUT function
for example…
data temp;
format d yyq6.;
d='19Apr2011'd;
x=vvalue...
label carryover
a little demo on label carryover.
data a;
a=1;
b=2;
label a='from datas...
month of quarter variable
quick formula to calculate the month of the quarter (JAN, APR, JUL, OCT=1; FE...
how do i read a file's creation date?
assuming you’re on windows, you could read the output from the dos command di...
the vertical app listing
or how apple can fix the iPhone OS home screen mess
the iPhone OS home scree...
prxparse(dates)
i’ve got some odd character dates that i need to fix. here’s some examples:
...
the utility of generic macros
i’ve been using sas for roughly 5 years now. for the past few years, i’ve bee...
an mmddyyyy hhmmss informat. kinda.
a while ago, i took the hack shortcut of reading character datetime stamps in...
random dates
this is a cross posting from this sas discussion forum thread.
assuming yo...
calculating average time (duration)
this is summarizes my response to a thread on the SAS Discussion Forums.
i...
%d: a handy little macro for dynamic dating
for a little over a year now, i’ve been enjoying a little macro i wrote for w...
encoding data points for use with google charts api calls
first step, build encoding tables based on the documentation:
data encSimple...
reading overlapping text segments
if you’re in the same boat as me, you’ve got sas 9.1.3 sp4 installed under wi...
reading non-standard datetime values
another datetime posting. this time, i needed to read in datetime values with...
reading iso dates and datetimes
a while ago, i posted a method of converting YYYYMMDD-style integers to sas d...
frustrations with dashboarding in sas 9.1.3
I’ve gone through the work of creating a dashboard using SAS/GRAPH and summar...
a sudden spike
a couple weeks ago, @swaynette asked me if she could mention my post on scrap...
SAS Global Forum 2009
My submission was accepted for presentation at the 2009 conference of SAS Glo...
%expExcel
i’ve uploaded the expExcel macro to the downloads section of the sas-quatch p...
sas variable lists
last week, there was a blog post regarding the use of variable lists on varia...
scraping the sas training pages
i thought it might be fun to see if i couldn’t pull the sas training catalog ...
PROC PWDECODE
just read a posting about how to encode sas passwords. i’ve been using encode...
The Missing Format: QYY
sas has a lot of date-related formats…roman numerals, julian dates, jewish ca...
Wiping USB Drives
before you give away that usb drive, you might want to wipe it clean. here’s ...
SAS Global Forum 2008
Two submissions were accepted for presentation at the 2008 conference of SAS ...
Autosave My Day
i was modifying a program for about 4 hours when sas froze. in all that time,...
The Ugly Truth About Call Execute
let’s start off with a simple macro that spits out some text and the value of...
Let That Be a Lesson to 'Ya!
when i was young and reckless, i would change variable names to something a l...
Converting YYYYMMDD-Type Integer to SAS Date Values
converting integer dates like 20071221 to sas dates like 21DEC2007.
What's the Point of This?
i’m working on some survey data containing a few select all that apply-type i...
iTunes XML Parser
wherein i coerce sas into consuming the iTunes library xml file.
SAShboards = Dashboards in SAS?
sas finally posts some sample code for generating dashboards; this pleases me.
Calculating Period-to-Period Changes in SAS
calculating period-to-period changes with the lag function.
Pacific Northwest SAS Users Group 2007
My submission was accepted for presentation at the 2007 conference of Pacific...
ZipsNear
Just browsing through some old contributions I made to SAS Community and noti...
SAS User Group International 31
I submitted, and was accepted to present at the 31st SAS User Group Internati...
Using the ACT to Predict College Graduation
This was my Master’s Thesis (local copy).
Here’s the abstract; it’s as thril...
Science, Technology, & Engineering Preview Summer (STEPS) 2002: Summative Report
UW-Stout coordinated immersive, 3-week Summer Technology and Engineering Prev...
UW-Stout Journal of Student Research Volume 2: Alcohol and Other Drug Perceptions Survey
G. Scott Davis, Brad Griesbach, Jared M. Samuels, and myself took this on as ...
UW-Stout Research Day
For the Research for Decision Making class for Master of Science in a Applied...
UW-Stout Journal of Student Research Volume 1: The Relationship between Perceived Organizational Justice and Organizational Citizenship Behaviors: A Review of the Literature
During the first year of graduate school, I was already thinking about what I...
The Relationship Between Job Satisfaction and Job Performance
This was a class paper for Survey of Industrial/Organizational Psychology for...