Solace PubSub+ vs. Kafka: Implementation of the Publish-Subscribe Messaging Pattern

In this post, I’ll explain how pub/sub messaging pattern implementation differs in Kafka and Solace PubSub+.

Publish-Subscribe, also known as pub/sub, is a popular messaging pattern that is commonly used in today’s systems to help them efficiently distribute data and scale among other things. The pub/sub messaging pattern can be easily implemented through an event broker such as Solace PubSub+, Kafka, RabbitMQ, and ActiveMQ.

Automattic Acquires Social Image Generator Plugin, Plans to Integrate with Jetpack

Social Image Generator plugin

Automattic has acquired the Social Image Generator plugin, a commercial product that automatically creates social share images for WordPress content from a set of fully customizable templates. The plugin launched in February 2021, with a starting price of $39/year but is now closed to new sales. Daniel Post, the plugin’s creator, is joining Automattic to continue developing it as a new addition to Jetpack’s social media tools.

Automattic is always on the prowl for companies that are doing something interesting in the WordPress ecosystem. The Social Image Generator plugin expertly captured a new niche with an interface that feels like a natural part of WordPress and impressed our chief plugin critic, Justin Tadlock, in a recent review.

“Automattic approached me and let me know they were fans of my plugin,” Post said. “And then we started talking to see what it would be like to work together. We were actually introduced by Chris Coyier from CSS-Tricks, who uses both our products.”

The Social Image Generator plugin has always been a commercial-only product, which tends to limit a plugin’s reach within a market that has been so heavily trained on the freemium model. Its acquisition will undoubtedly get it into the hands of more WordPress users.

“I briefly considered building a freemium plugin but I decided to focus on paid licenses to make sure I could provide great support to all users and, frankly, to see how well it would be received compared to a freemium plugin,” Post said.

Current customers will be able to continue using the plugin “without any changes in the near term,” according to the announcement on the Jetpack blog. Those who have strong opinions about the long-term future of the plugin are encouraged to schedule a session with Jetpack Customer Research to open a dialogue.

“I look forward to the future functionality and user experience improvements that will come out of this acquisition,” Jetpack General Manager James Grierson said. “The goal of our social product is to help content creators expand their audience through increased distribution and engagement. Social Image Generator will be a key component of helping us deliver this to our customers.“

I would not be surprised to see this plugin available on one of Jetpack’s paid tiers in the near future, alongside the Publicize module’s other paid features (scheduling social media posts, tracking and viewing sharing history, and re-sharing existing content). Social Image Generator makes WordPress content more engaging on social media, has built-in support for WooCommerce, and can be extended for use with other plugins. It’s a strategic acquisition where Automattic gains an engineer as well as a new way to make Jetpack subscriptions more compelling.

“We are still figuring out our exact approach, but the initial plans are to integrate the Social Image Generator features with the existing Jetpack social tools like Publicize,” Post said. “The ability to see exactly what your social media post will look like before publishing it right from your WordPress site is incredible, and a big reason why I’m so excited about this acquisition.”

Five Ways Developers Can Help SREs

It is not easy to be a Site Reliability Engineer (SRE). Monitoring system infrastructure and aligning it with the key reliability metrics is quite a daunting task. Whereas, a software engineer's job is to deliver high-quality software.

Relationships between software engineers and site reliability engineers can sometimes be tricky. To begin with, developers are generally assigned to write code that goes into production. Then, there are SREs who are responsible for improving the product's reliability and performance. 

7 Pro Plugins Now Included Free With WPMU DEV Hosting

Over $500 worth of premium WP plugin value, per year, every year – free with every hosting account.

65 million+ downloads…

3 million+ active installs…

One back-to-back Plugin Madness award winner…

Our suite of pro WordPress plugins have proven themselves to be world class and cover all your site-building and optimization needs.

And 7 of them now come freely included with our next generation managed WordPress hosting.

As mentioned, that’s an extra $500+ value (it costs $6 p/m for each individual plugin on a plan) added to your hosting plan, not to mention you’re getting 7 of the best and most reliable WP plugins around.

Premium plugins you can use to supercharge your client sites, and better yet, add more value to your own web design and development packages.

Read on to find out which plugins you can now get 100% free with our hosting and why we decided to package them this way.

Skip ahead:

Why include free plugins with our hosting?

A few reasons…

First and foremost, we want to set our members up for success and give them the best tools and plugins possible.

And in this case, 7 premium plugins that optimize performance, security, SEO, and more, seemed like a no-brainer to package with our hosting.

Our suite of plugins is also something unique to WPMU DEV and not something a lot of other hosts offer.

Finally, the nature of our all-in-one WP platform means that many of our tools and plugins intertwine with one another.

For example, our premium plugins are fully-integrated into our site management tool, The Hub, which is also home to our dedicated hosting tab/interface.

We built it like this so users could easily manage and optimize sites, while also having direct access to our suite of technical hosting tools and features.

So overall it made sense to enable features that are already designed to work together, rather than hide them from hosting users.

*Drum roll* here are the 7 pro plugins you can now get 100% free with our hosting:

1.Smush Pro

Optimize unlimited images on your sites with our most popular WordPress plugin – sitting pretty with over 1.3 million active installs.

a screen of the Smush Pro landing page

Check out our most popular Smush articles:

 

2.Hummingbird Pro

Give your hosting a nice spike in the performance department. Build faster websites and ace PageSpeed Insights with Hummingbird Pro.

A look at the landing page of our performance optimization plugin, Hummingbird

Check out our most popular Hummingbird articles:

 

3.Defender Pro

Your hosting just got a whole lot safer. Protect all your sites from hackers with robust WordPress security and regular malware scans.

A look at Defender Pro our WordPress security plugin

Check out our most popular Defender articles:

 

4.SmartCrawl Pro

Improve and optimize the SEO of your hosted sites. Climb higher in search with powerful on-page and sitewide SEO.

A preview of our WordPress SEO plugin, SmartCrawl

Check out our most popular SmartCrawl articles:

 

5.Forminator Pro

Every site needs engaging forms. Forminator makes it easy with a drag-and-drop form builder, and allows you to create quizzes, surveys, polls – and accept payments.

a preview of our WordPress forms builder, Forminator

Check out our most popular Forminator articles:

 

6.Branda Pro

It’s Branda’s job to make your hosted sites bold, beautiful, and uniquely yours. Use it to white label your WP sites from front to back-end.

a preview of our WordPress branding and white labeling plugin, Branda

Check out our most popular Branda articles:

 

7.Shipper Pro

Our hosting already comes with an easy and automated migration tool, but Shipper can take the wheel and move your WP sites in a few clicks if you’d prefer the plugin route.

a preview of shipper, our expert WordPress migration plugin

Check out our most popular Shipper articles:

Get started with our hosting and the above plugins for free

Adding an extra $500 value to our hosting is amazing and all, but we think you’ll be even more impressed by everything else our hosting has to offer.

You can check out our 4 flexible hosting plans and all the included features.

Also, if you want to test our hosting risk-free, you can also take our Freelancer or Agency plans for a free 7-day trial.

Both plans allow you to host 1-3 sites completely free each year on our hosting.

Create and Sell Your Own Site Templates For Free With WPMU DEV Hosting

Hosting resellers rejoice! You can now create, package, and sell multiple custom site templates – at no extra cost to you.

We’ve been in the biz of cloning WordPress sites and speeding up your site development workflow for well over a year now.

Members also love our expertly-made, default WPMU DEV site templates, which dropped at the same time as cloning.

But in the words of Fleetwood Mac, it’s time to “go your own wayyyyy.”

Because with the help of a sneaky backups hack, our hosting now allows you to create and package your own custom site templates for reselling to your clients.

eCommerce… personal training… marketing agency… flower boutique… whatever you can think of! You can now create custom templates for all of them – any market, any niche.

Best part is, you can create up to 25 custom templates completely free.

Keep reading to learn how to implement this new game-changer and how it fits perfectly into your reseller hosting wheel house.

Skip ahead:

How our custom templates work

It starts with a great source site you wish to turn into a template.

One you’ve worked hard on (but not too hard, thanks to time-saving features like plugin configs ;)) and is ideally sellable as a turn-key solution.

Remember that “sneaky backups hack” I mentioned in the intro? Here’s what I was talking about:

Each custom template you create is actually a full backup of the site you choose to copy, stored on our AWS servers.

When you send a request to create a new template, we create a backup of that site, zip it, and upload it to AWS.

That template/backup is fetched and restored at your chosen new site URL.

And voila!

This template is now ready to be used and accessed in “My Templates” area of The Hub (more on that below).

Creating templates this way gives you two major benefits:

  1. It does not affect your hosting storage at all. 
  2. You can create up to 25 custom templates completely free, no extra cost to you (we’ll also be upping this number in future if the demand is there).

Also, since your template is a full backup of an existing site, it comes readily included with EVERYTHING.

Plugins, themes, users, license keys, settings, site data – it’s all fully-preserved for you.

Finally, it goes without saying, you can ONLY create templates of WPMU DEV hosted sites.

…Now that you know a little more about custom templates and how they work, let’s see them in action.

Creating your first custom template

Did I mention you’ll need to be a WPMU DEV member and have hosted sites with us to use this feature?

The easiest way for non-members to follow along is to take either our Freelancer or Agency plans (they both give you free hosted sites you can use) for a free 7-day spin.

Navigate to your WPMU DEV hosted sites in The Hub (our built-in site management tool) and find the Site Templates tab.

a screen showing the site templates tab
Find the Site Templates to create your first template.

From this tab you can edit the details of your existing templates and create new templates.

Select Create Template to get started.

A screen showing how you can get started creating templates

A pop-up will appear asking you to select the site you’d like to make your template, and to give your template a name and description.

A screen showing how you name and describe your new template
Give your template a name and description. Get the people excited!

Once done, hit Create Template and your new template will be ready in a few minutes, it’s that easy!

A screen showing a new site template loading up
Sit back, relax, and wait a couple mins for this puppy to load.

When it’s finished loading you’ll be notified via The Hub, and you’ll also receive an email letting you know the new template has been created (see below).

A screen showing the template confirmation email
Your brand-spanking new site template is ready!

Another thing to note is that you’re free to create multiple templates from a single site. So if you think you’re onto a winner, use it as your template base as much as you wish (up to our 25 limit of course).

You can also create templates straight from your source site

It’s as simple as selecting the site you wish to turn into a template, and clicking the vertical ellipsis icon to the right of it.

a screen showing how you can directly select a site to turn into a template
Select the site you wish to create a template from.

Select create template to get the ball rolling.

A screen showing where the create template option is
Hit create template and get this ball rolling!

Then rinse and repeat the above!

Two ways to access your new site templates

Once you’ve successfully created a new site template, here’s how you or your clients can access them.

1.During the site creation or cloning process

Your template (and others you create in future) can now be selected from the Create New or Clone options when adding a new site to The Hub.

Hit the “+” icon in The Hub to add a new site and get started.

A screen showing how you add a new site to The Hub
Click the “+” button to add a new site to The Hub.

For this walkthrough we’ll select Create New (the steps for cloning are exactly the same, only instead of creating a site, you’re cloning one).

A screen showing the options to either create or clone a new site
Create or clone a new site to see your templates in action.

Click Create site and a pop-up will appear with the option to create a brand new site or create from template.

Select create from template and you’ll see any templates you’ve created are now visible.

A screen showing how you can select to create a site based on one of your custom-made templates
The template we made earlier, all ready for selection!

You can also select WPMU DEV Templates to see the range of default site templates made by our expert team. Find out more about those in our website cloning article.

Our default templates are also a great example of what’s now possible. Minus a few features we’re still working on bringing you.

But the idea is still the same, multiple site templates for multiple niches and use-cases, for your clients to choose from.

When you hit the ellipsis icon next to your template you’ll also see you have the option to edit the details of your template (change the name and description we added earlier) or delete it.

a screen showing how you can edit the details of your new template
Edit the details, or delete your new template.

And that’s pretty much it!

Hit Use template and you’ll be taken through the standard process of setting up a new WPMU DEV Hosted website – creating a temporary URL, choosing from 10 worldwide server locations, and waiting a few minutes while your site loads.

2. Directly from the “Site Templates” tab in The Hub

As we touched on above, you can also access and manage your custom templates right from the Site Templates overview tab in The Hub.

a screen showing the site templates tab
Select Site Templates to access and manage all your custom templates.

From here you can edit the details of your existing templates, and also easily create new ones as outlined in the steps above.

a screen showing where you can edit and manage your custom site templates
Edit template details, and create new templates from here.

Some PSA’s about custom templates…

  • Preview thumbnail coming soon – Because of their backup nature, your templates do not currently come with a “preview option” like you’ll see with our default WPMU DEV templates. But don’t worry, we’re working on a solution that allows you to upload multiple thumbnails to show off your templates to clients.
  • Delete at your own risk – if you’re thinking about deleting a custom template, please think carefully! Since custom templates are technically backups, once you delete one, there’s no getting it back.
  • No editing or updating – you cannot edit or update any aspect of templates once they’re created. If you do need to edit or update your template, simply create a new one from your updated source site and delete the outdated template.

Check out our site template docs for more info and helpful FAQs.

A recap of our reseller hosting capabilities:

  • It’s been possible to resell WPMU DEV Hosting for a while now and a lot of our members have been perfectly happily doing it manually.
  • We also recently made some behind the scenes to our hosting to ensure it’s 99.9% white labeled from top to bottom.
  • Using The Hub Client, you can setup your own complete client portal, where they can manage sites, access hosting tools, and more.
  • Finally, this is kind of a secret still… but we recently soft-launched our built-in billing system, meaning you can now automate your client invoicing, create subscription plans, manage clients, and more. It’s also included with The Hub and The Hub Client.

And now with custom templates, we’re one step closer to a fully-automated hosting reseller system.

Still to come:

Domains – Offer your clients the opportunity to search for and purchase a domain, which will be automatically mapped to their new hosting and templates set up… yep, be your own GoDaddy!

Check out our product roadmap to keep up with what’s in store for The Hub, The Hub Client, and the rest of our WP plugins.

Get started with templates and reseller hosting for free

Existing members… what are you waiting for?? Jump into your Hub and try turning one of your hosted sites into a resellable site template.

Not a member? Check out our hosting plans and pricing here.

Want to try our hosting for free? The best way to do so is to take either our Freelancer or Agency plans for a free 7-day trial. Both allow you to host 1-3 sites with us every year, for free.

CockroachDB TIL: Volume 1

This is a new series of articles covering short "Today I Learned" topics as I peel the layers of CockroachDB. This is meant to resemble release notes. I decided to mix it up with the format for these posts as they may not justify an entire blog.  Link here for past articles.

Topics

Topic 1: Unit Testing With CockroachDB

I get this question a lot:  "What is the best way to unit test CockroachDB as part of application development?"  Depending on the use case, there are several approaches we can take.  There is a venerable [cockroach demo](https://www.cockroachlabs.com/docs/stable/cockroach-demo.html), which has been my trusty go-to tool when I needed something in a hurry.  It comes with a one-hour license for enterprise features, which you can also unit test, but it also comes with certain limitations. For example, there is reported latency at table creation, ports until recently were random and not configurable, and by default it loads data which you can also overcome with a flag. The goal for cockroach demo is to quickly spin up a working environment for demo purposes and not necessarily something designed for unit testing.

Exploring BERT Language Framework for NLP Tasks

NLP is one of the most crucial components for structuring a language-focused AI program, for example, the chatbots which readily assist visitors on the websites and AI-based voice assistants or VAs. NLP as the subset of AI enables machines to understand written language and interpret the intent behind it by various means. A hoard of other tasks is being added via NLP like sentiment analysis, text classification, text extraction, text summarization, speech recognition, auto-correction, etc.

However, NLP is being explored for many more tasks. There have been many advancements lately in the field of NLP and also NLU (natural language understanding) which are being applied on many analytics and modern BI platforms. Advanced applications are using ML algorithms with NLP to perform complex tasks by analyzing and interpreting a variety of content.

12+ Social Media Feed Plugins for WordPress

Best Social Media Feed Plugins for WordPressModern-day advertising took a giant leap since the popularity of social media platforms. It provides a large set audience, various features to express and spread awareness about the brand and ease to market their products. With over 3.78 billion social media users, marketers see this as an opportunity to spread brand awareness in front of […]

The post 12+ Social Media Feed Plugins for WordPress appeared first on WPExplorer.

332: Running the Finances of a Startup

Dee and Chris talk about “everything money-related” at CodePen. Dee has been managing this stuff since CodePen’s beginning. First largely pro-bono (sorry, Dee), then later as a side gig and part-time job. Dee is full-time now at CodePen, but finance stuff is only part of her role (programming being the main job). It’s a lot of work, but she likes being able to influence CodePen for the better from multiple angles.

At a big company, all this finance work would probably manifest as a COO. But CodePen is just a midling startup, too small really for a COO, but also too big for a homegrown spreadsheet. Dee gets into all the work that goes into finance, from the vital documents that are the Profit & Loss Statement, Balance Sheet, and Cash Flow, to other work like cohort analysis and cap table work.

Time Jumps

  • 00:38 Working with numbers
  • 01:50 How has money been managed at CodePen?
  • 05:39 Outsourcing accounting
  • 20:40 Sponsor: Retool
  • 22:20 What is the finance job at CodePen?
  • 32:43 Tooling for accounting

Sponsor: Retool for Startups

After working with thousands of startups, we’ve noticed that technical founders spend a ton of time building internal tools—which means less time on their core product. So, we built Retool For Startups—a program that gives early-stage founders free access to a lot of the software you need for great internal tooling.

The goal is to make it 10x faster to build the admin panels, CRUD apps, and dashboards that most early stage teams need. We’ve bundled together a year of free access to Retool with over $160,000 in discounts to save you money while building with software commonly connected to internal tools like AWS, MongoDB, Brex, and Segment.

We give you a head start with pre-built UI components, integrations, and other advanced features that make building from scratch much faster. To learn more, check out our site, apply, join webinars and much more at retool.com/startups.

The post 332: Running the Finances of a Startup appeared first on CodePen Blog.

Chatbot Testing: Deeper Insights to Framework, Tools and Techniques

Over the years, the dynamics of business marketing and implementing technology to drive better customer experience have transformed significantly. Chatbots are one such fine example of the same.   

Almost every website you visit these days provides you with virtual assistance with chatbots. More importantly, chatbots help business owners to manage and expand their business services as well as CRM practices.   

Agile Enterprise Architecture Framework: Enabler for Enterprise Agility

Introduction

Enterprises are gearing up to address the ever-changing demands of the business in an agile manner to reap the benefits through reduced time to market. They demand high business agility to achieve organizational goals. With the complexity of the business, models and interactions between businesses are hitting a record high; the IT systems are accommodating these complexities in many ways. Many enterprises prefer to develop product-type configurable systems rather than custom-tailored rigid systems. The architects who provide the technology leadership had to go over and above their scope to address business demands.

Today, the perception towards Architects across the industry is changing. Enterprise Architects expected to code, to win the respect across the organization. The Enterprise Architect also expected to get involved not only in the strategy stage but also in end-to-end implementation. The Enterprise Architect needs to work very closely with the business in defining the business strategy of an enterprise. In addition, Enterprise Architect oversees how to realize the business strategy in the form of implementation.

Intermodular Analysis of C++ Projects in PVS-Studio

Why would we need intermodular analysis? How does the analyzer benefit from it? Normally, our tool is checking only one source file at a time. The analyzer doesn't know about the contents of other project files. Intermodular analysis allows us to provide the analyzer with information about the entire project structure. This way, the analysis becomes more accurate and qualitative. This approach is similar to Link Time Optimization (LTO). For example, the analyzer can learn about a function behavior from another project file and issue a warning. It may be, for instance, dereference of a null pointer that was passed as an argument to an external function.

Implementation of intermodular analysis is a challenging task. Why? To find out the answer to this question, let's first dig into the structure of C++ projects.

Don’t attach tooltips to document.body

Here’s Atif Afzal on using a <div> that is permanently on the page where tooltips are added/removed and how they perform vastly better than plopping those same tooltips right into the <body>. It’s not really discussed, but the reason you put them that high-up in the DOM is so you can absolutely position them exactly where you need to on the page without having to deal with hidden overflow or relative parents and the like.

To my amazement, just having a separate container without even adding the [CSS] contain property fixed the performance. The main problem now, was to explain it. First I thought this might be some internal browser heuristic optimizing the Recalculate Style, but there is no black magic and I discovered the reason.

The trick is to avoid forced recalculations of style:

[…] The tooltip container is not visible in the page, so modifying it doesn’t invalidate the complete page render tree. If the tooltip container would have been visible in the page, then the complete render tree would be invalidated but in this case only an independent subtree was invalidated. Recalculating Style for a small subtree of 3 doesn’t take a lot of time and hence is faster.

Looks like popper.js was used here, so you have to be smart about it. We use toast messages on CodePen, and it’s the only third-party component we use at the moment: react-hot-toast. I checked it, and not only do we tuck the messages in a <div> of our own, but the library itself does that, so I think we’re in the clear.


The post Don’t attach tooltips to document.body appeared first on CSS-Tricks. You can support CSS-Tricks by being an MVP Supporter.

How to Connect Power BI to Dynamics 365: Dashboard Integration

Strong integration capabilities Microsoft Dynamics 365 with other products in the MS ecosystem are its strong suit.  Power BI is a significant part of this ecosystem. Power BI comes with the capability to bring in insights and data from diverse sources. It then visualizes the acquired data, converting it into insights that can either be shared with others in the organization or used for personal convenience. 

These visualizations can be utilized through three methods: Power BI Desktop (a native Windows application), the Power BI service (https://app.powerbi.com), and Power BI mobile apps. These are available on iOS, Android, and Windows platforms. 

Optimization of .NET Applications: A Big Result From Small Edits

One old and simple idea runs like a golden thread through this article: Premature optimizations are evil.

Sometimes it happens that optimization and readability go in slightly different directions. Code may work better, but it is harder to read and maintain. And vice versa — code is easy to read and modify but has some performance problems. Therefore, it is important to understand what we are willing to sacrifice in such cases.

Will the Real Senior Dev Please Stand Up? (2021 Edition)

A year ago I wrote an article for Dzone titled The Rise and Fall of a Senior Developer. Filled with personal anecdotes and stories from my years as a software engineer, the article was a critique of industry practices surrounding the somewhat controversial issue of ranking programmers’ seniority.

I realized that I might sound like an elitist dinosaur patronizing the upcoming generation of software engineers. A sort of “back in my day we did things differently” mentality that every generation seems to age into.

So you can imagine my surprise when the article became not only my most popular submission, but caught the eye of Dan Lines, host of the Dev Interrupted podcast