RRULE will make you hate calendars

Calendars are not the simplest applications by far.  There are many different features, lots of different implementations, multitude of standards (just a few being RFC 2445, which was obsoleted by RFC 5545, which was updated by RFC 5546, RFC 6868, RFC 7529, RFC 7953, RFC 7986) , and plenty of other complexities.

One area in particular, which is cryptic and annoying is RRULE, or recurrence rule.  You know, those events that don’t just happen once, but repeat once in a while.  Starting with the most basic rules of repeating every day, and going into complete insanity of repeating every other Thursday, starting from next week and until the beginning of next year every other month, RRULEs can drive even the calmest of people completely insane.  Here’s a screenshot to give you an idea.

Here are a couple of tools that we found useful, when implementing and testing this functionality:

  • rrule.js – a JavaScript library for working with RRULEs.  See the demo here.
  • recurr – a PHP library for working with RRULEs.

Modern JavaScript Explained For Dinosaurs

Modern JavaScript Explained For Dinosaurs” is one of those quick and easy guides to the modern world of JavaScript, written for people who learned to code in the language back in the 90’s and now have to come back or manage those hipster kids who use JavaScript as the only solution to every problem.

As the article tries to stay brief and simple, it doesn’t go into many different corners of the JavaScript language.  Instead it focuses on the package management with bower, npm, webpack, etc.

Front-End Checklist

This Front-End Checklist is pretty awesome and quite extensive:

The Front-End Checklist is an exhaustive list of all elements you need to have / to test before launching your site / page HTML to production.

It is based on Front-End developers’ years of experience, with the addition from some other open-source checklists.

It goes over generic HTML bits, meta information, web fonts, CSS, images, JavaScript, security, accessibility, performance and more.

The best part is that large parts of this list are pretty easy to automate and integrate with your deployment / continuous delivery tool chain.

On React and WordPress

I have a great deal of respect for Automattic in general and Matt Mullenweg in particular.  They have done an amazing job with WordPress, which is now used by more than a quarter of all websites.  But they are also a great example of how companies can work in the Open Source software space.

It’s not all just business.  Automattic raises the ethics bar quite high.  And today there is an excellent example of how they do it.  Check out this blog post by Matt on why WordPress will be moving away from the React JavaScript framework developed by Facebook:

I think Facebook’s clause is actually clearer than many other approaches companies could take, and Facebook has been one of the better open source contributors out there. But we have a lot of problems to tackle, and convincing the world that Facebook’s patent clause is fine isn’t ours to take on. It’s their fight.

Respect!

Angular vs. React vs. Vue: A 2017 comparison

Angular vs. React vs. Vue: A 2017 comparison” is a very lengthy and detailed comparison of the top three most popular JavaScript frameworks: Angular, React and Vue.  There are also lots of links and references for further reading, but even if you don’t leave the article, chances are you’ll have a pretty good idea of which framework suits you best.  For me, it looks like it’s Vue.

And as a side note, this quote made me smile:

The dirty little secret is that most “modern JavaScript development” is nothing to do with actually building websites — it’s building packages that can be used by people who build libraries that can be used by people who build frameworks that people who write tutorials and teach courses can teach.I’m not sure anyone is actually building anything for actual users to interact with.