Posts

Showing posts from November, 2017

How to Remix an Electronic Progressive XMAS Song

10 Best Free Mac Photo Apps

Build a Music App With an Android App Template

The Difference Between Typography & Hand Lettering: Typography in 60 Seconds

Inheritance and Extending Objects With JavaScript

How to Update Your App for iOS 11: Drag and Drop

How to Write an Effective Follow Up Email After No Response

Store Everything With Elixir and Mnesia

Image
In one of my previous articles I wrote about Erlang Term Storage tables (or simply ETS), which allow tuples of arbitrary data to be stored in memory. We also discussed disk-based ETS (DETS), which provide slightly more limited functionality, but allow you to save your contents to a file. Sometimes, however, you may require an even more powerful solution to store the data. Meet Mnesia —a real-time distributed database management system initially introduced in Erlang. Mnesia has a relational/object hybrid data model and has lots of nice features, including replication and fast data searches. In this article, you will learn: How to create a Mnesia schema and start the whole system. What table types are available and how to create them. How to perform CRUD operations and what the difference is between "dirty" and "transactional" functions. How to modify tables and add secondary indexes. How to use the Amnesia package to simplify working with databases and table

10 Tools to Try With Your Next Web Project

New WordPress Course: Adding Hooks to Your Themes

Audio and Music in Final Cut Pro X: How to Import and Adjust

How to Create an Illustration of Scandinavian Mittens in Adobe Illustrator

How to Create a Geometric 3D Adobe Photoshop Brush With Cinema 4D

Create the Perfect Carousel, Part 3

How to Create Bender From Futurama With the New Puppet Warp Tool in Adobe Illustrator

Create an Animated Movie in Blender: Part 2

How to Insert a PowerPoint Slide Into Word in 60 Seconds

Create an Animated Movie in Blender: Part 1

New Course: Animating Paint Strokes With Cinema 4D

20+ Best Minimal WordPress Themes: With Simple, Elegant Designs

60 Second How-to: Fix Photo Defects in Adobe Photoshop Lightroom

22+ Best Restaurant WordPress Themes: With Premium Responsive Designs

Typography in 60 Seconds: What Is Kerning, Tracking, and Leading?

Beginner's Guide to Android Layout

Optimize Your Website Without AMP: Optimization Checklist

How to Create a Color Font With Adobe Illustrator and Fontself Maker

How to Interview on the Fly

Create the Perfect Carousel, Part 2

How to Create a Realistic Coin Text Effect in Adobe Photoshop

How to Use PowerPoint Templates to Design Presentations

How to Use Sketch Libraries: Collaboration Made Easy

Make Your Go Programs Lightning Fast With Profiling

58 Best Lunar/Chinese New Year Templates and Graphics

How to Stretch Paper for Watercolour and Gouache and Avoid My Mistakes!

10 Easy Pieces: Fashion Video Packs, Assets and Templates

Create the Perfect Carousel, Part 1

Quick Tip: How to Create a Denim Pattern in Adobe Photoshop

Secure Coding With Concurrency in Swift 4

Image
In my  previous article about secure coding in Swift , I discussed basic security vulnerabilities in Swift such as injection attacks. While injection attacks are common, there are other ways your app can be compromised. A common but sometimes-overlooked kind of vulnerability is race conditions.  Swift 4 introduces Exclusive Access to Memory , which consists of a set of rules to prevent the same area of memory being accessed at the same time. For example, the inout argument in Swift tells a method that it can change the value of the parameter inside the method. func changeMe(_ x : inout MyObject, andChange y : inout MyObject) But what happens if we pass in the same variable to change at the same time? changeMe(&myObject, andChange:&myObject) // ??? Swift 4 has made improvements that prevent this from compiling. But while Swift can find these obvious scenarios at compile time, it is difficult, especially for performance reasons, to find memory access problems in concurren

How to Make Your Own Google Slides Presentation Template

How to Manage Multiple Applications in CodeIgniter

Image
Today, we’re going to explore how you can manage multiple applications in the CodeIgniter web framework using a single codebase. In the course of that, we’ll go ahead and create two different CodeIgniter applications that will share the core CodeIgniter codebase. Sharing the core codebase across different applications is not something new as it’s already practiced by different frameworks and open-source systems, and CodeIgniter is no different. It easily allows you to manage multiple applications that share the core CodeIgniter library and API files, and at the same time you could use different databases and site-specific configurations. To start with, we’ll go through the benefits of the multisite setup, and as we move on we’ll go through a practical demonstration of what it takes to set up multiple applications in the CodeIgniter framework. Benefits of the Multisite Setup In this section, we’ll highlight a couple of benefits of having a multisite setup. One of the most obvious b

How to Create a Space Illustration Using Omber

New Course: Introduction to Figma

Understanding Particles and Dynamics in Maya—Part 12

7 Best Time Tracking Software Apps to Boost Your Productivity

How to Add Music to PowerPoint in 60 Seconds

International Artist Feature: Bulgaria

15 Important HR Basics for Every Small Business Owner

10 Best iOS Photo App Templates

Performant Animations Using KUTE.js: Part 5, Easing Functions and Attributes

Image
So far in this series, you have learned how to animate the CSS properties of different elements, how to create different SVG-related animations , and how to animate the text content of different elements on a webpage. There is one more way in which you can animate the elements on a webpage using KUTE.js, and that is by changing the values of different attributes. This requires you to include the attributes plugin in your project. In this tutorial, you will learn how to use the attributes plugin to animate the value of different kinds of attributes in KUTE.js. We will also discuss different easing functions that you can use to control the pace of different animations. Easing Functions Objects in real life very rarely move linearly. They are either accelerating or decelerating. Even the acceleration and deceleration occur at different magnitudes. Up to this point, all our animations have progressed linearly. This doesn't feel natural at all. In this section, you will learn abou

How to Draw a Winter Christmas Landscape With a Wooden Sign in Adobe Illustrator

How to Create Flat Profession Avatars in Adobe Illustrator

Easy Pieces: 10 Local News Video Templates and Assets for Adobe After Effects

How to Create a GTA Text Effect Action in Adobe Photoshop

How to Build an Awesome Band Website With WordPress (For Musicians)

Performant Animations Using KUTE.js: Part 4, Animating Text

Image
In the second tutorial of this series, you learned how to animate different CSS properties of the elements on a webpage using KUTE.js. You learned how to animate all the transform properties as well as properties like border-radius and border-color . You can also use the CSS plugin to animate CSS properties like font-size , line-height , letter-spacing , and word-spacing . KUTE.js also has a Text plugin which allows you to animate the text inside different elements, either by increasing or decreasing a number like in a countdown or by writing a string character by character. In this tutorial, you will learn how to animate the text inside different elements on a webpage using the CSS and Text plugins in KUTE.js. Animating CSS Text Properties As I mentioned earlier, you can use the KUTE.js CSS plugin to animate four different text-related CSS properties. These properties are  font-size , line-height , letter-spacing , and word-spacing . We will also use some properties from the cor

Why You Need More Integration Between Design and Development

Get Interviewing: Practical Exercises for Aspiring Documentary Filmmakers

How to Draw a Fox Step by Step

How to Create a Scribble Sketch Effect Action in Adobe Photoshop

How to Change PowerPoint Orientation From Landscape to Portrait

Performant Animations Using KUTE.js: Part 3, Animating SVG

Image
The previous tutorial of the series showed you how to animate different CSS properties of any element using KUTE.js. However, the core engine does not allow you to animate properties that are specific to SVG elements. Similarly, you can't animate the SVG morphing of different path shapes or the drawing of different SVG elements using strokes. You will have to use the KUTE.js SVG plugin to achieve any of these tasks. Before we begin, keep in mind that you will have to include both the KUTE.js core engine and the SVG plugin for the examples in this tutorial to work. Morphing SVG Shapes Morphing one SVG shape into another is a very common feature that you will come across. The KUTE.js SVG plugin gives us everything that we need to create our own morphing animations with ease.  There are three ways to morph SVG shapes using this library: You can use the fromTo() method to specify both the initial and the final SVG path for your element.  You can also use the to() method and