News
kubectl
The kubectl command combined with jq is the Swiss Army Chainsaw of kubernetes management. Some of my more useful kubectl commands:
watch 'kubectl get pods | column' # Delete all failed pods. kubectl get pods --field-selector=status.phase=Failed -o json | jq -r '.items[] .metadata.name' | xargs kubectl delete pod # All images running that have the word 'dirty' in their name. kubectl get pods -o json | jq -r '..|.containerStatuses?|select(.!=null)|.[].image' | sort | uniq | grep dirty
News
Firebase Hosting
Firebase Hosting is amazing, so fast and easy to setup and they even take care of the SSL cert for you. I work for Google and didn’t even know we had this as a product, so just posting it here in case anyone else missed it.
News
The experience driven source of the elements-sk set of custom elements.
Last August, as my team was pondering moving away from Polymer and creating our own set of neat vanilla js custom elements, I decided to take a data driven stab at deciding is this was a viable plan. My team has been building web applications for over four years using Polymer and that corpus of code could be used to guide the decision. The first thing I did was scan each project and record every Polymer or Iron element used in every project.
News
machine learning for continuous integration
Here are the slides for my OSCON presentation Machine Learning for Continuous Integration.
As usual my slides are pretty worthless on their own, except for the links.
Update (24-Sep-2018) Recording is now available:
News
sociopaths
As usual, XKCD nails it, our society is built under the basic premise that people aren’t sociopaths. This is the root of Facebook and Twitter’s issues, which is that they have built platforms that are being exploited by sociopaths, but they seem unwilling to act, always concerned about free speech. It is a particularly Silicon Valley conceit to not understand the difference.
While Zuckerberg is busy enabling holocaust deniers:
News
k-means clustering
A simple demo of k-means clustering. The little squares are the observations and the cirles are the centroids. Press the 'Step:' button to step through the algorithm. Restart const K = 3; const WIDTH = 500; const HEIGHT = 500; const RADIUS = 0.1; const STEP1 = 'Step 1: Assign observations to clusters.'; const STEP2 = 'Step 2: Update centroids.'; const COLORS = ['darkgreen', 'blue', 'darkorange', 'red', 'purple']; let ctx = document.
News
elements-sk material design icons
The latest release of elements-sk has added elements for all the Material Design Icons. You can see the full set of icons in action on the elements-sk documentation site. Each one is its own module, so you only pay for what you use.
News
Pulito and VanillaJS updated to webpack 4
Both Pulito and VanillaJS have updated to webpack 4.
Additionally both have moved from yarn to npm. While npm still isn’t as fast as yarn, the support for package-lock.json files and increased attention to security and speed are worth the tradeoff.
News
Silicon Valley Libertarianism - Remembered
Remember the last time silicon valley was growing like crazy without any supervision? We’re still dealing with that mess.
News
Stop using Medium
It’s 2018 and it’s still a bad idea to trust centralized publishing platforms. Film at 11.
News
Silicon Valley Libertarianism - An Obituary
Facebook’s Role in Data Misuse Sets Off Storms on Two Continents
On March 18th, 2018 Libertarianism, aka the #Just-Trust-In-The-Giant-Corporations movement, died of a self-inflicted gun wound to the head. In lieu of flowers, please send regulators to look after your citizens privacy.
News
VanillaJS apps have been ported to a la carte web development
My VanillaJS project, where I re-implement popular framework sample apps in vanilla JavaScript, has now been ported over to ‘a la carte’ web development. In this case that means they all use pulito for their tooling and directory structure, and individual framework ports bring in templating libaries as needed. For example, the React sample rewrite uses lit-html for templating, and the Angular sample rewrite uses hyperHTML for templating.
This is a perfect example of the power of a la carte web development, where you get to pick the components you want and only have to ‘pay’ for what you use.
News
A la carte Web Development
Stop using JS Frameworks is something I’ve been advocating for years now, and a legitimate question I get is what do you replace it with?
The answer is “a la carte” web development.
Instead of picking a monolithic solution like a web framework, you just pick the pieces you need. I don’t mean any old random pieces, below I am going to outline specific criteria that need to be met for some components to participate in a la carte web development.
News
2 factor auth and planes
I have just discovered a downside to using SMS as a 2-factor authentication method, as I sit here at 30,000 ft, unable to login to github.
News
Custom Elements "Neat"
“Neat” – as applied to drinks served in bars – refers to a shot of liquor poured directly from the bottle and into a glass. There is no chilling involved with a “neat” drink. There is never an additional ingredient in a drink served “neat”. Up, Neat, Straight Up, or On the Rocks The Custom Elements V1 spec has reached concensus and implementations are going well, which is all great news, but what I find surprising is the lack of VanillaJS custom elements on WebComponents.
News
Shadow DOM and CSS
I love custom elements! I've been building UIs with them since Polymer 0.5 was announced in 2014. One of the things that I've questioned with custom elements has been Shadow DOM and its relationship to CSS. This page is an experiment for comparing custom elements with and without Shadow DOM. Press the buttons below and 1,000 spinners will be displayed on the page, when 'Light' is pressed the custom element uses CSS defined for the whole page, and when 'Shadow' is pressed the custom elements have a style sheet attached to their Shadow DOM, and when 'External' is pressed the CSS for the element is still encapsulated in the Shadow DOM, but it is loaded as an external stylesheet.
News
StartupGrind - How Transloc Scaled in the Triangle and Exited to Ford
Rats, I’m going to be travelling on the 28th and will miss this StartupGrind event: [https://www.startupgrind.com/events/details/startup-grind-triangle-presents-how-transloc-scaled-in-the-triangle-and-exited-to-ford#/](How Transloc Scaled in the Triangle and Exited to Ford).
News
Paul Kinlan - A simple clientside templating language
Paul Kinlan’s A simple clientside templating langauge has a client side templating library using data- attributes, and the implementation comes in at around 25 lines of code. Definitely a great example to demystify templating and demonstrate that you don’t always need a framework or large library to get the functionality you want.
Stamp is a similar library I put together a few years ago with the same goals in mind, but weights in at 250 lines of code.
News
Ford acquires Transloc
Via TechCrunch: Ford acquires Autonomic and TransLoc as it evolves its mobility business
It’s great to see another great North Carolina company get recognized.
News
Blogging drawings
One of the goals with my new blogging system has been a flow for getting hand drawn images onto the blog. I will admit this is purely driven by jealousy of the awesome drawings on the morning paper. I didn’t know if I’d ever find a setup I would like until I got to borrow a Google Pixelbook, which is just an amazing machine and deserves a writeup on its own, but has several key features, such as the ability to run Android apps and the ability to fold over and turn into a tablet, along with one of the best digital pens I’ve ever used.