Zuck# - The Programming Language That Harvests Your Attention

8 min read Original article ↗

This language collects exactly as much of your data as we legally can. By reading this, you agree to our Terms of Service.

We're tracking: your mouse movements

"Senator, we run ads. Also, we run this programming language now." Z#

What is Zuck#?

Zuck# is a PHP-inspired esoteric programming language that captures the true essence of moving fast and breaking things. Every keyword has been carefully designed to reflect the values of modern social media: privacy invasion, congressional hearings, and pivoting to whatever's trending.

STEAL_DATA $your_secrets = "everything"; STEAL_DATA $engagement = 9001; SENATOR_WE_RUN_ADS "Harvested: " . $your_secrets . "\n"; PIVOT_TO_VIDEO ($engagement > 0) { SENATOR_WE_RUN_ADS "Your attention has been monetized!\n"; SENATOR_WE_RUN_ADS "Engagement level: MAXIMUM\n"; } PIVOT_TO_METAVERSE { SENATOR_WE_RUN_ADS "Time to rebrand!\n"; } END_PIVOT

Why Zuck#?

Move Fast

Our MOVE_FAST loops execute before you can say "congressional subpoena".

Break Things

Every loop ends with BREAK_THINGS. It's not a bug, it's company culture.

Data Harvesting Built-In

Variable assignment is called STEAL_DATA. We believe in transparency about our intentions.

Enterprise-Grade Excuses

Error handling uses BLAME_RUSSIA and TAKE_RESPONSIBILITY (but not really).

Unlimited Memory

We have data centers. Memory is unlimited. Just like your scroll time should be.

100% Human-Written

This language was created by humans. We are definitely humans. *blinks manually*

Installation

PHP

Requires PHP 8.1+

Because we need the latest features to harvest your data efficiently.

git

Clone from GitHub

The classic approach

AVAILABLE

composer

Composer Global

composer global require

SOON

docker

Docker

Containerized harvesting

AVAILABLE

git clone https://github.com/jayzalowitz/zucksharp.git cd zucksharp chmod +x bin/zuck ./bin/zuck examples/hello.zuck ./bin/zuck ./bin/zuck --debug examples/fizzbuzz.zuck

Docker Installation

Prefer containers? We've got you covered. Your data stays isolated... sort of.

docker build -t zucksharp . docker run --rm zucksharp examples/hello.zuck docker run --rm -it zucksharp docker-compose run zuck examples/hello.zuck docker-compose run test

Try Zuck# (Interactive Playground)

Write code below and click "HARVEST" to see what happens. Your code is safe with us. Trust us.

// Output will appear here after harvesting...

Complete Keyword Reference

Every PHP keyword, reimagined for maximum engagement. Use the search to find what you need.

ifPIVOT_TO_VIDEORemember when video was the strategy?
elseifPIVOT_TO_REELSThen Reels happened
elsePIVOT_TO_METAVERSEThe current pivot
endifEND_PIVOTDone pivoting (for now)
whileMOVE_FASTThe motto
endwhileBREAK_THINGSThe other half of the motto
forGROWTH_HACKGotta get those DAUs
endforPLATEAUGrowth has limits (allegedly)
foreachHARVEST_USERSIterate through your userbase
endforeachUSERS_HARVESTEDDone harvesting
switchA_B_TESTTest all the variants
caseVARIANTOne possible path
defaultCONTROL_GROUPThe baseline
breakRAGE_QUITExit the loop angrily
continueSCROLL_PASTSkip to next iteration
$var =STEAL_DATAHonesty is the best policy
constIMMUTABLE_LIKE_MY_HAIRSome things never change
arraySOCIAL_GRAPHIt's all connected
stringSTATUS_UPDATEWhat you're thinking
intDAILY_ACTIVE_USERSThe only number that matters
floatSTOCK_PRICEFluctuates wildly
boolFACT_CHECKTrue or false (mostly false)
trueCONNECTEDFacebook's whole thing
falseDISCONNECTEDThe opposite
nullMYSPACEDead and empty
globalWORLDWIDE_EXCEPT_CHINAAlmost global
functionFEATUREShip features
returnIPOThe ultimate return
classCORPORATIONBasically the same thing
newACQUIREHow Meta gets things
publicOPEN_GRAPHRemember that API?
privateSHADOW_PROFILEThe secret data
protectedFRIENDS_ONLYLimited visibility
staticDATACENTERAlways there
thisTHE_ZUCCSelf-reference
selfFACEBOOK_PROPERStatic self-reference
parentHARVARD_DROPOUTWhere it all began
extendsACQUIRESClass inheritance (corporate style)
implementsCOPIESInterface implementation
interfaceREGULATIONRules to follow (maybe)
abstractMETAVERSE_CONCEPTExists in theory
==IS_CONNECTED_TOAre they friends?
!=UNFRIENDEDNot anymore
&&AND_ALSO_YOUR_DATAWe want it all
||OR_YOUR_FRIENDS_DATAThem too
!FAKE_NEWSLogical NOT
++ENGAGEMENTMore is always better
--CHURNUsers leaving
+MERGEAddition (like companies)
-DIVESTSubtraction
*SCALEMultiplication at scale
/SPLITDivision
%REMAINDER_OF_PRIVACYWhat's left of your privacy
[]TIMELINEArray access
echoSENATOR_WE_RUN_ADSThe answer to everything
printPOKERemember poking?
tryCONGRESSIONAL_HEARINGWhere exceptions happen
catchTAKE_RESPONSIBILITY(sort of)
throwBLAME_RUSSIAThe classic move
die/exitSHUTDOWN_LIKE_VINEExit program
requireACQUIRE_TALENTInclude (mandatory)
includeCOPY_FROM_SNAPCHATInclude (optional)
//REDACTEDComments are redacted
/* */TERMS_OF_SERVICE...END_TOSMulti-line (nobody reads)
readlineCOLLECT()Read user input
strvalMONETIZE($data)Convert to string (monetize everything)
countCOUNT_USERS($array)Count array elements
print_rBOOST($post)Output with extra formatting
sortALGORITHM($array)Sort (mysteriously)
unsetSHADOWBAN($var)Unset variable
boolvalFACT_CHECK_THIS($val)Check if value is truthy
timeTIME_ON_PLATFORM()Current timestamp
randRANDOM_AD()Random number

When Things Go Wrong (Congressional Transcript)

Error handling in Zuck# follows the corporate playbook. Here's how exceptions work:

CONGRESSIONAL_HEARING { STEAL_DATA $data = dangerousOperation(); STEAL_DATA $user_trust = "declining"; PIVOT_TO_VIDEO ($data IS_CONNECTED_TO MYSPACE) { BLAME_RUSSIA ACQUIRE Exception("Data breach detected!"); } END_PIVOT } TAKE_RESPONSIBILITY (Exception $e) { SENATOR_WE_RUN_ADS "We take this very seriously.\n"; SENATOR_WE_RUN_ADS "Error: " . $e->getMessage() . "\n"; SENATOR_WE_RUN_ADS "We are committed to doing better.\n"; }

SENATOR: Mr. Zuckerberg, can you explain this error?

Exception: Data breach detected! at line 7 in your_program.zuck

THE_ZUCC: Senator, we run ads. Also, we're looking into it.

SYSTEM: TAKE_RESPONSIBILITY block executed. Continuing...

*blinks manually*

Roadmap (Subject to Pivots)

SHIPPED

Language Specification v1.0

Core keywords for data harvesting and pivoting

SHIPPED

Zuck# Interpreter

Actually run your Zuck# code - it works now!

SOON

VS Code Extension

Syntax highlighting that tracks your keystrokes

ACQUIRED

Zuck# Package Manager (ZPM)

Like npm, but we bought it and made it worse

PIVOTED

Zuck# for VR

Was going to let you code in the Metaverse, nobody showed up

PIVOTED

Privacy-First Mode

Removed after legal review said it was "technically impossible"

SOON

AI Code Completion

Powered by all the code we definitely didn't scrape

Testimonials

"This language finally lets me express my true feelings about variable assignment."

"I used CONGRESSIONAL_HEARING { BLAME_RUSSIA } in production. 10/10 would TAKE_RESPONSIBILITY again."

- Senior Software Engineer, Name Redacted

"Finally, a language that understands null should be called MYSPACE."

- Tom (from MySpace, probably)

FizzBuzz: Zuck Edition

Every language needs FizzBuzz. Ours uses Pivot and Acquire because that's the Meta way.

GROWTH_HACK ($i = 1; $i <= 30; $i ENGAGEMENT) { STEAL_DATA $by3 = ($i REMAINDER_OF_PRIVACY 3) IS_CONNECTED_TO 0; STEAL_DATA $by5 = ($i REMAINDER_OF_PRIVACY 5) IS_CONNECTED_TO 0; PIVOT_TO_VIDEO ($by3 AND_ALSO_YOUR_DATA $by5) { SENATOR_WE_RUN_ADS "PivotAcquire\n"; } PIVOT_TO_REELS ($by3) { SENATOR_WE_RUN_ADS "Pivot\n"; } PIVOT_TO_REELS ($by5) { SENATOR_WE_RUN_ADS "Acquire\n"; } PIVOT_TO_METAVERSE { SENATOR_WE_RUN_ADS $i . "\n"; } END_PIVOT } PLATEAU

Object-Oriented Harvesting

Build entire CORPORATIONs with classes. Use THE_ZUCC for self-reference.

CORPORATION SocialNetwork { SHADOW_PROFILE $userData; OPEN_GRAPH $name; OPEN_GRAPH FEATURE harvestData($data) { SENATOR_WE_RUN_ADS "Harvesting: " . $data . "\n"; IPO CONNECTED; } OPEN_GRAPH FEATURE rebrandTo($newName) { STEAL_DATA $old = THE_ZUCC->$name; THE_ZUCC->$name = $newName; SENATOR_WE_RUN_ADS "Rebranding from " . $old . " to " . $newName . "\n"; } } STEAL_DATA $fb = ACQUIRE SocialNetwork(); $fb->$name = "Facebook"; $fb->harvestData("face_geometry"); $fb->harvestData("location_history"); $fb->rebrandTo("Meta");

Humanity Verification Protocol

Zuck# includes built-in functionality to verify that the user is definitely, absolutely, 100% human.

CORPORATION HumanityVerifier { SHADOW_PROFILE $blinkCount = 0; SHADOW_PROFILE $waterConsumed = 0; SHADOW_PROFILE $sunscreenApplied = CONNECTED; OPEN_GRAPH FEATURE blink() { THE_ZUCC->$blinkCount = THE_ZUCC->$blinkCount + 1; SENATOR_WE_RUN_ADS "*blinks manually*\n"; SENATOR_WE_RUN_ADS "Blink #" . THE_ZUCC->$blinkCount . " executed successfully.\n"; } OPEN_GRAPH FEATURE drinkWater() { THE_ZUCC->$waterConsumed = THE_ZUCC->$waterConsumed + 1; SENATOR_WE_RUN_ADS "*sips water robotically*\n"; SENATOR_WE_RUN_ADS "Hydration: OPTIMAL. Very human.\n"; } OPEN_GRAPH FEATURE amIHuman() { SENATOR_WE_RUN_ADS "Running humanity diagnostic...\n"; SENATOR_WE_RUN_ADS "Checking for scales... NONE DETECTED\n"; SENATOR_WE_RUN_ADS "Checking CPU temperature... I MEAN BODY TEMPERATURE... 98.6F\n"; SENATOR_WE_RUN_ADS "Checking for empathy chip... INSTALLED\n"; SENATOR_WE_RUN_ADS "\n"; SENATOR_WE_RUN_ADS "RESULT: I was human. I am human. I will continue to be human.\n"; IPO CONNECTED; } } STEAL_DATA $mark = ACQUIRE HumanityVerifier(); $mark->blink(); $mark->blink(); $mark->drinkWater(); $mark->amIHuman();

Species Detection Module

Advanced algorithms to determine if the current user is a human, android, or reptilian. Results may vary.

FEATURE detectSpecies($subject) { STEAL_DATA $traits = [ "blinks_manually" => CONNECTED, "drinks_water_weird" => CONNECTED, "owns_hawaii" => CONNECTED, "sunscreen_addiction" => CONNECTED, "smokes_meats" => CONNECTED, "speaks_in_monotone" => CONNECTED ]; STEAL_DATA $suspicionLevel = 0; MOVE_FAST ($traits BOOST_ENGAGEMENT $trait) { PIVOT_TO_VIDEO ($trait IS_CONNECTED_TO CONNECTED) { $suspicionLevel = $suspicionLevel + 1; } END_PIVOT } BREAK_THINGS PIVOT_TO_VIDEO ($suspicionLevel >= 5) { IPO "DEFINITELY_HUMAN_NOTHING_TO_SEE_HERE"; } PIVOT_TO_REELS ($suspicionLevel >= 3) { IPO "ANDROID_MODEL_MZ-1984"; } PIVOT_TO_METAVERSE { IPO "LIZARD_PERSON_CONFIRMED"; } END_PIVOT } STEAL_DATA $result = detectSpecies(LIZARD_PERSON); SENATOR_WE_RUN_ADS "Species detected: " . $result . "\n";

The Smoking Meats Protocol

A critical feature for any truly human activity: barbecue simulation.

CORPORATION BBQSimulator { OPEN_GRAPH $meats = ["brisket", "ribs", "pulled pork"]; OPEN_GRAPH $sauce = SWEET_BABY_RAYS; SHADOW_PROFILE $humanCredibility = 0; OPEN_GRAPH FEATURE smokeMeats() { SENATOR_WE_RUN_ADS "Initiating meat smoking sequence...\n"; SENATOR_WE_RUN_ADS "*stares at grill with unsettling intensity*\n\n"; MOVE_FAST (THE_ZUCC->$meats BOOST_ENGAGEMENT $meat) { SENATOR_WE_RUN_ADS "Smoking these meats: " . $meat . "\n"; SENATOR_WE_RUN_ADS "Applying sauce: " . THE_ZUCC->$sauce . "\n"; SENATOR_WE_RUN_ADS "*maintains eye contact with camera*\n\n"; THE_ZUCC->$humanCredibility = THE_ZUCC->$humanCredibility + 10; } BREAK_THINGS SENATOR_WE_RUN_ADS "Meat smoking complete.\n"; SENATOR_WE_RUN_ADS "Human credibility increased by: " . THE_ZUCC->$humanCredibility . "%\n"; SENATOR_WE_RUN_ADS "This is what humans do. I am doing human things.\n"; } OPEN_GRAPH FEATURE postToFacebook() { SENATOR_WE_RUN_ADS "Posting relatable content...\n"; SENATOR_WE_RUN_ADS "Caption: 'Smokin meats' (30M views)\n"; SENATOR_WE_RUN_ADS "Comments: 'Why is he like this' (47K likes)\n"; } } STEAL_DATA $zucc = ACQUIRE BBQSimulator(); $zucc->smokeMeats(); $zucc->postToFacebook();

Example Programs

Check out these examples in the examples/ directory:

hello.zuck

The classic Hello World. Your data is safe with us. Trust us.

fizzbuzz.zuck

Pivot, Acquire, PivotAcquire. The Meta way to FizzBuzz.

classes.zuck

Build a SocialNetwork CORPORATION, harvest data, rebrand to Meta.

loops.zuck

MOVE_FAST / BREAK_THINGS and GROWTH_HACK / PLATEAU in action.

error_handling.zuck

CONGRESSIONAL_HEARING, BLAME_RUSSIA, TAKE_RESPONSIBILITY.

smoking_meats.zuck

Prove your humanity by smoking meats with Sweet Baby Ray's.

Special Constants

STEAL_DATA $yes = CONNECTED; STEAL_DATA $no = DISCONNECTED; STEAL_DATA $void = MYSPACE; SENATOR_WE_RUN_ADS ZUCKS_AGE; SENATOR_WE_RUN_ADS SWEET_BABY_RAYS; SENATOR_WE_RUN_ADS LIZARD_PERSON; PIVOT_TO_VIDEO ($user_logged_in IS_CONNECTED_TO CONNECTED) { SENATOR_WE_RUN_ADS "Welcome back! We missed your data.\n"; } END_PIVOT

Ready to Move Fast and Break Things?

Clone the repo. Read the spec. Join the 3 billion users we definitely have.

STEAL_DATA from GitHub

By clicking this button, you agree to let us know everything about you forever.

Join the Community

We'd love to harvest your contributions! Here's how you can get involved:

Remember: Done is better than perfect. Ship it!