Your Official 2015 Panda Strike Holiday Reading Guide

It’s that time of year. Curl up next to the fire with a nice espresso and your favorite Panda Strike blog posts! Photo via Pixabay.

If you’re looking for some holiday reading, look no further! We’re here to help. We did a lot of blogging this past year, Relatively speaking anyway. and odds are that you missed a post or two, so here’s summary of what we wrote about in 2015.

JavaScript and CoffeeScript

We wrote a bit about the future of JavaScript and CoffeeScript, in general, and about how Web Assembly will change things.

More specifically, we wrote in-depth about how we’re using the new language features in our open source framework Fairmont.

We’ve implemented multi-methods in JavaScript, which doesn’t really have anything to do with new features of the language, but helps us write more functional code.

HTTP and REST

We wrote a lot about HTTP and REST, almost in spite of ourselves. First, in a similar vein to our HTTP Made Simple series, we wrote about how HTTP uses content-negotiation as a form of type-checking.

We also got annoyed with an ill-informed anti-REST screed from Facebook. There are similarly ill-informed or misleading attacks on REST nearly every day. But Facebook has a tremendous influence on developers and so we felt theirs warranted special attention.

We tried to address some questions that came up in discussions after that post. In particular, can you really write a REST data API? Our answer was yes.

That led to more questions.

As much as we love HTTP and REST (and the Open Web in general), sometimes we get frustrated, too.

The Open Web

Speaking of the Open Web, we wrote a lot about that, too. Once again, it was Facebook that got us started, when we decided we need to speak up about React.

We got accused of hating on Facebook, and so we tried to explain why we’re concerned about their approach.

We were also inspired in positive ways. Roy Fielding’s advice to create more Web really hit home.

We highlighted other developments we’re excited about.

Remote Work

Another theme for us in 2015 was remote work. We’re 100% remote and so we have some opinions. (You’re going to hear a lot more about this from us in the near future. If this is a topic that interests you, be sure to sign-up for our mailing list and stay tuned.)

We took a famous Paul Graham post and replaced Python with remote work, to make a point about the value of remote work.

We offered some tips on how to start incorporate remote workers into your team, based on our own experience.

We questioned the conventional wisdom that you can’t replace face-to-face interaction.

We also addressed a common concern we’ve heard about remote work, that you don’t really know what your team is doing when they’re remote.

Related to that is how you assess productivity, which is important regardless of whether your developers are remote or not, which was exactly the point.

Software Process

We also develop a lot of software and so we have opinions on that, too.

We asked if we couldn’t do better than the current state-of-the-art when it comes to process.

We revealed how we prefer to model interaction design.

We talked about how design and process influence each other.

We talked about the dangers of being a slave to buzzwords and terminology.

We talked about how we keep re-centralizing development, even when we the tools to do otherwise.

We talked about the value of side projects.

And how to sell technology projects (short version: don’t).

Dev Ops And Big Data

Much of our business is helping our clients with dev-ops. Not surprisingly, our blog reflects that. And a lot of what our clients need help with is big data related.

We evaluated some new technologies.

We did a lot of work on container technology, too. Which led us to the conclusion that was badly overhyped.

We also had some practical tips for folks doing static sites (like we do with this blog) using S3 and CloudFront.

And, if you’re using Elasticache Redis, you might want to read this.

Bitcoin

We wrote a lot about Bitcoin, based on our experience doing Bitcoin related development.

First, we offered a technical primer.

We also discussed it’s flaws, both technical and cultural.

In particular, we talked about the lack of true spec.

And how payment networks are a central bank’s dream, not its nightmare, as Bitcoin evangelists maintain.

Finally, we continue to maintain that, while payment networks are the future, Bitcoin is too deeply flawed to really go maintstream, regardless of how speculation might affect the price of Bitcoins.

Functional Reactive Programming And Fairmont

We put a lot of work into our open source library for functional reactive programming. Naturally, we wrote a lot about it, too. As with our writing about JavaScript’s new features, you don’t need to be a Fairmont fanboy to get something from these articles.

First, we addressed the question what the hell is functional reactive programming, anyway?

We also distinguished between reactive programming, and reactive programming using functional programming.

We provided some practical examples of how we’re using functional reactive programming.

JSON Schema And JSCK

Given our emphasis on HTTP-based APIs and using content-negotiation, it shouldn’t come as a surprise that we also spend a lot of time thinking about schemas and schema validation. And given the popularity of JSON as a data format, it also shouldn’t come as a surprise that we like JSON Schema and even wrote a tool to validate JSON against it. And then, because no one wants to spend a lot of cycles validating schemas, we benchmarked it.

Ours isn’t quite the fastest, even though we think that, overall, it’s the best.

Random Goodies

We wrote about Web capabilities, an adaption of capability security to the Web.

We created a cool Stylus mixin to make using Flexbox easier, which also happens to double as a nice introduction to Flexbox.

Finally, we wrote about how queues should be a standard part of your toolbox when building distributed applications.

Happy Holidays!

We hope you’ve enjoyed our blog. Thanks for reading and have a great holiday! We will have some additional year-end posts coming, including an Important Announcement and our 2015 retrospective.