Need Help for Bsc final year project

I am a final year student. Now I need to start work for final project. But I am not familiar how to do it.
Can you help me out, How to prepare a index page for my website ( Complaint website).

Or if you have completed project before, Please send me the index page.
Thanks.

Implementing Custom Policies With MuleSoft

Introduction

MuleSoft provides out-of-box policies that can be applied to APIs for enhancing the functionalities of the APIs. These policies include various categories like security, compliance, troubleshooting, transformation, QoS, custom, etc.

MuleSoft also provides the capabilities to implement custom policies and Custom Policies are policies that anyone can develop and apply to their APIs, with the intention of extending existing functionality or defining new ones. 

Multi-Tenancy Implementation Using Spring Boot, MongoDB, and Redis

In this tutorial, we will learn how to implement multi-tenancy in a Spring Boot application with MongoDB and Redis.

Prerequisites

  • Spring Boot 2.4
  • Maven 3.6.+
  • JAVA 8+
  • Mongo 4.4
  • Redis 5

What Is Multi-tenancy?

Multi-tenancy is a software architecture in which a single instance of a software application serves multiple customers. Everything should be shared, except for the different customers’ data, which should be properly separated. Despite the fact that they share resources, tenants aren’t aware of each other, and their data is kept totally separate. Each customer is called a tenant.

RavenDB 5.1 — Empowering Your Queries

RavenDB has been around for a while. The first production deployment (the backend for monitoring bird migration patterns in Norway) went live on Nov 2010. After a decade of working on the database, I thought that I had a pretty good idea about the kind of features that RavenDB has and what is the direction the project is going.

Archimedes famously said “δῶς μοι πᾶ στῶ καὶ τὰν γᾶν κινάσω”. That probably doesn’t make sense to you, since he spoke in Ancient Greek. But you can probably guess, since this is one of the most famous sayings in the world: “Give me one firm spot on which to stand, and I shall move the earth”. In the same sense, a couple of minor new features in RavenDB have been instrumental to open up a huge leap in the capabilities of RavenDB.

Scala Interview Questions

Let me guess, you are having your Scala interview scheduled and you are here to know what's in store for you in the interview. Well.....that would be the probable reason you opened this blog. So, without further ado, I'll start the topic.

What Is Scala?

Scala is a high-level language, statically typed language that supports OOPS concepts as well as functional programming concepts. The language Scala is written in Java(optional). 

10 Most Popular APIs for Names

"I don't care what you say about me, just spell my name right." - P.T. Barnum

When it comes to creating applications, savvy developers know how powerful names can be. Offering custom user names, generating random names, spelling names correctly, pronouncing names correctly, generating suitable nicknames, determing gender and nationality from names, checking identification from names, assuring names are correct and other name related tasks can all be accomplished via Names APIs.

YouTube Email Alerts – Monitor Videos around your favorite Topics

The Google Alerts service makes it easy for you to monitor brand mentions and your favorite topics on the Internet. Just specify one or more keywords and Google will send an email notification when new web pages matching your search keywords are found on the web.

The YouTube Email Alerts service is similar to Google Alerts but instead of scanning the whole worldwide web, it limits the searches to videos uploaded on the YouTube website. It then sends automatic email notifications when new videos are uploaded on YouTube around your topics of interest.

Here’s a sample email notification sent by the YouTube Alert system that, in this example, is configured to track new video uploads around three topics - Tesla Model Y, The Queen’s Gambit, and Minecraft tutorials.

YouTube Email Alerts

Setup YouTube Email Alerts

Here’s a step by step guide on how to set up your own YouTube email alert system for monitoring videos around your topics of interest.

  1. Click here to make a copy of the YouTube alert script in your Google Account.

  2. Inside the Google Script, go to line #12 and update the default configuration. You need to specify the email address where the alerts should arrive, the topic or keywords that you wish to track, and the list of negative words. If a matching video contains any of the negative words, they’ll be filtered out of the email notification.

  3. Go to the Run menu and choose the initialize option. Authorize the Google Script and your email system is deployed instantly. Go to your Gmail sent items and you should see an email alert with the matching videos.

The system is now deployed and it will send one email digest per day with a list of matching videos. The email is sent around 11 AM GMT but you can change this time by updating the value of the emailAlertHour property in the configuration.

Configure Video Alerts

How YouTube Email Alerts Work

The alert system is built using the official YouTube API with Google Apps Script. You can find the complete source code on Github.

When you run the initialize function, it creates a cron job that will automatically run once per day around the specified hour. It then uses the YouTube API to find all matching videos that have been uploaded on YouTube since the last execution of the script. It takes the 10 most relevant videos and adds them to the notification email.

const fetchYouTubeVideos = (query = "cats") => {
  const date = new Date();
  date.setDate(date.getDate() - 3);
  const dateFormat = "yyyy-MM-dd'T'HH:mm:ss'Z'";
  const publishedAfter = Utilities.formatDate(date, "UTC", dateFormat);
  const { items = [] } = YouTube.Search.list(["snippet"], {
    maxResults: 10,
    regionCode: "US",
    publishedAfter: publishedAfter,
    relevanceLanguage: "en",
    q: query,
    type: ["video"],
    fields: "items(id(videoId),snippet(title, channelTitle, channelId))",
  });
  return items.map((item) => {
    const {
      id: { videoId },
      snippet: { title, channelTitle, channelId },
    } = item;
    return { videoId, title, channelTitle, channelId };
  });
};

The preferredLanguage parameter in the configuration is, by default, set to en (English) and instructs YouTube to return videos that are most relevant to the specified language. You can use your two-letter language ISO code (like fr from French or hi for Hindi) here.

Similarly, the regionCode parameter (default is US) helps you restrict search results to videos that can be viewed in your country.

Also see: Google Drive File Monitor

Change vs. Inertia

Recently, I’ve become more deeply aware of the inherent tension between change and inertia, as it applies to the evolution and use of web technologies. These forces have always been present and opposed to each other, but it seems to me that the side effects of these collisions are impacting web development more noticeably.

On one hand, we’ve never seen more progress in the expansion of the array of web platform capabilities; the web is powerful and mature in ways that our 10-year younger selves would be seriously envious of. But on the other hand, like the crisp fall winds signal a seasonal shift, there’s a chill in the air settling down the once feverish pace of new JavaScript features—hello, JavaScript fatigue!—and new JavaScript frameworks seemingly launching weekly.

Technology is a word that describes something that doesn’t work yet.

Douglas Adams

As Adams’s humorous quip might imply, the software (technology) we work on doesn’t work yet, because it (and everything around it!) is always changing and evolving to something better.

Or… so it has seemed for a long time. But from where I peek out at web community trends, I think our community is shifting from the rapid expansion of the past few years to a season of consolidation and establishment.

There seems to be an expected assumption that any web team or project must stack itself on top of Babel, Webpack, TypeScript, JSX for the markup, styled-components (or CSS-in-JS of some sort), and one of just a handful of JavaScript frameworks (like React, Vue, or Angular).

That’s not to say these are the only options. I know there’s the Jamstack crowd who’s increasingly embracing static-site generation, and I know there’s the upstart Svelte crowd who wants to compile away all that front-end framework complexity (or so they claim).

But let’s be honest: the “diversity” we see in front-end framework tech now is more surface than substance. They all use some flavor of component-oriented mechanics (based on some kind of virtualized DOM), and with each new release of each framework, the parity between them is only increasing. We’ll see this space continue its contraction over the next few years, I think, to where the best parts of Svelte are built into React, and vice versa.

What will all this consolidation mean for the pace of change of JavaScript, or CSS, or even HTML itself? Will the core web platform technologies keep growing as they have, or will the demand for these changes subdue as developers stop asking for more and focus instead on doing more with what they’ve already got.

Is front-end tech almost solved? For my whole career, we’ve been assuming that every few years we’ll see a wholesale reinvention of the front end, on that ever-constant search for the perfect framework that rules them all. Are we nearing that point?

What’s clear to me is that the community is favoring inertia over change right now. What does work works so well—why should we rock the ship and try to disrupt and re-invent? The sheer brilliance (paired with countless human decades of blood sweat and tears) that has created the amazing front-end tools and frameworks might have finally done a good enough job that we don’t collectively care to keep asking it to do more.

Can you imagine trying to launch a competitor to React or Vue right now? Can you imagine trying to build a different tool to unseat TypeScript¹? It sure seems like a daunting enough hill that’s probably not worth trying to climb.

The big players have drawn in all the attention of millions of web developers worldwide, and they survived the heated change-fest over the last five years. We’re now settling on those few options that are left, as plenty powerful enough to build what we want. These solutions may not be idealist absolute maximums, but they’re undoubtedly approaching (at least) local maximums.

With the craziness we’ve all faced down in this weird year of 2020, maybe deep down in our guts, we’re all just yearning for some boring, stable, predictable comfort. Maybe that’s at least in part reflecting in our technology choices!?

I’ve been betting on change for, quite frankly, nearly two decades of my career in web technology. But I think my bet might be shifting to the predictability of inertia. We should assume that the default will be to stick to what you know already works rather than constantly looking for what might be emerging next.

Where’s your bet?

  1. In the case of TypeScript, I certainly can. I’ve been trying to do that for more than a year!


The post Change vs. Inertia appeared first on CSS-Tricks.

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

From Storage to Security: How to Keep Your Edge Sites Operating Smoothly

More and more companies are beginning to turn to edge computing for their data storage and processing needs as the benefits clearly outweigh those of a cloud-only configuration or corporate data center. Not only does edge computing allow for remote management, which is critical now more than ever as more people are working from home, but it also requires minimal space, is significantly less expensive, and most importantly, still allows applications to run on-site to support local applications.

Running applications on-site at the edge is a critical component to many business operations, especially for supermarkets and convenience stores, manufacturers, and IoT device developers, for example. The most important, and obvious benefit of running applications on-site through edge computing is the performance. An application can access and process data from on-site compute and storage much quicker than it can from the cloud. A point of sale system, for example, may have a slight delay when processing payment, but if all the purchase and payment information had to be transmitted to the cloud and back, we could expect that delay to be much longer. Additionally, the cost of transmission to the cloud or data center is significantly higher and security risks are greater. Data going to and from the cloud is more susceptible to breaches, but if an edge computing site is properly secured with encryption and key management, the risk of data loss is much lower than with constant transmission. 

Ask the Bartender: Integrate With Third-Party App or Use Native WordPress Plugin?

My question to you is how you see the future (or even the present) of integrating software with WordPress and when you should make the distinction of going the integration vs. native approach.

In other words, with the vast ecosystem of WordPress plugins out there, how can a website owner discern which responsibilities WordPress the software should handle and whether that functionality is actually better to plug another software or service into instead?

Alex

There was a time when I would have said build all the things in WordPress. I was younger then, a bit more naive. I was optimistic about using WordPress as a framework to build anything. There is a part of me that still leans in this direction. Mostly, this is because I want to see what developers in the WordPress ecosystem can achieve. I applaud anyone who pushes the platform beyond its current limits.

Few people would have guessed that WordPress would become an eCommerce powerhouse. However, WooCommerce has proven it can be done. I still remember when nearly every WordPress theme and plugin author was selling their commercial products via E-junkie. Now, Easy Digital Downloads is the go-to solution, and AffiliateWP handles the affiliate side of things.

Some of the best products from the WordPress plugin market arose from issues with third-party app integration. Their creators bucked the system and brought useful tools directly into WordPress. Many of these are now multi-million dollar products and companies that employ dozens, hundreds, or even thousands of people. They have their own ecosystems that allow even more third-party developers to make a living. And this is all done on top of WordPress.

I will always root for the home team, for the developers in our community to build native solutions.

However, the reality is that WordPress is not the best solution for everything. Depending on the application, the development team has likely put years of work into it, creating a specialized system that caters to that application’s users. The experience can often be far better than something available for WordPress.

I cannot imagine using WordPress as the backbone of a social video site like YouTube, even if it was a small site. The hosting costs would be astronomical. It is far easier and cheaper to rely on integration with YouTube rather than trying to rebuild it.

In Alex’s original correspondence, he also brought up a specific case about integrating with a third-party forum. This is a far more realistic quandary than an average user trying to build the next YouTube. It is also a question that does not have a single answer.

For users who are creating forums on their site for the first time, my advice would be to go with bbPress. It is a plugin that brings native forums to WordPress. While it is not nearly as powerful as some third-party forum applications, its best feature is that it works directly with the built-in user, role, and capability systems in WordPress. These are some of the more complex APIs in WordPress, and trying to sync user accounts between applications can often be a headache. It is also a complex technical topic that goes beyond the scope of this post. If starting from scratch, I would recommend bbPress or another WordPress forum plugin.

On the other hand, if a user already has an existing forum with a large amount of content, I would lean toward integrating it and WordPress, particularly if the site owner plans to keep user registrations strictly within the forum software. Much of that will come down to what the end-user feels comfortable with. If they have a strong history with their existing application, making a change may simply not be the best route. There are other items to consider, such as whether sharing a single theme across both platforms is necessary. bbPress can also import content from many existing forum applications.

The answer to the question is that it depends. Each use case is different.

Should a popular seller on Etsy move everything to WooCommerce? Probably not. That user might want to install the Etsy Shop integration plugin. Eventually, they might expand their brand enough to no longer rely on the Etsy platform. At that point, WooCommerce could be the answer.

It comes down to time, cost, research, and testing. Even when a plugin brings a native solution to WordPress that is ideal for most people, it might not be the best answer for an individual. Specifics matter, and I am always happy to talk those over.

This is the second post in the Ask the Bartender series. Have a question of your own? Shoot it over.

Going from Dev to CEO – What you need to know

The most prolific companies of our time are run by former developers. That's why I brought in former developer turned CEO and Dzone core member, Stephen Magill, to chat about what it takes to make the jump from developer to business leader.

Stephen Magill is a former research developer turned CEO . Dan Lines was promoted from team lead to VP of Engineering almost over night. On this episode of the Dev Interrupted podcast Dan and Stephen discuss:

Letters to Santa – Automating Joy to the World at Scale

It’s that time of year again. The time when the world’s largest order fulfillment operation experiences its heaviest load. No, not Amazon – we’re talking about Santa Claus, Inc. – the largest logistics company in the world, with a 24-hour global delivery window at peak load.

This year is different, however. Earlier this year, Saint Nick clicked on an ad on his Facebook feed, one promising a digital nomad lifestyle through automating his business. Sick of the Arctic weather and the stress of traveling, the thought of sitting on a beach in Thailand – while still bringing joy to children around the world – was enticing.

Demystifying HTTP Verbs: Patch, Put, and Post

If you’re still getting the hang of web development and HTTP specification, you might find yourself often confused about which verbs to use and when. 

Some developers learn that most applications on the internet are CRUD (Create, Read, Update, Delete) applications and that the HTTP verbs match to these actions 1:1. POST is a Create, GET is a Read, PATCH (or PUT) is an Update, and DELETE is a Delete.

Fixing Imports with Skypack

You’ve probably heard us mention Skypack once, twice or even thrice, and for good reason! It’s a wonderful service to get packages from npm on the web as ES modules.

For example, import React from "react"; is invalid JavaScript without some kind of bundler, but you can get it working in your Pens by changing to import React from "https://cdn.skypack.dev/react", a valid ES module served by Skypack.

But who wants to remember to type that out? Certainly not me! The good news is we offer some helpers to get imports working in your Pens.

Automatically Fixing Imports

Whenever you type out an import statement that isn’t a valid ES Module import, we offer to replace those with Skypack imports. This comes in really handy if you copy and paste some code from a tutorial, and gets those imports working without the hassle of installing packages and running a bundler!

Try it Yourself!

This helpful feature works in both the Pen and Project editor. We automatically add <script type="module"> in Pens to get ES Modules working, but don’t forget to add that yourself in Projects!

If you think your import shouldn’t be messed with, click “Ignore” and we won’t prompt you about imports anymore while you edit that Pen or Project.

Searching and Adding Packages

You can also use the Add Package feature under JavaScript settings to automatically add a valid import statement to your code!

These helpful features should make working with modern JavaScript on CodePen even better. Learn more about all Skypack can do, and give it a try in the Pen Editor and Project Editor!

The post Fixing Imports with Skypack appeared first on CodePen Blog.

Counting Down To Bundles Of Smashing Joy And Workshops In 2021

This year has been quite a ride — all the more reason to look forward to a new year with new beginnings, right? Well, we’ll never really know what awaits us in the next months to come, but what I do know is that everyone on this planet can do only so much and really just the best they can to pull through. It’s certainly been a year of less ups and more downs for so many people around the world, and we hope that with everything we’ve been doing at Smashing has helped make life at least a lil’ bit easier.

Plan Your Year Ahead With Online Workshops

Have you attended one of our workshops yet? The Smashing Events team is thrilled each and every time they run a workshop with all of the wonderful attendees from all over the world coming together to learn together. So many ideas have been brought to life thanks to the live design and coding sessions, and there are many folks that have found new friends, too!

It gets even better: We now have workshop bundles from which you can choose three, five or even ten workshop tickets for the workshops of your choice — ongoing, upcoming or the ones happening in the future!


Jan. 5 – Jan. 19 Build, Ship and Extend GraphQL APIs from Scratch Christian Nwamba Dev
Jan. 19 – Jan. 27 Form Design Masterclass Adam Silver Dev
Jan. 21 – Feb. 5 New Adventures In Front-End, 2021 Edition Vitaly Friedman Design & UX
Feb. 2 – Feb. 10 Building Modern HTML Emails Rémi Parmentier Dev
Feb. 11 – Feb. 26 The SVG Animation Masterclass Cassie Evans Dev
Feb. 16 – Feb. 17 The CSS Layout Masterclass Rachel Andrew Dev
Feb. 23 – Mar. 9 Successful Design Systems Brad Frost Dev
Mar. 4 – Mar. 12 Psychology For UX and Product Design Joe Leech Design & UX
Mar. 16 – Mar. 24 Finding Clients Masterclass Paul Boag Design & UX
Mar. 18 – Apr. 1 Behavioral Design Susan & Guthrie Weinschenk Design & UX
Mar. 30 – Mar. 31 Designing The Perfect Navigation Vitaly Friedman Design & UX

We hope you’ll find at least one workshop in the list above that fits your projects and career path, and if not, please do get in touch with us on Twitter and we promise to do our best to make it happen. Also, feel free to subscribe here if you’d like to be one of the first folks to be notified when new workshops come up, and get access to early-bird prices as well — we’ll have lots of goodies coming your way very soon!

Members Get Access To Videos And More

We’re proud to have a steadily growing Membership family who love good content, appreciate friendly discounts, and are an active part of our lovely web community. If you’re not involved yet, we’d love for you to join in and become a member, too! There are constant discounts on printed books, job postings, conference tickets, and your support really helps us pay the bills. ❤️

Smashing Podcast: Tune In And Get Inspired

This year, we’ve published a new Smashing Podcast episode every two weeks, and the feedback has been awesome! With over 56k downloads (just over a thousand per week, and growing!), we’ve had 34 guests on the podcast with different backgrounds and so much to share!

If you don’t see a topic you’d like to hear and learn more about, please don’t hesitate to reach out to host Drew McLellan or get in touch via Twitter anytime — we’d love to hear from you!

1. What Is Art Direction? 2. What’s So Great About Freelancing?
3. What Are Design Tokens? 4. What Are Inclusive Components?
5. What Are Variable Fonts? 6. What Are Micro-Frontends?
7. What Is A Government Design System? 8. What’s New In Microsoft Edge?
9. How Can I Work With UI Frameworks? 10. What Is Ethical Design?
11. What Is Sourcebit? 12. What Is Conversion Optimization?
13. What Is Online Privacy? 14. How Can I Run Online Workshops?
15. How Can I Build An App In 10 Days? 16. How Can I Optimize My Home Workspace?
17. What’s New In Drupal 9? 18. How Can I Learn React?
19. What Is CUBE CSS? 20. What Is Gatsby?
21. Are Modern Best Practices Bad For The Web? 22. What Is Serverless?
23. What Is Next.js? 24. What Is SVG Animation?
25. What Is RedwoodJS? 26. What’s New In Vue 3.0?
27. What Is TypeScript? 28. What Is Eleventy?
29. How Does Netlify Dogfood The Jamstack? 30. What Is Product Design?
31. What Is GraphQL? 32. Coming up on December 29

Stay tuned for the next episode coming out very soon!

Smashing Newsletter: Best Picks

With our weekly newsletter, we aim to bring you useful content and share all the cool things that folks are working on in the web industry. There are so many talented folks out there working on brilliant projects, and we’d appreciate it if you could help spread the word and give them the credit they deserve!

Also, by subscribing, there are no third-party mailings or hidden advertising involved, and your support really helps us pay the bills. ❤️

Interested in sponsoring? Feel free to check out our partnership options and get in touch with the team anytime — they’ll be sure to get back to you as soon as they can.

Preventing Layout Shifts With CSS Grid

It’s no news that CSS Grid is a fantastic tool to build complex layouts. But did you know that it can help you prevent layout shifts, too? When Hubert Sablonnière discovered a layout shift problem with a toggling state on a UI component he worked on, he came up with a solution: the “Anti Layout Shift Grid Stacking Technique”.

Compared to solving the layout shift with absolute positioning, Hubert’s Grid-based technique supports complex situations that require more than two panels. Another benefit: You don’t need to assume which panel should guide the size of the whole component. If you want to dive in deeper, Hubert wrote up everything you need to know to prevent both vertical and horizontal shifts in a practical blog post. (cm)

Fixing Headers And Jump Links

Jump links in combination with fixed headers can cause quite some frustration. Maybe you’ve run into the same issue before: When clicked, your jump link takes you to the desired element, but a fixed header is hiding it. In the past, wild hacks were required to solve the issue. Luckily, there’s now a straightforward and well-supported CSS solution.

The trick: scroll-margin-top. Assign it to your headers, and the position: fixed header won’t get into their way anymore when you navigate to them with a jump link. A short line of code that makes a huge difference. (cm)

Fluid Typography With clamp()

When it comes to fluid scaling, CSS has some exciting new features: clamp(), min(), and max(). They cap and scale values as the browser grows and shrinks. min() and max() return the respective minimum and maximum values at any given time while clamp lets you you pass in both a minimum and maximum plus a preferred size for the browser to use.

As Trys Mudford points out, clamp() comes in particularly handy when you want broadly fluid typography without being 100% specific about the relationship between the varying sizes. In his in-depth article about the new feature, he shares valuable hands-on tips for using clamp() effectively. (cm)

Open-Source Screen Recorder And Annotation Tool

If you’ve been looking for a free and easy-to-use tool to record your screen, it might be hard to find something more powerful than Alyssa X’s open-source screen recorder Screenity.

No matter if you want to give contextual feedback on a project, provide detailed explanations, or showcase your product to potential customers, Screenity offers a number of practical features to capture, annotate, and edit your recordings — without any time limit. You can draw on the screen and add text and arrows, for example, highlight clicks and focus on the mouse, push to talk, and much more. Screenity is available for Chrome. (cm)

A Human-Friendly Date Picker

Date pickers can be hard to get right. A beautiful example of a human-friendly and fully accessible date picker comes from Tommy Feldt.

Thanks to Chrono.js, it supports natural language inputs, so that a user can type something like “tomorrow”, “December 2”, or “in 5 days” to select a date. Shortcut buttons also help to select the most common dates. The date picker is fully accessible with the keyboard and screen readers (there’s even an on-demand help feature for screen reader and keyboard users) and degrades gracefully when JavaScript or CSS aren’t available. A very inspiring proof of concept. (cm)

Become A Jamstack Explorer

The Jamstack is still unexplored territory for you? Jamstack Explorers helps change that. Its mission: teaching you about building for the web with modern tools and techniques.

You can choose from three courses, track your progress, and earn rewards as you proceed through the Jamstack universe. Tara Z. Manicsic leads you through the wilds of Angular, Phil Hawksworth teaches you how to serve and track multiple versions of your site with Netlify, and Cassidy Williams guides you through all the essentials of Next.js. Once you’ve completed the three missions, there’s not only a certificate waiting, but you can call yourself a Jamstack Explorer, ready to use the newest tools to build experiences that are robust, performant, and secure. (cm)

Making Remote Design Work

Design reviews, sprints, feedback — design is a collaborative effort that brings along quite some challenges when doing it remotely. The folks at InVision put together a collection of handy resources to help you and your team master these challenges.

The content covers three of the most trickiest aspects of working remotely: fostering creativity, aiding collaboration, and staying focused. For more best practices for running a remote design team, InVision also published a free eBook drawing from their own experience of working remotely with 700 employees spread across 30 countries and no single office. (cm)

Full-Screen Countdown Timer To Stay On Track

Sticking to the schedule can be tricky when you are running a long video call or are giving a talk or workshop. To help you make sure the session stays on track, Koos Looijesteijn built Big Timer.

The bold yet minimalist timer counts down the remaining minutes right in your browser window — and even if you accidentally close the browser tab or need to restart your device, it will take the disruption into account. Keyboard shortcuts make it easy to adjust the duration and pause or stop the countdown. One for the bookmarks. (cm)

Sounds And Music To Help You Focus

Are you the type of person who can’t focus when it’s quiet around them? Then one of the following tools might help you become more productive. If you’re missing the familiar office sounds when working from home, I Miss The Office brings some office atmosphere into your home office — with virtual colleagues who produce typical sounds like typing, squeaking chairs, or the occasional bubbling of the watercooler.

Office sounds have always distracted you more than helped you focus? Then Noizio could be for you. The app lets you mix nature and city sounds to create your personal ambient sound. Another approach to increasing focus with sound comes from Brain.fm. Their team of scientists, musicians, and developers designs functional music that affects the brain to achieve the desired mental state. Last but not least, Focus@Will is also based on neuroscience and helps increase focus by changing the characteristics of music at the right time intervals. Promising alternatives to your usual playlist. (cm)

The Web Almanac 2020

Looking back at 2020, what’s the state of the web this year? The yearly Web Almanac gives in-depth answers to this question, combining the raw stats and trends of the HTTP Archive with the expertise of the web community. The results are backed up by real data taken from more than 7.5 million websites and trusted web experts.

22 chapters make up this years’ almanac. They are divided into four parts — content, experience, publishing, distribution —, and each one of them is explored from different angles. An insightful look into the state of performance is included, too, of course. (cm)

Generate A Request Map Of Your Site

Where do all the transmitted bytes on your site come from? Analyzing third-party components in detail is a time-consuming task, but it’s already a good start to know which third parties are on your site — and how they got there.

Simon Hearne’s request map generator tool visualizes a node map of all the requests on a page for any given URL. The size of the nodes on the map is proportional to the percentage of total bytes, and, when you hover over a node, you’ll get information on its size, response and load times. No more bad surprises. (cm)

Let’s Tweak Our JavaScript Bundles!

Chances are high that with your JavaScript code being around for a while, your JavaScript bundles are a little bit outdated. You might have some outdated polyfills, or you might be using a slightly outdated JavaScript syntax. But now there is a little tool that helps you identify those bottlenecks and fix them for good.

EStimator calculates the size and performance improvement a site could achieve by switching to modern JavaScript syntax. It shows which bundles could be improved, and what impact this change would have on your overall performance. The source code is also available on GitHub. (vf)

How Readable Is Your Code? Part 2

Once Again About Cyclomatic Complexity

In the first part, I've introduced Cyclomatic Complexity (CYC) metrics in the previous part. So CYC has no intention to be a readability code metric. CYC was invented a long time ago (in 1976)  by Thomas J. McCabe. 

Cognitive Complexity Metric.

Cognitive Complexity (CC) attempts to count the cognitive effort required to understand the code's flow. Let's take a look at the next example:

Anypoint CLI With MuleSoft

Introduction

Anypoint CLI is a command-line interface used with Anypoint Platform and Anypoint Platform PCE. Anypoint CLI works with

  • Runtime Manager
  • Anypoint Exchange
  • VPCs
  • DLBs
  • Design Center
  • API Manager
  • Access Management

Prerequisites

  • Download and Install NodeJS
  • Install npm package for Anypoint CLI using the below command.
Plain Text
 




x


 
1
$ npm install -g anypoint-cli@latest