So, I'm here to talk about what is certainly the most beloved and non-controversial gem in the entire Rails ecosystem. Of course, RSpec, yeah, exactly. Everybody loves RSpec, right?  In the meantime, I'm going to fulfill my role here and set up all the things that he's going to say in the next talk. So, as I said, everybody loves RSpec. RSpec offends me aesthetically with no discernible benefit. RSpec is a cargo cult. These also, by the way, unless you think this is a new argument in any way, shape or form, this is from March 2011. So this is a debate, obviously, that's been going on for a long time about RSpec's complexity and its utility. And I'll just, like, I'll own it right here. Like, RSpec is complicated. I'm not a member of the RSpec core team. I didn't write any of it. I use it all the time, but I have no ego wound up in saying that it's anything in particular, it's complicated internally. The internals of it are complicated. And while I do think that it has benefits that are discernible and I would be happy to go over that some other time, here, we're mostly going to talk about the complicated part. So when we talk about RSpec being complicated, and the things that I'm going to talk about here today are not so much the complexity of the domain-specific language that it presents to developers who are writing tests using it, but the internal complexity of it. RSpec, there are a couple of reasons why RSpec is complicated. I suspect the RSpec core team would talk about how expressive RSpec is and how much trouble there is a lot of stuff in the RSpec code base that is there specifically to allow you to express your tests in a way that is closer to natural language than it is to straight up Ruby. And a lot of the complexity of RSpec internals goes towards supporting that. RSpec's also very flexible. It supports two completely different syntaxes because the deprecated version two syntax is still there. It runs in a lot of different, under a lot of different Ruby, a lot of different versions of Ruby in a lot of different contexts on a lot of different machines. And obviously that's true of all popular frameworks in this ecosystem. And that has a certain cost in terms of the internal complexity of the code base. And it's big. It has features that other test libraries don't for good or for ill. It has them. It has a full-featured, a very full-featured mock framework attached to it. Has a very full-featured matching framework. If you're in JavaScript, you easily could be doing that with three separate libraries and RSpec bundles them all together. Just to top off here with one quick example of how flexible RSpec is, I did want to say that with about ten lines of configuration, most of which are things that are exposed by the RSpec API, I was able to turn this, this is executable RSpec, with my configuration. I mapped thumbs-up emoji to describe, eyeball emoji to it, pointy emoji to expect, and heart emoji to equals. Three of those four I did using stuff that is exposed by RSpec that we'll talk about in a little bit. But yeah, RSpec is like, it's not specifically there. The flexibility is not specifically there to support emoji RSpec, but if you want to do it, it's not that hard for good or bad. So this is RSpec. It's not actually magic. My name is Noel Rappin. I work at a consulting shop called TableXI in Chicago. I have stickers and we are hiring. And if you want to talk about either of those things, you can find me. That's why I wear the green hoodie. Hi, everybody. It's so hard. There's such a glare here that I can't really tell whether there are people out there. There are people out there, right? Okay. Hi, people. So we're going to be looking at some RSpec source code from the actual RSpec code base that current GitHub master has a couple of days ago. So this is your last chance to bail before we start looking at RSpec code close up. If you have sensitive stomachs or something like that, fasten your seat belts, make sure your tables are in their upright and locked position, don't avert your eyes. But I do want to say why is it important or why do I want to talk about the internal of RSpec? It's possible that some of you will come out of this learning a little bit more about RSpec as a user. You will probably pick up a trick or two that you could use in your own testing. That's not really why I'm doing this. RSpec's a really interesting example of a domain-specific language written in Ruby and it has some techniques that you might use if you want to try to write your own DSL. That's not really why I wanted to do this either. Really I've used RSpec almost every day of my professional life for about the past eight years and it occurred to me that I really didn't have a serious idea of what it was actually doing. And I thought that was worth rectifying just because I was really curious and wanted to know. So that's what I'm going for here. Hopefully you'll come out of this with a little bit more understanding of RSpec's internals. So I always tell people that technical talks, even technical talks, should tell a story. There should be a beginning, middle, and an end. My story, I guess, is once upon a time there was a test and we'll go from there. This is a minimal RSpec test. This is about as small as I could make it and still have it like recognizably do something. And we're going to walk through the stages that RSpec goes through to convert this first to internal representation and then to execute that representation and turn it into a pass or a fail. Now this kind of looks like idiomatic Ruby and it kind of doesn't. One of the things that I find often helpful when you are in Ruby exposed to domain specific language or something like that that is trying to look a little bit different than normal Ruby is to start to parenthesize it and fully qualify it. And if you do that, you come up with this. This is what happens. So there are a couple things that we can see right off the bat that are very clear once we parenthesize and qualify this. We see that describe is a method that takes one argument and a block. That argument is a constant name. We see that it is explicitly calling out the self receiver there. It's a method that takes one argument here and a block. And on the last line, we see that expect is an argument, is a method also of whatever self is at that point. It takes whatever comes out of expect is an object that expects to receive the method two. The method two takes as its argument something there that gets returned when I call eq. But it's worth noting that it, expect, and eq are all defined in terms of whatever self is when those methods get evaluated. And those are some of the key words of Rspec's internals or Rspec's DSL. We have describe it, expect, and then eq being a representative example of Rspec's matchers. And so here we have describe it, expect to something. Each of those matches, each of those maps to an external, to an internal object or class inside Rspec. So describe maps to an Rspec concept called an example group. Expect maps to an example. Expect maps to something that Rspec calls an expectation target. And then the two at the end is something that Rspec calls a matcher. If you're familiar with Rspec in terms of a user of it, you've probably heard example and matcher. And you may not have heard example group or expectation target because those are a little bit less used by the public face of the library. So just to sort of sketch that in terms of this spec, the describe defines the example group and the example group sort of encompasses the entire describe, the block that is the argument to describe.  It, the example object is invoked by it and covers the block that is passed to it. Each individual called it gets its own example. The expect and its argument are the expectation target and then the matcher is that self.eq. So we're gonna walk through this step by step in terms of Rspec's internals. So it starts off when Rspec executes that code, when Rspec loads it, the first thing it hits is that describe call, which creates an example group. And describe is a method, it's defined, it's actually defined somewhat indirectly as a class method of example group to create new ones. One of the things about the RSpec code base and the RSpec code base examples that I'm gonna show you is that most code in RSpec has at least one more level of indirection than you would expect. So in some cases I'm gonna show you something that is along the way of the RSpec call stack and not exactly the method that you think you're calling because it's actually defined in terms of something else. Describe is actually, there's no place in the RSpec code base where you'll see def describe, RSpec has a method called like define example group method. And then describe is defined as an instance of that or a example of that, an alias to that. The examples to describe are the description, which is typically a string or a constant and then RSpec's metadata, which is a set of keys or key value pairs, which we're not gonna be talking a whole lot about except that RSpec just sort of holds on to them and can use them in its execution. And what describe, what happens when you call describe is that RSpec creates an anonymous subclass of example group and then executes the block argument in the context of that new anonymous subclass. So here's a piece of that code. This is from the part of example group. This is sort of called along the way as that example group gets created. The first thing that happens here is you see that we're using Ruby's class.new to create a brand new class. The parent of a top level describe is example group itself. And as you nest, they become subclasses of each successive nested example group in turn. Once you have that subclass, it calls out to a method called set it up, which you'll be surprised to learn does some setup. Specifically, it mixes in the matcher and the mock package. So if you're not using RSpec's mocks, that's where it gets mixed in. And then RSpec uses the module exec Ruby function to execute the block, that block argument, if it's there. And hold on to that thought for a second. And then it defines some extra helpers, and then it returns that new class. Whoops, then it returns that new class. So module exec, module exec is core Ruby. It's one of a sort of trio of module exec, class exec, and instance exec. And those are very frequently used by domain specific language implementations to control how a block gets executed and make a block not get executed in the context where it looks like it's being defined. And specifically, module exec has the receiver. This example is actually from the Ruby core documentation. Module exec, you can see in the middle, it has a receiver thing and then a block. And when I call module exec, that block is executed in the context of the receiver as a class. And what that means is that for the purposes of module exec, inside that block, self resolves to that outer object. And it treats the contents of the block as though it was inside effectively inside a class definition. So in this case, I'm defining a method and I'm effectively reopening the thing class and defining the method inside that so that once that module exec call is done, I can create a new thing and call that hello method on it and that will work. So if you look at what that means in terms of what the RSpec code that we are looking at. So RSpec describe turns this example group subclass and then we module exec that. And that block is where we have befores and afters and it's. And that block gets executed by RSpec in the context of that subclass. So when I say self.it that self inside the block refers to that example group subclass. And it is a method defined on that subclass as is before and let and all of those things are all method on example group that get executed here when RSpec does this module exec. So we call the method it and it in RSpec terms creates an example object. There are a number of different things that are defined to be able to create example objects. Again, RSpec defines a generic method and then defines it and specify an example as aliases to that or as versions of that. It takes as a description some metadata again and a block. And what happens when you call it is that RSpec holds on to that example object in that block and adds it to an array that is a class attribute of that anonymous example group class that is its parent example group. So here's a piece of this code you can tell that it's kind of several layers of indirection deep because I haven't even given you the method name here. But this is part of the code that gets executed as the example gets created from the RSpec code base.  This is also where if you've specified that this example gets skipped. This is where that gets handled. But basically what happens here is that RSpec creates a new instance of this example class, the arguments to that are self, which is the example group, the description, the metadata options and the block. It attaches that to an example's property of the group class and then returns the newly created example. So at that point, RSpec has now loaded all of the things that it needs to load. It's executed the block inside the describe. It hasn't executed the block inside the it, but it's holding on to it. So at run time, RSpec actually creates an instance of that anonymous example group class, and then the new instance runs all of its examples. And that happens in three stages. The example group has a method that sort of goes through all of the examples. That method spins off to a method that runs each individual example, and that method spins off to the example itself to actually handle its own run. So let's look at some of that code. This is a little small, I'm going to zoom in in a second. But this is what gets called on the example group when it gets executed. And there's about three or four stages to it. The first stage here just sets up stuff. If RSpec has already decided it wants to quit out, it just bounces right at the top, it tells the reporter or the formatter that an example group has started because the formatter might do something in response to that hook. And then it looks for context hooks for any of its descendants. Mostly this is mostly just bookkeeping. Inside begin block, it then looks for, it actually runs the before method if any exist. And then that second line there run examples will zoom in on because that's where it actually starts to run all of the examples. Once all the examples have run, that method returns a true or a false. It looks for nested children and runs all of them and determines a true or false for the entire group based on its own pass or fail status and the pass fail status of all of its children to results for descendants. And then it handles some exceptions. If it skips, if there's a skip declared, it bounces out. The bottom exception here is, I believe, called if there's actually an exception in a begin block or something, it goes there and tells RSpec it wants to quit if RSpec isn't in fail fast mode. That returns false because that's a failed spec. And then at the end, no matter what has happened in the insure block, it runs all of the after hooks. And then it tells the formatter that it's done with the example group, because the formatter, again, might do something in response to that. So it's only this one line, this one line run examples is the thing to zoom in on to see what it actually does for each individual example. And so this is the code that actually handles all those examples. The first line there, that order strategy order, is the examples that it plans to run, and then it maps them. So we're going to get a true false for every individual one of these examples by using map. And so, first it bounces again if RSpec has decided it wants to quit. It creates a new instance of the example group for each test, sets any instance for it to set, and then defers off to the actual example to run it. And if that example has failed and we're in fail fast mode, then RSpec tells itself that it wants to quit. And then it returns true false if it's exceeded, if it has exceeded or failed, and uses the all method, the map will return a list of truths and falses, and the all method will return true if all of the individual examples are true. So that's what the example group does. When the individual example gets control, it first checks to see that it's not pending and actually should run. It runs, it's before blocks, I'll put actually put the code up. Checks to see, so first of all it runs any before hooks, and then it, this is the part that actually runs the test, like after, you know, we're like 45 slides into this. This is the part that actually runs the thing that we think of as the test. It creates it, it takes that instance of the example group and it instance execs that block inside that group. If it's pending, we stop, we break out. If an exception has been raised because the test failed, we hold on to that exception because we're gonna need it for reporting. And then at the end we run clean up if there's clean up and then we finish which passes, whether this has passed or failed to the format, or again, because it'll wanna put a dot or an F for do whatever it does. Skeleton of what this is doing for blocks, but inside that it, it actually has to do something to determine whether the spec has passed or failed, which our spec does with expectations and with matchers. So that line of code in this test, that line of code in this test is the expect, we're expecting something to equal something else. And that expect method call, that expect method takes in an argument which can be an arbitrary Ruby object and it returns an RSpec object called an expectation target. The expectation target, basically all it does is it responds to two and it responds to not two to determine how it handles the matcher that it's been called with. Two and not two both take RSpec matchers as arguments and evaluate whether those matchers are actually match or don't match. And a matcher at its most simple is just an object that responds to the API is match's question mark. So RSpec's, what we had there was two EQ, the EQ method, which is defined, EQ is one of several built in methods that RSpec defines in a module called RSpec matchers. There are all of these shortcut methods that basically are just really thin wrappers around these matcher objects. In this case, the matcher object is called built in EQ. All of the things that you use as default RSpec matchers are defined in this one RSpec matchers file and most of them simply defer out to a more complicated object that handles the actual matcher. So if we resolve both of those pieces, we wind up with an expectation target object that's using its two method and it's being, the argument there is the matcher, the EQ matcher, which also has its own argument. The EQ matcher determines whether it matches or not by comparing whether the two values that's been called with are equal. So what happens here is that that expectation target two defers to a method that eventually calls match for the actual matcher. In this case, it returns true. The two strings are identical. The matcher boils that up as a success because it's been done, because it's been called as a, because we've used two. So we're looking for a positive expectation. It boils that up as a match and it succeeds. If we had been using not to, it would have, the matcher would still have matched, but the expectation target would have considered that to be a, not the result that we were looking for and it would have raised an exception that would have gone to the reporter that the example group would have held on to for final reporting. So that's the flow, that's the basic, that's, it's not really the basic anything, but that's the workflow. Our spec creates these example groups that create examples that use these expectations and matchers to determine whether what you've stated as your expectation is actually carries. There's one other trick that I wanna talk about here for our spec's matchers, which is the implicit matcher. So our spec has an implicit matcher where if you do B underscore anything as, so in this case, B underscore value, it defers to a predicate method of the object. So in this case it would look for valid question mark on my name object. And the way that that works is it's a method missing, here's the code inside the our spec matchers module. There's a method missing, which is invoked because B valid is not defined anywhere. And then the method missing compares against a regx. So we have a top up, it actually looks for two different kinds of things. The B predicate regx looks for B or BA or BAN. And then the has regx looks for have and just switches it around. The have regx lets you say something like expect something to have key rather than, and then it defers to the has key method so that your test sounds grammatical and not like a lolcat meme. The B one is what we're looking at here though. So B valid matches that B predicate and it creates, it actually goes to a matcher, this object built in B predicate, which takes in that method name and the arguments and the block and in the fullness of time comes to a some code inside that matcher where it checks to see whether that predicate is accessible and whether it matches. So it has some code that I didn't show that converts B valid to the valid question mark method. It checks to see whether that method actually exists and whether it will, sorry, it looks for it in either, it looks to see whether that method exists and then if the method exists, it uses a double underscore send to dynamically invoke it and return true or false, whether determine whether the matcher passes based on whether the predicate is true or false. It uses double underscore send here because that is much, much less likely to have been overridden by the actual object whereas it's at least theoretically possible the object might have overwritten a regular send. So the emoji trick, a brief interlude for the emoji trick. The emoji trick takes advantage of these define example group methods and define example methods that I showed before. This is also from our spec, this is from the internals of example group and it's just all the different defined example group method is the method that our spec uses to say what an example group should do when it's created and these are all the ways that you can by default create an example group in our spec. You're probably familiar with describing context, you've probably never used example group, you may have used X describe and X context which automatically pass along metadata to say that that example group gets skipped or F describe and F context which automatically pass along metadata to say that that example group has focus. You could do something similar with methods which you can use specify it, I don't know for some reason it fell off the slide but specify example, F it, X it all of which pass along metadata. So what I did then is I just reopened example group, formatting got a little strange here. I reopened example group and defined an example group method and an example method in terms of the emoji I wanted and inside matches I used the similar alias match method to use the heart emoji and then I just sort of brute force overwrote, there's no easy way to get at an alias for expect so I had to kind of brute force it. This is essentially a copy of what expect does and I suppose I could have used a straight alias, a regular Ruby alias and then with that then this code works. So if you want to define your own emoji and really earn the love and respect of your coworkers by doing so it's that simple. There's one other thing I want to talk about before I left which is I wanted to talk a little bit about how RSpec's mock package works. Mox again, not what Ryan is going to do to RSpec in the next talk but mox as test doubles. So here's a minimal mock example. We have a user, we say that we expect the user to receive a method called credit rating and return a thousand and then we call something else that has its own expectation but we've also set up by saying we expect the user to receive. We're setting up an expectation that that user will receive that method and this test will fail if that method does not get invoked. So I wanted to think for a second just abstractly like what has to happen in that line of code that to receive all the bookkeeping that has to happen for RSpec for the mock package to work. A couple of different things have to happen. RSpec needs to ensure that the underlying method is not called and then instead the value that you've specified is returned. RSpec also has to track how often that method gets called and with what arguments because that's used to determine whether the mock passes or fails and then at the end of the test it has to determine that all those expectations are met. In order to see how that's done we need to talk about two things. First is the way that Ruby method lookup works. You may or may not be familiar with this. Ruby method lookup first looks in a thing called the singleton class of the instance then it goes through instance methods of that class included modules, parent methods and parents included modules and so on. The part that I'm most interested here is the singleton class because that's the first place that Ruby looks and it's the place that's usually not used. The singleton class you may have seen one or two of these syntaxes.  You can use that class shovel operator syntax to get at it. You can use, you can define something with an actual instance dot method name and in both cases what happens is you create a method that only exists for that instance and no other object in your object space which is perfect for what a mock wants to do. A mock wants to be a method that exists for that one particular object and no other objects in your object space. So what our spec needs to do effectively these are the concepts here. This is a kind of a bad diagram but we have the original object and it's singleton class and our spec sets up this structure where our spec has this concept of a proxy and a method double and space. And the method double actually gets pushed into the singleton class of the original object to be the first place that Ruby will look for the method to get called and to return the value that you specified rather than the actual method. The proxy holds on to information like how often that method has been called, what arguments and that kind of thing and then the space is the list of all of the proxies that are defined. So if you define two separate mocks, mocked methods on the same object, the space, our spec will use the space concept to ensure that they both of those stubs get attached to the same proxy. So let's look at a little bit of code because what happens here as our spec's getting called calling this as an argument to to receive actually is a built in that creates a matcher just like EQ did and that matcher is defined, that matcher just like EQ is a very thin wrapper around an actual larger object. In this case it's called matcher's receive and that takes in the method name being stubbed and an optional block because most things in our spec can take blocks but in this case we don't need to worry about that block. Inside the receive matcher, there's some bookkeeping that goes on but basically what happens is our spec sets it up so that it creates a proxy and causes this add message, expectation method to be called on it. Our spec looks at its existing proxy space to determine if there's a proxy, to get the proxy for the object being stubbed and then it creates this method substitute which eventually again, there's a couple of layers in direction here but eventually that add message expectation gets called. It creates this method double object and adds an expectation to it and then that method double object holds on to the original method, holds on to reference to it and then it uses class exec, in this case the definition target is the object being stubbed, class exec gives you the singleton class of that object and it's basically defining a method to go into that singleton class. That method has the name of the method being stubbed and the body of it is the method double basically doing whatever you specified whether you specified a return value or a block or a couple of various arcane ways that our spec works. That method gets pushed into the singleton class so that for that object and only for that object the stub method captures that method call and returns the behavior that you specified and also tells the proxy that the method has been received with the arguments because then the proxy can keep track of that and then at the end of the test our spec has an after hook which is specifically for the mock package to clean up after itself and what it does is it walks through the space, it goes to that space object and says are there any proxies for each proxy? It says do you have any methods doubles? For each method double it says do you have any expectations and for each one of those it says was that fulfilled or not given how many times this was called and then that happens after the test runs after all the tear downs our spec goes through and validates all of those and determines whether the test passes or fails. So that's a lot of stuff. I know this was a lot of code flying at you very quickly. It kind of scratches the surface. There are a lot of cool things that our spec does that I couldn't cover because I'm already pushing time and this was already like a freight train of code coming at you. I hope that you found this valuable. If you want more information on our spec, the RSpec documentation and RSpec info which is not the relish documentation that comes off the cucumbers, this is their straight documentation, is actually pretty decent. The code base is actually not all that hard to read once you get used to how it kind of indirect stuff or you can find your local RSpec core member. I happen to work with one and pester them to tell you how things work. If you don't happen to work with an RSpec core member, find one online and pester them. In the meantime, I'm Noel Rappan. Again, I work at TableXI. You can find me on Twitter at Noel Rapp. I occasionally write books. I have a couple that you might be interested in. I have a book on testing Rails stuff, Rails test prescriptions. It's really not so much about Rails as it is about testing in general through Rails. That's available at pragpocket.com. For a limited time only and I have no idea how limited because they didn't tell me. The code test2rapin should give you 25% off both the ebook and the physical book if you buy it through Pragmatic. Also, I do some self-publishing. I have a JavaScript book and what you can get at NoelRappin.com.  Both of those are available at NoelRappin.com. Both of those will be having updates and price raises in the relatively near future. So if you want them, they will never be available for cheaper than they are available right now. Thank you for the time. I hope you found this valuable. Thanks for spending a little bit of your time with me. I hope you enjoy the rest of the conference and I hope you will recover from my fast talk freight train of code for the last 40 minutes. Thank you.


Hi there and welcome to my course in web programming one, which I've posted here on YouTube This course is originally given at Reykjavik University in Iceland. It's a bachelor level First second year course depending on the program you're in And the purpose is really to go over things broadly So we cover a lot of different topics without going into too much depth There are of course always things you could do better You could do differently and in particular most thing in this course can be done in much more detail and depth So that's simply not the the idea of the course I hope you enjoy watching the videos and you benefit of them. The slidesets are also available on my personal website They are linked in the YouTube playlist. What is not available What is only available to the students in Reykjavik are the exercise sessions and the assignments and finally the written exam So that's not part of this course As with every course and with every video, there will be things that are unclear that are incorrect I'll be happy if you give feedback on that. Try to stay constructive and I hope this material helps you Thank you very much


Live from New York City, it's The Cube. Here is your host, Jeff Frick. Hi, Jeff Frick here. We're on the ground at the USS Intrepid. It's a Hadoop on the Hudson. Big data week in New York City, Stratocon, Hadoop World, and of course our event Big Data NYC. But this is the place to be tonight. This is a great party. USS Intrepid here in Space Museum, a lot of cool planes, spaceships, helicopters, and of course the aircraft carrier. So I'm joined here by Chris Ellen, who's probably relieved not to be running this event. Yeah, exactly. It's nice to kind of be a guest for once, so absolutely. It's a great event though. So last we saw you was at your customer event at the Vertica show. Actually, last you saw me was at the Tableau event. Oh, the Tableau event? Yeah, yeah. I wasn't there. Okay, so that's why you're here. So give us a quick update. What's been going on? So we're here at Strata. I mean, it's a great week to be in New York. This is kind of the industry buzz. We got a lot of new stuff coming out, but we're always doing, we're really focused on our customers. We're really focused on kind of what our customer's doing, making them successful, working with our partners. We've got a bunch of partners here. We've obviously got MapR here. We've got Voltage here. We've got Syncsort here. We've got Talent here. So this has been a great event and this is really where the industry is this week. I guess some people are Dreamforce, but to me, you know, this is really where it's at. Greg and I were at Dreamforce on Monday. How are you? I can see you get to do both. We're all over the place. Yeah, the cube is everywhere.  Yeah. He was all about giving away three million meals. There you go. Which is pretty cool. They're Dreamforce cares. Sales force done an amazing job. I think 145,000 people. So you guys can get the Vertica event up to 145,000, you know, something to shoot for. We're working on it. Exactly. It really feels good that, you know, the Hadoop thing, if you will, the big data thing is so far past POCs now we're really getting into a lot of production. Yeah. CNROI. Jack was talking about some studies they released about ROI and again, just really unleashing some tremendous data, excuse me, value, business value with these tools. Yeah. Well, you know, this has always been and that's a very good point because this has always been kind of a, I don't know, I don't want to offend anybody, but this has always been kind of like a geek show. I mean, Strat has always been very hardcore technology and I think you started seeing this about a year ago and you're really seeing it now is, you know, I was like the book crossing the chasm sort of shows how old I am, but, you know, the reality is that that's what most of the customers are looking for these days. And that's what the whole kind of idea that, you know, cross the chasm, right? Get past the technology. It's not about the speeds and feeds anymore, the scalability or petabytes or zettabytes or what have you. It's about the business value. Right, right. I mean, we had to use this stuff to help move my business forward and there's a whole lot of, you know, I talk, I always talk about my business to make money, but there's so many like public sector government things going on as well. So there's so much cool stuff going on with big data these days, but it's really about the value. Right. It's not, you know, it's not like it makes the technology less important, but it puts it in context. Right.  Right? That's unlocking some good value. Yeah. Small things make a big difference, but when you look at sort of the GDP contribution that the McKinsey's and the Banes of the world, you know, it's like in the trillions of dollars of value. It was in the Wall Street Journal this week. Right. It was something like 12 trillion dollars of value potentially to be unleashed by unlocking big data and figuring out how to use it more intelligently. And so that's really what we're hearing about this week. And yeah, we're still in the early innings, right? Absolutely. We're still in the early innings. Absolutely. All right. We grabbed them off the aircraft carrier. Right. Jeff Rick here. I was trying to climb in a plane. I was going to get in trouble. You get in trouble. Glad we rescued you. We're on the ground at the USS Intrepid Air and Space Museum on the Hudson. It's a dupe on the Hudson, big day to week in New York City. I'm Jeff Rick. You're watching theCUBE.


Please so they're they're plump fresh out of whatever That's cool. Coyote school. I want to put a coyote in my basement So it eats whatever mice and then they can go and I'll pay it like this is gonna make the coyote bigger though Well, you know, I really big if I integrate it famous for not honoring contracts I'll be right back what like one minute and they buy the big ticket items right large rockets rocket powered roller skates springs of Large size But they love roller skating Acme should should sue Amazon for patent infringement Oh and umbrellas lots and lots of umbrellas portable tunnels. Those are my favorite the portable tunnels I will say I was very proud of Otis over the weekend He does not care for cockroaches and the reason I know this is because for some reason Don't even want to get into it. There were like several Dying cockroaches on our walk Mm-hmm. I don't know something happens pest control or something. Yeah. Yeah, exactly. And he was sort of like Couldn't be bothered if he sees a squirrel Then all bets are off He doesn't seem to care about insects A reminder to people watching on youtube If you don't watch live nothing should change. We will continue to upload the show to youtube Uh, and you will continue to watch it. You're bound to do that now. Sorry, but uh, if you like to watch live Remember that on june 3rd We're we're going live on twitch at twitch.tv slash good day internet Don't let this confuse you before june 3rd Uh, because we're not there yet, but we will be moving over to twitch on june 3rd twitch.tv slash good day net for the live version Up the ship Thank you And thank you to uh, uh, theater monkey and w scottis one and bio cow who are helping In various ways with the switch. I have w scottis one if that's news to you. I made you a mod today. So there you go What? Oh god zilla opens this weekend I don't know why it's probably gonna be really bad but i want to see I have a feeling this could be really bad. I think we have it on the movie draft. So please go watch it I think you should just watch Aladdin again since I have that in the movie draft We have that too. So you can go watch that too. That'll work. John wick is another good one. You could watch I have that in the movie I uh, this this is old. It's not in a current movie draft, but I finally saw us Over the weekends. Um took me a while The jordan peel horror movie. Oh, I haven't seen that yet You can talk about it. I didn't think it was good at all. No, some people don't like it. It's not everybody's taste. No weird because I I knew of it as like this is like the best horror movie ever You know all the accolades all the awards and I watched it. I was like Didn't think it was good at all So are you a horror movie? No, but I I'm I'm sort of like I shy away from horror movies in general If I think that they're going to be really scary because I'll have nightmares This was not even really scary. I just sort of watched it and was like I don't understand why this movie was made. Was it gory like I want I don't mind I don't like gory really gory A couple places, but that's not that's not the thing It was it was more of a you you have to be sold on, you know, the The you know the villains of the movie and I was like, they're not scary. This seems really silly to me All right, you guys ready to take a break and do some tech news. Yes Robert, are you ready? I am Excellent, let me pull up the show notes We uh detector mic real quick, Robert Uh, let's take it right here. Cool. Awesome Here we go in three two Monty Vanderbilt has supported independent tech news directly for around five years Be like Monty become a dts member at patreon.com slash dts This is the daily tech news for tuesday may 28th 2019 in los angeles. I'm tom merit and from studio feline. I'm sarah lane And uh from uh parts unknown. I am the show's producer roger jank And i'm the intern anthony lumos also producing the show today Uh and joining us uh co-host of avi excel and hd tv reviewer robert harron. Welcome back robert Hey, thank you. Always good to be with you guys always good to have you here To tell us what's going on in the fast-moving world of televisions and tv and home theater Let us start however with some computex things you should know amd announced the three first three new chips from the third gen rise in lineups will arrive july 7th They are a two seven nanometer rise in seven cpus and the first rise in nine all on the existing am4 socket and claiming to be the first pc i express 4.0 compliant desktop platform The rise in sevens double total memory cache to reduce memory latency amd also announced the first gpu to use its new navi architecture The seven nanometer radion rx 5700 features gd dr Six memory delivery in 25 better performance per clock per core and 50 better power efficiency than existing Vega-based cards. There are x 5700 will be released sometime in july It's hardware palooza a computex. Nvidia announced touring based quadro rtx professional laptop cards The quadro rtx 5000 has 3072 cuda cores 384 tensor cores and 48 rt cores paired with 16 gigabytes of gd dr 6 ram 17 laptops from asus del hp msi razor gigabyte and acer will carry the new cards with the branding ex studio Aside from the cards the laptops will also feature the nvidia studio stack a software sdk And api is designed to speed up video editing rendering and vector animation according to nvidia rtx studio laptops will start at 1600 bucks Starting in the second half of the year arm also announced the cortex a 77 cpu and the molly g 77 gpu arm claims that the cortex a 77 improves performance by 20 per clock over the previous a 76 with 25 percent better machine learning performance as well the molly g 77 gpu uses the Valhalla gpu design with 40 percent overall better performance and 30 percent more power efficiency than its predecessor It also runs machine learning interference and neural net workloads 60 faster And let's see amd arm What nvidia oh right intel they still make chips intel showed off the core i 9 9 900 k s It's an 8 core 16 thread processor capable of running all cores at a turbo frequency of 5 gigahertz Technically the cpu has a stock frequency of 4 gigahertz But it'll only run at that frequency if a motherboard uses default intel bios, which generally isn't the case intel confirmed This isn't new silicon Rather i 90 9900 k chips specifically are bended to run at the higher frequency all the time Pricing release and power consumption were not announced intel also announced It will start the 10th generation of its core line of processors codenamed ice lake with the series of laptop oriented chips So there's the chip the chips were all down at computex Or up Yeah, I mean, I guess the the the chips were up for the chips that were down at computex Turns out how you phrase it anyway. Let's talk a little more about uh apple announcing a new product. I'm excited What is it sarah? Oh, tom. I'm glad you asked apple announced an update to the ipod touch Which includes an a10 fusion chip and a new 265 256 gigabyte storage model Now you might say is that really relevant? Well, it's the first update since the sixth gen ipod touch was released back in 2015 so The new ipod touch starts at 199 for the 32 gig model 299 for the 128 gig model or $399 for the new 256 gig model i'll be honest I never thought apple would update this product line again. I figured they would just phase it out Uh and figure, you know people just buy the cheapest iphone available and maybe pop the sim card out if they wanted to give it to a kid or something and not give them a connection but Uh, this this is there because somebody's gonna buy it. Do any of us robert? Do you have any idea who the market for new ipod touches are? Maybe maybe somebody who wouldn't want to use their mobile device and a streaming service Or you're not into doing it yourself with your mobile device, which probably already has a really good, you know audio digital converter built into it Uh or analog digital converter For me, it's it's definitely not for me But if if you wanted that standalone device though that could just literally store All of your compressed tunes and be able to take that with you anywhere like on the plane or or somewhere You're not generally going to have internet access that it could be cool, but I have Gigs of storage in my phone plenty to hold all the songs. I could possibly listen to in a month So it's it ain't for me to me. This seems like um, you know, it has an advantage over You know again like swapping out and saying or taking it out and you know Giving it to your kid because it can run the latest ios better And the idea that it's not a phone But it could play lots of games as long as you have a wi-fi network also makes sense to me the price is high for that But I think that apple is is banking on the fact that it wants more and more people to be Subscribed to its various services and the ipod touch would be another way to do that So the touch still runs all of the ios apps for the most part just like the phone would okay So that there's a great use case and like you said for kids For what you're talking about sir, but it's cheaper than a phone right the the equivalent Storage level are quite a bit more expensive. So yeah The worldwide web consortium aka the w3c has decided to hand over development of html and dom standards to The web hypertext application technology working group or what I will now refer to as What wg? What wg was started by browser developers? The developers were originally at apple opera and mozilla One of the opera guys moved to google So now the group is made up of people at apple google Microsoft and mozilla and that group was founded in 2004 to help speed up development of html standards The group actually developed html 5 and led the effort to get w3c approval for it In 2018 the w3c and what wg differed over version 4.1 of the document object model or dom Which was not approved and because of that dispute they've now worked out an agreement under this new agreement w3c members will draft recommendations to be given to what wg And then what wg will consider those and include them or not include them in the html and dom Living standards so the standards will be continually upgraded There will not be this process where the browser makers put things in their browsers and then three years later They become part of the html standard Uh, this is hoped to speed that system up so that you have the living standard that gets continually updated And it's updated by people who work on the browsers and know What features are going to be implemented in the browsers and which ones won't work? I guess my question is and and this all makes sense as far as you know, things move quickly You know, you you want to make uh, uh, uh, enhancements to a browser and not have to worry about the w Uh, 3c to say like yes, this is fine Does the w3c need to exist? Yes, I it absolutely does because you need that organization that looks over all these various standards They do more than just these two Uh, and I actually think this is the best way to do it people who are like browsing standards affect me But I don't make a browser can now give their recommendations of hey This is going to affect the apps I make the services I run. I'm not a browser maker though So I have different considerations. I think this is a better way to do it HP first released the original omen x backpack vr system back in 2016 Do you remember that now it's got an updated version with the same case same doc But a more comfortable form factor and updated specs The notable thing is that the omen x is not only compatible with HP's own reverb headset But also the v the vive the oculus and any other vr headset as well When not used as a vr backpack The main computer chassis can live in its dock and be connected to a traditional display A mouse and a keyboard like a regular pc demos of the pack include osha training and a virtual trip to house sinky That plus the three thousand three hundred price tells you that hb is still targeting this for commercial use I like this. I mean, it's not a big development to be honest except that makes it more comfortable when you're talking about backpack vr That's a huge huge That's always been the issue with you know with vr, right?  You know, the more comfortable it is the better especially when you're talking about carrying it on your back It's not just comfortable on your head. It's a backpack with a computer in it Basically, and I I wonder how many businesses need this Level of vr for training. I would think you know some desktops sitting at desks with vr headsets for osha training might be good But this does open up what you can do with them because it allows you to walk anywhere There's no restriction on where you can go as long as you have that inside-out sensor on the headset itself And you're not relying on trackers, which is the common thing with headsets now You know, there's a safety issue obviously of where you should and should not walk Which is hilarious when you're talking about osha training, but it does for you up to to have a more flexible application on these things Well, I've never been to house sinky. So I'm excited to try it out I'll say that Robert, what do you make of this stuff? It's interesting It's it just seems like a hack until we have phones powerful enough to drive these kind or at least smaller computers that have Super all-day battery life. They could still drive a vr headset granted You ain't getting 4k for two eyes at 120 hertz or 90 plus hertz out of any mobile device right now So if it still requires the backpack And if they can somehow maybe incorporate enough battery power to make it truly portable Especially if you're going to be using this commercially likely in Different scenarios and scenes be it indoors or outdoors I I don't want to be tied to an extension cord Otherwise I might as well just set it up in a room and do it all there If it were more like an augmented reality setup I could see this being even more practical because then You still have the vision of everything around you and you're just simply overlaying the data like that You could do a lot of cool development and other other projects using a system like this, but A $3,300 backpack just to have vr be a little more portable Yeah, it's it's it's hard to Even even though I I see the technology moving forward It's hard to hear a story like this and not be like one of these days We're all gonna laugh at the fact that the backpack got lighter or more comfortable Remember when people like actually put vr in their backpack to like it does seem like a stopgap measure for now At the same time because you know people are trying to figure out how this all works It's uh, it sounds like it's it's you know moving in the right direction Yeah, the question to me is do you want like robert said do you want your phone to power your headset? Or do you want the headset to have everything built in? Eventually that will be the question of like do you want your phone to power it and then You know, you could even keep your phone in your pocket potentially And it will just you know, send it to a send its power and display to the headset Or do you want the headset to be independent and be its own device? Or maybe just maybe something like uh, google stadia and being able to do more back end computing and then just Fully get the headset down to nothing but the display system and all the wireless Uh, the wireless networking and other performance that would need to occur for something like that Maybe this is what they're aiming that at as well where it's more for commercial development Oh, yeah, this is absolutely for commercial development. They're they're leaving the door open for gamers who want to just say Yeah, I have a cool backpack vr The price point is yeah Most vr is is aimed at businesses these days that that's where you can find people who can afford it and want it Sony's launching a low power wide area or lpwa chip for internet of things devices to take advantage of sony's proprietary L trez network launching this fall the lpwa chip can transmit up to 60 miles 60 miles It also works well in urban areas with a lot of potential interference and can work on high speed objects like cars and trains The lpwa chips have a much longer range than wi-fi and use less power than cellular Uh wi-fi is is great, but it doesn't work over long distances and cellular is great But it eats up your battery. This doesn't do either. It's perfect for internet of things the cxm 1501 g r chip as it is called transmit signals in the 920 megahertz band and can use gps Or global navigation system to tell time and location use cases include things like bicycle and car rentals knowing where they are Locating ships that are that are doing shipping transit home delivery. You can actually track the package itself not just by scan Boat races monitoring when your trainer bus is going to come even things like street lamps Being able to tell you if they're working properly if their amount of lighting in a smart city is proper They they put one out about helping friends find each other on ski hills where it's you know, pretty vast and hard to see people Sony's going to start with a build out in japan and then we'll see how it goes from there All right, so dumb question. Uh, this sounds great for a lot of moving parts Why wouldn't it replace wi-fi in the home? Because it's not powerful enough to do all the data you want. This is like a small amount of data, right? That's my guess Is is that this is this is about I need to get the internet of things amount of data across a long distance Got it It's not about routing the data. Yeah. Yeah. Yeah. Well, I mean Man, I you know as a as a person who seeks to live on a train one day I I love the idea of this. Um, and yeah I like maybe a ski slope doesn't really apply to me but but I get what they're going for here and it sounds like the Pests at least so far have been really promising It could also possibly be used as just a like an over-the-top tracker as well Something like the tile chips used to be and if you could do something that truly had its own Well beyond bluetooth range where you know a few miles even through buildings and things like that And to be able to you know have it at least send out Say gps coordinates for where that object is and if you could then Have the whole thing nice and compact and last a few years With low power that would be this isn't going to stream Netflix But if you just need a light or a bus to be able to say i'm here I've looked at my gps and I know where I am Uh, that that's what this is for. I'm curious if there's any non Proprietary versions of this under development as well out there if anybody's aware of that send us an email I've seen several chips like these in other just people putting together cool uses as to what to do with this technology And there's I want to say sierra wireless is one company I don't know if sony worked with them on this at all But there are a few companies out there making these types of chips and to make him as low power as possible Just so that you can literally make a portable device with say one of those coin cells lithium ion cells Yeah, it really last a few years and and to make it a just that and or user user repairable in terms of just being able to swap a battery out And to have that distance and to do cool things with it for you know, be it minor data transmitting or I don't know. It's kind of like figure out Smart city stuff where you need wide range because you don't know exactly where you might want to be collecting the data at any point Uh, especially as cities grow and then you could also think too in along that same line It's just something like location data Having small devices that are in fixed locations able to transmit a specific I am exactly right here and if your phone can see that then even indoors you would know exactly where you are It could fold into something like that too, which would be fantastic On to africa everybody are we ready the vbc reports on a container with solar panels pulled by a donkey Yes, a real donkey that uses touch screens to improve digital literacy in mozambique That country sits between south africa and tanzania Now while kenya, which is in the news often two countries to the north has 91 mobile penetration Mozambique has less than 50 percent the project. It's called community tablet It's founded by mozambique's day armad a three minute movie plays to introduce people to the topics There are prizes like t-shirts and caps that are given out and the audience can use smaller touch screen tablets to answer questions About what they saw the idea to educate and empower communities on topics like public health mobile banking and also voting Yeah, this is great because a lot of times these these education efforts, uh, will Evolve pamphlets, uh, just and people just throw those away. It says right. I'm on So this is a way to just get people's attention Because you're giving away caps and t-shirts and you got this big old container And they've got the touch screens and it's fun and it's it gets people to Interact with it learn a little bit about what they want to teach you whether it's about voting plans or or mobile banking Or or whatever and then spread the word and tell other people who then come back. So, uh, he's he wants to make this a franchise He he's been getting funding from ngo's So he would like to do this more often, but I just found it a fascinating use of technology It's like let's not worry about connectivity other people can worry about that How can I take technology and combine with what I know and what works? And go and teach people in my own community because he's from mozambique and he said he was inspired by his kids He saw his kids looking at youtube and figuring out how to stuff and he's like Man if I could just take a screen that shows how to stuff to people in rural areas, uh, suddenly we could educate people a lot better So that's what he did and when you're talking about, uh, you know a country with with many people many residents Internet literacy under 50 percent.  You know that that has has yet to sort of uh, priv itself, but uh, it it it's it's a really good place to Try something like this out Folks if you want to get all the tech headlines each day in about five minutes be sure to subscribe Daily tech headlines.com All right, robert. Uh, no, you were at display week in san josei not too long ago Looking at a bunch of display technologies. What'd you see heck? Yeah Uh, there were lots of cool new 2019 tv's they were showing off, of course But I think right off the bat. I'll talk about some of the future tech This is a show display week It's part of the society of information display And it's their annual show to bring in a select groups of vendors as well as Even folks like college students who are working on projects and they have separate zones where you can see some of the really cool cutting edge Things they're working on One of the cool things was at the show Was an updated version of something we saw back at ces from high sense And this was what they called their dual cell lcd technology Effectively you're using two lcd panels smashed together one to handle the color and the other to handle the contrast And the demo we've seen previously used a 4k panel up front for the 4k resolution and color And then behind that screen was another lcd screen that was 1080p Allowing it then to modulate the backlight and to be able to really do Near per pixel level control of how bright each pixel is or dark Very similar to what oleds are currently capable of in terms of producing that inky dark black Where the pixel right next to it can be on it full blast without any kind of blooming or halo artifacts This was simply showing yet another step up to it instead of using a 4k panel up front and a 1080p panel Behind they said well, we've got this figured out pretty well We're just going to go ahead and make it 4k all the way through So each individual pixel on these tvs coming up will feature Its own individual pixel just to moderate and modulate the light coming from the backlight system What this will drive is something that is lcd technology yet It is coming very very close to what you get picture wise out of an oled Where you get that fantastic black level you get decent Well, i'm not going to say it's an lcd. So off-axis viewing is always going to be an issue But it is really nice to have that per pixel level control Especially when you're looking at things like letterbox movies or any content that has dark and bright content in it because This thing is on a per pixel level for an lcd Is able to just simply control light better than just about anything else i've seen Big questions will be cost. I mean how much more will it cost to actually sandwich a 4k panel to another 4k panel And make that all work fantastically boe is a chinese manufacturer of panel technology including lcds and oleds And they are the ones actually developing this panel with high sense and they're saying 2020 I want to say we'll probably see a demo of the 4k by 4k panel coming later this year and Overall, it was just impressive even in its current state of the 4k and 2k panel That's still a good level of control over per pixel lighting And it just overall was just sweet and fantastic to spend some time staring into If you really want to look into the future though, we're all talking ak and Japan Display Incorporated has been at the show for Many years now and they show off one of the coolest demos I think you'll be able to see anytime soon and it's an ak panel about notebook size I want to say it was about 17 18 inches 120 Hertz ak resolution and full rec 2020 color, which is about Let's see DCi which is used currently in your blu-ray movies is a larger set of color than you would have say with your regular hdr content sdr content and now 2020 is the full spec in terms of Almost single wavelength primary colors red blue and green being laser like in terms of that level of saturation and that ability then to display that at 120 Hertz with an ak panel and they had moving content Showing the difference between 60 and 120 Hertz and that was all cool But really having that full color palette of rec 2020 which nearly encompasses Every color you can possibly see in life It was the most and this is like something that the human eye can discern This was the most window like lcd I have ever looked at and it was just delicious It actually used a laser-based backlighting system in order to achieve some of those super saturated rich colors Another panel that's already on the market, but they were happy to show this off in comparison to other premium OLED TVs Was vizio's p series quantum x this is an upgrade over the standard p series quantum That's already out and about in a terrific value 65 inch tv they also have a 75 inch version Big things about that will be the fact that it's dumping out close to 3 000 nits of light output Supports all the hdr formats you like in terms of hdr 10 dolby vision And it's just going to be a good value actually the p series quantum x is starting off where The original p series quantum started in terms of its pricing And we're already seeing in terms of like if you go into cosco They had the current version of the p series quantum for about under 1500 bucks for that 65 inch version This is just good value. I'm i'm not the biggest fan per se of the chromecast Enabled tv apps that are in the vizio tv's It's it's just Sometimes it can be a little odd like there is no native youtube app But in terms of tv's overall that one was just utterly For the money, it's one of the very brightest tv's out there And it's going to be a very good good one to get in the lab and test out Otherwise if you want that olad lgc 9 that is their least expensive Flat panel flagship that has their latest second generation alpha 9 processor fantastic Compared to absolute the absolute picture quality of this tv compared to the 2018 model Not dramatically different in fact if you could find the 2018 I guess it would be the c8 on sale at a really good price Don't don't don't feel too bad about none go not going with the c9 But if you do You get some good updates including some new calibration features if you're a super video nerd in terms of just being able to eke out The best picture quality possible better handling of hdr content Uh able to handle content that's been formatted for different luminance levels better There's generally about three standards used in all of these 4k movies. We're looking at Varying the brightness in the luminance output depending on How it was mastered Some some authors are looking at content on monitors that only go so bright So it's very hard for them to say. Well, what would it look like if it were using the full spec of the hdr standard and This in particular was just fantastic Beautiful picture quality overall Now if you're looking for lcd stuff, I will say the big thing about 8k tv's this here and right there is a picture of samsung's q 900 That's their flagship ak tv here in the united states I think it's called the q 9 50 in europe That is a fantastically bright tv with some of the best upscaling i've seen to ak This demo i actually in that picture i was looking at was several standard definition sources on i think they were doing 480 on up to 1080 and just looking at how that scaled up to the ak panel considering we have very little ak tv out there The q 900 is the ak version and they also have a q 90. That's their 4k version Single coolest thing about i think samsung's tv's in addition to just pretty damn good image quality overall Is an anti-reflective layer that's on the front of their tv's They're currently the best at producing a film material that does Amazing work in terms of minimizing a bright light in the room that might be reflecting off the screen and into your eyes It minimizes that more than anybody else's tech currently And this is something you're going to see a lot of bright tv's adopt as we go forward over the next couple of years Is what else can you improve? Yeah, minimizing reflection so you can see more of the screen and get more of that light in your eyes And to me those were just all just fantastic to look at You know robert while we have you and it harkens back to a few weeks ago And a lot of people watching game of thrones said i couldn't see the long night. It was too dark Of of these tv's these upcoming tv's if i'm in the market for an 80 inch or thereabouts television Which i am my my samsung tv's You know it's smart tv a bit a little long in the tooth. Where would you point me if i if price was The most the biggest consideration Okay for for what size screen 80 80 Well, the n u 8000 it's a 2018 samsung tv It's i want to say 82 inches and it is 4k. It does support hdr formats including hdr 10 and it it uniquely among the Among the non top tier tv's out of samsung it also supports an automatic game mode and automatic refresh rate control So if you are into gaming and you don't like fiddling with the controls every time the tv flips Into game mode or not or having to do that manually. This is something you could really jump up and take a look at That is also just one of the best deals because once you get above say 75 inches for any lcd screen It's suddenly just the price used to skyrocket and i will say in the last two years and this year in particular That's like 75 and bigger is the new 65 in terms of pricing and availability. That's what i'm hoping There are more 80 plus inch options now than we've ever had and Something like that 2018 n u 8000 is still out there It is under $2,000 and it's going to be very hard to find something you're going to get better image quality Unless you're willing to spend at least twice as much Well, good advice. Thank you robert. Thanks also to everybody who participates in our sub reddit You could submit stories and vote on others at daily tech news show dot reddit.com We're also on facebook. We have a group there facebook.com slash groups slash daily tech news show And uh, we've got one more question to get to robert heron from the mailbag sarah We do don and st. Louis's Have a question. Hope robert can answer I haven't jumped into 4k tvs yet, but i'm shopping I get the sense that local dimming is an important feature to enhance hdr But how much is enough in mid-price tvs? I see local dimming zones between 10 and 120 10 or 20 seems low on a 65 inch tv Is there a rule of thumb to determine the minimum dimming zones based on screen size? Full array local dimming that's the first thing you really want to look at any tv that's advertising A dozen local dimming zones is an edgelit tv with some backlight control When I talk about the backlight on an lcd television It is literally leds either on the edges of the screen or one edge or it's an array behind the screen And that can be anywhere like you said from about 100 to three four five I've seen micro led demonstrations of five six thousand leds to get it to A more granular level of control over that backlight If you're displaying like a space scene with some bright stars and planets and stuff on it You don't want the dark inky blackness of space being lit up full bore by that backlighting system You want that to modulate down and then make that star punch up, but the big problem then becomes Can you control the blooming and other artifacts related to that within objects on the screen per pixel level control? More zones equal better control. So you're better full array local dimming tvs like the latest say the The q80 and the q90 from samsung and their their ak models, of course They have improved dramatically also want to say that p-series quantum x. I just talked about 384 zones of local dimming that has a nice fine array of leds behind it That can all be individually modulated And it does definitely improve image quality if you're already sitting front and center on those types of tvs It will make a better looking viewing experience One feature i see some lcd televisions incorporate is if you like those letterbox movies TVs like samsung's better models will actually be able to turn off all the backlighting behind the black bars So they get inky dark Approaching what it looks like with an old led but usually at a larger screen size or a brighter screen all over overall But be aware of anything that's edgelit.  They're not even blocks You're actually doing like if the led backlighting systems on the bottom edge of the screen and it's shooting straight up And there's like 25 30 leds across the bottom It's creating very like very striped zones that doesn't give you individual area control. So It's going to be okay. It's it it is what it is So it definitely costs it costs less to do it that way compared to having You know three four five hundred leds behind the screen each being modulated individually depending on the content Well, robert heron, we could talk about this all day unfortunately We can't however for everybody who's who who's very interested in learning more Where can they keep up with all of your work? Yeah, take a look at my old website that's going away soon. Thank goodness I'm almost done with this That's my website though. You can hit it up at heron fedelity.com If you really want to ping me look me up on twitter at robert heron or you can check me out on avxl with my buddy patrick norton When we get our podcasting on related to all fangs home theater Folks if you want to keep this kind of content coming by sure to become a member and support us It is the majority way the show is funded at patreon.com Slash dtns If you want to send us an email feedback at daily tech news show dot com is where to do it We are live monday through friday at 4 30 p.m. Eastern 20 30 utc find out more until a friend at daily tech news show dot com Slash life back tomorrow with scott johnson. Talk to you then This show is part of the frog pants network Get more at frog pants dot com Hope you have enjoyed this program Yeah Always so good with the oh so good. I'm gonna get a new television. Yeah I was gonna say though If you have room for an 80 inch screen sure Yeah, also consider if you're gonna spend two grand on like the least expensive worth it 80 inch screen Consider a projector. There are so many superb projectors out there that costs a fraction of that cost Do you think so? If you have a room that can do it Definitely do it when I do I do I basically have a wall that I have a 55 right now and It's not a big wall But it it's sort of like every time I look at i'm like It should just be the whole wall should be the television You know, I just I just see it in my head. So that's what I want I swapped up a 55 to a 65 in a smaller room and I felt In no way that it was too big. So yeah, yeah The I mean the 80 is it's a little it's a little silly But if you have a friend of mine has wanted like I was over at his house the other day and I'm like, I just want it I want it I've been in if you have a larger living room. You definitely should be looking at bigger screens They just fill the area better and you already have the room for it cost is always going to be the issue Grant again. Love the I'd love the q 900 from samsung at like 80 some inches, but what's that? seven grand eight Or what's seven inch old lead is gonna buy two hp backpack vr's for that What's what's this tweet spot like in size in terms of like Like where is it is it a 50 inch? Is it a 56? You know, I mean you don't hear a price Like in terms of value where you get like where the value and the size What's the best value 65 if you're looking for something bigger than 50 55 and 65 are the most commonly made tv's right now Uh, I doubt they're the biggest selling you're still in the sub 55 category Funny is when I moved to the apartment that I live in now I had somebody come over to mount my television, you know, because I can't do it and uh, you know They asked beforehand, you know, what size and you know, give give me some specs So we know what to bring I said 65 and he came and he looked at my tv and he's like This isn't a 65. It's a 55 and I was like it is Oh, all right. I can move up quite a bit. So maybe if I got a 65 It would still seem significantly larger I mean budget permitting 65 inches the lg oled's going to be the best piece of eye candy to have a look at That's what I've got Yeah, it's just every day every day. You're gonna love that thing There's nothing more fun than a new television But I will say the new the new samslings are looking good Even tcl if you really want a good value their new 2019 s series. I think they have an s4 now That is not hdr really Uh, I don't believe it even has a wide color palette, but it has that roku interface. It's like 250 bucks for a That's another thing capabilities of this is Or you know sometimes on paper they sound good, but in practice, how many people are using their smart tv? I'll tell you what I see not using it is on a lot of the tv's driven with the android operating system They can become sluggish over time Or there's just certain features not there that you want to use and I see a lot of people just simply going to You know, whatever you're whatever you're currently using being an apple tv or a streaming product of any kind Uh, whoever you're happy with is going to be the cheapest way just to avoid that mess That's another reason I kind of like the tcl stuff for their roku integration They actually the whole operating system is done by roku. So It's about as simple and fantastic as it is they get set up and use In terms of just being able to use the apps you want when you want without without it getting in the way It's just uh, I have a lot of a lot of praise from them there But for myself personally, I just simply I could almost care less what's built into the tv And then I'll just use my favorite streaming. Oh total. Yeah, I that's why I asked i'm like I don't use apps native apps on my television, but Where I would change it up Maybe would be in the case of something like lg's oleds where their web os based operating system is just Slicker than snot and it works well. They support every app I want all of the little format support things like oh, I want to watch netflix and dolby vision That's all right there. You don't even have to think about it. Just hit the button go That's when I end up using my smart tv because I have an lgo led and I will use it for things Where I'm where I don't have an app capable of it on a set top box on a roku or an apple tv um So like an example Well, when I first got it, I didn't have a 4k capable roku or apple tv. They existed I just didn't have that so I would use the apps there But yeah, so so dolby vision surround sound stuff like that or there's some apps that Are available on the lg that are not on the apple tv They are available on roku But I end up using fendango now on the lg because with roku it's built into the operating system Which makes it kind of clunky to use and it's not even available on the apple tv So that's one that i'm always using it on on the lg web os like you said robert That's really clean os it is that was the best thing they bought and To this day, I would say that the latest version of samsung's operating system They're tyson based os on their tv's Is about as good as it gets but if you're going to ask me to pick and choose lg has that magic remote and it literally acts like a mouse cursor on the screen and I love that interface that is the fact that just ended up using the arrow keys though because i'm like My hands too shaky Use both hands so slow Are you It's a much coffee. Are you the opinion that like if you were just going to buy a brand new tea like you just moved into a new Room and you don't have a tv. Yeah, like just you would just get a 4k hdr capable set I'd get a 65 inch oled unless that's not big enough or if that's not in the budget and then Put a 4k oled Not already. Yeah, there's nothing else at this point. Everything's 4k Yeah, 8k is 8k is where it becomes more more important when you're talking the 80 plus inch screens It it gives it a more seamless look, but then you're paying for all of that Also, there might be features in there that you're simply not going to use like that 2019 lg oled I just mentioned it has It has the latest hdmi spec built into all of its ports you Although it was listed initially at being able to do 4k 120 input It currently doesn't do that and that would likely be added later on But if you're looking at those features You're looking at being able to take the apps that are built into the tv and then fire that audio Dolby atmos full-blown right back to an avr that's compatible All of that technology is now built in so if you're future proofing yourself a little more maybe If it's just straight image quality and all you need is a monitor That's where you can get in to save some money a little bit That and that's where my problem has been I moved into this house and it's got a Home theater built into the you know the living room basement area So I've got an entire wall to use for projection projection screen And I got power in the ceiling to mount the projector But I don't have any it had to be a wireless interface And I'm always weary because every time I start researching like oh, they're about ready to update the spec And about better to do this and well, that's when it gets confusing I did a setup using epsons. They have any projector they make currently if it ends with that e like the ube It includes a breakout box. That is a hdmi wireless transmitter to the projector Currently and it does use 60 gigahertz technology So it is slightly compressed, but I say visually indistinguishable from lossless However, I'm not certain if it'll do anything above say like 4k 24 For you know 4k sources so for 1080p 60 and whatever it's going to be fantastic but that is a way to have wireless input or As long as the projector has power you're good to go Also, all of these projectors typically have a usb port that you could then take A streaming stick of choice from any manufacturer just stick it in the back of the thing and power it off the usb port and There you go. You don't even need to run a cable to it really You can put an apple tv on it anything you want But I don't think you have to worry about the getting the audio to the speakers that are mounted in the wall in front of the room like this Yeah Well, that would be that would be coming from the source device. So say it was like a blu-ray player Or in the case if we're going to be a wireless transmission to a projector on the ceiling You would probably want a separate box For like a roach or apple tv or whatever Then you can have the audio go to the avr and the video being sent appropriately out to the Speaking of speaking of audio robert just because I have you um, I'm sort of I'm sort of in the market for a soundbar And I was looking at the sonos because I've already got sonos all over my house. Yeah I mean the beam seems like a good option I've been living with the beam for about six months now And it's not leaving my tv anytime soon. I just did the update to google assistant. Yeah, I was able to even have that option Uh, I really don't use voice assistants But I do appreciate the button on the top of the beam that lets me turn off the microphone altogether so Audio quality wise, especially if you're an ios user Sonos is some of the best products out there for the money. I mean, yeah, you will not be disappointed And in the case of ios the ios app it has a room tuning application built into it Where you literally use your phone as a listening microphone and it further optimizes that speaker for your given room environment And you can toggle it on and off and I've always found it did a pretty good job Yeah, I I for my sonos ones Um when I moved to my latest department it because we have some weird uh sealings here You know a lot of slopes and just kind of funny angles and it did make a difference made a real difference And if you're already using uh the play ones Perhaps you could also link those in to be surround sound speakers and using something like the beam as your front three channels Or however you want to draw. Yeah, we've talked about down the road. You could throw in a wireless sub I mean, that's nice to do Value wise there is absolutely nothing wrong with vizio soundbars. They started about 80 bucks I would go for one that has a wireless subwoofer with it And you know, that's a good starting point Obviously, if you can go with something like dolby atmos with sealing speakers and the whole nine yard That's gonna sound like 80 bucks sounds pretty good too. Yeah, you know all things consider It's gonna sound better than any tv speakers And if you have somebody who might have listening Uh inability to hear dialogue clearly or things like that These devices can really go a long way toward helping Just we're gonna wrap up our video right there. Uh the show today if you were wondering is called tv's pushing the edges Uh gdi will likely be called man rats video people. Thanks for watching audio folks stick around and there's more to come


Hi, this is Samir Bhatia and we are here at the Oracle Open World and Oracle Carbon Conference and today we have with us Graham Rocher, founder of Grills and Micronauts. So first of all, tell us a bit about what are you doing at the Groundbreakers here? Well, I got the privilege of being honored with an award from the folks at Oracle Groundbreakers for the work I have contributed to Grills over the years, which is fantastic to receive such recognition, especially being among such esteemed company. And what is Grills and what is Micronauts? Let's talk about, you know, one by one. So Grills is a rapid application development framework for the JVM for Java based on the Groovy language. And it's highly optimized at creating traditional kind of crud applications, create, read, update, delete applications for the web using traditional server-side deployment models and deploying to wall files to server containers and so forth. It's been immensely popular and, you know, one of the more popular Java frameworks over the last 10 years, particularly amongst the Groovy community being based on the Groovy language and has provided a real productivity boost for those folks over the years. And what is Micronaut? So Micronaut is a brand new framework, whilst Grills is 10 years old now. Micronaut is a new framework that's been credited to address the microservices space. So rather than trying to adapt Grills to what it was not really designed to do, we decided to go back to the drawing board and rebuild a framework that particularly targeted at solving the microservice problems, like the distributed configuration, service discovery, client-side load balancing, low memory footprint execution. All those microservices challenge that providing the same kind of productivity benefits that you get with Grills but for the microservice space. So is it that Micronaut is a successor of Grills or are there two totally different projects doing different... Not really, Grills will continue to have its place in terms of building traditional applications that you deploy to a servlet environment.  Microservice workloads and serverless functions, for example, require a really different set of characteristics in terms of ultra-fast startup time, low memory footprint and so on. And what Micronaut does is instead of doing a lot of the computation of the framework infrastructure at runtime, it pre-computes everything using a head-up time compilation through the use of Java annotation processes and creates like a reflection-free model when running your application. And the result of that is instead of requiring hundreds of megabytes of memory to run a Micronaut application, it requires tens of megabytes. And for serverless functions which are paid for execution or by memory consumption, that provides a real boon because traditionally Java applications have consumed historically a lot of memory frameworks designed for Java have primarily been designed around the use of runtime reflection, analysis of annotations and all of those features in Java, while convenient, they have a cost in terms of memory consumption, startup time and so forth. And Micronaut attempts to eliminate all of those, running you with the ability to build efficient microservices for the JVM, while still maintaining a lot of the productivity features that you get in frameworks like Spring Boots or Grails. And who is using Micronauts? Right now, we've just released 1.0. So 1.0 in fact launched at the conference and we're executing pilot programs with customers at OCI who are building microservice applications with us in pilot programs with Micronaut. And we anticipate with 1.0 being out and the first stable release being out that adoption amongst organizations will accelerate. We have a number of customers already using it in production. Can I elaborate on those obviously in this interview? Absolutely, we anticipate adoption accelerates in the next. You have also commercialized these two projects. So can you tell us a bit about the company OCI? It's a full service organization based in St. Louis. So specifically for the Grails and Micronaut communities, we provide training on consultancy services, project kickstart services. So if you're looking to start off with using either Grails or Micronauts, we can come on board onsite and help you at the ramp up phase of the project and implementing a successful project, whether that be through training or direct onsite consulting. Now let's talk about the trends that are happening in the market. Microservices architecture is becoming bolder than we are. Serverless is becoming all these new buzzwords are coming up. So where does Micronaut, we already talked about that, but where does it actually fit in the cloud? If a company is embarking on their cloud native journey, how does that help them? It's really at the application development point in terms of productivity tools that Micronaut is an interesting option for organizations. In particular in the serverless space, because of the low memory footprint, the fast startup time that you have in a typical Micronaut application and also the ability, because Micronaut is all compilation time based, using ahead of time compilation, it provides out-of-the-box support for things like Graal, VM, which allows computing your application down to a native image. All of these aspects make it fit really nicely in the serverless model where, for example, in the serverless model, a long running application is not going to benefit from the just-in-time compilation or the JVM because the application comes up and goes away and comes up and goes away. So in that sense, it's much more important to have fast startup time, low memory footprint, and Micronaut provides a model for building functions that you can deploy to AWS Lambda or Azure Function Service or OpenFaaS or Project FN using just by packaging your Micronaut function as a container. And because of the nature of the use of compile time DI, compile time AOP, compile time dependency injection, that is, everything is computed ahead of time, which makes the execution of the function far faster than your traditional frameworks. Would that be Jakarta EE or Spring? So let's talk about you quickly. What do you do in your free time to have just fun not dealing with technology? I mean, obviously, I'm passionate about technology, but everybody needs a personal social life. There's a number of things I enjoy. The winter is coming up, so that means skiing, mountains. The big interest of mine is heading down some slope where I happen to live very close to the Pyrenees Mountains so looking forward to the slopes this year for the skiing season. In summer, whether that be other activities like paddle boarding and so forth. I enjoy definitely the outdoors. Work-life balance is critical to a healthy mind, I think. So whatever you can do to keep yourself healthy, it's good in my book. Oh, that's good, yeah. Thank you so much for talking today. Hopefully, we'll see you again. Thank you. Thank you very much.


We received an email asking a very good question and I thought I would put this onto a video so that maybe other people can benefit from it as well. So Michael from the East Coast, I hope I'm not outing you too much. I think that's generic enough contacted us and said hey, I have a 300 BRC it's a savage brand rifle, and I live in the East Coast, but sometimes I shoot out west where they're wide open spaces. And so just wondering about a scope recommendation. So there are a lot of good answers to this it's kind of like you know what's a good car to buy.  And same thing is true with scopes. So night force is a very popular brand. I don't have a night force, but they are very high quality, and a lot of people love them. Schmidt and Bender is a very high end scope. A lot of people really like those. I think that they charge a lot for what you get. You know there's kind of a point of diminishing returns and they have lowered their prices a bit over the last years, with all the competition. But I'm primarily going to talk about the brand that I am most familiar with, because we've purchased a lot of them over the years. And we do get a discount, like a partner affiliate type of discount because we're a shooting instruction business so we are getting a discount on these brands to be open about that. However, we choose them and we use them and even if we didn't get a discount, we would still use them. So there are a couple options for shooting long range that I'm going to toss out there. The first would be a vortex viper. And this is going to be somewhere in the 900 to $1,200 range, and you can either get them on. Amazon or optics planet or at a local store where whatever kind of shopping you prefer. I'm going to put a link down below to several of these using our Amazon affiliate link. So, if you click on that I'd love it, but if not that's fine too. So vortex viper. I like high magnification and I think their latest is five to 25 that's the PST generation to it's good they also have an XLR reticule scope so if you just search for vortex viper XLR. I like that scope as well. There's there's an option that some scopes have that has the illuminated red reticule. I've had a bunch of scopes with that and I tried it and I've never put a battery in since trying it and just realizing it doesn't really do much for me. So I wouldn't care about that part. Viper is kind of the least expensive I would go. I guess another option would be going with a completely different brand which would be arcan scopes. It's a decent job. There's still a Chinese scope so not not high quality, but a decent scope. So arcan would be the cheapest option so getting back into vortex brand viper would be the lowest vortex brand that I would suggest. I believe that the glasses made in Japan, and then they're assembled in China I believe. So that's a step up from everything being made and assembled in China. A step up would be their razor line. And that's what we love. We have quite a few of those on a number of different long range rifles, and it kind of goes to the couple sayings by once cry once. Another coach said you know my dad always told me, we're too poor to buy cheap stuff. So you're going to spend more you're going to be more in the $2,000 range so kind of double of the viper line, but you're going to get a way better quality. You're not going to have to send it in for repairs on their excellent warranty as frequently. The last better it's a crisper image, the clicks, the click value is better. So I think that that's a worthwhile thing if you're willing to put the money into it. There are a couple of things that are really important. I like high magnification but it's kind of up to you. If you're shooting at a mile, it's nice to be able to dial it up to 25 or 30 magnification, if there's not too much mirage coming up. And by the way, if any of the things I'm saying aren't making complete sense. There's a book that will describe a lot of these things to you. I'll put a link in the description also about long range and extreme long range shooting. And one of the things that's important before you go buy the scope is get first focal plane. It's called FFP. And there's, there's some good reasons behind it but just long story short, make sure the scope you get is FFP. The other big consideration is who are you going to be shooting with? You're going to have to decide between minutes of angle MOA and mill radian, MIL. And those are two measurement systems. And just like inches or centimeters, they're both the metric and the imperial system are both great ways to measure things. One's not better than the other. But the important part, getting back away from that example to mills or MOA, who are you going to be shooting with most of the time? And if the person with whom you're going to be shooting most of the time uses mill, get a mill scope. If the people with whom you're going to be shooting most of the time use MOA, get MOA. I happen to be an MOA person and I have trouble communicating when someone speaks MIL, mill language. But others are very familiar with that. And people with really high IQs can communicate in both. But you'll have to decide one or the other. So if it was me, I would get an MOA with a first focal plane reticule. I like as busy of a reticule as possible. Like it's called a Christmas tree reticle. And there's just all kinds of information on it.  You can kind of adjust and realize how far you're missing. If you just had a simple up and down line and left and right line, that simple duplex reticle doesn't give you enough precise information for your follow up shots. So I like busy reticles. I hope this has been helpful. And whatever you do, you're not going to go too wrong as long as you spend at least $1,000, and you get a first focal plane, and you contemplate what it is you're going to want as far as a mill or MOA. You'll do well. Now another tip is when you're buying your rings to put on the scope. Make sure that you get the correct size. Some scopes are 34 millimeters. Some are 30 millimeters. Others are different sizes. There's also a height that the ring is the center of the ring is above the top of the Picatinny rail that's on your rifle. Medium is a good place to start, but you might order it and find out you didn't get it right. Also, some manufacturers when they sell rings, they sell them one at a time. It's not a pair. So make sure you read carefully so you're not all excited getting ready to put it together and you realize you only have one ring instead of two. Another consideration is the rail on your gun. If you're going to be shooting extreme long range, then you're going to want more cant on your rail. And I like to have at least a 20 MOA rail. 40 MOA is even better, but those are harder to find. And your rifle might already have that built into it. Some scope mount systems have the rings connected and there's also the inclination at a 20 degree cant, not 20 degree, 20 MOA cant inclination. So that could be handy as well. And again, I'll leave a few links down below and hopefully this helps.