VSPJ CONSULTING
Explore the insights
Practical perspectives on programming and data science.
SAS tip: keep partial dates and imputation separate
A technically valid date can still encode an undocumented assumption.
SAS tip: a clean log is a starting point
Automated log scanning helps, but silent analytical errors need separate checks.
R tip: declare the relationship in a dplyr join
Let a join check one of your assumptions before it changes your dataset.
R tip: distinguish all-missing from zero
Removing missing values can produce a summary that looks more informative than the data.
Shiny tip: export the context with the table
An exported result should explain which population and filters produced it.
CRAN watch: ellmer 0.5.0 and controlled LLM experiments
A September 2026 release worth evaluating for structured language-model workflows in R.
AI-assisted programming needs an evidence trail
The valuable question is not how quickly a model writes code. It is how confidently a team can review the result.
From a Shiny prototype to a trusted review tool
A dashboard is only useful when users understand the data, the calculations and the decisions it supports.
Real-world data: define the cohort before the model
Index dates, eligibility and follow-up can change the answer before a statistical model is fitted.
What I would examine before an AI model goes live
A practical technical review looks beyond a headline accuracy score to the evidence supporting a particular use.