POPULARITY
In classic 1940s Hollywood, aspiring screenwriter Fiona Cross discovers the pitfalls of writing remakes - including, perhaps, romance with an undying legend of the silver screen. Written and Produced by Julie Hoverson Cast List Fiona Cross - E. Vickery Victor Malacard - Cole Hornaday George - Jerry Bennett Margie - Kristina Yuen Andy - Michael Faigenblum Additional Voices - Rhea Lutton, Julie Hoverson, Reynaud LeBoeuf Music: Gabriel Garcea (gagamusic.eu) (also available on Jamendo) 19 Nocturne Theme: Kevin MacLeod (Incompetech.com) Editing and Sound: Julie Hoverson Sound effects found on Soundsnap.com Recorded with the assistance of Ryan Hirst of Neohoodoo Studio Cover Photos: (courtesy of Stock Xchange.com) "What kind of a place is it? Why, it's a movie studio office - can't you tell? Where else would you find... a screenwriter?" _______________________________________________ HOUSEWARMING Cast: [opening credits/Olivia] Fiona Cross, screenwriter George Webber, producer Victor Malacard, actor/director Margie, best friend Mason, butler Andy, a Messenger Instructor voice, on P.A. Landlady OLIVIA Did you have any trouble finding it? What do you mean, what kind of a place is it? Why, it's a film producer's office, can't you tell? SCENE 1 MUSIC SOUND EFFICIENT TYPING, PHONES IN THE BACKGROUND GEORGE The bad news is -it's really very good. FIONA [excited] Wonderful! [waitaminute] That's the bad news? GEORGE Yup. Because we can't use it. SOUND SHEAF OF PAPERS TOSSED ONTO TABLE. FIONA What? But ...but Mr. Webber, you said it was GEORGE Practically brilliant. I'll even read your next one, and I don't say that often. [pauses, thinks] Ever. But, Miss Cross... you should know by now that writing remakes is a complete waste of time. There's all sorts of issues. We don't want to get sued. FIONA But The House on the Peak was made- GEORGE Twenty-odd years ago. It's still dicey. Whoever owns it could sue us, and after that fiasco at Champion pictures last year... We're taking no chances. We're not Metro-Goldwyn-Mayer, you know. FIONA If ... what if I could make an arrangement with the owner? Would you still be interested? GEORGE [cagey] Well, I said it was good, but I never actually said I was interested. [beat] Come back when you've got a signature. MUSIC BRIDGE SCENE 2 SOUND TINNY PHONOGRAPH MUSIC INSTRUCTOR [off mike throughout] And lift. One. Two. FIONA [puffing slightly throughout] All that work! MARGIE [puffing slightly throughout] Goodness, Fiona, didn't anyone ever tell you never adapt? INSTRUCTOR ...five and six. Arms up! FIONA I guess I figured the studio would handle all that. MARGIE [teasing] Did you just drop off the turnip truck -Oh, sorry, the porkchop truck. INSTRUCTOR ...seven and eight -keep them up! FIONA [teasing back] You just watch it, we Piggottsville girls are tough! [puffs a bit] Now I just have to get up the nerve. MARGIE [sarcastic] Nerve? YOU? I can't imagine! INSTRUCTOR [off] I hear someone talking! FIONA [whispered] Enough nerve to go and talk to Victor Malacard. MUSIC BRIDGE SCENE 3 SOUND CAR DRIVES AWAY. WOODSY NOISES FOOTSTEPS ON GRAVEL. FIONA OK, Fee. Let's see what you've got. Scene: Heroine walks up to big spooky house. She is nervous. Almost trembling -wait, no scratch that. She is resolved, plucky. Much better. SOUND CREAK OF WOOD, BIRD CALL FIONA [slightly spooked] Or not. Come on, Fee. You can DO this. Plucky heroine, for goodness sake. Pluck up. SOUND FOOTSTEPS ON GRAVEL. FIONA What a scene. Artfully disheveled garden. Overgrown and dried out fountain. Huge mansion in exactly the proper state of dilapidation. [tries to laugh] I should be taking notes. SOUND FOOTSTEPS ON WOOD STAIRS FIONA [practicing] Mr. Malacard, I am such a big fan of--No, I'm sure he hears THAT all the- SOUND FOOTSTEPS SLOW DOWN, THEN STOP. FIONA [firm] Mr. Malacard. I have a proposition for--Oh pooh! [ingratiating] Mr. Malacard. How wonderful to finally meet- SOUND DOOR CREAKS OPEN. FIONA [gasp] MASON [spooky and unwelcoming] May I help you? FIONA [muttered] I bet you get a lot of these roles. MASON Hmm? FIONA Sorry. Nothing. I would like to speak to Mr. Malacard. MASON No. SOUND DOOR SLAMS SHUT. FIONA What? Aren't you supposed to say something like [aping his voice] "I'm afraid Mr. Malacard... isn't himself today." [normal voice] and give me a chance to argue with you? [pause] Huh? SOUND TWO FOOTSTEPS ON WOOD, THEN SHE SITS ON THE STAIR WITH A CREAK. FIONA [calling over her shoulder] Very well, then. I'm not leaving. I'll just sit here until the spiderwebs grow up over me and I become part of the set! SOUND BIRDS. FIONA [muttered] Or at least until I get up the nerve to walk back to town. [sigh] Well, it's kind of nice here, anyway. Peaceful. [takes a couple of deep breaths] SOUND FOOTSTEPS ON GRAVEL APPROACH VICTOR [coming on mike] Can I help you? FIONA What? Oh! [noises, as she stands] Mr. Mal--Wait. You can't be--I'm confused. VICTOR [chuckles] I look just like him, don't I? I'm Victor Malacard the lesser. Call me Vic. FIONA Fiona Cross. I'm so pleased! I'm a writer, you see, and-15 VICTOR [cold] So sorry. Father doesn't give interviews. FIONA Oh, no -I'm a screenwriter. I wrote a wonderful script- VICTOR [perturbed] He doesn't act any more, either. FIONA Does he let people finish their sentences? VICTOR [chuckling in spite of himself] All right. Just point to me when it's my cue. FIONA [deep breath] I wrote a new version of The House on the Peak, your father's masterpiece, and I would very much like to get it produced- FIONA --because I spent a lot of time on it, and I know he would be flattered if he could only read it, because, well, the original was brilliant, but most people DO like sound nowadays, and this would bring his work back for more people to see, and if I could just get his permission, I have a studio which is VERY interested. VICTOR [pause] My turn? Then... all right. FIONA All right then, what? VICTOR Let me read it. I'll see if it's all you say it is. FIONA But your father- VICTOR Is old and very ill -one reason I cannot let anyone into the house. I have all the authority necessary. I assume you brought your script? FIONA Oh, yes! SOUND SNAPS OPEN SHOULDERBAG, PULLS OUT SHEAF OF PAPERS. FIONA Really, I'm a much better writer than I must sound like, from the way I talk. I just get really- SOUND A COUPLE OF PAGES FLIP VICTOR Come back in a couple of days. Saturday. FIONA Oh, no! I've heard that one before. It's not so late, I'll wait while you read it. [BEAT] Besides, I need to borrow your phone to call a cab. VICTOR [cold] I'm afraid you're doomed to disappointment on many levels, Miss Cross. I refuse to read on demand, and you cannot come in. FIONA But it's miles to the nearest- VICTOR You'd better start walking. I will see you on Saturday. MUSIC TIME PASSES SCENE 4 SOUND DOOR OPENS. CRACKLE OF WAXED PAPER. VICTOR [warning] I am not going to--[surprised] What is that? FIONA Lunch. You're not going to what? VICTOR You brought - FIONA If there's one thing that Hollywood taught me, it's come prepared for a siege. You're lucky I didn't have time to make pastrami and onion sandwiches, though they work a whole lot better in an office. VICTOR Work... better? FIONA Nothing like the chance you might stink up someone's office to motivate them to give you five minutes. VICTOR [chuckles] FIONA Want some? VICTOR What? Oh, no -I've eaten. FIONA [snort] Hospital food, I bet -all bland and toothless. It's always like that when someone in the house is sick. VICTOR No, [sighs, then, resigned] no -if there's one thing Mason makes certain of, it's that the food is good. FIONA That your butler? Or is he some kind of nurse? VICTOR Some kind... um, something. FIONA [bright, teasing] So, did you read it yet? VICTOR There's hardly been time- FIONA [Sweetly] Then why waste it talking to me? VICTOR [sad] It's not something I get to do very often. Talking. To someone. FIONA Read the script, and I promise I'll come back and talk up a storm. SOUND DISTANT THUNDER VICTOR [sigh, pause] Speaking of storms, it looks like rain. If you need to walk back to town, you'd best get started. FIONA I'm a farm girl. We're built tough. And reasonably waterproof. VICTOR [chuckle ruefully] SOUND DOOR SHUTS. MUSIC TIME PASSES SCENE 5 SOUND CRICKETS, NIGHT SOUNDS, RAIN [a beat] DOOR OPENS VICTOR Tsk. Do you know what time it is? FIONA Judging from the position of the stars, what little I can see of them -my watch says about 9. VICTOR [a beat, then] I read it. FIONA [gasps, then tight] And? VICTOR It's brilliant. FIONA Really? VICTOR Here's your release. My lawyer can validate it in the morning. FIONA Oh! I could kiss you [SHE DOES] VICTOR [shaken] I... Miss Cross...! FIONA Fiona. You know, you really do look like your father. You're lucky. He was really something, back in the day. It's those eyes. VICTOR Yes, I... [with emphasis] He... SOUND CAR APPROACHES, STOPS. VICTOR What? Who the devil--? FIONA My cab. I arranged for it to pick me up at 9. Siege or not, I'm not sleeping on anyone's doorstep but my own. Thanks again! SOUND RUNNING FOOTSTEPS ON GRAVEL. FIONA [off] ...and if you're ever in town...! VICTOR [yelling slightly] Of course...! SOUND CAR DOOR SLAMS SOUND HOUSE DOOR SQUEAKS OPEN. VICTOR [sadly to self] ...not. SOUND SLOW FOOTSTEPS ACROSS THE PORCH. MUSIC SCENE 6 SOUND TENNIS, CROWD, IN BACKGROUND THROUGHOUT. MARGIE So, they loved it. Did you write yourself a part? FIONA What? MARGIE Oh, come on-don't tell me you only aspire to be the pen and not the face? FIONA I just enjoy writing. I'm in complete control of the world. Everyone in my story has to listen to me and do what I say. MARGIE But acting is where the fame is. FIONA Who wants fame? VOICE ON P.A. [filter] Number 33, Court 1 is open. MARGIE Are we getting close? SOUND RUSTLE OF PAPER FIONA Should be next. MARGIE So you're in it for the money? FIONA No... I guess... I'm in it to ... to see it happen. MARGIE [pause] Are you explaining or should I order another drink? FIONA I want to see things from my imagination up there on the screen. I want to create something that people will remember. MARGIE And you don't want to be famous or rich? You're nuts. FIONA Rich would be OK, but famous just means you never get away. That must be why Mr. Malacard lives out in the country -to get away from the craziness. MARGIE Craziness? In Hollywood? Perish the thought! [pause] So, can I have your part? FIONA [laughs] There aren't really any good female roles in the House on the Peak. MARGIE Will I sound hopelessly undereducated if I admit I've never actually seen this fabulous item? FIONA You never--? Where did you grow up, a cave? I mean even in Piggottsville, it showed for three whole nights -and then each year near Halloween. I think the theater proprietress musta had a thing for Malacard. MARGIE Spare me the down home gossip and tell me about this masterpiece. FIONA Well, it's sort of modeled on this story by Edgar Allen Poe- MARGIE Didja have to get permission from him, too? FIONA Shush. He's been dead for -I dunno, a century? Besides, it's not really the same idea, just the tone. See, there's this guy who goes home after his father's death, to see his twin brother who he hasn't seen in years- MARGIE Which one was your mysterious actor? FIONA Oh, Victor Malacard played both brothers. It was groundbreaking at the time -using cutaways and doubles- MARGIE Is this important? FIONA [chuckles] I guess not. But the brother who'd been away was a man of the world, very caught up in business, and the one who stayed was a strange lonely man who talked to himself- MARGIE [sarcastic] In a silent film, no less. FIONA [agreeing] Malacard was a genius. They've got their eye on this new fellow -he was in that film, "Laura"- MARGIE Stick to the point! FIONA Tsk. So it turns out the house is alive, and must have a family member in residence or it will die. But the one who stayed would live forever, barring falling out of a window, which is what'd happened to their father. MARGIE Foul play? FIONA You got it -turns out one of the sons had killed dear old dad to take his place as head of the family, and live forever. MARGIE Was it the creepy one? VOICE ON P.A. [filter] Number 34, court 3 is open. SOUND GLASS PUT DOWN, BAGS SNATCHED UP FIONA I'll tell you whodunnit... but only if you beat me. MUSIC SCENE 7 SOUND CAR DOOR SLAMS. FEET ON GRAVEL. FEET SLOW DOWN. FIONA Oh. Hullo! SOUND CAB DRIVES AWAY VICTOR I heard you coming. FIONA Oh, and here I thought old Igor your butler was a warlock or something. VICTOR Mason is a lot of things, but--[pause] What's that? More scripts? FIONA No, silly. It's a picnic. VICTOR A what--? FIONA Pic. Nic. Food to eat outside so as not to bother those inside whom shall not be named. VICTOR But, you- FIONA I promised I would talk up a storm, didn't I? If Hollywood taught me one thing, it's to keep my promises. VICTOR Well. [bemused, but pleased] Very well, then. SOUND FOOTSTEPS ON GRAVEL. DOOR OPENS [OFF]. MASON [off] Sir? VICTOR [calling] Don't worry, I'll stay where you can see me. MASON [off] Very good, sir. FIONA Wow, he sure keeps you on a short leash. VICTOR [deep with meaning] So true. FIONA Well, this looks good -and see, there's a window right there where your keeper can peep out and make sure nothing improper happens. SOUND BLANKET SPREAD, THINGS BEING TAKEN OUT OF PICNIC BASKET VICTOR [deep sigh] FIONA [sincere] I do understand. My gramma raised me -she was from the old country, very wild Irish, and hospitals would never, never do. So when she took ill at the end, I had to look after her. And the farm. Just the two of us, right up til she passed. VICTOR So being tired of the sticks, you came right out to Hollywood, no training wheels or anything? FIONA Oh, I figure I'll go back someday -not to the farm, but to the country. Being down here -well, down there -is tough -there are so many people everywhere. VICTOR Better than being lonely- FIONA You can be lonely in a crowd just as easy as on a farm, and it's much noisier. The crowd, I mean. VICTOR More material for your writing. FIONA I don't agree. I figure growing up pretty much alone is why I have such a good imagination. Keeping myself occupied, making up folks to talk to. VICTOR [moving in romantically] And you enjoyed my --my father's film so much that you decided to put words to it? FIONA [slightly breathless] I... I didn't so much write them as sort of translate what he already said. VICTOR [deep and husky] And very well too. FIONA [gasp, deeply important] Before this goes any further, I have to say something. VICTOR [snapping out of it] I--we--of course, we shouldn't- FIONA Since the studio is picking up the cost of lunch, we have to talk business. I hope you don't mind. VICTOR [vastly relieved, deep breath] Of course. Mm, that smells good. No pastrami and onions? FIONA [laughing] No. [serious] See, the studio wants to know if we can add a girl -a romance -to the story. Seems everything just has to have a love interest these days. VICTOR [sharp] A what? FIONA And a happy ending. They don't want- VICTOR No! Under no circumstances! They're not going to ruin my--[through gritted teeth] my... father's vision -with sentimental claptrap. FIONA [teasing] Really? Sentimental claptrap is all the rage nowadays. [change of tone, satisfied] Good. That's what I thought, but they won't listen to me. Business over. VICTOR But you- FIONA Oh, don't get me wrong, I like romance as much as the next girl, but it would weaken the drama. Try a taste of this. VICTOR Um, yes. [takes a bite] That's -mmm, that's delicious. The drama, you say? Have you been writing for very long? FIONA This is my first script. That I've completed, anyway. I've got lots of ideas, but this one just sort of made me finish it. It's a bit of an obsession, I guess. VICTOR You should write more. It was very good. [pause, then throaty] Maybe... romance... next time. FIONA [oblivious] Maybe. I guess it's easier to write what you know, though. VICTOR [still making his move] Really? No romance on the horizon, no beau back home on the farm? FIONA [reacting, almost breathless] No -no one. I've ... never... not really, anyway... Oh. [long indrawn breath, then a teasing whisper] Your butler's watching us. VICTOR [breaks away] Blast! I can't even--! [muttered growl] Look at him. [heavy sigh, then businesslike] This has been very pleasant, Miss Cross, but I must go- SOUND GETS UP, FOOTSTEPS ON GRAVEL, MOVING QUICKLY FIONA Hmph? SOUND BITING A CARROT MUSIC SCENE 8 SOUND BUSY LUNCH COUNTER MARGIE So do you make a habit of scaring off men? FIONA Well -there was this boy back at Jefferson junior high ... No, I'm teasing. I've never had much of a chance to try -guess I'm just a natural. MARGIE And he was circling in for the kill, ready to land a knockout, when- FIONA The ref appeared and he threw in the towel. You don't usually think of grown men as needing a chaperone. MARGIE Maybe he's old fashioned and is trying to look out for your reputation or something. FIONA Old fashioned I would buy. He's got this courtly way about him...just like his father, at least the way he was on the screen. This sort of graceful way of moving that expresses so much. MARGIE And what was he expressing just before the bell rang to call the match? FIONA Well... [blushing] He wasn't afraid -I can say that for sure. MUSIC SCENE 9 SOUND CAR DRIVES AWAY, FEET ON GRAVEL VICTOR You found your way back? FIONA The picnic was to thank you. Now I'm buttering you up in case I want to remake another one of your father's films. VICTOR So what's in the bag this time? Dare I guess? FIONA No, silly. It's a surprise. I figure, not leaving the house much, you don't get to have a lot of fun. VICTOR My... father- FIONA Exactly. So, I figured I'd bring the some to you. VICTOR Fun? FIONA I remembered you had a swimming pool. VICTOR Pool? But--But there's no water- FIONA And swimsuits don't clank. SOUND CLANK OF SOMETHING METAL IN BAG VICTOR Then, what--? FIONA We-e-ell, can we go look at the pool? VICTOR Uh--yes? SOUND FEET ON GRASS FIONA I hope you don't mind my coming up here like this. I'm just so exuberant. Or is that the right word? VICTOR Well, you sound exuberant to me. FIONA Aha, the pool. Oh, good, it's nice and clean. VICTOR Mason sees to the grounds as well as the house. FIONA So, here. SOUND CLANK AS BAG IS SET DOWN, UNTYING OF KNOT VICTOR I--I'm intrigued. What do you have there? FIONA Keep in mind, I'm kind of unsophisticated, here. Another girl might have brought champagne or something. I hope this isn't too disappointing. SOUND METAL CLANK VICTOR I can't even tell what those are -I see metals and wheels, and- FIONA Silly, it's roller skates! MUSIC SCENE 10 MARGIE Roller skates? You had a chance to romance a bigwig, and you took him roller skates? FIONA The pool was perfect -I couldn't resist. MARGIE And the two of you rolled around the bottom of the pool like children? FIONA More or less. Well, mostly me. He was a bit too dignified to give it a fair shake. MARGIE But you didn't roll around like grownups? FIONA What? MARGIE Nothing. MUSIC SCENE 11 SOUND CAR DRIVES AWAY, FEET ON GRAVEL FIONA Hello? [beat, then chuckles] Maybe he didn't see me coming, for once? SOUND FOOTSTEPS IN LEAVES FIONA Hello? How tragic. A perfectly good cab ride wasted. [worried] Maybe his father's not doing well. SOUND DOOR OPENS MASON Miss? FIONA Oh, gosh -sorry! I guess I kind of expected Vic to be around somewhere. He usually is. MASON He's busy. Inside. [ominous] Would you like to come in? FIONA Oh, Vic said it's- MASON It's no problem. Really. FIONA Sure. Thanks a lot. SOUND FOOTSTEPS ON GRAVEL FIONA I can always, go, you know. I don't want to be a bother. MASON No bother. You're quite welcome here. SOUND FOOTSTEPS SLOW A BIT ON THE WOODEN STAIRS FIONA It'll be interesting to see inside. VICTOR [distant] Fiona? Is that you? SOUND RUNNING FEET APPROACH VICTOR [angry, worried] What's going on? Mason? [beat] Fiona? FIONA Just looking for you. Mason said you might be inside. VICTOR [angry hiss] Inside? Get out of here, Fiona. Just go. We'll be talking about this, Mason. SOUND FOOTSTEPS DOWN STAIRS INTO GRAVEL FIONA [puzzled] Victor? VICTOR [whispered] I don't want you going in and... catching anything. Understand? FIONA All right. Um, sorry? VICTOR [cold] Goodbye. [up] Mason! MUSIC SCENE 12 GEORGE [very serious] Thank you for coming in, Miss Cross. We have a bit of a problem. FIONA You couldn't get that actor, Price? GEORGE More serious than that. [heavy pause] Mr. Malacard. FIONA What happened? Is Vic's dad OK? GEORGE Sorry, I meant the son. He rang up yesterday and said, well... said you've been pestering him. FIONA [shocked] ...pestering? GEORGE Yes. He said he'll pull the permission for the film if you bother him again. FIONA [nearly in tears] B-but... I--He never said- GEORGE [fatherly] Just lay off, at least until the film is finished. Once it's in distribution, you can pester him all you want. FIONA Oh! [sobbing] SOUND CHAIR SCRAPE, RUNNING FOOTSTEPS, DOOR BANGS OPEN. MUSIC SCENE 13 SOUND COCKTAIL LOUNGE, MANY ROWDY PEOPLE IN BACKGROUND FIONA [very down] Pestering. That's what he said. Apparently. Vic couldn't even tell me to my face, [breaking down into tears] he had to send it through- MARGIE There, there. [calls] Waiter! Bring another one. [half whispered] A double. FIONA No. I really shouldn't. [moping again] I guess I deserve it -he didn't say I could come back, but... The picnic was NICE. Everything was nice. He was nice. Real nice. I thought. MARGIE They all seem nice -say, you didn't let him ... have his wicked way with you, didja? FIONA What? No! [melting] I mean, he almost kissed me at the picnic, but the butler was watching. MARGIE That's it, then. The butler did it. Probably threatened to quit or something. Good help is a lot harder to find in this town than pretty girls. [lecturing] Most servants are just actors waiting to be discovered -they're just not very good, or they'd be able to act like servants. FIONA [almost a laugh] Hmph. MARGIE That's better. What you need is a night at a dance hall -meet some nice guys, wear yourself out, then you can sleep. I promise, all you'll be worrying about in the morning is your bunions. MUSIC SCENE 14 SOUND PERSISTENT CITY NIGHT NOISES. SOUND PHONE RINGS, OFF [PAUSE] THEN POUNDING ON A DOOR FIONA [waking] Yes? Mm-what? LANDLADY [very annoyed] Phone for you. MUSIC SCENE 15 SOUND CAB PULLS UP, DOOR SLAMS, RUNNING FEET ON GRAVEL FIONA [panting] SOUND FEET RUN UP WOOD STAIRS, POUNDING ON DOOR FIONA Hello? Hello? SOUND DOOR SWINGS OPEN MASON [very calm] Oh, good. Come in. FIONA Mason? What happened? You said it was an emergency? SOUND FOOTSTEPS, DOOR CLOSES, FOOTSTEPS CONTINUE UNDER MASON This way, miss. FIONA [getting more panicky] But, is Vic hurt? Did his father...? What could he --what could he want me here for? MASON Through here. SOUND DOOR OPENS MASON The master will be right in, Miss. SOUND DOOR SLAMS SHUT. FIONA [gasp, then yelling] You could at least turn on a light! [to herself] Which master? Maybe I'll finally- SOUND DOOR OPENS MASON [off] Just through here, sir. SOUND RELUCTANT FOOTSTEPS MASON [off, condescending] I think this will help with your --mood, sir. VICTOR [coming on] I can't think of anything worth getting me up in the middle of the--Fiona? [truly upset] MASON [off, condescending] Now everything will be better. FIONA Oh, Vic, I shouldn't have come. I'm so sorry! Please don't- VICTOR Oh, no! No! FIONA But Mason called me. He said- VICTOR Mason! That filthy--!! SOUND DOOR SLAM CUTS HIM OFF FIONA What is it? VICTOR We must get you out of here! SOUND RUNNING FEET, POUNDING ON WINDOWS, TRYING TO GET THEM TO OPEN FIONA I don't understand, Vic? VICTOR Blast it Fiona, help me. FIONA No. I want to know what's going on. VICTOR Is this one of those things Hollywood taught you? Take a bad situation and make it worse? FIONA No. Oh, here [grunt as she helps try and push] I wasn't going to ... to not help. I'm just confused. VICTOR [grunt, then angry noise] No use, they're sealed. FIONA They are glass. There must be a chair or something- VICTOR It's never that easy -trust me. This way. Come on. SOUND RUNNING FEET, SLAM AGAINST CLOSED DOOR BOTH are getting BREATHLESS FIONA Locked! VICTOR Maybe down here! SOUND MORE RUNNING FOOTSTEPS FIONA Don't you know your own house? VICTOR [harsh laugh] Don't slow down. SOUND RUNNING, SCRAMBLE, RATTLE OF LOCKED DOOR FIONA Victor, wait! VICTOR No! I will NOT let him get you! SOUND POUNDING ON DOOR, BUT SLOWER VICTOR [sobs] I won't let IT! FIONA Victor. Breathe, Victor! VICTOR I'm so sorry, Fiona. I don't understand why it brought you here. FIONA It? Oh! [dawning] Um, I guess everyone agreed the story needed a bit of romance. VICTOR What? FIONA Your house. It's just like the film -or close to it -isn't it? VICTOR How could you think--How could you know? FIONA I told you I have a good imagination. VICTOR But you- FIONA And you're the one and only Victor Malacard. VICTOR You're mad! I would have to be- FIONA Almost 60. I looked it up. And you don't look a day over 35. Coincidentally, the age you were when you went into seclusion. You look like him, move like him -even the way your lips move when you talk -not even father and son can be THAT much alike. VICTOR It's... the house. FIONA And Mason? VICTOR Mason's not a... person. Just part of it. The house. He... speaks for it. FIONA And watches over you. VICTOR Keeps me prisoner, you mean. [sadly] And now, you too. Fiona, I am so dreadfully- FIONA Shh. [calling] Mason? I want to talk to you -whatever you are. MASON [deep, on filter] Yes miss? VICTOR [yelling] You let her go, you wretch! FIONA Shh. Victor. It'll be fine. VICTOR No...! FIONA Yes. [SOUND -brief kiss] If there's one thing I learned in Hollywood, it's there's always room for negotiation. [calling, sweetly] Mason? MUSIC, fades into- SCENE 15 MUSIC 1960S BUBBLEGUM POP ON A TINNY RADIO, DISTANT, WITH BIRDS AND OUTDOOR NOISES. SOUND MOTORCYCLE APPROACHES, STOPS FIONA [coming on] Ah! Over here, Bobby! Oh! I was expecting- ANDY Sorry! I'm Andy -Bobby retired. FIONA [chuckles] It's so hard to keep track. Well, then, Andy. Do you have my packages? SOUND LOADING UP WITH PACKAGES AS HE SPEAKS ANDY Yup, packages from Woolworth's and Mays, a big bundle of magazines, and here's one from the studio -a film canister -gee do you have your own theater? That's way out there, man, I mean ma'am. FIONA [chuckles] Just leave everything on the porch. The butler will see that it all gets inside in one piece. And here's my latest screenplay -hardly a fair trade, but an easier trip, eh? Get it to George -no, wait... I mean Harold, don't I? Harold Mills is in production these days, right? SOUND SCRIPT CHANGES HANDS ANDY Umm... [working up to say something] So you're Fiona Cross Malacard? The one who wrote Trapped by Love? That was a groovy flick, even if it is kind of ancient. FIONA Well, thank you, Andy. [chuckles] I guess. ANDY But you don't look--I mean, you're really much--oh, criminee. I mean to say- FIONA You're trying not to say I must be older than I look? ANDY Uh-huh. FIONA I'll take the compliment. I put it down to clean country air, good healthy food... VICTOR [way off] Fiona? Was that the deliveries? FIONA ...and a wonderful husband. ANDY Having servants don't hurt neither, eh? FIONA [ironic] No -no, it don't. MUSIC TO END
Victor is a software consultant in Tokyo who describes himself as a yak shaver. He writes on his blog at vadosware and curates Awesome F/OSS, a mailing list of open source products. He's also a contributor to the Open Core Ventures blog. Before our conversation Victor wrote a structured summary of how he works on projects. I recommend checking that out in addition to the episode. Topics covered: Most people should use Dokku or CapRover But he uses Kubernetes anyways Hosting a Database in Kubernetes Learning technology You don't really know a thing until something goes wrong History of Frontend Development Context from lower layers of the stack and historical projects Good project pages have comparisons to other products Choosing technologies Language choice affects maintainability Knowing an ecosystem Victor's preferred stack Technology bake offs Posting findings means you get free corrections Why people use medium instead of personal sites Victor VADOSWARE - Blog How Victor works on Projects - Companion post for this episode Awesome FOSS - Curated list of OSS projects NimbusWS - Hosted OSS built on top of budget cloud providers Unvalidated Ideas - Startup ideas for side project inspiration PodcastSaver - Podcast index that allows you to choose Postgres or MeiliSearch and compare performance and results of each Victor's preferred stack Docker - Containers Kubernetes - Container provisioning (Though at the beginning of the episode he suggests Dokku for single server or CapRover for multiple) TypeScript - JavaScript with syntax for types. Victor's default choice. Rust - Language he uses if doing embedded work, performance is critical, or more correctness is desired Haskell - Language he uses if correctness and type system is the most important for the project Postgresql - General purpose database that's good enough for most use cases including full text search. KeyDB - Redis compatible database for caching. Acquired by Snap and then made open source. Victor uses it over Redis because it is multi threaded and supports flash storage without a Redis Enterprise license. Pulumi - Provision infrastructure with the languages you're already using instead of a specialized one or YAML Svelte and SvelteKit - Preferred frontend stack. Previously used Nuxt. Search engines Postgres Full Text Search vs the rest Optimizing Postgres Text Search with Trigrams OpenSearch - Amazon's fork of Elasticsearch typesense meilisearch sonic Quickwit JavaScript build tools Babel SWC Webpack esbuild parcel Vite Turbopack JavaScript frameworks React Vue Svelte Ember Frameworks built on top of frameworks Next - React Nuxt - Vue SvelteKit - Svelte Astro - Multiple Historical JavaScript tools and frameworks Underscore jQuery MooTools Backbone AngularJS Knockout Aurelia GWT Bower - Frontend package manager Grunt - Task runner Gulp - Task runner Related Links Dokku - Open source single-host alternative to Heroku Cloud Native Buildpacks - Buildpacks created by Heroku and Pivotal and used by Dokku CapRover - An open source PaaS-like abstraction built on top of Docker Swarm Kelsey Hightower's tweet about being cautious about running databases on Kubernetes Settling the Myth of Transparent HugePages for Databases Kubernetes Container Storage Interface (CSI) Kubernetes Local Persistent Volumes Longhorn - Distributed block storage for Kubernetes Postgres docs Postgres TOAST Everything I've seen on optimizing Postgres on ZFS Kubernetes Workload Resources Kubernetes Network Plugins Kubernetes Ingress Traefik Kubernetes the Hard Way (Setting up a cluster in a way that optimizes for learning) How does TLS work Let's Encrypt Cert manager for Kubernetes Choose Boring Technology A Linux user's guide to Logical Volume Management Docker networking overview Kubernetes Scheduler Tauri - Build desktop applications with web technology and Rust ripgrep - CLI tool to recursively search directory for a regex pattern (Meant to be a rust replacement for grep) angle-grinder / ag - CLI tool to parse and process log files written in rust Object.observe ECMAScript Proposal to be Withdrawn Ruby on Rails - Ruby web framework Django - Python web framework Laravel - PHP web framework Adonis - JavaScript NestJS - JavaScript What is a NullPointerException, and how do I fix it? Mastodon Clap - CLI argument parser for Rust AWS CDK - Provision AWS infrastructure using programming languages Terraform - Provision infrastructure with terraform language URL canonicalization of duplicate pages and the use of the canonical tag - Used by dev.to to send google traffic to the original blogpost instead of dev.to Transcript You can help edit this transcript on GitHub. [00:00:00] Jeremy: This episode, I talk to Victor Adossi who describes himself as a yak shaver. Someone who likes trying a whole bunch of different technologies, seeing the different options. We talk about what he uses, the evolution of front end development, and his various projects. Talking to just different people it's always good to get where they're coming from because something that works for Google at their scale is going to be different than what you're doing with one of your smaller projects. [00:00:31] Victor: Yeah, the context. Of course in direct conflict with that statement, I definitely use Google technology despite not needing to at all right? Like, you know, 99% of people who are doing like people like to call it indiehacking or building small products could probably get by with just Dokku. If you know Dokku or like CapRover. Are two projects that'll be like, Oh, you can just push your code here, we'll build it up like a little mini Heroku PaaS thing and just go on one big server, right? Like 99% of the people could just use that. But of course I'm not doing that. So I'm a bit of a hypocrite in that sense. I know what I should be doing, but I'm not doing that. I am writing a Kubernetes cluster with like five nodes for no reason. Uh, yeah, I dunno, people don't normally count the controllers. [00:01:24] Jeremy: Dokku and CapRover, I think those are where it's supposed to create a heroku like experience I think it's based off of the heroku buildpacks right? At least Dokku is? [00:01:36] Victor: Yeah Buildpacks has actually been spun out into like a community thing so like pivotal and heroku, it's like buildpacks.io, they're trying to build a wider standard around it so that more people can get involved. And buildpacks are actually obviously fantastic as a technology and as a a process piece. There's not much else like them and you know, that's obvious from like Heroku's success and everything. I know Dokku uses that. I don't know that Caprover does, but I haven't, I haven't really run Caprover that much. They, they probably do. Like at this point if you're going to support building from code, it seems silly to try and build your own buildpacks. Cause that's what you will do, eventually. So you might as well use what's there. Anyway, this is like just getting to like my personal opinions at this point, but like, if you think containers are a bad idea in 2022, You're wrong, you should, you should stop. Like you should, you should stop. Think about it. I mean, obviously there's not, um, I got a really great question at an interview once, which is, where are containers a bad idea? That's probably one of the best like recent interview questions I've ever gotten cause I was like, Oh yeah, I mean, like, you can't, it can't be perfect everywhere, right? Nothing's perfect everywhere. So it's like, where is it? Uh, and of course the answer was networking, right? (unintelligible) So if you need absolute performance, but like for just about everything else. Containers are kind of it at this point. Like, time has born it out, I think. So yeah, I always just like bias at taking containers at this point. So I'm probably more of a CapRover person than a Dokku person, even though I have not used, I don't use CapRover. [00:03:09] Jeremy: Well, like something that I've heard with containers, and maybe it's changed recently, but, but something that was kind of holdout was when people would host a database sometimes they would oh we just don't wanna put this in a container and I wonder if like that matches with your thinking or if things have changed. [00:03:27] Victor: I am not a database administrator right like I read postgres docs and I read the, uh, the Postgres documentation, and I think I know a bit about postgres but I don't commit right like so and I also haven't, like, oh, managed X terabytes on one server that you are making sure never goes down kind of deal. But the stickiness for me, at least from when I've run, So I've done a lot of tests with like ZFS and Postgres and like, um, and also like just trying to figure out, and I run Postgres in Kubernetes of course, like on my cluster and a lot of the stuff I found around is, is like fiddly kernel things like sort of base kernel settings that you need to have set. Like, you know, stuff like should you be using transparent huge pages, like stuff like that. But once you have that settled. Containers are just processes with name spacing and resource control, right? Like, that's it. there are some other ins and outs, but for the most part, if you're fine running a process, so people ran processes, right? And they were just completely like unprotected. Then people made users for the processes and they limited the users and ran the processes, right? Then the next step is now you can run a process and then do the limiting the name spaces in cgroups dynamically. Like there, there's, there's sort of not a humongous difference, unless you're hitting something very specific. Uh, but yeah, databases have been a point of contention, but I think, Kelsey Hightower had that tweet yeah. That was like, um, don't run databases in Kubernetes. And I think he called it back. [00:04:56] Victor: I don't know, but I, I know that was uh, was one of those things that people were really unsure about at first, but then after people sort of like felt it out, they were like, Oh, it's actually fine. Yeah. [00:05:06] Jeremy: Yeah I vaguely remember one of the concerns having to do with persistent storage. Like there were challenges with Kubernetes and needing to keep that storage around and I don't know if that's changed yeah or if that's still a concern. [00:05:18] Victor: Uh, I'd say that definitely has changed. Uh, and it was, it was a concern, depending on where you were. Mostly people who are running AKS or EKS or you know, all those other managed Kubernetes, they're just using EBS or like whatever storage provider is like offering for storage. Most of those people don't actually have that much of a problem with, storage in general. Now, high performance storage is obviously different, right? So like, so you'll, you're gonna have to start doing manual, like local volume management and stuff like that. it was a problem, because obviously CSI (Kubernetes Container Storage Interface) didn't exist for some period of time, and like there was, it was hard to know what to do for if you were just running a Kubernetes cluster. I think a lot of people were just using local, first of all, local didn't even exist for a bit. Um, they were just using host path, right? And just like, Oh, it's on the disk somewhere. Where do we, we have to go get it right? Or we have to like, sort of manage that. So that was something most people weren't ready for, especially if you were just, if you weren't like sort of a, a, a traditional sysadmin and used to doing that stuff. And then of course local volumes came out, but I think they still had to be, um, pre-provisioned. So that's sysadmin stuff that most people, you know, maybe aren't, aren't necessarily ready for. Uh, and then most of the general solutions were slow. So like, I used Longhorn (https://longhorn.io) for a long time and Longhorn, Longhorn's great. And super easy to set up, but it can be slower and you can have some, like, delays in mount time. it wasn't ideal for, for most people. So yeah, I, overall it's true. Databases, Databases in Kubernetes were kind of fraught with peril for a while, but it wasn't for the reason that, it wasn't for the fundamental reason that Kubernetes was just wrong or like, it wasn't the reason most people think of, which is just like, Oh, you're gonna break your database. It's more like, running a database is hard and Kubernetes hasn't solved all the hard problems. Like, cuz that's what Kubernetes does. It basically solves a lot of problems in a very generic way. Right. So it just hadn't solved all those problems yet at this point. I think it's got decent answers on a lot of them. So I, I mean, I don't know. I I do it. Don't, don't take what I'm saying to your, you know, PM meeting or your standup meeting, uh, anyone who's listening. But it's more like if you could solve the problems with databases in the sense before. You could probably solve 'em on Kubernetes now with a good understanding of Kubernetes. Cause at the end of the day, it's all the same stuff. Just Kubernetes makes it a little easier to, uh, do it dynamically. [00:07:50] Jeremy: It sounds like you could do it before, but some of the, I guess the tools or the ways of doing persistent storage were not quite there yet, or they were difficult to use. And so that was why people at the start were like, Okay, maybe it's not a good idea, but, now maybe there's some established practices for how you should run a database in Kubernetes. And I, I suppose the other aspect too is that, like you were saying, Kubernetes is its own thing. You gotta learn Kubernetes and all its intricacies. And then running a database is also its own challenge. So if you stack the two of them together and, and the path was not really clear then maybe at the start it wasn't the best idea. Um, uh, if somebody was going to try it out now, was there like a specific resource you looked at or a specific path to where like okay this is is how I'm going to do it. [00:08:55] Victor: I'll just say what I normally recommend to everybody. Cause it depends on which path you wanna go right? If you wanna go down like running a database path first and figure that out, fill out that skill tree. Like go read the Postgres docs. Well, first of all, use Postgres. That's the first tip there. But like, read those documents. And obviously you don't have to understand everything. You won't understand everything. But knowing the big pieces and sort of letting your brain see the mention of like a whole bunch of things, like what is toast? Oh, you can do compression on columns. Like, you can do some, some things concurrently. Um, you know, what ALTER TABLE looks like. You get all that stuff kind of in your head. Um, and then I personally really believe in sort of learning by building and just like iterating. you won't get it right the first time. It's just like, it's not gonna happen. You're get, you can, you can get better the first time, right? By being really prepared and like, and leave yourself lots of outs, but you kind of have to like, get it out there. Do do your best to make sure that you can't fail, uh, catastrophically, right? So this is like, goes back to that decision to like use ZFS as the bottom of this I'm just like, All right, well, I, I'm not a file systems expert, but if I. I could delegate some of that, you know, some of that, I can get some of that knowledge from someone else. Um, and I can make it easier for me to not fail catastrophically. For the database side, actually read documentation on Postgres or the whatever database you're going to use, make sure you at least understand that. Then start running it like locally or whatever. Again, Docker use, use Docker locally. It's, it's, it's fine. and then, you know, sort of graduate to running sort of more progressively, more complicated versions. what I would say for the Kubernetes side is actually similar. the Kubernetes docs are really good. they're very large. but they're good. So you can actually go through and know all the, like, workload, workload resources, know, like what a config map is, what a secret is, right? Like what etcd is doing in this whole situation. you know, what a kublet is versus an API server, right? Like the, the general stuff, like if you go through all that, you should have like a whole bunch of ideas at least floating around in your head. And then once you try and start setting up a server, they will all start to pop up again, right? And they'll all start to like, you, like, Oh, okay, I need a CNI (Container Networking) plugin because something needs to make the services available, right? Or something needs to power the ingress, right? Like, if I wanna be able to get traffic, I need an ingress object. But what listens, what does that, what makes that ingress object do anything? Oh, it's an ingress controller. nginx, you know, almost everyone's heard of nginx, so they're like, okay. Um, nginx, has an ingress control. Actually there's, there used to be two, I assume there's still two, but there's like one that's maintained by Kubernetes, one that's maintained by nginx, the company or whatever. I use traefik, it's fantastic. but yeah, so I think those things kind of fall out and that is almost always my first way to explain it and to start building. And tinkering iteratively. So like, read the documentation, get a good first grasp of it, and then start building yourself because you'll, you'll get way more questions that way. Like, you'll ask way more questions, you won't be able to make progress. Uh, and then of course you can, you know, hop into slacks or like start looking around and, and searching on the internet. oh, one of the things that really helped me out early learning Kubernetes was, Kelsey Hightower's, um, learn Kubernetes the hard way. I'm also a big believer in doing things the hard way, at least knowing what you're choosing to not know, right? distributing file system, Deltas, right? Or like changes to a file system over the network is not a new problem. Other people have solved it. There's a lot of complexity there. but if you at least know the sort of surface level of what the thing does and what it's supposed to do and how it's supposed to do it, you can make a decision on, Oh, how deep am I going to go? Right? To prevent yourself from like, making a mistake or going too deep in the rabbit hole. If you have an idea of the sort of ecosystem and especially like, Oh, here, like the basics of how I can use this thing, that's generally very good. And doing things the hard way is a great way to get a, a feel for that, right? Cause if you take some chunk and like, you know, the first level of doing things the hard way, uh, or, you know, Kelsey Hightower's guide is like, get a machine, right? Like, so, like, if you somehow were like, Oh, I wanna run a Kubernetes cluster. but, you know, I don't want use necessarily EKS and you wanna learn it the hard way. You have to go get a machine, right? If you, if you're not familiar, if you run on Heroku the whole time, like you didn't manage your own machines, you gotta go like, figure out EC2, right? Or, I personally use, hetzner I love hetzner, so you have to go figure out hetzner, digital ocean, whatever. Right. And then the next thing's like, you know, the guide's changed a lot, and I haven't, I haven't looked at it in like, in years, actually a while since I, since I've sort of been, I guess living it, but it's, it's like generate certificates, right? So if you've never dealt with SSL and like, sort of like, or I should say TLS uh, and generating certificates and how that whole dance works, right? Which is fascinating because it's like, oh, right, nothing's secure on the internet, except that we distribute root certificates on computers that are deployed in every OS, right? Like, that's a sort of fundamental understanding you may not go deep enough to realize, but if you are fascinated by it, trying to do it manually would lead you down that path. You'd be like, Oh, what, like what is this thing? What is a CSR? Like, why, who is signing my request? Right? And it's like, why do we trust those people? Right? And it's like, you know, that kind of thing comes out and I feel like you can only get there from trying to do it, you know, answering the questions you can. Right. And again, it takes some judgment to know when you should not go down a rabbit hole. uh, and then iterating. of course there are people who are excellent at explaining. you can find some resources that are shortcuts. But, uh, I think particularly my bread and butter has been just to try and do it the hard way. Avoid pitfalls or like rabbit holes when you can. But know that the rabbit hole is there, and then keep going. And sometimes if something's just too hard, you're not gonna get it the first time. Like maybe you'll have to wait like another three months, you'll try again and you'll know more sort of ambiently about everything else. You get a little further that time. that's how I feel about that. Anyway. [00:15:06] Jeremy: That makes sense to me. I think sometimes when people take on a project, they try to learn too many things at the same time. I, I think the example of Kubernetes and Postgres is pretty good example, where if you're not familiar with how do I install Postgres on bare metal or a vm, trying to make sense of that while you're trying to into is probably gonna be pretty difficult. So, so splitting them up and learning them individually, that makes a lot of sense to me. And the whole deciding how deep you wanna go. That's interesting too, because I think that's very specific to the person right because sometimes you wanna go a little deeper because otherwise you don't understand how the two things connect together. But other times it's just like with the example with certificates, some people they may go like, I just put in let's encrypt it gives me my cert I don't care right then, and then, and some people they wanna know like okay how does the whole certificate infrastructure work which I think is interesting, depending on who you are, maybe you go ahh maybe it doesn't really matter right. [00:16:23] Victor: Yeah, and, you know, shout out to Let's Encrypt . It's, it's amazing, right? think Singlehandedly the most, most of the deployment of HTTPS that happens these days, right? so many so many of like internet providers and uh, sort of service providers will use it right? Under the covers. Like, Hey, we've got you free SSL through Let's Encrypt, right? Like, kind of like under the, under the covers. which is awesome. And they, and they do it. So if you're listening to this, donate to them. I've done it. So now that, now the pressure is on whoever's listening, but yeah, and, and I, I wanna say I am that person as well, right? Like, I use, Cert Manager on my cluster, right? So I'm just like, I don't wanna think about it, but I, you know, but I, I feel like I thought about it one time. I have a decent grasp. If something changes, then I guess I have to dive back in. I think it, you've heard the, um, innovation tokens idea, right? I can't remember the site. It's like, um, do, like do boring tech or something.com (https://boringtechnology.club/) . Like it shows up on sort of hacker news from time to time, essentially. But it's like, you know, you have a certain amount of tokens and sort of, uh, we'll call them tokens, but tolerance for complexity or tolerance for new, new ideas or new ways of doing things, new processes. Uh, and you spend those as you build any project, right? you can be devastatingly effective by just sticking to the stack, you know, and not introducing anything new, even if it's bad, right? and there's nothing wrong with LAMP stack, I don't wanna annoy anybody, but like if you, if you're running LAMP or if you run on a hostgator, right? Like, if you run on so, you know, some, some service that's really old but really works for you isn't, you know, too terribly insecure or like, has the features you need, don't learn Kubernetes then, right? Especially if you wanna go fast. cuz you, you're spending tokens, right? You're spending, essentially brain power, right? On learning whatever other thing. So, but yeah, like going back to that, databases versus databases on Kubernetes thing, you should probably know one of those before you, like, if you're gonna do that, do that thing. You either know Kubernetes and you like, at least feel comfortable, you know, knowing Kubernetes extremely difficult obviously, but you feel comfortable and you feel like you can debug. Little bit of a tangent, but maybe that's even a better, sort of watermark if you know how to debug a thing. If, if it's gone wrong, maybe one or five or 10 or 20 times and you've gotten out. Not without documentation, of course, cuz well, if you did, you're superhuman. But, um, but you've been able to sort of feel your way out, right? Like, Oh, this has gone wrong and you have enough of a model of the system in your head to be like, these are the three places that maybe have something wrong with them. Uh, and then like, oh, and then of course it's just like, you know, a mad dash to kind of like, find, find the thing that's wrong. You should have confidence about probably one of those things before you try and do both when it's like, you know, complex things like databases and distributed systems management, uh, and orchestration. [00:19:18] Jeremy: That's, that's so true in, in terms of you are comfortable enough being able to debug a problem because it's, I think when you are learning about something, a lot of times you start with some kind of guide or some kind of tutorial and you follow the steps. And if it all works, then great. Right? But I think it's such a large leap from that to something went wrong and I have to figure it out. Right. Whether it's something's not right in my Dockerfile or my postgres instance uh, the queries are timing out. so many things that could go wrong, that is the moment where you're forced to figure out, okay, what do I really know about this not thing? [00:20:10] Victor: Exactly. Yeah. Like the, the rubber's hitting the road it's uh you know the car's about to crash or has already crashed like if I open the bonnet, do I know what's happening right or am I just looking at (unintelligible). And that's, it's, I feel sort a little sorry or sad for, for devs that start today because there's so much. Complexity that's been built up. And a lot of it has a point, but you need to kind of have seen the before to understand the point, right? So I like, I like to use front end as an example, right? Like the front end ecosystem is crazy, and it has been crazy for a very long time, but the steps are actually usually logical, right? Like, so like you start with, you know, HTML, CSS and JavaScript, just plain, right? And like, and you can actually go in lots of directions. Like HTML has its own thing. CSS has its own sort of evolution sort of thing. But if we look at JavaScript, you're like, you're just writing JavaScript on every page, right? And like, just like putting in script tags and putting in whatever, and it's, you get spaghetti, you get spaghetti, you start like writing, copying the same function on multiple pages, right? You just, it, it's not good. So then people, people make jquery, right? And now, now you've got like a, a bundled set of like good, good defaults that you can, you can go for, right? And then like, you know, libraries like underscore come out for like, sort of like not dom related stuff that you do want, you do want everywhere. and then people go from there and they go to like backbone or whatever. it's because Jquery sort of also becomes spaghetti at some point and it becomes hard to manage and people are like, Okay, we need to sort of like encapsulate this stuff somehow, right? And like the new tools or whatever is around at the same timeframe. And you, you, you like backbone views for example. and you have people who are kind of like, ah, but that's not really good. It's getting kind of slow. Uh, and then you have, MVC stuff comes out, right? Like Angular comes out and it's like, okay, we're, we're gonna do this thing called dirty checking, and it's gonna be, it's gonna be faster and it's gonna be like, it's gonna be less sort of spaghetti and it's like a little bit more structured. And now you have sort of like the rails paradigm, but on the front end, and it takes people to get a while to get adjusted to that, but then that gets too heavy, right? And then dirty checking is realized to be a mistake. And then, you get stuff like MVVM, right? So you get knockout, like knockout js and you got like Durandal, and like some, some other like sort of front end technologies that come up to address that problem. Uh, and then after that, like, you know, it just keeps going, right? Like, and if you come in at the very end, you're just like, What is happening? Right? Like if it, if it, if someone doesn't sort of boil down the complexity and reduce it a little bit, you, you're just like, why, why do we do this like this? Right? and sometimes there's no good reason. Sometimes the complexity is just like, is unnecessary, but having the steps helps you explain it, uh, or helps you understand how you got there. and, and so I feel like that is something younger people or, or newer devs don't necessarily get a chance to see. Cause it just, it would take, it would take very long right? And if you're like a new dev, let's say you jumped into like a coding bootcamp. I mean, I've got opinions on coding boot camps, but you know, it's just like, let's say you jumped into one and you, you came out, you, you made it. It's just, there's too much to know. sure, you could probably do like HTML in one month. Well, okay, let's say like two weeks or whatever, right? If you were, if you're literally brand new, two weeks of like concerted effort almost, you know, class level, you know, work days right on, on html, you're probably decently comfortable with it. Very comfortable. CSS, a little harder because this is where things get hard. Cause if you, if you give two weeks for, for HTML, CSS is harder than HTML kind of, right? Because the interactions are way more varied. Right? Like, and, and maybe it's one of those things where you just, like, you, you get somewhat comfortable and then just like know that in the future you're gonna see something you don't understand and have to figure it out. Uh, but then JavaScript, like, how many months do you give JavaScript? Because if you go through that first like, sort of progression that I, I I, I, I mentioned everyone would have a perfect sort of, not perfect but good understanding of the pieces, right? Like, why did we start transpiling at all? Right? Like, uh, or why did you know, why did we adopt libraries? Like why did Bower exist? No one talks about Bower anymore, obviously, but like, Bower was like a way to distribute front end only packages, right? Um, what is it? Um, Uh, yes, there's grunt. There's like the whole build system thing, right? Once, once we decide we're gonna, we're gonna do stuff to files before we, before we push. So there's grunt, there's, uh, gulp, which is like grunt, but like, Oh, we're gonna do it all in memory. We're gonna pipe, we're gonna use this pipes thing to make sure everything goes fast. then there's like, of course that leads like the insanity that's webpack. And then there's like parcel, which did better. There's vite there's like, there's all this, there's this progression, but how many months would it take to know that progression? It, it's too long. So they end up just like, Hey, you're gonna learn react. Which is the right thing because it's like, that's what people hire for, right? But then you're gonna be in react and be like, What's webpack, right? And it's like, but you can't go down. You can't, you don't have the time. You, you can't sort of approach that problem from the other direction where you, which would give you better understanding cause you just don't have the time. I think it's hard for newer devs to overcome this. Um, but I think there are some, there's some hope on the horizon cuz some things are simpler, right? Like some projects do reduce complexity, like, by watching another project sort of innovate so like react. Wasn't the first component, first framework, right? Like technically, I, I think, I think you, you might have to give that to like, to maybe backbone because like they had views and like marionette also went with that. Like maybe, I don't know, someone, someone I'm sure will get in like, send me an angry email, uh, cuz I forgot you Moo tools or like, you know, Ember Ember. They've also, they've also been around, I used to be a huge Ember fan, still, still kind of am, but I don't use it. but if you have these, if you have these tools, right? Like people aren't gonna know how to use them and Vue was able to realize that React had some inefficiencies, right? So React innovates the sort of component. So Reintroduces the component based model component first, uh, front end development model. Vue sees that and it's like, wait a second, if we just export this like data object, and of course that's not the only innovation of Vue, but if we just export this data object, you don't have to do this fine grained tracking yourself anymore, right? You don't have to tell React or tell your the system which things change when other things change, right? Like you, you don't have to set up this watching and stuff, right? Um, and that's one of the reasons, like Vue is just, I, I, I remember picking up Vue and being like, Oh, I'm done. I'm done with React now. Because it just doesn't make sense to use React because they Vue essentially either, you know, you could just say they learned from them or they, they realize a better way to do things that is simpler and it's much easier to write. Uh, and you know, functionally similar, right? Um, similar enough that it's just like, oh they boil down some of that complexity and we're a step forward and, you know, in other ways, I think. Uh, so that's, that's awesome. Every once in a while you get like a compression in the complexity and then it starts to ramp up again and you get maybe another compression. So like joining the projects that do a compression. Or like starting to adopting those is really, can be really awesome. So there's, there's like, there's some hope, right? Cause sometimes there is a compression in that complexity and you you might be lucky enough to, to use that instead of, the thing that's really complex after years of building on it. [00:27:53] Jeremy: I think you're talking about newer developers having a tough time making sense of the current frameworks but the example you gave of somebody starting from HTML and JavaScript going to jquery backbone through the whole chain, that that's just by nature of you've put in a lot of time right you've done a lot of work working with each of these technologies you see the progression as if someone is starting new just by nature of you being new you won't have been able to spend that time [00:28:28] Victor: Do you think it could work? again, the, the, the time aspect is like really hard to get like how can you just avoid spending time um to to learn things that's like a general problem I think that problem is called education in the general sense. But like, does it make sense for a, let's say a bootcamp or, or any, you know, school right? To attempt to guide people through the previous solutions that didn't work, right? Like in math, you don't start with calculus, right? It just wouldn't, it doesn't make sense, right? But we try and start with calculus in software, right? We're just like, okay, here's the complexity. You've got all of it. Don't worry. Just look at this little bit. If, you know, if the compiler ever spits out a weird error uh oh, like, you're, you're, you're in for trouble cuz you, you just didn't get the. get the basics. And I think that's maybe some of what is missing. And the thing is, it is like the constraints are hard, right? No one has infinite time, right? Or like, you know, even like, just tons of time to devote to learning, learning just front end, right? That's not even all of computing, That's not even the algorithm stuff that some companies love to throw at you, right? Uh, or the computer sciencey stuff. I wonder if it makes more sense to spend some time taking people through the progression, right? Because discovering that we should do things via components, let's say, or, or at least encapsulate our functionality to components and compose that way, is something we, we not everyone knew, right? Or, you know, we didn't know wild widely. And so it feels like it might make sense to touch on that sort of realization and sort of guide the student through, you know, maybe it's like make five projects in a week and you just get progressively more complex. But then again, that's also hard cause effort, right? It's just like, it's a hard problem. But, but I think right now, uh, people who come in at the end and sort of like see a bunch of complexity and just don't know why it's there, right? Like, if you've like, sort of like, this is, this applies also very, this applies to general, but it applies very well to the Kubernetes problem as well. Like if you've never managed nginx on more than one machine, or if you've never tried to set up a, like a, to format your file system on the machine you just rented because it just, you know, comes with nothing, right? Or like, maybe, maybe some stuff was installed, but, you know, if you had to like install LVM (Logical Volume Manager) yourself, if you've never done any of that, Kubernetes would be harder to understand. It's just like, it's gonna be hard to understand. overlay networks are hard for everyone to understand, uh, except for network people who like really know networking stuff. I think it would be better. But unfortunately, it takes a lot of time for people to take a sort of more iterative approach to, to learning. I try and write blog posts in this way sometimes, but it's really hard. And so like, I'll often have like an idea, like, so I call these, or I think of these as like onion, onion style posts, right? Where you either build up an onion sort of from the inside and kind of like go out and like add more and more layers or whatever. Or you can, you can go from the outside and sort of take off like layers. Like, oh, uh, Kubernetes has a scheduler. Why do they need a scheduler? Like, and like, you know, kind of like, go, go down. but I think that might be one of the best ways to learn, but it just takes time. Or geniuses and geniuses who are good at two things, right? Good at the actual technology and good at teaching. Cuz teaching is a skill and it's very hard. and, you know, shout out to teachers cuz that's, it's, it's very difficult, extremely frustrating. it's hard to find determinism in, in like methods and solutions. And there's research of course, but it's like, yeah, that's, that's a lot harder than the computer being like, Nope, that doesn't work. Right? Like, if you can't, if you can't, like if you, if the function call doesn't work, it doesn't work. Right. If the person learned suboptimally, you won't know Right. Until like 10 years down the road when, when they can't answer some question or like, you know, when they, they don't understand. It's a missing fundamental piece anyway. [00:32:24] Jeremy: I think with the example of front end, maybe you don't have time to walk through the whole history of every single library and framework that came but I think at the very least, if you show someone, or you teach someone how to work with css, and you have them, like you were talking about components before you have them build a site where there's a lot of stuff that gets reused, right? Maybe you have five pages and they all have the same nav bar. [00:33:02] Victor: Yeah, you kind of like make them do it. [00:33:04] Jeremy: Yeah. You make 'em do it and they make all the HTML files, they copy and paste it, and probably your students are thinking like, ah, this, this kind of sucks [00:33:16] Victor: Yeah [00:33:18] Jeremy: And yeah, so then you, you come to that realization, and then after you've done that, then you can bring in, okay, this is why we have components. And similarly you brought up, manual dom manipulation with jQuery and things like that. I, I'm sure you could come up with an example of you don't even necessarily need to use jQuery. I think people can probably skip that step and just use the the, the API that comes with the browser. But you can have them go in like, Oh, you gotta find this element by the id and you gotta change this based on this, and let them experience the. I don't know if I would call it pain, but let them experience like how it was. Right. And, and give them a complex enough task where they feel like something is wrong right. Or, or like, there, should be something better. And then you can go to you could go straight to vue or react. I'm not sure if we need to go like, Here's backbone, here's knockout. [00:34:22] Victor: Yeah. That's like historical. Interesting. [00:34:27] Jeremy: I, I think that would be an interesting college course or something that. Like, I remember when, I went through school, one of the classes was programming languages. So we would learn things like, Fortran and stuff like that. And I, I think for a more frontend centered or modern equivalent you could go through, Hey, here's the history of frontend development here's what we used to do and here's how we got to where we are today. I think that could be actually a pretty interesting class yeah [00:35:10] Victor: I'm a bit interested to know you learned fortran in your PL class. I, think when I went, I was like, lisp and then some, some other, like, higher classes taught haskell but, um, but I wasn't ready for haskell, not many people but fortran is interesting, I kinda wanna hear about that. [00:35:25] Jeremy: I think it was more in terms of just getting you exposed to historically this is how things were. Right. And it wasn't so much of like, You can take strategies you used in Fortran into programming as a whole. I think it was just more of like a, a survey of like, Hey, here's, you know, here's Fortran and like you were saying, here's Lisp and all, all these different languages nd like at least you, you get to see them and go like, yeah, this is kind of a pain. [00:35:54] Victor: Yeah [00:35:55] Jeremy: And like, I understand why people don't choose to use this anymore but I couldn't take away like a broad like, Oh, I, I really wish we had this feature from, I think we were, I think we were using Fortran 77 or something like that. I think there's Fortran 77, a Fortran 90, and then there's, um, I think, [00:36:16] Victor: Like old fortran, deprecated [00:36:18] Jeremy: Yeah, yeah, yeah. So, so I think, I think, uh, I actually don't know if they're, they're continuing to, um, you know, add new things or maintain it or it's just static. But, it's, it's more, uh, interesting in terms of, like we were talking front end where it's, as somebody who's learning frontend development who is new and you get to see how, backbone worked or how Knockout worked how grunt and gulp worked. It, it's like the kind of thing where it's like, Oh, okay, like, this is interesting, but let us not use this again. Right? [00:36:53] Victor: Yeah. Yeah. Right. But I also don't need this, and I will never again [00:36:58] Jeremy: yeah, yeah. It's, um, but you do definitely see the, the parallels, right? Like you were saying where you had your, your Bower and now you have NPM and you had Grunt and Gulp and now you have many choices [00:37:14] Victor: Yeah. [00:37:15] Jeremy: yeah. I, I think having he history context, you know, it's interesting and it can be helpful, but if somebody was. Came to me and said hey I want to learn how to build websites. I get into front end development. I would not be like, Okay, first you gotta start moo tools or GWT. I don't think I would do that but it I think at a academic level or just in terms of seeing how things became the way they are sure, for sure it's interesting. [00:37:59] Victor: Yeah. And I, I, think another thing I don't remember who asked or why, why I had to think of this lately. um but it was, knowing the differentiators between other technologies is also extremely helpful right? So, What's the difference between ES build and SWC, right? Again, we're, we're, we're leaning heavy front end, but you know, just like these, uh, sorry for context, of course, it's not everyone a front end developer, but these are two different, uh, build tools, right? For, for JavaScript, right? Essentially you can think of 'em as transpilers, but they, I think, you know, I think they also bundle like, uh, generally I'm not exactly sure if, if ESbuild will bundle as well. Um, but it's like one is written in go, the other one's written in Rust, right? And sort of there's, um, there's, in addition, there's vite which is like vite does bundle and vite does a lot of things. Like, like there's a lot of innovation in vite that has to have to do with like, making local development as fast as possible and also getting like, you're sort of making sure as many things as possible are strippable, right? Or, or, or tree shakeable. Sorry, is is is the better, is the better term. Um, but yeah, knowing, knowing the, um, the differences between projects is often enough to sort of make it less confusing for me. Um, as far as like, Oh, which one of these things should I use? You know, outside of just going with what people are recommending. Cause generally there is some people with wisdom sometimes lead the crowd sometimes, right? So, so sometimes it's okay to be, you know, a crowd member as long as you're listening to the, to, to someone worth listening to. Um, and, and so yeah, I, I think that's another thing that is like the mark of a good project or, or it's not exclusive, right? It's not, the condition's not necessarily sufficient, but it's like a good projects have the why use this versus x right section in the Readme, right? They're like, Hey, we know you could use Y but here's why you should use us instead. Or we know you could use X, but here's what we do better than X. That might, you might care about, right? That's, um, a, a really strong indicator of a project. That's good cuz that means the person who's writing the project is like, they've done this, the survey. And like, this is kind of like, um, how good research happens, right? It's like most of research is reading what's happening, right? To knowing, knowing the boundary you're about to push, right? Or try and sort of like push one, make one step forward in, um, so that's something that I think the, the rigor isn't in necessarily software development everywhere, right? Which is good and bad. but someone who's sort of done that sort of rigor or, and like, and, and has, and or I should say, has been rigorous about knowing the boundary, and then they can explain that to you. They can be like, Oh, here's where the boundary was. These people were doing this, these people were doing this, these people were doing this, but I wanna do this. So you just learned now whether it's right for you and sort of the other points in the space, which is awesome. Yeah. Going to your point, I feel like that's, that's also important, it's probably not a good idea to try and get everyone to go through historical artifacts, but if just a, a quick explainer and sort of, uh, note on the differentiation, Could help for sure. Yeah. I feel like we've skewed too much frontend. No, no more frontend discussion this point. [00:41:20] Jeremy: It's just like, I, I think there's so many more choices where the, the mental thought that has to go into, Okay, what do I use next I feel is bigger on frontend. I guess it depends on the project you're working on but if you're going to work on anything front end if you haven't done it before or you don't have a lot of experience there's so many build tools so many frameworks, so many libraries that yeah, but we [00:41:51] Victor: Iterate yeah, in every direction, like the, it's good and bad, but frontend just goes in every direction at the same time Like, there's so many people who are so enthusiastic and so committed and and it's so approachable that like everyone just goes in every direction at the same time and like a lot of people make progress and then unfortunately you have try and pick which, which branch makes sense. [00:42:20] Jeremy: We've been kind of talking about, some of your experiences with a few things and I wonder if you could explain the the context you're thinking of in terms of the types of projects you typically work on like what are they what's the scale of them that sort of thing. [00:42:32] Victor: So I guess I've, I've gone through a lot of phases, right? In sort of what I use in in my tooling and what I thought was cool. I wrote enterprise java like everybody else. Like, like it really doesn't talk about it, but like, it's like almost at some point it was like, you're either a rail shop or a Java shop, for so many people. And I wrote enterprise Java for a, a long time, and I was lucky enough to have friends who were really into, other kinds of computing and other kinds of programming. a lot of my projects were wrapped around, were, were ideas that I was expressing via some new technology, let's say. Right? So, I wrote a lot of haskell for, for, for a while, right? But what did I end up building with that was actually a job board that honestly didn't go very far because I was spending much more time sort of doing, haskell things, right? And so I learned a lot about sort of what I think is like the pinnacle of sort of like type development in, in the non-research world, right? Like, like right on the edge of research and actual usability. But a lot of my ideas, sort of getting back to the, the ideas question are just things I want to build for myself. Um, or things I think could be commercially viable or like do, like, be, be well used, uh, and, and sort of, and profitable things, things that I think should be built. Or like if, if I see some, some projects as like, Oh, I wish they were doing this in this way, Right? Like, I, I often consider like, Oh, I want, I think I could build something that would be separate and maybe do like, inspired from other projects, I should say, Right? Um, and sort of making me understand a sort of a different, a different ecosystem. but a lot of times I have to say like, the stuff I build is mostly to scratch an itch I have. Um, and or something I think would be profitable or utilizing technology that I've seen that I don't think anyone's done in the same way. Right? So like learning Kubernetes for example, or like investing the time to learn Kubernetes opened up an entire world of sort of like infrastructure ideas, right? Because like the leverage you get is so high, right? So you're just like, Oh, I could run an aws, right? Like now that I, now that I know this cuz it's like, it's actually not bad, it's kind of usable. Like, couldn't I do that? Right? That kind of thing. Right? Or um, I feel like a lot of the times I'll learn a technology and it'll, it'll make me feel like certain things are possible that they, that weren't before. Uh, like Rust is another one of those, right? Like, cuz like Rust will go from like embedded all the way to WASM, which is like a crazy vertical stack. Right? It's, that's a lot, That's a wide range of computing that you can, you can touch, right? And, and there's, it's, it's hard to learn, right? The, the, the, the, uh, the, the ramp to learning it is quite steep, but, it opens up a lot of things you can write, right? It, it opens up a lot of areas you can go into, right? Like, if you ever had an idea for like a desktop app, right? You could actually write it in Rust. There's like, there's, there's ways, there's like is and there's like, um, Tauri is one of my personal favorites, which uses web technology, but it's either I'm inspired by some technology and I'm just like, Oh, what can I use this on? And like, what would this really be good at doing? or it's, you know, it's one of those other things, like either I think it's gonna be, Oh, this would be cool to build and it would be profitable. Uh, or like, I'm scratching my own itch. Yeah. I think, I think those are basically the three sources. [00:46:10] Jeremy: It's, it's interesting about Rust where it seems so trendy, I guess, in lots of people wanna do something with rust, but then in a lot of they also are not sure does it make sense to write in rust? Um, I, I think the, the embedded stuff, of course, that makes a lot of sense. And, uh, you, you've seen a sort of surge in command line apps, stuff ripgrep and ag, stuff like that, and places like that. It's, I think the benefits are pretty clear in terms of you've got the performance and you have the strong typing and whatnot and I think where there's sort of the inbetween section that's kind of unclear to me at least would I build a web application in rust I'm not sure that sort of thing [00:47:12] Victor: Yeah. I would, I characterize it as kind of like, it's a tool toolkit, so it really depends on the problem. And think we have many tools that there's no, almost never a real reason to pick one in particular right? Like there's, Cause it seems like just most of, a lot of the work, like, unless you're, you're really doing something interesting, right? Like, uh, something that like, oh, I need to, I need to, like, I'm gonna run, you know, billions and billions of processes. Like, yeah, maybe you want erlang at that point, right? Like, maybe, maybe you should, that should be, you know, your, your thing. Um, but computers are so fast these days, and most languages have, have sort of borrowed, not borrowed, but like adopted features from others that there's, it's really hard to find a, a specific use case, for one particular tool. Uh, so I often just categorize it by what I want out of the project, right? Or like, either my goals or project goals, right? Depending on, and, or like business goals, if you're, you know, doing this for a business, right? Um, so like, uh, I, I basically, if I want to go fast and I want to like, you know, reduce time to market, I use type script, right? Oh, and also I'm a, I'm a, like a type zealot. I, I'd say so. Like, I don't believe in not having types, right? Like, it's just like there's, I think it's crazy that you would like have a function but not know what the inputs could be. And they could actually be anything, right? , you're just like, and then you have to kind of just keep that in your head. I think that's silly. Now that we have good, we, we have, uh, ways to avoid the, uh, ceremony, right? You've got like hindley Milner type systems, like you have a way to avoid the, you can, you know, predict what types of things will be, and you can, you don't have to write everything everywhere. So like, it's not that. But anyway, so if I wanna go fast, the, the point is that going back to that early, like the JS ecosystem goes everywhere at the same time. Typescript is excellent because the ecosystem goes everywhere at the same time. And so you've got really good ecosystem support for just about everything you could do. Um, uh, you could write TypeScript that's very loose on the types and go even faster, but in general it's not very hard. There's not too much ceremony and just like, you know, putting some stuff that shows you what you're using and like, you know, the objects you're working with. and then generally if I wanna like, get it really right, I I'll like reach for haskell, right? Cause it's just like the sort of contortions, and again, this takes time, this not fast, but, right. the contortions you can do in the type system will make it really hard to write incorrect code or code that doesn't, that isn't logical with itself. Of course interfacing with the outside world. Like if you do a web request, it's gonna fail sometimes, right? Like the network might be down, right? So you have to, you basically pull that, you sort of wrap that uncertainty in your system to whatever degree you're okay with. And then, but I know it'll be correct, right? But and correctness is just not important. Most of like, Oh, I should , that's a bad quote. Uh, it's not that correct is not important. It's like if you need to get to market, you do not necessarily need every single piece of your code to be correct, Right? If someone calls some, some function with like, negative one and it's not an important, it's not tied to money or it's like, you know, whatever, then maybe it's fine. They just see an error and then like you get an error in your back and you're like, Oh, I better fix that. Right? Um, and then generally if I want to be correct and fast, I choose rust these days. Right? Um, these days. and going back to your point, a lot of times that means that I'm going to write in Typescript for a lot of projects. So that's what I'll do for a lot of projects is cuz I'll just be like, ah, do I need like absolute correctness or like some really, you know, fancy sort of type stuff. No. So I don't pick haskell. Right. And it's like, do I need to be like mega fast? No, probably not. Cuz like, cuz so I don't necessarily don't necessarily need rust. Um, maybe it's interesting to me in terms of like a long, long term thing, right? Like if I, if I'm think, oh, but I want x like for example, tight, tight, uh, integration with WASM, for example, if I'm just like, oh, I could see myself like, but that's more of like, you know, for a fun thing that I'm doing, right? Like, it's just like, it's, it's, you don't need it. You don't, that's premature, like, you know, that's a premature optimization thing. But if I'm just like, ah, I really want the ability to like maybe consider refactoring some of this out into like a WebAssembly thing later, then I'm like, Okay, maybe, maybe I'll, I'll pick Rust. Or like, if I, if I like, I do want, you know, really, really fast, then I'll like, then I'll go Rust. But most of the time it's just like, I want a good ecosystem so I don't have to build stuff myself most of the time. Uh, and you know, type script is good enough. So my stack ends up being a lot of the time just in type script, right? Yeah. [00:52:05] Jeremy: Yeah, I think you've encapsulated the reason why there's so many packages on NPM and why there's so much usage of JavaScript and TypeScript in general is that it, it, it fits the, it's good enough. Right? And in terms of, in terms of speed, like you said, most of the time you don't need of rust. Um, and so typescript I think is a lot more approachable a lot of people have to use it because they do front end work anyways. And so that kinda just becomes the I don't know if I should say the default but I would say it's probably the most common in terms of when somebody's building a backend today certainly there's other languages but JavaScript and TypeScript is everywhere. [00:52:57] Victor: Yeah. Uh, I, I, I, another thing is like, I mean, I'm, of ignored the, like, unreasonable effectiveness of like rails Cause there's just a, there's tons of just like rails warriors out there, and that's great. They're they're fantastic. I'm not a, I'm not personally a huge fan of rails but that's, uh, that's to my own detriment, right? In, in some, in some ways. But like, Rails and Django sort of just like, people who, like, I'm gonna learn this framework it's gonna be excellent. It most, they have a, they have carved out a great ecosystem for themselves. Um, or like, you know, even php right? PHP and like Laravel, or whatever. Uh, and so I'm ignoring those, like, those pockets of productivity, right? Those pockets of like intense productivity that people like, have all their needs met in that same way. Um, but as far as like general, general sort of ecosystem size and speed for me, um, like what you said, like applies to me. Like if I, if I'm just like, especially if I'm just like, Oh, I just wanna build a backend, Like, I wanna build something that's like super small and just does like, you know, maybe a few, a couple, you know, endpoints or whatever and just, I just wanna throw it out there. Right? Uh, I, I will pick, yeah. Typescript. It just like, it makes sense to me. I also think note is a better. VM or platform to build on than any of the others as well. So like, like I, by any of the others, I mean, Python, Perl, Ruby, right? Like sort of in the same class of, of tool. So I I am kind of convinced that, um, Node is better, than those as far as core abilities, right? Like threading Right. Versus the just multi-processing and like, you know, other, other, other solutions and like, stuff like that. So, if you want a boring stack, if I don't wanna use any tokens, right? Any innovation tokens I reach for TypeScript. [00:54:46] Jeremy: I think it's good that you brought up. Rails and, and Django because, uh, personally I've done, I've done work with Rails, and you're right in that Rails has so many built in, and the ways to do them are so well established that your ability to be productive and build something really fast hard to compete with, at least in my experience with available in the Node ecosystem. Um, on the other hand, like I, I also see what you mean by the runtimes. Like with Node, you're, you're built on top of V8 and there's so many resources being poured into it to making it fast and making it run pretty much everywhere. I think you probably don't do too much work with managed services, but if you go to a managed service to run your code, like a platform as a service, they're gonna support Node. Will they support your other preferred language? Maybe, maybe not, You know that they will, they'll be able to run node apps so but yeah I don't know if it will ever happen or maybe I'm just not familiar with it, but feel like there isn't a real rails of javascript. [00:56:14] Victor: Yeah, you're, totally right. There are, there are. It's, it's weird. It's actually weird that there, like Uh, but, but, I kind of agree with you. There's projects that are trying it recently. There's like Adonis, um, there is, there are backends that also do, like, will do basic templating, like Nest, NestJS is like really excellent. It's like one of the best sort of backend, projects out there. I I, I but like back in the day, there were projects like Sails, which was like very much trying to do exactly what Rails did, but it just didn't seem to take off and reach that critical mass possibly because of the size of the ecosystem, right? Like, how many alternatives to Rails are there? Not many, right? And, and now, anyway, maybe let's say the rest of 'em sort of like died out over the years, but there's also like, um, hapi HAPI, uh, which is like also, you know, similarly, it was like angling themselves to be that, but they just never, they never found the traction they needed. I think, um, or at least to be as wide, widely known as Rails is for, for, for the, for the Ruby ecosystem, um, but also for people to kind of know the magic, cause. Like I feel like you're productive in Rails only when you imbibe the magic, right? You, you, know all the magic context and you know the incantations and they're comforting to you, right? Like you've, you've, you have the, you have the sort of like, uh, convention. You're like, if you're living and breathing the convention, everything's amazing, right? Like, like you can't beat that. You're just like, you're in the zone but you need people to get in that zone. And I don't think node has, people are just too, they're too frazzled. They're going like, there's too much options. They can't, it's hard to commit, right? Like, imagine if you'd committed to backbone. Like you got, you can't, It's, it's over. Oh, it's not over. I mean, I don't, no, I don't wanna, you know, disparage the backbone project. I don't use it, but, you know, maybe they're still doing stuff and you know, I'm sure people are still working on it, but you can't, you, it's hard to commit and sort of really imbibe that sort of convention or, or, or sort of like, make yourself sort of breathe that product when there's like 10 products that are kind of similar and could be useful as well. Yeah, I think that's, that's that's kind of big. It's weird that there isn't a rails, for NodeJS, but, but people are working on it obviously. Like I mentioned Adonis, there's, there's more. I'm leaving a bunch of them out, but that's part of the problem. [00:58:52] Jeremy: On, on one hand, it's really cool that people are trying so many different things because hopefully maybe they can find something that like other people wouldn't have thought of if they all stick same framework. but on the other hand, it's ... how much time have we spent jumping between all these different frameworks when what we could have if we had a rails. [00:59:23] Victor: Yeah the, the sort of wasted time is, is crazy to think about it uh, I do think about that from time to time. And you know, and personally I waste a lot of my own time. Like, just, just rec
Summary KeywordsPeople, organisation, Australia, learning, years, world, senior leaders, work, connect, Tasmania, opportunity, ideas, managers, process, happening, excellence, network, company, operators.IntroductionWelcome to episode 111 of the Enterprise Excellence Podcast. It is such a pleasure to have Mr Victor Caune on the show with us today. Victor more than anyone has helped so many people and organisations in Australia connect, go, see and learn from each other. Victor is a connector, educator and motivator extraordinaire. He has developed two of Australia's most successful Excellence networking organisations SIRF Round Tables and Best Practice Network. He is on the show with us today to share his approaches to connecting people and learning from each other to sustain and achieve Enterprise Excellence.We are proudly sponsored by S A Partners, a world-leading business transformation consultancy.Youtube Links:Full episode: https://youtu.be/4BEJo2w_GVMTwo-Minute Tip - https://youtu.be/55hLjZ0h2J8Two Minute TipBrad: Victor, what would be your two-minute tip mate for people in your area of expertise? This whole piece of connecting people networking, helping people go see and learn from each other?Victor: Be bold. Be prepared to have a go. Get outside of your comfort zone. Go to a conference, go to an event, introduce yourself to people, find out what's going on. So that's probably my tip.Brad: Yeah, nice.Victor: There's always someone out there doing interesting things, believe it or not. There's never a dull moment in your day if you go and talk to people, even on your holidays, or through work. It doesn't matter. There's always someone with a better approach or a better idea. But you've got to go and seek it. It just doesn't happen by itself. And nine times out of 10 people are really willing to talk and share about what they're doing. So that's what I find. Even someone like yourself, I think you're doing a fantastic job with all of us. Brad: Thanks, Victor. Really appreciate it. Victor: That's a serious comment. Brad: Yeah, well, I've learned from the best mate. Victor: I'm halfway through Jeff Sutherland's book on Agile and Scrum and thoroughly enjoying it. I enjoyed your presentation with him. He's a real practitioner and he's got the runs on the board. So again, it's a learning opportunity of just finding out what else is happening in the world.Brad: Yeah, I like Jeff too Victor, because he's... You know, the stuff that he's done is insane. But he does not tell people to just take what he does and apply it. He says create your own way, you know, learn from it, and create your own playbook. And I respect that.Victor: Well, that's what it is. Create your own playbook. Links Brad is proud to support many Australian businesses. You can find him on LinkedIn here. If you'd like to speak to him about how he can help your business, call him on 0402 448 445 or email bjeavons@iqi.com.au. Our website is www.bradjeavons.com.What next?1. Join our membership page to access free planning resources.2. Join our Enterprise Excellence online community.3. Have a look at the Agile certified training that we offer.
Right from the very beginning, 2020 has been a strange year. In this eighth episode of the TheAlivePodcast, we speak with our friends Prof-Collins Ifeonu and James Tuyishime about some of the events of this year. We talked about the personal impacts of the COVID pandemic and the recent ENDSARS protests in Nigeria. Finally, we discussed what we believe a Christian response to ENDSARS looks like. Visit our website iamalive.ca for more content. Timestamp: Synopsis of Episode 8 (10:10) Tuyishime's reflects on how he was personally affected by COVID (16:08) Victor: “There was a time when Prof really really liked me.” (25:35) The boring art of graduating in 2020 (27:20) Prof shares his perspective on the switch to online school (35:34) Tommy speaks on behalf of the in-person school of thought (49:15) Nigeria's ENDSARS as seen through Prof's eyes (63:05) Maslow's Hierarchy of Needs? (81:03) What is a Christian response to ENDSARS? (89:00) Tuyishime: we must not be couch potatoes (101:20) Prof shares a personal story (104:25)
Join BUZZARDSKORNER OF LOVE RADIO Tuesday @3:30p & Let's Talk, Victim or Victor? There are a lot of reason to play the VICTIM role in life, you get attention, pepole are looking at you, your noticed, ect so on. Yet, is it a happy way to live? I have been on both sides of the coin and I will say I enjoy playing The VICTOR role so much more! We will discuss the benefits of BEING a VICTOR versus BEING a VICTIM! This world may give reasons as to why you need to be a "VICTIM" yet, we aren't here to please the World....or are you? Angels, in 2015 I did a topic on Victim/Victor and at that time I was still hanging onto some "victim" consciousness. NO MORE! & that is what we will be sharing with you! It is a FREE space to live, move, and have your BEING in! I AM a living testimony! See you Tuesday 3:30pmPAC/6:30pmEST right here @http://www.blogtalkradio.com/buzzardskorner-of-love Prayer, Affirmations and tools to help you begin BEING a VICTOR in your life! If you woul like to go deeper within yourself check our website out @http://www.buzzardskorner.com BUZZARDSKORNER OF LOVE bringing people back to themselves!
Panel: Charles Max Wood Guest: Victor Shepelev This week on My Ruby Story, Charles talks with Victor Shepelev who is a Ruby programmer and also a poet. He works for Verbit.ai and lives in Kharkiv, Ukraine. Chuck and Victor talk about his background, how Victor got into Ruby, and his latest projects. In particular, we dive pretty deep on: 1:13 – Chuck: Episode 367 – check it out! 1:37 – Background? 1:42 – Living in Ukraine. 2:08 – Chuck: How did you get into programming? 2:18 – Victor: I broke my leg and very bored. In ‘85-‘86 and I was gaming. Since then I got into programming and have been in it for 20 years. 3:20 – Chuck: Prince of Persia. 3:26 – Chuck: What made you stick with programming? 3:34 – Victor: I think it was magically and exotic. It still fascinates me. 4:03 – Chuck: How did you get into Ruby? 4:15 – Victor: There are great several programming attitudes – but I belong to the one that just write texts that expose the meanings. I like the text. I am a poet. When I write in Ruby (not like poetry), I write texts and that is what I’m thinking about. I loved C-Plus, Plus in the early 2000’s. For me it wasn’t fully expressive enough. I tried other things and searched other options. I met Ruby and it was love at the first sight. 7:09 – Chuck: What have you done with Ruby that you are proud of? 7:18 – Victor: The project takes my time is data integrated into itself: countries, planets, famous paintings, and so on. It’s really cool. 9:49 – Chuck: Where can you find this project? 9:54: Victor – GitHub and some conferences. 10:27 – Chuck: You mentioned being in a company that does translation? 10:33 – Victor: Yes. It is written in Python. 11:11 – Chuck: What are you working on now? 11:18 – Victor: Yes, this project and last year I got into development of Ruby itself. I wasn’t that proficient. I am not contributing to the language itself but creating documentation (program language reference) and new features of Ruby. 12:40 – Chuck: What is the Ruby community like in Ukraine? 12:46 – Victor: It is pretty large. Don’t know if it is large to U.S. standards. Meetups happens every once to twice a month in my city. Recent years it has gotten smaller, because I don’t know if they are going to the new “hip” technology. 14:16 – Chuck: We’d have Meetups like 30-40-50 people and now it’s only 10-20. Different companies are moving to different things that they need. 14:43 – Victor: In Ukraine I think a lot of people are doing a lot of opensource. I think it will still grow to some extent. 15:29 – Chuck: It’s not that Ruby is dying per se. Ruby hit a stride when web was hot. Now we are seeing growth in AI or IOT. For example people are reaching to Python for the mathematics and scientific side to it. 16:17 – Victor adds in his comments. Victor: I had some high hopes for Rails. 18:14 – Chuck comments. Chuck: It would be interesting to see bindings. See these other options come forward. 18:39 – Victor. 19:10 – Chuck: Picks! 19:14 – Advertisement. Links: Ruby Elixir Episode 367 – check it out! Victor’s GitHub Victor – Zverok with Ruby Victor’s Facebook Victor’s Talk on Tech Talk – The Functional Style in Ruby The Ruby Reference Book: Voroshilovgrad by Serhiy Zhadan Book: Words for War New Poems from Ukraine Sponsors: Code Badges Get a Coder Job Cache Fly Picks: Charles Elixir Mix – check-out future Episodes Game – Play Bloons Tower Defense 6 Victor The Ruby Reference Book: Voroshilovgrad by Serhiy Zhadan Book: Words for War New Poems from Ukraine
Panel: Charles Max Wood Guest: Victor Shepelev This week on My Ruby Story, Charles talks with Victor Shepelev who is a Ruby programmer and also a poet. He works for Verbit.ai and lives in Kharkiv, Ukraine. Chuck and Victor talk about his background, how Victor got into Ruby, and his latest projects. In particular, we dive pretty deep on: 1:13 – Chuck: Episode 367 – check it out! 1:37 – Background? 1:42 – Living in Ukraine. 2:08 – Chuck: How did you get into programming? 2:18 – Victor: I broke my leg and very bored. In ‘85-‘86 and I was gaming. Since then I got into programming and have been in it for 20 years. 3:20 – Chuck: Prince of Persia. 3:26 – Chuck: What made you stick with programming? 3:34 – Victor: I think it was magically and exotic. It still fascinates me. 4:03 – Chuck: How did you get into Ruby? 4:15 – Victor: There are great several programming attitudes – but I belong to the one that just write texts that expose the meanings. I like the text. I am a poet. When I write in Ruby (not like poetry), I write texts and that is what I’m thinking about. I loved C-Plus, Plus in the early 2000’s. For me it wasn’t fully expressive enough. I tried other things and searched other options. I met Ruby and it was love at the first sight. 7:09 – Chuck: What have you done with Ruby that you are proud of? 7:18 – Victor: The project takes my time is data integrated into itself: countries, planets, famous paintings, and so on. It’s really cool. 9:49 – Chuck: Where can you find this project? 9:54: Victor – GitHub and some conferences. 10:27 – Chuck: You mentioned being in a company that does translation? 10:33 – Victor: Yes. It is written in Python. 11:11 – Chuck: What are you working on now? 11:18 – Victor: Yes, this project and last year I got into development of Ruby itself. I wasn’t that proficient. I am not contributing to the language itself but creating documentation (program language reference) and new features of Ruby. 12:40 – Chuck: What is the Ruby community like in Ukraine? 12:46 – Victor: It is pretty large. Don’t know if it is large to U.S. standards. Meetups happens every once to twice a month in my city. Recent years it has gotten smaller, because I don’t know if they are going to the new “hip” technology. 14:16 – Chuck: We’d have Meetups like 30-40-50 people and now it’s only 10-20. Different companies are moving to different things that they need. 14:43 – Victor: In Ukraine I think a lot of people are doing a lot of opensource. I think it will still grow to some extent. 15:29 – Chuck: It’s not that Ruby is dying per se. Ruby hit a stride when web was hot. Now we are seeing growth in AI or IOT. For example people are reaching to Python for the mathematics and scientific side to it. 16:17 – Victor adds in his comments. Victor: I had some high hopes for Rails. 18:14 – Chuck comments. Chuck: It would be interesting to see bindings. See these other options come forward. 18:39 – Victor. 19:10 – Chuck: Picks! 19:14 – Advertisement. Links: Ruby Elixir Episode 367 – check it out! Victor’s GitHub Victor – Zverok with Ruby Victor’s Facebook Victor’s Talk on Tech Talk – The Functional Style in Ruby The Ruby Reference Book: Voroshilovgrad by Serhiy Zhadan Book: Words for War New Poems from Ukraine Sponsors: Code Badges Get a Coder Job Cache Fly Picks: Charles Elixir Mix – check-out future Episodes Game – Play Bloons Tower Defense 6 Victor The Ruby Reference Book: Voroshilovgrad by Serhiy Zhadan Book: Words for War New Poems from Ukraine
Panel: Charles Max Wood Guest: Victor Shepelev This week on My Ruby Story, Charles talks with Victor Shepelev who is a Ruby programmer and also a poet. He works for Verbit.ai and lives in Kharkiv, Ukraine. Chuck and Victor talk about his background, how Victor got into Ruby, and his latest projects. In particular, we dive pretty deep on: 1:13 – Chuck: Episode 367 – check it out! 1:37 – Background? 1:42 – Living in Ukraine. 2:08 – Chuck: How did you get into programming? 2:18 – Victor: I broke my leg and very bored. In ‘85-‘86 and I was gaming. Since then I got into programming and have been in it for 20 years. 3:20 – Chuck: Prince of Persia. 3:26 – Chuck: What made you stick with programming? 3:34 – Victor: I think it was magically and exotic. It still fascinates me. 4:03 – Chuck: How did you get into Ruby? 4:15 – Victor: There are great several programming attitudes – but I belong to the one that just write texts that expose the meanings. I like the text. I am a poet. When I write in Ruby (not like poetry), I write texts and that is what I’m thinking about. I loved C-Plus, Plus in the early 2000’s. For me it wasn’t fully expressive enough. I tried other things and searched other options. I met Ruby and it was love at the first sight. 7:09 – Chuck: What have you done with Ruby that you are proud of? 7:18 – Victor: The project takes my time is data integrated into itself: countries, planets, famous paintings, and so on. It’s really cool. 9:49 – Chuck: Where can you find this project? 9:54: Victor – GitHub and some conferences. 10:27 – Chuck: You mentioned being in a company that does translation? 10:33 – Victor: Yes. It is written in Python. 11:11 – Chuck: What are you working on now? 11:18 – Victor: Yes, this project and last year I got into development of Ruby itself. I wasn’t that proficient. I am not contributing to the language itself but creating documentation (program language reference) and new features of Ruby. 12:40 – Chuck: What is the Ruby community like in Ukraine? 12:46 – Victor: It is pretty large. Don’t know if it is large to U.S. standards. Meetups happens every once to twice a month in my city. Recent years it has gotten smaller, because I don’t know if they are going to the new “hip” technology. 14:16 – Chuck: We’d have Meetups like 30-40-50 people and now it’s only 10-20. Different companies are moving to different things that they need. 14:43 – Victor: In Ukraine I think a lot of people are doing a lot of opensource. I think it will still grow to some extent. 15:29 – Chuck: It’s not that Ruby is dying per se. Ruby hit a stride when web was hot. Now we are seeing growth in AI or IOT. For example people are reaching to Python for the mathematics and scientific side to it. 16:17 – Victor adds in his comments. Victor: I had some high hopes for Rails. 18:14 – Chuck comments. Chuck: It would be interesting to see bindings. See these other options come forward. 18:39 – Victor. 19:10 – Chuck: Picks! 19:14 – Advertisement. Links: Ruby Elixir Episode 367 – check it out! Victor’s GitHub Victor – Zverok with Ruby Victor’s Facebook Victor’s Talk on Tech Talk – The Functional Style in Ruby The Ruby Reference Book: Voroshilovgrad by Serhiy Zhadan Book: Words for War New Poems from Ukraine Sponsors: Code Badges Get a Coder Job Cache Fly Picks: Charles Elixir Mix – check-out future Episodes Game – Play Bloons Tower Defense 6 Victor The Ruby Reference Book: Voroshilovgrad by Serhiy Zhadan Book: Words for War New Poems from Ukraine
非常感谢热心听众【卷卷-Cecilia 李文娟】和【Maggie-吕欣欣】对本文稿的贡献Heyang: If you have had a bad day, a one-upper has the absolute worst day of their entire life and possibly the worst in recorded history. If you met a hot guy on vacation, the one-upper is dating Brad Pitt or Hu Ge or Huo Jianhua right now. The one-upper is the most obnoxious and hateable person you’ve ever met, but they probably are really proud that they have one-upped everyone else you ever thought you hated.Victor: Everything is a competition for these people.Heyang: I guess so, and the reason why I s ound a little bit angry is just the thought of dating Hu Ge and Huo Jianhua. It’s something you just can’t bear it, and also Brad Pitt. OK guys, so how would you define a one upper, and have you ever encountered one?Victor: Well, I don’t think I’ve really encountered anybody like that. But I think one would define a one-upper as a very annoying person who always wants to be better than everybody else. If you have achieved something, they want to achieve something plus one.Heyang: Or they’re just saying it sometimes. They have to be at the upper level of everything. (Luo Yu: Or lower level.) Oh, how does that work?Luo Yu: It really does depend on the competition. For example, if you say I go to Hainan this Spring Festival, I booked a very nice hotel—in Sheraton and it was a suite, right? And another people would say, reply to you: ‘I have a very wonderful holiday there in Maldives, and we had this beautiful Sunset Villa.’ (Heyang: Okay. Victor: Or the presidential suite. If you had a suite, I had a presidential suite.) Right, and this is trying to top your stories. Another one probably is like this, you know, I work very hard. I’m a workaholic. I have one paper due tomorrow. The other one replied to you, you know, I have four papers due tomorrow and let’s just hang out.Victor: It’s about attention. Grabbing attention. The attention always has to be on that person.Heyang: Yes, and the part that I can’t really agree with you, Luo Yu, is, after having a conversation like that, how could you hang out? It’s like I don’t want to be with this person for even one more second. And there’re just so many jokes as such about one-uppers online. I’ve looked at a few, and the one that really got me was this one. Here I’m air quoting it: I found twenty dollars in the street the other day and I was feeling pretty lucky about it, until that one-upper told everybody on that very day he discovered that Donald Trump was his uncle. If we turn it into Donald Trump, well, I suppose Donald Trump, you know, with presidential campaign and all that, he is probably not as rich right now. But we can turn it into a Chinese version, so he discovered that Ma Yun, (Luo Yu: Jack Ma) Jack Ma, was his uncle or his dad or whatever. God! Don’t you hate that guy!Victor: Donald trump is still probably very rich, but I would never want him to be my uncle.Luo Yu: Why?Victor: Because have you heard any his speeches lately, I mean he’s a little bit crazy, I think. This is just my personal opinion, but I’m not a huge fan.Heyang: That’s true. And Luo Yu and I had a discussion about Donald Trump a couple of days ago. And Okay, Luo Yu, I’m gonna say this, he thinks Donald Trump is pretty amazing. So yeah, you guys have some very different views on Donald Trump, but that’s not gonna be the topic of discussion for today, maybe for another day. (Victor: Once again, he dominated our conversation, so I give him full points for that.) I refuse to give him any more publicity, not like he needs it.Heyang: Not like he needs it. Did we mention how this term was derived in the first place?Victor: Well during the break we did have time to look up the origin of the concept of one-upper. I don’t know if this is the real origin but there’s a picture we have posted on News Plus Wechat account that listeners can follow. It’s a picture I think I’ve seen this before. It’s Sophia Loren at the 1957 Cannes Film Festival at a party. She is looking at the bosom of Jayne Mansfield who looks like Marilyn Monroe in this picture and her eyes are just focused on her body and it’s quite a funny scene.Heyang: It’s quite a funny scene especially Sophia Loren, she is so gorgeous and when she’s in the room, how could one person not be looking at her except for in this circumstance so…Victor: They are both wearing low-cut dresses (Heyang: Yeah) so when the eyes of Sophia Loren are focused on the other person and it’s quite funny.Heyang: Yes, so she has been one-upped. And there is our Wechat listener Apple says that kids try to do this all the time. I wonder if it’s just that they want attention and yeah you see that amongst kids a lot that they’re always in this competition like “My dad rides a bicycle”, “My dad owns a car”(Victor: Or my dad can beat your dad up) Yes! And that’s the ultimate trophy. There’s also Han, oh thank you Han, he’s sending multiple messages today and said some people can impress others without speaking too much; the one-uppers impress others by speaking a lot. In some cases being a one-upper is better than staying low key, especially when you’re dating someone or you’re in a group interview, kind of a session, then sort of making yourself stand out is really important. But through this way? Guys, what do you have to say about that?Victor: Probably not by putting others down. I can see in a group setting for example, in a group interview, you do want to be impressive. But if you are always trying to put other people down, I think that also shows you are a horrible person to work with.Luo Yu: I don't like those people at all, always want to be dominate person, controlling the whole group.Victor: Like Donald Trump? Donald Trump? Probably.Heyang: Yes, he’s the king of one-upping everyone else.Victor: There we go we have a theme in the show today.Heyang: Yes and I’m sure Donald Trump is not listening. He doesn't need to say anything, just look at that I call it a squirrel setting on top of his head. He’s got gigantic hair, I mean, just the presence of him has one-upped everybody else. That’s what I think. Well if you’re so unfortunately been caged in a room with a one-upper and he or she is doing all these dramatic things and how do you deal with a person like that?Victor: I’ll probably just laugh. I mean that’s probably the best way. I don't want my mental health to be affected. (Heyang: Okay.)So I just gonna stand there and smile.Luo Yu: I’ll give him or her a very nice nod and try to deflect and change the subject.Heyang: Alright, and what if she spins back?Victor: They’ll just follow you to the next subject.Heyang: So ignoring that person is… Well, I think you need a big heart.Victor: Just walk away. Just walk away. And also don't engage. It takes two people to fight always, so if you don't fight then there could be no fights.Heyang: I was really hoping you guys will put up a fight but you guys are both gentlemen.Victor: What you resist persists, right? So just let it go, that’s probably the best way. I just got really Zen there for a second.Luo Yu: Oh that’s a very good one.Heyang: Yes yes and also a little bit of a massage in the soul. Thank you for that.