I wrote a Solid app to post to the Fediverse. It worked, but…| vincenttunru.com
This post is for people running into the following error when running a Protractor test for their Angular apps:| vincenttunru.com
Version control systems like Git are widely appreciated for their ability to provide a centralised location for source code, for helping people work together on the same code base, and for allowing you to scrap the crap you just wrote and get your code back to the state it was in before you started your misguided refactoring.| Vincent Tunru.com
This post is a summary of a talk I gave today, in which I made the case for Functional Reactive Programming in Javascript using libraries such as RxJS.| Vincent Tunru.com
There’s a lot of excitement about reactive programming in the front-end community:| Vincent Tunru.com
Here’s a short public service announcement for those who write their tests using Jasmine or Protractor: avoid the toBeTruthy() and toBeFalsy() matchers and use toBe(true) and toBe(false) instead.| Vincent Tunru.com
Previously, I took a look at the current state of Javascript frameworks. Today, I will take a look at what I think will be the next frontier of front-end programming: functional reactive programming.| Vincent Tunru.com
Javascript frameworks come and go — by the time you have finished reading this post, three new frameworks will have been released. While it may sometimes look like they’re just introducing more syntax to learn, the ones that actually get popular often introduce new paradigms that allow us to build features more quickly and with fewer bugs. We can learn a lot by taking a step back: where did we come from, and where are we now, in the year 2016? Which problems do the big frameworks solve, a...| Vincent Tunru.com
André Staltz recently argued that all Javascript libraries should be authored in TypeScript — which turned out to be rather controversial on reddit. I think that a lot of the resistance originates in the expectation that TypeScript is a completely new language that compiles to Javascript, comparable to the likes of CoffeeScript. In this post I’ll try to clear up this misconception.| Vincent Tunru.com
One of the reasons I created A Grip on Git was that there were some things with which I wanted to play. One of those things was Redux, a library that greatly simplifies state management in your Javascript applications. It helps you to be more explicit about possible changes in your application state by defining all possible state transformations as (pure) functions (referred to as reducers in the Redux documentation).| Vincent Tunru.com
Git is one of the most important tools in software development right now. It doesn’t matter what sector your company is active in, what programming language you use or whether you do waterfall, scrum, kanban or what not; the most common denominator is going to be version control. And most of the time, you’ll be using Git to do it.| Vincent Tunru.com
When React first burst onto the scene, its primary innovation was the Virtual DOM: instead of having to manually make sure the DOM is in sync with the actual application state, you'd just recreate a representation of the full DOM on every state change, and React would then update the actual DOM with exactly the changes needed to make it match. React components were simply a function of the application state, and the main benefit of that, as was the slogan at the time, is that it makes them ea...| vincenttunru.com
It appears that Tailwind is somewhat contentious: it's either the best thing since sliced bread or literally provides no value. While such extremes might make for interesting reading, the proper way to evaluate technologies is to attempt to understand the problems they solve, and then determine whether those are problems you actually have.| vincenttunru.com
Ah, Semantic Versioning. The concept sounds simple enough, but it's been the source of untold lost hours of confusion and disagreements. I'd like to offer up a small change in perspective that I hope will help settle such issues once and for all.| vincenttunru.com
In my time, I've done a number of side projects — some serious, some decidedly less so. My latest side project is quite definitely in the latter category: trying to win a game show on national television.| vincenttunru.com
Working at a small, young and frugal non-profit, I do not have the luxury of specialised testers giving new features a run-through before they go live. Nevertheless, because our code runs on the websites of other organisations, we have to make absolutely sure that it will not break. At the same time we want to be able to iterate quickly as we adapt to a rapidly changing environment. We manage to balance these two requirements by a variety of measures. Combined, they result in an excellent dev...| vincenttunru.com
It can feel like Babel and TypeScript have largely overlapping use cases: both allow you to use modern Javascript features, even before all relevant browsers support them. Thus, do you even need Babel when you use TypeScript? Or conversely: now that Babel has added TypeScript support, can you replace TypeScript with Babel? What's the difference? Why does a project like Create React App combine the two?| vincenttunru.com
Create React App 2.1.0 just arrived with TypeScript support! While Will Monk's fork create-react-app-typescript has served us well, being able to use the official version has a number of advantages. Most importantly: it is supported by the full weight of the Create React App team, and will therefore stay closely aligned with React proper and will always have up-to-date documentation. Furthermore, you are able to use everything that is supported by Create React App, like Sass.| vincenttunru.com
I just implemented a little change that I think will greatly improve the quality of bug reports I receive: I created a minimal boilerplate repo for my project.| vincenttunru.com
When it comes to unit testing, there are three schools of thought that I'm aware of:| vincenttunru.com