public marks

PUBLIC MARKS from Spone with tag "best practices"

2018

Robust Client-Side JavaScript - A Developer’s Guide

by 1 other
The JavaScript programming language is an essential tool of web developers today. Websites ship more and more JavaScript to the browser to be more interactive. The more complex client-side JavaScript gets, the more error-prone and fragile the user experience might get. Why do we need to talk about robust JavaScript and how do we achieve it?

2017

Let them paste passwords - NCSC Site

We think that stopping password pasting (or SPP) is a bad thing that reduces security. We think customers should be allowed to paste their passwords into forms, and that it improves security.

6 things I learned creating my own Messenger chatbot • Chatbots • Kilian Valkhof

The modern messaging tools that chatbots run on offer much more ways to interact compared to what previous incarnations of chatbots had, such as those used on IRC or AIM. Much advise on building chatbots that’s out there quietly assumes that all chatbots are just text-in-text-out, which doesn’t match with the platforms they are on. I recently built a chatbot for Facebook Messenger, and these are six things I learned from using other bots in research, building the bot and watching people interact with it.

How To Scroll

Scroll-based interaction is incredibly popular for interactive storytelling. There are many compelling reasons for this, yet scrolling is surprisingly nuanced and easy to break. So here are five rules for employing scrolling effectively.

2016

Why we use progressive enhancement to build GOV.UK | Technology at GDS

(via)
There seems to be a common belief among front-end developers that progressive enhancement is either old fashioned or has simply been replaced by single page applications. This is a problem of perception. We’d like to explain why we use progressive enhancement to build GOV.UK.

The Basics of Web Application Security

Modern web development has many challenges, and of those security is both very important and often under-emphasized. While such techniques as threat analysis are increasingly recognized as essential to any serious development, there are also some basic practices which every developer can and should be doing as a matter of course.

A technical guide to SEO

If you're the owner or maintainer of a website, you know SEO matters. A lot. This guide is meant to be an accurate list of all technical aspects of search engine optimisation. There's a lot more to being "SEO friendly" than just the technical part. Content is, as always, still king. It doesn't matter how technically OK your site is, if the content isn't up to snuff, it won't do you much good. But the technical parts do matter, after all.

2015

GitFlow considered harmful

(via)
GitFlow is probably the most popular Git branching model in use today. It seems to be everywhere. It certainly is everywhere for me personally - practically every project at my current job uses it, and often it's the clients themselves who have chosen it. I remember reading the original GitFlow article back when it first came out. I was deeply unimpressed - I thought it was a weird, over-engineered solution to a non-existent problem. I couldn't see a single benefit of using such a heavy approach. I quickly dismissed the article and continued to use Git the way I always did (I'll describe that way later in the article). Now, after having some hands-on experience with GitFlow, and based on my observations of others using (or, should I say more precisely, trying to use) it, that initial, intuitive dislike has grown into a well-founded, experienced distaste. In this article I want to explain precisely the reasons for that distaste, and present an alternative way of branching which is superior, at least in my opinion, to GitFlow in every way.

GitLab Flow | GitLab

by 1 other
Version management with git makes branching and merging much easier than older versioning systems such as SVN. This allows a wide variety of branching strategies and workflows. Almost all of these are an improvement over the methods used before git. But many organizations end up with a workflow that is not clearly defined, overly complex or not integrated with issue tracking systems. Therefore we propose the GitLab flow as clearly defined set of best practices. It combines feature driven development and feature branches with issue tracking.

2014

The offline cookbook - JakeArchibald.com

When AppCache arrived on the scene it gave us a couple of patterns to make content work offline. If those were the patterns you needed, congratulations, you won the AppCache lottery (the jackpot remains unclaimed), but the rest of us were left huddled in a corner rocking back & forth.

7 Principles of Rich Web Applications |

This is a writeup based on a presentation I gave at BrazilJS in August 2014. It builds on some of the ideas I’ve been blogging about recently related mostly to UX and performance.

How To Scroll

Scroll-based interaction is incredibly popular for interactive storytelling. There are many compelling reasons for this, yet scrolling is surprisingly nuanced and easy to break. So here are five rules for employing scrolling effectively.

Enduring CSS: writing style sheets for rapidly changing, long-lived projects - Author and responsive web developer Ben Frain

When architecting CSS for a large scale project it’s a common aim to abstract visual patterns for re-use, DRY out code and normalise our designs as much as possible. However, for rapidly changing projects, I’m no longer convinced those principles should necessarily be followed to the nth degree, nor that they offer the biggest wins. This post describes what I consider the most advantageous practices and approaches when authoring CSS for a rapidly changing, large scale web project.

Static Web Apps - A Field Guide

by 1 other
Static Web Applications run independently of the need for server-side dynamic processing. Static web architecture eases common web development headaches without introducing additional complexity. This guide will introduce you to the world of static web applications and offer solutions to common challenges encountered while building them. Welcome!

Hexagonal Architecture Guidelines for Rails - The Audacious Code Experiment

Good application design is hard and there’s no one “right” way to do it. I often get asked the how I design decoupled applications and while there’s no easy answer I’m going to lay down the rules that have worked for me.