programming

There are 28 posts with this tag.

Serialport Spring Update

Serialport turns 9 this year. Back when it started NodeJS was a different environment than it is now. JavaScript was a different programming language than it is today. Since then I've pushed some major changes over the years to keep us modern. I made the (then) painful decision to drop old versions of node even though some devices would never see the updates to newer runtimes. Sticking to supporting only the LTS (Long Term Support) versions of No…

Kademlia: A study

This week I'm at the Recurse Center as part of the "Mini 2 Batch". I'll be spending my time researching and implementing the Kademlia Distributed Hash Table. DHT's are a building block of decentralized systems. They allow "efficient" storage and access of data that is both produced by many untrusted computers and stored by many untrusted computers. I use quotes around "efficient" because while it's absolutely more efficient than previous systems …

Async Generators

I started streaming-iterables a few months ago to learn how to use async-generators and it was hard. The concepts all sound very similar but there wasn't a great resource that spelled it all out, even MDN left me wanting more. In this post, I will layout the terminologies and show how they work, and then I'll follow up in another post with some examples using streaming-iterables to taking advantage of how of it helps manage workflows.

Before I ge…

We live in Memory

(This is part of a talk I gave at ManhattanJS of the same name which you can find at github.)

Oh happy day! I'm getting read! My day had come! So many times the Redis had passed me by. I never knew why I wasn't chosen. It would come to my region, look me up and down, check my ID and without a word, just move on. All I could do was sit in RAM and wonder why it hadn't taken me to see the readers.

This time is different, I could feel Redis pulling m…

Node Serialport v2.1.0

A few weeks ago I started maintaining node serialport after a long hiatus. We hadn't had a release in about a year and we had some outstanding bugs that I wanted to tackle. I had also introduced some complexity around testing, years ago, that was never removed and seemed to be making it harder to work on the project. Exactly a month since my first beta release we've released serialport@2.1.0 which is one of the larger releases we've ever had. Thi…

2014 Year End Review

In 2014 our plan was twofold; Help small business's dreams come true and to be a model for how we'd like our industry to operate. In 9 months we came close to achiving everything we wanted to. Close enough that I don't think we were ambitious enough.

cover

In March 2014 after hanging out with the Flatiron BK-000 class for 4 months, I did an open call for applicants. I was starting a new dev shop and I wanted them. My theory was that I could teach them…

Debugging Robots

cover

I was recently helping Sara debug an issue with a project for an upcoming book she's writing a chapter in. She was using Johnny-Five and a Spark Core to remotely control a boat with JavaScript.

The Setup

The setup was a sparkfun motor driver and a standard servo hooked to A0 and A1 of the Spark Core.

sparkcore pinout

Sara had one submersible thruster on the boat hooked up to the motor driver and a rudder hooked up to the servo. She was using VoodooSpark with Jo…

Wizard Development StatusBot

Any sufficiently mature development team eventually has someone who makes a build status indicator. This one is ours.

The WizardDev StatusBot shows us the current status of the latest build, the repo and branch names, and the commit message. We have it on our wall and can glance at it whenever we're curious.

Today I'll take you through my build processes and how I figured out the different components to build our status bot.

What does the Status …

Multiple Domain Tracking with Segment.IO and Mixpanel

This post was written in 2014 and it's advice is absolutely less relevant today, nevertheless it's one of the top search results for this problem.

At One Month, we've chosen to operate our app across several domains depending on what course you're taking. (OneMonthRails.com, OneMonthHTML.com, or the primary domain OneMonth.com)

As a result we broke a lot of our tracking that we do to figure out how people are using our site. We use a services c…

You Laugh You Lose

Recently I won a trip to NodeConf (a conference about nodeJS) by making a cool little game called "You Laugh You Lose". It was created in 17 hours at NodeJitsu's "Hack Nodeconf Hackathon". After a full days work my friend Mike and myself wandered over to Pivotal Lab's awesome offices near union square and proceeded to stay up for the next 24 hours. This blog post is about how that went.

First off get a cool browser and play the game!

Inception

Me…

Coming soon to a party near you

I got one of them Drink Shields and assembled it today. It uses a Alcohol Gas Sensor MQ-3 to take readings and displays them on a light bar that goes up to 11. No idea how to convert this to BAC but one beer didn't even push one led a few minutes after drinking. The datasheet says it needs a 20 hour burn in before the sensor becomes reliable so we'll have to see.

[gallery link="file" columns="2"]

Telescopic Shower

On a side note trying to put html/js in a wordpress post is a bad experience. If the iframe doesn't work try ithere.This post requires javascript and now uses an iframe so you may have trouble viewing it in an rss reader.

Random Image FB

I had a brief lived application on facebook. It mostly worked right and would load all your photos and put them in a big FB random tag and stick it on your profile. I had it upgraded by Koudelka who played around with Facebook's javascript subset and got a little Ajaxy (+) link that would load a new photo. After that I ignored it. =)

Until it broke, and you had to hit the + to get a photo at all.

It was shitty hack. Code that was never planed.  I…

Roborooter.com © 2024
Powered by ⚡️ and 🤖.