# The Curious Case of Steve Ballmer

Steve Ballmer is the ex-CEO of Microsoft, and in a recent article, claimed that he "still does not know what he did wrong with mobile".

As CodeProject's newsletter pointed out, "That article's title could be ended at so many spots and still be accurate".

Given no input, output the following:

Steve Ballmer still does not know.
Steve Ballmer still does not know what he did.
Steve Ballmer still does not know what he did wrong.
Steve Ballmer still does not know what he did wrong with mobile.

This must be outputted exactly as shown, and must be the only output of your program. You may include a single trailing newline.

This is so fewest bytes in each language wins

• When I saw the title / tags I thought that the output would be developers developers ...
– Rod
Jun 1, 2017 at 12:30
• tcl, 25while 1 {puts developers}demo Jun 1, 2017 at 13:29
• braingolf, 23 - 1"developers "[!@11 1>] :P Jun 1, 2017 at 13:31
• And I thought of xkcd's Ballmer Peak
– ojdo
Jun 1, 2017 at 15:51
• yes, 14yes developers Jun 6, 2017 at 0:12

# Charcoal, 71 69 bytes

Ａ⟦⟧βＦ⪪”↓/‘ZQ≔'Ｗε}÷＆’/↗∧μ~⎇²~ηρπ‖¢β\σuσＩ⌀δ#″:§▶¬QγγＱＺ–” w⁺⪫⊞Ｏβι w¦.¶

Try it online! Link is to verbose version of code, with some separators omitted because deverbosifier can't do it automatically. This is basically a port of @KevinCruijssen's answer.

# ><>, 135 bytes

".wonk ton seod llits remllaB evetS"\
l?!\o99+2*1./"h tahw  "32p10pao     \
52p\".did e"/"   "53p33p
/\".gnorw"/
1p/\".elibom htiw;"3

This basically goes through the string, prints then replaces the fullstop and conditionals with spaces to keep moving along the code.

It may be best to visualise it using the below ><> pond link;

><> pond!

Try it online!

• It never occurred to me that know spelled backwards is wonk. Jun 1, 2017 at 15:40
• @DigitalTrauma Well, now you wonk Jun 1, 2017 at 15:40

# Mathematica, 108 104 bytes

"Steve Ballmer still does not know what he did wrong with mobile"~StringTake~#~Print~"."&/@{33,45,51,63}

-4 bytes from Martin

Perl, 98 bytes

for('Steve Ballmer still does not know',' what he did',' wrong',' with mobile'){$s.=$_;say "$s."} (Run via perl -M5.10.1 ... so that "say" will be recognized) • According to J B's tip, you can rewrite it as say$s.="$_."for'Steve Ballmer …. Jun 8, 2017 at 16:09 • You can shrink to 89 bytes with this, but can't think of much more to do to shrink it! Feb 20, 2018 at 16:41 • Down to 85! Try it online! Jan 11 at 22:34 # Retina, 82 bytes ABCC with mobile. C B wrong B .¶A what he did A Steve Ballmer still does not know Try it online! # Rust, 145 bytes ||{for i in b"!-3?"{println!("{}.",&"Steve Ballmer still does not know what he did wrong with mobile".to_owned().get(..*i as usize).unwrap());}}; Inspired by this solution. Try it online! # Julia 0.6, 99 bytes Generate the 4 desired strings with cumprod (* is string concatenation). Tack on a period with a broadcasted string concatenation .* and print all elements in the list with a broadcasted call println.. println.(cumprod(["Steve Balmer still does not know"," what he did"," wrong"," with mobile"]).*".") Try it online! # Unix TMG, 145 bytes p:parse(b)b:=(1){<Steve Ballmer still does not know>$1<.>*}=(1){1({< what he did>$1})}=(1){1({< wrong>$1})}={3({})2({})1({})1({< with mobile>})};

With some white spaces:

p:parse(b)
b:=(1){<Steve Ballmer still does not know>$1<.>*} =(1){1({< what he did>$1})}
=(1){1({< wrong>$1})} ={3({}) 2({}) 1({}) 1({< with mobile>})}; # 05AB1E, 43 bytes ”™¸ïßmer”“„â‚à€–ƒ€“…€À€½ƒ§'–Ñ„€Ž†©)η¦ðý'.«» Try it online! # Deadfish~, 1507 bytes {{i}dd}iiic{iii}iiic{d}dddddc{ii}dddc{dd}iiic{{d}iii}ic{iii}iiiic{iii}ic{i}iccic{d}iic{i}iiic{{d}ii}ddc{{i}dd}iiicic{d}dciiicc{{d}iii}ddddddc{{i}ddd}ddc{i}ic{d}c{i}iiiic{{d}ii}dddc{{i}dd}ddciciiiiic{{d}ii}ddddc{{i}ddd}iiiiiciiicic{i}ddc{{d}iii}dddc{ddd}ddddddc{{i}ddd}iiic{iii}iiic{d}dddddc{ii}dddc{dd}iiic{{d}iii}ic{iii}iiiic{iii}ic{i}iccic{d}iic{i}iiic{{d}ii}ddc{{i}dd}iiicic{d}dciiicc{{d}iii}ddddddc{{i}ddd}ddc{i}ic{d}c{i}iiiic{{d}ii}dddc{{i}dd}ddciciiiiic{{d}ii}ddddc{{i}ddd}iiiiiciiicic{i}ddc{{d}i}iiic{{i}d}dddc{d}dddddc{d}iiic{ii}dc{{d}ii}ddddc{{i}ddd}iicdddc{{d}iii}ic{{i}ddd}ddciiiiicdddddc{ddddd}ddddc{ddd}ddddddc{{i}ddd}iiic{iii}iiic{d}dddddc{ii}dddc{dd}iiic{{d}iii}ic{iii}iiiic{iii}ic{i}iccic{d}iic{i}iiic{{d}ii}ddc{{i}dd}iiicic{d}dciiicc{{d}iii}ddddddc{{i}ddd}ddc{i}ic{d}c{i}iiiic{{d}ii}dddc{{i}dd}ddciciiiiic{{d}ii}ddddc{{i}ddd}iiiiiciiicic{i}ddc{{d}i}iiic{{i}d}dddc{d}dddddc{d}iiic{ii}dc{{d}ii}ddddc{{i}ddd}iicdddc{{d}iii}ic{{i}ddd}ddciiiiicdddddc{{d}iii}iic{{i}d}dddcdddddcdddcdc{d}iiic{dddddd}iiic{ddd}ddddddc{{i}ddd}iiic{iii}iiic{d}dddddc{ii}dddc{dd}iiic{{d}iii}ic{iii}iiiic{iii}ic{i}iccic{d}iic{i}iiic{{d}ii}ddc{{i}dd}iiicic{d}dciiicc{{d}iii}ddddddc{{i}ddd}ddc{i}ic{d}c{i}iiiic{{d}ii}dddc{{i}dd}ddciciiiiic{{d}ii}ddddc{{i}ddd}iiiiiciiicic{i}ddc{{d}i}iiic{{i}d}dddc{d}dddddc{d}iiic{ii}dc{{d}ii}ddddc{{i}ddd}iicdddc{{d}iii}ic{{i}ddd}ddciiiiicdddddc{{d}iii}iic{{i}d}dddcdddddcdddcdc{d}iiic{{d}iii}dc{{i}d}dddc{d}ddddc{i}ic{d}ddc{{d}iii}ddc{{i}dd}dddciic{d}dddc{i}dddciiic{d}iiic{ddddd}dddddc Try it online! # Stax, 38 37 bytes ¥úσÆ}≡ër↑←â .M)↨\7╒°1╕J°Y¥₧iC+F.ifd┼$

Run and debug it

• should be 37 removing the swap s Jan 13 at 6:03
• Quite right. Thanks. Jan 13 at 18:57

## QBIC, 95 bytes

?@Steve Ballmer still does not know+@.?A+@ what he did+B?A+C+@ wrong+B?A+C+D+@ with mobile.

# Clojure(script), 122 bytes

(print(apply str(interpose"\n"(reductions str"Steve Ballmer still does not know"[" what he did"" wrong"" with mobile"]))))

puts [set S "Steve Ballmer still does not know"].\n[set h "$S what he did"].\n[set w$h\ wrong].\n$w\ with\ mobile. Try it online! # Pyth - 98 K." w!ZÑ±§ÑÔæý^àV;KæM×ü1A_4ÿ"J" what he did"A," wrong"" with mobile"=N\.+KN++KJNs[KJGN)s[KJGHN The first string is a packed string # Fission 2, 109 107 bytes R"Steve Ballmer still does not know"J2~~$$" what he did"J1~" wrong"J0" with mobile."* /0C+$$J1C+$\$J2C@"."N

Try it online!

I was a little annoyed at the amount of whitespace in the previous Fission answer, so I decided to see if I could make it smaller.

# GolfScript, 82 bytes

4,{"Steve Ballmer still does not know
what he did
wrong
with mobile"n/\)<"."n}/

This can be considered "19 bytes" since that's the actual code.

4,{"nnn"s/\)<"."n}/ are all the excess characters that actually make the code itself.

Try it online!

Very happy with this. Splits along newlines, then adds the next element one at a time with a period until everything is printed. Lovely.

Explanation!

First of all, we have to acknowledge the string.
It's split along newlines right where we want the breaks to be.
This will be important.

For the explanation, our string is S.

4,{Sn/\)<"."n}/
4,              #Make an array [0 1 2 3]
{          }/ #For each of those elements...
Sn/          #Take our string and split it along newlines
\         #Move our number-element to the front of the stack
)        #Increase it by 1
<       #Look at a number of parts of the split string eq. to that num
"."    #Put a period after
n   #Newline
#Implicit "print the stack" at the end of creation. No quotes.

# Python 3, 97 bytes

["Steve Ballmer still does not know what he did wrong with mobile"[:i]+"."for i in [33,45,51,63]]

Try it online!