Blog
Bio
The Technician
No Imperfections Noted
The Jeff and Casey Show
Jeff and Casey Time
Casey Muratori
Seattle, WA
The One Nun in the Whorehouse
"We will see who has the last laugh, piano people... we will see."
Original air date: April 28th, 2014
Topics. HTML. CSS. Dynamic HTML. CNN. Lost planes. Anchorman 2. Full retard. Stoners. Bongs. JavaScript. String processing. Page layout. Flipping Jeff off. The Megatimer. Twitter. Twitter blocking. Plug-ins. Sample libraries. VST. Virtual Instruments. Virtual knobs. Virtual sliders. Yamaha S90es. Korg Kronos X. Digital Audio Workstations. MIDI. Roland FP-1. Piano samples. Kontakt. Encrypted sample libraries. Digital Rights Management. Translator Pro. Ivory. Synthogy. Adobe Premiere. Virtual machines.
Subscribe. If you’d like to have the latest episode of The Jeff and Casey Show delivered fresh to your computer every Monday, you can check out our list of RSS feeds and other subscription options here.
Transcript
Jeff:
Hey, everybody. Welcome to the Jeff & Casey Show.
Casey:
Hello, and welcome to the Jeff & Casey Show, the finest hour of podcast magic wafting into your ears.
Jeff:
On the internet…
Casey:
On the internet, yes. I have a feeling that, if nothing else, we will outlast all the other podcasts because since there’s really no money in it, I feel like a lot of other people will kind of fade away.
Jeff:
They’re focusing on the monetization.
Casey:
They’re focusing on the monetization. They’re focusing on the teen monetization, in the safe and legal manner whereas we are neither safe, legal, nor interested in monetizing…
Jeff:
Yeah, and nor teen-friendly…
Casey:
Nor teen-friendly, that’s a good point. We’re marked “Explicit” so they can’t even listen to this, I guess.
Jeff:
We prefer that they really start listening…
Casey:
We’re like a hard R.
Jeff:
We want them…
Casey:
We’re no PG-13.
Jeff:
We want people to start listening in their 30’s.
Casey:
Yeah. Someone 30+.
Jeff:
Yeah, 30+ is fine.
Casey:
Well, that’s convenient because I have a feeling that nobody under 30 does listen to this podcast probably.
Jeff:
This is true.
Casey:
So Jeff, I feel like… I don’t want to start things off on the wrong foot. I’ll say that right off the bat
Jeff:
Okay.
Casey:
I don’t want to start things off on the wrong foot, however, again, having been working on the Jeff & Casey Show site in my spare time…
Jeff:
You’re in the HTML, the world of HTML…
Casey:
No, I’ve got out of that a long time ago.
Jeff:
Okay, you’re done with that?
Casey:
Yeah. So the way I do it now…
Jeff:
You’re not… Right, you’re in the world of JavaScript. You’re not in the world of HTML.
Casey:
I’m really in the world of nothing now.
Jeff:
Okay.
Casey:
I’m actually very happy with it right now. There are some things that annoy me. I guess… Well, hey, it’s the Jeff & Casey Show. Time for a tangent on the tangent that was not even supposed to be a topic on the show. I will explain to you how I actually do this which is actually kind of interesting. I'm gonna bring it up at some point. So a long time ago… Long, long, long ago in a time far away like in 1999 or something…
Jeff:
Right. Darth CSS ruled the galaxy.
Casey:
Sort of. I realize that you could do animation on HTML webpages. There was nothing like this everyone was using Flash and stuff. And I was like, “Oh, okay. I can update these on a timer.” And I had my first site. I don’t know if you remember FunkyTroll.com had these words that would fly in from the side…
Jeff:
Oh, yeah, yeah.
Casey:
And shit that would animate and stuff and people were like, “Oh, that’s really cool.” And I was like, “Oh, great. This is gonna be to neat or whatever.” But I didn’t really have any website stuff to do or whatever. So I really never did anything like that or worked on web stuff. Much later, when I had to do websites, I came back to it and the world was not that… Like, dynamic HTML was not the thing anymore. It was, like, CSS plus all these things. And I looked at it and I’m like… It was trivial back then for me to just have these things that were flying around the screens, doing all this crazy shit. And now, what the fuck is all of this? It’s like, it’s this nightmarish hodgepodge of things that don’t work particularly well, right?
Jeff:
I think it lines up very well with normal object orientation because for example, if you look at the Rad webpage and you delete the CSS.
Casey:
Yeah.
Jeff:
Like you say, View Source or something…
Casey:
Yeah.
Jeff:
The page has minimal mark-up on it. Like, everything is… I went… I was very careful to do everything… ‘Cos I get all that and I generate it. And I did it by the book in the sense that our webpage is content only.
Casey:
Right.
Jeff:
Everything else including, the placement of shit on the page, if you run it normally with an old browser, it will work on a text browser and the menus come out as DB’s, like… It’s everything.
Casey:
Okay. Alright, yeah.
Jeff:
And there is something satisfying about doing that in the sense of you separated the layout from the content and all that. In the same way, there is something satisfying about writing something object-oriented where you’re like, “Nice,” and like, “Oh, it’s this clean little cubic zirconium of the file…”
Casey:
Not sure I follow you but keep going.
Jeff:
When you create something, especially like my first object-oriented programming thing…
Casey:
Yeah.
Jeff:
You feel good about it because you haven’t had to hook it to anything yet. It hasn’t gone nasty. You haven’t had to deal with, like, “Oh, I’ve got half of the code in the [ hair file ] and half of the code in the [inaudible 4:23]
Casey:
Alright.
Jeff:
It’s all just sitting there, all the code…
Casey:
I see where you’re going. I will refrain from disagreeing right now.
Jeff:
Yes. So I guess…
Casey:
I see where you’re going with it.
Jeff:
But it is only satisfying in a completely…
Casey:
Unimportant way?
Jeff:
Kind of like an aspy way of, like, “Oh, I just did this thing and I cleaned… I’m OCD. I cleaned my desk.” And the way I cleaned my desk is I took everything I was supposed to do and put it in the drawer, right? After 10 years of RAD’s website being like this, can tell you there is absolutely not a single win from doing that. And since then, I’m captain, absolute captain div style… Like, I just put…
Casey:
Cables everywhere, whatever…
Jeff:
I just… Because I’ve always auto-generated that.
Casey:
Yes.
Jeff:
So I can do that.
Casey:
Right.
Jeff:
And so, it used to just… Because the awesome thing about CSS, it doesn’t even abstract what you want. You can’t, say, establish constance for background color equals this and then refer the background color everywhere…
Casey:
Right, right, right…
Jeff:
So I have something that auto-generates the CSS. So I only have to set the color once. Stupid shit like that… You’re like, “I don’t even know what you guys try…” That’s the number one thing is, “Oh, I want to change my layout and colors. And everything still needs to work.”
Casey:
Okay.
Jeff:
You have to manually go find everywhere you did, like, [inaudible 6:00]
Casey:
Yeah, they’ve got a lot of problems. Yeah, they introduced stuff to try and address that of course. Of course…
Jeff:
Yeah. Anyway, so my point now is I just… My two recommendations when everyone’s like, “Oh, I gotta do HTML.” I’m like, “Div style, baby. Don’t bother with anything. Just put it Div style. If that doesn’t work, just div style around that.” First rule number… Number 1, this is just my thing…
Casey:
This is just tips, div style.
Jeff:
Yeah. Number 1. And then you can do your super thing which I’d like to do I just haven’t had tie to.
Casey:
Yeah.
Jeff:
And then the next thing is absolute with no position specified. Div style absolute…
Casey:
What?
Jeff:
Wrap… And then inside that, div style relative.
Casey:
Okay.
Jeff:
That lets you… From where the position is on the screen, you move something somewhere else and then it still continues to flow from there.
Casey:
Okay.
Jeff:
Which is what you think the relative would fucking do…
Casey:
Relative leaves a hole.
Jeff:
It just…
Casey:
It leaves a hole…
Jeff:
I’m sorry. Wait, let me be clear.
Casey:
I love the hole.
Jeff:
Div style equals absolute with equals zero pix.
Casey:
Okay.
Jeff:
Because that still [ leaves the div ]… And then it’s like, “Hey, then wherever you’re at, you can be negative 10 and put…” You’re like…
Casey:
Okay.
Jeff:
So literally, when I have like, “Why the fuck is there two fucking spaces at the end of that paragraph?” I don’t even think about it. Div absolute with height relative minus 10. I just go… Bring it up. I just fuck it. Fuck it. So anyway, that is my manhandling HMTL.
Casey:
Okay. So I don’t like any of that stuff at all. I do not accept HTML and CSS at all. I think they’re complete garbage. And I refuse to use them. So yeah, what I decided to do is I’m just like, “I’m gonna just go back to the way I used to do it back in the day where I just say where I fucking want the shit on the screen. So it’s like, “It goes here.”
Jeff:
Yep.
Casey:
So that’s relatively easy to do because really, all you have to do is you just make divs with absolute positioning and you put them where you want them. It’s very straightforward. And the interesting thing about it is that it works everywhere. So I’ve never had a cross-browser bug.
Jeff:
Right.
Casey:
Which is insane, right? Because normally, you do the CSS… It’s completely different on different browsers.
Jeff:
So you do the layout by hand?
Casey:
Right.
Jeff:
And then you do it… How do you know how…
Casey:
Hold on a second. Here’s what I’m gonna tell you. So now we’ll get into those. That’s the way I want to do it. I’m like, “Alright, let’s do this this way and I’ll just do it that way,” because again, one of the nice things about it… A [inaudible 8:44] that I have that other people don’t have, obviously, is that I never really have to do web stuff for my livelihood.
Jeff:
Right.
Casey:
So if I do something wack-ass crazy and it doesn’t really work, it’s no skin off my back. It’s like, “So my site’s janky, who cares?” It’s me doing some stuff that I want to experiment with. It’s not about shipping a final product to a user, right?
Jeff:
Right.
Casey:
Which makes a big difference because obviously, if you’re like, “I’m trying to ship CNN.com,” you’ve got to sweat the outcome of that site or whatever.
Jeff:
Except for the fact…
Casey:
Not that they do…
Jeff:
Right.
Casey:
But I mean, if I was… If I was in charge of that, I wouldn’t maybe be so… But either way…
Jeff:
Also, CNN would just be like, bracket body, “Plane still missing…”
Casey:
Right. Yeah.
Jeff:
Bracket/body. That would be…
Casey:
It wouldn’t be put… They would never write, “Plane still missing.” They’d be like, “Is plane still missing?” Or, “Have we found…” Like there’d be a question and everyone’s like, “No.”
Jeff:
Yeah. This is gonna be on in a month, this podcast. So it will be interesting…
Casey:
They’ll probably still…
Jeff:
Yeah, they’ll probably still be looking…
Casey:
No risk. CNN will still be looking for that plane.
Jeff:
Sean mentioned that there was a site somebody linked to of missing planes…
Casey:
Okay.
Jeff:
We lose a plane a year.
Casey:
We do?
Jeff:
Yeah, and there’s like… Going back to the 1950’s…
Casey:
No.
Jeff:
The statistic is fucking huge.
Casey:
We lose a plane a year?
Jeff:
[inaudible 10:00] It’s just, this is one of the ones where they’re just like, “We’ve got to monetize this plane. We need…”
Casey:
Okay.
Jeff:
“This is a story…”
Casey:
“We need a story, people.”
Jeff:
And so, of those 50, apparently… And I’m telling you what Sean said. I’ll trying to find it but apparently of the 50, we’ve only found 3.
Casey:
Really?
Jeff:
We did find, eventually, wreckage of those 3. So that’s [inaudible 10:23]
Casey:
So chances are good that this plane is not gonna get found.
Jeff:
This story could be going all the way to Christmas.
Casey:
CNN needs to milk it.
Jeff:
Right.
Casey:
Okay. So it’s like one of those new shows where they have one crime for the whole season and keep looking into it?
Jeff:
Right.
Casey:
It’s like that. CNN’s going with that model now.
Jeff:
Right.
Casey:
We’re going to be finding out little shit about this plane all year.
Jeff:
Yeah. Well, the other thing is I watched Anchorman 2 last night.
Casey:
Okay.
Jeff:
It’s fucking horrible. It is poorly acted, [inaudible 10:52]
Casey:
Yeah.
Jeff:
However, the one bit of satire that they did was that Ron… What’s his name?
Casey:
Burgundy.
Jeff:
Burgundy… Is the inventor of the modern news thing.
Casey:
Okay.
Jeff:
And he, in the course of a couple weeks while he’s on the air, invents the, you know, “America is Awesome” segment…
Casey:
Okay. Alright.
Jeff:
Like, sports where it’s just like, “Homerun. Homerun. Slam dunk. Football,” like, the guy yelling… And they don’t talk about it. They just show the highlights and him yelling. And car chases. He does…
Casey:
This is criminal…
Jeff:
They start showing a car chase and he’s like… They’re like, “That’s not news.” And he’s like, “Put it on.” And then he narrates what’s happening. And he’s just exactly those where they’re like, “I think he’s driving down the street…”
Casey:
How do you have a script that’s smart enough to know that that’s what you should be doing and now be awesome? What’s going on there?
Jeff:
Yeah, I think… If it could just…
Casey:
’Cos modern news is so bad.
Jeff:
Yeah.
Casey:
It is such a great time to be doing a parody of news because there’s so much to parody. And that sounds like they actually got into it.
Jeff:
No, they knew…
Casey:
Why couldn’t they hold on to that?
Jeff:
They knew exactly… And they even had the thing where they’re owned by some guys who owns an airline.
Casey:
Awesome.
Jeff:
And they want to do a story about… And they don’t do it investigatively but they’re like… They call it death from above because parts of planes are falling. And the billionaire says, “Look, I own you. I own the network. So you can’t record that.” So it even had a little bit of that. It’s just that everything else is terrible.
Casey:
That’s too bad ‘cos…
Jeff:
It was funny I would’ve did like, “Okay, props for that.” They did do him making his news show popular. They just nailed every last little detail.
Casey:
That’s cool.
Jeff:
Oh, and graphics. They were like, “More graphics. More graphics.” And there’s shit going…
Casey:
Awesome.
Jeff:
They had one where there was, like, 4 people yelling at each other. And you know how you have the little scrolling thing…
Casey:
Yeah.
Jeff:
Each one of them had like 4 windows and they all had their own scroll which was clever.
Casey:
It’s such a bummer that they had… ‘Cos that sounds so smart.
Jeff:
Yeah.
Casey:
It’s such a bummer that they didn’t follow through.
Jeff:
Yeah. Sorry.
Casey:
Back to the topic at hand…
Jeff:
2 topics.
Casey:
Alright, so the way I look at it… I just want to lay out this thing manually. And like I said, that works really well ‘cos if all you do is ever position divs, it works everywhere perfectly. And it was such a shock to me because it’s like, “Holy shit,” I’ve never had to test this thing once. I do crazy stuff like putting drop shadows on things manually but like… And it just works everywhere on every browser, iPad, everything. Which is… You use CSS, it doesn’t work anywhere. You barely get it working on one browser. It’s totally wrong on all the rest. It’s totally fucked up. So I was like, “Wow, this is really cool.” But you have one problem, like you said, how do you know how big things are, right?
Jeff:
For the text layout…
Casey:
For the text layout stuff because… Right, because one thing is you can do is you can go 100%. . . You can go full retard which I kinda wanted to go full retard for a while but I’ve been sticking with half retard for a number of reasons. But anyway, full retard is I’m gonna draw everything on the screen.
Jeff:
Right.
Casey:
So I’m putting fucking fonts… I send down the font as a fucking ping…
Jeff:
Oh, I see. Bat crazy, okay.
Casey:
There is no page in HTML. It is me 100% placing…
Jeff:
That fucks up search and stuff but, yeah, okay.
Casey:
Exactly. So the reason I didn’t want to go full retard was ‘cos normally, I absolutely would. But I figured like…
Jeff:
What you’re saying is usually, you would. I like that.
Casey:
Yeah.
Jeff:
Normally…
Casey:
Normally, I go full retard. I go full retard but in this case, I was like, going more the Academy Award route, trying to go Rainman style. And so, I didn’t want to do that. I wanted to make it so that it would still work with screen readers cut and paste, whatever, those sorts of things. So I still wanted to be like the text on the page is still a block of text on a div as much as possible, right?
Jeff:
Yep.
Casey:
But once you make that unfortunate step, you do have to be able to do things like how big is that block of text after it word wraps it or whatever the fuck it’s gonna do to it because you don’t know the exact font metrics that it’s gonna use ‘cos the fonts are fuzzy, right, in stuff like this. You don’t know, cross browser, what’s gonna happen there. So what you can do, of course, if you want to figure out the size of a block is you can set that block to a particular width and put the text in it, right? And then ask what its natural height is.
Jeff:
Okay.
Casey:
That’s something you can actually do. You set its height to auto as the property of the div. And then when the browser is asked what its offset height property is, it will return to you what the laid out version…
Jeff:
And you can do that as your absolute div [ then ask ], absolute div [ then ask ] and add… Like that?
Casey:
Yeah. Okay, so now we’ll get into some of the more fancy pants parts. So I did that, right? And the way I was doing it before was I would basically use JavaScript to build a page so I had 2 passes that I would do. I had one pass that creates the page and one pass that lays out the page.
Jeff:
Okay.
Casey:
So on start-up on the page, there’s just JavaScript right in line that’s just gonna create the whole page. And then there’s a function, a layout function…
Jeff:
And it’s creating in the [inaudible 16:14] absolute divs…
Casey:
It’s like calling JavaScript functions to create divs.
Jeff:
Okay. Absolutely?
Casey:
Absolutely and place them and set their text to shit. Okay? So basically you have a big long string of text at the head that’s like variable name equals create div, parentheses, here’s the data for it or whatever…
Jeff:
Okay.
Casey:
Fuck, right? You do all that shit. Then you have a function called layout. And that function, you call and you set the window resize to call it. So basically, any time you change the size, it will call the thing and it will lay out everything. And that just looks like a bunch of placed div calls that say where to put the divs that you’ve created.
Jeff:
Okay.
Casey:
Does that make sense?
Jeff:
And they know the order that things happen because you’re generating that code so you know like…
Casey:
Right.
Jeff:
Place this [inaudible 17:02]
Casey:
Or you could write it by hand. I mean, I didn’t but you could have…
Jeff:
Yeah.
Casey:
There’s nothing magic about it, right?
Jeff:
Sure.
Casey:
So that’s the way I was doing the page. And there’s… You want…
Jeff:
Did you get a Flash or anything? Like when you get the [inaudible 17:13]
Casey:
No.
Jeff:
Okay.
Casey:
So the nasty part about this, though, as it turns out is as far as I can tell, because browsers are the awesomest code on planet earth running on top of the awesomest spec on planet earth basically means that this is a non-starter. And the reason that it’s a non-starter is because as far as I can tell it is N Squared to ask that question. So if you create a div and you say how big is this div, as far as I can tell, that triggers a layout event in the browser which lays out the page.
Jeff:
Right.
Casey:
So if you then add another div and ask how big that div is and you add another div and ask how big that div is and more and more and more and more, you end up in a situation where every div you add is like exponentially more expensive to ask the size of than the one before it.
Jeff:
Right.
Casey:
Now, I don’t necessarily blame them for that because in some sense, it’s like, “Well, it’s a difficult problem and you’re creating a [ live ]…” It’s like, I blame the people who fucking specified this stuff. How did you not have a way to say, “Here’s a block of text with a style setting…”
Jeff:
Right. “I want this absolute offset…”
Casey:
Just tell me… No. I just ignore… I just want to know because that is a fixed time simple query that you could do hundreds of thousandths of a second without problem, right?
Jeff:
So that you would say, “Here’s a block of text…”
Casey:
Yes.
Jeff:
“Given the width of this many pictures, how tall it is…”
Casey:
And the style…
Jeff:
Or, “Given this height, how wide would it be or something…”
Casey:
Blablabla…
Jeff:
Just the two thing…
Casey:
It is a function that every operating system since the beginning of time has had because you need it to do anything.
Jeff:
Right.
Casey:
Fucking HTML doesn’t. Now of course, you can do some… I looked into other things. You can do stuff like you create a canvas. And in the canvas, you can ask how long the string is but it doesn’t support word wrap so you don’t know how it would… It’s a nightmare.
Jeff:
Can you just…
Casey:
It’s just ridiculously [inaudible 19:12]
Jeff:
Can you place everything at -32,000? Like, everything offset from each other by a thousand or something?
Casey:
It doesn’t matter.
Jeff:
Then ask everything all at once?
Casey:
Okay. So I tested it a bit on browsers to really know the answer to whether there is something clever you could do here. You have to ask a browser vendor. You have to ask multiple browser vendors and be like, “In your browser, what could I do, how could I set up this thing so that you don’t suck balls at answering this question?” And they’d be like, “Oh, I don’t know, a little bit of code…” Alright, well just, you know, make it so it’s parented to an invisible thing, whatever the fuck. I tried a bunch of stuff. Nothing works. Even if the divs aren’t parented to each other, even if they’re marked invisible, nothing matters. It is just… Every div you add gets slower. And that was true on the browsers that I tried. So I was like, it doesn’t seem like there’s anything I can do to fix that. So I was like, “That okay because I am a smart and capable programmer.”
Jeff:
Okay.
Casey:
I am a trained professional. I do not give up at these simple…
Jeff:
You are a trained full retard.
Casey:
I am not going full retard but I am capable of going full retard and they do not appreciate that fact.
Jeff:
Okay.
Casey:
So I’m like, “Fuck all you guys because I know,” like, I have in my head a model of the people who are making this code. I have in my head a model of the people who are writing this code. I know what they can do fast. I know what it is. I absolutely guarantee you that if there’s one thing I can count on, I know what it’s gonna be in this piece of shit browser thing. And that is strings. I’m like, “I know that these people do nothing but pass strings around all day.” And they parse strings. They string-ize… The whole fucking page is a string that comes in and has to get parsed. So I’m like, “If I can turn this into a string problem.” It’s like what you always say about stoners. If you can make a problem into ‘how do you make a bong’, a stoner can solve the problem. So the browsers are my stoner and this is my bong. Strings are my bong.
Jeff:
Okay.
Casey:
So I’m like, “I got this, guys. I know what to do.” I won’t create any divs. I’ll just have one div and I’ll keep setting its inner HTML to the text that I want sized, right?
Jeff:
Okay.
Casey:
And then I’ll ask the size of it. And that way, I’ll only ever have one. So even though it’s regenerating the layout every time, it’s only laying out one div.
Jeff:
Okay.
Casey:
So I’ll get all the sizes first.
Jeff:
Right, store them in array.
Casey:
Right.
Jeff:
Then lay it out.
Casey:
Keep them up and then I can build everything, right?
Jeff:
Oh, God damn it.
Casey:
Makes sense, right?
Jeff:
Yep.
Casey:
And furthermore, I’m like, here’s the other thing I’m gonna be able to do ‘cos I tried… The act of making the divs also seemed kind of slow. So as I was creating divs, if I had [ think ] pages that had, like, hundreds and thousands of divs on them, the creating part was bad, as well…
Jeff:
Took a while… The setting the contents of it…
Casey:
So like, it’s alright. Here’s what we’re gonna do. I’m just gonna build a giant fucking string that’s HTML that’s what the page would have been. And then I’m gonna ask it just to make that the page in one go.
Jeff:
Okay. Oh, when you’re done?
Casey:
Right. So this is what I do. I have a div.
Jeff:
I see.
Casey:
It’s invisible.
Jeff:
So just to be clear, then you can create a string that has HTML in it and tell it to parse that into the [inaudible 22:43]
Casey:
That’s right.
Jeff:
I see.
Casey:
You set the body inner HTML to that thing.
Jeff:
Right. Awesome.
Casey:
So I have an invisible div in the page I create at start-up.
Jeff:
Right.
Casey:
I go through. I get all my sizes from that div. Actually, it’s a little more complicated than that…
Jeff:
So you have an array of…
Casey:
It’s a little more complicated than that. I have one div per style.
Jeff:
Okay.
Casey:
’Cos I don’t want to bother setting the style ‘cos I figure it will be a little more efficient. I haven’t actually tested that yet. It might be more efficient to set the style into the thing because if the layout is proportional to the number of divs and you have less divs… I haven’t tested that yet. [ Goal ] sizes plough all the code necessary to generate the page in just flat HTML into a giant string…
Jeff:
Into a string…
Casey:
Set that. This is 100 times faster than when I was just creating the divs manually and setting their placement.
Jeff:
That’s amazing.
Casey:
It is stunning to me.
Jeff:
So that means you’re actually [inaudible 23:38]
Casey:
Oh, yeah.
Jeff:
A huge ass string over and over again…
Casey:
Yes.
Jeff:
Then you pass that to the browser…
Casey:
And it parses the whole God damn thing…
Jeff:
Which then re-parses that whole God damn thing over again.
Casey:
It is something that should be a hundred times slower and it is hundreds of times faster just because I went down the path that they can handle instead of the path that they should be able to handle and can’t.
Jeff:
Right. That’s amazing.
Casey:
So anyway, that is how it is working currently.
Jeff:
And you see none of this happening.
Casey:
You see none of this happening. There is one problem, though. There is one thing that I have to change, which is on my list of things to change, which is that because in the previous one which is done the correct way in my opinion but that’s too slow, all of the divs exist and are just moved… Right? They’re just moved around. In the old one, I create all the divs and I have a function that just moves them.
Jeff:
Okay.
Casey:
And that way, every time you resize the window, that’s the function that gets called.
Jeff:
Oh, okay. Right.
Casey:
So that’s good because all the divs exist. They don’t disappear. So if you have a window playing a video or audio, as in the case of the podcast, it doesn’t disappear when you resize the window and get recreated, thus losing your playback.
Jeff:
Right, I see.
Casey:
Make sense?
Jeff:
Right.
Casey:
But in the new way, it does, right?
Jeff:
Okay.
Casey:
Because I can’t leave those divs around because when you resize the window and I need to ask for the new resized content, I would incur the huge cost again of all this stuff…
Jeff:
You could just [inaudible 25:06]
Casey:
Exactly. So what I have to do is I have to do one div inside the body…
Jeff:
Right.
Casey:
Which is the thing that I replaced wholesale.
Jeff:
Right.
Casey:
Right?
Jeff:
And then the media…
Casey:
And then the thing right above that is all the media that doesn’t get deleted. And I’m like, “Fuck all you guys and your fucking fuck.” So that’s the situation.
Jeff:
Do you actually resize handle resizing?
Casey:
Mmhmm…
Jeff:
Okay. And that’s just for centering the stuff and like…
Casey:
Well, it’s actually for…
Jeff:
And like, you don’t change the columns, do you?
Casey:
I do now… So there’s stuff that it has and stuff that it hasn’t. There’s a new thing that isn’t quite done yet which basically does… Depending on the way the window aspect is and all this kind of stuff, it will do stuff like, “Oh, it changes the single column mode versus adding the flyout things…” It’s got this logic in there that does fancy shit. When you get down below the size of one page, it starts shrinking the text for you. It’s got stuff like that.
Jeff:
And you can ask how big the window is to do smart scaling and stuff and that’s all easily reliable.
Casey:
So I have some of that stuff but I haven’t deployed any of it. So right now, it’s mainly just for centering. It just centers stuff. And there’s a couple things maybe that are based on the page size but most are not. So yeah, all that stuff is there. The way all that stuff works is pretty hilarious. I have a generator where you write what looks like JavaScript code but is actually C code. And C code has deferred variables. So you do all your sizing computations and everything you want for layout but it doesn’t actually compute them. It just builds an abstract syntax tree in the C code.
Jeff:
Right.
Casey:
Then at the end of that, it processes that and anything where there is a variable that’s not known, it emits the code into the JavaScript to do that computation. So I don’t actually have to deal with any JavaScript anymore. I just write C, as far as I’m concerned, C code that does all the page layout the way I want it, and then it just fucking dumps that shit out partially specialized on the page size.
Jeff:
And you write the text just in the C and strings?
Casey:
Well, the text usually comes from sources like our transcripts or something like that [ or reading office documents ]…
Jeff:
So you’re reading off [inaudible 27:16]
Casey:
It just grabs text from wherever the fuck.
Jeff:
Okay.
Casey:
To pull it in to process it. Yeah.
Jeff:
Oh, my God.
Casey:
It’s a huge situation.
Jeff:
That’s pretty amazing.
Casey:
It’s pretty amazing but it was kind of fun and it’s like, alright, now I never have to deal with it again. It’s been quite some time, actually, where I just don’t have to care anymore and I can just [inaudible 27:35]
Jeff:
And all the browsers have to run JavaScript to search, anyway, ‘cos everything’s doing crazy shit.
Casey:
Nowadays, there’s so much JavaScript that you can really rely on everyone being able to do it because you can’t browse anything with JavaScript turned off. It’s an epic nightmare if you try.
Jeff:
So they just… When they’re spidering out, they load the page and then run everything?
Casey:
Well, Google does. I don’t know if Bing does. But since [ no one searches something ] I don’t really give a fuck.
Jeff:
That’s awesome. Wow, that’s crazy.
Casey:
It’s pretty bizarre.
Jeff:
Right. That is nuts. So as the generation comes out, all the text for the page just lives in JavaScript by the time it’s submitted in constant strings…
Casey:
Yeah. And I have some stuff that I haven’t done yet so…
Jeff:
When you view source, do you see all that madness?
Casey:
Yeah.
Jeff:
Do you see the… When you say view source, do you see the madness or do you see the post-madness?
Casey:
So I don’t know exactly what happens in all browsers when you say view source but you can, if you want to, definitely get the JavaScript source I just don’t remember the exact… Some browsers maybe do different things but I’m pretty sure in most browsers, if you right click and say view source, you will get the JavaScript. You can see the JavaScript doing this.
Jeff:
I see.
Casey:
Now, there’s a bunch of stuff. So I haven’t… There’s some things… Well, maybe by the time this podcast airs, I will have done them but there’s a couple things I haven’t done yet like common self expression elimination, I haven’t put in yet but I’m going to put in very shortly. So there’s a bunch of… The pages are way more bloated now than they need to be because we’ll do stuff like compute the width divided by two 17 fucking times. It doesn’t have a bunch of smarts in the abstract [inaudible 29:06] that it needs. So it’s gotta have those and collapse them. The other thing is strings are omitted twice right now. I need to fix that. So once when it does the size and once when it does the thing. And it would be… Since it seems like string [inaudible 29:19] is free, it seems like it’s way smarter to just assign it to a variable once and just use the variable because you won’t… ‘Cos page size is just the total text size, right? It doesn’t matter how complicated what you’re doing is. It’s how many bytes it is, right? So…
Jeff:
That’s amazing.
Casey:
Yeah.
Jeff:
Oh, God damn it. Alright. So that…
Casey:
It’s pretty funny.
Jeff:
Tangent was off the original tangent of… Where did we…
Casey:
Gosh. I mean, at this point, I don’t even remember necessarily…
Jeff:
You started saying something and then…
Casey:
I think what I was trying to say was… I’m assuming that what I was gonna say… And since nobody but me knows anyway, I’m just gonna say that this was what it was and then it is in some sense.
Jeff:
Oh, okay.
Casey:
So the original thing I was gonna say is, yeah, since I’ve been working on some of the website stuff in my spare time, it means I listened to all season 1 podcasts and all that stuff…
Jeff:
Oh, right.
Casey:
I’ve tried to figure out like… This is what we were talking about before. I wanted the podcast to kind of have that funnier, jovial, season 1 feel to it and season 2, actually. Season 2 was fantastic. I love season 2. It’s really season 3 where we started to suck. And that’s probably my fault. It was a 2-year hiatus or something, too. So it was a long…
Jeff:
Yeah, I was actually surprised as I was listening to the first one. They’re 6 years old now.
Casey:
2008 was when we started.
Jeff:
Yeah.
Casey:
But one of the things in there that we did… So I made all these lists of what were the things that we used to do. Flipping you off before the podcast starts is a big one.
Jeff:
Yeah, that’s no good.
Casey:
So I’ve been doing that again. We have the MegaTimer back. You bought a new MegaTimer because we couldn’t find the old one.
Jeff:
Yeah, it’s so shiny.
Casey:
It’s perfect. So all those things… But one of the things that… And it kinda dovetails nicely since this is becoming a Casey-cast at this point…
Jeff:
Casey-cast…
Casey:
So one of the things that used to happen on the podcast more often was I used to tell stories, really bad stories about stuff that happened to me.
Jeff:
Okay.
Casey:
You know that I…
Jeff:
You [inaudible 31:09]
Casey:
I can’t really tell stories.
Jeff:
Oh, I see.
Casey:
Well, no but you know, like… When you tell a story, it’s a story. I mean, it sounds like a story or whatever you want to call that…
Jeff:
Okay.
Casey:
But when I tell a story, it’s kind of like me relating some things that happened but I don’t organize them into a way that makes any… Like, you kinda end the story and you’re like, “Wait, was that the story?” You don’t have that sense of completion that you should have at the end of a proper storyteller’s story.
Jeff:
Okay.
Casey:
So, yes, I was trying to get to that part of the topic. There are two things that I wanted to cover that kind of go into this… I don’t know what you want to call it. That go into this franken-topic…
Jeff:
Okay.
Casey:
[ I’m on ] Twitter because I’m always on Twitter. That’s just where all my friends are.
Jeff:
You’re just blocking everything.
Casey:
I’m just on Twitter. I’m blocking people left and right. It’s a great day, right, fantastic.
Jeff:
We may have covered this that you believe you have more people blocked than follow.
Casey:
I do think I may be high on that because I’m not very popular on Twitter. I don’t have lots of followers. But I do really like to block. So I’ve got a high block number, right? And I don’t know if it’s in the thousands but… I mean, I think it could be.
Jeff:
I definitely take your… If even the smallest thing of where I’m like, “Dude…” Boom. I don’t even think about it now.
Casey:
Yep. Oh, it’s hair trigger. It’s hair trigger.
Jeff:
Then you don’t have that… Yeah, that [ stomach thing ].
Casey:
I block everything. So the catalyst that I usually do is do I feel like explaining to this person at all why I think their comment was stupid. And if the answer is yes, then I will. And if it’s no, they get blocked. That’s it. That’s the entire catalyst, right? So if it’s like…
Jeff:
I’ve started not… I don’t do that. If I think they said something…
Casey:
Stupid. Block.
Jeff:
Yeah.
Casey:
Okay. Alright. Well, anyway, so I have no problem with that. Blocking is good. Anyway, so I’m on Twitter. And I was explaining or… You can’t explain on Twitter. It’s 150 characters, just a bunch of people yelling kind of like this podcast. So I’m on there and I was complaining about the fact that plug-ins suck.
Jeff:
Okay.
Casey:
Basically, right? Plug-ins… And the context that I was talking about specifically was instruments. So you want a piano sound and you want to go buy a piano sound. In the old days, what you bought was a sample library which is a data file or series of files that a sampler loads and plays that.
Jeff:
Okay.
Casey:
And what…
Jeff:
And that’s the plug-in? Or you’re saying a plug-in…
Casey:
No, no. That’s a sample.
Jeff:
Okay.
Casey:
Sample library… And if you have a sample library from 1991, you can fucking play it to death, right?
Jeff:
Something will play. You can convert it or you can do something.
Casey:
You can load it today.
Jeff:
Yeah, okay.
Casey:
On the other hand, the new trend in the industry is not that at all. Buying a sample… If you want to try and find a sample library today, best of luck to you, my friend, because there are almost none in existence. And the once that are in existence are DRM-ed with encryptions through Contact the fucking… You know, the player from wherever the hell it is, the Contact Suite, you know what I’m talking about?
Jeff:
No.
Casey:
We own one for the Jeff & Casey Show.
Jeff:
We do?
Casey:
Yes, we do on the Jeff & Casey machine. It's what did the piano for…
Jeff:
Oh…
Casey:
That fucking thing we bought at the store. You know what I’m talking about.
Jeff:
Yeah. Okay.
Casey:
We bought it at Guitar Center or something like that.
Jeff:
Yeah. Okay.
Casey:
Anyway, it’s neither here nor there. The point is what they ship now is virtual instruments, Jeff. They are virtual instruments. It is as if…
Jeff:
Following the trend in all industries of just putting software where it shouldn’t be.
Casey:
That’s right. It’s the internet of things came early to the world of audio. So it’s like, you don’t get a guitar anymore. At Guitar Sample Library, you get a virtual guitar.
Jeff:
Right.
Casey:
Now, what a virtual guitar is, for the people that don’t know, a virtual guitar is a sample library of a guitar that someone stuck a shitty buggy sample playback engine on top of with a DRM scheme that rarely authorizes, that only runs through VST which is janky as fuck to begin with. That is what a virtual instrument is. So you gained nothing for your money. And they try to tell you that you gained something for your money. They’re like, “Oh, we have cross sample muting blablabla,” right, and you’re like, “Okay, if you needed more capabilities in your sampler, just make a sample format that has these things. Audio is trivial. I don’t want…” I’m sorry to be rude to all the people out there. Sample playback, not hard. Okay? Not hard when the computer is only doing sample playback. All these problems can be solved. No, no, no… So you try it ‘til you’re getting [inaudible 35:57] for your money, you’re not. The only thing you’re getting for your money is a picture of the instrument that someone has hastily rendered. It is the shittiest rendering of a B_sendorfer or Imperial Grand comes up with a bunch of custom controls. And you know the kinds I’m talking about.
Jeff:
Oh, yeah. We talked about the custom audio.
Casey:
The custom control…
Jeff:
Audio people like a good custom control.
Casey:
Audio people like a good…
Jeff:
Custom control…
Casey:
Virtual knob. The virtual knob and the virtual slider, two of the finest pieces of user interfaces ever introduced and no, they are not physically simulated. Instead, they are a knob which you have to move the mouse up and down…
Jeff:
Or left or right…
Casey:
Or who knows?
Jeff:
You don’t know. You have to try it.
Casey:
Who knows? Who knows at all? It’s totally unclear. That is what a virtual instrument is. And what this means is that there is zero… If you had one of these from 1991… Now, it obviously didn’t exist in 1991 but if you took the equivalent, like you have it from 1995 and you’re gonna try and run it in 2015, there is no way.
Jeff:
Right.
Casey:
There is absolutely no way you will run it. How do I know this? Because the ones I have from 3 years ago do not run. They do not run at all.
Jeff:
Do they not authorize or like, they’re 16-bit or they’re like, just incompatible?
Casey:
We’re gonna go into that.
Jeff:
Okay.
Casey:
We’re gonna go into that in a second.
Jeff:
This is amazing.
Casey:
So this topic is me explaining to Twitter ‘cos I promised I would on Twitter…
Jeff:
Right.
Casey:
It’s me explaining to Twitter why plug-ins ruin everything…
Jeff:
Right.
Casey:
And furthermore, why [inaudible 37:29] are a bunch of cunts. Those are the 2 things that I am going to explain on this podcast…
Jeff:
Okay.
Casey:
For anyone who’s interested…
Jeff:
Right. Because you need more than 140 characters to explain why they’re so cunty.
Casey:
Right.
Jeff:
Yeah, okay.
Casey:
Alright. So first, will start out by saying that I am lucky in that I tend to have access to a reasonable amount of money.
Jeff:
Okay. Right.
Casey:
It’s not Jeff money. It’s not the serious cash. It’s not the strippers with thousands of Dollars in their g-strings cash. That is not what we’re talking about. But I tend to have a reasonable amount of money. So if I need to spend a thousand Dollars fucking around to try and get something to work, I can do that and I don’t have to be like, “Oh, my God. I’m not gonna eat for the next week,” or whatever the fuck. So heaven help you… Try to think of when I’m explaining this… Heaven help you if you are just some poor musician who actually… A thousand Dollars is many weeks of gigs saving up for this. I am in a good position compared to most people. Most people, this is disastrous to have that happen whereas I’m just pissed. Anyway, so I decide… I have 2 keyboards at one. I have one keyboard, my S90ES. It’s a Yamaha keyboard. It’s a very nice keyboard. I love it. It’s my favorite keyboard I ever owned.
Jeff:
Okay.
Casey:
Okay. If I could, I would always just use this keyboard. I like the piano sound on this keyboard. I like the pedal on the keyboard. I like the action of the hammer keys. It is a nice keyboard.
Jeff:
It is perfect for you.
Casey:
It is perfect for me. There is a problem, however, with the keyboard which is that if I am trying to record what I am doing, it does not have this capability.
Jeff:
Okay.
Casey:
It cannot record MIDI. It cannot record audio.
Jeff:
Okay.
Casey:
They do sell something, [ a motif ] that can sort of record MIDI but not audio… I don’t know. They have one but they do not… It’s not possible for me to go out to Yamaha and say, “Give me the one that I plug a microphone into, hit record, and it records a MIDI file and a WAV file so that I can do a scratch like if I try to do the Jeff & Casey Time music or something, I can just do it and it's all on the keyboard.
Jeff:
Wait but you can… It has speakers so you can plug in something and record it that way, right?
Casey:
Right. So if you want to use this keyboard for recording, you are talking about getting into what in the music business they call a DAW. You’re going to DAW, Digital Audio Workstation.
Jeff:
Mmhmm…
Casey:
And what that means is you’re going to take a Macintosh or IBM personal computer and you are going to attempt to somehow plug some cables into both of these things in a way that will sometimes record some portion of what it was without a massive, massive amount of lag.
Jeff:
Right.
Casey:
Which is…
Jeff:
You can probably record withTASCAM, this little bad boy.
Casey:
It doesn’t have MIDI.
Jeff:
Oh, ‘cos you want to get MIDI and the audio?
Casey:
You want MIDI and audio. And that is your downfall because if you only want one or the other, you actually have some options. But if you want to record MIDI and audio…
Jeff:
Okay, I can see that being impossible but…
Casey:
It’s a bit slim. It’s a bit slim.
Jeff:
Okay. What does the MIDI provide you that you get by not getting the audio if you don’t have the sample library?
Casey:
Okay. So to say more specifically why I want this, the idea for it is scratchpad recording.
Jeff:
Okay.
Casey:
Now, if you are a very talented musical fellow who has been trained from an early age in the ways of musical-ness like, say, Dan Schmidt.
Jeff:
Okay.
Casey:
I guess you don’t know him.
Jeff:
I mean you’ve talked… Yeah.
Casey:
[inaudible 41:16] harmonics and then now, I think he’s just hanging out at this point. But he was old school, very good [inaudible 41:22]
Jeff:
He and Sean talk about music on Twitter a lot. Yeah.
Casey:
If you’re Dan Schmidt, you have perfect pitch. And you know music theory inside and out. You know everything there is to know about it.
Jeff:
Okay.
Casey:
Because you’re in that zone. You could just record an audio of yourself doing stuff and then it wouldn’t take you really much time to know what that was. Like, it’s as good as having the sheet music to have the recorded… I’m guessing. And I may be putting words in Dan’s mouth here but I’m pretty sure that if he listened to something he had played from 5 years ago and we’re like, “Dan, what were you playing there?” He’d be like, “Oh, it’s this, this, and this.”
Jeff:
Okay.
Casey:
Okay? So he wouldn’t really have to care if MIDI was being recorded. But for me, I don’t have perfect pitch. When I hear something, it’s kinda muddy and I can’t necessarily break it down that quickly so it takes me a while to go from an audio recording of what I am to telling exactly what it was that I was playing.
Jeff:
I see.
Casey:
So what I want the MIDI for…
Jeff:
You want the MIDI so you can go back…
Casey:
So I can look. So then it’s instant. I can see, “Oh, it was this weird 7-note chord strain thing and that’s why I couldn’t figure out what it was. It was weird. Now I know,” right? And so, yes, you may not need this if you’re super skilled and talented at it. But assuming that you’re someone who does relatively complex music and does not have that skill, MIDI is way faster because you can immediately get that. You may be able to run it through… I know [inaudible 42:44] or whatever on LINUX or something does cord analyses stuff. Maybe you can just… There might be things you can just feed the audio into and it’s like, “Oh, it’s these notes.” I don’t know and maybe that’s what I should’ve been doing but whatever. Na_ve me, I thought, “Hey, since the keyboard knows what notes it’s playing in the first place, maybe I could just use that.”
Jeff:
Okay.
Casey:
Okay. So anyway, I have that keyboard. I decide a very bad decision… A very bad decision, Jeff, to purchase a keyboard ‘cos I’ve had this keyboard for many years… To purchase a new keyboard that has the recording capabilities built in.
Jeff:
Okay.
Casey:
Okay? It’s called a Korg Kronos X…
Jeff:
Is that why I have your old keyboard.
Casey:
That’s why you have my old keyboard.
Jeff:
That’s the keyboard you like?
Casey:
No, no. That’s not the keyboard.
Jeff:
Okay.
Casey:
That’s the keyboard that I bought in 1997.
Jeff:
Okay.
Casey:
That is a very old keyboard.
Jeff:
Okay.
Casey:
I don’t like that keyboard.
Jeff:
Okay.
Casey:
It’s alright but I don’t like it. That’s a Roland FP1. It’s a digital piano, really. So anyway, the Korg Kronos X, it has this capability.
Jeff:
In the machine?
Casey:
In the machine.
Jeff:
Okay.
Casey:
You just push a button. You push the 2 buttons…
Jeff:
Right.
Casey:
And you are recording a microphone input and MIDI…
Jeff:
In a directory on a [inaudible 44:01] on a USB.
Casey:
In a directory and you can put it on to a USB stick…
Jeff:
Okay.
Casey:
It’s totally great.
Jeff:
Alright.
Casey:
Interface, janky as fuck…
Jeff:
Right.
Casey:
Right? It is not a streamline thing but it works.
Jeff:
Okay.
Casey:
However, the piano sound that is in this keyboard is the most violently aggressively horrible keyboard sound, piano sound, I have ever heard in any keyboard I have ever played including my old Casio keyboard that ran on D batteries and was from 1982 that didn’t even have 88 keys. It was some toy that you buy at Toys R Us. This is seriously the worst sounding keyboard ever. I cannot physically fucking play it. I do not know what is wrong with them…
Jeff:
Okay.
Casey:
It has this strange property to it that I don’t know what is causing it. It is basically like… So you can imagine when you hear piano notes, you hit the note and… You know, I don’t really study this kind of stuff scientifically so I’m not sure what goes on there but you get a resonance on the string and that resonance goes, over time, in an imperfect way. So it’s kinda like… It’s not some perfect sound wave, right, that just happens when you hit that and when you let go it stops or something like this, right? And this is kind of important because if you have multiple notes that you’re hitting at once or even if you’re just doing that one note, you need that kind of quality of like a little dirtiness to make it not sound really aggressively off-putting and shrill.
Jeff:
Okay.
Casey:
But on the…
Jeff:
So you’re saying when they hit a key, it just plays like 440 [inaudible 45:47]
Casey:
Okay. Close. So on the Kronos, what happens is you push the key down and they have some very well-sampled full on sample of I think a real piano playing that key.
Jeff:
Oh, okay.
Casey:
And then somewhere 1 second into that, it collapses into this really monotonous sound wave thing.
Jeff:
Weird.
Casey:
It’s crazy. And you hear it and you’re just like, “Oh, my ears. Make it stop.” And so, if you ever do anything sustained which is how I often play… You can’t. I mean, it just… It drives you insane.
Jeff:
So it sounds good for a second and then falters.
Casey:
Or [ it’s the cut ]. Like if you’re always playing just the note with no hold, you’re in good shape. But the instant you hold a note, it is game fucking over, my friend.
Jeff:
Okay.
Casey:
Now, mind you, this is an SSD drive with sample playback that streams.
Jeff:
Right.
Casey:
So they can fucking sample a piano note for 8 seconds if they wanted to. It’s no problem.
Jeff:
Yep.
Casey:
This is versus my Yamaha S90ES with 32 megs ROM. That is what it has. And it sounds, you know, just miles better than this thing. It’s so much better.
Jeff:
Does everybody complain about this? Is it something they’re gonna fix?
Casey:
I have no idea. I have no idea. No, they’re not gonna fix it. And I’ve seen videos where people are talking about how great the Korg Kronos X sound is. I’m like, “You’re all fucking fired.”
Jeff:
Right.
Casey:
Like, “You have not listened to this at all.” Anyway, so I’m like… I basically can’t use the keyboard ‘cos I’m like, “This is so bad that when I hear it, I think everything sounds terrible. So nothing I ever will play on this keyboard will the good.”
Jeff:
Right.
Casey:
It just… Like, I would kill myself. So I’m like, “Well, I could sell it, which is fine, and I guess I’ll just do something else. Or,” and this is where the anecdote starts… I’m like, “Or I could try to put a better piano sound on it because it’s an open sample thing. You can load samples on to it…
Jeff:
Oh, okay.
Casey:
Those piano samples are just ones that are loaded on the SSD drive when it comes from the factory. There is no reason I need those particular piano sounds.
Jeff:
Okay. I’m with you.
Casey:
So I’m putting this off. I’m putting this off. I’m finally like, you know… I finished a bunch of stuff. I’m like, “Today is the day I’m gonna put on… I’ll get some good samples. I’m gonna spend some money, whatever cost to get some sample libraries, put them on the Korg and have a non-shitty piano sound.”
Jeff:
Yeah.
Casey:
That’s all I wanted.
Jeff:
Here it begins.
Casey:
Here it begins. So I start off I’m trying to find…
Jeff:
The sample…
Casey:
Any piano sample library at all, right?
Jeff:
Yeah. What do we have for the Jeff & Casey Time?
Casey:
We were just using whatever came with Contact…
Jeff:
Contact , okay. So there’s like 8 CD’s or something ridiculous.
Casey:
[ It’s… The CD’s… They’re fucking DVD’s… ]
Jeff:
There was a lot. I remember there was a lot [ out there ].
Casey:
There’s a lot of shit. You buy some… We bought some $500 package that was basically, like, everything you could possibly want.
Jeff:
Okay.
Casey:
And if…
Jeff:
We can’t use any of that…
Casey:
That’s what I’m saying. So normally, I could’ve probably just used that. You would have taken one of the sample libraries and you load it on to the Korg. They’re all DRM playing through virtual instruments…
Jeff:
God damn.
Casey:
You can’t access those sample libraries. And even if you [ hack sort ] them, you’re breaking the law. Like, the DMCA says you can’t go fucking get those sample libraries because they’re intentionally DRM-ed, right? So it’s all kinds of awesome, starting out. So fuck all those people. Fuck them all. Right? But this is a classic example again of why plug-ins are awesome.
Jeff:
Right.
Casey:
I’m gonna the number of ways plug-ins are awesome just as we go through this. And one of the biggest things about plug-ins not being awesome is that plug-ins lock everything up into a little module, basically. It’s like, they don’t create open systems that allow things to work together or move to different places. They basically create this sort of… I don’t know what you want to call it. Polyp, let’s call it… That all of a functionalities encapsulated in there and nothing else can possibly happen once you’re in that space.
Jeff:
Right.
Casey:
So in some sense, yes, you have created an ecosystem from the plug-in wall outward because now, someone else can write a thing that accepts these plug-is and calls in to them, right?
Jeff:
Right.
Casey:
But anything that happened in the plug-in now is completely locked because if those things had to be data, right, which is what they had to be [ in the old days ], they had to be set libraries with a published format… If they had to be data, then that thing can be reused. So once you go to an executable model, once you say that we’re encouraging people to use executables as the way of providing things, providing these end-user services, you eliminate any incentive people have to create lasting data formats or interoperation ‘cos it’s like, “Fuck it. It’s plug-ins. Don’t worry. We wrote a plug-in for those. We compiled it for that. Just plug that shit in. Oh, don’t worry. We wrote a fucking adaptor for VST’s so we can talk to this other plug-in format…” Right? So already you can’t…
Jeff:
And you can’t put [inaudible 50:42] And you can’t put it on LINUX. And you can’t put it on this. It goes on and on and on.
Casey:
Exactly. Right.
Jeff:
Unless that person supports all 15 platforms…
Casey:
And [inaudible 50:48] layers and compile [inaudible 50:50] so it’s all a disaster. It’s really bad. But anyway, so yeah… So right off the bat, I’m looking on the internet, there’s no sample libraries. Pianos come in virtual instruments pretty much beginning, middle, and end of story right?
Jeff:
God damn it.
Casey:
So I’m like, “Fuck. Alright.” So finally, I find a piano… I don’t even remember what the fuck it’s called. I find a piano sample library that sounds pretty good. And it’s actually a sample library.
Jeff:
Okay.
Casey:
I’m like, “Cool.”
Jeff:
Buy this and be done forever.
Casey:
I’m like, “I’ll buy this piano sample library and I will put it on the thing or whatever. It’ll be fine.” So I buy that sample library. And apparently, I just misread whatever…
Jeff:
Oh, no.
Casey:
I misread the thing ‘cos it wasn’t really a sample library. What it was is I guess you can now ship pseudo polyps which are basically just like encrypted sample libraries that require the contact player to play. And that player has DRM for sample libraries built in. So it will read the sample library, see that it’s encrypted, authorize that encryption with contact back up in like a 3rd party way… So you need to enter like your challenge-response… I mean, it is unbelievable. So I’m like, “Okay, it was my mistake. I read the thing wrong. I got excited. Start over from ground zero.” It was not expensive, like a hundred bucks or something. It’s like, whatever. Again, like I say, $100 is actually a lot of Dollars. It’s only because I happen to be fortunate enough that a hundred Dollars isn’t a problem.
Jeff:
Just to be clear, they probably sold a thousand copies of the shit anyway…
Casey:
Yeah. Yeah. Yeah.
Jeff:
So you’re like… None of this… That’s the thing of, like, when you see utilities for $19 where you’re like, “Why are you even selling this? You’ll never make any money. You will never make money and you have to support the people that did give you your little shit bird amount of money…”
Casey:
Right, because they paid 20 bucks for it.
Jeff:
And you can’t… You haven’t done anything.
Casey:
Yeah.
Jeff:
You’re like… Yeah…
Casey:
Yeah. It’s a disaster. So I’m like, “Alright, fine. Don’t worry about it. Just water under the bridge.”
Jeff:
Move on.
Casey:
“We’ll move on. We’re gonna move on.” So I’m like, “Alright, here’s what I’m gonna do…” Oh, and this was the time… Remember I was having trouble getting the network adaptor working on the…
Jeff:
Oh, right, right…
Casey:
That’s the machine with [ Contact ] on it.
Jeff:
Oh, so you can’t authorize…
Casey:
I can’t even authorize a sample library even just on that machine because the network isn’t working, right.
Jeff:
Well, what was that again that was, like 2 networks in or something.
Casey:
It was Windows Firewall, as it always is. I thought I’d turned it off but I’d only turned it off for one zone or something. Right? So I turned it off for the other zones and then it worked.
Jeff:
Alright.
Casey:
Anyway, so I can’t authorize the thing. So I’m sitting here and I’m just like, “Okay, you are shipping me a bunch of WAVs. That is what this thing fucking is.”
Jeff:
Yep.
Casey:
And I can’t access these WAVs because I don’t have internet connection on this machine. I have other machines with internet connection. That doesn’t matter ‘cos I can’t install Contact on those machines because then, I’d have to authorize Contact which I’m not allowed to do on multiple machines. I can’t de-authorize contact in that machine because it doesn’t have net connection.
Jeff:
Right. I had the de-authorization with Adobe where I called them and I was like, “I don’t have this machine…”
Casey:
It’s gone.
Jeff:
It’s gone.
Casey:
Right.
Jeff:
“[ It’s gone. I reformatted. ] I need you to de-authorize it.” And they wouldn’t.
Casey:
Yeah. I hate all… It makes me so angry.
Jeff:
Yeah.
Casey:
This is why I refuse to use any DRM software anymore. I won’t do it. I refuse to buy any more DRM software because all it does is cause me headaches.
Jeff:
Yeah.
Casey:
It’s like, “Alright I’ll just be a fucking… I’ll just write shit for a living anymore. I won’t run any archives. I won’t run anything because it’s not worth the headache. It’s just not.” Eventually, everyone’s gonna rage clip this shit and [inaudible 54:49] I’m gonna be the happiest little fucker on the planet
Jeff:
Well, what you’re saying right now, I’m just like, can’t we just go pay somebody like 100,000 bucks to record a piano sample and be done with this?
Casey:
Dude, if we can do that, I would be the happiest person ever. If there’s someone listening to this podcast right now who knows how to do that shit…
Jeff:
Yeah. We would pay…
Casey:
I would love to do that shit. Because if all the sample library vendors went out of business tomorrow, I would dance on their graves. I would personally go… I would create a press tour where I went to all of their offices, stood outside and said, “I’m so glad you’re all out of work.”
Jeff:
Right, like [ Westburough Church… ]
Casey:
“I hope your life sucks from now on.” All they do is make my life hard after I give them a lot of money.
Jeff:
Right. Yeah.
Casey:
They are bad, bad people.
Jeff:
Right.
Casey:
In their heart. In their heart, Jeff. Their hart is a bad, black place. And I mean that. I’m not just saying that. I really don’t like these people. Okay. So I’m like, “Fucking fine. I’m gonna go find a sample library that’s just a sample library. We’ll get that.” Looking for sample libraries, I can’t find anything, really. I finally find a sample library that sounds pretty decent that is a piano but there’s one caveat. It is not encrypted but there’s one caveat. And again, I don’t blame these people. These people are not necessarily black in their heart because they’re shipping a sample library. These people, they’re like the one virtuous whore in the whore house or whatever the fuck it is. They’re the nun in the whore house, let’s put it that way.
Jeff:
Okay.
Casey:
I find [inaudible 56:29] and they’re actually shipping actual samples. Just samples.
Jeff:
Right, so you’re excited.
Casey:
You download these samples and they’re actual samples. I’m like, “This is gonna be awesome.” One caveat, Jeff. There is one caveat.
Jeff:
Oh, dear.
Casey:
And the caveat is it is not in the sample format that I need for the Korg.
Jeff:
Okay.
Casey:
’Cos the Korg reads 4 different file formats or whatever and this is not in one of those. You have like… It comes in 3 different sample library formats. One is like the encrypted kind, one is like, one open kind. And one is another open kind. And so I’m like, “Well, alright, I guess I will have to try to convert the sample library over from this into the other one which I might.” I’m not looking forward to this but what am I gonna do? I don’t know if I have any other options. So I’m like, “Okay.” I go online. I look for a package that converts sample libraries, right? Now, I had one of these from before that I bought. [ It’s the one I told you called CD Extract ] which basically goes to convert sample libraries. I tried to run it on this thing. It doesn’t work. It can’t read them. I don’t know what’s going on.
Jeff:
Okay.
Casey:
It doesn’t work. So I’m like, “That’s a bummer.” So I go on and find whatever the current best one of these is…
Jeff:
Okay.
Casey:
And I’m like, “Okay. I buy that one…” It’s called Translator Pro or something like this. I buy that one, download it. I’m like, “I’ll use this to convert the sample libraries.” I take it. I try to install it on the Mac because it needs Mac or PC or whatever. I have the Mac there. I try to install it on the Mac. It’s like, “Type in your key,” or whatever the fuck it is. I type in my key for the product. I load the sample library. I try to convert. The program crashes.
Jeff:
Of course it does.
Casey:
Just flat out fucking crashes.
Jeff:
Alright.
Casey:
No diagnostic error. No nothing. It just fucking full-on face-plants. I’m like, “Alright, maybe that’s ‘cos this is a 32-bit Mac or whatever. It’s a big sample library, it’s a 2-gig sample library. Maybe it just ran out of memory. I’ll try it on the PC.” I go over to the PC, try to put it in. At this point, I have gotten the network connection working.
Jeff:
Right.
Casey:
I go to install it… No, wait. This is a lie. This is a lie, I’m telling you. This is not exactly what happened. The first thing I did is I tried to install… [ I go, “Why do I install it on the Mac?” ] I tried to install it in the PC. I double-click the icon. Nothing happened. It just didn’t run at all. Nothing happened.
Jeff:
Okay. Awesome.
Casey:
So I install it on the Mac ‘cos it was Mac and PC and that one worked. But it crashed. So I’m like, “Fuck.” Then I remembered, “Well, wait a minute, the authorization thing, maybe that was a network thing and the PC didn’t have this net thing working.” So I’m like, “Maybe if I get the network working on the PC, maybe that can help.” So eventually, I get the network working. I run it. That is what it is. I put in the key, it’s like, “[inaudible 59:23] Proceed.” So now, I have an open sample library.
Jeff:
Yep.
Casey:
I just want to convert it. And the DRM is cock-blocking me in the converter from converting the samples. So I’m like, “Okay.” So I email them and I’m like, “I need you to fucking fix this.” Thankfully, they have good tech support. They reset my authorization thing. I install it. I do the conversion.
Jeff:
It works on the PC?
Casey:
It works on the PC now. The conversion passes. I go and plug the thing into my Korg. And it’s totally fucked up.
Jeff:
God damn it.
Casey:
Send the tech support email again. They’re like, “Ah, fuck.” They do some stuff. They work it out. They send me a new build. I try this one. The build works pretty well. But unfortunately, for whatever reason, the converted samples just don’t work that well because the Korg format doesn’t support release samples and this library kinda needed those, I guess a little bit. So it still sounds pretty bad. Like, it is not a very good…
Jeff:
Is it better than what they had?
Casey:
It’s probably… It’s just worse. It’s the same but different. So I’m like… I’m just so dejected. I’m like…
Jeff:
So you’re days into this.
Casey:
I don’t even know what to do. I finally find a sample library that’s fucking made for Korg Kronos X. I take that one. I put it on. It’s a bit… That went smoothly… This is after a long time of searching. It’s alright. It’s not great. It’s better but it’s not great.
Jeff:
Right. It’s better than the horrible shrill stuff?
Casey:
It’s better than the horrible shrill stuff. Right. So I’m gonna finish up this story just to get the shit sundae on top. So I’m like, “Alright, look. You know what, I don’t even give a shit anymore. This has been, like, 2 days.” I’m like, “I hate everyone. I don’t even want…”
Jeff:
You get into the, “I don’t even care anymore,” more than almost anybody I know.
Casey:
Yeah. Yeah.
Jeff:
You’re just like, “God damn it…”
Casey:
I just didn’t give a shit anymore. I’m just like, “I don’t care. I’m gonna sell this keyboard. I’ll get this shit out of my life. Fuck it.” It’s a fucking nightmare. It’s insane, right, so I’m like, “Fuck it.” So I’m just like, “I’ll go figure out how to get my other keyboard… I’ll set up the Mac to permanently be recording on it. I’ll just live with that because I think if I just set up a computer to always be set up to record, maybe I wouldn’t have all these problems. Of course, probably I still will but I’m just saying I’ll try something else because this is not going anywhere.” So I go over to the other computer and I’m like, “Okay, so I need a way to produce piano sounds on this thing.”And so, I have Ivory which I bought a long time ago which is a VST plug-in, right? I’m like, “I already have this copy of Ivory,” and I don’t have a sampler ‘cos Contact’s on the PC machine we use for Jeff & Casey Time. I can't install it on this 'cos it's DRM and of course, you can't install things on two machines. God forbid one person should be able to buy a software once and use it on 2 different platforms because that's how their office is set up of whatever, right? God forbid. So I had this copy of Ivory that I own legitimately. I'm like, “I’m installing this thing.” So I install the thing and it comes up with an authorization thing and I’m like, “Alright,” I type in the authorization code. It’s like, [inaudible 62:38]
Jeff:
Of course.
Casey:
I’m like, “Okay.” I send them an email. They’re like, “Okay, what version of Mac OS is it that you’re using?” I’m like, “I don’t know.” I go to the drop down, it’s 10.6. I don’t fucking know. Whatever the software update does, it does. They’re like, “Okay. You’re gonna have to download Ivory 1.7.” I have 1.5.
Jeff:
Okay.
Casey:
“You’re gonna have to download Ivory 1.7 because we don’t support 10.6 anymore.”
Jeff:
Okay.
Casey:
I guess. It doesn’t have VST plug-in, Jeff. So it doesn’t even do… It doesn’t do anything. It doesn’t even…
Jeff:
It should have no requirements. It’s like input and…
Casey:
It should have no operating system [inaudible 63:20] whatsoever.
Jeff:
Yes.
Casey:
Right?
Jeff:
If you are a plug-in, if you have anything that’s related to the operating system [inaudible 63:26] you’re fired.
Casey:
Yeah. And it’s probably… I bet you anything it has something to do with the fact that they pop up that ridiculous custom UI shit which I don’t want. I just want [inaudible 63:36] controls for this shit. I don’t want you to be… I don’t want to see a piano when I load this thing up, okay. I don’t need to see your shitty rendering of a piano. Why would anyone need that? Nobody needs that. This is audio. We produce audio, okay? It does not matter. I’m just like, “Okay, fine. I’ll install Ivory 1.7, then what do I do?” They’re like, “Then what you need to do is… We don’t support, in Ivory 1.7, we don’t support challenge response DRM anymore. You need to go buy this $50 dongle thing called an iLok from this separate company called iLok which sells dongles that are used for software authorization.” That’s all the company does, Jeff. That’s all the company does.
Jeff:
Wait, they don’t even supply it with…
Casey:
No, no, no. They do not supply it with Ivory. Okay. They’re like, “You gotta go buy this thing. It’s $50. Then you just buy that and then you stick it in and then you send us the code and we will authorize your iLok and then you’re good to go.” I’m like, “Hold on.”
Jeff:
Right.
Casey:
“So you’re telling me…”
Jeff:
You have to spend more money…
Casey:
“That I have to go buy a $50 device not because the software doesn’t work but because your DRM no longer works on this operating system and you need me to go switch to this other method that you decided to switch to that was not the case at the time that I purchased the software…”
Jeff:
Right.
Casey:
I’ve not heard back yet from them. It was the weekend.
Jeff:
Right.
Casey:
I’m very interested to know what I will receive from these people.
Jeff:
You need to Tweet that. Those kinds of things…
Casey:
However…
Jeff:
Yeah.
Casey:
Not only will I be Tweeting this, there will be substantial blog posts if not lawsuit… Like, I will go find a fucking lawyer to sue these people before I will pay $50 for a dongle to stick into my Macintosh to run a fucking piano sound that I own legitimately, that I had to pay like $300… I don’t remember it was expensive.
Jeff:
Yes. This is amazing. So in this… So the current situation is you got nothing.
Casey:
No change.
Jeff:
No change.
Casey:
The current situation is there’s been no change from the original.
Jeff:
Right.
Casey:
From the starting point.
Jeff:
That’s amazing.
Casey:
It is stunningly awesome.
Jeff:
Wow.
Casey:
So I just wish people would take a minute and think about the fact that I’m really all you have left at some level. There aren’t very many people in the world who will pay you $300 for a piano sound.
Jeff:
Right.
Casey:
Okay? There aren’t.
Jeff:
No.
Casey:
I mean, it is a very narrow set of people that you are addressing and you have to think pretty long and hard about how many of those people who are currently not paying for your software or were paying for your sample libraries when they were sample libraries who now will because it’s DRM-ed… How many of those are you gaining versus how many of me there are who are about to create your worst nightmare and who will never ever give you a single penny again unless it is by accident because they thought your stuff wasn’t a virtual instrument.
Jeff:
I just think… Yeah. I just feel like we’ve got to find somebody who can make piano samples. So is the point… Is piano samples hard because you need rights from a piano maker?
Casey:
No.
Jeff:
It’s just recording…
Casey:
Dude, these mother fuckers sample pianos because there’s nothing that the piano maker can do to protect themselves. They are pirates. They pirated someone else’s piano sound by just sticking microphones in front of it and hitting record. And now, they think that they’re so fucking special that they have to have a gigantic licensing scheme to prevent people from “stealing” the sounds that they stole from someone else’s piano. That is the truth.
Jeff:
Okay. So here’s a… Okay, so this seems solvable. We have talked about making a sample library for instruments for a long time.
Casey:
Yes.
Jeff:
But a piano is one instrument.
Casey:
That’s right.
Jeff:
It’s easier than having to rent out the Seattle Symphony to get all the sounds and schedule that and do all that.
Casey:
Yes.
Jeff:
It seems like something that we could probably hire someone to do.
Casey:
If we can do this, I would love to do that project because here’s what it would be. It’s called FuckYou.VST which is a sample that we write that is free.
Jeff:
Right. Yep.
Casey:
There is a sample format that we design because we fucking know audio, actually, like you know audio very well. And we have Sean and we’ve got Dan and [inaudible 68:31] We’ve got tons of DST people. We’ve got Jay [ Stelly ].
Jeff:
Yeah.
Casey:
We could make this happen. We just need a player with a very well-defined sample format that includes all of the stuff you need to do complex resonance stuff. Then you just need people recording the sample into that format.
Jeff:
Well, can we make one that uses the existing open formats that you could put on a cord, that you could put on it… That seems like just…
Casey:
It’s possible but I don’t know if they support what you need to make a great piano. I don’t know if those sample libraries have… Sample formats have some of the stuff you need to do cross-sound stuff.
Jeff:
Right. Well, it seems like having a great one is good but having one that has no… Like, here is the directory full of everything and all the formats that people randomly need is also valuable.
Casey:
In some sense but I think you can solve that very easily by, like, “Here’s [inaudible 69:22] sample format. It’s open source. Here’s the C Code necessary to load and play it back.” I think I could probably even send that to Korg and they’d fucking put it in their next OS drop, right? Because they don’t care. They’re just using sample library files that are available. And if there was a giant open source sample thing in a very well-defined [inaudible 69:41] format, it would be good.
Jeff:
I’m just also thinking of the average musician who just wants to stick the sample format on something and just play and he gets it. That’d be nice.
Casey:
But he can’t do that anymore. The days of that being possible are long gone. They all have to use VST’s now because that’s all that the stuff comes as.
Jeff:
I see. I see.
Casey:
So they’re used to that.
Jeff:
Do the VST’s… So is it actually running VST’s on the keyboards now?
Casey:
No.
Jeff:
Okay.
Casey:
But they do have outboard racks that are basically just little LINUX machines that run VST or something.
Jeff:
Nice.
Casey:
I don’t know exactly what they are but they’re basically just VST hosts.
Jeff:
Oh, my God.
Casey:
So the idea would be get that sample format, you do the VST for playing it back, but once that sample format is established and perfect like if you could really nail it down, then everyone could just build that into their packages and you get rid of all of this, right? You’d never need a VST again.
Jeff:
It would be nice to have that. I just… I would also like to have the one where people just… “Here’s the DLS sample set. Here’s the ones that is not as good as the one but it is…” On the drive, there’s all those.
Casey:
There’s just no such thing as that because there is no such thing as one sample format that everyone plays.
Jeff:
I see.
Casey:
If there was, that would be great. But you’d have a better chance of establishing that going forward by being a strong force than you would picking an older sample format because there just isn’t that kind of cross-compatibility.
Jeff:
Right. Alright, if anybody’s interested in that, give us a call.
Casey:
Contact us.
Jeff:
Yeah. We will pay you for it.
Casey:
We will figure out how to get this happening, yeah.
Jeff:
Yes. There will not be royalties because [inaudible 71:12] the situation…
Casey:
Yes.
Jeff:
We will pay you for your time well to have this done once and it will be done.
Casey:
Yes.
Jeff:
’Cos we talked about renting out the symphony. We even got numbers on that and it was more just a logistical nightmare…
Casey:
It’s an expertise problem, not a money problem. If we had the people who knew how to do this, we could do it. Now, here’s the other thing that’s interesting.
Jeff:
It also just seems like recording a piano is… We could experiment… Like, doing that for 200 instruments is hard. Experimenting with the piano a couple times to get the sample set right, it feels like we could pull that off.
Casey:
Here’s the other thing that I don’t know. I started exploring open samples that do currently exist. There’s ones from, like, the University of Iowa or (I don’t remember where they are)… Who actually did a bunch of these that do anechoic chamber recordings of various instruments. And I need to go look at those and see if those are actually decent because it may be that there’s already people starting to sort of make this happen and they just haven’t been packaged into things you could really use very effectively
Jeff:
Right. Yeah.
Casey:
So I don’t know.
Jeff:
That would be fine, too.
Casey:
Yeah.
Jeff:
’Cos we just have to hire somebody to write a VST and a little plug-in and then, like, “Here’s the Bittorrent link for all the $ plus the thing, put this in the directory…”
Casey:
And then, that’s [ where you give the money to ]. You’re just like, “Here’s the money. Go record these 20 different types of piano, saxophone, whatever the fuck they don’t have…”
Jeff:
Right.
Casey:
That’s where it’s at…
Jeff:
Yeah. Anyway, holy shit…
Casey:
So anyway…
Jeff:
You’ve made no progress…
Casey:
I made no progress. So to finish out the part… ‘Cos I talked about basically why DRM is terrible but let’s talk about why plug-ins are terrible little bitches as a chaser. So the other thing that sucks about plug-ins (and you kinda see this)… It happened to be most of the DRM that was happening here but in other places, that’s not usually the DRM that’s the problem. So if you’re talking about 3D plug-ins which I’ve used in the past, sometimes DRM’s a problem there. But oftentimes, really just the problem is the software doesn’t work anymore.
Jeff:
Yep.
Casey:
So basically what happens with the plug-ins…
Jeff:
That’s not true… I mean, that’s 3D, it’s 2D…
Casey:
It’s everything…
Jeff:
The number of times when you’re like, “Hey, you have this awesome video you sent me. Can you send it to me in RGB not YUV so the color’s not all that bad there.”
Casey:
They’re like, “No.”
Jeff:
No. They’re like, “We can’t recreate the MIDI anymore.”
Casey:
Yeah, it’s impossible.
Jeff:
It doesn’t even work. We don’t have the thing. Premier is using something and it’s not there anymore… Yeah.
Casey:
So part of the thing is plug-ins that strictly to operational stuff that is not necessary anymore like a one-shot deal might be okay.
Jeff:
Yeah.
Casey:
But that is not what plug-ins are used for anymore. Plug-ins are now used as in integral part of supplying the functionality, the very core structure of stuff.
Jeff:
Yeah.
Casey:
So in 3D Studio, you’ll do something like, “Oh, I’ve got this plug-ins that does these [ metaballs ] or some shit.” The plug-in is what even knows what the data was. So if you don’t have that plug-in or they don’t update that plug-in for the next version of 3D Studio, you can’t load that data at all, right?
Jeff:
Yep.
Casey:
And the really big problem that we’re coming into with all this stuff is there is now such a small horizon where you basically can’t run or load anything anymore. Like, you try to load a file from even a couple years ago and you can’t access that data in any way. And it’s not even just a case of being meticulous in storing your stuff. It’s like you have to save a whole machine because if it’s like, oh, Windows Vista, like, with the Ivory thing… If, God forbid, your stuff required Ivory in some way, you can’t install it in the operating system anymore. You can’t even install the old copy.
Jeff:
Yeah.
Casey:
So you have to install new copies. And those new copies may not even exist. They may not be able to load the old format correctly.
Jeff:
Yep. Well, that’s what…
Casey:
So plug-ins basically bit rot everything…
Jeff:
Yeah, so I did… I saw this happening with the business software that we use at RAD, right?
Casey:
Yeah.
Jeff:
And so, what I did there is I moved everything that was related to business and accounting into a VM so I have it forever.
Casey:
Yeah.
Jeff:
And it runs a very early version of XPE that I’ve never updated. I don’t do anything when I run that. It’s not connected to the internet. It’s completely isolated.
Casey:
Yeah.
Jeff:
And I back up the whole fucking VM.
Casey:
Yeah.
Jeff:
So, but…
Casey:
Well, how does that work with authorization?
Jeff:
Once you start having… I’m all pre-authorization. All this software if before they have… They still do have some…
Casey:
Thankful for you, yeah…
Jeff:
So one thing… But the problem with using VM’s going forward is if they use DRM…
Casey:
Right.
Jeff:
You have to then figure out how to make the God damn dongle tunnel through the USB stuff which never works.
Casey:
No, that’s never gonna work.
Jeff:
None f the dongles go through because if you can do that…
Casey:
Then it defeats the…
Jeff:
Then they’re like, “Oh…” Yeah, people will have already written, like forwarding cracks for a lot of this stuff.
Casey:
Yeah.
Jeff:
So, yeah. It’s completely the wrong way to go.
Casey:
So here’s one thing… Maybe this is…
Jeff:
And we have this even with the small stuff just with Premier. I can’t load Premier projects from 6 months ago because their plug-in system rots to quickly…
Casey:
Right. Yeah. Oh, yeah.
Jeff:
That if you go on their own forums…
Casey:
Yeah. Yeah.
Jeff:
The rule when something… You have an entire thing, an entire video…
Casey:
Yeah.
Jeff:
In the middle, it drops one piece of media out. All of the media is the same format. All of the media was recorded in series from the same camera.
Casey:
Okay.
Jeff:
It’s like, 01, 02, 03, 04… 02 is red and it’s like, “Can’t read the thing.”
Casey:
Okay.
Jeff:
The way you fix that…
Casey:
Yes?
Jeff:
The only way you fix that…
Casey:
Okay.
Jeff:
Is you de-authorize your Premier, you uninstall Premier. You reinstall Premier. And then, you re-authorize it and then you exit once and run it again and it will read it. I’ve had to do this 18 times…
Casey:
What’s happening?
Jeff:
The plug-in gets into a state where it thinks the Premier you have is invalid or non-authorized and is just fucked. Now, mind you, I’m already running Premier in an insane way because every time it fails… So I use it maybe every 6 weeks. I bring it up to edit something. Every time I do that, every single time, it has not the Codec but Premier itself has failed. Like it doesn’t work anymore. So my normal way I run Premier is I do something and then I de-authorize it and then I re-authorize and then run on the 30-day trial. So now, that is even separate because the 30-day trial always works.
Casey:
Oh, God.
Jeff:
You can’t run authorized…
Casey:
Of course it does because it’s not done yet.
Jeff:
This is aside from the bit rot and the codec thing.
Casey:
Yeah.
Jeff:
I still have to run the 30-day thing, fail, unload, load, reload, load, authorize again.
Casey:
God damn it.
Jeff:
Just to get a codec. And I mean, this is… As far as I can tell, it’s completely random when this happens because we were re-exporting all the audio from the season 3 stuff. Out of 34 episodes, 9 couldn’t read one single piece of video in the middle. Every single time that happened, I saved it ‘til the end. I just, like… Episode 12… Went through… Re-authorized, did the whole thing, started going through them. And about 3 episodes in, it would fucking be fucked again…
Casey:
This is so fucking ridiculous.
Jeff:
And then I’d have to do all that stuff again and it would magically load and continue. It’s a nightmare. So…
Casey:
So here’s the thing. When everyone switches to fucking open source software, this is why.
Jeff:
I think so but I…
Casey:
Because here’s the thing… Hold on.
Jeff:
A lot of open source software has the same problems separately from the DRM stuff.
Casey:
But here’s the thing.
Jeff:
They’re plugged in. They don’t get…
Casey:
Well, here’s the thing. So the whole thing… I used to buy software, a lot of software because it’s better, right? It was better software. They’re getting to the point where it’s so janky that you get nothing for your money.
Jeff:
Yeah.
Casey:
This is the thing. Buying Adobe Premier is now so bad that if you’re going to deal with all that shit, just use Cam Live online or Blendr. It’s not… The point of paying you money was supposed to be an effortless experience.
Jeff:
Yes.
Casey:
You have made it into an experience that is as Janky as the free stuff. So when everyone stops buying your software, don’t wonder why.
Jeff:
Yeah.
Casey:
You did it to yourself. And you don’t see it happening yet but it’s gonna fucking happen because you’ve created such a hostile user experience that they’re just waiting for the time that they can switch to something else.
Jeff:
Well, I think the thing is most people are seeing the fact that updating is always a bad move now.
Casey:
It’s always bad.
Jeff:
Never update… When you update, your files are not gonna load again. So they just freeze.
Casey:
Yeah.
Jeff:
And because everything’s getting worse, the only time I’m ever updating is when I’m forced to by, like, “Oh, fuck, it doesn’t run on Windows 8.” And so, for me now, that always is like, “Whoa, it goes into VM and it’s slower.” It’s like, I just don’t… Fuck it. Fuck it. Fuck it. Fuck it all. The only frustrating thing is I have a lot of apps that are not 64-bit. And for media, 64-bit just wins because you get random crashes in 32-bit apps when you deal with a lot of media because nobody checks all of their memory allocations everywhere. They’re sprinkled through already. And when you’re dealing with a lot of media, you will eventually get fragmentation. And then, you just get random crashes.
Casey:
Yeah.
Jeff:
Even Premier got a lot better going 64-bit.
Casey:
Of course, it did.
Jeff:
Even Premier. And that’s saying something.
Casey:
Yes.
Jeff:
But I just wish I could’ve… Like, Premier before they added this fucking cloud auth… The authorization…
Casey:
Right.
Jeff:
I don’t use the cloud shit. I’m stuck on 6 forever.
Casey:
Right.
Jeff:
So I think that the… Anyway, the long story is I just gotta get on to something… Because FFM reads all of these files perfectly, of course. So I just need to get something that is an editor that… I mean, ‘cos you don’t need very sophisticated stuff. And there are very good…
Casey:
Cam Live is totally fine for just [ chopping ] video. I’ve used it before and it’s totally fine. It just probably doesn’t do the sophisticated stuff but…
Jeff:
I mean, the funny thing is that actually, there is…
Casey:
You know, fucking Premier doesn’t do the sophisticated stuff, either…
Jeff:
Yeah. I mean, they do something that… Sometimes their filters are semi-magic. Their auto-stabilization stuff, you’re just like, “Holy fuck.” But that is also probably something you can find out there so…
Casey:
Yeah.
Jeff:
Anyway… Alright, we are way past our allotted hour.
Casey:
We are way past the time.
Jeff:
But we had to get a lot of complaining in.
Casey:
That was just a rant-cast and I’m fine with that.
Jeff:
Rant-cast. Yeah, we did a rant-cast.
Casey:
Plug-ins, bad. DRM, horrible.
Jeff:
HTML, bad.
Casey:
Piano sample people who ship the VST’s, the worst…
Jeff:
Yes.
Casey:
To be fucking continued, motherfuckers.
Jeff:
Call us if you have experience making sample libraries.
Casey:
Yeah. We will see who has the last laugh, my friends. We will see who has the last laugh, piano people. We will see.
Jeff:
Alright, everybody. Join us next week. We’ll talk about…
Casey:
McGruff the Crime Dog?
Jeff:
McGruff the Crime Dog.
Casey:
You want to talk about McGruff the Crime Dog again?
Jeff:
Yeah.
Casey:
We’ll get to McGruff the Crime Dog…
Jeff:
Next week…
Casey:
Next week, for sure.
Jeff:
Alright. Thanks, everybody.
Casey:
Thanks, everybody.
Site design and technology © Copyright 2005-2014 by Molly Rocket, Inc., All Rights Reserved.
Contents are assumed to be copyright by their individual authors.
Do not duplicate without their express permission.
casey muratori
the jeff and casey show - season 4 - episode 10
prev
next
mollyrocket.com