Archive

Archive for the ‘’ Category

WaterBear: Building A Free Platform For Impactful Documentaries (Part 2)

October 2nd, 2023 No comments

In my previous article, I talked about Waterbear, a significant project I worked on as a newly-appointed lead developer, and the lessons I learned leading a team for the first time. In this second article, I’ll go over some key technical highlights from the project. Before we start, let’s quickly remind ourselves what WaterBear is all about and what makes it so interesting.

WaterBear is a free platform bringing together inspiration and action with award-winning high-production environmental documentaries covering various topics, from animals and climate change to people and communities. The WaterBear team produces their own original films and documentaries and hosts curated films and content from various high-profile partners, including award-winning filmmakers, large brands, and significant non-governmental organizations (NGOs), like Greenpeace, WWF, The Jane Goodall Institute, Ellen MacArthur Foundation, Nikon, and many others.

For context, I am currently working at a software development company called Q Agency based in Zagreb, Croatia. We collaborated with WaterBear and its partner companies to build a revamped and redesigned version of WaterBear’s web and mobile app from the ground up using modern front-end technologies.

In the first article, I briefly discussed the technical stack that includes a React-based front-end framework, Next.js for the web app, Sanity CMS, Firebase Auth, and Firestore database. Definitely read up on the strategy and reasoning behind this stack in the first article if you missed it.

Now, let’s dive into the technical features and best practices that my team adopted in the process of building the WaterBear web app. I plan on sharing specifically what I learned from performance and accessibility practices as a first-time lead developer of a team, as well as what I wish I had known before we started.

Image Optimization

Images are pieces of content in many contexts, and they are a very important and prominent part of the WaterBear app’s experience, from video posters and category banners to partner logos and campaign image assets.

I think that if you are reading this article, you likely know the tightrope walk between striking, immersive imagery and performant user experiences we do as front-enders. Some of you may have even grimaced at the heavy use of images in that last screenshot. My team measured the impact, noting that on the first load, this video category page serves up as many as 14 images. Digging a little deeper, we saw those images account for approximately 85% of the total page size.

That’s not insignificant and demands attention. WaterBear’s product is visual in nature, so it’s understandable that images are going to play a large role in its web app experience. Even so, 85% of the experience feels heavy-handed.

So, my team knew early on that we would be leveraging as many image optimization techniques as we could that would help improve how quickly the page loads. If you want to know everything there is to optimize images, I wholeheartedly recommend Addy Osami’s Image Optimization for a treasure trove of insightful advice, tips, and best practices that helped us improve WaterBear’s performance.

Here is how we tackled the challenge.

Using CDN For Caching And WebP For Lighter File Sizes

As I mentioned a little earlier, our stack includes Sanity’s CMS. It offers a robust content delivery network (CDN) out of the box, which serves two purposes: (1) optimizing image assets and (2) caching them. Members of the WaterBear team are able to upload unoptimized high-quality image assets to Sanity, which ports them to the CDN, and from there, we instruct the CDN to run appropriate optimizations on those images — things like compressing the files to their smallest size without impacting the visual experience, then caching them so that a user doesn’t have to download the image all over again on subsequent views.

Requesting the optimized version of the images in Sanity boils down to adding query variables to image links like this:

https://cdn.sanity.io/.../image.jpg?w=1280&q=70&auto=format

Let’s break down the query variables:

  • w sets the width of the image. In the example above, we have set the width to 1280px in the query.
  • q sets the compression quality of the image. We landed on 70% to balance the need for visual quality with the need for optimized file sizes.
  • format sets the image format, which is set to auto, allowing Sanity to determine the best type of image format to use based on the user’s browser capabilities.

Notice how all of that comes from a URL that is mapped to the CDN to fetch a JPG file. It’s pretty magical how a completely unoptimized image file can be transformed into a fully optimized version that serves as a completely different file with the use of a few parameters.

In many cases, the format will be returned as a WebP file. We made sure to use WebP because it yields significant savings in terms of file size. Remember that unoptimized 1.2 MB image from earlier? It’s a mere 146 KB after the optimizations.

And all 14 image requests are smaller than that one unoptimized image!

The fact that images still account for 85% of the page weight is a testament to just how heavy of a page we are talking about.

Another thing we have to consider when talking about modern image formats is browser support. Although WebP is widely supported and has been a staple for some time now, my team decided to provide an optimized fallback JPG just in case. And again, Sanity automatically detects the user’s browser capabilities. This way, we serve the WebP version only if Sanity knows the browser supports it and only provide the optimized fallback file if WebP support isn’t there. It’s great that we don’t have to make that decision ourselves!

Have you heard of AVIF? It’s another modern image format that promises potential savings even greater than WebP. If I’m being honest, I would have preferred to use it in this project, but Sanity unfortunately does not support it, at least at the time of this article. There’s a long-running ticket to add support, and I’m holding hope we get it.

Would we have gone a different route had we known about the lack of AVIF support earlier? Cloudinary supports it, for example. I don’t think so. Sanity’s tightly coupled CDN integration is too great of a developer benefit, and as I said, I’m hopeful Sanity will give us that support in the future. But that is certainly the sort of consideration I wish I would have had early on, and now I have that in my back pocket for future projects.

Tackling The Largest Contentful Paint (LCP)

LCP is the biggest element on the page that a user sees on the initial load. You want to optimize it because it’s the first impression a user has with the page. It ought to load as soon as possible while everything under it can wait a moment.

For us, images are most definitely part of the LCP. By giving more consideration to the banner images we load at the top of the page, we can serve that component a little faster for a better experience. There are a couple of modern image attributes that can help here: loading and fetchpriority.

We used an eager loading strategy paired with a high fetchpriority on the images. This provides the browser with a couple of hints that this image is super important and that we want it early in the loading process.

<!-- Above-the-fold Large Contentful Paint image -->
<img
  loading="eager"
  fetchpriority="high"
  alt="..."
  src="..."
  width="1280"
  height="720"
  class="..."
/>

We also made use of preloading in the document , indicating to the browser that we want to preload images during page load, again, with high priority, using Next.js image preload options.

<head>
  <link
    rel="preload"
    as="image"
    href="..."
    fetchpriority="high"
  />
</head>

Images that are “below the fold” can be de-prioritized and downloaded only when the user actually needs it. Lazy loading is a common technique that instructs the browser to load particular images once they enter the viewport. It’s only fairly recently that it’s become a feature baked directly into HTML with the loading attribute:

<!-- Below-the-fold, low-priority image -->
<img
  decoding="async"
  loading="lazy"
  src="..."
  alt="..."
  width="250"
  height="350"
/>

This cocktail of strategies made a noticeable difference in how quickly the page loads. On those image-heavy video category pages alone, it helped us reduce the image download size and number of image requests by almost 80% on the first load! Even though the page will grow in size as the user scrolls, that weight is only added if it passes through the browser viewport.

In Progress: Implementing srcset

My team is incredibly happy with how much performance savings we’ve made so far. But there’s no need to stop there! Every millisecond counts when it comes to page load, and we are still planning additional work to optimize images even further.

The task we’re currently planning will implement the srcset attribute on images. This is not a “new” technique by any means, but it is certainly a component of modern performance practices. It’s also a key component in responsive design, as it instructs browsers to use certain versions of an image at different viewport widths.

We’ve held off on this work only because, for us, the other strategies represented the lowest-hanging fruit with the most impact. Looking at an image element that uses srcset in the HTML shows it’s not the easiest thing to read. Using it requires a certain level of art direction because the dimensions of an image at one screen size may be completely different than those at another screen size. In other words, there are additional considerations that come with this strategy.

Here’s how we’re planning to approach it. We want to avoid loading high-resolution images on small screens like phones and tablets. With the srcset attribute, we can specify separate image sources depending on the device’s screen width. With the sizes attribute, we can instruct the browser which image to load depending on the media query.

In the end, our image markup should look something like this:

<img
  width="1280"
  height="720"
  srcset="
    https://cdn.sanity.io/.../image.jpg?w=568&...   568w,
    https://cdn.sanity.io/.../image.jpg?w=768&...   768w,
    https://cdn.sanity.io/.../image.jpg?w=1280&... 1280w
  "
  sizes="(min-width: 1024px) 1280px, 100vw"
  src="https://cdn.sanity.io/.../image.jpg?w=1280&..."
/>

In this example, we specify a set of three images:

  1. Small: 568px,
  2. Medium: 768px,
  3. Large: 1280px.

Inside the sizes attribute, we’re telling the browser to use the largest version of the image if the screen width is above 1024px wide. Otherwise, it should default to selecting an appropriate image out of the three available versions based on the full device viewport width (100vw) — and will do so without downloading the other versions. Providing different image files to the right devices ought to help enhance our performance a bit more than it already is.

Improving CMS Performance With TanStack Query

The majority of content on WaterBear comes from Sanity, the CMS behind the web app. This includes video categories, video archives, video pages, the partners’ page, and campaign landing pages, among others. Users will constantly navigate between these pages, frequently returning to the same category or landing page.

This provided my team with an opportunity to introduce query caching and avoid repeating the same request to the CMS and, as a result, optimize our page performance even more. We used TanStack Query (formerly known as react-query) for both fetching data and query caching.

const { isLoading, error, data } = useQuery( /* Options */ )

TanStack Query caches each request according to the query key we assign to it. The query key in TanStack Query is an array, where the first element is a query name and the second element is an object containing all values the query depends on, e.g., pagination, filters, query variables, and so on.

Let’s say we are fetching a list of videos depending on the video category page URL slug. We can filter those results by video duration. The query key might look something like this basic example:

const { isLoading, error, data } = useQuery(
  {
    queryKey: [
      'video-category-list',
      { slug: categorySlug, filterBy: activeFilter }
    ],
  queryFn: () => /* ... */
  }
)

These query keys might look confusing at first, but they’re similar to the dependency arrays for React’s useEffect hook. Instead of running a function when something in the dependency array changes, it runs a query with new parameters and returns a new state. TanStack Query comes with its dedicated DevTools package. It displays all sorts of useful information about the query that helps debug and optimize them without hassle.

Let’s see the query caching in action. In the following video, notice how data loads instantly on repeated page views and repeated filter changes. Compare that to the first load, where there is a slight delay and a loading state before data is shown.

We’re probably not even covering all of our bases! It’s so tough to tell without ample user testing. It’s a conflicting situation where you want to do everything you can while realistically completing the project with the resources you have and proceed with intention.

We made sure to include a label on interactive elements like buttons, especially ones where the icon is the only content. For that case, we added visually hidden text while allowing it to be read by assistive devices. We also made sure to hide the SVG icon from the assistive devices as SVG doesn’t add any additional context for assistive devices.

<!-- Icon button markup with descriptive text for assistive devices -->
<button type="button" class="...">
  <svg aria-hidden="true" xmlns="..." width="22" height="22" fill="none">...</svg
  ><span class="visually-hidden">Open filters</span>
</button>
.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
}

Supporting keyboard navigation was one of our accessibility priorities, and we had no trouble with it. We made sure to use proper HTML markup and avoid potential pitfalls like adding a click event to meaningless div elements, which is unfortunately so easy to do in React.

We did, however, hit an obstacle with modals as users were able to move focus outside the modal component and continue interacting with the main page while the modal was in its open state, which isn’t possible with the default pointer and touch interaction. For that, we implemented focus traps using the focus-trap-react library to keep the focus on modals while they’re opened, then restore focus back to an active element once the modal is closed.

Dynamic Sitemaps

Sitemaps tell search engines which pages to crawl. This is faster than just letting the crawler discover internal links on its own while crawling the pages.

The importance of sitemaps in the case of WaterBear is that the team regularly publishes new content — content we want to be indexed for crawlers as soon as possible by adding those new links to the top of the sitemap. We don’t want to rebuild and redeploy the project every time new content has been added to Sanity, so dynamic server-side sitemaps were our logical choice.

We used the next-sitemap plugin for Next.js, which has allowed us to easily configure the sitemap generation process for both static and dynamic pages. We used the plugin alongside custom Sanity queries that fetch the latest content from the CMS and quickly generate a fresh sitemap for each request. That way, we made sure that the latest videos get indexed as soon as possible.

Let’s say the WaterBear team publishes a page for a video named My Name is Salt. That gets added to a freshly generated XML sitemap:

Now, it’s indexed for search engines to scoop up and use in search results:

Until Next Time…

In this article, I shared some insights about WaterBear’s tech stack and some performance optimization techniques we applied while building it.

Images are used very prominently on many page types on WaterBear, so we used CDN with caching, loading strategies, preloading, and the WebP format to optimize image loading performance. We relied on Sanity for the majority of content management, and we expected repeating page views and queries on a single session, prompting us to implement query caching with TanStack Query.

We made sure to improve basic accessibility on the fly by styling focus states, enabling full keyboard navigation, assigning labels to icon buttons, providing alt text for images, and using focus traps on modal elements.

Finally, we covered how my team handled dynamic server-side rendered sitemaps using the next-sitemap plugin for Next.js.

Again, this was my first big project as lead developer of a team. There’s so much that comes with the territory. Not only are there internal processes and communication hurdles to establish a collaborative team environment, but there’s the technical side of things, too, that requires balancing priorities and making tough decisions. I hope my learning journey gives you something valuable to consider in your own work. I know that my team isn’t the only one with these sorts of challenges, and sharing the lessons I learned from this particular experience probably resonates with some of you reading this.

Please be sure to check out the full work we did on WaterBear. It’s available on the web, Android, and iOS. And, if you end up watching a documentary while you’re at it, let me know if it inspired you to take action on a cause!

References

Many thanks to WaterBear and Q Agency for helping out with this two-part article series and making it possible. I really would not have done this without their support. I would also like to commend everyone who worked on the project for their outstanding work! You have taught me so much so far, and I am grateful for it.

Categories: Others Tags:

Exciting New Tools for Designers, October 2023

October 2nd, 2023 No comments

Welcome to our all treats-no tricks, October tools collection.

Categories: Designing, Others Tags:

Dancing Leaves And Spooky Fellows (October 2023 Wallpapers Edition)

September 30th, 2023 No comments

The leaves are shining in the most beautiful colors and pumpkins are taking over the front porches. It’s time to welcome the spookiest of all months: October! To get your desktop ready for fall and the upcoming Halloween season, artists and designers from across the globe once again challenged their creative skills and designed inspiring wallpapers for you to indulge in.

The wallpapers in this post come in versions with and without a calendar for October 2023 and can be downloaded for free. And since so many beautiful and unique designs evolve around our little wallpapers challenge every month, we also dived into our archives to find some timeless October treasures from past years to add to the collection. Maybe you’ll rediscover one of your almost-forgotten favorites in this post, too? A huge thank you to everyone who shared their wallpaper with us this month! Happy October!

  • You can click on every image to see a larger preview,
  • We respect and carefully consider the ideas and motivation behind each and every artist’s work. This is why we give all artists the full freedom to explore their creativity and express emotions and experience through their works. This is also why the themes of the wallpapers weren’t anyhow influenced by us but rather designed from scratch by the artists themselves.
  • Submit a wallpaper!
    Did you know that you could get featured in our next wallpapers post, too? We are always looking for creative talent.

Autumn’s Splendor

“The transition to autumn brings forth a rich visual tapestry of warm colors and falling leaves, making it a natural choice for a wallpaper theme.” — Designed by Farhan Srambiyan from India.

Dancing Leaves Of October

“Before it becomes winter, we spend beautiful autumn days enjoying the beautiful colors and autumn moods. So I designed this wallpaper to remember the impressions and colors in the city park.” — Designed by Stephan Bender from Germany.

Embracing Autumn’s Beauty

“We were inspired by the breathtaking beauty of autumn, with its colorful foliage and the symbolic pumpkin, which epitomizes the season. Incorporating typography allows us to blend aesthetics and functionality, making the calendar not only visually appealing but also useful.” — Designed by WPclerks from India.

National Fossil Day

“Join us in commemorating National Fossil Day, a day dedicated to honoring the wonders of Earth’s prehistoric past. On this special day, we invite you to step back in time and explore the remarkable world of fossils. These ancient remnants of life on our planet offer a glimpse into the evolution of life, from the tiniest microorganisms to the towering giants that once roamed the Earth.” — Designed by Boris Rabasovic from Serbia.

The Crow And The Ghosts

“If my heart were a season, it would be autumn.” — Designed by Lívia Lénárt from Hungary.

Sleeping Beauty

“Sleeping Beauty is a classic fairy tale that has been adapted into various forms of literature, film, and other media over the years. The story typically revolves around a beautiful princess who is cursed to fall into a deep sleep for a specific period, often after pricking her finger on a spindle or needle. The curse is usually cast by an evil fairy or sorceress. In most versions of the story, the princess can only be awakened from her slumber by the kiss of a prince who truly loves her.” — Designed by Bhabna Basak from India.

Happy Halloween

Designed by Ricardo Gimenes from Sweden.

A Walk Through Atoms

“We leave the madness of September to begin this October in a much more serene way. We are entering autumn, one of my favorite months, and we travel to Brussels to enjoy the city and be able to walk around while the temperatures allow.” — Designed by Veronica Valenzuela Jimenez from Spain.

Lack Of Self-Reflection

Designed by Ricardo Gimenes from Sweden.

Oh!ctober

“I was influenced by the changing colors of nature. Fall is a busy period, so I wanted to make a messy drawing. There are things turning around, like a circle. It’s the link with the first letter of this month.” — Designed by Philippe Brouard from France.

Oldies But Goodies

Creepy Halloween fellows, a nice cup of tea on a rainy day, and magical fall forests — the October wallpapers that we rediscovered in our archives pay tribute to all those big and small October moments. Please note that these designs don’t come with a calendar.

The Night Drive

Designed by Vlad Gerasimov from Georgia.

Magical October

“‘I’m so glad I live in a world where there are Octobers.’ (L. M. Montgomery, Anne of Green Gables)” — Designed by Lívi Lénárt from Hungary.

Dreamy Autumn Girl

“Our designers were inspired by the coziness of autumn and the mood that it evokes — the only desire that appears is to put on a warm cozy sweater, take a cup of warm tea, and just enjoy the view outside the window.” — Designed by MasterBundles from Ukraine.

Autumn Vibes

“Autumn has come, the time of long walks in the rain, weekends spent with loved ones, with hot drinks, and a lot of tenderness. Enjoy.” — Designed by LibraFire from Serbia.

Goddess Makosh

“At the end of the kolodar, as everything begins to ripen, the village sets out to harvesting. Together with the farmers goes Makosh, the Goddess of fields and crops, ensuring a prosperous harvest. What she gave her life and health all year round is now mature and rich, thus, as a sign of gratitude, the girls bring her bread and wine. The beautiful game of the goddess makes the hard harvest easier, while the song of the farmer permeates the field.” — Designed by PopArt Studio from Serbia.

Bird Migration Portal

“October is a significant month for me because it is when my favorite type of bird travels south. For that reason I have chosen to write about the swallow. When I was young, I had a bird’s nest not so far from my room window. I watched the birds almost every day; because those swallows always left their nests in October. As a child, I dreamt that they all flew together to a nicer place, where they were not so cold.” — Designed by Eline Claeys from Belgium.

Game Night And Hot Chocolate

“To me, October is all about cozy evenings with hot chocolate, freshly baked cookies, and a game night with friends or family.” — Designed by Lieselot Geirnaert from Belgium.

First Scarf And The Beach

“When I was little, my parents always took me and my sister for a walk at the beach in Nieuwpoort, we didn’t really do those beach walks in the summer but always when the sky started to turn grey and the days became colder. My sister and I always took out our warmest scarfs and played in the sand while my parents walked behind us. I really loved those Saturday or Sunday mornings where we were all together. I think October (when it’s not raining) is the perfect month to go to the beach for ‘uitwaaien’ (to blow out), to walk in the wind and take a break and clear your head, relieve the stress or forget one’s problems.” — Designed by Gwen Bogaert from Belgium.

Haunted House

“Love all the Halloween costumes and decorations!” — Designed by Tazi from Australia.

Ghostbusters

Designed by Ricardo Gimenes from Sweden.

Spooky Town

Designed by Xenia Latii from Germany.

Hello Autumn

“Did you know that squirrels don’t just eat nuts? They really like to eat fruit, too. Since apples are the seasonal fruit of October, I decided to combine both things into a beautiful image.” — Designed by Erin Troch from Belgium.

Shades Of Gold

“We are about to experience the magical imagery of nature, with all the yellows, ochers, oranges, and reds coming our way this fall. With all the subtle sunrises and the burning sunsets before us, we feel so joyful that we are going to shout it out to the world from the top of the mountains.” — Designed by PopArt Studio from Serbia.

The Art Of History

“History has always fascinated me. I started looking for people who changed the world and history and who were born in October. I discovered different people like John Lennon, Picasso, Niels Bohr… In the end, it was Gandhi who gave me the most inspiration. It’s a work in which you see the variety of colors that are both a call against racism and inequality and also a wink to Picasso’s oeuvre.” — Designed by Johannes Hermans from Belgium.

Say Bye To Summer

“And hello to autumn! The summer heat and high season is over. It’s time to pack our backpacks and head for the mountains — there are many treasures waiting to be discovered!” Designed by Agnes Sobon from Poland.

Tea And Cookies

“As it gets colder outside, all I want to do is stay inside with a big pot of tea, eat cookies and read or watch a movie, wrapped in a blanket. Is it just me?” — Designed by Miruna Sfia from Romania.

Flying Home For Halloween

“You can only fully master the sky wearing an aviator hat and goggles. Like this little bat, flying home to celebrate Halloween with his family and friends.” — Designed by Franke Margrete from the Netherlands.

Hanlu

“The term ‘Hanlu’ literally translates as ‘Cold Dew.’ The cold dew brings brisk mornings and evenings. Eventually the briskness will turn cold, as winter is coming soon. And chrysanthemum is the iconic flower of Cold Dew.” — Designed by Hong, ZI-Qing from Taiwan.

Autumn Deer

Designed by Amy Hamilton from Canada.

The Return

Designed by Ricardo Gimenes from Sweden.

Discovering The Universe!

“Autumn is the best moment for discovering the universe. I am looking for a new galaxy or maybe… a UFO!” — Designed by Verónica Valenzuela from Spain.

Trick Or Treat

“Have you ever wondered if all the little creatures of the animal kingdom celebrate Halloween as humans do? My answer is definitely ‘YES! They do!’ They use acorns as baskets to collect all the treats, pastry brushes as brooms for the spookiest witches and hats made from the tips set of your pastry bag. So, if you happen to miss something from your kitchen or from your tool box, it may be one of them, trying to get ready for All Hallows’ Eve.” — Designed by Carla Dipasquale from Italy.

Boo!

Designed by Mad Fish Digital from Portland, OR.

Autumn Gate

“The days are colder, but the colors are warmer, and with every step we go further, new earthly architecture reveals itself, making the best of winters’ dawn.” — Designed by Ana Masnikosa from Belgrade, Serbia.

King Of The Pirates

Designed by Ricardo Gimenes from Sweden.

Omnomnomtober

“I’m just a sucker for Halloween, candy, tiny witches, and giant kittens. And you can’t tell me that October is not Halloween, because I’ve waited the whole year for this. I thought that I would make illustration central to this calendar so I started with the idea of a tiny witch who’s stolen a ton of candy along with her cat — who’s gotten herself in trouble and can’t unstick the bubble gum from her giant teeth. A typical Halloween scene, right?” — Designed by Kalashniköv from Spain.

Smashing Halloween

Designed by Ricardo Gimenes from Sweden.

Categories: Others Tags:

Useful Techniques for Scaling Applications

September 29th, 2023 No comments

Imagine you’ve just launched a fantastic new app and then boom! Overnight, it’s a hit. Thousands, maybe even millions, flock to download it. You’re thrilled, but then reality sets in. Your servers start groaning under the pressure and the dreaded “Server Unavailable” messages start popping up. 

In the online world, patience is rare, and users will switch to a competitor at the slightest inconvenience.

The key to avoiding such pitfalls lies in one crucial concept – scalability. But scalability isn’t just about bracing for an avalanche of users. It’s about ensuring your application boasts quick page loads, zero downtime, and flawless user experience, no matter the number of users.

So, if you’re ready to elevate your app game, keep reading as we deep-dive into eight techniques so your application thrives as it grows. Let’s get started!

What is application scaling?

Think of scalability like a high-speed elevator in a skyscraper. It’s all about getting you from the ground floor (your app’s launch) to the penthouse suite (massive user growth) smoothly and efficiently. 

Source

This scalability is one reason why many businesses are migrating to web applications. In tech jargon, scalability is your system’s capacity to handle and expand in a way that accommodates growth.

If you’re wondering why scaling matters, it ensures that your application can seamlessly adapt to changing circumstances, such as increased demand, improved performance, cost-effectiveness, resilience, and future-proofing your business.

When it comes to constructing this high-speed elevator for your application, you generally have two paths:

  1. Vertical scaling: Akin to swapping out your current elevator with a more powerful one. You’re essentially enhancing the capabilities of your existing server, adding more speed, power, and capacity to the system you already have. It’s a quick fix but has limits – there’s only so much you can upgrade a single machine.
  2. Horizontal scaling: Imagine if, instead of upgrading your existing elevator, you decide to install multiple new ones. You’re essentially adding more servers to distribute the work. This approach is more flexible but requires strategic architecture to manage the increased complexity.

Remember, don’t start thinking about scalability when your elevator is already jam-packed. Plan for it right from the design phase. Ignoring scalability during these stages is like building a skyscraper on a shaky foundation. Sooner or later, it’ll crumble under the weight of its own success.

Finding slow points in your applications

Before you start tinkering with your application’s scalability, you should identify the bottlenecks slowing you down. Imagine your high-speed elevator is now experiencing delays – you wouldn’t just start replacing cables or motors without knowing what’s causing the slowdown, right?

Identifying bottlenecks is the diagnostic phase where you pinpoint the weaknesses that could hamper performance when you scale. Thankfully, various tools and methods can help:

  • Performance monitoring tools: Software like New Relic or Grafana provides real-time insights into your application’s performance, helping you identify slow database queries, memory leaks, or CPU limitations.
  • Message queuing: For applications that deal with real-time data processing, using a message broker like RabbitMQ helps isolate bottlenecks related to message handling.
  • Load testing: Use tools like Apache JMeter or LoadRunner to simulate high traffic and monitor how your application responds. This can expose weak points that may not be visible under normal conditions.
  • Code profiling: Tools like VisualVM for Java or Py-Spy for Python allow you to analyze the code execution, helping you find broken algorithms that could slow you down.

Understanding where the bottlenecks are is the first step toward effective scaling. Once you know what you’re up against, tailoring your scaling strategy to combat these issues is easy.

8 Must-know techniques to scale your web applications

Source

In web development – ensuring applications adapt to user demand is as crucial as a morning cup of coffee. To help lift your web app’s performance, here are eight techniques for you to consider:

1. Load balancing

Load balancing orchestrates the distribution of incoming network or application traffic across multiple servers, ensuring no single server gets overwhelmed. This is important for complex e-commerce platforms like Magento enterprise hosting, where high traffic volumes are the norm.

Load balancing allows for better resource utilization, maximizes throughput, and minimizes response time. Popular strategies include:

  • Round robin: Distributes requests sequentially to each server in the list.
  • Least connections: Routes new requests to the server with the fewest current connections.
  • IP Hash: Directs requests from the same IP address to the same server, ensuring session persistence.

By effectively distributing the traffic, load balancing enhances performance and makes your application more resilient.

2. Database sharding

Sharding your database is another effective technique for making your application scalable. In this approach, you distribute a single dataset across multiple databases. This means handling all read requests is divided among several databases called “shards” rather than overloading a single one.

Both horizontal and vertical scaling play a role. With horizontal scaling, you introduce new nodes to help distribute read operations. In contrast, vertical scaling involves beefing up a single database server by adding more CPUs or increasing the RAM and storage capacity.

Source

3. Caching

Caching is like keeping a notepad of your most frequently used calculations. Instead of re-doing the math every time, you can refer to your notepad for quick answers. In applications, caching stores copies of frequently accessed data in “high-speed” storage, allowing rapid data retrieval.

Types of caching include:

  • Data caching: Stores pieces of data to reduce redundant data operations.
  • Full-page caching: Stores the entire HTML of a page to avoid repetitive rendering.

Caching improves application performance by reducing the need to fetch data from the source repeatedly, thereby saving time and resources.

4. Microservice architecture

In a microservices architecture, each component focuses on a specific function and operates independently. This architectural approach boasts several benefits, such as easier debugging processes, the flexibility to use different technologies for different services, and increased resilience for your overall system.

5. Asynchronous processing

Asynchronous processing allows for the distribution of tasks to be handled independently of the main application thread. This means heavier tasks can be processed in the background, freeing up the application to handle other tasks in real-time.

For example, tasks like image uploads can consume vast resources and time if processed sequentially. By using asynchronous processes, tasks can be offloaded to background processes. Thereby improving the overall performance and efficiency of your application.

6. Autoscaling

Autoscaling is a technique that dynamically allocates resources according to the real-time needs of an application. This involves adjusting resources like CPU and RAM on the fly to meet demand.

Cloud platforms such as AWS Auto Scaling or Google Cloud’s Compute Engine offer easy-to-implement autoscaling solutions. These platforms allow you to set predefined policies to automatically scale resources up or down, ensuring your application performs optimally.

For more information, take a look at this article “What is Autoscaling: Why Do You Need It?” 

Source

7. Content Delivery Network (CDN)

A Content Delivery Network, or CDN, is a network of servers that communicate to deliver internet content more quickly. These servers store copies of your application’s resources and are located near end-users. This minimizes the distance the data travels – improving access times.

The use of a CDN is crucial for scalability. It shortens the load on your primary server by distributing traffic across multiple locations. Users experience quicker load times and reduced latency, which enhances their overall experience.

By effectively managing sudden traffic surges, a CDN ensures that your web application remains robust and scalable.

8. Optimize code and queries

Optimizing your application’s code and database queries is crucial for optimal performance. As your application scales, inefficient code can quickly become a significant bottleneck. This leads to slow load times and poor user experience.

Various tools assist in identifying these inefficiencies. Query analyzers help locate slow database queries, while code profiling tools identify which parts of the code are resource-intensive.

Best practices for optimization include database indexes and caching frequently-used queries. These measures enhance your application’s performance and allow for more efficient use of server resources. In the long run, this makes your application far more scalable.

The benefits of application scalability

  • Improved performance: Handles increased traffic without slowing down, enhancing user experience. Faster load times significantly improve customer satisfaction and overall engagement.
  • Cost-effectiveness: Optimized server usage reduces operational costs as you only pay for the resources used. This leads to better financial efficiency, freeing up your budget for other business needs.
  • Resilience and high availability: Distributed resources across multiple servers improve system reliability and minimize downtime – ensuring your application remains accessible during peak usage or server failures.
  • Easier management and updates: Scalable architecture allows for easy deployment of updates and new features with minimal disruption. This flexibility simplifies ongoing maintenance and enhances the agility of your development team.
  • Future-proofing: A scalable system can grow and adapt, making it easier to meet evolving needs and market changes, thereby protecting your investment.

Your scaling journey begins here

So, let’s bring it back to that elevator, shall we? Just like a top-notch elevator must adapt to varying levels of demand, so must your scaling strategies. Remember, scaling isn’t a one-time event but rather a continuous journey. 

As your user base expands and technology evolves, your scaling strategies should adapt to meet new challenges. By staying committed to ongoing iteration and optimization, you’re ensuring that your application remains speedy, resilient, and cost-effective.

Featured image by Ilya Pavlov on Unsplash

The post Useful Techniques for Scaling Applications appeared first on noupe.

Categories: Others Tags:

Re-Creating The Pop-Out Hover Effect With Modern CSS (Part 1)

September 29th, 2023 No comments

In a previous article on CSS-Tricks, I demonstrated how to create a fancy hover effect where an avatar pops out of a circle on hover. The challenge was to make such an effect using only the tag.

I know it might seem like this shape requires advanced trickery. But if we break it down a bit, all we’re really talking about is a series of small circles around a much larger circle.

We are going to rely on radial-gradient and some math, specifically trigonometric functions. Bramus Van Damme provides an excellent primer on trigonometric functions over at web.dev. It’s very much worth your while to brush up on the concept with that article.

We are going to define two variables to control the flower shape. N represents the number of the small circles, and R is the diameter of the small circles (Illustrated by the black arrow in the figure above). If we have the diameter, then we can calculate the radius by dividing R by 2. This is everything we need to create the shape!

Here is what the code of a small circle looks like:

img {
  --r: 50px;
  mask:
    radial-gradient(#000 70%, #0000 72%) no-repeat
    {position} / var(--r) var(--r);
}

All of the small circles can use the same radial gradient. The only difference between them is the position. Here comes the math:

(50% + 50% * cos(360deg * i/N)) (50% + 50% * sin(360deg * i/N))

N is the number of circles, and i is the index of each circle. We could manually position each circle individually, but that’s a lot of work, and I believe in leveraging tools to help do some of the heavy lifting. So, I’m going to switch from CSS to Sass to use its ability to write loops and generate all of the circle positions in one fell swoop.

$n: 15; /* number of circles */

img {
  --r: 50px; /* control the small circles radius */
  $m: ();
  @for $i from 1 through ($n) {
    $m: append($m, 
         radial-gradient(#000 70%,#0000 72%) no-repeat
          calc(50% + 50% * cos(360deg * #{$i / $n})) 
          calc(50% + 50% * sin(360deg * #{$i / $n})) /
            var(--r) var(--r), 
        comma);
   }
  mask: $m;
}

We’re essentially looping through the number of circles ($n) to define each one by chaining the radial gradient for each one as comma-separated values on the mask ($m) that is applied to the image element.

We still need the large circle that the small circles are positioned around. So, in addition to the loop’s output via the $m variable, we chain the larger circle’s gradient on the same mask declaration:

img {
  /* etc */
  mask: $m, radial-gradient(#000 calc(72% - var(--r)/2),#0000 0);
}

Finally, we define the size of the image element itself using the same variables. Calculating the image’s width also requires the use of trigonometric functions. Then, rather than doing the same thing for the height, we can make use of the relatively new aspect-ratio property to get a nice 1:1 ratio:

img {
  /* etc */
  width: calc(var(--r) * (1 + 1/tan(180deg / #{$n})));
  aspect-ratio: 1;
}

Check it out. We have the shape we want and can easily control the size and number of circles with only two variables.

We’re basically reducing the distance of the small circles, making them closer to the center. Then, we reduce the size of the larger circle as well. This produces an effect that appears to change the roundness of the smaller circles on hover.

The final trick is to scale the entire image element to make sure the size of the hovered shape is the same as the non-hovered shape. Scaling the image means that the avatar will get bigger and will pop out from the frame that we made smaller.

$n: 15; /* number of circles */

@property --i {
  syntax: "<length>";
  initial-value: 0px;
  inherits: true;
}

img {
  /* CSS variables */
  --r: 50px; /* controls the small circle radius and initial size */
  --f: 1.7; /* controls the scale factor */
  --c: #E4844A; /* controls the main color */

  $m: ();
  /* Sass loop */
  @for $i from 1 through ($n) {
    $m: append($m, 
      radial-gradient(var(--c) 70%, #0000 72%) no-repeat
      calc(50% + (50% - var(--i, 0px)) * cos(360deg * #{$i/$n} + var(--a, 0deg))) 
      calc(50% + (50% - var(--i, 0px)) * sin(360deg * #{$i/$n} + var(--a, 0deg))) /
      var(--r) var(--r), 
    comma);
  }

  mask: 
    linear-gradient(#000 0 0) top/100% 50% no-repeat,
    radial-gradient(var(--c) calc(72% - var(--r)/2 - var(--i, 0px)), #0000 0),
    $m;
  background:
    radial-gradient(var(--c) calc(72% - var(--r)/2 - var(--i, 0px)), #0000 0),
    $m;
  transition: --i .4s, scale .4s;
}

img:hover {
  --i: calc(var(--r)/var(--f));
  scale: calc((1 + 1/tan(180deg/#{$n}))/(1 - 2/var(--f) + 1/tan(180deg/#{$n})));
}

Here’s what’s changed:

  • The Sass loop that defines the position of the circle uses an equation of 50% - var(--i, 0px) instead of a value of 50%.
  • The larger circle uses the same variable, --i, to set the color stop of the main color in the gradients that are applied to the mask and background properties.
  • The --i variable is updated from 0px to a positive value. This way, the small circles move position while the large circle becomes smaller in size.
  • The --i variable is registered as a custom @property that allows us to interpolate its values on hover.

You may have noticed that I didn’t mention anything about the --f variable that’s defined on the image element. Truthfully, there is no special logic to it. I could have defined any positive value for the variable --i on hover, but I wanted a value that depends on --r, so I came up with a formula (var(--r) / var(--f)), where --f allows controls the scale.

Does the equation on the scale property on hover give you a little bit of panic? It sure looks complex, but I promise you it’s not. We divide the size of the initial shape (which is also the size of the element) by the size of the new shape to get the scale factor.

  • The initial size: calc(var(--r)*(1 + 1 / tan(180deg / #{$n})))
  • The size of the new shape: calc(var(--r) * (1 + 1 / tan(180deg / #{$n})) - 2 * var(--r) / var(--f))

I am skipping a lot of math details to not make the article lengthy, but feel free to comment on the article if you want more detail on the formulas I am using.

That’s all! We have a nice “pop out” effect on hover:

See the Pen Fancy Pop Out hover effect! by Temani Afif.

Wrapping Up

Does all of this seem a bit much? I see that and know this is a lot to throw at anyone in a single article. We’re working with some pretty new CSS features, so there’s definitely a learning curve with new syntaxes, not to mention some brushing up on math functions you probably haven’t seen in years.

But we learned a lot of stuff! We used gradients with some math to create a fancy shape that we applied as a mask and background. We introduced @property to animate CSS variables and bring our shape to life. We also learned a nice trick using animation-composition to control the speed of the rotation.

We still have a second part of this article where we will reuse the same CSS techniques to create a fancier hover effect, so stay tuned!

I’ll leave you with one last demo as a sign-off.

See the Pen Pop out hover effect featuring Lea and Una by Temani Afif.

Categories: Others Tags:

The 10 Most Successful Rebrands of All Time – Ranked

September 28th, 2023 No comments

We’re all familiar with rebrands going wrong, but what happens when they go right? From McDonald’s health kick to Burberry’s iconic turnaround, hold on to your hats as we explore the ten most successful rebrands of all time.

Categories: Designing, Others Tags:

Best Import and Export WordPress Plugins 

September 28th, 2023 No comments

If you are looking for the best WordPress Import and Export plugins, then you are in the right place.

You may need to import/export data for any purpose. It is essential to import/export data securely without losing any data. Doing it manually might be time-consuming. WordPress offers a variety of plugins to facilitate the migration of posts, orders, comments, products, coupons, and more.

In this article, you will see the top import/export WordPress plugins that allow store owners to migrate any data effortlessly.

1. Advanced Import 

Advanced Import is a powerful plugin that enables users to transfer demo data from their WordPress or Theme to a different website. Initially, users must agree to the terms and privacy settings of the respective themes. You can only import demo data from the Advance Export. When importing demo data from WordPress or Theme, Advanced Import captures the template and images in JSON files as well as screenshots.

This plugin allows for the customization of the functionality and design through the use of the existing hooks. It allows for the import of demo data, including widgets, media, posts, pages, custom post types, and more. The demo data can be categorized according to the website builder. The plugin allows you to display multiple templates within a single dashboard. It’s a free plugin.

Highlights:

  • Categorize demo data based on its type or category
  • Personalize the plugin functionality using the existing hooks
  • Import different demo data like posts, widgets, custom post types & more
  • Capture images, screenshots, or other content in JSON files while importing

2. Product Import Export Plugin For WooCommerce

WooCommerce Product Import Export plugin is an all-in-one solution to manage all your product data across all your sites. You can import or export your product data using various file formats such as XML, Excel, and CSV. WooCommerce product import plugin allows you to import or export any data of any product type, including Simple, Variable, External, Grouped, Subscription, and Custom Product types.

If you have a lot of products in your store, you can use this plugin to batch the product data and use it to import or export them in WooCommerce. You can edit or update the product data while it’s being imported. You can also schedule the import and export of the product data through FTP. Furthermore, you can import products from other eCommerce platforms with the help of the import mapping column.

Highlights:

  • Multiple export/import methods are available
  • Store all past import/export data and run them later
  • Schedule product data migration process via multiple FTP profiles 
  • Make bulk changes or updates to product data during the import

Price: Starts from $69/year. 

3. WP All Import

This WP All Import plugin makes it super easy to import any type of XML or CSV file or to download data using URLs or FTP. It’s got everything from posts and pages to taxonomies and reviews. This includes a wide range of data types, such as posts, pages, users, comments, orders, coupons, inventory logs, and more. All data can be managed with the ease of drag and drop. 

You can use the plugin to create a special identifier that will let you automatically detect the file later. You can also set up rules in WordPress to filter out the importing data. You can set up a schedule to import the file, but it only works if you’re downloading the file or using an existing one. The unique identifier can be the product ID, SKU, or something else.

Highlights:

  • Use custom rules to filter data in WordPress
  • Import multiple data in XML or CSV format smoothly
  • Manage all data while importing with drag & drop option
  • Access any data with product ID or SKU as a unique identifier

Price: Starts from $149/year. 

4. Amazon Product Importer & Affiliate 

With the Amazon Product Import & Affiliate plugin, you can directly import your promoted products or affiliate products from the Amazon marketplace directly into your WooCommerce store. You can import multiple types of data, such as names, SKUs, images, categories, attributes, customer reviews, etc.

You can either add new or update existing Amazon product information using product ID. This extension works with all Amazon marketplaces around the world. You can easily manage the imported products using the advanced options. The plugin supports Simple, Variable, and Affiliate Products. 

Highlights:

  • Import Amazon products to WooCommerce in one click
  • Run the imported products as an affiliate 
  • Edit or update the product information with the product ID 
  • Plugin supports the global Amazon marketplace

Price: Starts from $79/year. 

5. WordPress Users & WooCommerce Customers Import Export

WooCommerce Users and Customers Import Export plugin allows you to export and import users from another website to/from your WordPress site. You can import users based on their roles, emails, date range, and WooCommerce data. You can also use evaluation fields to modify bulk values when importing users.

With this plugin, you can migrate the existing or customized user passwords while importing or exporting in WooCommerce. You can also export your WordPress users and passwords. It is also the best plugin to back up or export your guest users within WooCommerce. You can migrate your users’ and customer’s data using XML file format, CSV file format, Excel file format, or TSV file format. 

Highlights:

  • Use Cron Job or FTP to schedule import/export data
  • An option to skip the duplicated imported data 
  • Securely migrate user passwords from one site to another
  • Allows bulk modification while importing user data 

Price: Starts from $69/year. 

6. JSON Content Importer 

If you want to show data in the JSON feed, you can use the JSON Content Importer on your WordPress page. It can either be downloaded from the URL or converted to HTML. You can also set up other settings, like how long the JSON feed will stay in the cache, how many items it will show, and so on. You can also set the template and URL for your JSON feed.

The plugin can be used in Gutenberg mode to test the real data and to generate shortcodes. The option can be customized or added depending on the performance of the JSON-API. The template engine can be used to insert the JSON data into the template. The plugin makes it easy to manage and import the temporarily stored data.

Highlights:

  • Insert data into the template using the template engine
  • Set different cache settings in the plugin
  • Easily import content that’s been stored temporarily
  • Show live JSON data in WordPress

Price: Starts from €59.00/year. 

7. Product CSV Import Suite 

Product CSV Import Suite can easily import thousands of products into another WooCommerce site. This plugin allows you to capture the custom field info without having to use custom code. It can also be used to update products in bulk, like prices, descriptions, and other custom info. It works with both simple and complex product types.

This plugin makes it easy to export data from a CSV file to your website. You can either move the published or drafted products, set a limit on how much you can export, or just skip the first line of products in your CSV. You can either export all the data at once or transfer some to your site.

Highlights:

  • Migrate multiple WooCommerce products instantly
  • Update bulk product’s price, description, or more
  • Support complex product or custom product data 
  • Export all product data from the WooCommerce store 

Price: Starts from $59/year.   

8. WP Ultimate CSV Importer Plugin

WP Ultimate CSV Importer is a plugin that enables you to import any type of content in XML or CSV files in a short amount of time. You can import any custom posts created by plugins such as JetEngine, CPT UI, Toolset, and more. You can import blog posts, media, taxonomies, custom fields, comments, and more.

The plugin can be used to add new fields with values to the existing posts or to add more posts using the import file. You can import compressed zip files using FTP, PC, or URL. You can choose specific files while importing data. By enabling media handling, you can easily manage external images while importing your site data.

Highlights:

  • Import any data based on categories or tags
  • Import comments, reviews & custom fields 
  • Supports WooCommerce, JetEngine, & more 
  • Export post, orders, products, refunds, etc

Price: Starts from $149 (Lifetime free support).

9. Widget Importer & Exporter

The Widget Import and Export plugin can be used to import or export widgets from one location to another, store a backup of widgets, and more. It can also be used to export the widgets that are currently active. The imported file contains a clean formatted table describing what is happening in each area of the widget or any other changes.

Smart handling of this plugin makes it super easy to get rid of duplicate widgets. You can just compile all the widgets into one file and move them to another site. Since the widgets are well-organized on the sheet, it is easy to detect any problems before migrating to another site. It’s a free plugin.

Highlights:

  • Transfer unsupportive widgets to the inactive widget section
  • Export widget files with .wie extension in JSON format
  • Import widget data in a table format clearly
  • Back up the existing widget data in WordPress

10. Order, Coupon, Subscription Export Import for WooCommerce

WooCommerce Coupon, Subscription, Order Export & Import plugin will help you move orders, or subscriptions from your site to another site. You can use multiple file types in WooCommerce. For example, you can use XML file format, CSV file format, Excel file format, etc. It can help you migrate coupons, too.

This plugin works with an easy-to-use Ajax interface so that you can import and export data in WooCommerce without any hassle. You can keep track of the import and export process with the History, Debug Log, and Schedule sections. You can also use the Cron Job feature to schedule import data automatically.

Highlights:

  • Different formats to import/export coupons, orders, and subscription data
  • The plugin supports drag-and-drop mapping columns
  • Create custom data imports/exports using different filter settings
  • Migrate data using pre-built templates or advanced settings

Price: Starts from $69/year. 

11. Export Order Items for WooCommerce

WooCommerce Export Order Items is a great plugin to export order details of every sale in your eCommerce store. You can organize the order data according to specific purchase details. You can create a report for your eCommerce store immediately. The plugin allows you to sort the data by order IDs and product IDs. The order data can be exported in CSV format.

This plugin lets you quickly export the bulk data from WooCommerce orders and organize it in ascending or descending order. You can filter the info based on the status of the order, like if it’s processed, completed, or payment pending. The plugin enables you to add 18 data fields to your report and manage the data with ease.

Highlights:

  • Enter 18 data fields in the export order item report
  • Sort order data by product ID in ascending/descending
  • Create reports based on the custom date range
  • Use purchase details to export specific order data 

Price: Starts from $59/year  

12. Meks Video Importer

The Mekse Video Importer plugin is an excellent tool for importing large-scale videos from both YouTube and Vimeo. It can be used to create custom posts and pages on a website, as well as to import videos from any WordPress website. This plugin is compatible with WooCommerce websites, allowing users to set up a variety of import options without any difficulty.

This plugin lets you add video descriptions to your post automatically. You can import videos from different places like a playlist, a channel, a search query, or even specific users. You can pick the type of post, the status, the categories, the tags, or even custom taxonomies when importing videos. It’s a free plugin. 

Highlights:

  • Import YouTube and Vimeo videos in bulk
  • Choose post status & format for imported videos
  • Add video description to the post content automatically
  • Choose any website user as an imported video author

13. S2W – Import Shopify to WooCommerce

S2W – Import Shopify to WooCommerce plugin lets you quickly and easily import your data from Shopify into WooCommerce. All you need is your Shopify API key, and you’ll be able to transfer your data directly to WooCommerce and keep it safe in private mode. You can also migrate Shopify products using images and categories.

This plugin lets you import tons of products from Shopify into WooCommerce without any limits. You can change the order of the products by using the title or date. It also lets you move product data according to Ajax’s needs. You can import a bunch of different things, like different product types, categories, product statuses, and more.

Highlights:

  • Use log files to import Shopify’s product/category
  • Quickly import Shopify data into WooCommerce
  • Import Shopify products and categories data to WooCommerce
  • Transfer Shopify data to WooCommerce using Shopify API

Price: Starts from $79.25/year. 

Conclusion

Listed WordPress Import/Export plugins in this article have a wide range of features. Some of them may need a premium subscription to access their full capabilities. With these plugins, you can easily fulfill your WordPress import/export store data migration needs. 

We hope this article will help you find the best WordPress Import/export plugins for your website and manage your entire migration process effectively.

Featured Image By freepik

The post Best Import and Export WordPress Plugins  appeared first on noupe.

Categories: Others Tags:

Smashing Podcast Episode 65 With Alex Older: How Do You Run A Grassroots Conference?

September 26th, 2023 No comments

We’re talking about running grassroots conferences and meet-ups. What does it take to organize a small industry event for your community? Drew McLellan talks to WDC’s Alex Older to find out.

Note: This episode of The Smashing Podcast isn’t sponsored by anyone. However, our guest Alex has generously offered listeners a 10% discount on tickets to WebDevConf. So if you’re in or able to get to Bristol for the conference go to webdevconf.com for tickets and use the code smashing to claim your discount. Thanks Alex!

Show Notes

  • Alex Older’s website.
  • Save the date for WDC2023: 20 October in Bristol, UK.

Weekly Update

Transcript

Drew: He’s a full stack developer and founder of development agency Bluefly Digital here in the UK. He’s also the founder and core organizer of the UK’s longest running web design conference, WDC, which is now entering its 14th year, all of which makes him the perfect candidate for our discussion today. So we know he’s an accomplished developer, business owner, and conference organizer, but did you know he invented the pork jam roly-poly? My smashing friends, please welcome Alex Older. Hi, Alex. How are you?

Alex Older: Hi, Drew. I’m good. I’m smashing.

Drew: Good to hear it. Congratulations on what’s about to be the 14th year of WDC…

Alex: [inaudible] facts are wrong there.

Drew: My facts are wrong? Oh…

Alex: So it might be the 14th event, but it’s been running since 2007.

Drew: Okay. So the 14th edition, is what we should be saying, the 14th edition of WDC.

Alex: Yeah. Absolutely.

Drew: Okay. My introduction and everything is incorrect due to my poor research, but I think we’ll get away with it. But your 14th edition this October.

Alex: Yes.

Drew: For those who don’t know, it’s a very much… It’s a local feeling event, even though actually its reach is felt across the region and across the UK. Correct me if I’m wrong here, you have a day of workshops, and then a conference day, or have done in the past?

Alex: We have done in the past. What I’ve found is that, whilst it’s great to do workshops, is that it can be quite hard to find subjects that are appealing to a lot of people. I’ve seen it work for events and conferences that are very focused in one area. So if it’s a WordPress conference or a design systems conference or something like that, because they’re focusing on one area, a workshop relating to that works a lot better than stuff for WDC, because it’s very general.

Drew: Yeah. It’s a broad subject area, isn’t it? So finding enough people who want to focus down on a small bit for a workshop is trickier.

Alex: Yes.

Drew: Yeah. That makes sense. I remember a few years back, I attended one of your workshops, I think it was a node workshop with Jack Franklin, which was great. I learned a lot that day. That was brilliant. These days you’re sticking to just the main conference day?

Alex: Yeah. So last year because of various things, we hadn’t done an event for a few years, so we decided to come back with a bang and do two days, which was nice because it meant we could get lots of people to come and speak for it, and it drew a slightly different crowd as well, which was quite nice. But the organizing headache of it all, I was like, “No, I’m just going to do one day.” It’s a lot nicer just to manage one day with eight speakers than it is to try and manage two days with 16 speakers, because it doubles all the worry.

Drew: Yes. So what was it that spurred you to start this in the first place? Where did the idea come from?

Alex: So I started… This is where I realized how old I am. So I started uni in 2006, and Joe Leach came in one of our induction days, and gave a talk about what the world of the web is, and what it does, and all this, that, and the other. And a couple of friends of mine were talking to me afterwards, “But I don’t understand what this is or that is.” And so the idea from there also came about that we were learning command line Java.

Drew: Okay. My condolences.

Alex: Yes. And the university I was at was there going, “You need to learn this module, because if we go to this job site and put in this web development without Java, the results disappear. You get a third of the results.” So a lot of it was trying to show my fellow students that what people are doing in the web isn’t necessarily what’s being taught, and showing that actually the web technologies that are out there aren’t necessarily what we’re learning in a classroom or in a lecture. And also trying to get rid of the idea of buzzwords as well. So it started off as an event to get professionals in to speak to students, and then go, “As we’re in Bristol, if you’re in the area and want to come to the event, come to the event.” So that’s how it started, and it’s just grown from there as I went through uni.

Drew: That’s amazing. When I think about everything that’s involved in running an event like a conference, it must be like finding venues, finding speakers, finding an audience, it’s overwhelming. As someone personally, I’ve had a bit of a long-running community side project, I’m thinking of the website I used to run, 24 ways, and I just know that organizing something like that year after year, it really takes it out of you. I can’t imagine if it was then a physical event, like a web conference. So what is it that keeps you coming back year after year and doing it again to yourself?

Alex: It might sound really bad, but it’s effectively… One of the reasons I keep doing it is because it gives me a chance to go to a conference, with life and family and everything else. You don’t get as much time as you think you might to go to all these things and fly around and go to events. So it’s a chance for me to see people I’ve heard of talking about something they love doing, and gets me out of the house for at least a couple of days. So it was there, kept going because I want to do an event, and it just benefits me that I don’t have to pay for a ticket, as it were. And then I just have to stand up in front of people and make a fool of myself, very briefly.

Drew: But you get to put on your dream event as much as possible. You can tailor it to you.

Alex: Yes, exactly. And it’s not an event we take far too seriously. And I’ve been fortunate enough with venues that we’ve always, aside from a small test of another venue, we’ve always been at the same venue. And it’s in a really good location in the center of Bristol. And it just means that if people are coming in, it’s quite easy for them to go, “That’s where the venue is, and there are 20 hotels around it. So I can come into Bristol, I can stay in Bristol, and walk to the event, and it’s all good.”

Drew: So talking about practicalities then, when you’re thinking about organizing another addition of this, you say you’ve got your preferred venue. So what comes first? Finding a date? Or…

Alex: Yes. So over 14 events, we’ve… It used to be that it was organized early September, because the unis would start then, and it would then mean that I could speak to the union and go, “This is when the event is.” It would mean that they can tie it into stuff that they’re doing. And since then, it’s migrated to October, and it’s always been the first Friday in October, except for this year because we’ve had to push it back for other reasons. But we go, “This is the date…” It’s always October now. And then from that, I know the venue’s there, the venue hasn’t gone up in flames, it’s quite established, and it’s… Because it’s at the Watershed, so it’s quite an established venue in Bristol. And so I know that’s sorted, I know roughly when it is, and then it’s just working back from then to make sure that things are launched with enough time to make sales to cover the bills.

Drew: So how do you decide on the lineup? So you’ve got your dates sorted, you’ve got the event booked. How do you decide what’s going to happen on stage on that day?

Alex: So I think I’ve been very fortunate, and I’ve lucked into a lot of it. So I’ve gone, “I really want to see Drew speak,” so I’ll invite you along, and you’ll tell me what you’re speaking about. And then I’ll go, “I want to see someone else,” and I’ll invite them along. Over the last few years I’ve teamed up with Luke to put the event on. So because of his role, he’s got a lot more contacts that I maybe wouldn’t have come across. And so it’s going, I really like what this person’s tweeting about or blogging about, and I’ve read this article, and they happen to be based in Leeds or Manchester, and I’ll invite them down. And I’ve been really lucky in that, over the years, the theme of the day has echoed through every talk.
And I even had, at one point I had Paul Boag speaking, and he panicked a bit, he was like, “But my talk is really similar to the talk that was on now.” And it was like, he was speaking to me, there was a talk between the one he was going on about and his, and he was worried that his would basically be sounding the same. And I said to him, “It doesn’t matter. What your talk does will tie everything together at the end of the day.” And it worked really well. So I’ve been really lucky, in that there’s been a theme that’s worked with a spattering of other bits and pieces in the middle.

Drew: Yeah. It’s funny how that can happen, because there’s often themes running through the industry at a certain time. Everybody’s thinking about the next ideas, and often they are interconnected, because the web as an industry is moving forward towards the same sort of places. I can remember a similar situation speaking at a conference, where the talk that came directly before mine covered about, I don’t know, about 25% of the same stuff that I was about to go over. And so I had to get on stage and I’d say things like, “I hope you’re seeing a theme here. You’re seeing what we’re trying between us, what we’re trying to say,” and make it sound intentional. And of course it wasn’t a problem. It was reinforcing the ideas. It was actually saying, “Here’s the important ideas that we’re all thinking about at the moment.”

Alex: Yeah, exactly. And I think it helps attendees as well almost see that these people are up in front of them saying these things, and it’s not just one person saying these things, it’s four or five, and they’re not necessarily saying it in… It’s not a pulled quote that they’re going over and over again. They’re saying it in their way and how it applies to them and what they’re doing.

Drew: Yeah. It reinforces the point and gives different perspectives on it as well at the same time. So at this point, we’ve got a venue, we’ve got a date, you’ve invited some people to speak, they’re working away on their presentations and looking forward to visiting Bristol. How do you go about getting the word out? How do you sell tickets? How do you find an audience and let people know?

Alex: I cross my fingers, and… So I think my biggest thing is I’m not that social, as it were, and what I do is I hope that the speakers who are coming to the event will go, “I’m speaking at this event, here it is.” I’ve got an adequate Twitter following for the conference. And what I also do is, before tickets are launched, I’ll say, “Look, register your interest. We’ll tell you as soon as you can get a ticket,” and stuff like this. And I’m really thankful that there’s a kind of almost core community around the event that will go, “Yep, I’m coming, I’ve bought my ticket, it’s there, I’ll be there.”
And slowly but surely word spreads out to different areas of the country as people… Some people would take a chance in it and go, “I had a really great time.” And then many years ago, it used to be the thing that people would write up their experiences and do a review, and for a while you could see the referrals coming in through analytics and stuff and going, “Okay.” And so it’s grown word of mouth more than, I need to make sure I’m speaking to this publisher or this site or whoever to mention my event.

Drew: Sorry, I’ve noticed that your ticket prices are incredibly low for a full-day conference. So it’s, what, the full price is…

Alex: The full price this year is going to be £100.

Drew: £100. Which is great value. And I guess that enables people to take a bit of a punt on… If it’s not going to cost them too much to get to Bristol, and they’ve heard good things, 100 quid, actually that’s exceptional value.

Alex: Yeah, exactly. The idea is that it… The theory being is that, if you’re missing a day of work and you’re a freelancer, you don’t get paid for that day of work. So the idea being that the whole trip to Bristol, staying in Bristol, coming to the event, shouldn’t cost more than a day of work. And the whole idea of the ticket price is that it covers the event cost. I don’t sit there and go, “I need to charge 250 quid a ticket to make X amount at the end of the event once all the bills are settled.” I need to be at zero once all the bills are settled, so that it can keep funding itself every year.
And I’ve been unfortunate a few times where it’s lost money, but over 14 events, it’s happened twice. So being able to sit there and go, I know… People will then know and come to expect that the cost of the ticket is reasonable, and I’m not suddenly sitting there going, “Yeah, now I’ve got 100,000 Twitter followers, I’m going to charge this much money because it’ll make it.” I’m going to keep doing what I’m doing, because it gives even the smaller freelancers the chance to attend an event that isn’t out of a price range.

Drew: And do you find, as a result, your audience is primarily freelancers and primarily people who are paying their own way for their ticket? Sounds like that’s the sort of…

Alex: I think these days now it’s more of a 50/50 split, because being able to see the way… Because I use Tito for the ticket sales, is that I can see how tickets are ordered. And there are lots of freelance, but then you’ll get an order for five, ten tickets from one company. There are definitely companies out there that are buying tickets for their employees to attend the event, but there are freelancers as well. And it makes quite a nice mix, because we’ve even had partnerships with companies in the past who are recruiting. So there might be freelancers who are like, “I’ve been doing this for a couple of years and it’s all right, but I’ve met these guys at WDC, and I had a chat with them, and they’ve got a job, and I might apply for it.” So hopefully the idea [inaudible] the networking side [inaudible] event leads to that, and the split in ticket sales between freelancers and companies and bits and pieces like that spurs that on, I think.

Drew: Yes. And I think it’s in contrast to what we’ve seen from a lot of the… Because going back ten years, there were a lot more conferences, single-day conferences at affordable prices that were going on in the UK. And we had Carsonified back in the day running their events, Future Of… We used to have things from Clearleft, dConstruct, and… What’s the typography one called? Ampersand.
And some of those people are still running conferences, Clearleft are still running conferences, but what we’ve seen from them is they’ve gone very upmarket, where a ticket will cost over £1,000 or… And I very much suspect their audience are people who are not paying their own way, that their company has sent them, or it’s a significant business purchase, not an individual thinking, “I’ll just go and learn about this thing.” So it’s interesting that most of the UK market of what’s left of conferences has tended to go up higher-end. Is there something about putting conferences on in the UK that makes it really hard, that you’ve got to charge a lot of money? Or… I’m just wondering if you have any insight what goes on there.

Alex: I don’t think so. I think a lot of it is that the more higher-end conferences seem to be in London, and from that, the venue’s going to cost an extortionate amount of money. And then you’ve got to get… Especially depending on who your target is, you’ve got to have the right names of people in the industry at that event, which will then be charging their fee, which will be relevant to their experience, and so on and so forth. Whereas outside of London, a venue hire doesn’t cost a huge amount of money, hotel costs don’t cost a huge amount of money, and everything else.
But I think that the target for those upscale events, as you say, is our big organizations who have maybe heard of a keyword that happens to be relevant and gone, “We must put some resource into this, and we’ve got our spending for the year, and if we don’t spend it, we lose it.” Drew, you’ll go into that event and you might go, “Oh, great,” and then you realize that maybe two or three of the talks are relevant to what you’re doing, and not all of it. And I think that there’s obviously a place for them, but outside of that, the costs of everything are a lot less.
And for me, it’s not just about putting on the event, it’s about being able to put on all the bits around it, and make more of a community effort to it, and have a community around the event, than it is to go, “I’ve put on this massive event, and we’ve got eight great speakers, it’s going to cost you two grand for a ticket.” But you’ll go to the day, you’ll leave, and that’ll be it, because you’re probably London-based, so you’ve gone home.

Drew: Yeah. Yes. It’s amazing the different feel that a more community-based conference like WDC has, than some of the more upmarket and therefore a little bit more corporate events have. And I think you’re right about… Because you mentioned briefly about the ability to network and things, and if you are a freelancer, a community event like this is a great opportunity to get to meet other people, meet potential customers, but also potential collaborators or contacts. And as a freelancer, it’s always useful to know other people with different specialisms who you might want to bring into a project, and it’s a great opportunity to make those connections and meet people. Once you’re advertising your tickets, they’re on sale, you’ve got your fingers crossed, hoping that people buy tickets, I guess you’ve got quite a lot on the line at that point. You’ve committed to a whole load of costs. How do you cope with that? Does it keep you up at night?

Alex: No, because [inaudible] this year’s a bit different to the norm, because normally… So with an event in October, we launched late spring, so April, May sort of time. And then the first thing… If I’ve got that gap between launching the site for the year and the event, what I’ll do, the first thing that I do is I’ll go, “Let me get in 50 ticket sales.” So I’ll do what I’ve called in the past a super early bird ticket. I get those ticket sales in, and I know that I’ve got… I believe normally I’ve got the cost of the venue and half the hotel cost covered at that point. And they’re normally on sale for two weeks or until they sell out.
So I sit there and try and make a deal about the fact that there’s only 50 of them, and once and they’re gone. And so once I get that in, it sits away in a pot, and I’ve got a space in my banking that’s for WDC, and every ticket sale money just sits in there until I need to pay the bills. And then what tends to happen after that is you then hit the summer, and everything goes quiet.

Drew: Yep.

Alex: So you get to a point where you’re like, “I’ve got at least this cost covered. I’m only out a little bit of money.” And then everyone gets back to work in September and it picks up again. And at that point it’s the general admission tickets for the event. And then you get to the point… I think normally by then, I know I’ve got the base costs covered, because of the way I cover speaker travel and stuff, I know all I’ve got to worry about then is their travel. And some people will be Bristol-based anyway. Some people will… I’ve had it before where some people have driven in with friends and everything else. So actually, you’re not sat there going, “Oh no, I’m going to be… I’ve got all this expense to cover that I haven’t covered yet.” So what I’ve got to cover now is very small, and every time a ticket sale comes in, it gets closer and closer to zero.

Drew: Yep. So those super early bird, which presumably has snapped up by your core regulars who are going to come back every year, because they just know it’s great and they don’t need to know anything about the lineup, they just know they’re coming.

Alex: Yeah. Yes. I did once do blind birds, where I went, “This is the date of the event. And over the next couple of months, we’ll sort out all the speakers and stuff.” And they did all right. It wasn’t an instant success, but I hope that as the track record grows, more and more people go, “If he does a blind bird and it’s 50 quid, I’ll do that.” So…

Drew: It’s worth a gamble because the odds are pretty good.

Alex: Yeah, exactly. Yeah.

Drew: Yeah. And that then helps your cashflow to make sure that any initial expenses are coverable. Yes. That’s smart. The conference industry as it is has taken a pretty big hit over the last few years with the pandemic and things. I’m guessing you just didn’t run WDC through the pandemic, because you couldn’t.

Alex: Yeah, so we got… It was really unfortunate. I’m just going to bring up the… Because I’m slowly filling out the site. So we didn’t run in 2019, 2020, 2021. 20 19 was because of family commitments and my kids being very little, and they take up an extraordinary amount of time.
And then what I was trying to do through the pandemic and stuff like that was at least have something there that people could watch and get to. And we’d done a slot on a conference where we had… It was like a Q&A session, but a very tongue in cheek Q&A session. And I was trying to plan to do something like that, to have people keep engaged, but that again didn’t happen. People got busy. So it took a break just before that, and I was like, “I’m getting ready for 2020.” [inaudible] probably sat there in January going, “The ideas are forming…” [inaudible] And then everything went all to hell. So we took a break. And then, as I say, we came back last year once we were past it all. And as I say, we’re back now, and this is what we’re doing, and trying to now essentially build up a bit more momentum to be like, “So we’re back this year, we’re going to be back next, year after that, we’re going to keep going, keep people interested in those things happening.”

Drew: And did you find that the audience returned as you’d expected last year? Or was it a little bit slower?

Alex: It was a little bit slower. I think partly that was down to, it was a two-day event. And I spoke to various people about the fact that two days for them, especially with everything else that was going on, is that… It’s just a bit too much time to take off. Which I completely understood and would never… If someone’s got to do something else than attend my conference, then let them do it. I’m not going to hold it against them. And that was part of the reason, to go back to one, is one, it’s always on a Friday. The worst you’ve got to do is travel… If you are an employee, you can travel to Bristol the Thursday evening after the event… Not after the event, sorry. After work. That’s the one. And then you’re traveling home again on a Saturday. So you’re not there panicking that you’ve got to get up after the event, get back on a train to get to an office. No, you’ve got the Saturday, so you can… I’ve known people who’ve gone, “Well, I’m going to spend the day in Bristol.”

Drew: The important point then as well is, if you are a freelancer deep in the weeds of a project, taking one Friday off to do some personal development stuff and go to WDC is… No client’s going to bat an eyelid, really.

Alex: Yeah [inaudible].

Drew: I’m not around this Friday, back on Monday and… Fine.

Alex: Yeah. And the worst I seem to have had on a Friday is, “Could you look at this on Monday for me?” Yeah, of course. That’s Monday. That’s after the weekend. So I’ve had it a couple of times where there’s been talks going on and I’m like, “Okay, phone down, respond to the email. Okay, done.” And then there’s nothing.

Drew: Yeah. I feel as we dig into the weeds of what’s involved in organizing a conference, there’s a lot going on. It’s a big endeavor, right?

Alex: Yeah. There’s always little things you forget about. And as you’ve covered venue… Date, venue, speakers, and hotels, probably the four big things you’ve got to get sorted out. Then you’ve got to worry about the schedule on the day. The schedule on the day, there’s always one you forget about, because they’re all there, and you sit and go, “When are they speaking?” Or… And the big one as well is that people always tweet or contact you to go, “What is the schedule? What are they talking about?” You’re like, “Okay, yeah, I’ve got to put those details together for them.” Because [inaudible] it works, especially for bigger organizations, is that they want to be able to see what these people are talking about to make sure it’s relevant if they’re sending employees. And then you’ve got lanyards, stickers or… I do pin badges, I’ve got a little set of pin badges that I’ve done. Then you’ve got to worry about volunteers. And volunteers I always forget about, and they’re amazing. They give up their time to sit in the Watershed, and they sit out the front and check people into the event.

Drew: Do registration and… [inaudible]

Alex: While I run around crazily going… I’ve got to put banners up here, so I’ve got to make sure I’ve got banners, and I’ve got to make sure that this person’s set up and ready to speak, and… Thankfully the tech team at the Watershed are amazing. So I come in and they go, “Yeah, okay. We’re doing this again. Okay.” And they get everyone set up, it’s all working, and they’re all mic’d up and all ready to go. And volunteers just sit there and go, “Right, they’re in, they’re in.” And you check on them a couple of times, and they’re like, “Yep, I’ve had these people.”
What other small details are there? Oh, getting myself to the event. So I live just on the outskirts of Bristol, so what I’ve done in the past is I’ve driven in the morning to get to the venue for 8:00 with a… And I’ve got it in the garage now, it’s a conference box, which has various bits of…

Drew: Canned food, firelighters. Emergency flares.

Alex: [inaudible] Hi-vis jackets. It’s got all the bits and pieces that have built up over the years. Because you sit there and go, “I can put an event on for 300 people, and so I want 300 of these things.” And then you get 200 people show up. So you have to go, “I’ve got 100…” I’ve got old dot grid notebooks and stuff that are from event many years ago that I’m like, “I’ve got those to put out so people can have them, because I don’t want them in my garage.” So what I’m now doing is I’m making sure that I can book a hotel room for myself, to make sure I can get up at 4:00 in the morning, because I can’t sleep anyway, because I’m like, “I’m putting on conference today,” and being close to the venue anyway. And… What else? There’s loads of little bits you always forget about every time you put on a thing, you’re like, “I did that last year. Why did I forget this year?” And stuff like that.

Drew: I guess it’s one of the advantages of having a regular venue that you go back to year after year.

Alex: Yes.

Drew: Is that, as you say with the tech team, they know you, they know your event, they know what they’re doing. You don’t have to waste energy thinking about, “Where do we put the registration desks? Where do we do this?” Because you just know. You’ve done it before, you just fall into the pattern, and it takes off a lot of mental load.

Alex: Yeah. Yeah. If it was my first one, I’d be… I wouldn’t sleep for the week before the event, because I’d be like, “Have I got X? Have I got Y? No. Oh, no. What am I going to do?” And then I’ve been really fortunate with, if we’re doing printing of schedules and stuff and name badges, is that I’ve got a printer I can go to the week before and go, “I need this.” [inaudible] “Okay, great.” And within… In the past, I’ve had a 24-hour notification to go, “It’s been dispatched.” You’re like, “This is great.” And then I’ve gone, “There was a typo and it’s my fault. I’m really sorry. Can you print these?” So thankfully I’ve now got my wife and a couple of friends who will proofread anything I send that’s going to be printed.

Drew: Yeah. Yes. When you’re used to working digitally, sending stuff to print is terrifying, isn’t it?

Alex: Yeah. I don’t know about you, but it’s the thing I’m always saying to clients is, “You’ve got to remember a website can be changed, as and when you want it to be changed. Can’t do that with a schedule book that you’ve printed out.”

Drew: No. And have you ever had any situations like with speakers needing to cancel last minute, or being ill, or anything like that?

Alex: I’ve had an issue with a speaker before where, because of train… We’ve had issues with train strikes and stuff before. I had an issue with a speaker who went to get on a train, to find out that the train was canceled, and they were traveling down late the night before, and they were meant to be on early first thing the following morning. So there was a lot of panic there about what we were going to do, and they made it in the end, and it was just… Essentially, I could probably give a course in crisis management for it. We had… Again, last year, even though I’ve done 14 events, I’ve never spoken at them, because it’s not something I do. And last year we got to a point where I was like, “We’ve got one lightning slot, and the person we wanted to speak at it is unavailable.” And I think was 48 hours before that slot was to take place, I was like, “I’ll do it. How bad can it be?”
And having spoken to people who’ve never spoken at events before, who’ve done it, and their nerves and stuff like this, I thought I had a really good idea for a talk for 15 minutes. It’s only 15 minutes. And I was there panicking about it, and thankfully we had Gavin Strange on after me. I spotted him walking in the room after I was about seven minutes in. I’m like, “I’ve run out of content, I’ve run out of stuff to say,” because I’d panicked my way through it. I was like, “That’s me done.” [inaudible]
So a lot of it is just making sure… Knowing enough in advance when things are happening, I think. We’ve been caught out with train strikes, I think at least twice now. And that’s always the thing… If it’s something we can control, so if it’s a speaker who’s sat there [inaudible] “I’m really sorry, I can’t do it,” we can… We’ve done it before where we’ve had a slightly extended break, or moved things around ever so slightly because they’ve been unable to attend. But something that we can’t control is industrial action and bits and pieces like that. Thankfully they published it well in advance [inaudible] like, “Is this going to impact travel?” And it did last year, which was a bit annoying. And had it been a one-day event, it wouldn’t have happened.

Drew: Yeah. What seems to be clear is that organizing something like WDC, you probably can’t do it as a business. It has to be something you do out of passion and you do because of the love for it, because it’s so much work. And to be able to keep it to being so accessible in terms of cost and things, as a business move, it doesn’t make any sense, right?

Alex: No. If I wanted to do it as a business, I’d have to charge a lot more for a ticket, and I couldn’t do one event a year. I’d have to explore options and go down those very narrow lanes of content to make it a business. And at that point I’m like, “Do I really want to organize 10 events plus a year to run a business?2 And the answer’s no.

Drew: Yeah. It’s a complete change of business, isn’t it?

Alex: Yeah, exactly.

Drew: No longer a software engineer, an event organizer. What would you say to somebody who is thinking about setting something like WDC up, who wanted to do that themselves, a grass root, accessible event, other than don’t do it in Bristol in October? Would you have any advice to give to them?

Alex: So I’ve spoken to people about it before, and the advice I can give is, if you’ve got the community locally… I’ve been very fortunate with the web scene in Bristol, is that if there’s the community locally and you start off with meetups and networking locally, then if you then put on an event that’s aimed at that community, the chances are that it’ll start in Bristol… Not in Bristol, sorry. It’ll start in your location of choice that isn’t Bristol. And what will happen is that the people who are local will obviously have a network that’s ever so slightly further apart, and it’ll grow out that way. And if you get the right people to speak at that event as well, they will tweet about it and everything else. And that’s the way WDC has grown, is through, as I say, word of mouth.
I got extremely lucky in that I could work with the uni that I was at to put on the first three events. And so if there’s a partner who’s willing to help you as well [inaudible] “I’ve got an idea for this, but what I need is just someone to help me cover the cost,” you can grow it that way as well. So if you know that there’s a community in your area, and it’s… The other thing that I think is very important is good travel links for people traveling in. So obviously Bristol’s quite a good location, because we can get trains from the Southwest, from the East, from the North, all relatively easily. The travel links are really good for Bristol. So if you’ve got that infrastructure in place as well, it means that people coming from outside of your area, can get to it, stay there, and get home again without fuss.
And it’s making sure that you’re getting people talking about things that people want to listen to. So it can be about following trends, but what we’ve done with our lightning talks is that it’s a 15-minute slot that you don’t have to talk about web stuff. You can talk about anything. So we’ve had people talking about building desks and furniture and stuff like that, which is great to show that people in the industry do other things. It’s not that you sit in front of a computer all day. Find the community to build the event in the middle of, and let it… I’ve been very fortunate [inaudible] word of mouth, it’ll grow, because whilst your network could be 50 people, their network is then another 50 people for each one of them, and it grows that way.

Drew: Fantastic. I’ve been learning all about what it takes to put on an independent web conference. What have you been learning about lately, Alex?

Alex: So I’ve been learning about Eleventy. Because I’m a big WordPress person. I’ve been doing WordPress for 15 years professionally. And the conference site has been a mismatch of different things over the years. So I’ve been learning Eleventy to pull it all together in one platform. Because obviously it’s a conference, so nothing changes dynamically a lot. So what I’m currently doing is filling in the back catalog of event sites, so that people can see what… Because we’ve tried fun themes and stuff with them over the years, is that I’m using Eleventy to bring all that in and going, “How do I do this with this thing?” And “Why does it error when I do this thing this way, and do something similar but not quite the same this way?”

Drew: It’s always very challenging and a little bit humbling, isn’t it? When you pick up a different bit of software, where you know how to do the task with something else you’re familiar with, and you pick up something different, and suddenly you feel like an idiot.

Alex: Yes.

Drew: But also, it’s so fulfilling, isn’t it? Once you figure out how to do something and just… That sort of dopamine hit you get from achieving things is amazing.

Alex: Yeah. For me it’s like, “But the documentation says this.” And what’s getting in my way of using documentation properly is that I think I can do it another way, because in the other systems I use and the frameworks I use, this is how I do it. [inaudible] read what we’re saying. You’re like, “Fine. I surrender.”

Drew: I surrender. I will do what the documentation says. If you, dear listener, would like to hear more from Alex, you can find his personal site at alexolder.com, and of course, WebDevConf returns to Bristol on the 20th of October this year. You can find all about that and get your tickets at webdevconf.com. Thanks for joining us today, Alex. Did you have any parting words?

Alex: No, but please do say hello, because I don’t use social stuff very much because I’m always busy. But do say hello if you ever see me anywhere.

Categories: Others Tags:

The Evolution of Home Intelligence Smart Home Trends

September 26th, 2023 No comments

Ever since smart technology made its debut in the globally available consumer stage, we all saw our lives will be completely changed. The extent of these changes and just how fast they are going to occur, however, was beyond anyone’s wildest imagination.

Voice-activated devices, full home automation, AI assistants… All these things were, not that long ago, something you could see only in your preferred Star Trek show. Now, each household boldly goes where even the good old Enterprise didn’t.

All these changes envelop at a pace that is, at this point, very hard to even call an evolution. Each day, a new trend will enter the scene and set the market pace for years to come. Let us take a look then at some of these disruptive smart home trends so we know what brews on the future real estate horizon.

A growing level of integration

Smart home systems were always built around the idea of integration. Without it, there is nothing particularly smart in the bunch of devices minding their own business. However, in recent times, the potential for integration has truly blown through the roof. 

Take for instance smart toilets that may sound as superfluous and menial as it gets. Still, they are capable of analyzing the waste and sharing data with other tools and apps tracking your health. This may result in prompts to change nutrition. This data can be shared with your kitchen devices. The possibilities for integration are limitless.

New tools for every single chore

You know how they say – the free market provides. Well, the idea behind smart home tech is to make our lives simpler and more streamlined. With that in mind, there is really no limit on what can be made smart and what not. So, we will see an onslaught of devices addressing virtually all activities of one household until some of them find market legs while others, inevitably, fall into oblivion. 

How about smart dog houses? Sure, the idea sounds good and if enough consumers jump on board they will stick the landing. This trial and error process will, if anything, open doors for endless innovation.

Things will keep going touch-less

At this time, the idea of completely abandoning any semblance of touch controls may seem odd. After all, touch inputs offer great tactility, precision, and responsiveness. But, there is a general consensus that touchless tech is somehow more convenient and industry leaders will keep working on various types of voice and AR inputs until they make touchless controls as usable as the current gen of touch commands. And then there are the unforeseen factors like the recent outbreak of COVID-19 that give this idea new fuel. Come hell or high water, touchless control will make a break.

Innovation given birth by sustainability

Sustainability has become one of the greatest priorities of modern society. Keeping in mind the fragile state of the energy sector and soaring power prices, it is easy to see this trend is not born only by altruistic reasons. So, things like smart thermostats, smart LED lights, and other inclusions have by now pretty much become the staple in all real estate market segments that range from apartments for rent to building segments. This is especially evident in modern tech-oriented hubs like Jacksonville. These requirements will keep adding new items to the list of smart home tech.

Image by Freepik

Increasing reliance on Artificial Intelligence

Some forms of artificial intelligence have been present in home tech for decades now. Still, a greater level of autonomy and self-regulating operations are not the first thing that qualifies as AI these days. Even more so, when we consider just how this technology has passed in the meantime and how pleasant it is in all aspects of our daily lives. Picking up countless duties ranging from fixing your photo to curating the entertainment content and planning your daily routines, AI has crawled its way into our homes. It will continue to do so in countless shapes, forms, capacities, and types of devices.

The growing relevance of health tech

Millennials who now comprise the bulk of new homeowners and renters have often been cited as the ‘wellness generation.’ Their tendencies and laser focus on personal health have definitely sent ripples down the real estate and smart tech sectors. First, there is a whole avalanche of new devices oriented toward fitness, wellness, and mental well-being. 

But, even the tools that previously didn’t have health components are now expanding to this lane. We are talking about thermostats, toilets, doorbells with COVID-19 screening functionalities, and a growing list of similar inclusions.

At-home-exercise breaking into mainstream

We briefly touched on this trend in the previous section, but keeping in mind its popularity and sway at-home-exercise is an entirely different beast with its own momentum. Once again, the roots of the trend can be traced back decades into the past but the time it truly blew through the roof was the outbreak of COVID-19 when gyms and fitness centers got closed. 

No reason to worry, though – you now get an army of different trainers, ellipticals, and other fitness-focused devices that use all the perks of the available IoT ecosystem. Their growth slowly but steadily pushes them into the mainstream.

Image by master1305 on Freepik

A shift toward home working environments

Ah, yes – yet another trend that was a long time coming but was given an incredible boost by the recent global pandemic. Be that as it may, the fact remains that, at the moment, about 90 million Americans have the opportunity to work part-time while 80 million use that opportunity, at least part-time. 

These numbers, for all what it’s worth, are only going to grow. So you can expect to see a range of products that are designed specifically to tap into this massive market niche. We are talking about things like smart noise-canceling windows, AR tech, AI video filters, and other products.

PC-less homes going forward

And when we say PCs we are thinking about our good old laptops as well. The ancillary tech fronted by smartphones has been carrying a growing share of the load in terms of productivity for quite some time now. Ranging from media consumption to correspondence, and video editing, home devices, smart boxes, and other items are making traditional computers obsolete. Some phone brands like Samsung and Motorola even offer full desktop experiences in the palm of your hand. Expect to see the productivity of tomorrow moving in the direction of fragmentation held together by IoT and Cloud services.

Wrapping-up

Well, we hope these couple of examples gave you a better idea about the direction the world of smart home tech might be moving in years to come. And, from what we can see right now the future of this market segment will be bright indeed even as its long-term outcomes still remain obscure. The most important thing to take out, however, is that this market segment is just picking up pace and that its full fruition is still way ahead. Until then, the best we can do is keep an ear on the ground and enjoy whatever the smart home market keeps throwing our way.

Featured image by Freepik

The post The Evolution of Home Intelligence Smart Home Trends appeared first on noupe.

Categories: Others Tags:

3 Essential Design Trends, October 2023

September 25th, 2023 No comments

Every now and then, website design trends can leave you scratching your head. This month’s collection includes some of those.

Categories: Designing, Others Tags: