Articles

Inversion of Code – HTTP Lambda functions

Normally when we create an HTTP REST endpoint, we add code to our server endpoint, and assume the client provides the arguments to our code. What if we could reverse this responsibility, such that the client provides the code the server executes?

Among other things, this implies we can have one endpoint doing "everything". We wouldn’t need to create dozens of endpoints to expose our API, and we could get away with creating a single endpoint, that clients invokes, regardless of what they want to do. If the client wants to create a record in our database, read records from our database, or count records in our database is irrelevant – He’d still use the same endpoint for all of these tasks. In addition, the client could become much more creative in regards to how he interacts with our API, and do things we couldn’t even imagine as we created our API. The latter of course sums up the problem, which is that clients could inject malicious code into our server.

Source de l’article sur DZONE

7 All-Too-Common Landing Page Errors You Must Avoid

And it does this 24 hours a day, 7 days a week, 52 weeks a year without ever asking for a pay raise.

But this is true only if your website landing page is designed well, maintained, and optimized to the gills. The art and science of a flawless landing page is beyond the scope of a single article, but we can start with helping you spot seven of the most common – and damaging – trouble spots.

1. Unclear Value Statement

Typically, new visitors to your page will only stay on it 3 to 15 seconds before they get distracted. In that span of time, you must offer a clear and visible reason to stick around and interact with the page.

That reason is your value statement. What value do your readers get in exchange for the time you ask them to spend? High-quality content is a must (and hopefully a given), but you also need to pull them in so they experience that content.

Does your landing page do that? If yes, great! If no, you should fix that. If you’re not sure, ask yourself:

  • Is there a compelling, visible headline that expresses the end benefits clearly and succinctly?
  • Is there a subheadline explaining your offering in more detail?
  • Are there supporting graphics that pull the eye toward your headline and subheadline?

If there aren’t, add them now.

2. Poor Signposting

Your landing page isn’t just there to be pretty. It’s meant to convince people to take action. If you don’t make it easy to find your call to action, most viewers won’t look for it.

deliver enough value to make it worth the hassle

You must make it clear — in as succinct and efficient terms as possible — why the action you want a reader to take will deliver enough value to make it worth the hassle. Tell them, in words that stand out from the rest of the page, what you want them to do next and what they’ll receive for doing so.

Improving your signposting stats by asking yourself the following questions:

  • Do you have a clear understanding of what the next step in a visitor’s customer journey should be?
  • Is it easy to find and take that step on your website?
  • Does your copy make a clear and compelling argument in favor of taking that step?

If you can answer yes to all three questions, your signposting is likely good (or at least good enough for now). If not, now you know what you have to do to improve it.

3. Slow Loading Time

Remember that 3 to 15-second maximum time limit we mentioned earlier? That span includes time spent waiting for your landing page to load, and every microsecond of that wait increases a reader’s likelihood of bailing on the whole thing. You must get your loading time to be as quick as possible.

Viewers who exit your landing page early – including while still waiting for it to load – increase your site’s bounce rate. Higher bounce rates reduce your rankings on Google and other search engines, meaning a page that loads too slowly not only impresses fewer viewers, but it also gets fewer viewers overall.

Improving your loading time is usually a job for your tech team or whoever in the office is responsible for overseeing your hosting service. That said, here are a few of the most important ways to optimize this important factor:

  • Optimize image size, file format, and compression;
  • Clean up your database by deleting saved drafts, old revisions, unused plugins, and similar virtual detritus;
  • Confirm that your WordPress theme (if applicable) is optimized for quick loading;
  • Use a content distribution network for file storage;
  • Analyze server response time with your hosting service, and work with them to reduce it;
  • Install tools that leverage browser caching;
  • Fix all your broken links;
  • Remove all render-blocking from JavaScript;
  • Reduce the number of redirects necessary to reach your page;
  • Optimize your code, especially in CSS, JavaScript, and HTML;
  • Enable file compression — except for on images;
  • Replace all PHP content with HTML wherever possible.

This is technical, detailed work, but it’s important. If you don’t have team members up to these tasks, it can be worth hiring an outside consulting company to do it for you.

4. Only One Landing Page

You have a good idea of your ideal customer’s hopes, fears, pain points, demographics, likes and dislikes, and other important information. If you have several different types of customers, you can’t use the same landing page for each of your customer groups. Each group has different characteristics that will prompt them to follow your call to action, so you don’t want to offer just one landing page.

Similarly, you also probably have more than one product or set of content and offerings to generate sales. Having only one landing page can lose leads because the page is only optimized for one of those products or content sets.

Ideally, you should have a unique landing page with a tailored offer for each of your customer models that would send those individuals to each of the products and content sets. An ad for professionals in their 30s making over $50,000 a year would lead to a landing page built for them, while an ad for heads of households working from home would lead to a landing page built for them.

Yes, that means a company with three profiles and four content sets would need 12 landing pages. And yes, it’s worth that kind of effort.

5. Insufficient Visuals

“A picture is worth 1,000 words” is ancient wisdom, but it’s far from true in the internet world – it’s actually worth more. A quick look at social media and blog performance will tell you many people will look at, enjoy, and share a photo or video, but not many will read an entire 1,000-word post on the same topic.

How well your landing page performs depends on the images you use and how you present them. Does your page’s layout conform to the best practices of visual web design:

  • Including images that emotionally reinforce the value expressions of your product’s core benefits;
  • Containing sufficient white space to not be intimidating;
  • Providing data images to indicate the worth of what you do;
  • Using visual design cues to lead the eye toward your conversion points;
  • Applying color gradients to highlight offers and your call to action;
  • Using infographics to replace the dreaded “wall of text”.

If you can say yes for half of these things, carry on. If not, this point may be among the better places to start with a landing page redesign.

6. Asking For Too Much, Too Soon

Craft a custom calls to action that meet all levels of interest, need, and desire

Not every landing page visitor is created equal. Some are hardcore fans and experts in what you do, ready for a 10,000-word white paper that dives deeply into the research supporting your use case. Others might have heard about your industry on an Instagram page and want to know the basics of what you do.

There’s nothing worse than going to a website and being asked for all of your personal information right away. If your call to action requires too much knowledge, too deep a commitment, or even too much personal information, consider scaling back. Otherwise, you risk turning away potential customers.

Better yet, go back to No. 5 above and build a new landing page for beginners and early-stage leads. Craft a custom calls to action that meet all levels of interest, need, and desire.

7. No Trust Elements

Offering some type of authentic customer referral or testimonial is important. It all boils down to the same thing: telling those who read your landing page that other people already like what you do and how you do it.

Examples of effective modern trust elements include:

  • Quotes from positive reviews next to a photo of the reviewer;
  • Screenshots of social media posts praising your company or product;
  • Short video interviews of happy clients;
  • Blurbs for industry thought leaders approving of you;
  • Images portraying business credentials and certifications;
  • Links to positive press coverage;
  • Logos of known business customers who buy and trust your brand.

Final Thought: What’s Next?

There isn’t one guaranteed way to turn a landing page from something full of holes into something perfect. But first, run an audit of your landing page using this list as a guide. Note which errors are there. Next, sort them in order of what takes the least time to fix to what takes the most time to fix.

Then, fix them in that order. We find that getting the quick fixes done builds excitement and momentum, whereas starting with a harder fix can mire down the whole process.

If none of these errors exist on your landing page, congratulations. There’s still lots of work to do on your website and content marketing, but it’s not among these rookie mistakes.

 

Featured image via Pexels.

Source


Source de l’article sur Webdesignerdepot

How to Migrate Data From Neo4j to Nebula Graph

This article mainly introduces how to migrate your data from Neo4j to Nebula Graph with Nebula Graph Exchange (or Exchange for short), a data migration tool backed by the Nebula Graph team. Before introducing how to import data, let’s first take a look at how data migration is implemented inside Nebula Graph.

Data Processing in Nebula Graph Exchange

The name of our data migration tool is Nebula Graph Exchange. It uses Spark as the import platform to support huge dataset import and ensure performance. The DataFrame, a distributed collection of data organized into named columns, provided by Spark supports a wide array of data sources. With DataFrame, to add new data source, you only need to provide the code for the configuration file to read and the Reader type returned by the DataFrame.

Source de l’article sur DZONE

Connecting Sequelize To a PostgreSQL Cluster


Prologue

In a previous post, I showed how to automate a PostgreSQL fault-tolerant cluster with Vagrant and Ansible.

This kind of setup makes our database cluster resilient to server failure and keeps the data available with no need for human interaction. But what about the apps using this database? Are they fault-tolerant too?

Source de l’article sur DZONE

Create CRUD endpoints using Hyperlambda

Hyper implies web, and lambda implies function – Hence, Hyperlambda translates into "web functions", and this is a fairly accurate description. However, hyper also implies "super fast", and by super fast here, I mean super fast! 1 minute and 45 seconds was what I needed to create CRUD endpoints wrapping my database table, manually creating my endpoints in the following video, while explaining how I did it simultaneously.

According to modern studies in the subject, the number of lines of code your project consists of, is directly proportional to the amount of energy and resources you’ll need to spend maintaining it. Hence, the fewer lines of code, the fewer resources are required to maintain it. In the video above, I copy and paste 50 lines of code, and I end up with 4 HTTP REST CRUD endpoints. Comparing this to C# is arguably unfair. Simply the boiler plate code for my Controller, would probably end up exceeding this number. You can find my code for all endpoints below.

Source de l’article sur DZONE

Exciting New Tools for Designers, September 2020

It’s fun to see new website design tools that reflect current times and the state of the world. That’s very true this month with new databases devoted to diversity and women in technology, as well and resources to make your design life easier.

Here’s what’s new for designers and developers this month:

Ztext.js

Ztext.js is an easy to implement, three-dimensional typography tool for the web that works with any font you want to use. With the popularity of 3D effects and animation, this tool has a lot of practical applications. Everything you need, including documentation, is available from developer Bennett Feely on his website and GitHub. (It’s free but you can show appreciation with a donation if you like it.)

Gradient Magic

Gradient Magic is a free gallery of fun and interesting CSS gradients. You can sort through a random selection or by category of color to find just the right gradient for your project. Some of them would make really neat backgrounds or image overlays.

Impossible Checkbox

Impossible Checkbox is a fun little divot that you’ll want to play with and emulate. Click or tap the slider to activate and a nifty little friend pops up. Now here’s the fun part: You can’t leave it checked, and take note of the changing expression of the checkbox character.

Diversify Tech

Diversify Tech isn’t your average job board; it is a collection of resources – and opportunities – for underrepresented people in technology. It includes a weekly roundup and everything from scholarships, to events, to jobs, to speaking opportunities.

Women in Tech

Women in Tech is a list of apps made by women. The apps are ranked and chosen based on upvotes and is a good resource if you want to help support women-owned projects. Search or submit an app for inclusion.

Devello Studio

Devello Studio is a tool that allows you to write code in the cloud. You don’t have to install anything and no matter where you are, just can open a project in-browser, and continue development where you had left off last time. Plus, it works with GitHub support built right in.

Hustl

Hustl is a premium Mac app that allows you to create time-lapse videos of your screen. Use it to show off work or projects or create a cool video for your portfolio. Plus you can use it to capture just one active app so you don’t have to do a lot of editing later.

FeedBaxley

FeedBaxley is a user feedback tool that helps you (and users) figure out what’s frustrating before it becomes a real issue. You can customize everything to match your brand and set it up with copy and paste tools. Feedback integrates with Slack, making it easy for you to analyze information with a team.

BestTime

BestTime launched a major update with a new tool that makes it possible to analyze visitor peaks of public business (cafe, gym, etc) for whole areas. Using the heatmap API you can find businesses at popular times, locations, or by business type.

Pixeltrue

Pixeltrue is a new collection of free SVG illustrations and Lottie animations in a trendy style. They are available for commercial and personal use and add a bit of whimsical delight to website projects. (The error illustrations are particularly fun.)

Previewed

Previewed has tons of cool and realistic mockups that you can use to create the perfect setting for digital projects. You can find mockups for a variety of devices and cool panoramas that work perfectly for elements such as app store previews.

Alt Text Overlay Bookmarklet

The Alt Text Overlay Bookmarklet solves a common problem: It shows what images use alt text and what that text is. The tool was created by Christian Heilmann and he’s put it on GitHub for you to play with and test.

MergeURL

MergeURL allows you to merge and shorten up to five links. Enter the links and mergeurl.com/o/xxxxx, for example, will open all the URLs associated with that link. The tool is free to use and you don’t have to register to use the service.

Infinity Search

Infinity Search is a new search engine that lets you look for things privately and efficiently. Search the web, images, or videos. Here’s a little about how it works: “While we retrieve results from other search engines like Bing and Wikipedia, we also have our own indexes of links that are displayed in our search results. We are actively working on improving these indexes and they will only get better.”

Blade UI Kit

Blade UI Kit is a set of renderless components to use in Laravel Blade Views. It’s built for the tall stack and is completely open source. It includes 26 components and you can contribute as well.

Trusted News

Trusted News is a Google Chrome extension that uses AI to assist in evaluating the quality of the online content. In its first release, it scores the objectivity for a selected article, testing whether it is written from a neutral perspective as opposed to a subjective one.

BaseDash

BaseDash allows you to edit production data without coding. You can make changes to the database with the ease of a spreadsheet. This tool makes it easy to find and edit information in a hurry. It works with all major databases including MySQL, PostgreSQL, Amazon Redshirt, Microsoft SQL Server, and more.

Email2Go

Email2Go is a service that helps you create email templates and test them on dozens of physical devices and applications. It’s free right now while it is in early release.

Iconscout Converter

The Iconscout Converter allows you to convert icons and images from one file format to another for free. Convert SVG, PNG, JPG, and PDF with a single click.

Shape 2

Shape 2 is a massive collection of 5,000+ unique icons and illustrations with a full-blown web editor. Customize colors, stroke width, size and full variations that can export to SVG, PDF, PNG, GIF, and React. This is a premium tool and includes a discounted release price for now.

Aestetico

Aestetico is a beautiful sans serif that includes a massive family with 54 styles. This premium typeface is highly readable and has modern lines and curves that make it a great option for a variety of uses.

Arcades

Arcades is a modern display font with a retro, 1980s-style vibe. It includes regular and italic styles.

Brimington

Brimington is a handwriting style typeface with rough strokes and smooth curves. It includes a set of 227 characters and 219 glyphs in a readable design.

California Signature

California Signature is a typeface duo with a slab serif and handwriting style that are perfectly paired. The thick and thin options provide a yin and yang effect.

Eastblue

Eastblue is a script typeface with long swashes and interesting curves. It includes a solid character set and is free for personal use only.

Source


Source de l’article sur Webdesignerdepot

Editors’ Picks: Summer 2020


Agile 

AI

Big Data

Cloud

Database

DevOps

Integration

  • Mulesoft 4: Continuous Delivery/Deployment With Maven by Ashok S — This article is a great example of what we want every tutorial to look like on DZone. The main aim of this article is to provide a standard mechanism to release project artifacts and deploy to Anypoint Platform, from the local machine or configure in continuous delivery pipelines.
  • Integration With Social Media Platforms Series (Part 1) by Sravan Lingam — This article helps you to build a RESTful API through MuleSoft that integrates with LinkedIn and shares a post on behalf of one’s personal account. I like this article because, in the age of social media, it’s so important for businesses to be connected and integrated!

IoT

Java

Microservices

Open Source

Performance

  • What Is Big O Notation? by Huyen Pham — Aside from a silly name, this article is an example of an in-depth analysis on a little-spoken-about concept. In this article, take a look at a short guide to get to know Big O Notation and its usages.
  • Is Python the Future of Programming? by Shormisthsa Chatterjee — Where is programming going? This article attempts to answer this question in a well-rounded way. The author writes, "Python will be the language of the future. Testers will have to upgrade their skills and learn these languages to tame the AI and ML tools".

Security

Web Dev

  • A Better Way to Learn Python by Manas Dash: There’s so many resources available for learning Python — so many that it’s difficult to find a good and flexible place to start. Check out Manas’ curated list of courses, articles, projects, etc. to get your Python journey started today. 
  • Discovering Rust by Joaquin Caro: I’m a sucker for good Rust content, as there’s still so many gaps in what’s available. Joaquin does a great job of giving readers his perspective of the language’s features in a way that traditional docs just 

Source de l’article sur DZONE

Distributed SQL Essentials

Distributed SQL databases combine the resilience and scalability of a NoSQL database with the full functionality of a relational database. In this Refcard, we explore the essentials to building a distributed SQL architecture, including key concepts, techniques, and operational metrics.
Source de l’article sur DZONE

Introduction to PDO Extension: How to Use PDO for Different Databases

In this article, we will talk about what a PDO is, why is it necessary, and how to work with it.
Let’s start with the fact that for a long time php-programmers have been discussing the fate of the native functions to work with the database: mysql_connect, mysql_query, and others. The fact is that in upcoming versions of PHP data will be erased, these functions will go "Obsolete". Thus PHP developers should force on other tools to work with the database.
Currently, there are two alternatives solutions; mysqli extension and expansion of PDO. In this article, we will discuss PDO.
PDO – PHP Data Objects – is a layer that offers a versatile way to work with multiple databases.
This layer has several advantages:
  • PDO allows you to work with different databases, such as: MYSQL, Oracle, PostgreSQL and many others.
  • PDO allows you to work with a prepared statement
Now let’s talk about all this in more detail.

Connecting to a Database Using PDO

Before you start working with PDO, you must make sure that you have the correct extension – php_pdo_mysql.dll. This can be verified through the function phpinfo(). If everything is okay, you are good to go.
First we need to connect to the database:
PHP

 

xxxxxxxxxx
1

15

 

1

/ / MuSQL

2


3

   $Database = new PDO ("mysql: host = $ host; dbname = $Databasename", $username, $password); 

4


5

/ / PostgreSQL

6


7

   $Database = new PDO ("pgsql: host = $ host; dbname = $Databasename", $username, $password);

8


9

/ / MS SQL

10


11

   $Database = new PDO ("mssql: host = $ host; dbname = $Databasename", $username, $password); 

12


13

/ / SQLite

14


15

   $Database = new PDO ("sqlite: my / database / path / database.db");

As you can see from the example, each database connection string is slightly different from each other
You should always use try/catch when you are trying to connect to the unit, so that on exception we do not disclosed any data to the user.
PHP

 

xxxxxxxxxx
1

 

1

try {

2

   $Database = new PDO ("mysql: host = $ host; dbname = $Databasename", $username, $password); 

3

} 

4

catch (PDOException $ e) { 

5

   echo "Unable to connect to database"; 

6

}

Source de l’article sur DZONE