MJS 021 My JS Story Justin Meyers

00:00 2389
Download MP3

My JS Story Justin Meyers On this week’s episode of My JS Story, Charles Max Wood interviews Justin Meyers Co­founder and CEO of Bitovi, a Javascript consulting firm focused on simplifying Javascript development through the use and creation of open source tools as well general consulting, training, and web applications. He was on Episode 202 and talked about DoneJS and CanJS. Tune in to hear Justin’s full story! 7th Grade and a TI­82 _[3:02]_Justin’s discovery of conditional statements and methods on a classic TI­82 was his first taste of programming. With a little guidance, he soon learned to program games on the TI­82 and then later moved onto bigger and better mediums like C and QBasic. Grunt work is good for you. _[4:51]_While studying Computer Science, Justin finds out that professors often have grunt work, and although they may not pay well now, sometimes they can in time lead to loads of experience and maybe even a bigger job. After 4 years of working on websites and writing documentation, he gets his first real job at Accenture. Open Source and reducing waste. _[6:23]_Accenture, while giving him a great chance to make some impressive projects, provoked Justin to see the efficiency in sharing code. Justin and a college friend get together to work on a project to build a platform that...builds. Although their project was unsuccessful, the tools they started to create for the project had plenty of potential. The Last desperate gasp. AKA shaving his head. _[9:40]_Justin talks about the Ajaxian blog and conference. Ten years ago, the Ajaxian blog was one of the best online resources for Javascript news. Justin was running low on funds and struggling and as his “last desperate gasp” he heads to the Ajaxian conference with his head shaved. Leaving only “Javascript MVC” shaped out of his hair. This stunt gets him remembered by many of the important attendees and also scores him his big break with a consulting job with T­-Mobile. Two to Three weeks later, Justin had a stroke. Justin talks about how incredible the timing was. How Javascript MVC came to be. _[13:23]_Justin talks about starting with JSJunction and modeling after it. Their first steps were to add a model layer as well as Event Delegation. Javascript MVC reflects some of Ruby on Rails. Justin worked with Peter Svensson from Dojo, with a methodology that at the time seemed crazy. Justin reminisces when Steve Jobs “Killed” Flash with HTML5 and CSS. Bitovi begins. _[17:24]_Justin talks about how the T­-Mobile job meant that he would need an official business. Originally dubbing it JupiterIT. Justin found that MVC was too encompassing and that programmers enjoyed a sense of creativity. By pulling Javascript MVC’s tools apart and creating single frameworks from the tools, Justin then created tools like CanJS and DoneJS.

Who does the heavy lifting at Bitovi? _[20:48]_As the CEO of Bitovi, Justin has less time to program as before. Working with Open Source, development is a mix between contributors and full time employees. The majority being the employees. Justin talks about not having a sales force and focusing on their product to drive sales. Mainly, long term cost of ownership and the ability for the framework to last, working hard to make sure that clients that have committed to Javascript MVC years ago still have a relevant use for the framework. Exploring HTTP2 and Push. _[23:42]_With the emergence of HTTP2 and Push, Justin talks about working on and exploring different ways for streaming/server side rendering. Justin describes one of the experiments with building an empty skeletons, javascript assets, but also pushing instructions on how to mutate the page to the client. Before the javascript payload is fully loaded, the page starts to mutate. Allowing for optimal performance on slower connections, fantastic for mobile. Problems they are looking at for the future include things like different ways that CDNs can work with HTTP2 and Push. Justin has also worked with using Fetch to enable streaming by building tools around that. He suggests that HTTP2 and Push will maybe bring a renaissance in the developer world. Justin’s side Parsing Project. _[28:45]_Additional to his other work, Justin is working on a generic parsing project. Similar to BISON or JISON. Designed for simple parsing at faster speeds. He describes how to compiles to the code that parses your code. Working in runtime. A way other companies can learn from Bitovi. _[29:52]_We don’t know what the future is going to be for code, so packaging the framework into separate repos allows for better scheduling and a better way to manage long term. Updating a segment of a framework can sometimes break another segment if having it all happen together. Picks _[34:26]_ Justin: Dean Radcliff’s Antares Framework Charles: Boom BeachClash of ClansBlueTick.ioNimble

Keeping up with Justin’s work. Bitovi.com’s BlogJustin’s Twitter. Sponsors Cachefly.comNewbie Remote Conf 2017


Javascript Jabber MJS 21 Justin Meyers


[Music plays] CHARLES: Hey everybody and welcome to another MYJS story. This week we are talking to Justin Meyers. Justin was episode 202 of Javascript Jabber. We talked about DoneJS and CanJS, sound about right Justin? JUSTIN: That sounds exactly right! CHARLES: Alright! Do you want to give us just a brief introduction since we haven’t had you on for about a year? JUSTIN: Yeah so the way I would like to introduce myself is that I am probably the most successful person in Javascript with the least popular open source projects. And in some ways that is the backstory I would like to talk about. You asked for things I’d like to shout out about, I’d really like to talk about that. Recently some stat was talking about how ‘He’s worked so hard and done some amazing stuff’ and so little income to show for it. I feel like if there is one thing that I could maybe teach, people how to not be super successful in popularity but to be able to make a good living doing open source work. So my background is, I built JavascriptMVC about 9, 10 years ago. Kind of one of the early Javascript Frameworks. Since then I have just been working on that. It’s kind of spawned or broken up into a few different projects, CanJS, StealJS, and now DoneJS, which is kind of like the superproject. So I’ve been around. I was kind of involved with the JQuery community. Did things like added Event Delegation to it. Then sponsored a bunch of JS confs and things like that. We do Javascript consulting. Basically. I am the CEO of Bitovi and we do Javascript consulting. CHARLES: Awesome![music begins]

[This episode is sponsored by Newby Remote Conf. Newby Remote Conf is a two day completely virtual conference hosted by none other than Charles Max Wood. If traveling expenses are an issue, or you just can’t afford to be away from home for two days, well join us! It’s virtual! This conference is focused on people who are new to programming who want to learn what the pros know. Or just get a leg up on getting a job and getting into the programming community. We’ll have speakers from all over the programming community to help you stay current and a Slack room where you can connect to speakers and other attendees in real time. We will also have a live round table video chat for attendees and speakers plus we will provide the talk recordings to you within days of the conference.] CHARLES: So the listeners know the drill. I don’t know if you listen to any of these. Anyway, I have a number of questions I’m going to ask and we will just discuss those. I’ll probably ask more probing questions as we get into it. But let’s start out at the very beginning. How did you get into programming? JUSTIN: So I was given, I feel like I’ve seen other people give similar answers to this. I was given a TI­82 in maybe 7th grade. I remember getting it and it allowed you to pick your instructions, it was like a drop down menu somehow you could select and do like, an if and and then an else. And just random methods you could call. I just remember being very excited about that and just hitting buttons to get the thing to do something. I had no idea how to program at all. And then, I feel like I talked to a teacher or something and they gave me a book on how to program that. And I started making video game kinda things, with calculator games. And then eventually I got a C book and started making and QBasic I started doing and making games. I think a lot of people, especially in middle school and high school... That’s what I was doing and then I went to school for it. CHARLES : Yeah that makes sense! Mine was a TI­83. JUSTIN: So you must be a little older. I’m about to turn 35 so. CHARLES: Oh I’m old! Okay... Yeah I’m 37 so. Anyway. JUSTIN: Yeah I got it in like 7th grade so maybe that’s why? CHARLES: Yeah I got mine around the same age. Anyway. So that’s really interesting so. You get into that. And it’s really interesting too how many people I’ve talked to that for whatever reason were interested in building games and so. It’s kind of an interesting avenue in. So, how do you go from that to you know, building DoneJS and CanJS and doing all this JS work?

JUSTIN: It’s kind of an odd story. My path was I went to school for computer science, I worked in a parallel programming research lab all through college. By the way, anyone that is in college for Computer Science or whatever, one of the best decisions I ever made was... You can reach out to your professors and say “Hey do any of you have kind of internships or lab positions where you’re just doing grunt work, like you’re working on the labs website to begin with. I worked in a parallel programing research lab, that’s what they had me doing at first. Working on the website, writing up documentation for how to use their Parallel Programming framework if you will. It’s kind of like a Framework called Charmed++. I did that for 4 years and got a lot of experience and then by the end I was helping. I was still doing grunt work but it was better than making websites. We were doing protein folding simulation. I was working for a PHD in Chemistry, a PHD in Computer Science and I was basically just there to help make the application run as fast as possible. So I got a lot of experience with network performance, things like that. Which was great. Best decision I ever made was just getting involved with the lab, making next to nothing. School teaches you a decent amount but that was actual work. And then with that experience I got a job at Accenture, a consulting company... CHARLES : They are huge. JUSTIN: Yeah! ... with their research and development group, and I made this big touch screen, people may still see it at O’hare, there is one at JFK as well. Basically because I had skill with high performance networking and things like that. I used two cameras to triangulate where you were touching on the screen to simulate touch. And this was, again 10 years ago before anyone was doing touch. It was really an awesome project to be a part of. The person who I worked for Kelly Dempski, is like mad genius. Just literally wrote the book on high performance visualizations and things like that. I think that was the name of the book. I don’t remember it anymore. While I was at Accenture, I realized that Accenture would always brag that they wrote more code than like IBM or Microsoft and Apple combined or something like that. And it drove me crazy because they never did anything with that code. Like everybody kind of worked in their individual departments. There was no sharing of code. Open source wasn’t that much of a thing as it is now, I don’t know if since then they’ve adopted that kind of stuff, my guess would be no. But I always saw it as super inefficient the way that a lot of consulting companies were structured around the sale if you know what I mean. Instead of that engineering side. So, a buddy of mine from college who was interning at the time with the same group that I was working for, we started to build something like FileMaker Pro. We just wanted to build something that builds something. Because we wanted to reduce waste if you will. That all these apps were being built at Accenture, these applications. They are huge but we wanted to just build, you

know, be able to do Mom and Pop stuff real quick and turn that over. So we started building that. It totally was unsuccessful, but at the same time we built all this Javascript tooling. And this was 10 years ago when there was nothing. JQuery wasn’t out. Prototype was, I think that was is. That scriptaculous Dojo a little bit too. So we started building all of this tooling and then there was just this crazy fortunate series of events that all happened at the same time. It was like you know we weren’t making any money, I had around 120 dollars in my bank account, my now wife then girlfriend was paying for everything for me. Like going to friends weddings, she was paying for it. And then T­mobile called. It was like ‘Hey! We really like your stuff, we are building this big application with it.’ JavascriptMVC. We would love to you and Brian, my business partner, to be a part of it. I was at the Ajaxian conference. Like maybe the first one? CHARLES: I’ve never even heard of it... JUSTIN: Oh! Do you remember the Ajaxian blog? CHARLES: Nuhhuh... JUSTIN: Oh man, so I am really old in Javascript world. That 10 years ago, there was like one place to get credible, great, javascript information. Now it’s JSJabber because of course, it’s become that great thing, and the great work you’re doing. But back then, Dion Almaer, who to do, had Walmart’s labs and I think is with Google. Rey Bango who is Microsoft’s head of evangelists and there are a few other people who ran this blog called Ajaxian and it was amazing. that’s where all the best news, they probably had 1 or 2 articles a day. And they put on a conference like 10 years ago. They eventually got bought out, that is why it doesn’t exist anymore, some conference promotion thing bought them and they all left to go do other amazing things. But they had the Ajaxian conference I had actually shaved... and this is why a lot of the old folks that do Javascript remember me, like Alex Russell and stuff like that. Because I shaved away my hair leaving Javascript MBC in my head. That is the best decision I ever made because Alex Russell invited me to dinner 10 years ago at this, and I met Christian Heilmann and a bunch of other DOJO and YUI people, that is where I met Rey Bango. I met everybody that way. That conference, where I had no money, was my last desperate gasp to try and get attention for the framework so we could make a consulting around it. Shaving something into my head, that is when T­mobile called and was like “We want you to do consulting work on this big application” and I was just ecstatic. Just going crazy. We ended up doing that project for them but what was really crazy, is a month maybe it was only 2 or 3 weeks later I had a massive stroke. And the timing was such that if that would have happened, like two weeks earlier before I made the first contract, I would have had to quit everything. Go back to work for somebody else and then all of the stuff that’s happened since then would not have been able to. Thankfully I got insurance, only because my wife, now wife then girlfriend was like, you have to get insurance and this was

pre Obama care and everything like that. So she made me get insurance like 4 months before I had my stroke. So that was also really lucky. And it was just like this crazy time in my life where everything happened. And then it’ been boring since. But. It’s been kind of the same thing, just growing the business that kind of thing since that point but that’s where we kind of turned the corner right before I would have had a really turned things around in a different direction. CHARLES: That’s interesting. By the way Alex Russell is going to be the episode right before yours so. JUSTIN: Really? CHARLES: Yeah! JUSTIN: Awesome... CHARLES: But yeah, that is just interesting. So, first of all. Where did the idea for JavascriptMVC actually come from? Were you using some other MVC framework somewhere or...? JUSTIN: So we were using part of it. Called JSJunction. It was... I can’t remember the guy’s name now. It started with Max something. I can’t remember his name, I feel really bad now. He put out something, almost like SammyJS if anyone remembers that. Just kind of like routing to actions and controllers. Very Ruby on Rails ­esk. The URL matched something, calls the methods, not much else to it. So we kind of forked that and added a model layer, kind of like Ruby on Rails because I think everyone was using Ruby on Rails back then heavily inspired by it. So we added in something like a Model layer that it’s restful service layer, and I think the big thing we added that was so appealing to people was we added Event Delegation. Really really solid Event Delegation, so you didn’t have to bind on every click, you just click once on the document and you can have it match one of the CSS selectors, you can have your event handler called and don’t have to worry about binding, which helps with memory and to save things like that. We built all this stuff because we were building that FileMaker Pro and had like drag­drop and, so it had a lot of rich features, which it couldn’t have been built as a normal website with just, like the Ruby on rails way of partials, or whatever they called it. Where you send back, you get back HTML and stick it in, it had to be built as a single page web­app application. So I got into that heavy too with Peter’s Svensson, old Dojo Distributor. He started the Thin Server Architecture Working Group. Which I was a part of. This was like, we were rebels 10 years ago of saying “Just send back empty HTML and let the client build everything. People were like you’re crazy and you’re out of your mind, but now, I mean, almost everything, at least everything we build

works that way. In server side rendering of course you don’t have the performance issues but, I think we were onto something. Javascript was going to be a good bet. CHARLES: Just a few years early I guess? JUSTIN: Yeah! Yeah I remember when Steve Jobs killed Flash. I remember where I was. Like how people know where they were when Kennedy got shot or something. I knew I was in San Francisco at my MindJet’s offices and they were like “have you seen the news? That Flash will never be on the iPhone.” And I was like “...yep now there is only one. There is only Javascript. “ CHARLES: Yeah. Really interesting. It took a few years for Flash to go all the way through it’s death rows. Even Adobe who kind of championed flash, they had all the Flash tools and Flex and all that stuff, they moved pretty quickly into HTML5 and all of the other features through that. CSS animations and stuff like that. JUSTIN: In some ways you feel bad for Flash, because it was such a great platform. But it just lacked the openness that the web offered and there is no stopping that I think. In the long road, that’s just going to win out. CHARLES: Absolutely. So you start doing JavascriptMVC, you kind of come into your own. When does Bitovi come into this? JUSTIN: So right away. The second that T-­Mobile called us and said that “we want to work with you”... It was like “Gotta form a LLC. Gotta get an EIN number...” So we started as Jupiter back then. Because we weren’t creative and didn’t have any good names. I always hated the name but it was like, “You need a legal company, and we could get JupiterIET.com because I was still kind of coming from Accenture very corporate mindset so. We ran that for a few years and eventually we came up with the name Bitovi and we liked that much better and had that since maybe 5 or 6 years now. CHARLES: Right, so then you started building things like CanJS and DoneJS. I don’t know if I completely got straight the story on that. So it sounds like it was tied to Javascript MVC? JUSTIN: What happened was, Javascript MVC was out there, and Javascript MVC had a lot. Javascript MVC was out a little bit before Backbone and Javascript MVC had webpack in it basically. Had a

module loader, had a testing framework, something like Karma in it, a documentation engine and then it had all of the MVBM, or at that point MBC parts. It was dying because now everybody uses all of those things that back then, no. You weren’t going to, and even now people like to pick and choose their individual parts and creative framework. I think that is part of what developers respond to, is that form of creativity and deliberation around how they build things. So Javascript MBC was just this huge unwieldy thing so we broke it up into all the individual parts. So CanJS was the MBC parts of Javascript MBC but then it became MBVM. And that’s kind of it’s own little project it can be used with everything else. And then StealJS is the module loader. That came out of that and of course it can be used with anything else. And then Testy which is the Caramel like thing came out and used everything else. Basically we took every piece of and tried to make it so it could work with everything else. And then we were like that for a few years, and then we put DoneJS kind of back together. But we kept the ability for these things to work independently. But DoneJS is mostly secure glue pieces that glue it all together and make certain patterns easier when you’re using the whole gang. Like bulge perhaps. CHARLES: Is most of the development done by people at bitovi or has it kind of grown into it’s own open source community at this point? JUSTIN: I would say the heavy lifting is still done at Bitovi, but we have contributors that are not at Bitovi, like with full access rights and things like that. But because Bitovi has full time people and pays for full time people to work on it, the majority of the heavy lifting is definitely at Bitovi. CHARLES: So I’m curious then, because it sounds like you’re running the company. So how much time do you get to code these days? JUSTIN: Ha! Never enough but I’m really fortunate to have Brian, he handles a lot of the consulting side of things. I’m still involved there but I’m mostly focused on long term strategic development for Bitovi which heavily includes the open source part of things. The way that I look at what we do is, we don’t have a sales teams. Our marketing is our open source. We put everything into that and then hope that people will use these tools and then we can work with companies to help them deliver a product, but at the same time we are making our product better. WE are releasing open source, hopefully it attracts more people and then the cycle should just keep going. It means that we take a very different approach than other open source tools. Popularity is important to us basically. But we care a lot about long term costs of ownership. Right, if you picked Javascript MBC 8 years ago, we want people to still be able to be able to upgrade through to the latest greatest. And that requires a whole lot of work. It means we are a little bit behind, like a half step behind the coolest thing out there but we kind of don’t give up on adding those new ideas. In some ways that’s the good thing about open source. It’s very easy to steal other people’s ideas. Because their ideas are open. Just got to include the reference.

CHARLES : Yep that makes sense. So we’ve kind of gone into the next few questions. I did ask how you got into Javascript and we went there and then the next question is “what have you done in Javascript” and we have defiantly covered that. So I’m curious, what are you working on now? What is the direction of Bitovi and all of these different pieces of what kind of come together for a Javascript framework. JUSTIN: So the coolest effort we are working on right now. The most interesting is what does it look like or what does HTTP2 provide, how does it change best practices. We’ve got this crazy idea about how to do streaming server side rendering streaming that we are working on. I’ll do my best, this is the kind of thing you want to hear about to try and describe it. We are looking at the possibility of, when the user requests a page, we are going to push out the Javascript assets and we are going to basically push out a skeleton of the page, but we are going to kick out server side rendering, and then we are going to push instructions on how to mutate the page to the client. And the client, we’ve actually made this work, can when it loads, basically it does a really quick fetch for that string of instructions and then before the full Javascript table is loaded and executed, it can base the beginning a stream of DOM mutations and building the page up for the client. We’ve done some testing and it’s really really good for slow internet connections and slow browser's, so for mobile it should give about as optimal performance as I think you can get. I don’t know if what I said makes sense because it’s a really weird way of making things work but I think it should. My hope would be this is how, if you want high performance is what you want, this is the approach people are taking. And only because we have streaming APIs with Fetch and HTTP2 push that this sort of thing can be accomplished. CHARLES: I think it’s interesting the number of ways that HTTP2 can be taking advantage of and then you have things like progressive web apps which you’ve kind of nibbled around the edges a little bit. All of these different things are available for you to enhance the experience of using the web. JUSTIN: It really changes how best practices... One thing we have realized while we’re doing this is how doing CDNs fit in with HTTP2 Push. We haven’t really started exploring that yet, it’s a problem in the back of our mind because with HTTP2 Push, you’re still always going to the application server presumingly, and that means it can start sending out Javascript. But you don’t really want it to start sending out Javascript, you want it to send out Javascript from a CDN. So we haven’t really figured out how to make that work or to experiment with is it worth it always going to the application server, or do you always go to the CDN and that is really just a channel to your application server. I’m sure someone has already figured this stuff out but that is what we are experimenting with now. How does HTTP2 change things and Fetch. Another thing we are doing is we are making new lines eliminated JSON helpers. So Jake Archibald, I’m not sure if that’s how you pronounce his last name, but he works at Google. He has a great series of articles about how how Fetch enables streaming and ideas, and we have kind of taken those and started actual building tooling around that so that, things like as your database is returning one record after another you can like instead of waiting for all that come back, serializing it as JSON, and then sending it to the client. We can send each individual record, serialize it as one adjacent row and then send that to the client and then the client can like get that one stream of JSON and then add that one li or table row to the page so the user sees it all coming in instead of globs or big chunks.

CHARLES: That’s interesting. JUSTIN: It’s cool stuff. There is going to be this second renaissance or something of Javascript when these service works and fetch and things like that add all of this low level power and possibilities, it’s going to be this time where people can be really creative with solutions. We are going to see an explosion of ideas again it will be fun to see what comes out of it. CHARLES: Yeah definitely. So is there anything else you’re working on that’s not one of these things that we’ve already talked about. It’s interesting to find out that Oh! Somebody has this weird project for this interesting niche that they just fiddle around with. JUSTIN: So I’m working on a generic parser I guess? I’m trying to make a very fast parser, you can give it a nice expression tree and it will parse anything pretty easy. It’s not able to do a lot contextual parsing. For simple things it’s easy to express. It’s kind of like... what is it called? Bison? It’s another thing out there that does it. Or Jison? Which does it, it’s modeled after that but it complies to the code that parses your code. Which is really great if you know about your language ahead of time and you want to go through this step of compiling but we don’t really have that ability. Ours is all kind of runtime, like you find an expression and it generates the parser all in runtime. It doesn’t write out spec code that is the sparser. Other than that, one thing that I think we do, that we are doing that maybe other Javascript libraries and frameworks can learn from, and maybe people who are writing application code, is that we are doing the whole thing where everything is an independent GitHub repository and package thing. Where you know like Lodash and all that maintain kind of one repository and they do publish multiple packages, but what we are really trying to do is, we are really taking the whole longevity thing to heart. We are trying to make it so, we don’t know what the future is going to be, but we want to make it so that any code that you load isn’t going to... like you’re not going to have to rewrite that just because a new version of our framework comes out. So as long as you get the same package numbers, everything should be able to work. We basically split up CanJS into 60 different repos and each has it’s own sort of release schedule and versions. CanJS itself was designed to give people a guide like which of the ones all work really really well together. And the other thing we are doing is really watching out for globals. So we are making some templates for instance. They should always import their, if they have custom event handlers or something, they should import custom events. We are trying really hard to make it so that any code that you write, some other code because it loads a plugin or a Mixin or things like that, isn’t going to suddenly break what’s going on over here. Or it can load a whole different version. I think other things are going that way. I think that decorators have really made that approach a lot for feasible for framework authors. Because everything becomes a Mixin on top of your class definitions. So that’s a lot of what I’m thinking about. The unglamorous, the completely unsexy world of making it so that code has a very low cost of long term ownership.

CHARLES: Cool! JUSTIN: Yeah it’s very very exciting. CHARLES: Is there a place where people can go and read about this stuff that you’re working on or? JUSTIN: Yeah so Bitovi’s blog has some articles about, and I’m about to release another one, just about the longevity stuff. Like what we are trying to do to make it so that, whatever directions that CanJS and our stuff takes that your code should still work. Kind of 5 different things we are doing. That should be out in another week or so. But all of the other roadmap and what we’ve done, that’s out there. The streaming one, you’d have to go to DoneJS’s issues, and then there is this site for streaming, and then you’d see gifs and everything. There is this one issue, kind of a monster issue that breaks the whole thing down how it works. We actually did this at a hack night for University of Illinois. The initial kind of work towards it was all done by a bunch of students from U of I who we guided through it. There is a bunch of other, the guy who made ARGS was there. I can’t remember his name. Ben or something. Anyway, he was there. There was a few other notable Javascript folks at these hack nights. It’s a gorgeous place. CHARLES: Cool! Well let’s move over to the picks. Do you have some picks for us?[have you ever felt like you’re falling behind? Or that the programing world is moving so fast that it’s hard to keep up? THen there is the issue about where to go to make sure you’re up to date. The answer is to join a community dedicated to discussing the latest in Javascript. I mean, wouldn’t it be nice if you got Javascript Jabber all day? Well you can! Kind of. We’ve created a Slack community for Javascript Jabber. That means you can connect with our listeners and guests on a platform you’re most likely already using. Plus we’ve setup a keeping current channel that pulls stories from across the web to help you know what people are talking about. And coming soon, we’ll be holding multiple webinars and roundtable video chats to connect with experts in the community and with each other. So come join us at Jabbascriptjabber.com/slack]

JUSTIN: Yeah! I saw a talk last night. Dean Ratcliff is working on this Antaris framework. It’s basically a combination of MeteorJSX and RXJS. The interesting thing about it to me was that, Oh there was Redux too, but it had Redux on the server so all messages that the client, or most messages that the client was producing most events that was eventually being reduced. That was also happening on the server. And then he was somehow able to do a div to know what data must have been changed in the persistence layer. And it was kind of a crazy idea to have the server doing the same kind of reducer pattern but then try to sniff out and have those renderers, but having the renderers change the persistence layer. That was really interesting. It kind of removed the need for models on the client. It was cool stuff. I would be interested to see where he takes that. I feel like it’s just the beginning of an idea. I think that he will have to build a little bit more before I think it’s totally production ready. This was just a demo at Javascript Chicago. I think he has some interesting ideas that could come out of there. CHARLES: Very cool. I’m going to jump in here with a couple of picks. I have a couple of games I’ve been playing on my phone that I’ve really been enjoying. I’m always a little bit embarrassed to pick these but. You know whatever. SO the first one is Boom Beach. It’s by the same people who do Clash of Clans. Then the other one is actually Clash of Clans. So Boom Beach you kind of wind up taking over island and liberating them from bad guys and then Clash of Clans is you build a base and you attack other people’s bases. You join a clan and you have clan wars. It’s way fun I really enjoy it. I’m in a pretty good clan so I’m pretty happy with the group of folks I play with. For me it’s just a way to relax, kick back and enjoy it a little bit. JUSTIN: Do you need to warn people to how addictive it is? Clash of Clans. CHARLES: Yeah they are a little bit addictive. JUSTIN: I’ve had to turn it off at some point. I had a huge clan. I don’t know how much time I sunk into that game. It is really addictive. It’s very fun. CHARLES: Yes it’s a lot of fun but it is fairly addictive. So yeah, those are two picks and then another pick, and if people have been following you for awhile, I’ve been fighting the CRM battle to find a good CRM and I just haven’t been super happy with the one’s I’ve been able to find. I used High Rise, I mean it’s okay depending on your use case but for me it just wasn’t working. And then I went from High Rise to 17 Hats, which sucked. And then I went to Contactually which was much better but still didn’t do everything I needed, and now I’m kind of using, it’s sort of a hybrid of two tools. One of them is Bluetick.io, and I think I’ve mentioned them on the show before. But they are strictly speaking a email follow up system. And so you just set up email sequences and it automatically follows up with them. The other one is Nimble, and that’s at Nimble.com. It’s more of a fully fledged CRM system. I would say that it’s probably on par complicated as sales force except it has the Chrome Plugin and other things that I really really like and it’s not impossible to use like salesforce is. So if you’re out there looking for a CRM, yes it’s a paid service, but definitely worth checking out, Nimble.com. So I’ll throw all those out there. If people want to follow you on Twitter or see what you’re doing on Github or things like that we mentioned Bitovi blog, but are there other places for people to see what you’re up to?

JUSTIN: Yeah! JustinBMeyer on Twitter. That’s pretty much it. My Github is just too sporadic to actually follow me. Just all over the place. CHARLES: Alright well we will go ahead and wrap this one up! Thanks for coming and talking to us and sharing your story! JUSTIN: Thanks! It’s been a pleasure. CHARLES: We’ll be back next week with another Javascript Story. JUSTIN: Thank you. CHARLES: Thank you.[Bandwidth for this segment is provided by CacheFly. The world’s fastests CDN. Deliver your content fast with CacheFly. Visit CACHEFLY.COM to learn more.]

Sign up for the Newsletter

Join our newsletter and get updates in your inbox. We won’t spam you and we respect your privacy.