Skip to content

Instantly share code, notes, and snippets.

View justinbmeyer's full-sized avatar

Justin Meyer justinbmeyer

View GitHub Profile

tldr: Create a reoccurring online meetup for Bitovi's community.

The goal

  • Make Bitovi seem like the "cool" place it already is.
  • Meet other developers, get QSLs.

The problem

  • We have a lot of community outside just Chicago and LA

OS

  • Evangelist ... meetups, write, write, write (Brian)
  • Community Manager ... talk talk talk
  • Kevin & Matthew
  • Nils? Manuel?

Leadership

  • CEO - ME ... only doing people related things
@justinbmeyer
justinbmeyer / can-bind.js
Last active October 30, 2018 14:54
can-bind.js
"use strict";
var canReflect = require("can-reflect");
var canSymbol = require("can-symbol");
var namespace = require("can-namespace");
var queues = require("can-queues");
var canAssign = require("can-assign");
//!steal-remove-start
if(process.env.NODE_ENV !== 'production') {
var canLog = require("can-log/dev/dev");

Intro

CanJS 5.0 (https://www.bitovi.com/blog/canjs-5) is out and it makes building CRUD apps easier than should be possible. In this talk, we'll learn the basics of CanJS and show how to build an app that Creates, Reads, Updates, and Deletes (CRUD) data. The app will handle all the things folks normally forget too. Things like server errors, slow loading, and disabling buttons to prevent repeat form submissions. Getting in the CRUD will never feel so good.

CRUD is all around us

The CodePen we are building. It has:

  • The ability to Create, Read, Update, and Delete data.
  • Most of the important mechanics work.
var canViewParse = require("can-view-parser");
var someSortOfEach = /\{\{#\s*each\(/
var eachMatch = /\{\{#\s*each\(\s*([\w\.\(\)]+)\s*\)\s*\}\}/;
function processStache(source) {
canViewParse(source, {
start: function(){},
end: function(){},
close: function(){},

Hello potential Bitovian!

I'm writing this blog post to organize my thoughts on working at Bitovi. I'm going to attempt to:

  • Answer the most common questions I get during the recruiting process
  • Help you determine if Bitovi is the right fit for you

I am extremely biased. Bitovi is largely a result of my ideals about what a consulting company can be tempered a bit by cold hard reality of needing to generate a profit.

What is Bitovi about?

// var keyInfo = Scope.keyInfo(key),
// parent,
// propName;
//
// if(keyInfo.remainingKey === "this") {
// // this prevents reading of observables
// options.readCompute = false;
// parent = this.readKeyInfo(keyInfo, options).value;
// return { parent: parent, how: "setValue" };
// }
<p>In this guide, you will learn how to create a custom video player using the <code>&lt;video&gt;</code> element and <a href="http://canjs.com">CanJS</a>. The
custom video player will:</p>
<ul>
<li>Have custom play and pause buttons.</li>
<li>Show the current time and duration of the video.</li>
<li>Have a <code>&lt;input type="range"&gt;</code> slider that can adjust the position of the video.</li>
</ul>
<p>The final player looks like:</p>
<div class="cp_embed_wrapper"><iframe id="cp_embed_qyRqMx" src="//codepen.io/justinbmeyer/embed/qyRqMx?height=350&amp;theme-id=dark&amp;slug-hash=qyRqMx&amp;default-tab=js%2Cresult&amp;user=justinbmeyer&amp;embed-version=2&amp;pen-title=CanJS%205.0%20Video%20Player%20-%20Final" scrolling="no" frameborder="0" height="350" allowtransparency="true" allowfullscreen="true" allowpaymentrequest="true" name="CodePen Embed" title="CanJS 5.0 Video Player - Final" class="cp_embed_iframe " style="width: 100%; overflow: hidden;"></iframe></div>
<p>The following sections are broken dow