Using a Redis object cache for WordPress

Using a Redis object cache for WordPress is a great way to make your WordPress website faster, especially if you’ve already gone through the “Making WordPress Fly” series of tutorials (noted that one commenter there actually mentioned Redis). You’ll need an Ubuntu 14.04 VPS with WordPress already setup on it. You can get an Ubuntu VM here if you don’t have one. You don’t have to use the aforementioned HHVM setup for this tutorial. However, using both HHVM and Redis object caching will give you the fastest load times. I will be releasing another article in the near future about improving HHVM stability for production deployments by using a PHP-FPM failover and an upstart script which does automatic respawning after a crash, something HHVM does not do by default on Ubuntu. Back to Redis – Redis is possibly the best way at present to implement the WordPress object cache. For a long time I have been a proponent of either APC or Memcached in combination W3 Total Cache for the object cache in WP.

WHY USE A REDIS OBJECT CACHE FOR WORDPRESS?

During a recent server setup for a new website (My French City) I came across an issue. Caching using APC or Memcached helped with front end speed, but the admin area was painfully slow. This site was a multisite install with domain mapping and hundreds of plugins. There were simply too many queries going on in the backend for it to be snappy. After some searching I discovered that implementing Redis to back the WordPress object cache was a great way to improve backend speed. After implementation it turned out it did a better job on the frontend then W3TC and Memcached, which was a pleasant surprise. HHVM does a great job of speeding up PHP and MariaDB 10.1 is also fast. But on a heavy site like this with lots of plugins, database queries are still the issue. Redis is an elegant NoSQL datastore solution to this problem.

A Redis object cache can be implemented in just a few commands on Ubuntu 14.04. Assuming you already have a working WordPress install (LAMP, LEMP , etc.) the process of getting redis working with WordPress is easy. First connect you your instance via SSH. Once connected:

Now Redis is installed. To configure a Redis object cache for WordPress there are a few small changes we need to make. Open up /etc/redis/redis.conf then add these two lines at the bottom:

Now you’ll need to make some changes to WordPress. You’ll need to grab this file. Written by Eric Mann this file will allow WordPress to use a Redis object cache for awesome speed improvements. Once you’ve downloaded that file, make sure you disable W3TC object and database cache if you are using either. Now that Redis is running (and PHP knows how to connect to it), it’s time to tell WordPress to use our Redis object cache. You need to open wp-config.php and let WordPress know what host and port Redis runs on, and add a salt to keys. Add these lines:

Then place the file in you downloaded above in webroot/wp-content/object-cache.php, where webroot is the directory your website files are located within. Once this is done make sure the redis-server is running using sudo service redisserver status . Now you WordPress site is using a Redis object cache. You should notice significant speed gains once you click through a few pages and the cache is populated with queries. If you want to view the Redis console to see what kind of data is being stored run this command: sudo rediscli monitor . That will show you a verbose look at what is going on in your Redis cache.

Unfortunately I do not have a control before and after for the speed difference. However here is a Pingdom load test of a page on this website:

I will be writing more about this in the future. Please leave your thoughts or any contributions in the comments below. At that time I may include more detailed information on the performance gains achieved using Redis object cache with WordPress.

The Three Key Elements of Irresistible Email Subject Lines

Email is back.

Despite repeated proclamations of its extinction, rumors of the death of email marketing have been greatly exaggerated — especially since email and social media are a powerful combination. You might not reach the average college freshman, but for slightly older types (you know, the ones with the money), email is still the way to go in many lucrative mainstream niches.

You must first, of course, get your emails read. And it all starts with the subject line.

Email subject lines are a form of headline. They perform the same function as a headline by attracting attention and getting your email content a chance to be read.

So, headline fundamentals still apply. But the context is different, with the email space having its own funky little quirks that need to be accounted for.

Here’s the good news — email also implies a special relationship with the reader; a relationship that will get more of your messages read, even with subject lines that wouldn’t work in other headline contexts. Let’s take a look back at headline fundamentals, the specifics that apply to subject lines, and the “secret sauce” that makes email your top conversion channel.

1. The Fundamentals:

When you’re writing your next subject line, run it through this checklist, based on the Four “U” Approach to headline writing:

  • Useful: Is the promised message valuable to the reader?
  • Ultra-specific: Does the reader know what’s being promised?
  • Unique: Is the promised message compelling and remarkable?
  • Urgent: Does the reader feel the need to read now?

When you’re trying to get someone to take valuable time and invest it in your message, a subject line that properly incorporates all four of these elements can’t miss. And yet, execution in the email context can be tricky, so let’s drill down into subject-line specifics for greater clarity.

2. The Specifics:

Beyond headline fundamentals, these are the things to specifically focus on with email subject lines:

  • Identify yourself: Over time, the most compelling thing about an email message should be that it’s from you. Even before then, your recipient needs to know at a glance that you’re a trusted source. Either make it crystal clear by smart use of your “From” field, or start every subject line with the same identifier.
  • Useful and specific first: Of the four “U” fundamentals, focus on useful and ultra-specific, even if you have to ignore unique and urgent. There are plenty of others who work at unique and urgent with every subject line — we call them spammers. Don’t cross the line into subject lines that are perceived as garbage. But do throw in a bit of a tease.
  • Urgent when it’s useful: When every message from you is urgent, none is. Use urgency when it’s actually useful, such as when there’s a real deadline or compelling reason to act now. If you’re running your email marketing based on value and great offers, people don’t want to miss out and need to know how much time they have.
  • Rely on spam checking software: We all know that certain words trigger spam filters, but there’s a lot of confusion out there about which words are the problem. Is it okay to use the word “free” in a subject line? Actually, yes. All reputable email services provide spam checking software as part of the service or as an add-on. Craft your messages with compelling language, let the software do its job, and adjust when you have to.
  • Shorter is better: Subject line real estate is valuable, so the more compact your subject line, the better. Don’t forget useful and ultra-specific, but try to compress the fundamentals into the most powerful promise possible.

3. The Secret Sauce:

Getting someone to trust you with their email address is not easy. Twelve years ago when I started in email publishing, people would sign up for anything remotely interesting.

No longer.

But if you do gain that initial trust, and more importantly, confirm and grow it, you can write pretty lame subject lines and people will still read your messages. Just as with that ditzy friend from high school who nonetheless always has something interesting to say, trust and substance matter most.

Don’t get me wrong, writing great subject lines combined with the more intimate relationship email represents is much more effective. And you have to get your initial messages read to establish the relationship in the first place. Regardless, your open rates will improve based on the quality of your subject line.

But there’s something special in this jaded digital age about being invited into someone’s email inbox. You just have to over-deliver on the value to ensure you’re a treasured guest who gets invited back.

The inbox can be a stressful place. How do you make it brighter?

React.js Vs Angular.js: What You Should Prefer for Web Development

Without a doubt, JavaScript is the heart of programming language!

Why?

  1. 70% of software developers prefer using JavaScript for web development. (Statista)
  2. JavaScript is used as a client-side programming language by 97.1%of all the websites. (W3Techs)

JavaScript has become widely popular and many tech giants are taking advantage of it. From the many JavaScript frameworks, Angular and React are amongst the top ones, which is generally prefer by the software developer.

But, choosing one from both of them is a difficult thing.

React vs. Angular is a never-ending debate. However, this post will not help you to select the best one, neither other articles available on the internet, but will surely guide you with the complete knowledge that suits your project the best.

Let’s get started.

Brief Overview and History

react vs angular
Image of React vs Angular

React

React JS is an open-source JavaScript library used to build a UI component for Single Page Application. It is backed by Facebook and used in products like WhatsApp & Instagram.

Other than Facebook, leading tech brands like Amazon, Pinterest, Airbnb, Twitter, Udemy, Paypal, Reddit, Tumblr, Walmart and many more are using React for web development.

Facebook even came up with the React Native for developing native mobile apps using JavaScript and React.

Angular

Angular is a Type-Script-based open source javascript framework for web and mobile development. Backed by Google, it is an enormously popular front-end framework for web development.

Moreover, it came a decade ago in 2010, then to pace up with the latest technologies, Angular keeps rolling up with new upgrades at regular intervals. The latest version Angular 11 has an enormous number of features and functionalities.

Performance: Which is Better?

React

React.js uses virtual DOM (Document Object Model) which enables to access and modify the document content, layout, and structure; it exists entirely in memory. This virtual DOM is light in weight; thus reduces the load on the browser.

React reuses the code components, which doubles the productivity and optimizes the code practice.

For instance, you just want to update the contact number in your profile, DOM updates the entire tree structure of HTML tables until it reaches the needed data, while virtual DOM updates only the contact number without updating the entire HTML. This results in faster performance – no matter the size of the app.

Angular

Angular works on real DOM which makes the app slower while dealing with tons of data requests. However, Angular uses elements like Shadow API to make the app work fast. A wide range of other tools and practices are available to build Angular apps faster, better, and to monitor performance.

Architecture and Structure

React

React.js is all about components; it builds UI by breaking them into components

React is made up of multiple components and each component has logic and controls.

Some of them include:

  • Redux
  • Babel
  • Webpack

Their codes are readable and logically structured. React provides only view and model layer- controller is added as per the usage from other libraries.

Angular

Angular is a framework that provides a complete set up to start with the application. No need to look into libraries, routing solutions, and structure; simply start building.

Angular is based on three layers: model- view – controller. In Angular, the application is broken into different files enabling to reuse of the components in a different part of an application.

Bundle Size: Does size matter?

React

File size matters to run a large and complex application. Compared to Angular, the bundle size of React is small. The smaller the file, the faster it works. React uses webpack to split the code into smaller parts to reduce the bundle size.

Angular

Angular apps generally have bigger bundle sizes when compared to apps written using other JavaScript frameworks. It does not include the entire bundle of Angular framework in the user’s app. Many compression tools and bundle analyzers for Angular are available to reduce the size but the developer needs to perform some extra optimizations.

Learning curve: Which is easy?

React

Are you good at JavaScript? If yes, then learning React.js is not difficult for you. As this framework is quite simple, you can make the app easily.

Developers may find it difficult to learn at the initial stage but since there are no logical structures to learn – no complexities, it is a favorable tech stack.

New updates are rolled out frequently and react even provides useful resources, making it easy for the newbies to develop an application without any hassle.

Angular

Angular is quite difficult to understand compared to react. Since it has a huge library, learning all the concepts is quite time-consuming.

It provides resources to solve complex issues but there are some syntax and components to learn which is quite unavoidable.

Although TypeScript is similar to JavaScript, developers need to put some extra efforts.

Unidirectional or two direction Data Binding?

React

React supports one-way data flow, which means the application’s data flows in a single direction, and only the model can change the app’s state.

The developers cannot alter the UI elements without updating the model state. One way data binding makes code more stable provides a better overview and also makes debugging of an app much easier.

Angular

Angular supports bidirectional data-binding which means sharing the data with a component class and its template. If you change the data in one place, it will affect elsewhere.

This two-way approach provides a well-organized coding structure, making the framework more flexible and developers can hassle-free work with.’

Market Share and Trends

Both frameworks are highly popular; both of them are highly used by the developers but the demand for React is increasing every year.

Let’s see how:

  • According to Statista’s, world-wide developer survey, React.js is used by 35.9% of developers and Angular is used by 25.1% of developers.
  • React has 160k stars on GitHub, and Angular has 59.5k stars on GitHub.
  • The npm trends shows more downloads for React than Angular. Google Trends also reports more searches for React across the world.
  • As per JetBrain’s developer ecosystem 2020 report, React is the most popular front-end development framework.

Community and Support

As React is developed by Facebook and Angular is maintained by Google, both of these frameworks has huge community support. Both frameworks provide updates and releases frequently. Software developers and designers collaborate and contribute frequently to increase the credibility and reliability of the framework.

We have pointed out the majority of the comparison needed to select between react and Angular. With this comparison, you might have got a clear scenario of React and Angular.

Let’s quickly have a look at their advantages.

Advantages of Angular

  • Open Source
  • Reusable Components
  • Can be customized easily
  • MVC pattern simplified
  • No pre-requisite knowledge is required
  • Unit Testing ready
  • Search-Engine Friendly

Advantages of React

  • SEO friendly
  • Virtual DOM
  • Simple to migrate
  • Easy Debugging
  • Boosts Performance
  • Simple User Interface

A Quick Comparison: React vs Angular

Factor  React  Angular
Release Date 2013 2010
Backed By Google Facebook
Language JavaScript Type-Script
Learning Curve Less High
Architecture Component-Based, Flexible Component-Based, Fixed
Data Binding One-Direction Two-Direction
Dependency Injection Not supported Supported
Type Library Framework
Compatibility Backward Full-compatibility
Performance High High
DOM Virtual Real
Ideal for Dynamic apps Large web apps
Companies using Facebook, Uber, Netflix, Twitter, Walmart, etc. Google, Google apps, Forbes, Wix, etc.

When to use React?

  • If your developers are hands-on with JavaScript, HTML, and CSS
  • If you have a complex and huge app to develop
  • If you’re developing computational apps, dynamic apps, single-page apps, native mobile apps

When to use Angular?

  • If you know Typescript, Java, and a previous version of Angular
  • If you’re ready to spend more time learning syntax and components
  • If you’re planning to develop low to medium level complex apps
  • If you need a large scale, feature-rich application
  • If you’re planning to develop enterprise software, hybrid apps, or progressive web apps

What’s your take? Angular or React?

Both the framework has its own competence, both has its pros and cons. Although React seems to be simple, you have to learn other JavaScript tools and frameworks. On the other hand, Angular is powerful and offers comprehensive web development though it is quite complex.

Both frameworks have a great support community and are regularly updated with better features and functionalities to provide the best user experience.

Ultimately, choosing Angular vs React depends on your personal preference, size of your project, requirements, team size, budget, etc.

Still, if you can’t decide, which the best for your business is, you can hire our skillful Angular Developers or React Developers. With their expertise, they will help you to build your application right from the requirement of development.

Talk with us today!

Top 5 WordPress Appointment Booking Plugins, Offering the Best of Online Booking

Isn’t it difficult to manage a huge number of appointments on phone calls?

Doesn’t last-minute cancellations/bookings drive you crazy?

Are you stressed-up, if your bookings are unorganized?

The answer to this questions may be “YES”.

The solution to the above problem is – online appointment booking plugin. It can be very rewarding if you want to schedule appointment in a manageable way.

In this digital-savvy world, everything happens at a finger-tips and so do the bookings. However, you need to make sure that your customers can easily take the advantage of your services.

Installing the simple appointment booking plugin on your website will enable your customers to book the appointment at the time of their convenience. Moreover, these booking plugins sync information with your calendar so that you can stay organized and maintain your schedule on-the-go.

There are 57,868 plugins present in the WordPress repository of various categories. Although, you will get a lot more options for appointment bookings but may leave a room for confusion; which to choose from?

Before we jump to the list, let’s jot down few criteria to automate your booking based business.

Some of the required features for booking plugins:

  • Should be responsive so that customers can book the service from any device; from anywhere.
  • Should provide booking notifications, e-mail confirmations to the admins and customers
  • Should sync the information with the Google calendar
  • Should be able to allow customer requests within business hours or the available time slots.
  • Should be customizable
  • Should accept online payments
  • Should provide detailed reports to track the conversions

The above-mentioned are some of the basic features, which every plugin may possess to expect from the appointment scheduling plugins.

With thorough research from various sources, we have come up with some of the significant online reservation plugins.

Let’s zero down the best of the 5:

1. Amelia – Events and Appointment Booking Calendar

Amelia is the next-generation handy appointment booking plugin that enables to set up a fully-featured automated booking system. Built with enterprise-level technology, it provides a smooth user experience, and its easy-to-use features make the booking process manageable and organized. Customers can easily use interactive appointment calendars to find an appointment time with the specific staff at a specific time. You can install and configure it in just a few clicks; doesn’t require any training to use.

Key Features

  • An insightful dashboard that summarizes business KPIs
  • Step-by-step booking process
  • Tracks the appointments and conversions
  • Searching and Filtering options to make the process easy
  • Accepts payments via PayPal or Stripe
  • Offer coupons/discounts
  • Sends emails or SMS notification
  • Syncs with outlook calendar or Google Calendar

As it is reliable, flexible, and user-friendly, it is a must-have for any business.

Try Now

2. Booking Calendar

Booking Calendar is one of the ideal appointment booking plugin having customizable forms and sleek design. It is a smooth plugin and provides an out-of-box booking experience.In this plugin, data is stored in the WordPress database; thus refrains you from creating third-party accounts. If you want to import feed from third party source like Airbnb, TripAdvisor, etc. you can do it easily Having 60,0000 active installs, easy-to-use, and scalable functionalities, it can be a perfect fit for your business.

Key Features

  • Prevents double booking for already reserved days and allows multiple booking for the same day in the same calendar
  • Provides time-slot booking for specific time slots
  • Customizable designs of calendars
  • Modern front-end and back-end interface
  • Multi-language support
  • Sync with Google Calendar
  • E-mail notification, searching, sorting makes it easy to manage bookings

This plugin is very easy to integrate; just activate it and insert the booking short code into the post/page, and you’re done. For some advanced features, it is recommended to buy the pro version.

Download Now

3. Simply Schedule Appointments – Booking Calendar

Simply schedule an appointment is quite comprehensive and another valuable plugin for appointment booking and reservation. Though it is still growing, it has received several accolades in a short time. This plugin has an interactive setup wizard that helps you to quickly guide with set up and other basics in just 5 minutes. You can easily set the minimum time between appointments and even limit the number of daily appointments.

Key Features

  • Accepts payments via PayPal or Stripe
  • Flexible, fast, and powerful
  • Set customizable working hours
  • Syncs with google calendar
  • Manage multiple locations
  • Drag-and-drop functionality
  • Integrate with 15 other tools
  • New updates keep on rolling

SSA is available for free as well as it has a premium version that provides access to all the advanced features. SSA has all the features you need and is beautifully designed to provide a great user experience.

Download Now

4. Bookly

Bookly is one of the most renowned and popular appointment booking plugin in WordPress. Because of ease of use, neat design, hassle-free navigation, and new updates rolling throughout the year, it has approximately 40,0000 installs and 1000s of positive reviews. With its powerful admin interface, customer list and appointment calendar can be easily and effectively managed. Being fully responsive, Bookly can be used across any device be it a laptop, tablet, or smartphone.

Key Features

  • Multi-language support
  • Fast online booking
  • Woo-commerce compatibility
  • Unlimited number of booking forms
  • Customizable e-mail, SMS notification
  • Integration with the PayPal

This plugin has both free and paid versions. It is easy to install and doesn’t require any coding experience. Bookly is the best choice for those who are looking for a premium appointment scheduling solution.

Want to try Bookly before you buy?

TRY NOW

5. Appointment Buddy

Lastly, Appointment Buddy is another one of the best plugins that help to book your appointment with ease. This plugin is 100% responsive, compatible with all devices, and displayed on all screen sizes. You can stay more organized and productive by easily monitoring the calendar from a bird view. This plugin enables to manage of bookings from a single place in an organized way. Its’ sleek interface makes the navigation easy and hassle-free.

Online Appointment Booking

Key Features

  • Unlimited services, Unlimited Bookings, and notifications
  • Syncs with Google Calendar
  • Easy time-slot management
  • Payment Gateway Integration with PayPal and Stripe
  • Provides detailed and accurate reports
  • Track Conversions
  • Multilanguage support

No knowledge of coding is required; just configure it and you are all set to start with an online booking system in no more than 10 minutes.  It is packed with useful features and ideally a smart choice for doctors, bakers, spa, salons, clinics, etc.

Why don’t you try before buying?  Download it free from Code Canyon – Click Here

Which Plugin to choose from?

When you observe the above-mentioned plugins, one thing is common – all of these plugins provide automated booking solution. All of these plugins use the best tech stack to deliver a great and hassle-free experience. Whatever your business is, the above-mentioned list will provide you out-of-box experience.

However, choosing the plugin for your business depends on your budget, requirements, and size of your company.  Every plugin has its merit and demerits; so compare and then decide.

Please let us know in the comment section, which plugin did you find the best?