This version of the site is now archived. See the next version at v5.chriskrycho.com.

Unsurprisingly, In Flux

A Quick Look at the State of JS Frameworks in Early 2015

April 08, 2015 (updated August 28, 2015)Filed under tech#angularjs#emberjs#javascript#react#software developmentMarkdown source

Lessons Learned

9 Months With HolyBible.com

April 12, 2015Filed under tech#angularjs#javascript#software developmentMarkdown source

How to Build a Single-Page App API Right

Or: How to get performance, progressive enhancement, and SEO in your Ember/Angular/Backbone/etc. app for free!

June 09, 2015Filed under tech#javascript#software developmentMarkdown source

HTML5 Location, <base>, and SVG

Making Angular and SVG xlink:href work correctly in Firefox.

June 20, 2015 (updated July 02, 2015)Filed under tech#angularjs#javascript#software developmentMarkdown source

The Future of JavaScript

ES2015, ES2016, and Hopes for ES2017 and Later

March 02, 2016Filed under Tech#javascript#programming languages#software development#talksMarkdown source

Testing Ember.js Mixins (and Helpers) With a Container

Fixing "Attempting to lookup an injected property on an object without a container" errors in mixin and helper tests.

June 09, 2016 (updated April 20, 2017)Filed under tech#emberjs#javascript#software developmentMarkdown source

Y Combinators, how do they even work?

A commentary on a blog post by Matt Might, or: learning out loud.

June 19, 2016Filed under tech#javascript#programming languages#software developmentMarkdown source

Rust vs. React Native—What?

Tradeoffs, or: Speed and stability are for everyone

October 07, 2016Filed under Tech#f sharp#javascript#rust#software development#swiftMarkdown source

What is Functional Programming?

(And why should we care about it?)

November 11, 2016 (updated November 14, 2016)Filed under tech#functional programming#javascript#software developmentMarkdown source

keyof and Mapped Types In TypeScript 2.1

Making JavaScript dance to an ML-ic tune.

December 17, 2016 (updated December 18, 2016)Filed under tech#javascript#programming languages#software development#typescriptMarkdown source

The Itch

How typed functional programming is what I was looking for all along.

December 19, 2016Filed under tech#functional programming#javascript#rust#software developmentMarkdown source

TypeScript keyof Follow-Up

Autocomplete all the things in all the ways!

January 03, 2017 (updated January 08, 2017)Filed under Tech#javascript#programming languages#software development#typescriptMarkdown source

Functions, Objects, and Destructuring in JavaScript

On functions in JS and some fun bits in ES2015 in particular

March 27, 2017Filed under tech#javascriptMarkdown source

Why Elm Instead of TypeScript?

Or, yet another long comment in Slack turned into a blog post.

April 23, 2017Filed under tech#elm#functional programming#javascript#programming languages#typescriptMarkdown source

“Collection-Last Auto-Curried Functions”

You want your data last, and you want your functions “partially applied.” Here’s why.

June 24, 2017Filed under Tech#functional programming#javascriptMarkdown source

I Want JSON Decoders

Elm taught me something important about how to handle my APIs.

December 25, 2017Filed under Tech#elm#javascript#software development#typescript#web developmentMarkdown source

Announcing ember-cli-typescript 1.1.0

Now with generators, support for addons, and incremental compilation!

February 12, 2018Filed under Tech#emberjs#javascript#typescript#typing-your-emberMarkdown source

#EmberJS2018, Part 1

Finishing What We've Started

May 11, 2018 (updated May 11, 2018)Filed under Tech#emberjs#emberjs2018#javascript#typescriptMarkdown source

#EmberJS2018, Part 2

Doubling Down on Documentation

May 18, 2018Filed under Tech#emberjs#emberjs2018#javascript#typescriptMarkdown source

#EmberJS2018, Part 3

Default to open for discussions and decision-making.

May 23, 2018Filed under Tech#emberjs#emberjs2018#javascript#leadershipMarkdown source

Higher-Order Components in Ember.js

Components as arguments! Components getting yielded! Components everywhere!

May 26, 2018 (updated May 28, 2018)Filed under Tech#emberjs#javascript#typescriptMarkdown source

#EmberJS2018, Part 4

Embracing the Ecosystem

May 29, 2018Filed under Tech#emberjs#emberjs2018#javascript#typescriptMarkdown source

Client-Side Ideas for Server-Side Apps

I suddenly just discovered that I do actually want Ember.js (or React) for a static site. Why? Components.

June 07, 2018Filed under tech#emberjs#javascript#web designMarkdown source

Stable Libraries

A crazy idea: that sometimes a library might just be… done.

August 14, 2018Filed under tech#javascript#libraries#open source software#software development#true mythMarkdown source

Type-Informed Design

Revisiting our app in TypeScript’s strict mode has me thinking about what we’d do different if we had this input in the first place.

August 30, 2018Filed under Tech#ember.js#functional programming#javascript#software development#types#typescriptMarkdown source

A Real Victory

Today—just shy of two years since I started adding types to our Ember app—it fully type-checks.

September 05, 2018Filed under Tech#ember.js#flow#javascript#software development#typescriptMarkdown source

Why We Want Pattern-Matching in JavaScript

A worked example, showing how much it can clarify code.

September 23, 2018 (updated September 24, 2018)Filed under tech#javascript#programming languagesMarkdown source

Internal and External Parameter Names in JavaScript and TypeScript

A handy design pattern stolen from Objective-C and Swift for designing nicely usable APIs.

November 26, 2018Filed under tech#javascript#software development#swift#typescriptMarkdown source

JavaScript is C

Maintaining invariants the most painful way possible.

December 20, 2018Filed under Tech#c#elm#javascript#rust#software development#typescriptMarkdown source

#EmberJS2019, Part 1

Let’s finish modernizing the Ember programming model!

June 17, 2019Filed under Tech#emberjs#emberjs2019#javascript#open-source softwareMarkdown source

#EmberJS2019, Part 2

Let’s make TypeScript a first-class citizen of the Ember ecosystem.

June 17, 2019Filed under Tech#emberjs#emberjs2019#javascript#open-source software#typescriptMarkdown source

Ember Type-Defs Livestreaming

I’m totally becoming a YouTube star. That’s how this works, right?

July 20, 2019Filed under Tech#emberjs#javascript#typescriptMarkdown source