Articles
90 Days Isn't Lightning Speed: Why Most Energy Platforms Can't Do Real AI
While energy companies brag about 90-day analytics, the grid operates in milliseconds. Learn why AI-native architecture isn't a buzzword—it's the only way to build platforms that can sense, think, and act in real time.
The Hidden Data Risks in Utility Operations
Discover how emailing customer data via CSVs creates major security risks for utilities. Learn why this common practice threatens data privacy and how Texture's incremental approach provides secure data sharing without disrupting operations.
The Energy Industry's Point Solution Problem: Why Utilities Keep Reinventing the Wheel
Utilities waste resources creating disconnected point solutions. Texture provides a platform approach, acting as the central nervous system that enables real-time data flow between systems so utilities can focus on innovation.
Streamline Program Enrollment with Texture’s API
Simplify energy program enrollment with Texture’s API. Automate eligibility checks, reduce admin costs by 75%, and increase enrollments for VPPs, OEMs, utilities, and DERMS.
Why Texture Bets on Experience: Our Contrarian Approach to Startup Hiring
At Texture, we're challenging startup hiring norms by investing in experienced operators. Learn why we believe paying for experience accelerates success and how we're building differently in the energy sector.
Don't Let Sunk Costs Drag You Down: Focus on What You Do Best
Stuck in the past? The sunk cost fallacy holds many energy companies back from embracing modern, scalable solutions. Learn why shifting from in-house legacy systems to specialized platforms is key to thriving in the evolving energy landscape.
The Real Cost of Building It Yourself in Energy
The energy industry's default approach of building everything in-house is holding back innovation. Learn why the build-it-yourself mindset is unsustainable, what it really costs, and how Texture's energy data platform can accelerate the transition.
Explaining Texture to My Mom
Texture is a B2B platform for connecting batteries, solar, and more. I break down how homeowners can store solar power, sell it to the grid, and even form a virtual power plant—explained in plain English for my mom and aunt.
Why Cloud Infrastructure is the Future for Energy Companies
The energy landscape is transforming: bidirectional power flows, behind-the-meter assets, and real-time demands require new approaches to infrastructure. Learn why cloud isn't just an option for energy companies—it's essential for future success.
Why Texture Doesn't Reverse Engineer APIs - and Why That Matters
Texture powers the energy ecosystem with stable, OEM-backed device integrations—no guesswork, no hacky APIs—just reliable, secure, enterprise-grade solutions.
Knotel builds a better flexible workspace experience with Apollo
Using a federated Apollo data graph allowed Knotel to scale their GraphQL implementation, speed development, and deliver a better experience to all their users
Knotel GraphQL Apollo Federation Tweetstorm
Our engineering team at Knotel was one of the first companies to deploy Apollo Federation into production. This was originally an 18 Tweet Tweetstorm that I have reformatted as a blog post here for readability.
How Spring Prepares for the Black Friday Frenzy
Our engineering team generally spends a few months leading up to that day running drills, gathering metrics and tuning systems, prepping, pre-emptively scaling, and just generally ensuring everything is in tip top shape to handle traffic for that one day in which we will often see 20 or 30 times the volume that we’d see on a normal day. This article and the video tells the story about one such optimization
LocationKit: The Making of – Part 2
Even more details on how we made LocationKit, the problems it was meant to solve, how we ended up solving them
LocationKit: The Making of – Part 1
Details on how we made LocationKit, the problems it was meant to solve, how we ended up solving them
Smart Polygons: Shaping a More Intelligent Location
The power of using polygons over points to represent location data in the real-world
LocationKit is here
Introducing LocationKit, the most advanced mobile location framework
Writing "Getting Started with tmux"
I completed work on my first book, Getting Started with tmux, which was recently published. This is a recount of the background and history of writing that book.
nginx as a SPDY load balancer for Node.js
Recently we wanted to integrate SPDY into our stack at SocialRadar to make requests to our API a bit more speedy (hurr hurr). Particularly for multiple subsequent requests in rapid succession, avoiding that TCP handshake on every request would be quite nice. This article outlines how we did it with nginx
Full text search with Bookshelf.js
Bookshelf has no inbuilt method for performing such a query but it actually ended up being rather simple.
Desired: Oculus Rift as a monitor replacement
An idea I haven't been able to shake since I first used an Oculus
JavaScript: Async Promise "while loop"
This is a solution to the situation where you have an asynchronous task you want to perform over and over again, in a non-blocking fashion, stopping when some condition is met.
Thoughts on Opera Next
Opera made the call years ago to switch from its own rendering engine to Blink, the rendering engine underpinning Chrome
Emacs: Prevent autosave mess
Emacs is trying to be helpful by creating autosave files, but by default it stores them alongside the file you're editing creating a mess in active folders, repositories, etc. Follow this tutorial to fix that mess and ensure Emacs still stores those backups but puts them all in a single location to reduce clutter
Accent Color
A tale in which one nerd spends far too long picking a Color for his blog with journeys into some fun bits of hexadecimal numbers, math, and programming.
Gobbledygook: a poem
A silly poem I wrote in Fall 2003 while studying quantum mechanics
JavaScript: arguments explained
A mini tutorial on the JavaScripts arguments pseudo-object
Want to Work for a Startup? Contribute to Open Source!
Some tips for getting a gig at a startup
Deploy Coffeescript Node App to Heroku
So you've got a cool node app written in Coffeescript and you want to deploy it to Heroku? Seems like it should be easy these days, right? Not so much. Well, let's be honest, we're in the future, you don't have to manually manage servers, etc. (Thank you Heroku!) but deploying a Coffeescript app is still no small task as there are a bunch of gotchas. Hopefully this will help.
Multi-User iOS and the Fingerprint Scanner
I came across this article about Apple acquiring AuthenTec for their fingerprint scanning technology and had a lightbulb go off. What if, in addition to being used to enhance security, it was also used for a multi-user iOS experience?
Chance
I am often looking to generate random things in JavaScript. Whether in the browser or in Node, I often find myself looking to generate a random phone number or address or even number with some characteristics. So I created Chance
Alfred 2 and Emacs
Long story short, Alfred 2 and Emacs installed via Homebrew don't exactly play along nicely. Alfred 2 doesn't like to follow symlinks so it won't open Emacs. This is a solution.
Backbone CrossDomain Library
Open sourcing the Backbone.CrossDomain Library
Convert .png to .eps on Mac
This is one of those tips that seems almost too easy to be true.
Solved: git svn Broken in Mavericks
Struggling with git svn in Mavericks (or Mountain Lion)? This may be your answer
Solved: ZSH tab completion painfully slow
Struggling with slow tab completion in zsh? This may be your answer
Programmatically Creating Fielded Nodes in Drupal 7
Programmatically Creating Fielded Nodes in Drupal 7
tmux Tutorial
A tutorial on tmux, the terminal multiplexer along with my rationale for trying it out and some tips and tricks
Concept Idea: Using client-side Javascript for distributed computing
Could we use client-side Javascript for distributed computing to solve the world's problems simply by having someone visit a webpage?