Thursday, March 28
The Best UK Animation or VFX Courses
CSS Tricks, Web Tricks

The Best UK Animation or VFX Courses

  The animation and VFX scene is growing everyday with almost all feature films now containing some clever CGI.  Even the movies with no monsters or other worlds have cleverly swapped out landscapes and beautiful scenery usually changed or added after filming that you would never notice was not real. The United Kingdom has a booming scene with studios such as MPC , Framestore, Dneg, Passion Pictures and many more, even Industrial Light & Magic have set up shop in London while working on Star Wars. With artists from around the globe coming to the UK to work in an historic city, full of different cultures, London is an attractive experience for any budding artist. With that in mind it’s no wonder international students also love to study here amongst the best, and here in En...
Transmit Droplets
CSS Tricks, Web Tricks

Transmit Droplets

  Ethan Marcotte documented his workflow for storing GIFs in a web directory. Sometimes just SFTPing files into a folder is as fancy a workflow as you need, and in fact, modern workflows don't have anything on it! I've also used Transmit's fancy features for this kind of thing. I prefer saving the connection as a Droplet, which is basically a little application you can drop a file onto and have it upload to exactly where you want it...say a GIF in a specific server directory.   There are two things that make this even more useful. One, you can have it copy the URL after uploading: Two, you can set rules for file types so that they have the right permissions as soon as they are uploaded. I find this particularly useful for S3 where by default they aren't "world readab...
Web Tricks

Getting Started with Live Coding in Visual Studio Code w/ Live Share

  Live Share for Visual Studio Code is HOT OFF THE PRESS and publically available as of May 7th 2018! What? You've been living under a rock and haven't heard of it? Don't worry, let me fill you in. Live Share is an extension for VS Code that enables real-time collaboration between developers. Live Share is an extension for VS Code that enables real-time collaboration between developers. As you'll see in a second, you'll have the ability to share a "session" with someone else, allowing them to edit code as well as share a sever and debugging session. I've seen real-time collaboration in action with Cloud 9 before, but to have this now be a part of my favorite text editor is extremely exciting! So, let's go ahead and take a look at how it works. TLDR: How do I set up Live Share in 4...
Web Tricks

Modern Distributed Application Deployment with Kubernetes and MongoDB Atlas

  Storytelling is one of the parts of being a Developer Advocate that I enjoy. Sometimes the stories are about the special moments when the team comes together to keep a system running or build it faster. But there are less than glorious tales to be told about the software deployments I’ve been involved in. And for situations where we needed to deploy several times a day, now we are talking nightmares. For some time, I worked at a company that believed that deploying to production several times a day was ideal for project velocity. Our team was working to ensure that advertising software across our media platform was always being updated and released. One of the issues was a lack of real automation in the process of applying new code to our application servers. What both ops an...
Web Tricks

Node.js Cron Jobs By Examples

  Ever wanted to do specific things on your application server at certain times without having to physically run them yourself. You want to spend more of your time worrying about productive tasks instead of remembering that you want to move data from one part of the server to another every month. This is where Cron jobs come in. In your Node applications, the applications of these are endless as they save. In this article, we’ll look at how to create and use Cron jobs in Node applications. To do this, we’ll make a simple application that automatically deletes auto-generated error.log files from the server. Another advantage of Cron jobs is that you can schedule the execution of different scripts at different intervals from your application. Prerequisites To follow through th...
CSS Tricks

What does the ‘h’ stand for in Vue’s render method?

  If you’ve been working with Vue for a while, you may have come across this way of rendering your app — this is the default in the latest version of the CLI, in main.js: new Vue({ render: h => h(App) }).$mount('#app') Or, if you’re using a render function, possibly to take advantage of JSX: Vue.component('jsx-example', { render (h) { return <div id="foo">bar</div> } }) You may be wondering, what does that h do? What does it stand for? The h stands for hyperscript. It’s a riff of HTML, which means Hypertext Markup Language: since we’re dealing with a script, it’s become convention in virtual DOM implementations to use this substitution. This definition is also addressed in the documentation of other frameworks as well. Here it is, for example, in Cy...
PHP, Web Tricks

Building A Central Logging Service In-House

  We all know how important debugging is for improving application performance and features. BrowserStack runs one million sessions a day on a highly distributed application stack! Each involves several moving parts, as a client’s single session can span multiple components across several geographic regions. Without the right framework and tools, the debugging process can be a nightmare. In our case, we needed a way to collect events happening during different stages of each process in order to get an in-depth understanding of everything taking place during a session. With our infrastructure, solving this problem became complicated as each component might have multiple events from their lifecycle of processing a request. That’s why we developed our own in-house Central Logging ...
Overflow – Turn Your Designs into Playable User Flow Diagrams That Tell a Story
Web Tricks

Overflow – Turn Your Designs into Playable User Flow Diagrams That Tell a Story

  Designing the best user flow for your product is definitely not an easy task. It requires several iterations before getting it right. Creating and updating user flow diagrams has largely been considered a painful process for designers, with many of them skipping it entirely because of this. Presenting user flows to stakeholders and actually getting them to understand and follow the user’s journey might actually be the most challenging part. Overflow helps you do exactly that. It empowers you to effectively communicate your work, while fully engaging your audience with an interactive user flow presentation. Create User Flows in Minutes Creating user flow diagrams with Overflow is a quick and enjoyable experience. You can connect and sync Overflow with your favorite design to...
How Do You Know Your Website Is A Success?
Web Tricks

How Do You Know Your Website Is A Success?

  (This article is kindly sponsored by Adobe.) We live in a world where just about every business has an online presence. Let’s say you want to reach out to a business — what would be the first thing you would do? Well, you would probably look up their website to search for answers to your questions or simply any contact details you can find. With no doubt, the first impression of any website is now more important than ever. There are more than 1.8 billion websites on the Internet right now, and the number is growing. The increase of the competition brings a great interest in examining the factors of success of a website. While no one will argue that it’s essential to have a successful website, it’s still not easy to understand what exactly success means and how to actually measur...
CSS Tricks, Web Tricks

Managing State in React With Unstated

  As your application becomes more complex, the management of state can become tedious. A component's state is meant to be self-contained, which makes sharing state across multiple components a headache. Redux is usually the go-to library to manage state in React, however, depending on how complex your application is, you might not need Redux. Unstated is an alternative that provides you with the functionality to manage state across multiple components with a Container class and Provider and Subscribe components. Let's see Unstated in action by creating a simple counter and then look at a more advanced to-do application. Using Unstated to Create a Counter The code for the counter we’re making is available on GitHub: View Repo You can add Unstated to your application wi...
7 UX Principles for Creating a Great Website
Web Tricks

7 UX Principles for Creating a Great Website

  We spend a lot of time online reading news, navigating websites and using web apps. In some cases, our experience online is not the best that we could have. And all this is due to poor design that didn’t take user experience into consideration. It’s easy to look from afar and notice these errors, but it’s a bit trickier when you are the one handling a project. As designers, it’s our duty to create design with great user experience. And it isn’t easy. Here are some best practices for UX for web projects. 1. Design Should Concentrate on User Experience Making the experience of the website memorable is more important than what the website says. Users often forget the data and salient points of content, but they will remember how it made them feel. It works in advertisement...
Web Tricks

Lazy Load Animal Memes with Intersection Observer

  Last week we on the code challenge #7 we delved into lazy loading images for increased performance of web pages. Yet to take the challenge? You can do so here before looking through the spoiler below. Once completed, you can post your entry in the comment section of the post, post it on twitter and use the hashtag #ScotchChallenge so we can see it, or post it in the #codechallenge channel of the Scotch Slack. The Challenge When developing websites and web pages, every byte counts and in a bit to reduce the page size and load time several techniques have been implemented to achieve this. Lazy loading is one such technique. Here, a much lower quality of an image is rendered on page load thereby reducing the overall size of the page and increasing load speed. However, when the pa...
Web Tricks

Capture and Report JavaScript Errors with window.onerror

  onerror is a special browser event that fires whenever an uncaught JavaScript error has been thrown. It's one of the easiest ways to log client-side errors and report them to your servers. It's also one of the major mechanisms by which Sentry's client JavaScript integration (raven-js) works. You listen to the onerror event by assigning a function to window.onerror: window.onerror = function(msg, url, lineNo, columnNo, error) { // ... handle error ... return false; } When an error is thrown, the following arguments are passed to the function: msg – The message associated with the error, e.g. "Uncaught ReferenceError: foo is not defined" url – The URL of the script or document associated with the error, e.g. "/dist/app.js" lineNo – The line number (if available...
How To Deliver A Successful UX Project In The Healthcare Sector
Web Tricks

How To Deliver A Successful UX Project In The Healthcare Sector

  A mid-career UX researcher was hired to understand the everyday needs, perceptions, and concerns of patients in a hospital in Berlin, Germany. She used rigorous observation and interviewing methods just like she teaches them to design thinking students at a nearby university. She returned with a handful of actionable insights that our product team found useful, somewhat at least. However, we were surprised that her recommendations gravitated towards convenience issues such as “Patients want to know the food menu” or “Users struggle to remember who their doctors are.” Entirely missing were reports of physical and psychological complaints. We would at least have expected sleeping problems: Given that 80% of working Germans don’t sleep well and nearly 10% even appear to have severe...
Gigs Going Global? What Freelancers Need to Know About Classification
Tech News, Web Tricks

Gigs Going Global? What Freelancers Need to Know About Classification

  Freelancers go by many names these days. They can be “non-traditional workers” in Canada or “autónomo” in Spain. They can be “self-employed” and “independent contractors” in the US and UK. But, statistically, the trend is consistent. Freelancers now make up 30 percent of the world’s workforce, and the number is projected to grow to 50 percent by 2020. This nuclear growth has been fanned primarily by technology, as an entire generation of digital natives joins the workforce. This has changed the way we work and what we value, transcending many restraints of the physical world. But the very catalyst of employment mobility is also becoming the root of many unforeseen consequences, in the form of employee misclassification lawsuits playing out in courts across the globe. So whet...