Archive

Archive for September, 2020

5 ways AI will Redefine Management

September 14th, 2020 No comments

AI is breaking all borders. There is no field where AI doesn’t have a significant role to play. It arranges calls for the sales team, gathers necessary customer information, sends automatic replies to clients, places an order for raw materials with the vendor, monitors manufacturing operations, and controls door-step delivery.

The services mentioned above are easy-to-automate jobs and don’t require much intellectual caliber to perform. But with the gradual advancements in AI, it is now ready to take on administrative tasks that consume much of managers’ time.

This article sheds light on 5 ways how business stakeholders — from front line executives to top management — can transform the way they work and get ready to make AI a crucial part of their professional lives.

1. Let AI handle administrative tasks

Consider a nurse working in a hospital who keeps a tab on the patients’ health. Who will maintain the records if she gets sick or decides to quit at short notice? AI can create, store, update, and share records instantly. Another such example is report writing. News agencies like the Associated Press are using AI software tools to write reports. In 2014, it expanded its quarterly earnings by publishing 4,400 stories, up from 300. The new-found AI capability allows journalists to spend more time investigating and interpreting reports rather than wasting time writing them.

Similarly, our Sage 300cloud ERP software takes control of all your administrative tasks. It monitors the inventory levels and places orders with the vendor as soon as the raw materials’ quantity goes below the set threshold. It controls the entire manufacturing process, manages warehousing activities, and also checks that the finished products reach their destination in time. Thus, allowing you to perform tasks that require high-level mental processing.

2. Improve your judgment skills

The only thing where humans supersede machines is judgment. AI can analyze and capture information from data. But managers have to use their intellect to extract business insights from that information. Empathy, intelligence, culture, and knowledge of organizational culture are the four things that distinguish managers from machines. Unlike machines, managers can visualize data from all corners and angles. They don’t only depend on data and numbers but existing financial and political conditions as well. Managers should understand that technology is there to support rather than replace them.

Sage CRM allows managers to monitor the performance of their teams. For example, the sales manager can instantly download performance reports that depict the following attributes:

  • Average calls per day per salesperson
  • Average time per call
  • Prospect to customer ratio
  • Customer queries resolved
  • Face to face meeting sessions

With essential data at their beck and call, managers can focus on crucial business areas that require human ingenuity and decision making skills.

3. See intelligent machines as your colleagues rather than your competitors

Machines can never substitute human intelligence. They can support their human counterparts in doing trivial tasks, but the final decision always rests in the manager’s hands. Thus, managers shouldn’t be scared that they will lose their jobs to AI in the coming future.

A recent survey reveals that 78% of managers believe that they will trust intelligent machines’ advice while making business decisions.

For example, Sage X3 ERP software is highly mobile and allows adding, updating, or deleting user data from any place and at any time. It provides managers the ability to enhance process quality and customer support. Moreover, it contains various functionalities that support international trade and allows managers to scale and expand to new geographies.

4. Build creative thinking skills

What is the most crucial quality of a top-performing manager?

They can bring creativity into their work. But even more crucial is to unlock the creative potential of their team members. When the manager listens to their teams’ ideas and thinks of ways to implement them, the company benefits as a whole. As AI is quickly taking control over administrative work, skills such as design thinking, creative thinking, and experimentation will be the pillars of differentiation.

Companies no longer need managers who can execute an idea at a fast pace. Instead, they need managers who can layer fresh ideas on old ones and create something new.

5. Build stronger and deeper bonds

The following are the 11 vital skills managers believe they will need to succeed in the next 5 years. The table is in decreasing order of importance.

Skills Percentage
Digital technology 42
Creative thinking and experimentation 33
Data analysis and interpretation 31
Strategy development 30
Planning and administration 23
Social networking 21
People development and coaching 21
Collaboration 20
Quality management and standards 20
Sharper skills within my current domain of expertise 20
Performance management and reporting 17

As you can see from the above data, managers highly regard technical and data analysis skills while looking down upon social skills like networking, coaching, and collaborating with others (points f,g, and h in the table above). As AI takes up more administrative and data analysis jobs, it is high time that managers start giving credence to networking skills. They can achieve much more when they factor in diverse perspectives, experiences, and insights.

While the conditions appear to be daunting, AI will not cause disruptions overnight. But managers need to look outside the box and understand the far-reaching implications of AI and Web App technologies. The corporate world’s face is soon going to change, for which managers need to take reformative steps today.


Photo by Maarten van den Heuvel on Unsplash

Categories: Others Tags:

The Latest Research for Web Designers, September 2020

September 14th, 2020 No comments

In today’s look at the latest research for web designers, we’re going to look at studies and reports from Payoneer, Robert Half, Hootsuite, and Contentsquare to see what they have to say about things like:

  • Current freelancer demand
  • Web designer earning potential
  • A change in ecommerce shopping trends
  • Unseen content rates

1. There’s Light At the End of the COVID-19 Tunnel for Freelancers

Payoneer’s The State of Freelancing During COVID-19 had to take a different approach to reporting on the freelancer workforce than in years passed.

Here’s why:

When 1000+ freelancers around the globe were asked how demand for their services changed during COVID-19, this was the response:

Less than 17% of freelancers experienced an increase in demand for their services and less than 23% saw demand remain the same.

An overwhelming majority of freelancers experienced a shrink in demand, with nearly 29% saying it slightly decreased while almost 32% said it greatly decreased.

However, the data collected wasn’t just assessed on a global scale. Payoneer also looked at freelancing demand trends in various parts of the world:

Notice the differences between Asia and Australia (who were hit with COVID-19 earlier) and North America and Europe (where the pandemic arrived a little later).

It appears as though Asian and Australian freelancers are, economically speaking, already starting to feel the effects of recovery from the pandemic with demand working in their favor.

So, if you’re feeling like there’s no end to the hardships you’ve faced during COVID-19, and were considering dropping your prices, hold on for just a little bit longer. Freelancers are starting to feel optimistic about demand for their services increasing. If you go devaluing yourself now, it’ll be hard to return to where you were before COVID-19 when things get back to normal.

2. Robert Half’s Salary Guide Breaks Down the Earning Potential for Web Designers

On a related note, let’s talk about demand from the employer’s point of view.

According to Robert Half’s 2020 Salary Guide for creative marketing professionals, there’s big demand for digital talent:

So, that’s number one. We know that almost 50% of hiring managers feel as though their digital teams are inadequately staffed. That’s good news for web designers.

However, these same managers complain about creative marketing professionals’ lack of up-to-date skills as the biggest barrier to hiring or retaining them. Although the report doesn’t say so, I’m going to assume this refers both to employees as well as contractors.

This should be a no-brainer. By keeping up with the latest web design trends and techniques, you can make top-dollar for your services — and hold onto those valuable client relationships for a long time.

According to the report, this is how much you stand to earn working in web design (in the U.S.) today:

If you’re eyeballing those salaries in the 95th percentile, then you know what you need to do. Hiring managers have spoken up about what’s holding them back from hiring.

For those of you who feel as though you’ve gone as far as you can as a web designer, it might be worth exploring a new specialty. Like one of the following:

As you can see, designers in the UI, UX, and interactive space (along with web developers) have the opportunity to make more money, even earlier on in their careers. You may also find that more job opportunities are available as you move into these niches (because of less competition), which might cut down on any demand issues you’ve been experiencing because of COVID-19.

3. Hootsuite’s Digital 2020 Report Reveals an Interesting Trend in Ecommerce

Hootsuite’s Digital 2020 report is always a great resource for learning about social media marketing trends. That said, that’s not why I read it.

It’s for hidden gems like these:

It’s no surprise that we’re seeing changes in retail and ecommerce during COVID-19. What is a surprise, however, is how consumers’ online shopping habits have changed.

Here’s what we’re seeing when we compare 2020 ecommerce data with the pre-COVID benchmarks:

Site visits are 1.7% lower than expected. That would make sense considering how budget-conscious consumers are right now. It likely keeps them from going on unnecessary shopping sprees.

Session durations are 3.3% lower. This could be related to fewer site visits. It might also indicate greater consumer confidence. If they come to a website with a plan for what they need to buy, they’re going to take a straight line to conversion instead of spending time window shopping that prolongs their session.

The number of transactions is 19.1% higher and the conversion rate is 21.6% higher. Considering shoppers aren’t spending as much time with ecommerce websites, this point suggests that there’s a massive shift happening from in-store shopping to online shopping.

If that’s the case (even if consumers are currently spending less money), that means web designers need to set their sights on the ecommerce space. With the holiday shopping season expected to start sooner rather than later this year, now is the time to get in there and make sure these sites provide as streamlined an experience as possible.

4. Contentsquare Studies the Unseen Content Rates By Industry

Contentsquare analyzed more than 7 billion user sessions globally to create the 2020 Digital Experience Benchmarks report.

There’s some interesting data in here about website traffic and conversion trends, but what I find the most valuable is the breakdown by industry.

It was this chart, in particular, that really caught my eye:

According to Contentsquare’s data, between 60% and 75% of a website’s content is unseen. Some industries fare better than others, like home supplies and luxury retailer websites, but the numbers still aren’t flattering.

For example, what does it mean when consumers miss 75% of a financial service provider’s content?

Does this mean that the financial advisory content — which I’m assuming comprises the bulk of the pages on the site — is useless or irrelevant? Or perhaps it’s an issue of discoverability since blog content and other resources often take a backseat to service and product promotion?

What about ecommerce brands in the apparel or beauty space?

If two-thirds of their pages are unseen, does that mean their websites are overrun with obsolete inventory? Or, again, is it an issue of navigability and discoverability around the store?

As a web designer, I’d suggest performing your own unseen content analysis on the websites you’ve built. If over 60% of your pages never get any views, you’re going to have to decide what to do with them:

Option 1: Fix the navigation or search function so people can actually find these unseen pages.

Option 2: Remove them from the site and make room for content your visitors actually find valuable.

Wrap-Up

As you encounter research and reports online — whether it’s written specifically for web designers or other creative professionals — spend some time looking for hidden gems.

As you can see above, there’s a ton of relevant research for web designers out there, even if it’s hiding behind the mask of a larger issue or matter. And it’s this data that will help you get a leg up on the competition since it’ll get you thinking about your business and your approach to design in different ways.

Source

Categories: Designing, Others Tags:

Popular Design News of the Week: September 7, 2020 – September 13, 2020

September 13th, 2020 No comments

Every week users submit a lot of interesting stuff on our sister site Webdesigner News, highlighting great content from around the web that can be of interest to web designers.

The best way to keep track of all the great stories and news being posted is simply to check out the Webdesigner News site, however, in case you missed some here’s a quick and useful compilation of the most popular designer news that we curated from the past week.

UX Design for Navigation Menus

How to Choose UI Colors for Mobile and Web Design Wisely

A Step-By-Step Guide to Create your own WordPress Theme

HTML5 Canvas Cheat Sheet [PDF]

Beyond Media Queries: Using Newer HTML & CSS Features for Responsive Designs

The Power of not Messing Around

Tailwind Ink: AI Color Palette Generator for Tailwindcss

Resumey.Pro – Save Time and Effort on Designing your Resume Using Markdown

The Ultimate List of YouTube Channels to Boost your Web Dev’t and Programming Skills

10 Google Font Combinations for Inspiration

Everything You Need to Know About WordPress 5.5

How to Create Stronger Layouts with the 8pt Grid

TEDx Talk: Good UX is a Problem

All the Ways to Make a Web Component

Landing Page 101: How to Design a Landing Page that Converts

30 Free HTML and CSS Book Effects and UI Design

A Guide to Design System Models

15 Designer Curated Color Palettes to Inspire your Next Project

My Thoughts About Editors in 2020

The Napoleon Technique: Postponing Things to Increase Productivity

Announcing TypeScript 4.0

Un-Cancelling 2020: Virtual Conferences for Designers

How to Manage Stress as a Developer

Explaining UX Design to a 5-year-old

How to Win Over Skeptics with Qualitative Research

Want more? No problem! Keep track of top design news from around the web with Webdesigner News.

Source

Categories: Designing, Others Tags:

Read Me!

September 11th, 2020 No comments

A fancy experiential essay from the team at Readymag, which is a tool for building… fancy experiential essays, about fancy experiential essays:

With all the technology addressing readability issues, it’s still design basics that distinguish a readable text from one that isn’t. Here are some simple rules we use ourselves when developing engaging texts and layouts.

I like this advice:

Always start with quality writing.

I find that it’s not only longform that inspires a fancy “art directed” post around here, but quality writing.

I can’t decide if I like that the URL changes as you scroll down the article. Seems a little better suited to hash links.

Direct Link to ArticlePermalink


The post Read Me! appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

Using a brightness() filter to generically highlight content

September 11th, 2020 No comments

Rick Strahl:

I can’t tell you how many times over the years I’ve implemented a custom ‘button’ like CSS implementation. Over the years I’ve used images, backgrounds, gradients, and opacity to effectively ‘highlight’ a control. All that works of course, but the problem with most of these approaches is that one way or the other you’re hard coding a color value, image, or gradient.

You certainly have a lot more control if you specify exact colors, but if you can pull off brightening, darkening, or even a hue-shift in a way that feels cohesive on your site, it’s certainly a lot less code to maintain,

.button.specific-button {
  background: #4CAF50;
}
.button.specific-button:focus,
.button.specific-button:hover {
  background: #A5D6A7;
}

/* vs. */
.button:focus,
.button:hover {
  filter: brightness(120%);
}

/* or maybe you're super hardcore and do it everywhere */
:focus,
:hover {
  filter: brightness(120%) saturate(120%);
}

Direct Link to ArticlePermalink


The post Using a brightness() filter to generically highlight content appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

How to Get Handwriting Animation With Irregular SVG Strokes

September 11th, 2020 No comments

I wanted to do a handwriting animation for calligraphy fonts — the kind where the words animate like they are being written by an invisible pen. Because calligraphy fonts have uneven stroke widths (they actually aren’t even strokes in terms of SVG), it was near impossible to do this sort of thing with typical path animation techniques. But I found an innovative application of SVG masking to achieve this affect in matter of minutes.

While researching how to do this, I gathered information from multiple sources. I combined them together and was able to create the final effect.

Let’s make this together!

SVG masking

If the stroke width of all the letters in a word or sentence are even throughout, then Craig Roblewsky has a nice way to animate handwriting. This is a clever technique that animates the SVG stroke-dasharray and stroke-offset attributes.

Calligraphy fonts like we want to animate here have uneven stroke width throughout the letters, hence it will need to be a and animating it in that way will not work. The trick will be to use SVG masking.

Let’s start by figuring out what font we want to use. The one I’ll be using throughout this article is HaveHeartOne, which has a nice brush stroke appearance that is perfect for handwriting.

The idea is to create a out of same sentence we want to animate, then place it on top of the sentence. In other words, there will be two layers of same sentence. Since the mask sits on top, we’ll make it white so it will hide the original sentence below it. We will animate the mask so the bottom layer is revealed as the animation runs.

Making the layers

The foundation of this trick is that we’re actually going to create two separate layers, one on top of the other:

  1. The bottom layer is the words with the desired font (in my case it is HaveHeartOne).
  2. The top layer is a handcrafted path approximating the words.

Creating the handcrafted path isn’t as hard as you might think. We need a continuous path to animate and reveal the sentence. That means no for this. But, many illustrates apps — including Illustrator — can convert letters to paths:

  1. Select the words.
  2. Open the “Properties” panel and click Create outline.

And, like magic, the letters become outlines with vector points that follow the shape.

Showing the words Marketing Lab in red in Illustrator wrapped in blue vector points.
Imagine drawing all that by hand!

At this point it is very important to give meaningful names to these paths, which are stored as layers. When we expect this to SVG, the app will generate code and it uses those layer names as the IDs and classes.

Showing the Illustrator layers of the letters with proper naming.
Those names are much nicer that what would have been auto-generated.

Notice how individual letters have a fill but no stroke:

Showing the letter M selected in Illustrator with the properties panel open indicating there is no stroke on the shape.

In SVG, we can animate the stroke in the way we want to, so we’re going to need to create that as our second main layer, the mask. We can use the pen tool to trace the letters.

  1. Select the pen tool.
  2. Set the Fill option to “None.”
  3. The stroke width will depend on the font you’re using. I’m setting the Stroke Width option to 5px and setting its color to black.
  4. Start drawing!

My pen tool skills aren’t great, but that’s OK. What’s important isn’t perfection, but that the mask covers the layer below it.

Create a mask for each letters and remember to use good names for the layers. And definitely reuse masks where there are more than one of the same letter — there’s no need to re-draw the same “A” character over and over.

Showing the Marketing Lab letter shapes completely covered by the black outline layers.

Exporting

Next up, we need to export the SVG file. That will likely depend on the application you are using. In Illustrator, you can do that with File ? Export ? Export as ? SVG

SVG options popup will open, below is the preferred setting to export for this example.

Showing the SVG export options in Illustrator.

Now, not all apps will export SVG the same exact way. Some do an excellent job at generating slim, efficient code. Others, not so much. Either way, it’s a good idea to crack open the file in a code editor

When we’re working with SVG, there are a few tips to consider to help make them as light as possible for the sake of performance:

  1. The fewer points, the lighter the file.
  2. Using a smaller viewBox can help.
  3. There are plenty of tools to optimize SVG even further.

Manually editing the SVG code

Now, not all apps will export SVG the same exact way. Some do an excellent job at generating slim, efficient code. Others, not so much. Either way, it’s a good idea to crack open the file in a code editor and make a few changes.

Some things worth doing:

  1. Give the element width and height attributes that are set to size the final design.
  2. Use the </code> element. Since we’re working with paths, the words aren’t actually recognized by screen readers. If you need them to be read when in focus, then this will do the trick.</li> <li>There will likely be group elements (<code></code>) with the IDs based on the layers that were named in the illustration app. In this specific demo, I have two group elements: <code>#marketing-lab</code> (the outline) and <code>#marketing-masks</code> (the masks). Move the masks into a <code></code> element. This will hide it visually, which is what we want.</li> <li>There will likely be paths inside of the masks group. If so, go ahead and remove the <code>transform</code> attribute from them.</li> <li>Wrap each path element in a <code><mask</code>> and give them a <code>.mask</code> class and an ID that indicates which letter is masked.</li> </ol> <p>For example:</p> <pre><code><mask id="mask-marketing-M"> <path class="mask" id="mask-M" ... /> </mask></code></pre> <p>Inside the outline group (which I’ve given an ID of <code>#marketing-lab</code>), apply the mask to the respective character path element by using <code>mask="url(#mask-marketing-M)"</code>.</p> <pre><code><g id="marketting-lab"> <path mask="url(#mask-marketing-M)" id="marketting-char-M" d="M427,360, ... " /> </g></code></pre> <p>Here’s the code for one character using all the above modifications:</p> <pre><code><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 381 81" class="marketing-lab"> <title>Marketing Lab</title> <defs> <g id="marketing-masks"> <mask id="mask-marketing-M"> <path class="mask" id="mask-M" d="M375.5, ... ,9-10" stroke-linecap="square" stroke-linejoin="bevel" stroke-width="7" /> </mask> </g> </defs> <g id="marketting-lab"> <path mask="url(#mask-marketing-M)" id="marketting-char-M" d="M427,360.22c-.11.08-.17.14-.17.18H427c0" /> </g> </svg></code></pre> <p>Finally, we will add CSS for the <code>.mask</code> element that overrides stroke color with white so it is hidden against the document’s background color.</p> <pre><code>.mask { fill: none; stroke: #fff; }</code></pre> <h3>Animation</h3> <p>We’re going to animate the CSS <a target="_blank" href="https://css-tricks.com/almanac/properties/s/stroke-dasharray/"><code>stroke-dasharray</code></a> property to get the continuous line reveal effect. We can do the animation with either CSS and JavasScript or with Greensock (GSAP). We’ll look at both approaches.</p> <h4>CSS and JavaScript </h4> <p>It’s fairly straightforward to do this in CSS alone. You can use JavaScript to calculate the path length and then animate it using that returned value. If you do not want to use JavaScript at all, then you can calculate the path length once and hardcode that value into the CSS.</p> <pre><code>/* Set the stroke-dasharray and stroke-dashoffset */ .mask { stroke-dasharray: 1000; stroke-dashoffset: 1000; } 
 /* Animation the stroke-dashoffset to a zero length */ @keyframes strokeOffset { to { stroke-dashoffset: 0; } } 
 /* Apply the animation to each mask */ #mask-M { animation: strokeOffset 1s linear forwards; }</code></pre> <p>JavaScript can help with the counting if you’d prefer to go that route instead:</p> <pre><code>// Put the masks in an array const masks = ['M', 'a', 'r', 'k-1', 'k-2', 'e', 't-line-v', 't-line-h', 'i-2', 'i-dot', 'n', 'g', 'lab-l', 'lab-a', 'lab-b'] 
 masks.forEach((mask, index, el) => { const id = `#mask-${mask}` // Prepend #mask- to each mask element name let path = document.querySelector(id) const length = path.getTotalLength() // Calculate the length of a path path.style.strokeDasharray = length; // Set the length to stroke-dasharray in the styles path.style.strokeDashoffset = length; // Set the length to stroke-dashoffset in the styles })</code></pre> <div>CodePen Embed Fallback</div> <h4>GSAP</h4> <p>GSAP has a <a target="_blank" href="https://greensock.com/drawsvg/">drawSVG</a> plugin which allows you to progressively reveal (or hide) the <strong>stroke</strong> of an SVG <code></code>, <code></code>, <code></code>, <code></code>, <code></code>, or <code></code>. Under the hood, it’s using the CSS <code>stroke-dashoffset</code> and <code>stroke-dasharray</code> properties. </p> <p>Here’s how it works:</p> <ol> <li>Include GSAP and drawSVG scripts in the code.</li> <li>Hide the graphic initially by using autoAlpha.</li> <li>Create a timeline.</li> <li>Set <code>autoAlpha</code> to <code>true</code> for the graphic.</li> <li>Add all the character path masks IDs to the timeline in proper sequence.</li> <li>Use drawSVG to animate all characters.</li> </ol> <div>CodePen Embed Fallback</div> <hr> <h4>References</h4> <ol> <li><a target="_blank" href="https://jakearchibald.com/2013/animated-line-drawing-svg/">Animated Drawing Line in SVG</a> by Jake Archibald</li> <li><a target="_blank" href="https://www.cassie.codes/posts/creating-my-logo-animation/#heading-svg-stroke-dasharray">Creating My Logo Animation</a> by Cassie Evans</li> </ol> <hr> <p>The post <a target="_blank" rel="nofollow" href="https://css-tricks.com/how-to-get-handwriting-animation-with-irregular-svg-strokes/">How to Get Handwriting Animation With Irregular SVG Strokes</a> appeared first on <a target="_blank" rel="nofollow" href="https://css-tricks.com/">CSS-Tricks</a>.</p> <p>You can support CSS-Tricks by being an <a target="_blank" href="https://css-tricks.com/product/mvp-supporter/">MVP Supporter</a>.</p> <div class="fixed"></div> </div> <div class="under"> <span class="categories">Categories: </span><span><a href="http://www.webmastersgallery.com/category/design/" rel="category tag">Designing</a>, <a href="http://www.webmastersgallery.com/category/uncategorized/" rel="category tag">Others</a></span> <span class="tags">Tags: </span><span></span> </div> </div> <div class="post" id="post-3507121"> <h2><a class="title" href="http://www.webmastersgallery.com/2020/09/11/should-we-be-designing-for-voice/" rel="bookmark">Should We Be Designing For Voice?</a></h2> <div class="info"> <span class="date">September 11th, 2020</span> <span class="author"><a href="http://www.webmastersgallery.com/author/admin/" title="Posts by admin" rel="author">admin</a></span> <span class="comments"><a href="http://www.webmastersgallery.com/2020/09/11/should-we-be-designing-for-voice/#respond">No comments</a></span> <div class="fixed"></div> </div> <div class="content"> <div class="ftpimagefix" style="float:left"><a target="_blank" href="https://www.webdesignerdepot.com/2020/09/should-we-be-designing-for-voice/"><img decoding="async" src="https://www.webdesignerdepot.com/cdn-origin/uploads/2020/03/featured_voice-scaled.jpg" align="left" alt="" width="100%"></a></div> <p> Voice is one aspect of technology that is getting bigger and bigger, and showing little sign of relenting. In fact, 2019 data revealed that 22% of UK households owned a voice-controlled digital home assistant device such as an Amazon Echo or Google home. This is double the figure recorded in 2017 and it is predicted that over the next five years nearly 50% of all homes will have one. Smart home adoption rates are increasing, and it shows how voice control is something we are all becoming more accustomed to.</p> <p>With these high figures, does it follow that voice should be something web designers build into sites? Or is it merely a gimmick that will die out and render sites with hardware and complex design issues? You only have to look at the failed introduction of Google glass to see that certain technological advancements don’t always have the outcome that might be expected.</p> <h1>Multiple Voices</h1> <p>One of the first issues with voice is establishing whether you want sites to recognise everyone’s voices, or just those who have registered. If you’re using the site in a crowded room will it pick up on snippets of conversation from others and think these are instructions? Google Home has a feature whereby you have to register your voice with its app to use more personalised features such as the shopping list. Is this the sort of thing websites would need?</p> <h1>Accents</h1> <p>The implementation of voice is complex, not only does it need to understand certain languages (such as English), but all the accents and variations too. With 160 English dialects alone, that is a lot that the technology needs to understand – not including mispronunciations, slang, and colloquialisms. Also, if a site is used all over the world (which many are) how many languages will it need to know?</p> <h1>Privacy Issues</h1> <div> <p>if there are clips of your voice out there on the web…it can easily be imitated</p> </div> <p>If a website involves a feature such as online shopping or other functions which require sensitive details to be input, this could put people off using voice. Users need to know where this saved data is being stored, how it will be used and if it is secure. In 2018, HMRC had signed up about 6.7 million people to its voice ID service and HSBC said over 10,000 were registering each week. This shows many trust the service, but experts say that if there are clips of your voice out there on the web (such as in a podcast) it can easily be imitated. Bringing with it security and privacy issues.</p> <p>According to futurologist Dr Ian Pearson, who invented the text message back in 1991, it won’t be long until we can complete a financial transaction with just a few words and a gesture. This can be a time-saver for things such as online shopping, but we need to ensure there are the correct security steps in place.</p> <h1>Users Don’t Talk The Way They Type</h1> <p>When speaking we tend to use shortened and more colloquial language as opposed to when we type. The voice function on a website will need to be able to adapt for this. One example is if you are filling in a form or comment box by voice for a website, you will need to tell it what to punctuate, letting it know where to add a comma, exclamation mark etc.</p> <h1>Website Processes Need to be Simpler</h1> <p>With the web as we use it now, we often browse through pages, reading other snippets of information before clicking through to the page we want. With voice recognition it will cut out these middle steps. For example, if you are looking for a recipe of something specific, you will just say the command “Show me the … recipe” and it will take you straight there. This direct access to what we are looking for could lead to a simplification of websites.</p> <h1>Regular Updates</h1> <p>With websites as they are now, they need updates semi-regularly, depending on how they are built, how complex they are, and what features we have built into them. A voice-based site will need updating regularly, whether to add new words or processes or to keep up with the fast-adapting technology. It might end up being quite a complex process.</p> <h1>Mistrust</h1> <p>While there are more of us now than ever using voice control via tech such as Alexa, Google, and Siri, there is still a level of mistrust over it. It’s still not quite clear where data is being stored, if it is being stored, and how easy it could be to abuse.</p> <h1>Larger Storage and Bandwidth</h1> <p>If a site is built for voice, will it utilise a ready-built plugin or will it have its own software built by developers? Will this feature require a greater amount of storage and bandwidth to cope with it? These are further factors to consider when thinking of the future of implementing voice to websites.</p> <h1>We Still Don’t Know Where It Will Go</h1> <p>Voice technology while working in some respects, is still a bit of a grey area when it comes to future use. Will it be the next big thing as many have predicted, or will it simply die down?</p> <p>Look at Google Glass – highlighted as the big new technology, they soon died down and were eventually discontinued. Smart watches were another thing. You can see their initial downfall by reading an article published in 2017 about smartwatches – how major smartwatch makers such as Apple and Samsung rushed into the market before the technology was ready and they subsequently failed. Motorola exited the smartwatch market, Pebble and Jawbone shut down and Fitbit sold 2.3 million fewer devices than in their previous quarter. It was perceived as being a fad. However, fast forward to 2020 and more people than ever are wearing and using smartwatches. The smartwatch market was valued at shipment volumes of 47.34 million in 2019 and is expected to reach 117.51 by 2025, reaching a growth of 15.4 over the next five years.</p> <p>Will voice follow a similar trend?</p> <h1>No More Impulse Buying</h1> <p>People enjoy browsing websites and many businesses rely on user’s impulse buying and ask their websites to be designed to reflect this. With voice taking you directly to the page’s users want to find, will they bypass these potential selling traps and just buy what they want – rather than added extras? Will it end up being a negative for businesses and see users not as satisfied for the experience?</p> <h1>Voiceless Still Matters</h1> <p>You will also have to remember that not all devices might work with voice, or people might be browsing somewhere where voice cannot be used. This means in the design process it needs to work both for voice instruction and manual use. It needs to work just as well for both to ensure the customer journey isn’t affected.</p> <p>There are many ways voice can affect how we design websites in the upcoming future. It’s important to take note of market trends and usage – seeing how people use voice and thinking of the customer journey. It’s vital we don’t forget the end goals of websites – whether it’s to inform or to sell, the implementation of voice needs to assist this process not make it harder.</p> </p> <p><em>Featured image <a target="_blank" href="https://unsplash.com/@claybanks?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">via Unsplash</a>.</em></p> <p><a target="_blank" href="https://www.webdesignerdepot.com/2020/09/should-we-be-designing-for-voice/">Source</a></p> <div class="fixed"></div> </div> <div class="under"> <span class="categories">Categories: </span><span><a href="http://www.webmastersgallery.com/category/design/" rel="category tag">Designing</a>, <a href="http://www.webmastersgallery.com/category/uncategorized/" rel="category tag">Others</a></span> <span class="tags">Tags: </span><span></span> </div> </div> <div class="post" id="post-3505738"> <h2><a class="title" href="http://www.webmastersgallery.com/2020/09/10/defining-view-source/" rel="bookmark">Defining “View Source”</a></h2> <div class="info"> <span class="date">September 10th, 2020</span> <span class="author"><a href="http://www.webmastersgallery.com/author/admin/" title="Posts by admin" rel="author">admin</a></span> <span class="comments"><a href="http://www.webmastersgallery.com/2020/09/10/defining-view-source/#respond">No comments</a></span> <div class="fixed"></div> </div> <div class="content"> <p>Last time there was <a target="_blank" href="https://css-tricks.com/view-source/">a little flurry of activity</a> around the concept of “View Source,” I did get the sense that not everyone was on the same page about what that even means. <a target="_blank" href="https://blog.jim-nielsen.com/2020/the-meaning-of-view-source/">Jim Nielsen</a>: </p> <blockquote> <p>First, when we talk about “View Source” what precisely are we talking about? I think this is an important point to clarify, as it sometimes goes unsaid and therefore a lot of assumptions sneak into the conversation and we might realize we’re not all talking about the same thing.</p> </blockquote> <p><span></span></p> <p>There are three things that people might be talking about:</p> <ol> <li>View source code (the code that generates the HTML delivered over the network)</li> <li>View page source (the HTML delivered over the network)</li> <li>View runtime source (the living HTML, a.k.a the DOM)</li> </ol> <p>I’ll assign what I think are the values of each are, as slices of a pie chart:</p> <ol> <li>10%</li> <li>5%</li> <li>85%</li> </ol> <p>Every major browser ships with built-in DevTools where you can easily peak at the “runtime source.” That’s where the vast bulk of value is to me. If browsers ever talked about removing that, I’m sure we’d all be up in arms. Even for non-developers, the existence of this tool might be the spark that grows baby web developers. </p> <p>DevTools also provides a way to view the HTML delivered over the network, hence my hardline stance from before:</p> <blockquote> <p>I literally don’t care at all about View Source and wouldn’t miss it if it was removed from browsers. I live in DevTools, and I’ll bet you do too. It entirely supersedes View Source, as you can quite literally view source inside it if you’d like.</p> </blockquote> <p><a target="_blank" href="https://blog.jim-nielsen.com/2020/the-meaning-of-view-source/">Jim’s post</a> explains the difference between all three types of “viewing source” in great detail. For sites that are built entirely from client-side JavaScript, viewing the HTML over the wire is nearly useless. But if you could see the whole codebase (say if it was open-source on GitHub), there is certainly value there. </p> <p><a target="_blank" href="https://blog.jim-nielsen.com/2020/the-meaning-of-view-source/" title="Direct link to featured article">Direct Link to Article</a> — <a target="_blank" href="https://css-tricks.com/defining-view-source/">Permalink</a></p> <hr> <p>The post <a target="_blank" rel="nofollow" href="https://css-tricks.com/defining-view-source/">Defining “View Source”</a> appeared first on <a target="_blank" rel="nofollow" href="https://css-tricks.com/">CSS-Tricks</a>.</p> <p>You can support CSS-Tricks by being an <a target="_blank" href="https://css-tricks.com/product/mvp-supporter/">MVP Supporter</a>.</p> <div class="fixed"></div> </div> <div class="under"> <span class="categories">Categories: </span><span><a href="http://www.webmastersgallery.com/category/design/" rel="category tag">Designing</a>, <a href="http://www.webmastersgallery.com/category/uncategorized/" rel="category tag">Others</a></span> <span class="tags">Tags: </span><span></span> </div> </div> <div class="post" id="post-3505100"> <h2><a class="title" href="http://www.webmastersgallery.com/2020/09/10/modifying-specific-letters-with-css-and-javascript/" rel="bookmark">Modifying Specific Letters with CSS and JavaScript</a></h2> <div class="info"> <span class="date">September 10th, 2020</span> <span class="author"><a href="http://www.webmastersgallery.com/author/admin/" title="Posts by admin" rel="author">admin</a></span> <span class="comments"><a href="http://www.webmastersgallery.com/2020/09/10/modifying-specific-letters-with-css-and-javascript/#respond">No comments</a></span> <div class="fixed"></div> </div> <div class="content"> <p>Changing specific characters can be a challenge in CSS. Often, we’re forced to implement our desired changes one-by-one in HTML, perhaps using the span element. But, in a few specific cases, a CSS-focused solution may still be possible. In this article, we’ll start by looking at some CSS-first approaches to changing characters, before considering at a scenario where we need to turn to JavaScript.</p> <p><span></span></p> <h3>CSS</h3> <p>Right now, CSS doesn’t excel at targeting specific characters without making alterations to the HTML. However, there are a few scenarios where CSS could be the go-to.</p> <h4><code>@font-face</code></h4> <p>The <code><a target="_blank" href="https://css-tricks.com/snippets/css/using-font-face/">@font-face</a></code> rule is regularly used to create custom fonts, but its <code><a target="_blank" href="https://css-tricks.com/almanac/properties/u/unicode-range/">unicode-range</a></code> property can also allow us to target specific characters. </p> <p>For example, imagine our site often contains ampersands in its headings. Instead of using the heading font, we want something a tad more flamboyant. We can look up the unicode value of an ampersand (<code>U</code>+<code>0026</code>) and use <code>unicode-range</code> to target this specific character.</p> <pre><code>@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300'); h1, h2, h3, h4, h5, h6 { font-family: 'Ampersand', Montserrat, sans-serif; } @font-face { font-family: 'Ampersand'; src: local('Times New Roman'); unicode-range: U+0026; }</code></pre> <p>Try this with the following HTML to see it in action:</p> <pre><code><h1>Jane Austen Novels</h1> <h2>Pride & Prejudice</h2> <h2>Sense & Sensibility</h2></code></pre> <h4><code>::first-letter</code></h4> <p>The <code><a target="_blank" href="https://css-tricks.com/almanac/selectors/f/first-letter/">::first-letter</a></code> pseudo-element was primarily designed with drop caps in mind and it is supported by all major browsers.</p> <pre><code>p::first-letter { font-size: 125%; font-weight: bold; }</code></pre> <p>Of course, this is only useful in a relatively limited number of scenarios. There have been several calls for an <code>::nth-letter</code> pseudo-element (including <a target="_blank" href="https://css-tricks.com/a-call-for-nth-everything/">here on CSS-Tricks</a>) but, right now, that’s just a pipe dream!</p> <h4><code>::after</code></h4> <p>Using the <code>::after</code> pseudo-element and <code>content</code> property, we can achieve a similar effect for the final character — so long as that character is always the same. For example, here’s how we could add a jazzy, italicized exclamation point after every <code>h2</code> element:</p> <pre><code>h2::after { content: '021'; color: red; font-style: italic; }</code></pre> <h4><code>font-variant-alternates</code></h4> <p>Finally, there’s the <code><a target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/CSS/font-variant-alternates">font-variant-alternates</a></code> property. This is <em>only supported by Firefox</em>, so it’s not recommended for production, but it may be worth knowing about for really specific scenarios: if a font happens to contain alternate glyphs, we can use this property with the <code><a target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/CSS/font-variant-alternates%23character-variant()">character-variant()</a></code> function to select a preferred glyph for a character of our choice.</p> <h3>JavaScript</h3> <p>Turning to JavaScript doesn’t need to come at a cost to performance, especially if we run HTML-altering functions at build time. The most common use case is probably to find and replace specific characters in our HTML with a span element. For simplicity’s sake, I’ll begin with an example on the client-side, and after that we’ll look into running this at build with webpack.</p> <h4>Find and replace at runtime</h4> <p>Let’s imagine that, whenever we have the text “LOGO” in a header on our site, we want to add a special style to the first “O” character only, by wrapping it in a <code>span</code> element with the class <code>.special-o</code>.</p> <pre><code>const headings = document.querySelectorAll("h1, h2, h3, h4, h5, h6"); for (const heading of headings) { heading.innerHTML = heading.innerHTML .replace(/bLOGOb/g, 'L<span class="special-o">O</span>GO'); }</code></pre> <p>In the JavaScript above, we’re performing a find-and-replace on every heading tag. </p> <p>Our regular expression uses the metacharacter <code>b</code> to ensure that LOGO is always a word — rather than an element of a larger word. For example, we don’t want to match the plural “LOGOS.” Right now, it would be impossible to do this with CSS, not least because we only want to target the first “O” in the sequence.</p> <p>The same principle applies if we want to replace the “O” — or even the whole word “LOGO” — with an image. </p> <h4>Find and replace at build</h4> <p>There are plenty of build tools out there, but as webpack is so popular, we’ll use that for our example — and luckily, there’s a plugin for what we need called <a target="_blank" href="https://github.com/Va1/string-replace-loader">string-replace-loader</a>. For those new to webpack, a loader is used to preprocess files. Here, we can perform a find-and-replace on specific files as part of our build. </p> <p>First, we need to install the plugin:</p> <pre><code>npm install --save-dev string-replace-loader</code></pre> <p>Then, inside <code>webpack.config.js</code> add:</p> <pre><code>module.exports = { // ... module: { rules: [ { test: /.html$/i, loader: 'string-replace-loader', options: { search: '/bLOGOb/g', replace: 'L<span class="special-o">O</span>GO', } } ] } }</code></pre> <p>By changing the <code>test</code> property value, we could target JSX, TSX, PUG, Handlebars or any other templating file format:</p> <pre><code>/.html$/i # HTML /.[jt]sx$/i # JSX or TSX /.pug$/i # PUG /.handlebars$/i # Handlebars</code></pre> <p>The advantage of this approach is that no unnecessary JavaScript will run in our client’s browser. </p> <h3>Final note</h3> <p>Finally, if you’re comfortable creating and editing fonts and would rather avoid CSS or JavaScript, a custom font could be a solution for many of the scenarios set out above. There are plenty of free font-editing tools such as <a target="_blank" href="https://fontforge.org/">Font Forge</a> or <a target="_blank" href="https://birdfont.org/">Birdfont</a> for those who want to try this more design-focused approach.</p> <hr> <p>The post <a target="_blank" rel="nofollow" href="https://css-tricks.com/modifying-specific-letters-with-css-and-javascript/">Modifying Specific Letters with CSS and JavaScript</a> appeared first on <a target="_blank" rel="nofollow" href="https://css-tricks.com/">CSS-Tricks</a>.</p> <p>You can support CSS-Tricks by being an <a target="_blank" href="https://css-tricks.com/product/mvp-supporter/">MVP Supporter</a>.</p> <div class="fixed"></div> </div> <div class="under"> <span class="categories">Categories: </span><span><a href="http://www.webmastersgallery.com/category/design/" rel="category tag">Designing</a>, <a href="http://www.webmastersgallery.com/category/uncategorized/" rel="category tag">Others</a></span> <span class="tags">Tags: </span><span></span> </div> </div> <div class="post" id="post-3503022"> <h2><a class="title" href="http://www.webmastersgallery.com/2020/09/09/setting-up-and-customizing-the-ant-design-system-in-a-nuxt-app/" rel="bookmark">Setting up and Customizing the Ant Design System in a Nuxt App</a></h2> <div class="info"> <span class="date">September 9th, 2020</span> <span class="author"><a href="http://www.webmastersgallery.com/author/admin/" title="Posts by admin" rel="author">admin</a></span> <span class="comments"><a href="http://www.webmastersgallery.com/2020/09/09/setting-up-and-customizing-the-ant-design-system-in-a-nuxt-app/#respond">No comments</a></span> <div class="fixed"></div> </div> <div class="content"> <p>I don’t typically work with UI libraries because they can be cumbersome and hard to override, which can contribute to a bloated. However, <a target="_blank" href="https://www.antdv.com/docs/vue/introduce/">Ant Design</a> has recently gained some some of my affection because it’s easy to use, has extensible defaults, and features a delicate design.</p> <p><a target="_blank" href="https://nuxtjs.org/">Nuxt</a> and Ant Design work well together, in part because of Nuxt’s code-splitting and tree-shaking abilities, not to mention <a target="_blank" href="https://nuxtjs.org/blog/going-full-static/">Nuxt’s new static target deployment option</a>. I can serve an app using Ant Design with great performance scores.</p> <p>Combining the two was a little tricky and there isn’t a lot in the way of documentation for how to do it, so what follows are the steps you need to set it up. Let’s get started!</p> <p><span></span></p> <h3><strong>Install Ant.design </strong></h3> <p>The first step is installing the <a target="_blank" href="https://www.antdv.com/docs/vue/introduce/">ant-design-vue</a> package, along with <a target="_blank" href="https://github.com/less/less.js/">Less.js</a> and <a target="_blank" href="https://github.com/webpack-contrib/less-loader">less-loader</a>, which we will need to create our Less variables:</p> <pre><code>yarn add ant-design-vue less less-loader # or npm i ant-design-vue less less-loader</code></pre> <p>Now lets tell Nuxt to use it globally via a plugin. We’ll create a file called <code>antd-ui.js</code>:</p> <pre><code>import Vue from 'vue' import Antd from 'ant-design-vue/lib' Vue.use(Antd)</code></pre> <p>You may notice that <em>unlike</em> the process outlined in the <a target="_blank" href="https://www.antdv.com/docs/vue/getting-started/">Ant Design getting started guide</a>, we are not importing the global CSS file they mention. That’s because we’re going to manually import the base variable Less file instead so that we can override it. </p> <p>We have a few things to do in our <code>nuxt.config.js</code> file. First, let’s register the plugin we just made:</p> <pre><code>plugins: ["@/plugins/antd-ui"],</code></pre> <p>Next, we’re going to let webpack know we’d like to build Less:</p> <pre><code>build: { loaders: { less: { lessOptions: { javascriptEnabled: true, }, }, }, }</code></pre> <p>Finally, we need to create a global stylesheet for our variables that imports Ant Design’s defaults as well as our overrides:</p> <pre><code>css: [ "~/assets/variables.less" ],</code></pre> <p>We can see that this file exists in a <code>/assets</code> folder, so let’s make it. We’ll create a file in there called <code>variables.less</code>, and import Ant Design’s Less variables:</p> <pre><code>@import '~ant-design-vue/dist/antd.less';</code></pre> <p>Below this line, there are myriad variables you can override. This is just a sampling. The <a target="_blank" href="https://github.com/vueComponent/ant-design-vue/blob/master/components/style/themes/default.less">rest of the variables are here</a>, and you’ll need to include them by their <code>@</code> and can change it to whatever you wish:</p> <pre><code>@primary-color: #1890ff; // primary color for all components @link-color: #1890ff; // link color @success-color: #52c41a; // success state color @warning-color: #faad14; // warning state color @error-color: #f5222d; // error state color @font-size-base: 14px; // major text font size @heading-color: rgba(0, 0, 0, 0.85); // heading text color @text-color: rgba(0, 0, 0, 0.65); // major text color @text-color-secondary: rgba(0, 0, 0, 0.45); // secondary text color @disabled-color: rgba(0, 0, 0, 0.25); // disable state color @border-radius-base: 4px; // major border radius @border-color-base: #d9d9d9; // major border color @box-shadow-base: 0 2px 8px rgba(0, 0, 0, 0.15); // major shadow for layers</code></pre> <p>We’re good to go! There’s no need to import what we need into every component because Nuxt will now take care of that. If you’d like to override very specific styles not included in the variables, you can find the associative classes and override them in your <code>layouts/default.vue</code> file as well.</p> <p>Ant.design and Nuxt allow you a great framework for building apps very quickly and with ease. Enjoy!</p> <hr> <p>The post <a target="_blank" rel="nofollow" href="https://css-tricks.com/setting-up-and-customizing-the-ant-design-system-in-a-nuxt-app/">Setting up and Customizing the Ant Design System in a Nuxt App</a> appeared first on <a target="_blank" rel="nofollow" href="https://css-tricks.com/">CSS-Tricks</a>.</p> <p>You can support CSS-Tricks by being an <a target="_blank" href="https://css-tricks.com/product/mvp-supporter/">MVP Supporter</a>.</p> <div class="fixed"></div> </div> <div class="under"> <span class="categories">Categories: </span><span><a href="http://www.webmastersgallery.com/category/design/" rel="category tag">Designing</a>, <a href="http://www.webmastersgallery.com/category/uncategorized/" rel="category tag">Others</a></span> <span class="tags">Tags: </span><span></span> </div> </div> <div id="pagenavi"> <span class="newer"><a href="http://www.webmastersgallery.com/2020/09/page/8/" >Newer Entries</a></span> <span class="older"><a href="http://www.webmastersgallery.com/2020/09/page/10/" >Older Entries</a></span> <div class="fixed"></div> </div> </div> <!-- main END --> <!-- sidebar START --> <div id="sidebar"> <!-- sidebar north START --> <div id="northsidebar" class="sidebar"> <!-- feeds --> <div class="widget widget_feeds"> <div class="content"> <div id="subscribe"> <a rel="external nofollow" id="feedrss" title="Subscribe to this blog..." href="http://www.webmastersgallery.com/feed/"><abbr title="Really Simple Syndication">RSS</abbr></a> </div> <div class="fixed"></div> </div> </div> <!-- showcase --> <div id="text-389627311" class="widget widget_text"> <div class="textwidget"><a href="http://feeds2.feedburner.com/webmastersgallery" title="Subscribe to my feed" rel="alternate" type="application/rss+xml"><img src="http://www.feedburner.com/fb/images/pub/feed-icon32x32.png" alt="" style="border:0"/></a><a href="http://feeds2.feedburner.com/webmastersgallery" title="Subscribe to my feed" rel="alternate" type="application/rss+xml">Subscribe for latest Updates</a></div> </div><div id="text-389629461" class="widget widget_text"> <div class="textwidget"><form style="border:1px solid #ccc;padding:3px;text-align:center;" action="http://feedburner.google.com/fb/a/mailverify" method="post" target="popupwindow" onsubmit="window.open('http://feedburner.google.com/fb/a/mailverify?uri=webmastersgallery', 'popupwindow', 'scrollbars=yes,width=550,height=520');return true"><p>Enter your email address:</p><p><input type="text" style="width:140px" name="email"/></p><input type="hidden" value="webmastersgallery" name="uri"/><input type="hidden" name="loc" value="en_US"/><input type="submit" value="Subscribe" /><p>Delivered by <a href="http://feedburner.google.com" target="_blank" rel="noopener">FeedBurner</a></p></form></div> </div></div> <!-- sidebar north END --> <div id="centersidebar"> <!-- sidebar east START --> <div id="eastsidebar" class="sidebar"> <!-- categories --> <div class="widget widget_categories"> <h3>Categories</h3> <ul> <li class="cat-item cat-item-518"><a href="http://www.webmastersgallery.com/category/affiliate-programs/">Affiliate Programs</a> </li> <li class="cat-item cat-item-147"><a href="http://www.webmastersgallery.com/category/design/">Designing</a> </li> <li class="cat-item cat-item-519"><a href="http://www.webmastersgallery.com/category/domain-names/">Domain Names</a> </li> <li class="cat-item cat-item-37"><a href="http://www.webmastersgallery.com/category/e-commerce/">E-commerce</a> </li> <li class="cat-item cat-item-509"><a href="http://www.webmastersgallery.com/category/internet-directories/">Internet Directories</a> </li> <li class="cat-item cat-item-510"><a href="http://www.webmastersgallery.com/category/message-boards/">Message Boards</a> </li> <li class="cat-item cat-item-1"><a href="http://www.webmastersgallery.com/category/uncategorized/">Others</a> </li> <li class="cat-item cat-item-506"><a href="http://www.webmastersgallery.com/category/programming/">Programming</a> </li> <li class="cat-item cat-item-511"><a href="http://www.webmastersgallery.com/category/promotion-and-marketing/">Promotion and Marketing</a> </li> <li class="cat-item cat-item-534"><a href="http://www.webmastersgallery.com/category/scripts-and-programming/">Scripts and Programming</a> </li> <li class="cat-item cat-item-513"><a href="http://www.webmastersgallery.com/category/search-engines/">Search Engines</a> </li> <li class="cat-item cat-item-135"><a href="http://www.webmastersgallery.com/category/social-media/">Social Media</a> </li> <li class="cat-item cat-item-514"><a href="http://www.webmastersgallery.com/category/softwares/">Softwares</a> </li> <li class="cat-item cat-item-515"><a href="http://www.webmastersgallery.com/category/tips-and-tutorials/">Tips and Tutorials</a> </li> <li class="cat-item cat-item-338"><a href="http://www.webmastersgallery.com/category/web-hosting/">Web Hosting</a> </li> <li class="cat-item cat-item-516"><a href="http://www.webmastersgallery.com/category/webmaster-tools/">Webmaster Tools</a> </li> <li class="cat-item cat-item-501"><a href="http://www.webmastersgallery.com/category/webmaster-resources/">Webmasters Resources</a> </li> <li class="cat-item cat-item-3"><a href="http://www.webmastersgallery.com/category/web-design/">Website Design</a> </li> </ul> </div> </div> <!-- sidebar east END --> <!-- sidebar west START --> <div id="westsidebar" class="sidebar"> <!-- blogroll --> <div class="widget widget_links"> <h3>Blogroll</h3> <ul> <li><a href="http://wordpress.org/development/">Development Blog</a></li> <li><a href="http://codex.wordpress.org/">Documentation</a></li> <li><a href="http://wordpress.org/extend/plugins/">Plugins</a></li> <li><a href="http://wordpress.org/extend/ideas/">Suggest Ideas</a></li> <li><a href="http://wordpress.org/support/">Support Forum</a></li> <li><a href="http://wordpress.org/extend/themes/">Themes</a></li> <li><a href="http://planet.wordpress.org/">WordPress Planet</a></li> </ul> </div> </div> <!-- sidebar west END --> <div class="fixed"></div> </div> <!-- sidebar south START --> <div id="southsidebar" class="sidebar"> <!-- archives --> <div class="widget"> <h3>Archives</h3> <ul> <li><a href='http://www.webmastersgallery.com/2024/12/'>December 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/11/'>November 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/10/'>October 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/09/'>September 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/08/'>August 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/07/'>July 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/06/'>June 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/05/'>May 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/04/'>April 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/03/'>March 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/02/'>February 2024</a></li> <li><a href='http://www.webmastersgallery.com/2024/01/'>January 2024</a></li> <li><a href='http://www.webmastersgallery.com/2023/12/'>December 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/11/'>November 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/10/'>October 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/09/'>September 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/08/'>August 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/07/'>July 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/06/'>June 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/05/'>May 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/04/'>April 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/03/'>March 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/02/'>February 2023</a></li> <li><a href='http://www.webmastersgallery.com/2023/01/'>January 2023</a></li> <li><a href='http://www.webmastersgallery.com/2022/12/'>December 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/11/'>November 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/10/'>October 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/09/'>September 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/08/'>August 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/07/'>July 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/06/'>June 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/05/'>May 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/04/'>April 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/03/'>March 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/02/'>February 2022</a></li> <li><a href='http://www.webmastersgallery.com/2022/01/'>January 2022</a></li> <li><a href='http://www.webmastersgallery.com/2021/12/'>December 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/11/'>November 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/10/'>October 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/09/'>September 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/08/'>August 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/07/'>July 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/06/'>June 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/05/'>May 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/04/'>April 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/03/'>March 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/02/'>February 2021</a></li> <li><a href='http://www.webmastersgallery.com/2021/01/'>January 2021</a></li> <li><a href='http://www.webmastersgallery.com/2020/12/'>December 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/11/'>November 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/10/'>October 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/09/' aria-current="page">September 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/08/'>August 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/07/'>July 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/06/'>June 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/05/'>May 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/04/'>April 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/03/'>March 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/02/'>February 2020</a></li> <li><a href='http://www.webmastersgallery.com/2020/01/'>January 2020</a></li> <li><a href='http://www.webmastersgallery.com/2019/12/'>December 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/11/'>November 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/10/'>October 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/09/'>September 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/08/'>August 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/07/'>July 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/06/'>June 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/05/'>May 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/04/'>April 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/03/'>March 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/02/'>February 2019</a></li> <li><a href='http://www.webmastersgallery.com/2019/01/'>January 2019</a></li> <li><a href='http://www.webmastersgallery.com/2018/12/'>December 2018</a></li> <li><a href='http://www.webmastersgallery.com/2018/11/'>November 2018</a></li> <li><a href='http://www.webmastersgallery.com/2018/10/'>October 2018</a></li> <li><a href='http://www.webmastersgallery.com/2018/09/'>September 2018</a></li> <li><a href='http://www.webmastersgallery.com/2018/08/'>August 2018</a></li> <li><a href='http://www.webmastersgallery.com/2018/07/'>July 2018</a></li> <li><a href='http://www.webmastersgallery.com/2018/04/'>April 2018</a></li> <li><a href='http://www.webmastersgallery.com/2018/01/'>January 2018</a></li> <li><a href='http://www.webmastersgallery.com/2017/12/'>December 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/11/'>November 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/09/'>September 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/08/'>August 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/07/'>July 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/06/'>June 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/05/'>May 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/04/'>April 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/03/'>March 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/02/'>February 2017</a></li> <li><a href='http://www.webmastersgallery.com/2017/01/'>January 2017</a></li> <li><a href='http://www.webmastersgallery.com/2016/12/'>December 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/11/'>November 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/10/'>October 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/09/'>September 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/08/'>August 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/07/'>July 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/06/'>June 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/05/'>May 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/04/'>April 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/03/'>March 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/02/'>February 2016</a></li> <li><a href='http://www.webmastersgallery.com/2016/01/'>January 2016</a></li> <li><a href='http://www.webmastersgallery.com/2015/12/'>December 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/11/'>November 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/10/'>October 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/09/'>September 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/08/'>August 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/07/'>July 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/06/'>June 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/05/'>May 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/04/'>April 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/03/'>March 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/02/'>February 2015</a></li> <li><a href='http://www.webmastersgallery.com/2015/01/'>January 2015</a></li> <li><a href='http://www.webmastersgallery.com/2014/12/'>December 2014</a></li> <li><a href='http://www.webmastersgallery.com/2014/11/'>November 2014</a></li> <li><a href='http://www.webmastersgallery.com/2014/10/'>October 2014</a></li> <li><a href='http://www.webmastersgallery.com/2014/09/'>September 2014</a></li> <li><a href='http://www.webmastersgallery.com/2014/08/'>August 2014</a></li> <li><a href='http://www.webmastersgallery.com/2014/07/'>July 2014</a></li> <li><a href='http://www.webmastersgallery.com/2014/06/'>June 2014</a></li> <li><a href='http://www.webmastersgallery.com/2013/07/'>July 2013</a></li> <li><a href='http://www.webmastersgallery.com/2013/01/'>January 2013</a></li> <li><a href='http://www.webmastersgallery.com/2012/12/'>December 2012</a></li> <li><a href='http://www.webmastersgallery.com/2012/08/'>August 2012</a></li> <li><a href='http://www.webmastersgallery.com/2012/07/'>July 2012</a></li> <li><a href='http://www.webmastersgallery.com/2012/06/'>June 2012</a></li> <li><a href='http://www.webmastersgallery.com/2012/05/'>May 2012</a></li> <li><a href='http://www.webmastersgallery.com/2012/04/'>April 2012</a></li> <li><a href='http://www.webmastersgallery.com/2012/01/'>January 2012</a></li> <li><a href='http://www.webmastersgallery.com/2011/11/'>November 2011</a></li> <li><a href='http://www.webmastersgallery.com/2011/06/'>June 2011</a></li> <li><a href='http://www.webmastersgallery.com/2011/03/'>March 2011</a></li> <li><a href='http://www.webmastersgallery.com/2011/02/'>February 2011</a></li> <li><a href='http://www.webmastersgallery.com/2011/01/'>January 2011</a></li> <li><a href='http://www.webmastersgallery.com/2010/12/'>December 2010</a></li> <li><a href='http://www.webmastersgallery.com/2010/11/'>November 2010</a></li> <li><a href='http://www.webmastersgallery.com/2010/09/'>September 2010</a></li> <li><a href='http://www.webmastersgallery.com/2010/07/'>July 2010</a></li> <li><a href='http://www.webmastersgallery.com/2010/06/'>June 2010</a></li> <li><a href='http://www.webmastersgallery.com/2010/05/'>May 2010</a></li> <li><a href='http://www.webmastersgallery.com/2010/02/'>February 2010</a></li> <li><a href='http://www.webmastersgallery.com/2009/12/'>December 2009</a></li> <li><a href='http://www.webmastersgallery.com/2009/08/'>August 2009</a></li> <li><a href='http://www.webmastersgallery.com/2009/07/'>July 2009</a></li> <li><a href='http://www.webmastersgallery.com/2009/06/'>June 2009</a></li> <li><a href='http://www.webmastersgallery.com/2009/05/'>May 2009</a></li> <li><a href='http://www.webmastersgallery.com/2009/04/'>April 2009</a></li> <li><a href='http://www.webmastersgallery.com/2009/03/'>March 2009</a></li> </ul> </div> <!-- meta --> <div class="widget"> <h3>Meta</h3> <ul> <li><a href="http://www.webmastersgallery.com/wp-login.php">Log in</a></li> </ul> </div> </div> <!-- sidebar south END --> </div> <!-- sidebar END --> <div class="fixed"></div> </div> <!-- content END --> <!-- footer START --> <div id="footer"> <a id="gotop" href="#" onclick="MGJS.goTop();return false;">Top</a> <a id="powered" href="http://wordpress.org/">WordPress</a> <div id="copyright"> Copyright © 2009-2024 Webmasters Gallery </div> <div id="themeinfo"> Theme by <a href="http://www.neoease.com/">NeoEase</a>. Valid <a href="http://validator.w3.org/check?uri=referer">XHTML 1.1</a> and <a href="http://jigsaw.w3.org/css-validator/check/referer?profile=css3">CSS 3</a>. </div> </div> <!-- footer END --> </div> <!-- container END --> </div> <!-- wrap END --> </body> </html>