Contents
Listen or download the podcast, RSS feed
Read the podcast transcript
Download Size: 33MB Listeners: 1105
Introduction music: Riviera by Ernani Joppert, São Paulo, Brazil
RSS 2.0 feed compliant with iTunes:
http://www.jsclasses.org/blog/category/podcast/post/latest.rss
Show notes
- BrazilJS 2011 event
- JavaScript Professionals directory
- JavaScript Jobs board
Contents
Introduction (00:20)
Interview with Felipe Moura about BrazilJS event (2:18)
JavaScript Professionals Directory and JavaScript Jobs board (11:55)
Latest most interesting JavaScript objects in JSClasses (39:15)
Upcoming articles in JSMag magazine (50:38)
Conclusion (1:02:58)
Introduction (00:20)
Manuel Lemos: Welcome to the Lately in JavaScript Podcast. This is episode number 6. And as always I have the pleasure to have here with me my co-host Michael Kimsal, hello Michael.
Michael Kimsal: Awesome. Hello! Are you saying that I just gave you pleasure, is that what you're saying? I don't know if you want to go on record saying that, but still I was glad to give you some if I could, pleasure, pleasure I mean.
Manuel Lemos: Yeah. No, you always give us lots of pleasure with your presence.
Michael Kimsal: Thank you.
Manuel Lemos: But today we also have the pleasure to have a guest, Felipe Moura from Brazil. Hello Felipe, how are you doing?
Felipe Moura: Hello, how are you? It's a pleasure to be here too, enjoying this conversation.
Michael Kimsal: Excellent. Good to talk to you.
Felipe Moura: Nice to meet you too.
Manuel Lemos: And I know Michael is going to speak Spanish to Felipe.
Michael Kimsal: Yo, porque, tu me las preguntas?
Manuel Lemos: But once again let me remind you that in Brazil we speak Portuguese, it's similar but it's a different language. Some people even take offense but we take it lightly.
Michael Kimsal: Not you. It's lightly in JavaScript, you take it so lightly. Are you going to cut it out of the podcast if I start singing, are you going to edit it out or are you going to share it with people?
Manuel Lemos: No, no, I'm going to keep this because these dialogs are the fun part.
Michael Kimsal: I may just break into song later on in the podcast.
Manuel Lemos: Not really necessary.
Michael Kimsal: I didn't say necessary, but icing on cake is not necessary either, it adds something to it, so carry on. Felipe how are you doing?
Felipe Moura: Everything's fine.
Interview with Felipe Moura about BrazilJS event (2:18)
Manuel Lemos: Anyway, back to our podcast finally. We invited Felipe this time because he's one of the members of the organization of a JavaScript event in Brazil. Felipe can you talk to us a bit about first yourself and then a bit about that event?
Felipe Moura: Of course. Thank you for inviting me here, first of all. Well, I work with JavaScript for like six years I believe, something like that, and I am one of those friends of JavaScript and I had the honor to be one of the organizers of the first conference of JavaScript here in Brazil, the BrazilJS is the web site.
And this is a great conference which is taking much more time than we thought before, but is going to be much bigger than we thought too, so we are quite excited about the conference.
Michael Kimsal: So this is your second year doing this? Are you saying this is the second time you've done it, you did it last year?
Felipe Moura: It's first, it's the first conference.
Michael Kimsal: Oh, okay, I'm sorry. I thought you were saying that you'd done it before. This is the first conference in Brazil and it's your first time doing it, okay.
Felipe Moura: Yeah, it's the first time we are organizing the conference, this conference, because we had no JavaScript conferences here yet. So we set a group and then started working on this conference from the last year and now it's going to happen, it's really nice to see it happening.
Manuel Lemos: Yeah, I can imagine your excitement regarding this event, not just because it's probably the first event that you are organizing but it's also the first event dedicated mainly to JavaScript that takes place in Brazil as far as I can remember.
I have actually mentioned about this in a previous podcast that as far as I know there were no JavaScript events, but it was really about time because Brazil has a very large number of Web developers in general and it was really an event that is missing.
But, Felipe, tell us a bit about this event, where it is going to take place and when, who is going to come?
Felipe Moura: Yes, this is going to happen in Fortaleza, Ceará, here in Brazil on the 13th and 14th of April May. It's the Friday the 13th so here in Brazil it's almost like a witch's day, but it's going to be quite an interesting day.
We have a grid full of great people, great speakers who came from all around the world and they are going to talk about many different subjects involving JavaScript and web technologies such as Node.js or some other places where you can use JavaScript just like plasmoids and some operational systems, and we have some great people here from Brazil also speaking at the conference. We expect like 500 people who will be attending the conference.
Manuel Lemos: Yeah, that's great. Well, it is actually interesting because as far as I know from Brazil, if it was in São Paulo which is a large state city with over 12 million in evidence that would be normal, but Fortaleza which is probably better known for beaches and its weather and attracting a lot of tourists.
Felipe Moura: I've never been there actually.
Manuel Lemos: Yes, it's a bit far from the usual place where most events take place, so if you are expecting 500 people to attend it's quite a lot. But tell me, is the event already full or is it closed for submission of talks or is there still time for anybody that wants to submit talks or is it too late?
Felipe Moura: Well, first we chose Fortaleza because we had some sponsors there and they had the interest of making the conference happen there. And we have plans to organize this conference in different places each year.
So yeah, São Paulo is of course the downtown of the conferences here in Brazil, but this time we chose that because most of the people who are going there they are going with their wives, for example, so they have like a day off to go to Fortaleza which is something interesting and they also can enjoy a good conference.
And yes we have a full house, almost full house, the call for papers is already done, it has finished, and we have a full range, we have a few speakers who haven't confirmed yet, and this conference we have already almost 500 subscriptions, and our limit is 500 and a half, so I believe we'll have at least 500 people attending the conference.
Manuel Lemos: Yeah, if they already paid I'm sure they will come.
Michael Kimsal: I see in terms of presenters you mentioned people from all around, certainly there are some names I'm presuming maybe local to Brazil, but I see Richard Worth from jQuery and Mike Taylor both speaking.
And I've met both of them before, I know I met Richard at the JS Conf a couple years ago, and I think that's the same Mike Taylor that came and spoke in Durham, North Carolina at a JavaScript conference early in 2010, I think it's the same guy. If it's the same guy the picture looks the same, and I can't imagine there's that many Mike Taylor's doing HTML 5 stuff, he was good, he had a lot of good stuff, and I imagine everybody here does too, it's just I don't know most of these names but I do know some.
And the fact that you're getting these people to come in from all around I think speaks really highly of what you've been able to put together, I'm really impressed.
Felipe Moura: Yes, we are very happy about that, and mainly because of the companies who are getting involved. For example, Mozilla is also one of our sponsorships and they promised they would send some great person to speak at the conference, I don't know yet who is the person, who is going to be the speaker from Mozilla, but I believe he is going to be someone.
Yes, we could bring a lot of interesting people to talk during the conference, and Brazilian ones are also some recognized people here. For example, we have Maujor, Maujor has a lot of good books and has many...
We have also the Call for Papers which people could vote and those who are attending the conference are those who could vote on who would be these speakers during the lightening talks. So I think this makes the conference even more interesting for those who wanted to buy the subscription.
Michael Kimsal: Sure.
Manuel Lemos: Right. It looks like you'll be having a great event. Personally I wanted to attend but I'm not sure if I'm going to be able to make it because I'm always too busy, but if I can still make time to go there because it's not exactly near where I live in Brazil, and usually when you go to these events you spend a lot of time traveling. But if I can make it we'll see if I can at least attend.
Felipe Moura: That would be great to find you there. Where are you in São Paulo?
Manuel Lemos: Well, I'm in São Paulo state interior, if it was São Paulo it would be easier, but obviously there are not direct flights to Fortaleza from where I live, but we'll see. I hope I can make it and if I can make it I'll tell you in advance because it really looks like it will be a great event, and congratulations for this great start that did not yet happen but it looks promising.
Felipe Moura: Oh, thank you. Yes, I hope so.
JavaScript Professionals Directory and JavaScript Jobs board (11:55)
Manuel Lemos: And, well, moving on with our podcast, now I'm going to talk a bit about an initiative that just launched this month in the JS Classes site.
It is basically a directory of JavaScript Professionals that are available for being hired. So if you are a person that is looking for a JavaScript related jobs you can just go there on jsclasses.org/professionals/, and you can sign up and telling what are your skills, your experience in different technologies related with JavaScript, not just JavaScript itself, also with JavaScript frameworks and other programming languages and databases, version control systems that you have experience with because those are the kinds of requirements in JavaScript related job posts demand.
So if you go there and tell which are your JavaScript related skills, the site will make you part of a list of people that will be notified when there is a new JavaScript job being posted in the site.
And this is to say that the jobs board section that was also launched with this initiative is open to get JavaScript related jobs. And as I mentioned once a company posts a job there everybody that signed up in the JavaScript professionals directory that has matching skills can be notified and apply to the job.
This initiative is advertising supported, so anybody can sign up in the JavaScript Professionals Directory for free. And also the job posting is for free, at least for now because the site is just starting and I really wanted to get this initiative well adopted, embraced by the JavaScript community and the companies that are looking for JavaScript professionals.
Possibly in the future when this section of the site grows, job posting will be paid, but I think that will take a while because companies will only pay when you get access to a large number of professionals. So for now it will be free at least until there is a large number of JavaScript professionals signed up in this directory.
So if you are looking for jobs just go there and sign up to this JavaScript Professionals Directory and/or if your company is looking for JavaScript Professionals just submit a job posting there.
I don't know if you guys have taken a look at this JavaScript Professionals Directory and jobs board section.
Michael Kimsal: I have.
Manuel Lemos: What do you think?
Michael Kimsal: I have, I signed up already. I've registered, I'm listed. If you look at the map and you see an arrow over North Carolina that's me, yes, yes.
What do I think? It was kind of like the PHP one that you've done for PHP classes. I noticed obviously a lot of similarity there, but you did have a lot of as you were saying a lot of checks to say how much experience do you have in QooxDoo framework and YUI framework and so on.
I don't think you can make any major changes right now to this because it would probably entail overhauling a lot of stuff, because I think the way your site phrases it is you've had experience with a particular technology and you put in when you first used it, and in some cases I put January 1996 for PHP, and I have regularly used PHP for nigh on 15 years. With some other things I first used YUI back in June 2006, but that doesn't necessarily translate to me having four years or five years experience with YUI, I've probably got six to nine months combined experience using it because I'll use it for a few weeks on this project, a few weeks on this, learn something new.
So that would be part of my one piece of feedback there because I know where you're going with that and there are some interesting metrics that can come from that, but just because I have June 2006 for YUI doesn't mean that I'm as experienced as somebody that may only have two years experience in YUI but they've used it all the time.
And actually there's one other... I'm just thinking about job sites here, there's another aspect of, and this is a JavaScript thing but it's also just job postings in general, for people who are posting a job thing it would be nice to have a way for them to indicate not just hey we need somebody with this much experience in YUI, Dojo, JQuery and so on, but for them to give some indication of how much, if it's a full time position and if they were to say we estimate 70% of your time is going to be doing JavaScript work or front-end work and 30% is backend.
Bbecause I've talked to people who say oh we need a JavaScript expert, no we're looking for somebody with five years JQuery experience or five years YUI, and then you actually talk more about it and 90% of the job is actually going to be doing PHP or Ruby and only 10% of the job is going to be something up there.
I'm not trying to criticize what you're doing, it's just because this is not just an issue with the job system that you have, to me it's inherent in most job posting systems, there's not enough clarity in the posting process for somebody looking at it to understand how much of the technology is going to be used on a daily or weekly or monthly basis.
But anyway that's just kind of my initial reaction to it, but I also like the... I think the approach, the audience that you have I guess I should say is inherently more global and far less U.S.-centric. There are a lot of job boards out there that cater to different countries, there's a lot of stuff out there that tends to focus on the U.S., there's a lot of tech companies here.
But by creating something and building on the essentially global audience that you have, I think you have the potential to have a really good resource for the other, the 95% of the people that don't live in the U.S.
Manuel Lemos: Well, actually...
Michael Kimsal: One of the first postings I saw in there was from a company in New York, Yext I think.
Manuel Lemos: Right. Well, let me address your comments because they are quite relevant.
Well, this user interface that I implemented to list professionals in this case of JavaScript, but as you already mentioned this is basically the same system that it is in the PHP Classes site because the code bases are the same.
I just made minor configuration changes to adapt to the different worlds, in this case it's JavaScript, in the PHP Classes site is the PHP world even though they are quite attached somehow.
And this user interface that I implemented, the goal is to reduce the effort that first a professional has to tell the world that these and other skills. So when the employers come to the site and want to search for professionals they just can click on a few check boxes, eventually mentioning how long of experience they expect from a certain developer, and the site returns a list of those that match those requirements.
In your case you said that you may have less experience than the times that passed that you started working with a certain technology. That is okay because at least you will not be excluded from applying to a certain job.
It would be bad if the system did not recognize the whole experience that you have, but since in this case the system is assuming that you have more experience than you actually have that is not bad.
It will still be useful for companies wanting to hire you because they will exclude all others who do not have at least that experience, that time of experience that you've expressed there.
And they may want to ask a professional that has three years of experience in JQuery, and if you say you started working three years ago you qualify, then you practically have three years, that is okay because at a later stage the company figures that you have not enough experience then they can turn you down, but at least you have the chance to apply to the job.
And the whole system that I implemented, as I mentioned, is to narrow down the search, not to give you the exact number of professionals that qualify to a certain job. I think this is useful for companies looking for professionals because if the site helps them narrow down their search at least they will not get an exceeding number of resumes from people that do not have the qualifications.
And you know how the resume review goes, it has to be done manually, somebody has the human resources department, of the companies that have one, has to browse the resumes to do that search to see if you have the requirements, and at least the site tries to be useful by narrowing down that search, so they get less resumes, but they get resumes that have more chances of matching the requirements.
Other than that, other requirements that are not there, at least in those check boxes that let you specify... that is not a problem because there is the whole job description that lets the company willing to hire people to tell exactly what are the other non-common requirements that are necessary.
Michael Kimsal: Sure. There's a balance to be struck, I guess where I see that kind of for the posters, for the job posters, giving them the free form area to put stuff in to describe stuff, it's easier for them to be able to develop their standard couple of paragraphs describing the job and put it in multiple postings, put it in multiple job boards.
The downside is that it makes it easier for them to duplicate that content in multiple places, and eventually if I Google or if I use Indeed or something and if I search I may find a listing... I may find the same text from the same company in two or three places and it doesn't necessarily tell me anything more.
Again, I go back to my example of I talked to a company a couple of years ago, and they wanted somebody with... you need four years of JQuery, they were looking for a JQuery expert, but when it came down to it JavaScript was really only going to be about 10% of the job.
And they didn't really need... but to some extent regardless of whether you have check boxes or sliders or multiple boxes, companies that don't really understand how to phrase their needs or really understand what they're looking for are going to be problems no matter what.
So, again, I was not really trying to say this is a problem with the system you put together, I think it's good, I think it can be a great resource for people. It's a larger problem I see in matchmaking, in companies that are trying to find people to do work and people that have skills that are looking for stuff to do.
This is a perpetual problem and I've been seeing this play out in IT for 15 years, close to 20 years, and I still don't think anybody's really doing a good job of this.
Manuel Lemos: Well, let me complement that, saying that if a company does not want to tick the requirement check box that is not mandatory, that is just to help figuring what are the main requirements.
And since the job posts are moderated I will review the text, because I'm going to be the moderator, I will review the job description and will figure what are requirements that are there that are not checked in the skills tab.
And so if a company is just used to copy and paste job postings in different boards they can just do that and I'll put those requirements manually when I moderate the job. So at least it's not a requirement.
And the same goes to professionals that want to apply to a certain job but the job has certain mandatory requirements that for some reason they forgot or they did not have their profile updated.
The site gives them the chance to update their professional profile telling those skills that are required but for some reason they did not check. And this way they can apply and still become a candidate.
Obviously somebody can go there and say I have this skill and in the end they do not really have the skill, but it would be a waste of time for them and for the company that is taking the job if they lie.
So I always recommend that you just be honest and put the requirements that they really have because it won't help to lie and tell skills that you don't have because there really will be a second phase when the actual company that is offering the job will do their validation.
Michael Kimsal: Well, for companies posting jobs I wasn't suggesting that they're lying so much, it's that they don't really know how to present, they don't know what words to use, they don't know what skills to look for, but that really is we're getting in to a whole other problem area, and the traditional answer for that is well use a recruiting company, use a headhunter company, and frankly the majority of those that I've seen they don't know how to speak the language either, they don't really know how to translate very well.
Manuel Lemos: This all makes confusions.
Michael Kimsal: Some of them do. I've worked with a whole lot of recruiters over the years, and I've run into a few, probably 10% that I think had a good feel for technology and they understood how to translate the needs of the company into technical terms, but again, that's probably a whole other podcast we could do at some point. Felipe, are you still with us?
Felipe Moura: Yes, I'm here.
Manuel Lemos: He probably got mute because we sort of took over the conversation. Before I pass the word to Felipe let me just complement just about what I was going to say that it is very common, as you probably noticed, that some, I think it's recruiter companies that do not have a great knowledge about the area and they often put they require Java professionals when they actually meant JavaScript professionals. I don't know if you ever...
Michael Kimsal: That still happens.
Manuel Lemos: A lot. Okay, Felipe, you were saying?
Felipe Moura: I have seen these cases too. And I think this is quite an interesting new feature you have here because I have seen many different opportunities here in Brazil especially to work with JavaScript because mainly when you find some openings to work with this technology usually you would work with PHP, for example, and also with JavaScript, as Michael Said, you would work with JavaScript only 10% of the time.
This is what we see here a lot, but nowadays I have seen many different companies who are looking for people to work exclusively with JavaScript, and I think this is a great difference with what's happening now, and I see a great future for this language.
And I believe with time more and more companies will start looking for people to work specifically with JavaScript, especially because the bigger companies can see that when they have a professional who works explicitly with JavaScript and another with HTML, another with maybe CSS, you can have a better production, you have better use of the time and of the features the company can use, so I think this is a good path that companies are following.
And here in Brazil I'm seeing of course, and I believe this is the way things are going to work especially with these new features, the new version of HTML is going to offer. So I think many people and many companies can see this now, this is very in front of their faces.
And I think this is a great way to start that is with a web site where you can fulfill your data in there, of course the website is going to grow with the community, as people start subscribing to the website, the website is going to adapt to the number of people and how the companies want to see these people, especially because the way companies look for PHP programmers is different than the way companies look for JavaScript professionals.
Sometimes they want people who want to deal with different browsers that in PHP it's not the real point, and they may need to look for a different way of treatment of performance of their web site.
So I think the point of view the companies have is very different, and I believe the website is going to grow with the requirements of the community itself and the companies itself, but this is a very interesting investment you had here.
Manuel Lemos: Well, let me just add one thing, now that you mentioned Brazil, also as Michael mentioned, this site has a global audience, and since the U.S. market is big but is small in comparison with the rest of the world, probably not more than 20%, we will see lots of, hopefully, job offers from companies of many different countries.
Actually let me also comment that the actual job postings do not need to have to be in English. I'm going to moderate it, usually I use a translator tool to figure if the job is really about JavaScript which is the most important requirement, and also try to extract any required skills that were not checked.
Sso people in Brazil or other countries, other non-English speaking countries, can also post their jobs and in their own local language, I think this will be a good opportunity...
Michael Kimsal: The Canadian, for example.
Manuel Lemos: The Canadian idiom, right?
Michael Kimsal: Yes, Canadian or maybe British or Liverpudlian, that's completely different than the majority, that is completely different than regular English, it's just a noise really. (Singing) I was singing there, I told you I would sing at an inopportune time, are you cutting me off?
Manuel Lemos: It's taking you too long to get back to your humorous participation.
Michael Kimsal: That was not humorous, that was beautiful, that was heartfelt singing there, tugging at the heart strings.
Manuel Lemos: If you can listen the audience is clapping (clapping sounds). More please, please.
Michael Kimsal: I have been paid, my first gig I was in a band several years ago, my first paid gig I was paid to stop playing, yes, because we were playing at a high school graduation party and the base player who had brought us in he said oh yeah we're going to go play this party, he didn't tell us that we weren't invited to play, so we just showed up at this party and set up all our stuff and started playing and after about 12 songs somebody came and gave us money to stop playing.
We were done with our set, we had no more stuff but done, so like okay thank you very much, but in their mind they'd paid us to stop playing, had they waited two more minutes we would've packed up anyway, but we got twenty bucks out of it so we got some pizza. True story, I didn't make that up, I wouldn't have made that up.
Felipe Moura: When I saw your picture I thought you were the singer of the band The Offspring.
Michael Kimsal: I've never got that, no. What is The Offspring, what is that, was that the Hey come out and play', did they do that one? (Singing) was that them?
Felipe Moura: Yeah, yeah.
Michael Kimsal: I am still hip, I can still reference 20 year old hard rock songs, man I am so with it.
Manuel Lemos: Unfortunately Felipe has to go so we need to... we have to run to get back. No, I was kidding.
Anyway, back to our actual podcast, well, we just talked a bit about this JavaScript Professionals Directory and the JavaScript Jobs Board. So I would like to encourage everybody to spread the news about this initiative because the more people come to the site to actually submit their professional profile and the more companies will be interested to post their jobs, and the more jobs are posted, more professionals will be attracted.
And other than that I opened future, I will sort of give a certain privilege to developers that actually submit interesting JavaScript objects to the site that are well appreciated by the community. So they probably will get some advantages like probably being able to apply to a certain job sooner than others that were not so recognized, but we'll see.
So for now just submit your professional profile, post your JavaScript jobs, and if you have an interesting JavaScript object to post also do that.
Latest most interesting JavaScript objects in JSClasses (39:15)
Manuel Lemos: So moving on with our podcast now back to our regular section on which we comment about the latest JavaScript objects that were submitted to the site. What did you guys find interesting in the latest JavaScript objects?
Michael Kimsal: Personally, this is Michael here, hello, coming at you live from Raleigh, North Carolina, yes, well live or recorded or whatever, Rubens Takiguti Ribeiro. Rubens I apologize well in advance of you even listening to this.
But he put together a class that allows you to dump variables to the screen like similar to PHP's var_dump. I'm a little bit more a print_r guy myself when I do PHP, but var_dump is a way of getting a nice tree structure of values whether it's an array or single variable or an object or whatever.
And the closest thing that I've ever had to that in JavaScript has been Firebug, I've been able to look at something in Firebug and it's useful in some cases but hey I'm not always in a browser that has Firebug.
I don't like learning all the different inspection tools on different platforms, and occasionally I'm having somebody look at something, I'm looking at something on a client's browser, I'll go over to somebody's machine, I can't easily just sit there and install stuff on their machine all the time, so from a debugging standpoint I think something like this has a lot of value, a lot of immediate value for people that are in the situations that I just described.
Manuel Lemos: Right. Well, Rubens is also from Brazil.
Michael Kimsal: Oh, gosh, I should have chosen somebody who wasn't from Brazil.
Manuel Lemos: No, that's not a problem. Although, well, in spite he looks Japanese.
Michael Kimsal: Well, with the name Takiguti does certainly sound Asian of some sort, but then Ribeiro doesn't, so but he says country of Brazil.
Manuel Lemos: Yeah, he's actually from Brazil and he's also...
Michael Kimsal: Do you know him personally?
Manuel Lemos: I wouldn't say personally, but he's also a contributor of PHP Classes site and also already won some nominations for the Innovation Award on the PHP Classes site, so I'm well aware that he's from Brazil.
In Brazil there is a large Japanese community, especially in São Paulo state, and that's why he has Japanese half Brazilian half Portuguese name.
Michael Kimsal: (Speaking Japanese) that's for all you Japanese in Brazil.
Manuel Lemos: How many languages do you know?
Michael Kimsal: I know a little bit of many languages, Perl, Python, PHP, C#, Chinese.
Manuel Lemos: But back to the main topic of this podcast now, the latest objects published in the site.
Michael Kimsal: Definitely the Var_dump one looks useful.
Manuel Lemos: Yeah. Felipe, did you have any other that you would like to comment on that were brought to your attention?
Felipe Moura: Yes, I thought interesting the Persian Calendar I saw there. I think I can't spell the name of the author, but it's something like Keyhan Sedaghat, I don't know, maybe something like that.
But he made an interesting job here because I can see they are creating things for their needs, the things they need during their daily routine, and I think this is what this script is made for. I think this is quite interesting to see this happening everywhere in the world.
Manuel Lemos: Actually as a side comment this object in particular is adapted from another one previously published by another author, but it was not meant for Persian dates. I suppose it's accurate to say Persian dates because for me these nuances of Iran I think. It was sort of an emhanced version of another calendar which was meant for the Gregorian calendar that most of us use. So that is an interesting example of...
Felipe Moura: I think this is beautiful.
Manuel Lemos: Right. And for me this one I liked two object packages that actually do serve the same purpose which is to implement the snake game. You know the game that there is a snake that grows every time they hit some element in the board. So you need to guide the snake in the board to eat those pieces.
And the two objects that I would like to mention are going to do the same thing but one uses Canvas as an approach, and the other uses an SVG container to present to the same board and the snake.
And this is actually interesting because two authors remembered to implement the same thing using two technologies that are available from JavaScript. One the Canvas and the other SVG using the Raphaël library, and this is quite interesting because it shows that the world of development tools and libraries at the hands of JavaScript developers can offer different solutions for the same problem, and it is up to the developers to choose them.
Felipe, you also have been willing to submit an object that you also developed, can you tell us also about it?
Felipe Moura: Yes, yes, I want to submit a project of mine, I have used it in games of programming, right. It's Unit Test Library for JavaScript. I know they have the QUnit, but I think the QUnit is a bit heavy and it depends off of other different libraries and it works in a different way.
Sso I developed this one which is much more simple, but it's quite interesting to use. I think I have used it at some times, it offers you the chance of executing unit tests but in a different manner.
You can load all the unit tests but execute them when you want, not during the load of the page, and the way you interact with them is different, the way you define the test is also a bit easier, I think I created that to be easier to define your tests, and I believe it's going to be submitted to JS Classes for that.
Manuel Lemos: Well, we are recording this a bit sooner than it will published by then, by the end of the month. So by the time that listeners are listening to this they will probably already have submitted it, but I have not seen your library yet, so can you tell us more about it?
So it does unit testing, so how does that work, is it something that is meant to work from a browser or maybe a command line via for instance Node.js command or something like that?
Felipe Moura: Yes, this is for client side, it doesn't work with Node JavaScript, but you can load all your unit tests, all your asserts and not execute them, then you can simply call the jfunit.run() from your browser, for example Firebug, when you run that then your tests execute so you can have test to interact with the interface of your website, for example, simulating you are clicking on a menu for example but you can do that only when you execute the common run of the library.
So you can call the unit test through your console, but instead of simply executing your unit test during the onload of the page.
Manuel Lemos: Oh, I see, well I'm looking forward to seeing that in the JSClasses site and if you have any other interesting objects to post it would be great if you could submit it because there is already a large audience.
The site was started last year and it is already over 5,000 registered users. And once you publish a new object at least a great part of them will be notified by email to get to see your object so it will get you a great audience.
And I would like to extend this invitation to other JavaScript developers besides yourself. And I'm looking forward to get more mature, I'll say more complex objects in the site soon.
Upcoming articles in JSMag magazine (50:38)
Manuel Lemos: Well, now moving on with our podcast now towards the end of it, we have one more regular section on which Michael will talk to us about upcoming issues of the JsMag magazine, Michael, what's new?
Michael Kimsal: Yes, well, you seem to be very, what's the word I was looking for, reticent, hesitant one might say, to mention the actual day. You were saying before Felipe, well we're recording today but people will listen in the future. Today is April 20th, happens to be my birthday so I just had to get that out there.
Manuel Lemos: I was going to bring that back in the end...
Michael Kimsal: I'm going to bring it up now because...
Manuel Lemos: We already agreed to...
Michael Kimsal: I didn't agree to anything. It's my birthday, I set the rules, look, look, I need to call out a few things because I share my birthday with a few other famous people, Joey Lawrence, I don't know if anybody remembers Joey Lawrence from Blossom and now whatever, yes.
For many years I thought I shared my birthday with Bill Cosby, that was a lie. Carmen Electra, another luminary in the U.S. pop culture seen, Luther Vandross, who I don't share his death day with though, he apparently died a few years ago.
I'm trying to see if there's any perhaps Brazilian characters in here with whom I share, oh goodness!
Manuel Lemos: You are more famous than all of them, right?
Michael Kimsal: Well, put together, yes. Mauricio Guglemin does that name mean anything to you? Brazilian racing driver. Ahh, Adriano Moraes, rodeo performer, Brazilian rodeo?
Manuel Lemos: I'm not a big fan of rodeo, but okay.
Michael Kimsal: Joaquim de Sousa Andrade, Brazilian poet who designed the flag of the state of Maranhão. Yes, he was born in, well, the state was born in 1833, Joaquim was born in 1902 on April 20th, so a lot of famous Brazilians share my birthday along with Joey Lawrence, Carmen Electra, and I have to say Adolph Hitler as well too, it's always been a blast sharing a birthday with Hitler.
Manuel Lemos: Oh, man, that was tough luck.
Michael Kimsal: Yes, for him, not for me.
Manuel Lemos: He died, right?
Michael Kimsal: Yes, he did die. There was talk that he actually immigrated to Brazil I think, wasn't he supposed to be living in Brazil for a time?
Manuel Lemos: No, it was not Hitler, it was one of his closest collaborators but I forgot his name.
Michael Kimsal: Oh, one of those guys, the second and third and fourth in command. All that was really just a short way of me buying a few moments in time so I could bring up my list of some of the upcoming pieces we have in the new JsMag which should be hitting the digital news stands, which really just means jsmag.com, in early May.
We've got Mike Schwartz who actually had done a series on server side JavaScript for us, over several issues he had built up a community system on Helma, server side JavaScript scripting framework, he's revisiting the community platform and going to be revisiting that using Ringo.js, another server side kind of comparing and contrasting the differences between Helma versus Ringo.
Dino Gambone, listener to this podcast, hello Dino, again, contacted me a couple months ago because he'd listened to me talk about JsMag and saying I was looking for authors, and he said hey I listen to you and Manuel.
He does a lot of game development writing, has done a lot of game development, and so he started a series on doing games, game development using Node.js, his first installment was last month and we're working on the second installment for May.
I mentioned earlier to you guys, not during the podcast, Vincent Goff is going to be contributing a piece on using JavaScript in iPhone and Android applications, and we've also got Stephan Garrig, I hope I'm saying his name correctly, he's going to be doing a piece on Ext-JS templating using Ext-JS, Ext template and Ext template modules, so that's at least what's known.
We've got a couple other things that might be coming in as well and which may make the issue, and David Calhoun who I think still works at Yahoo, I know he was working there for a time.
He just put on a one or two-day event, JavaScript event in the Bay Area. I think it was held at Yahoo, it was like a JavaScript focused event, and the name is escaping right now but he was tied up with that, all his free time was tied up with that for a while, but he does our weekly news roundup at the JsMag.com blog, and he also contributes a monthly roundup for the magazine as well, so that was probably too long from what you wanted, but in the past I haven't given much information.
Manuel Lemos: Well, actually I had a question this time because I became recently more interested in the mobile world, not from the server side point but from the application point.
Do you happen to have past issues or plan to have future issues on Appcelerator because it is JavaScript based?
Michael Kimsal: Yeah, Appcelerator and PhoneGap both are interesting platforms. I had a brief discussion with a couple of I think the guys at the company behind PhoneGap, and we were going to do a series that for a bunch of timing reasons never got off the ground, and we may have something on Appcelerator Titanium coming up maybe in the summer.
They've been moving pretty fast as with all this technology, it's kind of the bane of publishing is that by the time you have something out it may be out of date, though with the monthly cycle that we keep on we try not to be too out of date with stuff, I wouldn't put out something on JQuery 1.2 anymore, even if somebody was a real expert in it because we're in 1.5 now, but we may have something in the next couple of months.
I've talked to a couple people who are very, very fluent in Titanium using the Appcelerator platform and doing mobile apps with it, but they're so fluent in it they don't have time to actually write-up all they've learned.
But it's interesting, I used it on a project last year and I ran into a couple of bugs. They weren't really bugs with Appcelerator, it was a bug, it was sort of bug with IOS in general in terms of when you use the standard image manipulation it wasn't automatically freeing some memory, so if I try to do a slideshow with 300 images it would crash, and so a friend of mine had to rewrite some of that, so we had to not use Titanium for that.
My understanding is that that's fixed now, but this promise of write once and compile the multiple platforms I think probably is never going to be 100% for all situations. That said, some of the guys I know in my area here, one guy in particular started a company called Appubator last year, and it's essentially an incubator for mobile apps, and they don't do all their apps in Appcelerator but I know early on a lot of prototyping they were doing was done with Titanium because you could write once and say here's Android, here's IOS, and I believe they're targeting Blackberry now too, and that was just me raving about how neat these technologies are.
To answer your question we may have something in the next couple months.
Manuel Lemos: That's really interesting. Recently I've become more interested, actually since the last Google Developer Day last year I have attended there. And it looks like nowadays the world of mobile applications is much more interesting than in the past thanks mainly to the progress of iPhone and iPad, IOS platform in general, and also the Android platform.
And since those worlds are quite disparate it would be interesting to use an approach that will minimize, at least minimize the effort to develop applications that would run on the different platforms.
So nowadays, although I almost never have time to actually study those subjects, I'm trying to make some time to look forward to study about platforms like Appcelerator, so that's why I ask.
So next time when you have articles on those topics, please make sure you mention them so we can stay in tune, because for instance, for me I do not know much or anything at all about developing in those platforms in practice, I just know what they do in theory.
So I'm looking forward to learning more about them, I know they have great materials in their site but pragmatic articles would also be interesting.
Michael Kimsal: Yeah. When you follow the tutorials and Appcelerator in particular has some decent documentation, and if you're copying their examples or doing exactly what they do it's fine.
I tried to step out of the standard example code and I hit some memory issues, and it wasn't until a friend of mine who does a lot of low-level iPhone development stepped in and he ended up rewriting it all in Objective C and said here's the problem.
The interesting thing was his first pass in doing in Objective C hit the same problem, he had to write his own memory handlers and explicitly free some memory. I'm getting a little geeky here, but I look at that and say it wasn't explicitly just oh Appcelerator's no good at this, it was a bug for even people doing basic Objective C stuff. You really had to know a lot of under the hood stuff going on on the iPhone platform, but that said it is certainly interesting technology to look at.
Manuel Lemos: Right. I was told that even if you do most of the work with Appcelerator eventually you will still have to write some Java code to implement some specific aspects for Android and Objective C in the case IOS applications.
But if helps cutting a lot of cross platform development I think that it would be really great. Maybe in a future edition of the podcast we can have somebody from Appcelerator to talk to us a bit more about their platform.
Michael Kimsal: Sure. If I can think of somebody that I know either specifically from Appcelerator or maybe a local guru who is really, really good with it, I'll see if we can get them on.
Manuel Lemos: I'll probably try to contact people from there, it would be ideal.
Conclusion (1:02:58)
Manuel Lemos: Well, we have practically ended our podcast. I'd like to thank you, Felipe, for coming and talking to us about your BrazilJS event, I wish you the best of luck. I hope I can still make it, I cannot promise but let's see.
And I don't know if you want to leave any contacts besides the address of the site which will already be going to the show notes.
Felipe Moura: Well, okay, and this is very nice to join the podcast, thank you for the invitation again, and I hope we can see each other during the conference back in Fortaleza, but if you can't that's okay, don't you worry, I know it's hard to find the time enough, right?
Manuel Lemos: Well, if not this year maybe next year because I see a great future for that event.
Felipe Moura: Yes, of course we can. If not this year we can wait for you next year.
Manuel Lemos: Okay, thank you.
Felipe Moura: All those links you said you're publishing to the website, right?
Manuel Lemos: Right. And then I was asking if you want to mention any URL's of your blog or any Twitter that you have if you want to mention so anybody who wants to contact you to know where you can be found.
Felipe Moura: Yeah, both my Twitter and my website are @felipenmoura, but my website is FelipenMoura.org if you want to visit there. It's going to be up there to have your visit there, and my Twitter is also Felipenmoura, so it's easier to remember.
Manuel Lemos: Well, thank you again. I would also like to thank you, Michael, once again, it's always a great pleasure and fun to have Michael here with his great sense of humor.
Michael Kimsal: If I had a nickel for every time I heard that I'd be very rich, I tell you, I am so full of it, I can't tell if the sarcasm comes through or not, I am totally joking.
No, it was great to talk to both of you, thanks Manuel, it's always great to talk to you and see what you're doing in your half of the world, and Felipe it was excellent to meet you, I shot you an email, maybe we can talk a little bit after this, but I hope your conference goes extremely well.
I did a conference last year and it's incredibly hard work, so the fact that you've been able to pull together what you've done is nothing short of phenomenal, and I hope it goes as well as it looks.
Felipe Moura: Okay, thank you. It was very nice to meet you too. And of course let's keep some contact through email.
Michael Kimsal: Please. On that note, adios, that's Spanish though, how do you say adios in Portuguese?
Manuel Lemos: It almost sounds the same but it's Adeus. Anyway, as usual we always encourage people to contribute not just to the JSClasses site but also send article submissions to the JsMag Magazine. It's very easy to get in touch with Michael to do that, and keep in mind that Michael rewards contributors with wealthy sums.
Michael Kimsal: Yeah, I'm saying all this sayonara stuff and heck, you're promoting me, that's awesome. Yes, we pay money for articles, so if you have something awesome that you want to get off your chest, man, I just kicked some butt on some WebGL stuff, I did some great integration, web service integration with Dojo or unit testing or something, JFUnit for example, we do pay for content.
Manuel Lemos: I'm sure Felipe will submit one or more articles to the magazine and we can learn about his framework for unit testing.
Michael Kimsal: Would love it.
Felipe Moura: I was looking at the website here, it's quite interesting, really cool, and I was about to submit something already, now I am.
Michael Kimsal: Please do. You've got my email so let's keep in touch.
Felipe Moura: So Felipe soon will be rich. So I guess this is finally the end, we've been stalling a lot this time, but I guess this is it.
Michael Kimsal: One thing real quick, I'm going to throw this out here just to see who listens to the very end.
Anybody that would like to see pictures of my root canal that I had done about ten days ago please email me at mgkimsal at gmail.com and put the word dentist in the subject.
I just want to see if anybody listens this far and then actually is crazy enough to want to see pictures of my dental work. I have pictures and videos but I'm not going to give the address on the air here, you have to email me for it and I'll tell you how many people emailed me in the next podcast.
Manuel Lemos: Okay.
Michael Kimsal: I couldn't do it without laughing, but I'm serious, I have all the pictures.
Manuel Lemos: We believe you, we believe you.
Michael Kimsal: On that bombshell, adeus.
Felipe Moura: Bye, bye.
Manuel Lemos: Bye.
Michael Kimsal: Bye, bye everybody.