3 tips for a more dynamic website in less than an hour

This post aims at giving you 3 tips for achieving a more dynamic webpage with very little programming and no change in your workflow. The tools we are going to use are:

What we would like to achieve is a website that feels more dynamic even when you are not writing articles on your blog/website. This article is based on a web running PHP, Smarty, WordPress and a hosting plan that gives you the possibility to create and change rights for directories. You can of course adapt these tips to any server architecture you may be using, but these examples will feature this architecture.

Integrate Yahoo Pipes for News

Yahoo Pipes lets you, easily and graphically, create advanced mashups from different external sources such as RSS and other content available online. You can aggregate, manipulate and filter the content to fit your needs. Yahoo Pipes is very powerful used correct. In this post we will focus on how to take 1 or more RSS-feeds, combine them into one and filter out the content that fits on your website as targeted news.

Below you find a screenshot of a pipe where I have aggregated a couple of RSS-feeds from startup-blogs, sorted all items on publish date and filtered out all items that have the name “social” in the title.

Screenshot of Yahoo Pipes

Pipes is very intuitive and you should be able to create a solution like this in less than 10 minutes.

Save your Pipe and give it a nice name, then click Run Pipe…, on the resulting page you will get the option to “Get as RSS”, copy that URL, it should look something like this: http://pipes.yahoo.com/pipes/pipe.run?_id=BMHzDooV3RGSSmEWJhOy0Q&_render=rss

You now have dynamic content that are filtered according to your needs, below we will show you how to integrate it to your website with WordPress Plugins or with Magpie RSS and Smarty.

Integrate Twitter to WordPress

Twitter is a micro-blogging service that lets users tweet messages to their twitter profile. If you are using twitter, why not integrate your tweets to your blog, making it more dynamic, and if you like to, more personal. Maybe you do not want to create a single post for every tweet (max 140 characters), a daily aggregation maybe suits your blog better. Alex King has built a WordPress Plugin on top of Twitters API which do just that (among other things). Downloading and installing the plugin should not take you more than 10 minutes all together.

Integrate del.icio.us as Link Manager

If you run a web site or a blog, you probably collects and share bookmarks on social bookmark services such as del.icio.us, BlinkList, simpy, Ma.gnolia, reddit and other social bookmarking sites. Why not utilize the well specified apis and tagging possibilities that they offer. In this example I have choosen to go with del.icio.us, but I am pretty sure you can do this with all of the popular social bookmarking services, the only thing is that they have to have an RSS published for the tag you are using to pinpoint your dynamic content.

In this example we are going to use del.icio.us and my bookmarks tagged with jquery as a resource for adding external links to your website that updates automatically when you add new bookmarks tagged with jquery to your online del.icio.us bookmarks.

My jQuery bookmarks can be found at http://del.icio.us/hising/jquery. By adding /rss between hostname and username, you will get the list of jQuery bookmarks in a format suitable for integration with your web site. In this case the url to the rss is http://del.icio.us/rss/hising/jquery

RSS Integration Code Example

With Magpie RSS and Smarty

Download Magpie RSS and follow the installation instructions. One thing you dont want, is to grab the feed every time someone visits your page, you are want to cache the result for a specified period of time, in this example we cache the feed response for 1 hour (set this depending on how often you think you will update your dynamic content)


channel array which contains info on the rss
//$news->items array that contains the feed items

/*
item example:
array(
	title => 'Weekly Peace Vigil',
	link => 'http://protest.net/NorthEast/calendrome.cgi?span=event&ID=210257',
	description => 'Wear a white ribbon',
	dc => array (
			subject => 'Peace'
		),
	ev => array (
		startdate => '2002-06-01T11:00:00',
		enddate => '2002-06-01T12:00:00',
		type => 'Protest',
		location => 'Northampton, MA'
	)
);
*/
?>

When you have got the result from your controller/php-file make sure you expose the response data to your view manager, and print out your items. In this example I have used the Smarty templating engine


//PHP:
require_once(YOUR_SMARTY_PATH . 'Smarty.class.php');
$smarty = new Smarty();
$smarty->assign('news', $news);
$smarty->display('template.tpl);

//Template


As WordPress Plugin

Download a plugin for integrating external RSS into your blog. There are a lot of different plugins for this, in this example we will use FeedList. Upload and enable the plugin. Then in your template add this:


 'http://del.icio.us/rss/hising/jquery',
            'num_items' => 10));
?>

More Examples on Creating a Dynamic Web Quickly

There are many other ways to create a more dynamic web site. You could use FeedBurner for creating Headline Animators. Headline Animator is an animated banner that cycles through your feed’s five most recent items. It’s an easy way to promote your content anywhere you can place a snippet of HTML. By doing this you can promote content from another blog on your website AND add a more dynamic web. All this is easy steps, under an hour of labour, to achieve a more alive web. Do you have any other tips that are a quick win when it comes to adding dynamic content to your web site?

CSS Frameworks and the Anatomy of Web Design

In this article I will try to dissect how we use CSS in order to design our webs and try to find a model that will make it easier for us to use and create CSS Frameworks that fits all the different problem domains we are facing when designing our websites. The Anatomy of Web Design is essential knowledge in order to create CSS Frameworks that are actually solving the problems we do not want to repeatedly solve over and over again when building websites.

Today no one would even think of writing their own JavaScript library from scratch and use on a site where the audience is diversed, making QA difficult. Libraries such as jQuery and Prototype solves most of the problems that occur on a public website, you only have to write snippets of code for smaller parts that are business specific, if you are writing large chunks of code for your business specific needs you are either solving problems at the wrong level or not thinking in terms of components/plugins. But when it comes to web design and CSS the wheel gets reinvented on each and every site you visit. I bet there are two main reasons for this:

- Design is difficult to quantify and generalize
- Designers do not think as programmers, who always quantify and generalize because they are lazy by nature.

But there are some projects, who have identified the css reinventing the wheel problem, both of them focus on giving designers and developers a generic set of CSS that solves problems that occur, independent from website. The two biggest, and most promising projects are:

They have a lot in common, both focus on first adding a reset CSS to the document and then use a grid for creating all types of design grids you could ever dream up. Blueprint has a module for forms, print and typography, while YUI has modules for fonts and a base css that tries to make a cross-browser-stylesheet from the reset document. YUI offers themes for different widgets/components. No project I have found focus on solving the biggest problem: Specific CSS for specific needs.

As you can see, we have a lot of different keywords (in bold) already, and we could start to quantify and generalize how we look at CSS.

Generalize Design

Generalising design is what CSS is all about. CSS is about finding property values that can be altered and combined in order to achieve the desired result in design. We may say that CSS in it self is the first level of abstraction when it comes to design. For a couple of years we have been focused on creating intriguing designs with our bare hands with CSS as our only (mental) tool.

Pretty soon people working with CSS found out that we had to take the abstraction one level higher, separating types of design into different parts of the design, making the stylesheets easier to edit, more modular and easier to redesign. A typical step is to split the applied styles into different parts, such as grid, typography and design. On top of that we possibly added specific styles for specific parts of the website. By making this separation, we made it easier to change and maintain the design of our websites. If we look at the biggest websites today (with a designed frontend) a lot of them uses this separation of design to different degree.

Still we are solving design problems over and over again in these styles. And the next problem is to identify generic components and grids without forcing a specific look and feel onto the user of the framework. YUI and Blueprint takes a couple of steps in this direction. What I would like to see from both YUI and Blueprint is components that are “wireframed” in their look and feel, this in combination with a well defined documentation on how to add look and feel to these components with specific themes/templates would solve a lot of the design problems some people are facing today. After all, when we dissect a page in interface components, we will realize that 75-90% of our look and feel is well defined patterns or components used elsewhere and if we have wireframed solutions for this, we will see better websites with less rendering errors because designers can focus on what they think is fun, designing, and web developers can focus on learning JavaScript, not play Russian CSS-roulette.

I am in the middle of a big redesign, re-gridding of one of the websites I am responsible for the frontend on, and I believe that we have to start using solutions like this for three main reasons:

1. Maintainability. If we use well defined components with a good documentation, it will be easier for people working with maintenance of the website, to create components, pages, flows that we know for sure will fit the graphic profile and will work in all browsers.
2. Quality. By minimizing the number of rows of new code on all levels we will create a better product. By using already tested and verified code, we will of course create the foundation for a better product.
3. Focus. Designers can focus on design, developers on development and people who have written CSS in the past, can start build UI Components in [INSERT_YOUR_PREFERRED_LANGUAGE_HERE] and make sure developers are distanced from the look and feel by creating a good API for creating these design components. But that is another article.

6 Should Read JavaScript Articles

Below I have listed a couple of JavaScript articles you should read to prepare for the awakening of JavaScript as the main web development tool. It doesnt matter if you consider yourself a .NET or Java-developer, if you do not learn JavaScript you will probably have a hard time finding a job within a couple of years if you would like to work with web development. And by the way: JavaScript-solutions today is not the same solutions you where scared with when you grew up.

Writing jQuery Plugins by jQuery Team

One of the strengths with the jQuery javascript library is the plugin framework that lets you easily create your own plugins. This article/HOWTO guides you in the art of writing jQuery Plugins

JavaScript Inheritance by John Resig

John Resig, creator of jQuery JavaScript Library has a nice article on how to simulate inheritance in JavaScript. This article is a good read for people who, by nature and religious reason, avoids JavaScript because the lack of inheritance and other must have OO-principles.

Event Driven JavaScript by Christian Heilmann

Christian Heilmann, Lead Developer at Yahoo!, has written a piece on JavaScript that dives into event driven javascript, custom events and planning your frontend application.

Simple Class Instantiation by John Resig

Another interesting article from John, focusing on Class Instantiation in JavaScript. Do not stop reading after the article, in the comments you find some interesting comments from a lot of people who are well known in the JavaScript-sphere, among them Brendan Eich, the creator of JavaScript.

JavaScript Closures by Richard Cornford

“A closure is formed by returning a function object that was created within an execution context of a function call from that function call and assigning a reference to that inner function to a property of another object.”

Closures are as cool as they are hard to get.

From Most Misunderstood to Worlds Most Popular Programming Language by Douglas Crockford

Douglas Crockford, architect at Yahoo! and introducer of JSON (JavaScript Object Notation) as data interchange format between applications has a mixed emotion relationship to JavaScript, that makes his articles more interesting to read.

Conclusion

I believe that more than 50% of all web development will be made in JavaScript within 10 years. JavaScript is the language for Mashups and AJAX-solutions and we are not going to see fewer solutions based on that. Combine that with open API:s from data providers such as Google, Yahoo and Blogs.

JavaScript is here to stay, make sure you read these good and advanced articles from people who will build the foundation you will develop on tomorrow.

Why Traditional Usability Sucks

Maybe your boss, contractor or project owner has just started to be usability-savvy and is planning for usability-studies, personas and interviews in the next big project coming up. You may even have a vision defined on your company saying that you are going to be focusing more on usability. It is good that more people in the organisation identify users as the key to success, too bad they use old metrics to get there. This article will show why traditional usability sucks and how you listen to your users in a more efficient and thus better way.

Traditional Usability

Traditionally usability focus on taking care of user aspects early in a project. The best thing in traditional usability is to be able to identify key user personalities, also called personas, early and stick to those personas until they are proven wrong, then we have to refine the personas to fit reality. A persona can be used to identify people you invite to a usability study to test your interaction designs or even better, your prototypes. If your personas actually are correct and you have managed to find 5-10 people that fits the personas for your study, you should be able to take actions on the things that arise during the testing. They say that if someone has a problem with some of the key use-cases, we have a usability problem. Back to the drawing-board. New prototypes, new tests and new evaluation or if errors are small instruct designers and developers on the issues and possible solutions (patterns).

As you all see, this only fits in large projects never aimed for release or projects where the usability work is more important than the end-user usability. The later happens when someone would like to label their product as “user-friendly” they can say that:

We added years of usability testing, user identification and yada yada yada in to this product.

Often sayings like that translates to:

You may think that this product suck, but we have actually used a usability expert with all the fancy methods to achieve this; It doesnt just suck, it sucks in a way you dont understand. But from our point-of-view this product is usable.

To be honest, most of the time, the reality looks a little bit different than explained above.

The errors:

  • Big projects
  • Personas based on imagination
  • Time consuming process
  • Based on the key assumption someone knows “usability”
  • Based on the key assumption someone knows “the user”
  • Based on the key assumption that we are building something people want

OK, enough ranting, now I have to come up with an idea on how to solve these problems, otherwise I am just another grumpy old man ranting about stuff I tend to dislike for no apparent reason.

Below I have listed processes and entities within your product that will increase the end-user usability without even touching personas, usability testing and “usability experts”. The key to all is agility, responsiveness and user centered development.

Daily releases

By releasing daily. It may be features, bug fixes, smaller or bigger redos, you will come closer to your users, and they will feel that the product you are working on is responsive and fixes things when they arise. Releases in short cycles opens up for shorter experiments as well, test that new listing of news, didnt work? Remove it tomorrow. I am pretty sure that your users will like your approach as it is evident that you are trying to build a better product in the open, and not with your “usability expert”-suit on.

Developer Communities

Talk to your customers. Let the developers and marketing managers blog about the work you are doing on the product. This will invite users to comment on the blog and discuss the upcoming features, bug fixes and releases that will be made on the product. I believe this is one of the big things for services such as Flickr, Digg and Geni. Of course your manager will find some reason for not doing this, maybe he/she will say that you are a public company, and it is important to control information and so on. But that is not an argument, that is just plain old bossing and being scared. Yahoo, Microsoft and Google all blog about their products, of course you can as well. No argument apply from bosses.

Extendable Web and API:s

If you are getting users to your web you must have some content they like. Offer a way for coders and entrepreneurs to use this data. When exposing data as services and API:s you will get enable user centered development. You have your roadmap for your product together with your users, but sometimes it is difficult to achieve everything you have in mind due to resources like time and people. An example of how API:s can benefit your users is Flickr once again, where the best integrated uploading tools for image software (iPhoto etc etc) are made by external developers, and the existence of such tools make the product Flickr even more user friendly.

I bet that in the future there will even be a user-centered and usable application built on Facebook. Nah, just kidding.

Tuning

A lot of websites of today, with old fashioned project-based development, and huge work package releases do not focus so much on tuning of the product. The development is more feature-driven and when one feature is developed and released the development team move on to the next feature and the philosophy of this is easy to understand, but should be avoided. When we run a website, we should tune, tune, tune, tune and tune. This is true for usability, performance, security, conversion rates and so on. By adapting daily releases and Core Teams for Core Products you will be able to tune your product to perfection.

Core Teams for Core Products

Within your website (product) you may have different core products, such as:

  • Community
  • Signup and User Profile
  • The USP (Unique Selling Point)
  • Customer Support
  • Payments
  • Platform

By forming teams around your core products you will get dedicated people working on your product with a big focus on the end-user, and when the end-user is in focus, we will get even better usability, and as the teams are constantly working and blogging about their part of the product they will of course deliver what the user wants daily. This type of organization guarantees that you get people to love your product, both users and developers. But this does not mean that you should arm a fleet for this purpose. Often a small team performs better than bigger ones. It is my strong belief that keeping the number of developers onboard to a minimum will increase your efficiency.

People Dependency

I am going to advocate something that almost everyone who is into organisation and processes dislikes: People Dependency. This is tightly connected to the Core Teams for Core Products thing. By letting people get a bigger responsibility for parts of the product, they will start to care more for that part, and other people in the organisation will know that this person is one hell of a girl/guy to go to when it has something to do with [PROCUCT-NAME]. Responsbility, felt or given, is a key thing when it comes to focusing on users. if you feel that you are responsible for a certain part of the product, you will not let that part die slowly, you will break your neck for giving the users what they demand of you in their blog comments to you.

Product Development not Projects

Die projects, DIE! Often a website can be seen as a product. Products are tuned into perfection and every aspect of the further refinement of the product should be considered product development. The key difference is small steps. By changing something that works in small steps, we guarantee that we at least deliver the quality we had yesterday, but hopefully with a small extra feature, bug fix or other enhancement made, and not as in project based product enhancment, with a big bang that hits the users and reality hard as a rock, and if we are lucky without destroying something that actually worked. Users are not better of with a new product every 10 months, they are better of with a fine tuned product development cycle that focus on giving users something every day in order to make their experience better.

No extra features

By giving users something every day, does not mean that we get feature creep and start adding new functionality to our product every day. We should be careful about that. The key of daily releases is tuning of the existing features and maybe even removal of unusued ones. By focusing on creating the best product available it is important that we can give our users the best features available, but no more than they need to complete the tasks they are using our product for. If we start to create extra features we will end up spending a lot of time tuning the things people may not actually use. Of course there are different approaches to this, but I advocate the few features approach. I think that few features makes it easier for the user to understand what you are offering, and your product will become more sticky to them. But features is a big thing for argument, just compare Zune with iPod. 37signals.com advocates the introduction of fewer features as well in order to create better products for the end user.

User Input based on Analytics and Statistics

This may sound like something that is actually not worth mentioning but it has been known to happen that people sometimes makes assumptions and create things from these assumptions only to be proven wrong. Do not get me wrong, I believe that we must do this in order to find new cool products, but I also believe that we can create more usable products by using all statistics and analysis we can get our hand on in order to getting to know our product and end-user better. But we do not want to get stuck in some Business Intelligence/CRM-crap organisation that makes it impossible to fart without asking the stats first. We want to be agile, and then all of this intelligence must be agile as well. Everyone working on a product should have access to this kind of data, because a marketing manager may draw one conclusion from the data, an analyst one conclusion and a developer another. By making this data available in the organisation end users gets a better product. We must not hide such information for a few managers.

Conclusion

Start blogging, create small teams based on your core products, stop calling people usability experts, start listening to your users, remove features that is not needed, start tuning, focus on product development not projects, release something everyday, create API:s for your content and tune, tune, tune, tune. This will make your product usable.

And remember, there are no such thing as usability experts. Only users.

Social Networking and Online Marketing

The number of social networks is growing fast. An average user probably uses more than one of the big social networks such as MySpace, Facebook, Ning, LinkedIn, Delicious, Twitter or Digg on a daily basis. As a lot of traffic is generated on this type of sites, a lot of people will try to make a quick buck by spamming the networks. In this article we will look at how to advertise or market yourself, your product or service on a social network without being seen as a spammer. In this case, networks, interaction, trust and content is king.

Some things you have to take into account in order to succeed in your online marketing on social networks and communities.

Network

Make sure you connect to the right people, that is people you have some kind of connection to based on different features such as:

Do not connect to people where you have no common ground, this will just look suspect and spammy. If someone has 10000 friends on Facebook I know for sure he/she is not connecting to each and everyone in his/her list on those features and that the reason for having 10000 friends is either for showing off or for spamming some product or service they offer.

The power of networks that the people you connect to and trust other connectors. It is impossible to connect to all potential customers, but it is better to connect to a network of people that in turn connect to other people. THAT is the power of the social network.

Trust

Trust is very important when it comes to social networks. Why should you even think about buying or listening to something if you do not trust the person who tries to convince you. Who do you trust? People tend to trust people they know, people who think like they do and people who people you trust trust. This is why building the correct network is essential to your opportunities to create a solid market value for whatever you are selling online. Do not overachieve! Focus on creating a network of people you trust, and trust you. They will in turn connect to people they trust. You then get a chain of trust and if you play your card right you will be able to sell better in this kind of environment as you have the trust-factor to build on.

Interaction

By interaction, we mean posting in guestbooks, messaging and answering messages you get in the networks. By interacting without always trying to sell, you will gain trust and if you gain trust, maybe the word will spread. As powerful a social network can be for business, as destructive can it be if you spam or play your cards wrong in the interaction. Within minutes, a lot of build up trust can have vanished.

Content

By adding content to your network (posting links, images, stories or good analysis) people will get a better picture of who you are, what you stand for and relate to you easier. This will make it easier for people to actually connect to you and trust you.

Conclusion

As a lot of other things, social networking is something that should be taken seriously and be built long-term and not for short-term gains. If you focus on Network, Trust, Interaction and Content and avoid spam to any cost, we believe that you will gain a lot in terms of marketing space online and in goodwill.

In order to utilize the traffic you will gain from this type of marketing, it is important that your front end architecture is up to date and focused on serving your goals maximising traffic and income.

Long Tail SEO

What is the Long Tail? How can it help you? The term “long tail” was created in 2003 by author Chris Anderson in his book The Long Tail – Why the Future of Business is Selling Less of More. For online stores such as Amazon a big part of their income is from hard-to-find items. Because of the size of their inventory they are going to attract a huge number of customers searching for such items. The long tail turns out to be as important as the sales of best-sellers and other items that are of interest to bigger audience. So Long Tail refers to targeting smaller niche markets often. When a lot of smaller niche markets gets targeted, as in Amazons case, this tends to create a big impact on sales.

In Search Engine Optimization the Long Tail can be translated to content creation or targeting on uncompetitive keywords. When targeting a market where competition is fierce, I would suggest that you create a lot of content (user generated preferrably) that touch the subjects and keywords you would like to compete for. Lets say you would like to try to hit the number one spot for a keyword such as “mortgage”. This is not possible without one of three options:

- You have infinite resources of time to put into link building
- You have infinite resources of money for paying for link building
- You do a lot of white-hat SEO combined with some black-hat SEO

So in order to ever rank high for high competitive keywords you must start targeting the long tail. Maybe you will find that while climbing the SERP for your targeted keywords, you actually are doing well with your long tail rankings and this is where you should put your focus. Generating traffic to these types of items will benefit your rankings for more competitive keywords organically as you will get links to your long tail content, and if that content relates to your targeted keywords, you will climb the SERP for those as well. It is a win-win situation. And the key is content that is a niche of your main target. This type of content can be:

- Databases with content that relates to your premium keywords
- User generated content in forums, blogs and social networks
- Products

Using Long Tail keywords has many benefits. There is less competition involved with Long Tail keywords. It is a lot easier to warrant good page rank with the major search engines. I firmly believe that using Long Tail keywords is the way to go because chances are you are reaching the audience that you intended to reach. If you have a new blog, using Long Tail keywords should generate nice traffic for you.

SEO and Online Marketing are entities you have to catalyze using the correct front end architecture. When the different parts building up your front end architecture is built and utilized to its fullest extent, your SEO and Online Marketing will prosper.

Online Marketing Basics – Conversion Rate

What is conversion rate? Conversion rate is a measure of how well users converts from one state to another action. For example, if your website has 100 visitors and of those 100 visitors, 20 of them take some form of action, the action can be anything from generating a lead to making a sale. If 20 of the 100 visitors take action then you have a 20% conversion rate. Conversion rate marketing is basically the practice of trying to improve your marketing effectiveness. Conversion rates often are used as a measuring tool, these rates should let you know how well your site is doing. It also lets you know what is working and what is not working.

In order to widen the analysis, it is often necessary to see how different types of traffic rates when it comes to the specified conversion rates you are tracking. Typically you would at least identify and track these types of traffic:

This will give you a good measure on what traffic converts the best and where you need to put effort into your conversions.

There are several online tools for measuring Conversion Rates. Google Analytics lets you specify Goals where you can easily, both graphically and by numbers, track your conversions on a very detailed level. I would suggest using Google Analytics for this kind of analysis.

Online Marketing Basics – PPC

What is PPC? PPC is short for pay per click. Pay per click is a form of advertising that many internet marketers use. For example, let’s say you have a home based business and you need advertising an easy way to get the word out would be PPC. PPC is the process of a company every time someone clicks on your ad. PPC often lets you determine the maximum amount you are willing to pay for each click as well as getting to choose your own keywords. PPC is no doubt a great way to get exposure.

Read the post on CPM – impression based payment model.

Online Marketing Basics – CPM

This is the first in a series of Basic Online Marketing Posts, describing some acronyms and ways to go about starting your online marketing.

What is CPM? CPM is an acronym for Cost Per Thousand. The “M” in CPM comes from the latin word “mille” which means “thousand.” Despite PPC’s popularity rise, CPM remains a very effective way to advertise. Instead of paying per click, you purchase a set amount of impressions. Impressions simply shows how many times your ad has appeared on a website. CPM can be a very cost effective way of advertising. Instead of paying $1 per click with PPC, if you purchase 1000 impressions for $3, you may get 10 clicks for $3, saving you a whopping $7. If you are looking for tons of clicks at a potentially low price then CPM is definitely the way to go.

DOMAssistant 2.7 released with unicode support

Robert Nyman announced that DOMAssistant 2.7 was released today. They have some good competiton from jQuery, Prototype, MooTools, Ext and all the others. Interesting to see that DOMAssistant is the first library to actually take things like Unicode-support seriously. Of course localisation and full unicode support will be added to jQuery and Prototype in some way, either as plugins or in the core. I would like to see developers who actually used DOMAssistant in a live project to share their thoughts on it. Why should someone switch from jQuery?

There is a strong team that works on DOMAssistant, maybe it would have been better to actually add these efforts into a library that has more users in order to build a “standard” library.

In order to choose the correct library for your front end architecture it is crucial that you take aspects such as traffic, security, maintenance and competence into account.