Oliver Davies' daily list: Bootcamps, Hackathons, Meetups and Drupal with George Gordon

This week on the Beyond Blocks podcast, I spoke with George Gordon - a graduate from the School of Code who was recently employed in their first Junior Developer role - about their move into tech and software development, their experiences at hack days and meetups, and their introduction to Drupal.

I've been a mentor for School of Code for the last few cohorts as well as attending on-site events such as the TechConnect meetup and hack days.

I wasn't George's mentor, but I met him at a hackday earlier this year and at a PHP meetup a few months later, so I was happy to have him on the podcast.

Listen to the episode now.

Oliver Davies' daily list: Find bugs sooner

Whilst speaking with Dave Liddament last week, I remembered a slide I've seen in some of his previous presentations, such as Effective Code Review.

On the slide is a graph that shows the amount of time needed to fix a bug at different stages of the development lifecycle.

Fixing a bug is the quickest and simplest when writing code.

It's harder when being code reviewed or QA or client tested, more so when it's being released, and the most difficult and expensive once it's in the maintenance phase.

Once it's live in the production environment, there's additional cleanup work to do which adds to the time and cost, and potentially damages your reputation.

The sooner you can find a bug, the better.

This is where tools such as automated testing, static analysis and CI pipelines shine and make it easier for you to find and fix potential bugs sooner.

Oliver Davies' daily list: Avoiding primitive obsession

Something interesting that Dave Liddament and I discussed was the use of value objects in application code.

Instead of using a primitive type, such as string, you can create a new value object for a specific type of string, such as an EmailAddress or, in my side project, a LicenceKey.

Both are strings, but using value objects of specific types can make the code more readable and its intent clearer.

A value object can contain additional logic, such as validation to execute an ensure the value object is valid, such as making sure a string is not empty, is a specific length or only contains valid characters.

This an approach that I'm going to use more going forward.

I also found a lighting talk by Dave at a PHPSW meetup where he explains this further and, of course, you can listen to the podcast episode after it's been released.

Darren Oh: The Drupal Forge business model

The Drupal Forge business model

Drupal Forge is a non-profit project of the Drupal community. Our mission is to support vendors that devote a portion of their revenue to sustaining the software and infrastructure Drupal needs to be a great product. Our product launch buttons are part of a business module to sustain contribution. This is what makes them different from launch buttons that hosting vendors offer on their own.

Darren Oh Tue, 09/10/2024 - 15:13

Tags

1xINTERNET blog: Transforming digital strategy at scale: a case study of Schwabe Group's journey with Drupal

Explore the digital transformation of one of Europe’s oldest pharmaceutical companies together with Baddy Breidert, CEO of 1xINTERNET, and Alexander Reisenauer, Director of Global Digital Marketing at Schwabe Group. Discover how strategic decisions led to Drupal becoming a key component of Schwabe's digital ecosystem!

joshics.in: Can Contact Forms Be Replaced by AI Chatbots on Drupal Websites?

Can Contact Forms Be Replaced by AI Chatbots on Drupal Websites? bhavinhjoshi Tue, 09/10/2024 - 17:52

Contact forms have been a staple on websites for years.

But, are they becoming outdated?

Say hello to AI chatbots.

Here’s why an AI chatbot might just be the better choice.

Real-time Engagement 

  • Contact forms often mean waiting. Users type out their message, hit send, and then wait for a response. With AI chatbots, the response is instant, providing immediate support and answers.
  • Example: A user needs information about your services. Instead of waiting hours (or days) for an email reply, the chatbot instantly provides the details they need.

Enhanced User Experience 

  • Chatbots can guide users through their queries, step-by-step. This ensures visitors aren't left guessing, navigating through multiple pages to find answers.
  • Example: Someone asks about your pricing. The chatbot not only shares the info but can also offer links to relevant pages, FAQs, and even schedule a meeting with a sales rep.

24/7 Availability 

  • Unlike human staff, chatbots never sleep. They're available around the clock, ensuring your site visitors always get the support they need, no matter the time zone.
  • Example: A potential client from another continent visits your site at 3 AM. The chatbot assists them in real-time rather than making them wait until your business hours.

Personalisation 

  • Modern AI chatbots can personalise interactions based on user data. This means more relevant responses and recommendations tailored to each visitor.
  • Example: The chatbot recognises a returning user and picks up the conversation where it left off, making the interaction feel continuous and personal.

But is it all sunshine and rainbows? Not quite.

There are challenges.

Some users may prefer human touch over automation. And, implementing a sophisticated AI chatbot can be resource-intensive.

So, should you replace your contact form with a chatbot?

Maybe not completely. A hybrid approach might work best. Let the chatbot handle routine inquiries and simple tasks, while the contact form can serve for more detailed and specific requests.

What do you think? Can AI chatbots replace traditional contact forms on Drupal websites?

Drupal Drupal 10 AI Drupal Planet

Add new comment