It taught us from a young age that the real heroes are the ones who fix the pipes
It taught us from a young age that the real heroes are the ones who fix the pipes
*sources
WSJ article: The tax Nerd who bed his lift savings against DOGE. then a chart of the US Deficit last year.
5/ Amusing aside: evidently some people bet some serious dollars that the federal budget would SHRINK despite our blooming entitlement and interest payments.
This guy apparently cleaned house!
Government appropriations for immigration spending on agencies in 2025
4/5 Or you can look at new spending. For example, ICE is now better-funded than the FBI, Marshall's Service, Secret Service, ATF, DEA, and Bureau of Prisons... combined.
What are they buying?
3/5 Or you can track spending on specific programs.
www.politico.com/interactives...
@politico.com
2/5 Using this you can do stories on cuts in your local area.
@nbcbayarea.com
www.nbcbayarea.com/video/invest...
The two main data sources for federal government contracts: Sam.gov and USASpending.com.
1/5 Follow.
The.
Money.
If you missed this #NICAR26 talk I suggest taking a look at these slides as there's a lot of great data out there on government contracts.
tinyurl.com/NICAR26-cont...
How do they calculate fundable scores?
Eitlejorg museum
Fireplace
Lots of little mirrors
Picture of me in downtown Indianapolis
Indianapolis has a fun vibe
Vicki Nguyen introduces the price check project on the Today Show
Behind the story: 14 stations collaborated on this project. π
Coincidentally, I taught a spreadsheets course at #NICAR26 on the same day that this spreadsheet project aired after weeks in the making!
Tune in tonight to @nbcnews.com-owned stations for the local version of how to save time & money.
R folks listening to this morning's #NICAR26 session on extracting data from documents and - importantly! - how to check your results: You can set up and run evaluations of LLM results with the {vitals} #rstats π¦
www.infoworld.com/ar... #DDJ
screenshot showing visualping.io/journalists
Screenshot of NYT article: military investigation reveals how the US botched a drone strike in Kabul
This is neat: Visualping can monitor websites and has a free journalist plan!
@azmatzahra.bsky.social used this in her Pulitzer Prize-winning investigation that found unreported civilian casualties.
#NICAR26
Oh! Congrats on the baby, though!
I love this! Every day on the Internet, I see clickbait that says βpeople who succeed at XYZ have this thing in common.β And I think βugh, that doesnβt mean it CAUSED the success!β
(Also no I couldnβt stomach much coffee while pregnant.)
Thatβs fair as I didnβt specifyπ
What was this T-shirt that everyone talks so much about? When I googled it I only got this:
@ire.org
How did we peak in 2016?!π
Kids arenβt everyoneβs cup of tea, but this article misses the point- most countries for years had this same problem but the US did not until we kneecapped immigration. We should be working to keep smart, productive immigrants (like you!) in the country. Then population drop isnβt an issue.
Thank you, Laura for doing all this! So many awesome speakers.
I'm just a person
reading your online tutorial
begging you to use a real data set.
There's a reason law schools teach with real cases and business schools use stories of real companies. It's the best way to learn.
8/8 If you aren't already using Bluesky for your sanity, I suggest it in general as it makes stuff like this a lot easier.
You can, to some extent, design an algorithm of your own: github.com/walinchus/Bl...
7/8 Here is the link to everything I have just described in an .Rmd file:
github.com/walinchus/Bl...
handles <- bluesky$handle follow_everyone <- function(handle_to_follow) { bs_follow(subject = handle_to_follow, user = "walinchus.bsky.social", #switch this out with your own handle pass = Sys.getenv("BLUESKY_PASS"), auth = bs_auth("walinchus.bsky.social", Sys.getenv("BLUESKY_PASS"), save_auth = NULL), clean = TRUE) Sys.sleep(sample(1:10, 1)) #don't overwhelm things } purrr::map(handles, follow_everyone)
6/8 Then you can run this simple function I wrote to follow them all!
5/8 Make that into a data frame
get_socials <- bind_rows(socials)
And filter for bluesky:
bluesky <- get_socials %>%
filter(label=="Bluesky") %>%
mutate(handle=stringr::str_replace(url,"https://bsky.app/profile/" ,""))
4/8 Next, pull in the schedule:
NICAR2026 <- rio::import("https://ire-nicar-conference-schedules.s3.us-east-2.amazonaws.com/nicar-2026/nicar-2026-schedule.json")
Make a dataframe of all the speakers:
speakers <- NICAR2026$speakers
And get their socials:
socials <- speakers$social
3/8 First you will have to create an app.
In Bluesky, go to Settings -> Privacy and Security -> App passwords and then click the big blue button that says "Add App password."
In your _console_, type _Sys.setenv(BLUESKY_PASS=_"put your APP password here")
2/8 Note: you could also do this as a starter pack. For example, here's one I did of female date journalists: bsky.app/profile/wali...
But I did not feel like searching for all those names. This was much easier to set up!
1/8 So you're excited to go to the @ire.org 2026 NICAR data journalism conference!
And you want to follow all the speakers online. This tutorial will show you how do this quickly with #Rstats and @bsky.app.
schedules.ire.org/nicar-2026/#/
Oliver argues that nothing can be done but I respectfully disagree.
Most of the $44 billion Musk borrowed to buy Twitter will never be repaid as the site doesn't actually make much money.
Banks have a fiduciary responsibility to their shareholders to get back the money that they lend out.
Thanks, you too!
You okay?