Perficient Blogs https://blogs.perficient.com/ Expert Digital Insights Wed, 15 Jan 2025 07:56:08 +0000 en-US hourly 1 https://blogs.perficient.com/files/favicon-194x194-1-150x150.png Perficient Blogs https://blogs.perficient.com/ 32 32 30508587 Key Insights from the Front-End Meetup by the Front-End Meetup Group https://blogs.perficient.com/2025/01/15/front-end-meetup-2024-shaping-the-future-of-web-development/ https://blogs.perficient.com/2025/01/15/front-end-meetup-2024-shaping-the-future-of-web-development/#respond Wed, 15 Jan 2025 07:27:15 +0000 https://blogs.perficient.com/?p=373119

Let me take you through the event that perfectly wrapped up 2024! Perficient’s Front-End Team concluded the year with a memorable meetup filled with inspiring sessions and networking, setting the stage for an exciting 2025. We’re already excited about the next one!

Event Overview

The Front-End Meetup, hosted by the Front-end Meetup Group and sponsored by Perficient, began at 10:00 AM with great energy as developers, designers, and tech enthusiasts gathered. Snehal Gundewar, senior project manager and front-end practice lead, welcomed everyone and invited them to share their journeys. She introduced Prashant Nandanwar, director of Perficient Nagpur, who shared insights on front-end trends and tools and highlighted that this meetup marks the beginning of an ongoing knowledge-sharing series.

Snehal then handed over the stage to our host for the event, Rasika Senad, the lead front-end developer at Perficient. Rasika introduced the impressive lineup of speakers, and the sessions began with great energy!

The day proceeded smoothly, starting with two engaging sessions and a much-needed coffee break (because who doesn’t need caffeine to fuel the interactive quiz?) After recharging over a networking-packed lunch, we drove into two more insightful sessions. A subsequent coffee break was provided, recognizing the challenge of maintaining focus post-lunch. Our attendees demonstrated exceptional engagement through insightful questions and discussions. Each session concluded with a Q&A segment to sustain energy levels, with Rasika adding a lighthearted touch. She posed two engaging questions related to the session topics, and the winner was awarded a chocolate prize— a great way to wrap up the sessions with a little friendly competition!

Event Highlights

  • Session 1: Boosting Collaboration – Pair Programming with GitHub Copilot by Asif Khan
  • Session 2: Building the Big Picture: A Developer’s Journey to Front-end Architecture by Ram Ghonmode
  • Coffee Break & Myth or Fact Quiz: An exciting quiz on programming languages and frameworks, testing your knowledge
  • Session 3: Dockerizing for Front-End – React Application by Rajiv Tandon
  • Session 4: Streamlining Development with Monorepo Architecture: Benefits, Challenges, and Best Practices by Vikas Wankhede
  • Networking Lunch: A dynamic exchange of ideas, trends, and insights into a delicious lunch
  • Second Coffee Break & Trivia Quiz: A fun-filled multiple-choice quiz focused on front-end technologies
  • Session 5: Micro Front-End and Server-side Rendering by Sagar Rokade
  • Session 6: Explore Machine Learning in the Browser with ml5.js by Mohammad Waseem

Before closing the event, Snehal thanked Anurag Shivhare, General Manager of Perficient Nagpur, for his support and feedback throughout the organization process. He also appreciated the team’s efforts. Rasika thanked the organizing team on stage and Snehal, Prashant, and Anurag for their continued support in making the event a success.

The event wrapped up with the final sessions, leaving everyone energized, inspired, and ready to take on the future of web development. It was a day packed with learning, networking, and loads of fun. Can’t wait for the next one!

Click to view slideshow.

Shaping the Future of Web Development

Takeaways from the Perficient Front-End Meetup:

I had the opportunity to attend the Front-End Meetup and let me tell you, it was nothing short of inspiring! Developers, designers, and tech enthusiasts gathered for a day filled with groundbreaking insights, hands-on demos, and networking. The event offered a deep dive into the latest trends and tools shaping the future of web development. Whether you’re a seasoned pro or a curious beginner, this meetup had something for everyone. Here’s a sneak peek at the fantastic sessions that sparked great conversations!

Welcoming Note: Setting the Stage for an Inspiring Day

Our event organizers started things with a warm welcome and an outline of the day’s agenda. The focus was on fostering collaboration, innovation, and knowledge-sharing within the Perficient community and beyond. The energy in the room was infectious, setting the perfect tone for a day of learning and growth.

Meet Our Speakers

 

Speaker Image

Session 1: Boosting Collaboration: Pair Programming with GitHub Copilot by Asif Khan

Asif is a senior technical consultant at Perficient with over a decade of IT experience, specializing in front-end development and creating cutting-edge web applications for exceptional user experiences.

Achievements:

  • Received multiple quarterly appreciations for exceptional performance.

Asif’s session on GitHub Copilot covered its integration with VS Code, key features, and practical use cases. He demonstrated how the AI tool assists developers by suggesting code snippets and improving productivity. He emphasized Copilot’s role as an assistant, not a replacement, and shared best practices for practical use. Additionally, he demonstrated how developers can write unit test cases more efficiently with Copilot, using its intelligent suggestions to ensure robust and reliable code.

Session 2: Building the Big Picture: A Developer’s Journey to Front-end Architecture by Ram Ghonmode

Ram is the Director of Azlogics Private Limited in Nagpur, Maharashtra. With 10+ years in tech, he focuses on API solutions for eKYC and digital document processing, driving innovation and user experience.

Ram explored how to begin building front-end architecture, starting with manifesting ideas and visualizing the project’s journey from zero to one. He highlighted essential resources and provided a roadmap to successful architecture, concluding with a practical case study demonstrating the entire process.

Myth or Fact Quiz

A Myth or Fact quiz focused on programming languages like React, JavaScript, CSS, Angular, and more.

The quiz was a fun highlight between sessions! Each question was based on front-end technology, including questions around HTML, CSS, JavaScript, and various frameworks of JavaScript, and the top 3 participants were rewarded with gifts. They added a twist rather than the traditional hand-raising method; they introduced a more interactive and engaging format. Here’s how it worked:

  • Each question in the quiz had a timer, with the first quiz lasting 30 seconds and the second 1 minute.
  • A QR code was displayed on the screen, and attendees scanned it to participate.
  • Volunteers assisted anyone with logging into the quiz.
  • Once everyone was logged in, participants saw their names on the screen, and the quiz began.
  • Real-time updates showed the leaderboard, adding to the excitement!

Quiz 1 Winners

  • 1st – Avanti Gawali
  • 2nd – Vinod Kumar Rahangdale
  • 3rd – Vinay Patle

Quiz 1 Winner

Congratulations to our winners! You all nailed the questions and earned your well-deserved coffee mugs. It was fun testing everyone’s knowledge and keeping the energy high. I can’t wait for the next quiz!

Session 3: Dockerizing for Front-End – React Application by Rajiv Tandon

Rajiv is a lead technical consultant at Perficient with 10+ Years of experience in front-end technologies, specializing in Insight and Magento 2. He is a Certified Scrum Master and Adobe Commerce JavaScript developer.

Achievements:

  • Recognized as Star Performer of the Year twice at Perficient.
  • Received multiple quarterly appreciations for exceptional performance.
  • Certified Scrum Master by Scrum Alliance, with Adobe Commerce JS and Front-End Development (FED) certifications.

Rajiv’s session focused on Docker, explaining how it allows developers to package, deploy, and run applications in isolated containers, ensuring consistency across different environments. He also discussed key Docker terminology, such as images, containers, and volumes, and provided insights into Docker’s architecture, highlighting how its components work together to streamline application management and deployment.

Networking Lunch: Fueling Ideas and Connections

The lunch break wasn’t just about food; it was a burst of creativity and connection. Developers from all walks of life shared stories, ideas, and the latest tech trends, making it feel like a mini think tank. The relaxed vibe made networking effortless, leaving everyone feeling inspired and more connected than ever.

Click to view slideshow.

Session 4: Streamlining Development with Monorepo Architecture: Benefits, Challenges, and Best Practices by Vikas Wankhede

Vikas has been a lead technical consultant at Perficient for over 4.5 years. He has 12+ years of industry experience and expertise in full-stack and front-end development platforms.

Achievements:

  • Received multiple quarterly appreciations for exceptional performance.

After lunch, the spotlight shifted to Vikas, who covered monorepo architecture, discussing its benefits, like simplified code sharing and improved collaboration, and challenges, like scalability and complex CI/CD setups. He introduced Nx, a tool for managing monorepos, demonstrated its use with a React app example, and shared best practices for modularization, efficient CI/CD, and maintaining code consistency.

Session 5: Micro Front-End and Server-side Rendering by Sagar Rokade

Sagar is a senior software developer at HCL Technologies with 8 years of experience in full-stack development and data analytics, specializing in JavaScript and Python for scalable applications in healthcare and ecommerce.

Achievements:

  • Best Coder Award – 2019 (Smart Data Enterprises) and 2022 (HCLTech).
  • Best Trainer in Data Analytics – Arc Technologies.

In his session on Micro Front-End and Server-Side Rendering, Sagar discussed the benefits and implementation of SSR, comparing it with Client-Side Rendering (CSR). He outlined SSR’s journey across various technologies like PHP, Laravel, Next.js, and Redis, focusing on performance and SEO improvements. He also delved into Micro Front-end, explaining its advantages in building scalable, modular applications and providing insights into its integration, especially in Next.js.

Trivia Quiz

The excitement didn’t stop there! After the sessions, we had Quiz 2 to keep the momentum going. This round was a multiple-choice quiz focused on front-end technologies, testing participants’ knowledge of HTML, CSS, JavaScript, and various JavaScript frameworks. It was an engaging and interactive way to wrap up the event, with everyone eager to showcase what they had learned!

Quiz 2 Results:

  • 1st – Anushka Baral
  • 2nd – Kunika Khandal
  • 3rd – Sahil Dhoble

Quiz 2 Winner

A big congratulations to our winners! You all nailed the questions and earned your well-deserved coffee mugs. It was a fantastic way to challenge everyone’s knowledge and keep the energy high and fun!

Session 6: Explore Machine Learning in the Browser with ml5.js by Mohammad Waseem

Mohammad Waseem, a seasoned IT professional with over 8 years of experience, is a senior technical consultant at Perficient. He specializes in web development and is passionate about delivering impactful and innovative solutions.

Achievements:

  • Received multiple quarterly appreciations for exceptional performance.

In the final session, Mohammad Waseem introduced ml5.js, a JavaScript library that simplifies machine learning for developers and creators. He covered its purpose, ease of use, and how to get started with the library. Key features include pre-trained models, real-time interaction, and a user-friendly API. He also demonstrated its real-world applications and showcased a live image recognition demo using a webcam.

Thank You to Our Speakers for Their Game-Changing Insights!

Click to view slideshow.

A heartfelt thank you to all our incredible speakers! Your expertise and engaging presentations were the driving force behind this event’s success. You made every session not just informative but truly inspiring. We deeply appreciate the time, passion, and energy you brought to the table, making this meetup an unforgettable experience for all!

A Day Packed with Innovation, Inspiration, and Excitement

What a day! The Front-End Meetup, organized by the Front-End Meetup Group and sponsored by Perficient, was a valid showcase of the future of web development. From exploring Micro Front-End architecture to hands-on sessions with cutting-edge tools like GitHub Copilot and ml5.js, we unlocked new ways of thinking, building, and collaborating. It was a day that reinforced the power of staying curious, connected, and forward-thinking in an ever-evolving industry.

At Perficient, we pride ourselves on being different. Our commitment to innovation and knowledge-sharing sets us apart as a company that doesn’t just react to trends but actively drives them. We continuously evolve with the latest trends and technologies and won’t stop doing that. We create environments where employees and tech enthusiasts can thrive, explore new ideas, and connect with one another in meaningful ways. Perficient isn’t just about delivering top-notch solutions; it’s about building an ecosystem where individuals and the company grow, adapt, and innovate.

The discussions, networking, and shared excitement for what’s to come in front-end development energized and inspired everyone.

Can’t wait for our next meetup! Until then, stay tuned for more updates and keep pushing the boundaries of what’s possible. The future of web development is bright, and we’re just getting started together!

]]>
https://blogs.perficient.com/2025/01/15/front-end-meetup-2024-shaping-the-future-of-web-development/feed/ 0 373119
Mastering Database.SaveResult in Batch Class: A Beginner-Friendly Guide https://blogs.perficient.com/2025/01/15/mastering-database-saveresult-in-batch-class-a-beginner-friendly-guide/ https://blogs.perficient.com/2025/01/15/mastering-database-saveresult-in-batch-class-a-beginner-friendly-guide/#respond Wed, 15 Jan 2025 07:17:10 +0000 https://blogs.perficient.com/?p=375475

Imagine you’re a skilled craftsman working in a massive warehouse. Every day, your task is to process thousands of unique items and ensure that each one is properly logged and stored. But let’s face it — mistakes happen. Sometimes an item gets mislabeled or damaged, and you need to know which ones to fix, and which ones made it safely through. In Salesforce, when working with a batch class that processes thousands or even millions of records, Database.SaveResult acts as your trusty supervisor, keeping track of which records succeeded, and which ones failed.

Let’s dive into the world of Database.SaveResult in batch classes with an easy-to-follow narrative that will make this topic clear and interesting, even for beginners.

Setting the Scene: What Is Database.SaveResult?

Before jumping into batch classes, let’s first understand what Database.SaveResult is. Whenever you perform DML (Data Manipulation Language) operations like insert, update, or delete, Salesforce gives you feedback. This feedback tells you whether the operation was successful or if something went wrong. In the case of partial successes (when some records succeed while others fail), this feedback comes in the form of a Database.SaveResult object.

Think of it as a results sheet from an exam. For every record, it tells you:

  • Whether it passed or failed.
  • If it failed, what the error was.

Now, let’s see how this applies to batch classes.

Batch Class Basics

A batch class is like a super-efficient worker in Salesforce. When you have a huge number of records to process (thousands or even millions), a batch class breaks the job into smaller, manageable chunks called batches. Each batch is processed separately, ensuring the system doesn’t get overwhelmed.

Here’s a simple example to paint the picture:

Let’s say your company sells products, and you want to update the stock levels of 100,000 items in your inventory. Instead of trying to update them all at once (and risking errors or timeouts), you use a batch class to process them in batches of, say, 200 records at a time.

The Role of Database.SaveResult in Batch Classes

In a batch class, you often perform DML operations inside the execute method. But what happens if some records fail to save? That’s where Database.SaveResult comes in. It acts like a detailed logbook, showing you exactly which records succeeded and why any failures occurred.

Mastering Database.saveresult In Batch Class A Beginner Friendly Guide Visual Selection

Here’s how it works step by step:

  1. Perform a DML Operation Use methods like Database.insert(), Database.update(), or Database.delete(). These methods allow you to process records in bulk and capture the result using Database.SaveResult.
  2. Capture the Results The result of the DML operation is stored in a list of Database.SaveResult objects.
  3. Handle Successes and Failures Loop through the results to identify which records were successful and handle errors for the failed ones.

Example: A Simple Batch Class

Here’s an example to demonstrate how to use Database.SaveResult in a batch class:

public class UpdateAccountBatch implements Database.Batchable<SObject>, Database.Stateful {
    private List<Id> errorIds = new List<Id>();

    public Database.QueryLocator start(Database.BatchableContext bc) {
        // Query for accounts to update
        return Database.getQueryLocator('SELECT Id, AnnualRevenue FROM Account');
    }

    public void execute(Database.BatchableContext bc, List<Account> scope) {
        try {
            // Update accounts with new annual revenue
            for (Account acc : scope) {
                acc.AnnualRevenue = acc.AnnualRevenue != null ? acc.AnnualRevenue * 1.1 : 100000;
            }

            // Perform DML and capture results
            Database.SaveResult[] results = Database.update(scope, false);

            // Process results
            for (Integer i = 0; i < results.size(); i++) {
                if (!results[i].isSuccess()) {
                    errorIds.add(scope[i].Id); // Store failed record Ids
                    for (Database.Error err : results[i].getErrors()) {
                        System.debug('Failed to update Account Id: ' + scope[i].Id + ' Error: ' + err.getMessage());
                    }
                } else {
                    System.debug('Successfully updated Account Id: ' + scope[i].Id);
                }
            }
        } catch (Exception e) {
            System.debug('Unexpected error occurred: ' + e.getMessage());
        }
    }

    public void finish(Database.BatchableContext bc) {
        if (!errorIds.isEmpty()) {
            String subject = 'Batch Job Completed with Errors';
            String body = 'The batch job encountered errors while processing the following Account IDs:\n' + String.join(errorIds, ', ');

            // Send email notification
            Messaging.SingleEmailMessage email = new Messaging.SingleEmailMessage();
            email.setToAddresses(new String[] { '[email protected]' });
            email.setSubject(subject);
            email.setPlainTextBody(body);
            Messaging.sendEmail(new Messaging.SingleEmailMessage[] { email });
        }

        System.debug('Batch job finished. Error IDs: ' + errorIds);
    }
}

 

Mastering Database.saveresult In Batch Class A Beginner Friendly Guide Visual Selection (1)

  1. Partial Success Handling:

    • The Database.update(scope, false) method allows partial success, meaning the system will try to save as many records as possible even if some fail.
    • The results are stored in a list of Database.SaveResult objects.
  2. Error Logging:

    • For every failed record, the error is retrieved using the getErrors() method of SaveResult. This helps identify and fix issues without reprocessing all records.
  3. Scalability:

    • Dividing the job into smaller batches allows the batch class to process efficiently while staying within governor limits.

Why Use Database.SaveResult?

You might wonder, why not just use standard DML operations like insert or update without worrying about SaveResult? The answer lies in reliability and flexibility:

Mastering Database.saveresult In Batch Class A Beginner Friendly Guide Visual Selection (2)

  • Error Tracking: With Database.SaveResult, you can track exactly which records failed and why.
  • Partial Success: Standard DML operations fail entirely if one record has an issue. Using methods like Database.update() with SaveResult, you can save valid records while logging errors for invalid ones.
  • User Experience: Imagine running a batch job on 10,000 records. If even one record fails and you’re using standard DML, the entire operation rolls back. With SaveResult, you avoid this problem.

Common Questions and Answers

1. What happens if I don’t handle SaveResult errors?
Errors will still occur, but you won’t have visibility into what failed or why. This can make debugging very difficult.

2. Can I retry failed records automatically?
Yes, you can capture the failed records and rerun them in another batch job or after fixing the issues.

3. Is Database.SaveResult limited to batch classes?
No, it can be used in any Apex context where DML operations are performed.

Wrapping Up

Database.SaveResult is a powerful tool for handling bulk DML operations in Salesforce, especially in batch classes. By understanding how to use it effectively, you can ensure reliable, scalable, and user-friendly data processing.

Think of it as your record-by-record performance review sheet. With it, you’ll never be in the dark about what went wrong — or right — in your batch jobs. Start experimenting today and unlock the true potential of your Salesforce data processing!

]]>
https://blogs.perficient.com/2025/01/15/mastering-database-saveresult-in-batch-class-a-beginner-friendly-guide/feed/ 0 375475
Unlock the Future of Integration with IBM ACE https://blogs.perficient.com/2025/01/15/unlock-the-future-of-integration-with-ibm-ace/ https://blogs.perficient.com/2025/01/15/unlock-the-future-of-integration-with-ibm-ace/#respond Wed, 15 Jan 2025 07:13:29 +0000 https://blogs.perficient.com/?p=375312

Have you ever wondered about integration in API development or how to become familiar with the concept?

In this blog, we will discuss one of the integration technologies that is very easy and fun to learn, IBM ACE.

What is IBM ACE?

IBM ACE stands for IBM App Connect Enterprise. It is an integration platform that allows businesses to connect various applications, systems, and services, enabling smooth data flow and communication across diverse environments. IBM ACE supports the creation of Integrations using different patterns, helping organizations streamline their processes and improve overall efficiency in handling data and business workflows.

Through a collection of connectors to various data sources, including packaged applications, files, mobile devices, messaging systems, and databases, IBM ACE delivers the capabilities needed to design integration processes that support different integration requirements.

One advantage of adopting IBM ACE is that it allows current applications to be configured for Web Services without costly legacy application rewrites. By linking any application or service to numerous protocols, including SOAP, HTTP, and JMS, IBM ACE minimizes the point-to-point pressure on development resources.

Modern secure authentication technologies, including LDAP, X-AUTH, O-AUTH, and two-way SSL, are supported through MQ, HTTP, and SOAP nodes, including the ability to perform activities on behalf of masquerading or delegated users.

How to Get Started

Refer to Getting Started with IBM ACE: https://www.ibm.com/docs/en/app-connect/12.0?topic=enterprise-get-started-app-connect

For installation on Windows, follow the document link below. Change the IBM App Connect version to 12.0 and follow along: https://www.ibm.com/docs/en/app-connect/11.0.0?topic=software-installing-windows

IBM ACE Toolkit Interface

Interface

This is what an IBM ACE toolkit interface looks like. You can see all the applications/APIs and libraries you created during application development. In Pallete, you can see all the nodes and connectors needed for application development.

Learn more about nodes and connectors: https://www.ibm.com/docs/en/app-connect/12.0?topic=development-built-in-nodes

IBM ACE provides flexibility in creating an Integration Servers and Integration Node where you can deploy and test your developed code and application, which you can do with the help of mqsi commands.

How to Create a New Application

  • To create a new application, click on File -> New -> Application.

Picture3

  • Give the Application a name and click finish.

Picture4

 

  • To add a message flow, click on New under Application, then Message Flow.

Picture5

  • Give the message flow a name and click finish.

Picture6

  • Once your flow is created, double-click on its name. The message flow will open, and you can implement the process.
  • Drag the required node and connectors to the canvas for your development.

Picture7

How to Create an Integration Node and Integration Server

  • Open your command window for your current installation.

Picture8

  • To create an Integration server, run the following command in the command shell and specify the parameter for the integration server you want to create: mqsicreateexecutiongroup IBNODE -e IServer_2
  • To create an Integration node, run the following command in the command shell and specify the parameter for the integration node you want to create.
    • For example, If you want to create an Integration node with queue manager ACEMQ, use the following command: mqsicreatebroker MYNODE -i wbrkuid -a wbrkpw -q ACEMQ

 How to Deploy the Application

  • Right-click on the application, then click on Deploy.

Picture9

  • Then click on the Integration node and Finish.

Picture10

Advantages of IBM ACE

  • ACE offers powerful integration possibilities. Allowing for smooth communication between different applications, systems, and data sources.
  • It supports a variety of message patterns and data formats, allowing it to handle a wide range of integration scenarios.
  • It meets industry standards, ensuring compatibility and interoperability with many technologies and protocols.
  • ACE has complete administration and monitoring features, allowing administrators to track integration processes’ performance and health.
  • The platform encourages the production of reusable integration components, which decreases development time and effort for comparable integration tasks.
  • ACE offers comprehensive security measures that secure data during transmission and storage while adhering to enterprise-level security standards.
  • ACE offers a user-friendly development environment and tools to design, test, and deploy integration solutions effectively.

Conclusion

In this introductory blog, we have explored IBM ACE and how to create a basic application to learn about this integration technology.

Here at Perficient, we develop complex, scalable, robust, and cost-effective solutions using IBM ACE. This empowers our clients to improve efficiency and reduce manual work, ensuring seamless communication and data flow across their organization.

Contact us today to explore more options for elevating your business.

]]>
https://blogs.perficient.com/2025/01/15/unlock-the-future-of-integration-with-ibm-ace/feed/ 0 375312
Experience Cloud Key Features https://blogs.perficient.com/2025/01/15/experience-cloud-key-features/ https://blogs.perficient.com/2025/01/15/experience-cloud-key-features/#respond Wed, 15 Jan 2025 06:40:36 +0000 https://blogs.perficient.com/?p=375147

What is Salesforce Experience Cloud?

Experience Cloud (previously called Salesforce Community Cloud) is a tool that helps businesses create websites and apps where different people like customers, partners, and employees.

It allows companies to create branded communities, portals, websites, and application, all while leveraging Salesforce’s powerful CPM capabilities.

Key Features and Benefits of Experience Cloud

1. Personalization is Important

Experience Cloud enables businesses to create highly personalized experiences for users. This is achieved by displaying different content based on users’ preferences, behaviors, or data.

  • Personalized Content: Tailor content for different users depending on their interests or previous actions. This helps deliver more relevant experiences.
  • Dynamic Pages: Adjust what is shown on a webpage based on the user’s actions or information, creating a more responsive and engaging experience.

2. Built with Salesforce Tools

Another major benefit of Experience Cloud is its seamless integration with other Salesforce products, such as Sales Cloud and Service Cloud. This integration helps businesses streamline their processes and deliver better overall customer experiences.

  • CRM Integration: By leveraging customer data from Salesforce, businesses can offer more personalized interactions across all touchpoints.
  • Automation: Automate key tasks such as lead generation and customer support management to save time and improve efficiency.

3. Templates and Customization

Experience Cloud offers both pre-built templates and customization options. This makes it easier for businesses to launch portals or customer service sites quickly while also allowing room for tailoring the platform to their specific needs.

  • Pre-built Templates: Access ready-to-use designs for different purposes, such as partner portals or customer service hubs.
  • Customization: Modify themes, layouts, and branding to align with your business’s unique identity.

4. Collaboration Tools

Experience Cloud fosters teamwork and interaction. It provides a variety of tools for users to ask questions, share content, and collaborate with one another, enhancing the overall experience.

  • Discussion Forums: Enable users to communicate, ask questions, and offer assistance to each other.
  • Chatter: A built-in social tool that helps team members collaborate effectively within the platform.
  • Knowledge Base: Share articles, guides, and FAQs to support community members and encourage self-service.

5. Security and Access Control

Ensuring that the right people have access to the right information is critical. With Experience Cloud, businesses can set different access levels for various users.

  • User Roles and Permissions: Control who can view or modify information based on their role.
  • Single Sign-On (SSO): Allow users to log in easily using their existing authentication systems for a smoother experience.

6. Mobile Accessibility

In today’s fast-paced world, mobile access is key. Experience Cloud is designed to work seamlessly across mobile devices, so users can access their data from anywhere.

  • Responsive Design: Automatically adjust content and layout to fit various mobile devices for an optimal viewing experience.
  • Mobile Apps: Use specialized apps, such as the Salesforce mobile app, for on-the-go access.

7. Community Management Tools

Managing online communities is made simple with Experience Cloud’s robust set of community management features. These tools allow you to monitor user activity, moderate content, and measure engagement.

  • Moderation: Keep discussions positive by controlling posts and interactions within the community.
  • Reports and Dashboards: Track community growth and activity through detailed analytics to understand how your platform is performing.

8. Integration with Other Systems

Experience Cloud excels at connecting with external tools and systems, allowing businesses to leverage data from a variety of sources.

  • External Data Integration: Bring in data from other platforms to improve user experience and enhance functionality.
  • APIs: Connect easily to third-party systems using Salesforce’s robust API framework.

9. Analytics and Insights

With powerful analytics tools, Experience Cloud helps businesses track user behavior and gain insights into how well digital experiences are performing.

  • Custom Reports: Create tailored reports to track key metrics, such as community activity and content engagement.
  • Einstein Analytics: Use artificial intelligence to gain deeper insights, make data-driven decisions, and continuously improve the user experience.

10. Custom Components and Lightning Web Components

For developers, Experience Cloud offers the flexibility to create custom features and components that enhance the community experience.

  • Custom Pages and Features: Add unique functionality to your site using custom code.
  • AppExchange: Discover ready-made components and applications on Salesforce’s AppExchange to enhance your community’s capabilities.

11. Scalability

Experience Cloud is designed to grow with your business. Whether you’re a small startup or a large enterprise, the platform offers the flexibility and power needed to support your needs.

  • Enterprise Support: Scale effortlessly with tools that can handle large volumes of users without compromising performance.
  • Custom Workflows: Automate and scale tasks to keep pace with increasing demands as your business grows.

 

Alos, visit the articles below:

Marketing Cloud: Introduction to Journey Builder

Salesforce Documentation : Experience Cloud

]]>
https://blogs.perficient.com/2025/01/15/experience-cloud-key-features/feed/ 0 375147
Kristen Quick Explains the Impact of Salesforce Life Sciences Cloud https://blogs.perficient.com/2025/01/14/kristen-quick-explains-the-impact-of-salesforce-life-sciences-cloud/ https://blogs.perficient.com/2025/01/14/kristen-quick-explains-the-impact-of-salesforce-life-sciences-cloud/#respond Tue, 14 Jan 2025 21:06:32 +0000 https://blogs.perficient.com/?p=375586

Kristen Quick, Director at Perficient, shared her insights on the transformative potential of Salesforce Life Sciences Cloud for pharmaceutical and med tech organizations, highlighting its ability to drive innovation and improve outcomes.  

As the healthcare landscape continues to evolve, innovative solutions like Life Sciences Cloud are becoming essential for driving efficiency, improving patient care, and accelerating time to market: 

Introduction to Kristen Quick 

Kristen Quick is a director in Perficient’s Salesforce practice, focusing on the healthcare portfolio. With a background in marketing at a rural community hospital, Kristen has a deep understanding of the patient experience and the business of providing great care. Her passion lies in orchestrating seamless, personalized, and memorable experiences for patients, caregivers, and providers through advanced technology. 

The Game-Changer: Salesforce Life Sciences Cloud 

Kristen describes Salesforce Life Sciences Cloud as a “healthy disruption” in the industry. For the past seven years, a dominant market solution has led the way for Life Sciences engagement, but now Salesforce introduces competition that drives innovation and new ways of working. What sets Life Sciences Cloud apart is its end-to-end solution, covering clinical, medical, commercial, and patient needs. It offers technical capabilities such as data access, native integrations, generative AI, mobile capabilities, and metadata, all designed to meet specific industry use cases out of the box. 

Kristen highlights, “These efficiencies can accelerate speed to market with a new device or treatment or the ability to more quickly get a life-saving device, drug, or therapy to a patient.” 

Addressing Unique Challenges in Digital Transformation 

Life sciences organizations face several challenges in digital transformation, including legacy systems, siloed data, regulatory compliance, and clinical trial modernization. Kristen emphasizes when having Data Cloud included in the platform provides a significant advantage in overcoming these challenges.  

Salesforce’s commitment to trust and security is evident in the extra precautions taken with this cloud, such as an industry-compliant data model and the Einstein Trust layer, which ensures data safety and compliance. 

Future Advancements and Innovations 

The power of Life Sciences Cloud is just beginning. Kristen is particularly excited about the upcoming advancements in the commercial operations suite, which will enhance customer engagement capabilities for healthcare professionals and provide powerful tools for sales reps. These features will contribute to clinical, medical, and commercial ROI by accelerating products to market and getting patients the therapies they need faster. 

Perficient’s Role in Maximizing Value 

Perficient stands out as a unique partner with both breadth and depth of industry experience and Salesforce expertise. Kristen explains that Perficient starts every engagement by understanding the client’s strategy and business outcomes, creating an incremental plan that marries the “why” with the “how.” This approach ensures that clients can fully leverage the capabilities of Life Sciences Cloud to achieve their goals. 

Conclusion 

Salesforce Life Sciences Cloud is poised to revolutionize the pharmaceutical and med tech industries by providing a comprehensive, secure, and innovative platform. With the support of experienced partners like Perficient, organizations can navigate the complexities of digital transformation and unlock new levels of efficiency and patient care. Stay tuned for the full video interview with Kristen Quick to learn more about the exciting possibilities of Life Sciences Cloud. 

If you have any questions or would like to learn more about Agentforce, reach out to our Healthcare team. And stay tuned for the full video interview with Kristen Quick, where we dive deeper into the benefits and applications of Salesforce Life Sciences Cloud.  

]]>
https://blogs.perficient.com/2025/01/14/kristen-quick-explains-the-impact-of-salesforce-life-sciences-cloud/feed/ 0 375586
Four B2B E-Commerce Trends for 2025 https://blogs.perficient.com/2025/01/14/four-b2b-e-commerce-trends-for-2025/ https://blogs.perficient.com/2025/01/14/four-b2b-e-commerce-trends-for-2025/#respond Tue, 14 Jan 2025 20:53:17 +0000 https://blogs.perficient.com/?p=375585

It’s that time of year when everyone comes out with their trends to watch for 2025. While it may seem a bit of a cliche, 2025 has several innovations taking hold that should prove exciting for anyone willing to grab the opportunity.

The way businesses buy and sell is changing faster than ever, and B2B companies are at a tipping point. It’s a segment of business that is often slow to change and adopt new practices. However, more organizations are moving away from traditional processes, embracing online platforms to streamline operations, expand their reach, and deliver better customer experiences. This shift isn’t just a trend—it’s a revolution. Recent research shows that the global B2B e-commerce market is expected to surge from $28.86 trillion in 2025 to $60.49 trillion by 2030, growing at an impressive annual rate of 15.95% (Mordor Intelligence).

These numbers make it clear that businesses that fail to adapt risk being left behind. To stay competitive, it’s critical to understand the key trends shaping the future of B2B e-commerce. In this article, we’ll discuss four trends for B2B in 2025 and how businesses should use them to drive growth.

Trend 1: Hyper-Personalization in B2B Purchasing

Let’s face it—personalization isn’t just a buzzword anymore; it’s a game-changer quickly becoming a requirement, especially in the B2B world. Buyers today don’t just expect personalized experiences—they demand them. Long gone are the days when a one-size-fits-all catalog could satisfy your clients. Modern B2B customers want solutions that feel tailor-made for their business and deliver them seamlessly.

Hyper-personalization takes this concept to the next level. Businesses can offer customized product recommendations, dynamic pricing, and personalized purchasing portals by leveraging AI and data analytics. Imagine being able to present each client with a tailored experience based on their buying history, preferences, and unique business needs. It’s not just about making sales but building trust and long-term relationships.

If you’re not sure where to start, the key is data. Drive deep into your customer data to uncover patterns and preferences. Then, use that information to craft experiences that feel truly individualized. AI-powered platforms make this easier than ever, helping you predict client needs and meet them proactively.

Want to explore this topic in more detail? Check out my previous blog on Micro-Moments in E-Commerce, where I break down the strategies and tools you can use to make personalization a cornerstone of your business.

Trend 2: Omnichannel Excellence for B2B Buyers

Buyers expect more than just a seamless shopping experience—they expect consistency, no matter how or where they engage with your business. Think about your purchasing habits. Whether browsing on your phone, checking inventory on your laptop, or following up with a sales rep in person, you expect everything to align. Your clients are no different. They want to start a transaction on one channel and finish it on another without skipping a beat.

For example, a buyer researching your product catalog online adds items to their cart but pauses to confirm specs with a colleague in the warehouse via a mobile device. Later, they call their account manager to finalize the purchase. If your system isn’t fully integrated, they’ll need to repeat information or deal with errors, which is a frustration no one wants.

Omnichannel excellence means ensuring that every touchpoint—your e-commerce platform, mobile experience, customer portal, or sales team—works flawlessly. This requires more than technology; it’s about aligning your processes and teams to deliver a unified experience.

Here’s the good news: Omnichannel strategies drive serious results when done right. Research shows that companies with strong omnichannel engagement retain 89% of their customers, compared to just 33% for those with weaker strategies. This retention can translate into significant revenue growth in B2B, where relationships are king.

To get started, focus on unifying your systems. Ensure your CRM, e-commerce platform, and inventory management tools speak the same language. And don’t forget your team—sales, support, and marketing must be aligned to provide consistent messaging and service across channels.

Trend 3: Embracing Headless Commerce for B2B Agility

Businesses are turning away from a single implementation platform to headless commerce to keep up with growing demands and shifting buyer expectations. If you’re unfamiliar with the concept, headless commerce is about separating the front end—the part your customers interact with—from the back-end systems that manage inventory, orders, and data. You’ll often hear this referred to as a “best in category” concept. This separation allows for customization and speed that traditional, monolithic platforms can’t match.

Why does this matter for B2B? Your buyers expect tailored experiences that adapt to their needs; headless commerce makes delivering that possible. For example, imagine offering each of your major clients a custom storefront where they can see products, pricing, and order histories unique to their account—all without overhauling your entire back-end system.

The numbers back up the importance of this trend. The global headless commerce market is projected to grow at an impressive CAGR of 22.5%, reaching $13.2 billion by 2035 (Modern Diplomacy). By 2025, 35% of businesses are expected to adopt headless platforms to meet the demand for more personalized, scalable solutions.

For B2B businesses, headless commerce isn’t just about keeping up; it’s about getting ahead. The ability to quickly update your user experience, scale as your business grows, and seamlessly integrate with third-party tools puts you in a position to outpace competitors while delivering exceptional service to your buyers.

Going headless is not without risk and should not be undertaken lightly. The key to a good headless strategy is to accept that with greater flexibility comes an elevated cost of ownership. I’m not just referring to a monetary cost of ownership—though that is part of it—but also to the investment of your team members’ time in managing multiple systems.

Trend 4: The Rise of Social Commerce in B2B

When you think of social commerce, it’s easy to picture consumer brands selling trendy products on Instagram or Facebook. But here’s the thing: B2B companies are catching on and social commerce is quickly becoming a powerful tool for engaging clients, building relationships, and even driving sales. In fact, 75% of B2B buyers now use social media to inform their purchasing decisions. Platforms like LinkedIn, Twitter, and even Facebook aren’t just for networking anymore—they’re where decision-makers research solutions and connect with potential partners. (Demand Sage)

The rise of social commerce in B2B makes perfect sense. Today’s buyers, just like consumers, value authenticity and accessibility. They want to see real-world applications of your products or services, hear success stories from peers, and interact with your brand personally and immediately. Imagine hosting a LinkedIn Live demo of your latest software, where potential clients can ask questions in real time or share customer testimonials on Twitter that spark new inquiries. These interactions don’t just showcase your offerings—they build trust and credibility.

And the momentum behind social commerce is undeniable. Nearly half of all brands, including those in the B2B space, plan to increase their social commerce investments in the coming year. Meanwhile, the global social commerce market is projected to grow from $1.52 trillion in 2025 to an incredible $5.32 trillion by 2030, at a CAGR of 28.53%. (Mordor Intelligence)

If your B2B strategy doesn’t include social commerce, now is the time to rethink your approach. Engaging with clients where they already spend their time online is no longer optional—it’s essential for staying relevant and competitive. As 2025 approaches, leveraging social platforms can help you build meaningful connections, showcase your expertise, and drive growth in a fresh and forward-thinking way. Out of the four trends we’ve discussed so far, I see this one as requiring the lowest lift to get started and the highest amount of pushback in an industry known to be slow to adopt new marketing methods. However, the data supports this as a solid growth opportunity.

Conclusion

2025 is shaping up to be an incredible year for B2B e-commerce. With market share growing and new technologies reshaping how businesses connect with their customers, it’s an exciting time to be part of this space. Trends like hyper-personalization, omnichannel experiences, and headless commerce are more than just buzzwords—they’re the key to staying competitive and thriving in a rapidly evolving digital landscape.

But with so much change on the horizon, the question isn’t just about recognizing these trends—it’s about acting on them. How will your business leverage the opportunities that 2025 brings? Whether creating seamless buying experiences, building trust through social platforms, or reimagining your digital infrastructure, the growth potential is enormous.

At Perficient, we specialize in helping businesses like yours capitalize on the latest B2B e-commerce trends. Our experts can guide you through the complexities of digital transformation and equip you with the tools and strategies to succeed in this dynamic market. Let’s work together to position your business for success in 2025 and beyond.

Ready to take the next step? Reach out to us today and discover how we can help you lead the way in B2B e-commerce.

]]>
https://blogs.perficient.com/2025/01/14/four-b2b-e-commerce-trends-for-2025/feed/ 0 375585
How to Remove Strikethrough Text from PDFs Using Python https://blogs.perficient.com/2025/01/14/how-to-remove-strikethrough-text-from-pdfs-using-python/ https://blogs.perficient.com/2025/01/14/how-to-remove-strikethrough-text-from-pdfs-using-python/#comments Tue, 14 Jan 2025 14:06:33 +0000 https://blogs.perficient.com/?p=375277

In this blog post, I will share my journey of developing a Python-based solution to remove strikethrough text from PDFs. This solution is specifically designed for PDFs where strikethrough is applied as a style rather than an annotation.

The Challenge

Strikethrough text in PDFs can be tricky to handle, mainly when applied as a style. Standard PDF manipulation libraries often fall short in these cases. Determined to find a solution, I leveraged Python to create a practical approach.

The Solution

The solution involves three main steps: converting the PDF to a DOCX file, removing the strikethrough text from the DOCX file, and converting the modified DOCX file back to a PDF.

Dependencies

Before diving into the code, install the necessary Python dependencies. You will need:
• pdf2docx for converting PDF to DOCX
• python-docx for manipulating DOCX files
• docx2pdf for converting DOCX back to PDF

You can install these dependencies using pip:

pip install pdf2docx python-docx docx2pdf

Step-by-Step Guide to Remove Strikethrough Text from PDFs

Step 1: Convert PDF to DOCX

The first step is to convert the PDF file to a DOCX file. This allows us to manipulate the text more easily. We use the pdf2docx library for this conversion. Here is the code for the conversion function:

from pdf2docx import Converter
def convert_pdf_to_word(pdf_file, docx_file):
    """Convert PDF to DOCX format."""
    try:
        cv = Converter(pdf_file)
        cv.convert(docx_file, start=0, end=None)
        cv.close()
        print(f"Converted PDF to DOCX: {pdf_file} -> {docx_file}")
    except Exception as e:
        print(f"Error during PDF to DOCX conversion: {e}")
        sys.exit(1)

In this function, we create an instance of the Converter class, passing the pdf_file as an argument. The convert method of the Converter class is called to perform the conversion, and the close method is called to release any resources the converter uses. If the conversion is successful, a message is printed indicating the conversion. If an error occurs, an exception is caught, and an error message is printed.

Step 2: Remove Strikethrough Text

Once we have the DOCX file, we can remove the strikethrough text. This step involves iterating through the paragraphs and runs in the DOCX file and checking for the strikethrough style. We use the python-docx library for this task. Here is the code for the strikethrough removal function:

from docx import Document
def remove_strikethrough_text(docx_file):
    """Remove all strikethrough text from a DOCX file."""
    try:
        document = Document(docx_file)
        modified = False
        for paragraph in document.paragraphs:
            for run in paragraph.runs:
                if run.font.strike:
                    print(f"Removing strikethrough text: {run.text}")
                    run.text = ''
                    modified = True
        if modified:
            modified_docx_file = docx_file.replace('.docx', '_modified.docx')
            document.save(modified_docx_file)
            print(f"Strikethrough text removed. Saved to: {modified_docx_file}")
            return modified_docx_file
        else:
            print("No strikethrough text found.")
            return docx_file
    except Exception as e:
        print(f"Error during strikethrough text removal: {e}")
        sys.exit(1)

In this function, we create an instance of the Document class, passing the docx_file as an argument. We iterate through each paragraph in the document and then through each run within the section. If the strike attribute of the run’s font is True, we print a message indicating removing the strikethrough text and set the run’s text to an empty string. If strikethrough text was removed, we save the modified document to a new file with _modified appended to the original filename. If no strikethrough text was found, we return the original DOCX file.

Step 3: Convert DOCX Back to PDF

The final step is to convert the modified DOCX file back to a PDF file. This ensures that the strikethrough text is removed in the final PDF. We use the docx2pdf library for this conversion. Here is the code for the conversion function:

from docx2pdf import convert

def convert_docx_to_pdf(docx_file, output_pdf):
    """Convert DOCX back to PDF format."""
    try:
        convert(docx_file, output_pdf)
        print(f"Converted DOCX to PDF: {docx_file} -> {output_pdf}")
    except Exception as e:
        print(f"Error during DOCX to PDF conversion: {e}")
        sys.exit(1)

We call this function the convert function, passing the docx_file and output_pdf as arguments to perform the conversion. If the conversion is successful, a message is printed indicating the conversion. If an error occurs, an exception is caught, and an error message is printed.

Main Execution Block

The following block of code is the main execution section of the script. It starts by checking if the script is being run directly. It then verifies that the correct number of command-line arguments is provided and that the specified PDF file exists. If these conditions are met, the script defines intermediate file paths and performs the three main steps: converting the PDF to a DOCX file, removing strikethrough text from the DOCX file, and converting the modified DOCX back to a PDF. After completing these steps, it prints the location of the modified PDF file and cleans up any intermediate files. If errors occur during execution, they are caught and printed, and the script exits gracefully.

if __name__ == "__main__":
    if len(sys.argv) != 2:
        sys.exit(1)

    pdf_file = sys.argv[1]

    if not os.path.exists(pdf_file):
        print(f"Error: File not found - {pdf_file}")
        sys.exit(1)

    try:
        # Define intermediate file paths
        base_name = os.path.splitext(pdf_file)[0]
        temp_docx_file = f"{base_name}.docx"
        modified_docx_file = f"{base_name}_modified.docx"
        output_pdf_file = f"{base_name}_modified.pdf"

        # Step 1: Convert PDF to DOCX
        convert_pdf_to_word(pdf_file, temp_docx_file)

        # Step 2: Remove strikethrough text
        final_docx_file = remove_strikethrough_text(temp_docx_file)

        # Step 3: Convert modified DOCX back to PDF
        convert_docx_to_pdf(final_docx_file, output_pdf_file)

        print(f"Modified PDF saved to: {output_pdf_file}")

        # Clean up intermediate DOCX files
        if os.path.exists(temp_docx_file):
            os.remove(temp_docx_file)
        if final_docx_file != temp_docx_file and os.path.exists(final_docx_file):
            os.remove(final_docx_file)

    except Exception as e:
        print(f"Error: {e}")
        sys.exit(1)

Complete Script

import sys
import os
from pdf2docx import Converter
from docx import Document
from docx2pdf import convert

def convert_pdf_to_word(pdf_file, docx_file):
    """Convert PDF to DOCX format."""
    try:
        cv = Converter(pdf_file)
        cv.convert(docx_file, start=0, end=None)
        cv.close()
        print(f"Converted PDF to DOCX: {pdf_file} -> {docx_file}")
    except Exception as e:
        print(f"Error during PDF to DOCX conversion: {e}")
        sys.exit(1)

def remove_strikethrough_text(docx_file):
    """Remove all strikethrough text from a DOCX file."""
    try:
        document = Document(docx_file)
        modified = False

        for paragraph in document.paragraphs:
            for run in paragraph.runs:
                if run.font.strike:
                    print(f"Removing strikethrough text: {run.text}")
                    run.text = ''
                    modified = True

        if modified:
            modified_docx_file = docx_file.replace('.docx', '_modified.docx')
            document.save(modified_docx_file)
            print(f"Strikethrough text removed. Saved to: {modified_docx_file}")
            return modified_docx_file
        else:
            print("No strikethrough text found.")
            return docx_file
    except Exception as e:
        print(f"Error during strikethrough text removal: {e}")
        sys.exit(1)

def convert_docx_to_pdf(docx_file, output_pdf):
    """Convert DOCX back to PDF format."""
    try:
        convert(docx_file, output_pdf)
        print(f"Converted DOCX to PDF: {docx_file} -> {output_pdf}")
    except Exception as e:
        print(f"Error during DOCX to PDF conversion: {e}")
        sys.exit(1)

if __name__ == "__main__":
    if len(sys.argv) != 2:
        sys.exit(1)

    pdf_file = sys.argv[1]

    if not os.path.exists(pdf_file):
        print(f"Error: File not found - {pdf_file}")
        sys.exit(1)

    try:
        # Define intermediate file paths
        base_name = os.path.splitext(pdf_file)[0]
        temp_docx_file = f"{base_name}.docx"
        modified_docx_file = f"{base_name}_modified.docx"
        output_pdf_file = f"{base_name}_modified.pdf"

        # Step 1: Convert PDF to DOCX
        convert_pdf_to_word(pdf_file, temp_docx_file)

        # Step 2: Remove strikethrough text
        final_docx_file = remove_strikethrough_text(temp_docx_file)

        # Step 3: Convert modified DOCX back to PDF
        convert_docx_to_pdf(final_docx_file, output_pdf_file)

        print(f"Modified PDF saved to: {output_pdf_file}")

        # Clean up intermediate DOCX files
        if os.path.exists(temp_docx_file):
            os.remove(temp_docx_file)
        if final_docx_file != temp_docx_file and os.path.exists(final_docx_file):
            os.remove(final_docx_file)

    except Exception as e:
        print(f"Error: {e}")
        sys.exit(1)

Run the Script

Execute the script by running the following command, replacing it with the path to your PDF file:

python <script_name>.py <pdf_file_path>


This Python-based solution effectively removes strikethrough text from PDFs by leveraging the strengths of the pdf2docx, python-docx, and docx2pdf libraries. By converting the PDF to DOCX, modifying the DOCX, and converting it back to PDF, we can ensure that the strikethrough text is removed without affecting other content. This approach provides a robust and efficient method for handling strikethrough text in PDFs, making your documents clean and professional.

]]>
https://blogs.perficient.com/2025/01/14/how-to-remove-strikethrough-text-from-pdfs-using-python/feed/ 1 375277
Neha Pasi Leads Global Development for Perficient’s Sitecore Team with Precision and Passion https://blogs.perficient.com/2025/01/13/neha-pasi-leads-global-development-for-perficients-sitecore-team-with-precision-and-passion/ https://blogs.perficient.com/2025/01/13/neha-pasi-leads-global-development-for-perficients-sitecore-team-with-precision-and-passion/#respond Mon, 13 Jan 2025 16:06:13 +0000 https://blogs.perficient.com/?p=375128

Meet Neha Pasi, a lead technical consultant based in Nagpur, India, whose exceptional contributions, agility, precision, and guidance have set an example for her Sitecore development teams. Neha embraces Growth for Everyone and continuously strives to further her knowledge by taking courses, earning certifications, and applying new concepts to improve processes.

She embodies Perficient’s core values by consistently going above and beyond to mentor new colleagues and share her knowledge. In honor of this, Neha received recognition as a Perficient 2024 Excellence Award recipient, one of Perficient’s highest achievements. Continue reading to learn more about Neha’s responsibilities, career advice, and how she is enhancing Perficient’s Sitecore practice while embracing a culture of continuous learning and collaboration.

What is your role? Describe a typical day in the life.

As a Lead Technical Consultant, I work on Sitecore development projects blending hands-on development, technical leadership, team management, mentoring, and collaboration. My typical day starts with a cup of hot black coffee and stand-up meetings with team members to align on progress, plan the day, and address any blockers.

Anurag Shivhare and Neha at Nagpur GDC.

Alongside guiding my team, I actively engage in development. Whether building features based on requirements, creating custom modules, or resolving critical issues, I’m committed to ensuring smooth, scalable implementations. Coding is a significant part of my role, and I oversee the technical aspects through code reviews, troubleshooting, and solution design to maintain high-quality deliverables. I collaborate closely with project team members to ensure seamless coordination. I also work with senior colleagues and experts, constantly learning from them to enhance my skills. Since our projects often involve international teams, I regularly work with people from different cities and countries to meet shared objectives.

Beyond project responsibilities, I actively engage in Sitecore BU-level and office activities, such as conducting interviews, leading knowledge-sharing sessions, and participating in fun activities that foster both personal growth and team spirit.

Whether big or small, how do you make a difference for our clients, colleagues, communities, or teams?

For clients, I ensure the website features we build through Sitecore not only meet requirements but also provide scalable and innovative solutions to enhance the digital presence and business value. I actively identify and address challenges, suggest improvements, and guide my team to deliver high-quality features on time, building trust and long-term partnerships with clients.

For colleagues and my team, I foster a supportive and collaborative work environment. I mentor team members, help them navigate technical challenges, and ensure workloads are well-balanced. I also encourage continuous learning and professional growth, helping them stay updated with the latest technologies and best practices. Additionally, I am actively involved in the Women in Technology Employee Resource Group, organizing sessions on topics related to women’s empowerment and general professional growth.

Within the community, I run the Sitecore User Group Nagpur with three other colleagues where we conduct monthly technical sessions to share knowledge and foster learning around Sitecore.

What are your proudest accomplishments, personally and professionally? Any milestone moments at Perficient?

Neha and Mahima presenting at SUGCON 2024.

In 2017, I started my career with Perficient as an intern after graduating from college. Perficient has played a pivotal role in shaping the professional I am today. All the technology skills I’ve developed have stemmed from the projects I’ve tackled and the talented people I’ve collaborated with. This journey from intern to Lead Technical Consultant has been both rewarding and gratifying, filled with valuable learning experiences every step of the way.

One of my proudest accomplishments has been speaking at two Sitecore User Group Conferences India (SUGCON) in 2023 and 2024 alongside my colleague and mentor. It was a thrilling experience that allowed me to share knowledge with the community, connect with other experts, and represent Perficient in the Indian Sitecore community.

I have also earned three Sitecore certifications: .NET 10 Developer, XM Cloud, and OrderCloud Developer. This strengthened my technical expertise and enabled me to take on more complex challenges. A particularly proud moment was being recognized as a Perficient 2024 Excellence Award winner, a huge honor that acknowledged my hard work and contributions.

 

 

What has your experience at Perficient taught you?

I’ve learned the power of continuous learning. A large part of my job is staying updated on new technologies and trends. I spend time exploring new tools, attending training sessions, and earning certifications.

Neha and colleagues at SUGCON 2024.

One of the most rewarding parts is showing my family and friends the websites or features I’ve worked on. Seeing their excitement and appreciation makes all the effort feel truly worthwhile, and it’s a great way to share the impact of my work with them. The emphasis on professional development, including obtaining certifications and attending training sessions, has reinforced the importance of staying current in a rapidly evolving industry.

Learn More: Perficient Encourages Our Colleagues’ Professional Development

I appreciate the value of collaboration and teamwork. Working alongside talented colleagues has shown me that diverse perspectives lead to innovative and quality solutions. I’ve also realized that there’s nothing you cannot achieve with determination and the right support. This belief has motivated me to set ambitious goals and strive for excellence, knowing that I have the resources and people around me to help turn those goals into reality.

What advice would you give to colleagues who are starting their career with Perficient?

Neha celebrating International Women’s Day!

Perficient is truly one of the best companies to launch your professional journey. You’ll find ample visibility and support, which are crucial for your growth. The recognition you receive for your contributions is motivating, there are various opportunities for learning and advancement, and the culture here is amazing.

Our colleagues would do everything in their capacity to help you navigate challenges and succeed. Take advantage of the resources available to you, seek mentorship, and don’t hesitate to ask questions. Embrace every opportunity to learn and grow — it’s a foundation that will serve you well throughout your career.

Why are you #ProudlyPerficient?

Perficient’s People Promise is why I’m #ProudlyPerficient. We are challenged with new opportunities, supported through obstacles, endorsed and championed for our skills, and all our small and big wins are acknowledged and celebrated. Each of these elements contributes to a positive and fulfilling work environment that motivates me every day.

Perficient’s Women in Technology India Committee

What keeps me at Perficient is everything the company embodies and stands for. It’s the people, culture, support, opportunities, and growth that make me want to continue my journey here. I’m continually amazed by the truly talented colleagues I collaborate with daily. Even though I haven’t met my U.S. colleagues in person, they are exceptionally supportive, amiable, and personable, fostering a strong sense of understanding, respect, and value in our interactions.

With Perficient’s mission statement in mind, how do you shatter boundaries?

I shatter boundaries by continuously challenging myself to grow, both personally and professionally. My journey at Perficient reflects a commitment to taking on new challenges, acquiring new skills, and stepping out of my comfort zone.

I break barriers by balancing both technical and team management responsibilities when leading Sitecore projects. I believe that no goal is unattainable, which keeps me striving to advance while also exploring opportunities to work on-site and gain international experience.

Shattering boundaries isn’t just about individual success — it’s about empowering others, recognizing achievements, and celebrating collective wins. The supportive, inclusive culture of Perficient fuels my growth and allows me to lead by example.

What are you passionate about outside of work?

Meet Neha’s dog, Cooper!

Outside of work, I focus on things that add meaning and balance to my life. Staying fit is important to me, and I’m very particular about maintaining a healthy diet. It’s something I actively work on to feel my best physically and mentally.

Recently, I adopted a dog, which has been an incredibly rewarding experience. Spending time with him has quickly become one of my favorite things to do. Whether it’s taking him for walks or just enjoying his company at home, my dog brings a lot of joy and calm to my everyday routine. Taking care of him has also helped me unwind, while adding a new sense of responsibility and happiness to my life.

SEE MORE PEOPLE OF PERFICIENT

It’s no secret our success is because of our people. No matter the technology or time zone, our colleagues are committed to delivering innovative, end-to-end digital solutions for the world’s biggest brands, and we bring a collaborative spirit to every interaction. We’re always seeking the best and brightest to work with us. Join our team and experience a culture that challenges, champions, and celebrates our people.

Visit our Careers pageto see career opportunities and more!

Go inside Life at Perficient and connect with us on LinkedIn,   YouTube, Twitter,   Facebook,  TikTok, and Instagram.

]]>
https://blogs.perficient.com/2025/01/13/neha-pasi-leads-global-development-for-perficients-sitecore-team-with-precision-and-passion/feed/ 0 375128
Healthcare Messaging Matrix: 4 Ways this Asset can Supercharge your Content Strategy https://blogs.perficient.com/2025/01/13/healthcare-messaging-matrix-4-ways-this-asset-can-supercharge-your-content-strategy/ https://blogs.perficient.com/2025/01/13/healthcare-messaging-matrix-4-ways-this-asset-can-supercharge-your-content-strategy/#respond Mon, 13 Jan 2025 13:55:59 +0000 https://blogs.perficient.com/?p=375198

Healthcare content marketing requires time, effort and strong strategy — three resources that are always in demand within healthcare organizations (HCOs). Creating high-quality content that resonates with your audiences means figuring out what those audiences want and showing why your team is the best choice to help them. A messaging matrix can play a key role in that work.

At first glance, a messaging matrix is a simple-looking table that outlines key areas your healthcare messaging should address with your consumers. But look a little deeper, and you’ll see that this unassuming document has layers upon layers of complex utility for your HCO’s marketing team .

Perficient’s healthcare experts know what it takes to create an effective, successful messaging matrix for your outreach efforts. Let’s go over the components of a strong healthcare messaging matrix together, or feel free to contact us for more information.

1. A messaging matrix is the logical next step after healthcare personas and journeys

Our healthcare personas and journey maps offer a deep dive into what consumers are looking for from HCOs like yours. But all too often, we’ve seen clients take these valuable insights and stick them on the digital shelf, rather than taking the lessons they provide and putting them to use. A messaging matrix can help your team translate your consumer personas and their unique healthcare journeys into clear, discrete content touchpoints.

By identifying scenarios that map to milestones in a persona’s journey with your HCO, a messaging matrix can help you understand:

  • Key moments of influence in the persona’s journey so you’re speaking to your audiences when they’re receptive to your messages
  • What the persona is looking for at that moment in their journey
  • How that coincides with your business priorities
  • What to say to motivate the next level of action in the consumer

Your messaging matrix is one way your team can continue to create long-term, ongoing and demonstrable value from your strategy efforts.

2. A messaging matrix can help align your marketing team members

Good content strategy depends on the consistency of your messaging. You may have a fantastic content creator on your team. But if that creator is out of line with your strategy, or if the rest of your team isn’t aligned with the messaging of your high performers, then you’ll likely have problems with your consumer touchpoints.

Your content likely comes from many sources: your own team, strategic partners like us, other marketing teams within your organization, other vendors, freelancers and so on. But — and this is key — your consumers shouldn’t be able to tell these disparate players apart. Consistent messaging means you speak in one clear, distinct, on-brand voice, no matter who’s conceptualizing the message.

In addition to resources like your voice, tone and style guide and healthcare writing training for your team members, a messaging matrix can help keep your various internal and external teams aligned as they present a consistent, high-quality message at every step, no matter where they may sit or whom they’re talking to.

3. A messaging matrix can jumpstart your content creation process

I’ve written thousands of pieces of content over my career, and I can comfortably say from experience that I still get intimidated sometimes when I’m starting from a blank document on my screen. Even when given a thoughtful creative brief, the idea of reaching healthcare consumers and helping guide them to a conversion and beyond can be a lot to contend with when I don’t have much to go on.

But with a messaging matrix, you can tailor the message to meet the needs of the audience members you’re trying to reach. You can use language that will resonate with them. You can make sure to include key points that they’re searching for. By having key message points detailed, you can help ensure that campaigns carry those messages through for a consistent voice and experience, from the first outreach campaign through long-term nurture campaigns.

Plus, if you find yourself constantly creating content for a key scenario for one or more of your personas, you can update the messaging matrix to account for that scenario. Not only can that make your individual job easier, but it can also help ensure your team members handle the need the same way down the road.

4. A messaging matrix supports messaging throughout the consumer journey

Many of our clients are laser-focused on pulling healthcare consumers down the funnel to conversion — whether that’s finding care, choosing a healthcare plan or purchasing a medical device. That’s natural. Conversion is a key metric and one that’s crucial for measuring the success of marketing efforts.

But conversion isn’t the point at which your content marketing efforts should stop. In fact, it’s only about halfway through the content marketing cycle, because it’s only about halfway through the healthcare decision-making process. The remaining parts of the process consumers use to make and support healthcare decisions require continued check-ins and support at key milestones even after conversion.

A circular graphic showing the five stages of the Transtheoretical Model with an Icon: Precontemplation (with a frowning face), Contemplation (with a person's head with a cog in it), Preparation (with a tapping finger), Action (with a mountain climber) and Maintenance (with a thumbs-up icon).Our healthcare strategy team uses the Transtheoretical Model often to inform our recommendations. As you can imagine, many HCOs focus their efforts on efforts up to the Preparation stage — the point at which the consumer is ready to do something and the organization’s marketing efforts can influence the consumer’s decision.

As we often note, however, a complete content marketing strategy often involves nurture campaigns, targeted content and other marketing materials geared toward supporting the consumer through the Action and Maintenance stages. These often aren’t rigid, and your HCO can lose consumers if they feel like they must navigate them on their own. But your messaging matrix can and should include scenarios that help the consumer feel understood and supported as they continue their journey.

A messaging matrix that considers the healthcare consumer’s entire decision-making cycle can:

  • Build awareness of your organization and its services/products
  • Ensure your messages include the value propositions that are most important to your audiences
  • Build trust over time (whatever time it takes the consumer to be ready to convert)
  • Pull consumers down the funnel toward conversion
  • Build loyalty after conversion
  • Foster an ongoing positive relationship with your consumers

The messaging matrix is real – and it’s essential

Our healthcare and life sciences strategy team members understand how to reach consumers with messages that resonate at every stage. And we know how to craft a messaging matrix that will fuel your team’s content marketing efforts with real results.

Contact us to learn more about the role a healthcare messaging matrix can play in your strategy and outreach.

]]>
https://blogs.perficient.com/2025/01/13/healthcare-messaging-matrix-4-ways-this-asset-can-supercharge-your-content-strategy/feed/ 0 375198
Debugging and Error Handling in VBA for Excel https://blogs.perficient.com/2025/01/11/debugging-error-handling-vba-excel-macros/ https://blogs.perficient.com/2025/01/11/debugging-error-handling-vba-excel-macros/#comments Sat, 11 Jan 2025 06:56:46 +0000 https://blogs.perficient.com/?p=374078

Debugging and Error Handling in VBA

After setting up VBA in Excel, you can start automating tasks and creating your macros. This blog will guide you through what comes next after the setup process—writing, running, and debugging VBA code in Excel.

Debugging and error handling are crucial for writing effective and reliable VBA (Visual Basic for Applications) code. It helps you identify issues and ensure your macros run smoothly. These practices ensure your code runs as intended and gracefully handles unexpected scenarios. In this blog, we’ll explore tools for debugging VBA code effectively and techniques for robust error handling, providing practical examples to make the concepts relatable and actionable.

Tools for Debugging VBA Code Effectively

1. Breakpoints: The First Line of Defense

Breakpoints allow you to pause code execution at specific lines, enabling you to inspect variable values and program flow. To set a breakpoint, click in the margin next to the code line or press F9. When the code execution stops, you can analyze what’s happening.

Higlighted Breakpoint

Breakpoint

Tip: Combine breakpoints with the Step-Into (F8) feature to execute the code line by line.

2. Immediate Window: Real-Time Debugging

The Immediate Window is a versatile tool where you can print variable values and test code snippets without running the entire program. Use Debug. Print to output values or messages to the Immediate Window.

Example:

Immediate Window

Immediate window in VBA Editor

3. Locals Window and Watch Window: Inspect Variables

  • Locals Window: Displays all variables in the current scope and their values.
  • Watch Window: Allows you to monitor specific variables or expressions.

Local Window Watch Window

Local Window Watch Window in VBA editor

4. Error Highlighting and Debugging Features

VBA highlights syntax errors in red and runtime errors with a debug prompt. Clicking “Debug” during runtime errors highlights the problematic line for further inspection.

Example Error: Dividing by zero triggers a runtime error.

Error Highlighting and Debugging Features

The highlighted error line of the code

Writing Robust Code with Error Handling Techniques

1. ‘On Error Resume Next’: Ignore and Proceed

This statement instructs VBA to ignore the error and move to the next line of code. Use it sparingly for non-critical errors.

Example:

Sub IgnoreError()
On Error Resume Next
Dim num As Integer
num = 10 / 0    'Error ignored
MsgBox "Code continues despite the error."
End Sub

You can explore more on error handling in VBA by reviewing the Microsoft VBA API Overview, which provides a comprehensive guide to error handling and other VBA concepts.

Conclusion

Once you’ve set up Excel VBA, you can start writing, debugging, and optimizing your macros. The next steps after setup are crucial for mastering VBA and making your Excel workflows more efficient. Keep practicing, and as you gain more experience, you’ll unlock the full potential of Excel automation.

]]>
https://blogs.perficient.com/2025/01/11/debugging-error-handling-vba-excel-macros/feed/ 1 374078
Create/Deploy Azure Kubernetes Service (AKS) Using Terraform Cloud Workspaces https://blogs.perficient.com/2025/01/10/create-deploy-azure-kubernetes-service-aks-using-terraform-cloud-workspaces/ https://blogs.perficient.com/2025/01/10/create-deploy-azure-kubernetes-service-aks-using-terraform-cloud-workspaces/#respond Fri, 10 Jan 2025 06:56:50 +0000 https://blogs.perficient.com/?p=374955

Objective

Automate the deployment of Azure Kubernetes Service (AKS) using Terraform Cloud Workspaces. This ensures Infrastructure as Code (IaC) is centrally managed, and all changes are traceable.


1. Set Up a Terraform Cloud Workspace Free Account

Step 1: Create a Terraform Cloud Account

  1. Navigate to https://developer.hashicorp.com/sign-up.
  2. Sign up or log in with a valid email ID.

Ss1

Step 2: Create an Organization

  1. After logging in, create an organization (if one doesn’t already exist):
    a. Go to Organizations > Create Organization.
    b. Provide a name for the organization.

              Ss2

Step 3: Create a Workspace

  1. Navigate to Workspaces:
    a. Go to your organization dashboard.
    b. Click on Workspaces > Create a New Workspace.

               Ss3

       2. Select a Workflow: Terraform Cloud offers three workflows:

            a. CLI-Driven Workflow: Ideal for local Terraform runs but stores state in Terraform Cloud.

2. Download and Install Azure CLI and Terraform

Step 1: Install Azure CLI

  1. Visit https://learn.microsoft.com/en-us/cli/azure/install-azure-cli.
  2. Download and install the CLI on your system.

Step 2: Install Terraform

  1. Go to https://releases.hashicorp.com/terraform/.
  2. Download the Terraform version that matches your system configuration.

3. Integration/Login from Local to Terraform Cloud

Step 1: Set Up Terraform Manifest Files

  1. Create a working directory.
  2. Within it, set up the root folder for the main module and child modules with provider configurations.

Step 2: Authenticate with Terraform Cloud

  1. Open the terminal in VS Code and run: “terraform login”
  2. Approve the request by entering yes.

          Ss4

       3. Generate and paste the API token:

            a. Navigate to Account Settings > Tokens > Create API Token.

            b. Copy the generated token (visible only once).

            c. Paste the token into the terminal.

                Ss5

Step 3: Initialize Terraform

  1. Run the terraform init command to download Azure provider plugins.
  2. While initializing, select the appropriate workspace name.
  3. Verify successful initialization with the message:
    “Terraform has been successfully initialized.”

4. Add Variables to Terraform Cloud Workspace

  1. Select your workspace and navigate to the Variables section.
  2. Add the required Azure variables:
    • Client ID
    • Client Secret
    • Subscription ID
    • Tenant ID

           Ss6

5. Develop Terraform Code

Step 1: Resource Group, VNet, and Subnet

Write Terraform scripts for creating:

  1. Resource Group (RG).
  2. Virtual Network (VNet).
  3. Subnet.

Step 2: Azure Kubernetes Service (AKS)

Write Terraform scripts for provisioning AKS.

Step 3: Test and Validate

Ensure the Terraform code is correct by running terraform plan.

6. Deploy Resources to Azure Cloud

Deployment Steps

  1. Run terraform init to initialize plugins and modules. and select the workspace name.

           Ss7

       2. Run terraform plan to preview the deployment.

          Ss8

        3.Run terraform apply to deploy the resources based on the plan output.

            Ss9

 

Post-Deployment

  1. Check the Run Logs in the Terraform Cloud Workspace for detailed insights.
  2. Verify the resources in the Azure Portal.

           Ss10

]]>
https://blogs.perficient.com/2025/01/10/create-deploy-azure-kubernetes-service-aks-using-terraform-cloud-workspaces/feed/ 0 374955
Agentforce World Tour 2024 Recap: Transforming Work and Customer Service with AI https://blogs.perficient.com/2025/01/09/agentforce-world-tour-2024-recap-transforming-work-and-customer-service-with-ai/ https://blogs.perficient.com/2025/01/09/agentforce-world-tour-2024-recap-transforming-work-and-customer-service-with-ai/#respond Thu, 09 Jan 2025 18:40:39 +0000 https://blogs.perficient.com/?p=375211

The Agentforce World Tour has been a groundbreaking series of events, showcasing how Salesforce is revolutionizing work and customer service with AI-driven solutions. Here are some key takeaways from the recent sessions in New York, Atlanta, Dallas, and Chicago.

New York – November 20

Harry Wilson, Senior Solutions Architect, highlighted how Salesforce is transforming internal business processes with Slack. By creating Agents and Workflows, Salesforce has significantly reduced internal emails related to travel approvals, expense reporting, and more. Additionally, Salesforce Maps enables the creation of balanced sales territories based on geographic distribution of leads, accounts, and historical revenue. This transformation is helping companies improve service and reduce costs.

Atlanta – December 18

Clay Phillips, Lead Technical Consultant, found the keynote and developer sessions particularly intriguing. Salesforce’s vision to reinvent the customer service experience is set to change how people interact with customer service. The introduction of developer-focused agents aims to help developers write more efficient code quickly. Agentforce is designed to be accessible to non-developers, making it a versatile tool for various roles within an organization.

Key Highlights

  • Slack Integration: Salesforce’s Agents and Workflows in Slack has streamlined internal processes, reducing the need for emails.
  • Salesforce Maps: The ability to create balanced sales territories based on geographic data helps optimize sales strategies.
  • Developer-Focused Agents: These agents are designed to improve coding efficiency, making them an asset for developers.
  • Accessibility: Agentforce aims to be user-friendly for both developers and non-developers, broadening its applicability.

Looking Ahead

The excitement around Agentforce is palpable, with many attendees eager to see how these innovations will impact their work. Perficient is poised to help customers leverage these tools to improve service and reduce costs. What aspect of Agentforce are you most excited about?

Additional Resources

Salesforce Agentforce Readiness Assessment

Evaluate your AI readiness with Perficient’s comprehensive assessment. Identify key use cases, ensure data security, and develop a tailored roadmap for deploying Agentforce.

Transform with Agentforce

Discover tailored AI solutions and industry-specific use cases. Leverage pre-built templates and secure data access to enhance productivity across various business departments.

Salesforce Data Cloud Readiness Assessment

Assess your infrastructure and data readiness for Data Cloud adoption. Highlight areas for improvement and create a solid migration plan to ensure a smooth transition to the cloud.

These resources provide valuable insights and practical steps to help businesses successfully implement and leverage Agentforce and Data Cloud solutions.

Ready to start your Agentforce journey? Contact us today to learn more and get started!

]]>
https://blogs.perficient.com/2025/01/09/agentforce-world-tour-2024-recap-transforming-work-and-customer-service-with-ai/feed/ 0 375211