Articles

Sass – the extended arm of CSS; the power factor that brings elegance to your code.

With Sass, it is all about variables, nesting, mixins, functions, partials, imports, inheritance, and control directives. Sass makes your code more maintainable and reusable.

And now, I will show you how to make your code more structured and organized.

The organization of files and folders is crucial when projects expand. Modularizing the directory is necessary as the file structure increases significantly. This means structuring is in order. Here is a way to do it.

  • Divide the stylesheets into separate files by using Partials
  • Import the partials into the master stylesheet – which is typically the main.sass file.
  • Create a layout folder for the layout specific files

Types of Sass Structures

There are a few different structures you can use. I prefer using two structures — a simple one and a more complex one. Let’s have a look.

Simple Structure

The simple structure is convenient for a small project like a single web page. For that purpose, you need to create a very minimal structure. Here is an example:

  • _base.sass — contains all the resets, variables, mixins, and utility classes
  • _layout.sass — all the Sass code handling the layout, which is the container and grid systems
  • _components.sass — everything that is reusable – buttons, navbars, cards, and so on
  • _main.sass — the main partial should contain only the imports of the already mentioned files

Another example of the same simple structure is the following:

  • _core.sass — contains variables, resets, mixins, and other similar styles
  • _layout.sass — there are the styles for the header, footer, the grid system, etc
  • _components.sass — styles for every component necessary for that project, including buttons, modals, etc.
  • _app.sass — imports

This is the one I usually use for smaller projects. And when it comes to making a decision of what kind of structure to be used, the size of the project is often the deciding factor.

Why Use This Structure?

There are several advantages why you should use this organisational structure. First of all, the CSS files cache and in doing so, the need to download a new file for every new page visit is decreased. In this way, the HTTP requests decrease as well.

Secondly, this structure is much easier to maintain since there is only one file.

Thirdly, the CSS files can be compressed and thus decrease their size. For a better outcome, it is recommended to use Sass/Less and then do concatenation and minification of the files.

In case files become disorganized, you would need to expand the structure. In such a case, you can add a folder for the components and break it further into individual files. If the project broadens and there is a need for restructuring the whole Sass structure, consider the next, more complex pattern.

The 7-1 Patterned Structure

The name of this structure comes from 7 folders, 1 file. This structure is used by many, as it is considered to be a good basis for projects of larger sizes. All you need to do is organize the partials in 7 different folders, and one single file (app.sass) should sit at the root level handling the imports. Here is an example:

sass/
|
|- abstracts/
| |- _mixins // Sass Mixins Folder
| |- _variables.scss // Sass Variables
|
|- core/
| |- _reset.scss // Reset
| |- _typography.scss // Typography Rules
|
|- components/
| |- _buttons.scss // Buttons
| |- _carousel.scss // Carousel
| |- _slider.scss // Slider
|
|- layout/
| |- _navigation.scss // Navigation
| |- _header.scss // Header
| |- _footer.scss // Footer
| |- _sidebar.scss // Sidebar
| |- _grid.scss // Grid
|
|- pages/
| |- _home.scss // Home styles
| |- _about.scss // About styles
|
|- sections/ (or blocks/)
| |- _hero.scss // Hero section
| |- _cta.scss // CTA section
|
|- vendors/ (if needed)
| |- _bootstrap.scss // Bootstrap
|
- app.scss // Main Sass file

In the Abstract partial, there is a file with all the variables, mixins, and similar components.

The Core partial contains files like typography, resets, and boilerplate code, used across the whole website. Once you write this code, there is no further overwriting.

The Components partial contains styles for all components that are to be created for one website, including buttons, carousels, tabs, modals, and the like.

The Layout partial has all styles necessary for the layout of the site, i.e., header, footer.

The Pages partial contains the styles for every individual page. Almost every page needs to have specific styles that are to be used only for that particular page.

For every section to be reusable and the sass code to be easily accessible, there is the Section/Blocks partial. Also, it is important to have this partial so that you don’t need to search whether particular code is in the home.sass or about.sass files in the Pages partial.

It is a good idea to put each section in a separate .sass file. Thus, if you have two different hero sections, put the code in the same file to know that there you can find the code for the two sections. And if you follow this pattern, you will have the majority of files in this folder.

The Vendors partial is intended for bootstrap frameworks so, if you use one in your project, create this partial.

I recommend you use app.sass as the main folder. Here is how it should look:

// Abstract files
@import "abscracts/all"; // Vendor Files
@import "vendor/bootstrap.scss"; // Core files
@import "core/all"; // Components
@import "components/all"; // Layout
@import "layout/all"; // Sections
@import "sections/all"; // Pages
@import "pages/all";

Instead of having a lot of imports in the file, create an all.sass file in every folder. Each all.sass file should contain all the imports for that folder — and to make it more visible and understandable, create a main file.

Organisation

The biggest benefit of this structure is organisation.You always know where to check if you need to change something specific. For example, if you want to change the spacing on a Section/Block you go directly to the Sections/Blocks folder. That way, you don’t need to search in the folder to find the class in a file.

Facilitation

When the code is structured, the processes are promptly facilitated. They are streamlined and every segment of the code has their own place.

Final Words

Organizing code is essential for developers and together with all other skills, it is the most effective way to improve the functioning of the site. And even though there are multiple ways of organisation and different strategies, opting for simplicity helps you avoid the dangerous pitfalls. And finally, there is no right or wrong choice since everything depends on the developer’s work strategies.

 

Featured image via Reshot.

Source


Source de l’article sur Webdesignerdepot


Agile 

AI

Big Data

Cloud

Database

DevOps

Integration

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

IoT

Java

Microservices

Open Source

Performance

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

Security

Web Dev

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

Source de l’article sur DZONE

As a freelance web developer, how many clients do you get from your website? If you’re like most, you’re probably lucky to get one client every 2-3 months. Unfortunately, that’s very common.

These days it’s not enough just to be a web developer if you want to make really good money. You have to be able to differentiate yourself in the marketplace to get more opportunities. If you can do this successfully, I’m 100% sure that it will help you win more projects and charge higher rates.

So today I’d like to share with you a little bit of my own story. In the last 4 months, I was able to position myself as a specialist with my personal site that ultimately helped me win more projects and get better clients.

The Importance of Niching Down

The first thing that I would invite you to do is to shift your thinking a little bit.

If you want to be a high-paid professional (especially if you’re a freelancer), you need to learn how to market and sell yourself. And the first rule of marketing is to identify your target audience and the result that you help them achieve.

I can’t over emphasize the importance of this.

You need to know exactly who you help and the outcome that you provide. That is ultimately what you get paid for. So you need to define your ideal client.

My suggestion is to pick a market segment that you would love to work with, that has the money to afford you and (ideally) those that have already done some projects for. Once you have identified your target market, you need to create your positioning statement. Your positioning statement should immediately tell who you help and what results you help them achieve.

Here is a formula that you can use to create your positioning statement:

I help __ (target audience) __ do (build/achieve/overcome) ___ (problem that you help them solve).

For example: I help startup SaaS companies build highly converting websites. You can go even narrower if you want, but this is already much better than just saying, “I’m a web developer.”

If your positioning statement is “I help startup SaaS companies build highly converting websites” it can still be narrowed down and improved. As you gain more experience and work with more clients, you can refine it to something like: “I help healthcare SaaS companies build highly converting websites.”

Now imagine if a SaaS startup founder from a healthcare niche came to your site and saw that positioning statement vs a very generic one like “I’m a web developer”. How much easier would it be for you to differentiate yourself and gain a huge advantage over your competitors in the marketplace?

4 Elements of a Perfect Landing Page

“I am passionate about coding, I have 10+ years of experience, client satisfaction is my main goal…” 

Have you ever seen statements like that on someone’s portfolio site? Or maybe it even says that on your own site. From my experience, statements like that don’t really help you convert site visitors into customers.

If you personally go to a company’s website, what would you like to see yourself as a visitor? Somebody saying how good they are, or to find out if they can be a good fit to solve your problem? I think that most of the time the latter is what you’re after. That’s what other people usually go to your website for; they want to know how you can help them solve their problems.

For instance, take a look at this section from Tom Hirst’s website:

As you can see, this immediately helps the visitors understand if Tom is a good fit for them or not. He doesn’t just boast about how good he is, but rather helps the client understand what problems he can solve for them. Another important part here is that Tom doesn’t use a lot of technical terms. Since a lot of his visitors may be not as tech-savvy as he is, there is no point in confusing them with technical jargon. The more you can speak their language – the easier it will be for you to build trust and connection that will later help you during the sales process.

Let me tell you a bit about the 4 parts of my site that I think have contributed significantly to having me win more projects. The 4 elements are problem, solution, proof, and call to action. Let me go over them 1 by 1 and explain why they’re important.

1. Problem

A good way to start your landing page sales letter is by identifying the problem of the client. If you know their pain points and you mention them, you should be able to hook them into reading your copy. And a well-written copy plays a significant role in persuading your visitors to take the next action.

2. Solution

Once you have mentioned their problem, you need to present them with a solution that you provide. You need to show them how working with you can solve their problems. Whatever their problems are, you have to show them that you understand them and can help solve them.

That’s what UX designer Matt Oplinski is doing on his website is doing. He knows that his clients might need help with 3 types of projects: Digital Products, Marketing Websites or Mobile Apps. For example, the clients who are seeking a redesign of their website may have an issue with their current conversion rates. And that’s exactly what Matthew lists in the middle section under “Custom Marketing Website” headline. I would even argue that he may have been a bit more specific with the solutions that he can offer.

The main takeaway here is that it’s important to be very specific with the result that you can help your clients achieve. The more accurate it is, the better it is going to convert.

3. Social Proof

Social proof plays an extremely important role in converting a lead into a customer. When someone comes to your site, they don’t know if they can trust you. If they were to spend one, two, five, ten or even more thousand dollars – they need to feel comfortable with you. They need to have at least some level of trust. That’s why they want to see as many signs as possible that you’re trustworthy.

Social proof obviously can come in many different forms. The most popular and important ones, in my opinion, are case studies with results that you’ve produced and testimonials. They will be absolutely crucial to persuade your clients and be able to differentiate yourself from others.

Here is a good example from Bill Erickson’s site:

Ideally, your testimonials should showcase a particular business goal that you’ve helped your client to achieve. But even if you don’t have those, you can use ordinary testimonials that your clients give you. That alone is better than no testimonials at all.

4. Call to Action

Last but not least you should have a single call to action on your site. Most likely it will be a button to contact you, or book a call with you.

In my opinion, it’s important to have a single call to action because if you give people too many options they will not be so focused on taking an action that you actually want them to take.

I also suggest that you have a call to action button at least 2-3 times on the page: one on the first screen where you have your positioning statement and/or your offer, and one at the very bottom of the page so that when they finish reading they don’t need to go back to the top to take action. Having another call to action in the middle of your page is also a good idea. My advice would be to add it after you’ve described the problem, your solution and presented yourself as someone who can help your leads with their problems.

Results

I started niching down and created my own website four months ago. Being a member of multiple freelance platforms, I’ve been fortunate enough to get enough leads in my target market to test out my strategy. So far the results are pretty amazing.

It has become a lot easier for me to win projects, get clients that respect my knowledge, and my process. Besides that, I’ve been able to significantly increase my rates for my work. A great thing about working with similar projects every time is that you automate and streamline a lot of things, improve your delivery process and become much more efficient. You can even create a productized service. This is something that is very hard to achieve if you’re constantly working on custom projects that have different requirements and involve different technologies.

To be completely transparent, I’m still in the process of building my authority in the niche, polishing my offer and gaining experience. I still have a long way to go. What I can certainly say today is that it has been one of the best decisions in my professional career.

To become a high paying professional in your industry you have to do things differently. Today I tried to show you one of the ways that you can improve your career or freelancing business fast. It probably won’t happen overnight, but in a matter of a few months you can be so much ahead of your competition if you deploy some of the strategies that I’ve shared with you today.

I really hope that this article has helped you gain some perspective and you will start to consider doing a similar thing that I did to achieve amazing results.

 

Featured image via Unsplash.

Source


Source de l’article sur Webdesignerdepot

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.

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.

Multiple Voices

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?

Accents

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?

Privacy Issues

if there are clips of your voice out there on the web…it can easily be imitated

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.

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.

Users Don’t Talk The Way They Type

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.

Website Processes Need to be Simpler

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.

Regular Updates

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.

Mistrust

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.

Larger Storage and Bandwidth

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.

We Still Don’t Know Where It Will Go

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?

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.

Will voice follow a similar trend?

No More Impulse Buying

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?

Voiceless Still Matters

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.

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.

 

Featured image via Unsplash.

Source


Source de l’article sur Webdesignerdepot

Google resembles an iceberg: there’s the part above the water we can see and use everyday; there’s also the part beneath the water, that we don’t see and know little about.

While many of us are concerned about the aspects of Google we don’t see — the parts that threaten our privacy, or monopolize the web — there’s no denying that Google offers some amazing products and tools, many of them free, all from the convenience of a single login.

Today we’re going to take a look at 12 tools from Google that really do bring something positive to the table.

1. Polymer

Polymer is an open-source JavaScript library from Google for building web applications using Web Components. The platform comes with a ton of libraries and tools to help designers and developers unlock the web’s potential by taking advantage of features like HTTP/2, Web Components, and Service Workers. 

The main feature of Polymer is Web Components. With Web Components, you can share custom elements to any site, work seamlessly with any browser’s built-in elements, and effectively use frameworks of all kinds. Products like LitElement (a simple base class for creating fast, lightweight web components) and PWA Starter Kit make Polymer easy to use. If you like, you can build your app entirely out of Web Components.

2. Lighthouse

Google Lighthouse is an open-source, automated tool for improving the quality of web pages. The software allows you to audit web pages for performance, SEO, accessibility, and more. You can run Lighthouse using ChromeDevTools, directly from the command line, or as a Node module. 

To use Lighthouse in Google Chrome, just go to the URL you want to audit (you can audit any URL on the web), open ChromeDevTools, and click the Audits tab. After you have run the audit, Lighthouse will give you an in-depth report on the web page. 

With these reports, you will see which parts of your web page you need to optimize. Each report has a reference doc that explains why that audit is important and also shows you the steps you can take to fix it. 

You can also use Lighthouse CL to prevent regression on your sites. Using Lighthouse Viewer, you can view and share reports online. You can also share reports as JSON or GitHub Gists. 

Lighthouse also comes with a feature called Stack Packs that allows Lighthouse to detect what platform a site is built on. It also displays specific stack-based recommendations.

3. Google Analytics

Google Analytics is the gold standard of analytics services. Google analytics can be installed on your site for free with a small amount of JavaScript and allows you to see all kinds of details about your site visitors, like what browser they’re using, and where they’re from.

By using Google Analytics you can make decisions about your site based on science, and therefore be somewhat confident that the decisions you make will result in the outcome you are expecting.

4. Flutter

Flutter is Google’s UI toolkit for building natively compiled applications for mobile, web, and desktop from a single codebase. The toolkit is open source and free to use. The best part of Flutter is that it works with existing code. 

The toolkit has a layered architecture that allows for full customization, which results in fast rendering and flexible designs. It also comes with fully-customizable widgets that allow you to build native interfaces in minutes. With these widgets, you will be able to add platform features such as scrolling, navigation, icons, and fonts to provide a full native performance on both iOS and Android.

Flutter also has a feature called hot reload that allows you to easily build UIs, add new features, and fix bugs faster. You can also compile Flutter code to native ARM machine code using Dart native compilers. 

5. Google API Explorer

Google has a huge library of APIs that are available to developers but finding these APIs can be difficult. Google API Explorer makes it easy for developers to locate any API. On the Google API Explorer web page, you will see a complete list of the entire API library. You can easily scroll through the list or use the search box to filter through the API list. 

The best part of Google API Explorer is that each link to a reference page comes with more details on how to use the API. API Explorer is an excellent way to try out methods in the Monitoring API without having to write any code.

6. Puppeteer

Puppeteer is a project from the Google Chrome team. The platform enables web developers to control a Chrome (or any other Chrome DevTools Protocol based browser) and execute common actions, much like in a real browser. Puppeteer is also a Node library and it provides a high-level API for working with headless Chrome. It is also a useful tool for scraping, testing, and automating web pages. 

Here are some things you can do with Puppeteer: generate screenshots and PDFs of pages, UI testing, test Chrome Extensions, automate form submission, generate pre-rendered content, and crawl Single-Page Applications. 

7. Codelabs

Google Developer Codelabs is a handy tool for beginner developers and even advanced developers who want to improve their knowledge. Codelabs provide a guided, tutorial, hands-on coding experience. Codelabs’ site is broken down into several tutorial sessions on different topics. 

With the tutorials on Codelabs, you can learn how to build applications from scratch. Some of the tutorial categories include Augmented reality, TensorFlow, Analytics, Virtual Analytics, G Suite, Search, Google Compute Engine, and Google APIs on iOS. 

8. Color Tool

Color Tool makes it easy for web designers to create, share, and apply colors to their UI. It also measures the accessibility level for any color combination before exporting to the palette. The tool comes with 6 user interfaces and offers over 250 colors to choose from. 

The tool is also very easy to use. All you need to do is pick a color and apply it to the primary color scheme; switch to the secondary color scheme, and pick another color. You can also switch to Custom to pick your own colors. After you have selected all your colors, use the Accessibility feature to check if all is good before exporting it to your palette. 

9. Workbox

Workbox is a set of JavaScript libraries and Node modules. The JavaScript libraries make it easy to add offline support to web apps. The Node modules make it easy to cache assets and offer other features to help users build Progressive Web Apps. Some of these features include pre-caching, runtime caching, request routing, background sync, debugging, and greater flexibility than sw-precache and sw-toolbox. 

With Workbox, you can add a quick rule that enables you to cache Google fonts, images, JavaScript, and CSS files. Caching these files will make your web page to run faster and also consume less storage. You can also pre-cache your files in your web app using their CLI, Node module, or webpack plugin. 

10. PageSpeed Insights

PageSpeed Insights is a handy tool from Google Developers that analyzes the content of a web page, then generates suggestions on how to make the page faster. It gives reports on the performance of a web page on both desktop and mobile devices. At the top of the report, PageSpeed Insights provides a score that summarizes the page’s performance. 

11. AMP on Google

AMP pages load faster and also look better than standard HTML pages on mobile devices. AMP on Google allows you to enhance your AMP pages across Google. It is a web component framework that allows you to create user-first websites, ads, emails, and stories. One benefit of AMP is that it allows your web pages to load almost instantly across all devices and platforms hence improving the user’s experience. 

12. Window Resizer

When creating websites, it is important that developers test them for responsive design – this is where Window Resizer comes in. Window Resizer is a Chrome extension that resizes the browser window so that you can test your responsive design on different screen resolutions. The common screen sizes offered are desktop, laptop, and mobile, but you can also add custom screen sizes. 

 

Featured image via Unsplash.

Source


Source de l’article sur Webdesignerdepot

In 2019, to keep pace with an interior redesign of its visitor experience, the Empire State Building decided to redesign its website. Blue Fountain Media were engaged to deliver the project. With the new site launching, we spoke to Head of Design, Tatyana Khamdamova about designing for the world’s most famous building.

Webdesigner Depot: The Empire State Building is probably the most iconic building in America, if not the world. Were there any points at which you thought, “Oh God, this is too much pressure”?

Tatyana Khamdamova: Yes, of course, it was a lot of pressure knowing that people all over the world will be looking at your work. But with the pressure, we also felt excitement and pride that we got to work on such an iconic project. Just thinking that we are doing the site for Empire State Building made us feel proud of all that other work we did during our whole life that gave us the opportunity to be a part of this project.

WD: Blue Fountain Media is a large agency. Did you utilize the whole company, or was there a smaller, dedicated team tasked with creating the site?

TK: On a project like this one, you need the expertise of the team members from all departments in the agency. You want people to work together from the beginning to ensure that their knowledge helps to shape the project and produce the best possible outcome. It’s important for designers and marketers, for example, to be a part of the strategy and UX phase to provide their input which minimizes tunnel vision and generates more ideas. You can only achieve the best results if every single detail from strategy to design to development is done right.

WD: That’s a lot of people to coordinate. Did any roles naturally come to the fore, or is design leadership a quality that varies from person to person?

TK: Some people are natural leaders in their fields. But, sometimes a certain project requires people to take responsibility and show their leadership skills within the team. So I would say that it’s a quality that varies from person to person and doesn’t depend on a role or a title at all.

WD: What were the central aims of the redesign?

TK: ESB’s previous website did not reflect the level of design to match their iconic brand, UX was not user friendly, the content was outdated, and they wanted to grow online individual and group ticket sales. In addition to competing with global and NYC based tourist attractions, ESB was also faced with growing competition in the NYC Observatory market with Top of The Rock, One World Observatory, and Edge at Hudson Yards.

While the building underwent a $165 million renovation, BFM was tasked with creating a best in class website that reclaimed their iconic brand identity while providing an intuitive, and enjoyable user experience for both domestic and international visitors looking to learn about the building, exhibits, and the many ticket experience packages that they offer to visitors.

WD: How do you approach researching a unique project like this?

TK: We went to the source! First, we spoke to visitors of the Empire State Building while they were in line. What was their experience, did they use the website, what made them choose to visit the observatory instead of or in addition to some of the other competing observatories in the city. We then looked at other key tourist towers worldwide to see how they are positioning themselves globally to draw inspiration. We did in-depth stakeholder interviews that included folks working at the building every day and the types of interaction and questions they field from visitors. We conducted surveys of international travelers to understand their motivations and concerns. Finally, we dug into the website itself by testing using various protocols and platforms to understand the visitor paths, what they were able to easily do, and what tasks they may have found challenging. Drawing from all of those insights, we planned and designed the site using an iterative process.

WD: ESB visitors come from all over the world; how did you tackle designing for an international audience?

TK: People across the globe speak different languages, have different cultures and needs. Our goal was to learn about the audience and give them a site that looks and feels like it was created for them. Luckily we were working for the iconic building that is well known internationally and capturing the design aesthetic of the building itself already made the site recognizable across the globe. When working on the project we also were making sure that all users can see the information in their local language when they land on the site and have easy access to the language selector in case they want to change it. When you translate from one language to another the number of words and characters is not always the same. It was important to make sure that the site is designed and developed with an understanding of how the content will be displayed in other languages. With the localization help of our parent company Pactera EDGE we successfully translated the site in several languages and tested it to ensure that it looks right for the local and international audience.

WD: The famous view of the ESB is the external view, but your design feels more in keeping with the experience of the building’s interior. Was that a conscious decision?

TK: It was a conscious decision to create a site that makes you feel like you are visiting the building. Our goal was to make the visitor excited to buy a ticket and see all that beauty with their own eyes. But, if someone doesn’t have an opportunity to come to NY we wanted to make that online experience as close to the real one as possible. We understand that nothing will replace the actual visit to the Empire State Building but we wanted the website to feel real and by using the great photography and amazing Art Deco design elements, we were able to do so.

WD: How did you interpolate such a complex style as Art Deco into a functional site?

TK: Fortunately for us, our office is located a couple blocks away from the building and we had the opportunity to go there and see some of the details. We also had access to the great photos of the renovated hallways, exhibits, and observatory decks, which gave us the idea of how the Art Deco elements were used in the interior design of the building. We all know that interior design and web design have different needs and goals so it was an interesting challenge to design a site that makes you feel like you are inside the building without overwhelming users and that content is easy to read and the ticket purchasing process is simple and clean. We re-created a lot of design elements used on the ceiling, walls, and floor of the building simplified those elements and made them part of the website design. A lot of those elements were used in the background, call to actions, icons, and maps, and combined with the brand colors used in both interior and web designs we were able to give the site the Art Deco look.

WD: There’s been speculation in the design community recently that Art Deco may re-emerge as a trend in the 2020s. Having worked with the style, do you think it could benefit the wider web?

TK: This was a very specific design approach for a very specific project that takes us back to the 1920’s and emphasizes that era through modern twists in web design. I do not see how it can be applied on the web in general unless the client specifically asks for it, for example, architecture website, real estate, or furniture site. Every project is unique and has its own goals and style and there is no one solution that will fit all. As of today, The ESB is Art Deco in a sense and it truly owns that style.

WD: Can you share some details on the technology stack you employed?

TK: The site was built on the Drupal CMS, integrates with Empire’s partner Gateway Ticketing System, and is hosted on Acquia.

WD: Why Drupal? Does it have qualities that suit a project of this scale, or is it simply the case that BFM had the pre-existing expertise of Drupal to facilitate the build?

TK: BFM is a dev-agnostic production team and we always ensure we’re making the best recommendation to our clients. In this case, the previous website was built on Drupal, so in order to decrease the effect of a new platform rollout that would be unfamiliar to the internal ESB teams, we decided to keep the site on the Drupal platform. Luckily, Drupal is an extremely flexible CMS and the needs of the site perfectly align with what Drupal provides.

WD: With visitors from around the world, the range of browsers and devices you had to consider was vastly larger than most projects. Did you draw a line for support? If so, where was it?

TK: BFM constantly updates our list of supported browsers and devices to stay in line with changing technology trends and device usage around the world. We’re extremely lucky that our larger organization, Pactera EDGE, has deep roots in globalization and localization, so we leveraged their team to help us with all aspects of website visitors from the many regions around the world, including translation services and testing. Since this was a complete overhaul, we ensured the baseline standard for all devices was met and will continue to enhance as the future technology needs become apparent.

WD: The Empire State Building gets millions of visits each year, what sort of server resources do you need to throw at it to guarantee uptime?

TK: BFM is a partner of Acquia, and Empire State Building is hosting their new site with them. Acquia is a wonderful ecosystem built specifically for high performing drupal websites and provide many tools for their hosted sites to be able to handle fluctuations in visitors, traffic surges, and with the 24/7 support offered, they can easily manage the changing needs of worldwide visitors.

WD: Now it’s live, how does the new ESB site relate to its real world presence?

TK: The Empire State Building defines the New York City skyline. The world’s most magnificent Art Deco skyscraper, it’s a living piece of New York history and an instantly recognizable symbol of city culture today. The old site did not reflect the amazing interior and exterior design of the building and we had a chance to showcase the redesigned interior and bring more attention to the beautiful Art Deco design elements. We wanted to create the site to make you feel like you are visiting the building. By showcasing the exhibits, renovated halls, and observatories through compelling photography and architectural details, our goal is to make the visitor excited to buy a ticket and see all that beauty with their own eyes.

We’d like to thank Tatyana for taking the time out of her day to talk to us.

Source


Source de l’article sur Webdesignerdepot

Contentful; Webster’s Dictionary defines “contentful” as… not found. Clearly someone made up this word, but that is not necessarily a bad thing.

The world of user experience metrics is moving quickly, so new terminology is needed. Largest Contentful Paint (LCP) is one of a number of metrics measuring the render time of content on a web page.

What is Largest Contentful Paint?

Google defines LCP as “the render time of the largest content element visible within the viewport.” For what we are talking about in this blog, we will consider “content” to be an image, typically a JPEG or PNG file. In most cases, “largest” points to a hero image that is “above the fold” and is one of the first images people will notice when loading the page. Applying optimization to this largest content is critical to improving LCP.

It is probably more instructive to view LCP relative to other metrics. For example, First Contentful Paint (FCP) and Visually Complete book end LCP.

Each metric has its pros and cons, but LCP is a happy medium. LCP marks when web page loading starts to have a substantial impact on user experience.

In Google’s opinion, to provide a good user experience, LCP should occur within 2.5 seconds of when the page first starts loading. Poor values are anything greater than 4 seconds.

How Does Largest Contentful Paint Impact Lighthouse Scores and SEO?

LCP is now part of several “Core Web Vitals” scores that Google will measure in its ranking algorithm. Each of the Core Web Vitals represents a distinct facet of the user experience, is measurable in the field, and reflects the real-world experience of a critical user-centric outcome.

In the case of the overall Google Lighthouse score, LCP represents 25% weighting on the performance score of Lighthouse version 6.0. This makes LCP the most important Core Web Vitals metric in determining the performance score.

While Google has indicated that content is still the most important factor in SEO ranking, a better user experience (as measured by Core Web Vitals) will generate higher rankings in a crowded field. If there are many websites competing for the top search engine spots, then Largest Contentful Paint will play a critical factor in rankings.

How to Improve Largest Contentful Paint

Now that you know that LCP is important, what can you do to improve it by making content load faster? Google provides a number of suggestions, but the most effective technique is to optimize content for the device requesting it.

For example, a website includes an 800kb JPEG image that is intended for high resolution desktops. On a smartphone, that would be optimized down to less than 100kb, with no perceptible impact on quality. LCP can improve by more than 60% — or several seconds — through this single optimization.

Find Savings in Largest Contentful Paint by using Image Speed Test

Image Speed Test is a great tool offered by ImageEngine.io that provides an analysis of LCP improvement opportunities. Just paste in the URL of the web page you are interested in optimizing, and the test will show you:

  • Image Payload Reduction
  • Speed Index
  • Largest Contentful Paint
  • Page Load Time (Visually Complete)

It also provides a video of the web page loading with and without optimizations. Finally, it analyses each image to provide an estimate of payload savings. In this case, the “largest content” on the page is this image. With optimizations, the image payload is reduced by 94%. That delivers a huge improvement in LCP.

How Does ImageEngine Improve LCP

ImageEngine is an image content delivery network (CDN) service that makes image optimization simple. Basically, for each image on the page, the image CDN will:

  1. Detect the device model requesting the web page;
  2. Optimize the image in terms of size, compression, image format;
  3. Deliver via a CDN edge server that is geographically closest to the user.

ImageEngine improves web performance for every image on the page, including the largest. You can learn more about ImageEngine here, and also sign up for a free trial.

Best Practices: Preconnect

In addition to using an image CDN like ImageEngine, a few other best practices can improve LCP. Using the resource hints to provide a preconnect for your content can streamline the download process.

For example, putting the following link statement in the HTML will accelerate the download process. The link statement will make the browser connect to the third party as early as possible so that download can start sooner. ImageEngine’s optimizations make each image download smaller and faster, but preconnect save time in the connection phase.

Best Practices: Minimize Blocking JavaScript and CSS

When JavaScript or CSS is “blocking” it means that the browser needs to parse and execute CSS and JavaScript in order to paint the final state of the page in the viewport.

Any website today relies heavily on both JavaScript and CSS, which means that it is almost impossible to avoid some render blocking resources. On a general note: be careful with what kind of CSS and JavaScript is referenced inside the <head> element. Make sure that only the strictly necessary resources are loaded in <head>. The rest can be deferred or loaded asynchronously.

When looking to improve the LCP specifically, there are some practices worth looking into more deeply.

Inline Critical CSS

It is not an easy task, but if the browser can avoid making a request to get the CSS needed to render the critical part of the page – usually the “above the fold” part – the LCP is likely to occur earlier. Also you will avoid content shifting around and maybe even a Flash of Unstyled Content (FOUC).

The critical CSS — the CSS needed by the browser to set up the structure and important styles of the part of the page shown above the fold — should in-inlined. This inlined CSS may also refer to background images, which of course should also be served by an Image CDN.

Do Not Use JavaScript to (lazy) Load Images

Many modern browsers natively support lazy loading, without the use of JavaScript. Because images usually are heavily involved in the performance of LCP, it is best practice to leave image loading to the browser and avoid adding JavaScript in order to lazy load images.

Lazy loading driven by JavaScript will add additional latency if the browser first has to load and parse JavaScript, then wait for it to execute, and then render images. This practice will also break the pre-parser in the browser.

If an image CDN is used to optimize images, then the benefits of lazy loading become much smaller. Especially large hero images that are above the fold have a large impact on LCP and will not benefit from being lazy loaded with JavaScript. It is best not to make JavaScript a blocking issue for rendering images, but rather rely on the browser’s own ability to select which images should be lazy loaded.

 

[– This is a sponsored post on behalf of ImageEngine –]

Source


Source de l’article sur Webdesignerdepot