ev

How to Find Opportunity in Everything

If there’s one thing I’ve learned from interviewing hundreds of high-performers and change-makers on the Chase Jarvis LIVE show, it’s that the most successful entrepreneurs and creators share a unique trait: they view challenges not as barriers but as incredible opportunities for growth and innovation. Unlike many of us who might view problems as burdensome obstacles, they tend to see them as opportunities to learn, to grow, to improve, and to adapt in ways that leave them better positioned than they were before. This perspective isn’t just about maintaining a positive attitude—it’s about harnessing the power of each setback to propel oneself forward.  Why Problems Are Your Launchpad for Innovation Problems are inevitable, no matter what we do in life, but as creators and entrepreneurs we can get more than our fair share. It’s par for the course when it comes to breaking new ground and pushing boundaries. But here’s the kicker: when you start to view these problems as crucial growth opportunities, they suddenly become less daunting – more like puzzles waiting to be solved rather than monsters lurking in the dark. This mindset not only reduces the stress associated with challenges but also opens up your creative process...

The post How to Find Opportunity in Everything first appeared on Chase Jarvis.

The post How to Find Opportunity in Everything appeared first on Chase Jarvis.




ev

AI Is About to Change Education Forever (Again)

Change is a scary word. So when we hear it non-stop in conversations about AI, it’s no surprise that many people feel a sense of unease. But what if AI could actually be used for good? Imagine a world where technology is not just about profits and efficiency, but also about improving education and learning opportunities for all. Sal Khan believes that future is possible. If his name sounds familiar, that’s probably because you’ve picked up a skill or two through his widely-used learning platform, Khan Academy. And if that’s the case, you wouldn’t be alone. Some 170 million people around the world currently use its educational resources on subjects ranging from Algebra 1 to Chemistry. A lot of this help is video-based, but they’ve begun introducing adaptive software with interactive exercises more recently as well. Looking at the big picture, Sal hopes to build Khan Academy into a fully-fledged digital tutor capable of both teaching lessons and providing personalized learning experiences to users. Does AI Enable Cheating In Schools? The widespread popularization of AI has garnered some serious questions about cheating in schools. Teachers and parents are voicing concern that kids will use the technology to cut corners, or...

The post AI Is About to Change Education Forever (Again) first appeared on Chase Jarvis.

The post AI Is About to Change Education Forever (Again) appeared first on Chase Jarvis.




ev

Redefining Success: I Made $5 Million in Revenue and Still “Failed”

Why $5 million in revenue didn't mean success. Redefine what winning means in the startup world.

The post Redefining Success: I Made $5 Million in Revenue and Still “Failed” first appeared on Chase Jarvis.

The post Redefining Success: I Made $5 Million in Revenue and Still “Failed” appeared first on Chase Jarvis.




ev

You’re Wasting Your Life (Without Even Realizing It)

In this episode, I sit down with Jodi Wellman, who calls herself “The Grim Reaper’s Cheerleader,” to dive into the deep stuff—how thinking about our own mortality can actually help us live more fully, with no regrets. Jodi breaks down her 4000 Mondays project and how we often get stuck fantasizing about our goals instead of taking real action. I also share a bit of my own journey after selling my company, where I had to rethink what really matters. We talk about the power of breaking out of our routines, why journaling can keep us on track, and how small, intentional changes can make a big impact on living a meaningful life. Some highlights we explore: The dangers of positive fantasies and how the idea of “temporal scarcity” can kick us into gear. Why shaking up your daily routines can break the autopilot mode and bring more vitality into your life. The role of reflective practices like journaling in staying true to your goals and living with purpose. And more… Enjoy! FOLLOW JODI WELLMAN: instagram | linkedin | website Listen to the Podcast Subscribe

The post You’re Wasting Your Life (Without Even Realizing It) first appeared on Chase Jarvis.

The post You’re Wasting Your Life (Without Even Realizing It) appeared first on Chase Jarvis.




ev

Game-Changing Tactics to Elevate Your Status

In this episode, Professor Alison Fragale, an expert in organizational psychology, discusses the fascinating dynamics of power and status and how they shape our lives and well-being. We dive into the differences between power and status, why both are essential human needs, and how their presence or absence affects our mental and physical health. Professor Fragale shares actionable strategies to help anyone elevate their status, build influence, and navigate power dynamics with authenticity. We also touch on the challenges of gender and racial status, the importance of autonomy, and practical tactics like leveraging your network and social media to boost your influence. Some highlights we explore: The critical difference between power and status, and how both impact your life. Practical strategies for building influence and maintaining authenticity. The role of gender, race, and autonomy in navigating power dynamics. And more! Enjoy! FOLLOW ALISON FRAGALE: instagram | linkedin | website Listen to the Podcast Subscribe

The post Game-Changing Tactics to Elevate Your Status first appeared on Chase Jarvis.

The post Game-Changing Tactics to Elevate Your Status appeared first on Chase Jarvis.




ev

Why Success Demands You Never Play It Safe

Playing it safe may feel secure, but it can hold you back from true growth. Explore why taking risks is essential for success and creativity.

The post Why Success Demands You Never Play It Safe first appeared on Chase Jarvis.

The post Why Success Demands You Never Play It Safe appeared first on Chase Jarvis.




ev

How ‘Playing It Safe’ Almost Cost Me Everything (Don’t Settle!)

Playing it safe nearly cost me everything. Don’t settle—learn how to break free from self-betrayal and follow your true path.

The post How ‘Playing It Safe’ Almost Cost Me Everything (Don’t Settle!) first appeared on Chase Jarvis.

The post How ‘Playing It Safe’ Almost Cost Me Everything (Don’t Settle!) appeared first on Chase Jarvis.




ev

Rewatch the 5.5 Hour Never Play It Safe Book Launch Event

If you’re ready to break free from fear and unlock your creative potential, you’re in the right place. Recently, I hosted an epic 5.5-hour live event that brought together some of the brightest minds in creativity, innovation, and personal growth. If you couldn’t join us live, don’t worry—you can still catch the entire event right here. Inside the 5.5 Hour Experience One of the core themes of the event was how fear often holds us back. We explored the idea that “avoiding danger is no safer in the long run than outright exposure.” In other words, playing it safe might just be the riskiest thing we do. I dove deep into how we can stop letting fear dictate our decisions and shared strategies to help you push past that resistance to achieve your best work. But it didn’t stop there. We were also joined by a series of amazing guests including Gary Vaynerchuck, Austin Kleon, Jasmine Star, Adrian Grenier, IN-Q, Stephan Moccio…and Seth Godin joined us LIVE to kick it all off. Seth, a multiple-time bestselling author and marketing genius, launched us into an incredible conversation about creativity, risk-taking, and finding meaning in our work. As Seth shared, embracing uncertainty...

The post Rewatch the 5.5 Hour Never Play It Safe Book Launch Event first appeared on Chase Jarvis.

The post Rewatch the 5.5 Hour Never Play It Safe Book Launch Event appeared first on Chase Jarvis.




ev

Never Play It Safe – Q&A #1

We just wrapped up the first in a three-part live Q&A series, and it was packed with energy, insights, and real-world advice for creatives looking to take the next step in their journey. If you missed it, no worries—catch up below with the full replay, and make sure to join us for the next two sessions! Key Moments from the Q&A Throughout the session, we tackled a range of topics that resonated deeply with the audience. Here are some of the standout discussions: Overcoming Fear: One of the recurring themes was how fear often holds us back from achieving our best work. We discussed strategies to push past those fears and lean into uncertainty, a concept central to Never Play It Safe. Creative Networking and Relationships: A big takeaway was the power of genuine, long-term relationships. Haakon shared how being “more myself” and focusing on building authentic connections has led to unexpected opportunities. Finding Your Niche: Kirk brought up his challenge of working with clients across industries, from software to fitness, and shared his goal of narrowing his focus by the end of the year. This sparked a valuable conversation about pursuing the work that excites you most. The Power...

The post Never Play It Safe – Q&A #1 first appeared on Chase Jarvis.

The post Never Play It Safe – Q&A #1 appeared first on Chase Jarvis.




ev

Cross-Platform Development: Coding for Online Gaming on Multiple Devices

In today’s world of online gambling which is constantly changing, cross-platform development is essential for success. Players want to be able to play their favourite casino games on mobile phones as well as tablets or desktop computers but this presents [...]

Read Article

The post Cross-Platform Development: Coding for Online Gaming on Multiple Devices first appeared on CSS Reset.




ev

Leveraging Automated Market Analyzers: A Developer’s Guide to Building Financial Tools with Web Technologies

Building financial tools has never been more accessible. With the rise of web technologies, developers can create powerful market analyzers that are quick, responsive, and packed with features that were previously only available to large trading platforms. Here, we outline [...]

Read Article

The post Leveraging Automated Market Analyzers: A Developer’s Guide to Building Financial Tools with Web Technologies first appeared on CSS Reset.





ev

Sucuri Security WordPress Plugin Review

Sucuri Inc. is a globally recognized authority in all matters related to website security, with specialization in WordPress Security. The Sucuri Security WordPress plugin is free to all WordPress users. It is a security suite meant to complement your existing security posture. It offers its users a set of security features for their website, each...




ev

How to review a migration decision in the Administrative Appeals Tribunal (AAT)

One of the questions we are asked regularly when a client has a visa refused is – What are my chances of success if I appeal? Statistics would seem to indicate that the Department of Home Affairs (DoHA) often takes an unreasonable approach to their decision making. In the AAT Migration and Refugee Division caseload report […]

The post How to review a migration decision in the Administrative Appeals Tribunal (AAT) appeared first on Australian Visa Experts.




ev

The Impact Of AI Software On Architecture And Design: Revolutionizing Creativity And Efficiency

The emergence of AI software in the field of architecture and design has sparked a significant shift in how professionals approach their work. With advancem ...




ev

Similar DeviantArt Websites: Alternatives For Free Art Exposure

DeviantArt has long been a go-to platform for artists seeking to showcase their work and connect with others in the creative community. However, as the digi ...




ev

18 Clever Logo Design Ideas: Fresh Showcase Of Creativity

The gallery features a collection of 18 cleverly implemented logo design ideas that highlight the art of logo creation. These logos showcase not only smart ...




ev

The Lost Generation, by Kevin Gilbert

880 billion images will be made this year, in the USA alone. How important is it to makes sure image loss is minimised not to have a Lost Generation?





ev

22 passive income ideas to achieve financial freedom

Earn while you sleep: Realistic passive income ideas you can pursue part time! Ditch the 9-5 with the right idea, hard work, & these essential tools.




ev

How to hire a WooCommerce developer

Hire a WooCommerce developer who's reliable, affordable, & gets the job done on time. 4 ways to find the right fit. Here’s what to ask first.




ev

WooCommerce stores are revving up for Black Friday: The 2024 holiday trends survey

As ecommerce revs up for the holidays, it's time to prepare. Brand new survey data for Black Friday 2024 stats and trends from your friends at Woo.




ev

Top Life Project surpasses revenue goals by 59% in year one

How did Top Life Project exceed revenue goals by 59%? The story behind their WooCommerce-powered health brand & booming product launches.








ev

How Generative AI Can Add Human Delight to Your Virtual Event

We just celebrated 24 years of Viget. That’s two dozen years! This year, our Spring TTT in celebration of “Viget24” was a virtual extravaganza. We’ve put on a lot of virtual events over the years. Some with really strong themes and swag bags; some that focus on simple, meaningful time together; and others that let us enjoy learning something new as a team. Regardless of the rest of the experience, a key component of all of our virtual events is joyachieved often through intentional levity. We think it’s important to laugh together! We see laughter as a way to expedite connection, and connection leads to rapport which makes us better at collaborating — and in turn leads to more quality products for our clients. 

Experimenting and iterating is a critical way we try to continually get delight right. We’re pretty pleased with one of our experiments from Viget24 that we called “Lovely Spring Day”.

A Lovely Spring Day

As we were brainstorming for this TTT, we thought about how to throw some joyful levity pizzazz into the pieces of our virtual events puzzle that have become pretty standard. How do we add lots of delight without adding lots of time to the action-packed schedule? We zeroed in on the virtual backgrounds we’ve been creating for every event — they add a layer of specialness. Of place. This isn’t any old virtual meeting. This is a TTT! 

A small collection of past event-specific virtual backgrounds

Another key consideration for our team is figuring out creative ways to tie in inspiration from our industry and our work. AI has been an obvious contender —  we’ve discussed it and tied it in to some extent for the past several TTTs. But this time, we wanted to see how we could use AI for delight — marrying it with virtual backgrounds felt obvious. And so, a ”Lovely Spring Day” was born. 

The TL;DR is that we generated custom virtual backgrounds for every Viget employee that encapsulates their “ideal spring day.” We then played a 15-minute guessing game where people tried to guess who the background “belonged to.” Then, people had access to the full folder of AI-generated virtual backgrounds to look through. Vigets could then choose the background that spoke to them most and set it as their background. 

Read on for more on how we put this together!

Pre-Event Survey

To support all of our TTTs, we send out thoughtful pre-event logistics surveys 2-3 weeks before the big day. The survey lets us know where folks are joining from (where can we send their activity + snack packages?) and gives folks a chance to provide input on how the People Team can help folks enjoy and be present for TTT. This time, we also snuck in three questions, just “for giggles.”

  • In one sentence, describe your ideal spring day.
  • List three things that spark joy.
  • What color do you think suits you best?

We did not share why we asked these questions. Sneaky, sneaky! When it’s low-key like this, the element of surprise is often a quick way to level up the delight.

Asking for a Friend

With rich data in hand about what makes people happy in spring, we were ready to generate the backgrounds. I was stoked! I’ve been experimenting with ChatGPT for some time, so it was fun to be able to use the DALL-E 3 side of OpenAI’s GPT-4 model

Who knew Prompt Engineering would be part of my role as a recruiter-who-helps-support-TTT-planning? I played around with a couple different prompts to generate these background images. Ultimately, my goal was to create backgrounds that were meaningfully different from one another but still felt good (i.e., something you might feasibly want to set as your virtual background and nothing freakily AI, like uncanny valley hands).

Here are the prompts I landed on that got me to our set of virtual backgrounds:

  • Please generate an image (dimensions of a virtual meeting background) that encapsulates the vibe of a day with [ BLANK ].
  • Please generate an image (dimensions of a virtual meeting background) that features [ BLANK ].

In the blanks, I wrote the things people included in their surveys. Those blanks were filled with everything ranging from dogs, cats, and friends to beverages, specific temperatures, yard games, carbohydrates, hammocks and more! Sometimes, I’d include a detail I knew about that person myself, even if it wasn’t in their survey. Yes, I occasionally editorialized for both clarity and whimsy! This was for delight purposes, but also helped serve my goal of having the backgrounds be “meaningfully different from one another.” It’s amazing how many people’s ideal spring day is as simple as having 1) moderate temperatures and 2) no pollen!

I generated 55 images. Throughout the process, DALL-E nailed it. I only needed to regenerate 2 or 3 images with clarifiers (and only because they included AI-specific outliers like disembodied hands). Huzzah!

Here are some of my favorites, along with their prompts in the captions. Can you guess who they belong to?

Please generate an image (dimensions of a virtual meeting background) that features an outdoor brewery/taproom in the appalachian mountains. There's a playground with kids in the very distance. In the foreground, frisbee, soccer, volleyball, etc. with friends and family.
Please generate an image that encapsulates the vibe of a day ending with an outdoor dinner with lights near an outdoor shower. There should be some hiking boots scattered about.
Please generate an image that features a nice hot bath after a cold but sunny day, with a beautiful mug of green tea and a box of takeout that looks really good. The calendar shows April 25th.
Please generate an image that encapsulates the vibe of sitting outside in a nice purple adirondack chair with buc-ees paraphernalia around.
Please generate an image that encapsulates the vibe of a sunny, 65 degree day with a slight breeze at the ballpark watching a game. The image should feature cats, baseball, and art.
Please generate an image that encapsulates the vibe of being outside in a canoe along with carbs, bad jokes, and games (video OR board games).
Please generate an image that features endless mountain bike trails, a blue bike with a cup of coffee in the cupholder, and roaming cats.

IRL

Ok, so for the actual activity we had the images ready to go in a private Google Folder. I took twelve of the images and put them in a very simple deck. I shared my screen, introduced the activity, and invited people to guess who they think each image belonged to in Slack. It was so fun seeing people throw out guesses and then narrow in with any verbal hints I gave!

Each image took about a minute. Then, we shared access to the Google Folder, gave folks a couple minutes to choose a background that called to them (their own image or someone else’s), and set it as their background. It felt like a magical moment to witness people finding and resonating with their own image or delighting in the ridiculousness of their coworkers’. We saved about 5 minutes for this piece, which felt right.

The whole Lovely Spring Day activity took just over 15 minutes! It was a perfect way to transition from a long meal break into our next grouping of content. And, we got to see the different backgrounds throughout the rest of the meeting.

Oh, the humanity!

I think this activity was successful for a couple of reasons.

1. People laughed! 

Color commentary in the #ttt Slack channel

2. People felt seen. Some of these backgrounds were incredibly on point. Some of that was due to key folks having well-documented interests and a Slack-Famous Dog. 

Laura Sweltz has a famous love of books and an incredibly iconic beagle named Phoebe.

But some of it was due to the People Team knowing about our people — our coworkers — beyond the sentence they wrote in. This uniquely human involvement helped me call an audible as needed and tweak prompts slightly to make the backgrounds feel even more relatable.

Steven, Carolyn, and Laura Sweltz felt seen.

3. We could commiserate about our eventual AI overlords. (Did you notice that I say “please” in my prompts?!) Listen, Viget has plenty of practical, healthily skeptical people who are dubious about AI. GenAI is not always a fun, lighthearted thing. But using it in a fun, lighthearted way to do something it’s really good at was a nice use case and thought-provoking exposure even for people who are not into it.

4. We could see where we all align, and where we differ! It was amazing to see just how many people love picnics, covet their caffeine, and appreciate a bike ride. It was also cool to see some unique folks who simply crave a rainy spring day, or some beloved Buc-ee’s. What a rich tapestry of individuals — literally!




ev

Building Magic with Webflow: A UI Developer's Perspective

In the fast moving and constantly changing landscape of web development, codeless solutions like Webflow and Squarespace have emerged as an alternative to more traditional development. These platforms allow users to design and build websites through intuitive visual interfaces, and are viable solutions for many use cases out there. 

For the past several months, I've been working as a frontend development support specialist alongside one of our talented designers, Blair Culbreth, who is managing a large, established Webflow project. Here are my candid thoughts and impressions from this experience, along with some critical considerations for those looking to integrate Webflow into their own workflow. Spoiler alert: while Webflow has some impressive strengths, it also comes with limitations that can be both unexpected and frustrating at times.

What Webflow Does Really Well

Small Team Efficiency

Webflow truly shines for smaller teams or products, especially those with limited resources. For a team that’s just a single designer or a small development crew, Webflow can help lower the technical debt involved with getting a website to production. By mitigating some of the more complex aspects of development such as responsive design, cross-browser compatibility, and hosting, teams are able to focus on other aspects of the site. This makes it a strong option for startups, freelancers, or small businesses looking to create professional-grade websites efficiently and effectively without the necessity of a developer.

Animation Tooling

When I say professional-grade websites, I’m talking about more than just functional designs. Webflow has some fantastic animation tooling making it incredibly simple to build rich, full-page animations and interactions without ever touching a line of code. Users can create scroll-bound animations or interactive moments of joy all from the comfort of a relatively simple and straightforward GUI. Through the use of animation keyframes, you can elevate a static site into something that feels modern and expensive. Heck, I could even see using the animation tooling itself as a prototyping tool for design handoff in a more traditional web development process. This ability to easily add sophisticated animations allows smaller teams to produce polished, dynamic websites that rival those created by much larger teams with dedicated development resources.

Documentation & Education

Beyond its design capabilities, Webflow also stands out for its educational impact. The platform offers incredible documentation that covers core frontend principles, effectively bridging the divide between design and development. Through simple, digestible, and intuitive videos and written documentation, Webflow equips designers with knowledge that shores up many concepts and intricacies of web development.

Working with Webflow provides designers with numerous takeaways they can apply to future projects, including those outside the realm of Webflow. The platform educates users on HTML structureCSS styling properties, and responsive design. This deeper understanding of web development makes designers more versatile and effective in their roles and inherently benefits communication between designers and developers, as their thinking will be more aligned with one another.

Navigating Webflow’s Limitations

Class Styles

Webflow's class-based styling system is a standout feature, especially to those familiar with CSS. It allows you to bundle properties into classes and apply them efficiently across different elements, minimizing code duplication. When used effectively, this approach facilitates the creation of reusable styles and design systems; however, mastering it requires attention to detail, similar to working with CSS directly, which can be made challenging within the Webflow UI.

Due to the separation of pages and content in Webflow, tracking down existing CSS classes and applying styles consistently throughout a project can be challenging. Keeping track of which class names apply what styles can be a struggle. While Webflow offers a Style Manager to help organize and manage classes, it can be difficult to use for quickly identifying how styles are being applied across the platform.

Moreover, the inability to open multiple pages in designer mode at once presents a significant frustration. Without the ability to compare elements across different pages simultaneously, users may face challenges in ensuring consistency and troubleshooting design issues efficiently. This limitation may lead to a slower, more cumbersome workflow, particularly in larger projects where maintaining a coherent design system is critical.

Another struggle with managing styles within the UI comes in the form of applying styles to combo classes. Combo classes are when you combine multiple classes together to create a variation or modified state of an element. Inadvertently applying styles to a combo class when intending to apply a style for the base class was a common issue I found myself running into, highlighting some challenges users should be aware of, especially when getting more familiar with Webflow.

These challenges underscore the value of implementing a strong and consistent CSS class naming system, such as BEM (Block Element Modifier). Adhering to a standardized naming convention will help mitigate some of the challenges posed by Webflow's class-based styling system, but it does come with the added overhead of needing to learn a new class naming convention.

Preset Web Elements

Webflow provides users with a diverse selection of default web elements, ranging from simple divs to intricate lightbox elements, which serve as the foundational building blocks for websites. These preset elements occasionally impose rigid structural constraints. For instance, when attempting to create a tabs menu with a filter, users may encounter a problem with adding additional elements to the tab menu block. This restriction forces users to either conform their design to Webflow’s constraints or devise creative workarounds to achieve their desired functionality.

Navigating such limitations can be challenging, particularly when striving to realize a specific design vision. It may involve exploring alternative solutions or compromising on the original plan. Yet, as users gain familiarity with the platform, those limitations can be anticipated, allowing them to develop strategies to circumvent the constraints.

Custom Scripts

One of the most powerful aspects of Webflow is also one of the most challenging features to balance. It requires careful management to avoid issues like performance degradation and increased technical debt.  It’s incredibly easy to have a website get bogged down with bloat, especially when a larger team might be working on a project.

Webflow lacks a built-in feature to view all custom scripts at a glance, making it difficult to track and manage them. Maintaining a documented list of all custom scripts used in your project and detailing their purposes and locations can help mitigate this issue, but that’s a fair amount of overhead to maintain. Additionally, custom scripts do not function in Webflow’s editor mode, requiring a site deploy for testing and troubleshooting, which can be time-consuming. 

The ability to add custom scripts opens up a world of options, including third-party plugins and libraries that can expand Webflow's native features. Tools like Jetboost or Finsweet can help fill in the gaps, and are oftentimes worth the investment as they provide relatively easy-to-use integrations that will make for a better user experience.

That’s all to say that applying custom scripts to a Webflow project is not necessarily bad, but should be approached with considerations on how to mitigate technical debt. Here are a few suggestions to help with integrating custom scripts into your Webflow project:

  • Maximize Native Features: Use Webflow’s built-in features as much as possible. If a design can be achieved with Webflow’s interactions and animations, avoid adding custom JavaScript.
  • External Development: Develop and test scripts in an external environment to reduce time spent deploying and debugging within Webflow.
  • Reusable Components: Save frequently used custom code as reusable components to simplify maintenance and ensure consistency across the site.
  • Regular Audits: Periodically review and clean up scripts to ensure that only necessary ones are loaded, improving site performance and maintainability.

Mitigating Difficulty Through Teamwork

I started this article by mentioning that I recently served as a frontend development support specialist alongside our designer, Blair, on this project. Blair took on the primary responsibility of building many of the pages, and I want to share more about our collaborative experience. Webflow is as close as you can get to building a traditionally coded website without necessarily needing to touch code, but that doesn’t mean there’s no value in having someone more familiar with the technical side of website building available. From accessibility considerations to complex layout structures, a lot of time can be saved by having a developer serve as a pseudo consultant on the project.

On numerous occasions, Blair reached out to me to help set up more complex custom implementations that required JavaScript or weren’t coming together as expected. By being able to jump in and solve those issues quickly for Blair, she was able to focus on building out the other pages. Similarly, I was able to audit and review her work to ensure it was inclusive for all types of users.

There are various development tricks we can implement to enhance user experiences for visually impaired users. For example, hiding text specific to a screen reader to provide greater context is a technique that a designer might not generally think about or even be aware of, but a good frontend developer would know to include. By being involved in the building process, I was able to highlight and advise on such instances, ensuring our project was accessible and user-friendly for everyone.

Conclusion

Webflow presents a robust solution for web development, particularly for smaller teams or projects with limited resources. Its intuitive visual interface and powerful animation tools enable the creation of professional-grade websites without the need for extensive coding knowledge. Webflow’s educational resources also empower designers to deepen their understanding of web development, bridging the gap between design and development and fostering better collaboration.

Webflow is not without its limitations. The class-based styling system, while efficient, can be challenging to manage, and the need for site deployment to test custom scripts adds to both the complexity and time investment required to build a project. Despite these challenges, many of the difficulties can be mitigated through careful planning and teamwork. Leveraging native features, developing and testing scripts externally, and creating reusable components are all strategies that can help maintain site performance and manage technical debt.

Collaborative efforts between designers and developers can further enhance the process, as seen in my experience working alongside Blair. This teamwork allows for efficient problem-solving and ensures that accessibility and user experience are prioritized throughout the project. By combining the strengths of Webflow with thoughtful collaboration and strategic planning, teams can create dynamic, user-friendly websites that meet modern standards.




ev

How we use DDEV, Vite and Tailwind with Craft CMS

In 2022 we changed our dev tooling for new Craft CMS projects. Goodbye complex esoteric Webpack configuration, hello Vite. Goodbye complex esoteric Docker Compose configuration, hello DDEV. This small change in tooling has completely transformed our development experience. We start work faster and avoid wasting billable time debugging Webpack and Docker.

From Webpack to Vite #

Webpack has been the defacto way of bundling JavaScript and front end assets. It’s a powerful tool… but with that great power comes great responsibility complexity.

Vite bills itself as the “next generation” of frontend tooling. Vite is much faster at bundling. But more importantly… its default configurations work great for most website projects.

Before (Webpack) #

Well over 300 lines of configuration spanning three files. Good luck making changes!

After (Vite) #

A crisp 30 - 50 lines of code. Want to switch to TypeScript? Need to drop in a popular front-end framework? Easy! All it takes is adding a plugin and 2-3 lines of config.

Deleting old code has never felt this good!

From Docker to DDEV #

Docker is another development staple. It isolates server infrastructure into virtual “containers.” This helps avoid issues that arise from each developer having a slightly different setup. However, Docker can have a learning curve. Config changes, PHP upgrades and unexpected issues often eat up precious project time.

Enter DDEV! DDEV describes itself as “Container superpowers with zero required Docker skills: environments in minutes, multiple concurrent projects, and less time to deployment.” We’ve found that statement to be 100% true.

Before (Docker) #

Every Craft project has a different Docker config. Bugs and upgrades required deep Docker experience. Last (but not least), it was difficult to run several projects at one time (ports often conflict).

After (DDEV) #

Performance is consistently better than our hand-rolled setup thanks to Mutagen and faster DB import/exports. Simultaneous projects run out of the box. DDEV provides (and maintains) a growing list of helpful shortcuts and DX features.

Getting started #

Ready to make the switch? Here’s how to set up DDEV, Vite and Tailwind on your own Craft project.

Show me the config files already! #

If you would rather see full config files instead of following step by step, check out our Craft Site Starter on GitHub.

DDEV #

Let’s set up a fresh DDEV project and start customizing.

  1. Make sure you have DDEV installed on your computer.
  2. If you’re a PHPStorm user, install the exceedingly helpful DDEV plugin. VS Code users have a similar plugin too!
  3. Follow Craft’s guide for creating a new project (they love DDEV too).

Now you have a fresh .ddev/config.yaml just waiting to be customized.

Node Version #

Open your DDEV config and make sure your Node JS version matches Vite’s recommendations.

nodejs_version: '20' # Vite 5 expects Node 18+

Ports for Vite’s dev server #

Next, expose ports that Vite’s dev server uses will use to serve assets.

web_extra_exposed_ports:
  - name: vite
    container_port: 3000
    http_port: 3000
    https_port: 3001

Routing ports can sometimes be confusing. This diagram might help!

  • Vite’s dev server runs inside of DDEV’s web container (a Docker container).
  • Until we expose these extra ports, any custom port within DDEV is unavailable to your host machine (your computer).
  • When it’s time to configure Vite, we’ll use port 3000
  • HTTP and HTTPS traffic must use separate ports.
  • We use port 3000 for http traffic and 3001 for https

Run Vite automatically #

Usually, you’ll want Vite to watch and build files automatically after you start a DDEV project. Using web_extra_daemons adds a separate background process (daemon) for Vite.

web_extra_daemons:
  # Run Vite in a separate process
  - name: 'vite'
    command: 'npm install && npm run dev'
    directory: /var/www/html

Use hooks to improve DX #

DDEV’s powerful hooks system can run tasks before or after various DDEV commands. These post-start tasks keep dependencies and schemas up to date every time you start DDEV.

hooks:
  post-start:
    - composer: install # Keeps installed packages up to date
    - exec: ./craft up # Apply migrations & project config changes

Time for Vite #

Vite is a Node app that’s installed with NPM. Your project will need a package.json. If you don’t have one set up yet, follow NPMs initialization script.

ddev npm init

# Don't forget to ignore node_modules!
echo node_modules >> .gitignore

????Why ddev at the start of the command? This let’s us run NPM from within DDEV’s Docker containers. This means you’ll always be using the Node version configured for this project. DDEV has a bunch of shortcuts and aliases for running CLI commands (such as npm, yarn, craft and composer).

Make sure your NPM package is configured for ES Modules #

Our various config files will be using ES Module syntax for imports and exports.

ddev npm pkg set type=module

Install Vite! #

ddev npm install --save-dev vite

Add convenience scripts to package.json #

"scripts": {
  "dev": "vite",
  "build": "vite build"
}

npm run dev runs Vite in dev mode. It watches and builds your files every save. Files are served through Vite’s dev server.

npm run build bundles your JavaScript, CSS and static images for production. Your deploy process will usually call this script.

Configure vite.config.js #

Running Vite for a server rendered CMS requires some extra configuration. These options put production files in the right spot and keeps Vite’s dev server running on a specific port.

import { defineConfig, loadEnv } from 'vite'

// Match ports in .ddev/config.yaml and config/vite.php
const HTTP_PORT = 3000
const HTTPS_PORT = 3001

export default defineConfig(({ command, mode }) => {
  const env = loadEnv(mode, process.cwd(), '')

  return {
    // In dev mode, we serve assets at the root of https://my.ddev.site:3000
    // In production, files live in the /dist directory
    base: command === 'serve' ? '' : '/dist/',
    build: {
      manifest: true,
      // Where your production files end up
      outDir: './web/dist/',
      rollupOptions: {
        input: {
          // The entry point for Vite, we'll create this file soon
          app: 'src/js/app.js',
        },
      },
    },
    server: {
	    // Special address that respond to all network requests
      host: '0.0.0.0',
	    // Use a strict port because we have to hard code this in vite.php
      strictPort: true,
      // This is the port running "inside" the Web container
      // It's the same as continer_port in .ddev/config.yaml
      port: HTTP_PORT,
      // Setting a specific origin ensures that your fonts & images load
      // correctly. Assumes you're accessing the front-end over https
      origin: env.PRIMARY_SITE_URL + ':' + HTTPS_PORT,
    },
  }
})

Add JavaScript and CSS files (Entrypoint) #

Vite needs an entry point to determine what JavaScript, CSS and Front End assets it needs to compile. Remember src/js/app.js that we defined in vite.config.js? Let's make that file now.

/* Make a file in src/js/app.js */

import '../css/app.css'

console.log('Hello Craft CMS')

We’ll also add our CSS as an import in app.js . In plain-old-JavaScript you can’t import CSS files. However, Vite uses this to figure out CSS dependencies for the project.

Once Vite builds everything for production, you end up with a separate CSS file. The Craft Vite plugin includes this automatically with along your JavaScript bundle.

/* Make a file in src/css/app.css */

body {
	background-color: peachpuff;
}

Install the Vite Craft Plugin #

ddev composer require nystudio107/craft-vite
ddev craft plugin/install vite

Vite assets have different URLs in dev mode vs. production. In dev mode, assets are served from Vite’s dev server. It uses the ports that we defined in our DDEV & Vite configs.

When Vite builds for production, filenames are hashed (app.js becomes app-BZi_KJSq.js). These hashes change when the contents of the file changes. Browser can cache these files indefinitely. When an asset changes, a whole new file is served.

To help find these hashed filenames, Vite creates a manifest.json file. The manifest associates the name of your asset src/js/app.js to the hashed file that ends up on your server web/dist/assets/app-BZi_KJSq.js

The Craft Vite Plugin by NYStudio107 takes care of all this routing for you.

{
  "src/js/app.js": {
    "file": "assets/app-BZi_KJSq.js",
    "name": "app",
    "src": "src/js/app.js",
    "isEntry": true,
    "css": ["assets/app-BXePGY5I.css"]
  }
}

Configure the Vite Craft Plugin #

Make a new plugin config file in config/vite.php

<?php

use crafthelpersApp;

// Use the current host for dev server requests. Otherwise fall back to the primary site.
$host = Craft::$app->getRequest()->getIsConsoleRequest()
    ? App::env('PRIMARY_SITE_URL')
    : Craft::$app->getRequest()->getHostInfo();

return [
    'devServerPublic' => "$host:3001", // Matches https_port in .ddev/config.yaml
    'serverPublic' => '/dist/',
    'useDevServer' => App::env('CRAFT_ENVIRONMENT') === 'dev',
    'manifestPath' => '@webroot/dist/.vite/manifest.json',
    // Optional if using React or Preact
    // 'includeReactRefreshShim' => true,
];

Include your Vite bundles in Twig #

The script and asset functions includes the appropriate files depending on in if you’re in dev mode or production. Clear out your templates/index.twig file and add the following snippet to your <head> tag.

{# Load our main CSS file in dev mode to avoid FOUC #}
{% if craft.vite.devServerRunning() %}
    <link rel="stylesheet" href="{{ craft.vite.asset("src/css/app.css") }}">
{% endif %}

{{ craft.vite.script('src/js/app.js', false) }}

Whew! ???? We’re at a point now where we can test our integration. Run ddev restart and then ddev launch . You should see “Hello Craft CMS” in your browser console.


Setup Tailwind #

Now that Vite is processing src/css/app.css, it’s time to install Tailwind and really get cooking.

These steps are based on Tailwind’s official installation guide. But make sure to run all commands from within DDEV.

Install packages #

ddev npm install -D tailwindcss postcss cssnano autoprefixer
# No DDEV shortcut for npx :(
ddev exec npx tailwindcss init -p

Configure template paths in tailwind.config.js #

/** @type {import('tailwindcss').Config} */
export default {
	// Watch Twig templates and any JS or JSX that might use Tailwind classes.
  content: ['./templates/**/*.twig', './src/**/*.{js,jsx,ts,tsx,svg}'],
  theme: {
    extend: {},
  },
  plugins: [],
}

Configure postcss.config.js for production #

export default {
  plugins: {
    tailwindcss: {},
    autoprefixer: {},
    ...(process.env.NODE_ENV === 'production' ? { cssnano: {} } : {})
  }
}

Add Tailwind directives to src/css/app.css #

@tailwind base;
@tailwind components;
@tailwind utilities;

You’ll most likely need to run ddev restart again to get Vite to recognize your new Tailwind config.


❓ Do i need to set up live reload of Twig? Turns out it’s already done for you! Styling a Tailwind project means editing Twig files to change styles. It’s super handy to reload your browser every time you save. Normally you’d reach for vite-plugin-restart to get this functionality. However, Tailwind’s JIT mode automatically notifies Vite when CSS has compiled and the page should reload.

That's a wrap! #

That’s all it takes to configure a minimal DDEV and Vite project! We’ve found that both of these tools are easy to extend as a project get more complo'ex. Adding things like Redis or React are just a plugin install and a few lines of config away.

???? If you'd like to see this setup (and more) in a real-world Craft CMS project, check out our Craft Site Starter on GitHub.

Go forth and Vite + DDEV to your heart’s desire.




ev

Evolving Traditions: 15 Years of Viget Internships

This week we will bid farewell to our fifteenth cohort of summer interns. Ciel Park (UI Developer Intern), Faye Stover (Product Designer Intern), and Paul McKissock (Application Developer Intern) joined our team ten weeks ago and have been hard at work learning and growing, teaching and sharing, and iterating ever since – and so have we. 

Viget’s 15th Summer Internship Cohort: Faye Stover, Paul McKissock, Ciel Park (left to right)

At Viget we are committed to fostering curiosity and drive both for budding engineers and designers but also for our team of full-timers who are eager to learn themselves and flex their mentorship muscles. As we’ve shared over the years, the internship is one of our favorite traditions and while a lot has changed in fifteen years, that commitment remains the same. 

Here’s a quick look at three core aspects of the Viget internship that remain flexible. 

Cohort size and available roles.

We are not married to a specific number of interns. We recruit for and match interns with available mentors who serve as our interns’ dedicated advisors.

Working location. 

This summer our interns primarily worked from our Falls Church, Virginia headquarters. We required interns to work in the office for the first three weeks of the program and the last. During weeks four through nine they were able to work remotely two to three days a week. In the past the internship has been fully in-person and fully remote

Cross-discipline internship project. 

Interns can expect cross-discipline collaboration during their time at Viget but how exactly that takes shape remains flexible. In years past interns spent 8 weeks coming up with, designing and building a working product. This year, with our smaller cohort of interns, we opted for a smaller approach to the group project. The project was pre-defined, scoped by our advisors, and happened over just two short weeks.   

Earlier this summer we hosted an internship alumni panel and invited Hayley McMillon (2022 Summer Cohort), Andrea Brucculeri (2019), Gabriel Kay (2019), and Vigenesh Gopalan (2018) to discuss lessons learned at Viget, life after Viget, underrated skills worth developing, tips for remote collaboration and more. The event was open to all and both current staff and other alums sat in on the moderated panel discussion. It was awesome, and everyone – long-timers and interns alike – left feeling inspired. This is my favorite aspect of the internship, our alumni network, and how our interns graduate to be active contributors.

Summer 2024 Internship Alumni Panel

I’m looking forward to staying in touch with Ciel, Faye, and Paul and I cannot wait to see all the wonderful things they accomplish. 

Does this sound like an experience you want to be a part of? We’ll host our 16th cohort of college students and recent grads next summer. Bookmark our internship page to keep an eye on future opportunities. 



  • News & Culture
  • Internships and Apprenticeships

ev

5 Ways to Make Your Next In-Person All-Hands Event Worthwhile

In recent years, as distributed work has become the norm, all-hands trips have become more commonplace. Even companies that have always done them now see their importance in a new light. They are expensive and demanding for everyone involved, but when they’re done well they can be incredibly impactful. Are you bringing your team together and feeling the stress of getting it right? Designing the time together takes strategic thinking, logistics planning, and the confidence to ask everyone to contribute to the event’s success.

Last week, we came together to connect, celebrate each other, and look forward to a bright future in our quarterly all-hands event we call Third Third Thursday or TTT. It was our first in-person all-hands event since May 2023. At Viget, we actively build our culture together. The responsibility doesn’t fall on just a few individuals' shoulders. Our events are successful because individuals show up, speak up, listen, and honor the limited time we have together in-person. This is evident in the chats over breakfast pastries, the all-in approach to competitions breakout sessions, and the peer talks and discussions throughout our events. This connection and camaraderie doesn’t just happen, we work hard to make it happen. 

Reflecting on last week’s event (and 7 years of other events), I want to share these five key planning tips to help you craft a successful event. 

Leverage your physical space to help achieve your event goals. This fall we had a smaller number of attendees and we wanted to encourage discussion throughout the event so we set up the room in large U shape to foster conversation. We also made the most of our exterior space, which featured a fire escape staircase, by hosting an egg drop competition. 

Over communicate, especially around when team members can expect breaks and when they can expect to be fed. As the event lead, I share my phone number multiple times ahead of and throughout the event. We also make sure to communicate in dedicated channels, including an event Slack channel for all attendees, a behind-the-scenes Slack channel for presenters only, and an event website. We share important key information like bus schedules and flight confirmations via email. In advance of the big day, we shared this slide with our team to both inform and inspire. 

Leave room for unstructured time and connection. Over the years we learned that some of the best discussions and a-ha moments come from chats over a meal or a snack during the “unplanned” parts of the event. Now we plan ahead for these, leaving ample time for unplanned, impromptu a-has. We think about airport Uber rides, charter bus rides, morning runs, evening board games, or late-night drinks and look for ways to grease the wheels of serendipity. This was especially important for us this fall since it had been so long since the last time we all gathered together

Look for ways to celebrate what is unique to your company. One pretty fantastic thing that comes with a quarter century in business is the community we’ve built along the way. We make a point to keep up with previous Viget employees who we proudly call our alumni. We love our alumni and enjoy recognizing their contributions to Viget. One way we do so is with annual picnics, which we host when the most current Viget employees are in town for an event. These picnics are often a great mix of reconnections and networking.

Find ways to surprise and delight. Think big and small. For example, this fall we put colored pencils and butcher block paper out during our meeting time. Our autumnal decor included blue(ish) and orange pumpkins (Viget colors!). We made a subtle callout to an internal project by serving french fries as our afternoon snack. And we surprised our team with Unreal treats for their bus rides home. The treats served as dessert and a means for us to introduce our next in-person event, our spring TTT, aka Viget25. 

Some companies advocate for all-hand retreats to be social and relaxing, but not “productive.” They tout a meeting-free event. At Viget, we see the meeting time as crucial because that is when peers share knowledge, reflect on their recent work, showcase client impact, and highlight new ideas and personal growth. Similarly, our co-founders reflect on Viget’s performance and share thoughts on the upcoming business direction. The meeting sparks genuine inspiration and creates a time for us to remember what brought us to Viget in the first place – to build world class tech in support of our clients. 

On the heels of a successful gathering, it’s time to start planning the next one. For our next event we’ll head to the Allegheny Mountains where we’ll leverage a unique and memorable venue, offer plenty of unstructured time for connection (with each other and nature), loop in alumni where appropriate, plan inspiring meeting content, enjoy many meals and treats together, and of course find ways to surprise and delight. 

Work-related travel isn't for everyone, but if you know someone who appreciates the idea of dedicated time to connect with and celebrate their peers, we’re hiring. And to all the culture champions and event planners out there, good luck with your next all-hands! 




ev

The Apple TV 4K Device is a Deeply Flawed and Frustrating Product… for Me

About 12 years ago, in 2006, I had what at the time felt like the biggest technological change in my life. I switched from a PC to my first MacBook Pro. Switching computer operating systems at the time seemed like a massive chasm to overcome, but I did it and I’m glad I did. My …




ev

An Evening Garden

By University of Illinois, ACES To those who work all day, gardens are a calming refuge when returning home. For most, the primary time to enjoy your efforts is in the evening. A University of Illinois Extension horticulture educator said gardeners … Continue reading




ev

Top Tips for Developing a Creative Flyer

Flyers are a fantastic way to promote your business, especially considering how easily they can be distributed among members of the public. Since you’re likely to be spending your hard-earned cash on this very effective marketing tool, it is essential to take the right steps when designing your flyer, ensuring you display your skill set … Continue reading Top Tips for Developing a Creative Flyer

The post Top Tips for Developing a Creative Flyer appeared first on Design Shard.




ev

Calling custom fields for next/previous posts

Custom fields are definitely very useful and are used on many WordPress installs. Today I’m going to show you how to easily get custom fields values outside the loop.

The post Calling custom fields for next/previous posts appeared first on WPCult.




ev

Use WordPress to print a RSS feed for Eventbrite attendees

Today I was working on the WordCamp.LA site. I was trying to show the “attendee list” on the attendees page with out having to update the page every day. Since I am using EventBrite to promote and sell ticket to the event I can collect info from there list. Evey one who purchases a ticket […]

The post Use WordPress to print a RSS feed for Eventbrite attendees appeared first on WPCult.




ev

8 WordPress Development Mistakes to Avoid in 2022

WordPress is an incredibly versatile and powerful platform. But, like with any tool, it’s simple to make errors while using it because of the variety of possibilities available. Although some faults might harm your website, others can be catastrophic. That’s why it’s so important to be aware of them to be safe. When it comes […]

The post 8 WordPress Development Mistakes to Avoid in 2022 appeared first on WPCult.




ev

‘A World Without Clouds. Think About That a Minute’: New Study Details Possibility of Devastating Climate Feedback Loop

By Jessica Corbett Common Dreams “We face a stark choice [between] radical, disruptive changes to our physical world or radical, disruptive changes to our political and economic systems to avoid those outcomes.” As people across the globe mobilize to demand … Continue reading




ev

Un champ jaune devant la maison colorée

Juste avant l’averse, le paysage est plongé dans une lumière douce et diffuse. Un champ de canola, vibrant de vie, s’étend à perte de vue, contrastant avec le ciel menaçant chargé de nuages sombres. Au centre de cette mer florale, une maison bleue se dresse fièrement, entourée de bâtiments et de structures rustiques, évoquant une...




ev

Scientists Say Expect More 1,000-Year Events Like Louisiana Flood

By Nike Knight Common Dreams Louisiana’s devastating rainfall was the state’s second “1,000-year” flood this year Parts of Louisiana’s disastrous, ongoing flooding has been upgraded by meteorologists to once-in-1,000-years rainfall, with other areas classified as 500-year and 100-year events, nola.com … Continue reading




ev

NASA Celebrates Earth Day with Public Events, Online Activities

By PRNewswire-USNewswire This year, NASA will celebrate Earth Day, April 22, with a variety of live and online activities Thursday and Friday, April 20-21, to engage the public in the agency’s mission to better understand and protect our home planet. … Continue reading




ev

2022: Year in Review

It seems that nearly every time I’ve sat down to write here on the ol’ blog in the last couple of months, something has gotten in the way. I have untouched ideas and unfinished drafts that I hope to get to at some point. But, it has been a busy…




ev

Prevent Birds from Hitting Windows

By Linda Richards If Nature Could Talk We’ve had two birds die from hitting windows over the last two weeks. It used to happen in our last house, which featured big picture windows facing a canyon. But now I think … Continue reading







ev

From Research to Revenue: A Complete Guide to B2B Software GTM

Launching a new B2B software product requires a different approach than traditional go-to-market strategies. The business model you choose should align with varying types of products and market conditions, as it significantly influences overall sales success and the structuring of sales teams. The software space is crowded, and your potential customers are likely already using […]

The post From Research to Revenue: A Complete Guide to B2B Software GTM appeared first on 3.7 Designs.




ev

The Evolution of UK Company Logos

The Evolution of UK Company Logos is an infographic that visually shows the timeline history of different brand logos, created by Cheap Roller Banners. See how some of most well known UK brands have redesigned their logos over the years!

Here we have an infographic that we have designed that shows how the logos have evolved over the years for some of the most well known UK brands. We have chosen to include companies with interesting logo history and ones that have updated their logo several times.

Check out this intriguing design to see the logo evolution for companies including Shell, Tesco, the BBC, Vodafone, Sky, Barclays, Cadbury, Walkers, Birds Eye, McVitie's, Hovis and British Airways.

We hope that you appreciate this UK company logos infographic and please feel free to share it on blogs or social media.

Sometimes an infographic doesn’t have numbers and charts to share. This design is more of a visual timeline, and it’s really important that you can see the evolution of the logos over time.

It’s important to connect and infographic topic with your company’s products and services to get the most benefit from publishing an infographic. They don’t offer logo design services, but they do offer printing services for trade show booths and events.

Found on Cheap Roller Banners




ev

Composition: The Multipurpose WordPress Theme for Every Site

Say hello to Composition, our new multipurpose WordPress theme that has all the right ingredients for building any kind of website. What is a Multipurpose WordPress Theme? Simply put, a multipurpose WordPress theme is designed with maximum flexibility in mind. This means that you can use Composition for a wide range of websites including ones for Businesses, Portfolios, […]