|<< Previous: Single Page Apps Tren...||>> Next: Tutorial Video on Imp...|
Download Size: 21MB Listeners: 1083
Introduction music: Riviera by Ernani Joppert, São Paulo, Brazil
RSS 2.0 feed compliant with iTunes:
Google Dart Language site
Michael Kimsal: Good morning to you. Hello.
Manuel Lemos: Well, I suppose at least for me it should be good evening, but I think you are thinking in China time zone.
Michael Kimsal: I'm thinking in Chinese. Good morning to all our Chinese listeners, (Speaks Chinese).
Manuel Lemos: I was expecting something in a foreign language.
Michael Kimsal: Yes, I mean si.
Actually I realized that there was eventually that need not just to represent the language but maybe probably a mascot like there is the penguin for Linux and elephant for HP and others.
Michael Kimsal: The mouse for Disney, Mickey Mouse, yeah.
Michael Kimsal: You think? I don't know if you can get more catchy than this logo, it's yellow and black and I didn't see anything specific about saying if the color is part of it or not, but there is to me this looks very much like an Adobe... like it's part of the Adobe Creative Suite, it's the same style of a color and then just a couple of letters underneath, like if you replace JS with CF this would look like the ColdFusion logo.
And this is not a criticism, I'm not bitching or complaining, it's just that's what I'm wondering if Adobe might actually say something because this looks so much like the Adobe styling, but we shall see.
Manuel Lemos: I don't know if they use a font that is actually owned by somebody but probably not, probably they already took care of those concerns before.
Michael Kimsal: Yeah, the note here on one of the pages I'm looking at says it's been used for a year prior by the community. I don't recall having seen it around.
Manuel Lemos: Me neither.
Michael Kimsal: I guess we're in different communities.
Manuel Lemos: It's probably a bit like in the PHP world, there are the PHP developers and there are the WordPress developers and Drupal developers and Joomla developers, and sometimes they don't communicate.
Michael Kimsal: Use it wisely, use it with pride, make bumper stickers out of it, ooh, it is out of the WTFPL public license, therefore, oh, I could make t-shirts with it, I could make bumper stickers, mouse pads, that'd be awesome.
Manuel Lemos: You could use on magazines.
Michael Kimsal: Use it on a magazine, I'm not going to but I could, I think maybe tennis shoes or running shoes with like a J and an S, I think shoe would be pretty good.
Manuel Lemos: Yes. I think you should use it in your magazine or else you don't belong to the same community.
Michael Kimsal: But I belong to my own community. Salt and pepper shakers with one as J and one as an S, that'd be pretty good too.
Manuel Lemos: Okay.
Michael Kimsal: I don't know if you have salt and pepper shakers down in Brazil.
Manuel Lemos: Yeah.
Michael Kimsal: Okay, just checking.
Manuel Lemos: Okay. But, well, moving on with the podcast now I would like to talk about something that is somewhat related, well, it is a lot related although it's not exactly the same thing, which is the announcement of the Dart language, a project developed by Google.
Michael Kimsal: I don't know. Man, I'm a little... I'm slightly frustrated with this because Google, this is what, their second or third new language that they introduced, there's another one that's escaping my mind, but Go was something and that was going to be a big deal, and I don't think it has become a big deal, and people will say it's only targeted as small certain use case.
In one sense I applaud the idea of let's innovate, let's try new things, I'm not sure that this is really solving too many problems. Now, it would be nice if this was something that was built into browsers and you didn't have to do the compilation step and all that, that might be something.
Granted a lot of that was a decade ago, but somehow now it should be more acceptable because it's Google and somehow they're nice guys or nice people. I don't know, I'm not seeing enough about what Dart is necessarily solving that it seems incremental in a way even though what we may be getting from it is easier than a combination of the tools that we have now I haven't seen anything in it that is radically different, radically better than the current state of things.
If it's just a syntax that they're saying we need better syntax, and I don't think it's just that, they're talking about having different structures under the hood. It feels like it will be a niche thing, if it actually ever gets bundled into browsers I think it would just be in Chrome, and to the extent that people use it, it would be very fracturing, it would be no different than writing Jscript for IE6.
And there may be valid reasons, valid use cases for somebody to do that because it solves a specific niche need, but it just feels like this is just going to be a niche, like even Google can't introduce necessarily new things.
Something that would be far less, what's the word I'm looking for, controversial, is the WebM stuff from a year or two ago, let's introduce a new graphic file format. That hasn't even really taken on I think to the extent that it probably should have, and there's less controversy there, there's more easily understood benefits, this is a smaller portable format, royalty free, blah, blah, blah, and even that hasn't taken off.
So it seems like it's going to be hard for anybody to introduce any drastic changes to the Web as it stands, even Google. But that's just my... I know I'm not really talking about the technical aspect of it too much, I've seen the tutorials, I've watched a couple videos, I haven't run it myself so I can't speak as to does this make programming really, really awesome, I don't know.
Manuel Lemos: Okay, well, we don't know but maybe this is a part of a bigger thing from Google, but since we don't know that yet so far I don't, personally I don't see much future.
I would trust that if anybody can iterate and make their compiler better it's going to be Google, or people at Google, that was to me one of the lesser criticisms, but goodness, I'm a huge Groovy fan, I love Groovy, Java done right, Java done next, whatever you want to call it, I mean that's what the Groovy supporters really say, this is a super set of Java, it's Java but it's got so much benefits to it, makes all your syntax easier and reduces boilerplate, all this stuff, and that has not taken on, taken off I should say, it's not exploded like I really had hoped it would.
And that it's about as easy to integrate, you're not really replacing Java you're just extending it, and even that hasn't taken off. Trying to challenge a very established technology, especially one that is growing and evolving, and trying to come up with a replacement for it just seems a fool's error.
That said, if anybody can do it somebody like Google probably could, but I don't know, I just don't have high hopes for this. I'm not sure I want to have high hopes for it anyway.
Manuel Lemos: Yeah. Well, in sum I would say that the world does not need anymore languages to do precisely the same as the current languages do.
Michael Kimsal: Yeah.
Michael Kimsal: I'll know more about it later on when it's gone.
Manuel Lemos: Yeah, we have to wait and see where this goes. As you said, Google already introduced several other languages that did not take off. I suspect this is yet another of those projects that was done on 20% of the time a Google employee and somebody thought it could stick for some reason.
Michael Kimsal: If they end up learning something from it, either from a programmatic standpoint or just from community feedback, that's great.
Manuel Lemos: Yeah. But, anyway, this is just talking about something that is recent and that probably we'll forget it very soon.
Manuel Lemos: But moving on and talking about something that you probably will not forget because it is just going to be introduced is about this Amazon Silk browser which is going to be introduced in the first Amazon Android based tablet.
Michael Kimsal: Fire, the Kindle Fire!
Manuel Lemos: Now with sound effects.
Michael Kimsal: Yeah, that was pretty good. That should be their sound just like Intel has a sound, (makes sound), that was close, that's their sound. Amazon, if you're listening, (makes whooshing sound).
Manuel Lemos: You still have time.
Michael Kimsal: Yeah! They could just cut that out of the podcast and that could be the boot sound, like every time you swipe a page or you turn a page, (whoosh sound).
Manuel Lemos: So are you licensing the sound effects for free?
Michael Kimsal: It's creative commons attribution, so every time that happens there needs to be a link pop up that has my picture on it.
Manuel Lemos: (Laughs) that will be fine.
Michael Kimsal: Or they can pay me. Or they can pay me money, like a quarter of a U.S. penny every time that sound is played I'd be happy with that, I'm not asking for much.
Manuel Lemos: Okay, now seriously.
Michael Kimsal: What, I was serious (whoosh sound).
Manuel Lemos: Okay.
Michael Kimsal: Because that's what fire sounds like, the Kindle Fire that's it.
Manuel Lemos: I'm glad you explained it or else we will not relate to the effect.
Michael Kimsal: How is the woman who does the transcription, hello, what's her name, Mary, it's not Mary. Hello, (whoosh sound), how is she... she's going to cut all this out.
Manuel Lemos: No, she will just put in closing brackets (sound effects).
Michael Kimsal: Okay, yeah, let's try to spell that, w-h-s-h-f-p-h-w-s-h-f-w, I think, smiley face. Carry on, I didn't mean to digress so much.
Manuel Lemos: But back to this Silk browser, the reason why I thought it would be interesting to talk about it, it's not just because it is yet another browser, but some things that got my attention specifically about the way that according to their announcement it is supposed to accelerate the Web access experience for at least those Amazon tablet users that will be enjoying the navigation with this Silk browser.
So by the time that the page is served the web server, I mean their proxy, will be ready to serve the page with all its components very quickly, and it will be eventually even quicker if those components are served from Amazon cloud hosting or somewhere inside their network.
And this is what I got from their announcement, and I'm still not sure if this is the correct interpretation, but in the end what this means is that web navigation experience for Amazon tablet users will be faster, and this probably will make a difference, I don't know yet because the tablet was not yet released, just a few weeks ahead until they announced it.
Michael, did you get anything other than this or maybe a different idea from what I got?
Michael Kimsal: (Sound effect)
Manuel Lemos: Okay.
Michael Kimsal: My interpretation isn't that much different than yours. This reminds me some of the Opera proxy, mobile Opera I think by default operates through a proxy app through Opera servers which can pre-fetch or fetch information for you, compress it and send it down.
So if there are more services or more things that need to be fetched and processed that could be happening at the server level, and the results of that could be sent down rather than your device requesting those pieces and then doing calculations on your device.
And I say 'yet' but I probably won't be getting a Kindle Fire unless somebody listening out there has one and would love to send me one, you can send it to 40 Glenn Oaks, Youngsville, North Carolina, 27596, US of A.
Manuel Lemos: Yeah, it could be a company from Seattle.
Michael Kimsal: Well, the mailbox, I will say the mailbox at that address is large enough to hold a Kindle Fire, I checked the dimensions a few days ago so I brought out my ruler, it does fit.
Manuel Lemos: It could be a demo, a demo just for reviewing purposes?
Michael Kimsal: Well, it could just be because somebody listening wants to send me one. I'm not putting any pressure on anybody and I don't even want to name drop, Jeff Bezos.
Manuel Lemos: (Laughs)
Michael Kimsal: I don't want to name drop because I don't know him, but anyway, that said, yeah, that's my interpretation of what's going on.
But I did read something where Opera's reaction was hey, Amazon, you're five years late! But I suspect that Amazon wouldn't just copy, probably wouldn't just copy what Opera was doing because there may be if they copied it exactly there may be some IP issues or some patent issues going on, so they've probably done something different and better than what Opera was doing.
Manuel Lemos: Well, they basically are serving it from their own Cloud and they have their own CDN so it is probably faster worldwide. Now, regarding the actually implementation, well, we don't know yet because at least for me the exact concept they are using I don't know yet if this is just an interpretation which could be eventually wrong.
Well, I guess we have to wait and see, I don't plan to buy a tablet at all of any brand any time soon, but we don't know.
Michael Kimsal: If for some reason I happen to get two at my mailbox at 40 Glenn Oaks, I will send one to you.
Manuel Lemos: (Laughs) okay.
Michael Kimsal: If two happen to come they might be stuck together and I'd have to maybe wash them and separate them.
Manuel Lemos: Okay.
Michael Kimsal: It's happened.
Michael Kimsal: Yeah. That'd be interesting to see.
Michael Kimsal: (sound effect)
And for those not familiar with what these kinds of tools do, a parser generator, it's basically useful for generating code that will interpret or even execute code in some other language, so basically you give it a syntax of the language and this Jison tool, which is similar to other tools written in other languages like Bison for I think it's C or C++ that...
Michael Kimsal: C, I think.
If you want to let people use maybe some internal function or nomenclature naming system that you already have internal to your company, you let people express that through web forms, but it feels more like something that'd be used server side, and I don't know if that's just because I'm thinking of Lex and Bison already being basically server components or if I just have very limited imagination, it's probably the latter.
Manuel Lemos: Well, from what I've seen I think there is support to use it in an environment that is compatible with CommonJS specifications, so I would not be surprised if this could be used, for instance, from Node.js which is one of those cases.
But, well, for anybody that has interest in languages this could be a very good tool for use in their projects, and I think whoever wants to build a language would be crazy to try to do it manually from scratch, although there are always people that prefer that route for some reason.
And, well, the message is given if you didn't know about this Jison parser generator now you know if you go study it probably just don't create another Dart language or something like that.
Michael Kimsal: Oh, that is so negative of you. We need more Dart languages.
Manuel Lemos: As if we don't have enough languages to study already.
Michael Kimsal: Si, I mean Da, I mean Ya, I mean I don't know how you say it in Japanese, I remember that.
So, I like doing this to you, I like throwing stuff out in the middle of the podcast that I did not tell you about at the very beginning and it's actually totally accidental on my part.
There's actually two things I'd like to talk about, one is this letter bubbles, somebody sent this in to JsMag a few days ago and said hey could you talk about this. I Tweeted it out for JsMag and this is letterbubbles.com,.
I didn't play it too much because I thought it might be addictive, so, but it's interesting, I could play for about a minute and a half or two minutes and then my game would be over, but I was impressed with it.
And I think the guy who wrote it I think his name is Rick. Rick, if you're listening I'm sorry I got your name wrong because you wouldn't have paid attention because you wouldn't have known if I said Rick and you weren't listening.
So that's that, I guess we can return to our regularly scheduled thing. There is one other kind of meta topic I'd like to bring up at some point, but I can save that until you're more settled and I can disrupt you again.
Manuel Lemos: Okay, well, now that you mentioned about your JsMag magazine I think it's time to also talk about the upcoming issues.
Michael Kimsal: It's always time, always time to talk about that. Well, actually I'm pulling up our list. We had a lot of things that were on the plate, but many of them have been on hold because people have issues, personal scheduling, vacations, things like that.
We have, shoot, that one isn't done. Arturs Sosins, a name very familiar to JS Classes readers has done a piece for us on transformation matrices which is very mathematical and kind of above my head, but we do have that.
Dino Gambone, hello Dino, Dino Gambone has written for JsMag for a long time, he's written a series on game development and this month he's actually joining us, this was sort of a deviation for Dino and he was going to join on this podcast, this recording of this podcast, we had a scheduling conflict so it didn't work out, hopefully he can join us next month.
But Dino's contributed a piece and I think this is going to be at least a two-parter on writing offline web apps, offline web apps for browsers, mobile, he's talking about Windows 8 mobile, IOS, Chrome OS, so how do you go about writing an offline web app, what are the pros and cons and things you have to keep in mind, that's great from Dino.
And David Calhoun always puts together the news for us, so we're going to have some news from him as well.
Manuel Lemos: Yeah, from what I understood that news that you have on your site is also available as a podcast, too, right, or didn't start yet?
Michael Kimsal: He had started that, I don't think he's continually doing that all the time. I'm going to go check because, well, no, I take it back, because he did it and then he didn't do it for a bit and he's doing it again, so I should take that back because it's been a couple weeks, probably two weeks, so he's doing it then not doing it, he's doing it as and when he can.
You can... there isn't an RSS feed for it, at least on our site right now, we should probably put one up on the JsMag site, but it's there and if you want to listen to him instead of just reading things.
Manuel Lemos: Well, this happens to me, sometimes I prefer to listen because I don't have to stop doing what I'm doing to pay attention to something that is written. So if I could listen to it it's probably easier than having to read. So if you have a podcast version of your news articles, what do you call it, News Roundup?
Michael Kimsal: Yep.
Manuel Lemos: It's probably more viable not just for me but probably for those that maybe they are in their transportation to their work, their jobs or whatever they are doing, and it's more viable to just listen.
Michael Kimsal: Well, because when it was first tried I wasn't sure that he was going to keep up with it, and we haven't talked directly for a while, we email back and forth now and then.
I think what I might do is there are a couple of WordPress plugins, this is the blog on WordPress, that will create RSS feeds directly of the linked mp3, so that might make it a bit more convenient to do that.
Some people if you just subscribe to the standard news feed some readers will extract those mp3's and kind of do something with them anyway, but I might make it a bit more explicit, and by that I don't mean I'm going to swear in it. I mean the word explicit has so many meanings, it's great.
Manuel Lemos: I think I got what you mean to add some tags in the RSS feed to make it look like... well, actually use those tags for iTunes to syndicate as the categories and descriptions in separate tags.
But, okay, anyway I'll add a link in the show notes to your RSS feed because others would like to follow your news roundup either written or in the form of a podcast if there is time for you guys to record it in that form.
Michael Kimsal: Sure.
Michael Kimsal: Well, I'm going to go back to an Arturs Sosins contribution. I mentioned he's very well known at the JS Classes site, and he has written for JsMag and we're hopefully going to make him, I say make him, hopefully going to keep getting monthly contributions from him.
But what he did last month was he wrote an article for JsMag on blurring, it is some Blur effects, and that was actually a class contribution that he made to JS Classes as well, so he did one thing and got two uses out of it.
And it's a pretty neat technique that he's got that will take a raw image file, actually he can do this effect over regular text as well too, but it creates a blur effect and he's got ways to make it very, very blurry or just minorly blurry, and the example you can click on the blur, click on the un-blur, it's pretty... it's looks like oh, okay, that's kind of neat, and then when you actually mouse over stuff it's like, wow, it's getting more blurry, less blurry, and he describes the technique in more detail in the JsMag article.
So you can look at the code and get it and understand it or you can actually buy his article and read about specifically how he did it and why some of the stuff works the way it does.
Manuel Lemos: Yeah, it's interesting, it's playing I think with one of the newest, or at least something that should be in CSS 3, just playing with some attributes and that in the end give that effect.
And I think it was quite impressive and it was one of those things that we are more used to seeing in applications, web applications, that you use Flash movies or similar approaches. And in this case since it no longer uses Flash it's just regular CSS 3 attributes it's great because you can make a good impression of something that you want to present in your site using a component like this that manages the changes in the attributes to actually show it with this nice effect.
And also talking about effects, on my part I would like to also comment on another component by Arturs Sosins, in this case it's Canvicon the name of the component. What it does is basically to change the image of the favicon that is used often in the bar of your browser for the current page.
And the favicon is I think it was Internet Explorer that introduced it, basically a file in the Windows icon format that represents, can represent and icon in different places. In the case of the browser it shows an icon, well, it depends on the browser, but usually it shows in the title of the browser window, and in this case what this object does is to use an image in a Canvas object and copy it to change the current browser window icon.
Well, although I could not actually make it work in Chrome, it works in other browsers, and it can give a nice effect if you keep changing the image and producing an animation effect.
And this is yet another impressive object done by Arturs Sosins to achieve a nice effect, something that you are not used to seeing on sites everyday, and for those that like these kinds of unusual things I think it will be very interesting to take a look at it, into this object.
Other than that there are a few other classes, objects, published in the site, we do not have much time remaining to talk about them.
And there was at least another one that kind of caught my eye, which I'm going to dig into a bit more, the Canvas Game Controls, that's Martin Barker from the UK, and it's doing some object keypress binding and so on, I want to dig into that.
And I also had... I hope I'm going to get the name right, Satyam Kumawat from India contributed a jQuery form validation plugin as well, so really if we spent a few minutes on each one then we wouldn't have time for all my other witty banter.
Manuel Lemos: Okay, well, we are practically at the end of this month's podcast.
Michael Kimsal: Not so fast, not so fast.
Manuel Lemos: I thought you were going to leave immediately, but if you don't have to.
Michael Kimsal: I've got another four minutes. I'd like to just throw out one little thing here is that I went to ZendCon last week, two weeks ago, whenever it was, week and a half, in California, and saw a lot of cool PHP stuff, met a lot of cool PHP people, saw some people I've known before, met up with old friends, met some new friends.
But I want to just mention a couple of sessions because I didn't get to go to them because they were too packed. The couple that I had wanted to go to when I had time was HTML 5 WebSockets, Scott Maddox was presenting that, and that was beyond standing room only, there were people standing out in the hallway trying to get into that one, but really I think it just proves the hunger that people have for information on WebSockets, bi-directional sockets, to let the browser talk to the server and keep that connection open.
Anyway, just a little thing, it's still on my mind and kind of fresh in there, I wish I'd gone to more sessions, but as at any conference there's always four or five things going on at the same time and you can only go to one thing at one time.
Michael Kimsal: Sure.
Manuel Lemos: Well, I think we're practically done. I understood that you, Michael, have to go to a commitment, so thank you for being here again.
Manuel Lemos: (Laughs) okay.
Michael Kimsal: Okay.
Manuel Lemos: That's all for now.
Michael Kimsal: Okay, I'll talk to you next month. Actually we'll probably be... oh, two things, because we probably won't talk before, but for everybody listening in the U.S. have a happy Thanksgiving.
And before Thanksgiving if you're a freelance developer come to IndieConf in Raleigh, come to Indieconf.com, plug, plug, plug, have to get that out there, we look forward to seeing you there. For everybody else that doesn't come, have a good Thanksgiving on November 24th, it's my dad's birthday too, so happy birthday, dad, if you're listening.
Manuel Lemos: It's always a good day to organize an event.
Michael Kimsal: We're right before Thanksgiving, but, yes,... ooh, I shouldn't say that, I'm going down to see my dad as a surprise for Thanksgiving on his birthday, but I don't think he listens to this so I don't think I'm spoiling the surprise.
Manuel Lemos: I think so.
Michael Kimsal: Okay. Thank you for letting me wish my dad a happy birthday on the podcast, and I will talk to you next month.
Manuel Lemos: Okay, thank you, Michael, bye.
Michael Kimsal: Okay, bye, bye.
|<< Previous: Single Page Apps Tren...||>> Next: Tutorial Video on Imp...|