Saturday, 15 November 2025

Removing Duplicates from an Array in Perl

When working with arrays in Perl, you might encounter situations where you need to remove duplicate elements. Perl, with its versatile data structures, offers several ways to accomplish this task. Let’s explore different approaches to remove duplicates from an array, demonstrating the flexibility and power of Perl.

Approach 1: Using a Hash to Filter Unique Elements

One of the simplest and most efficient ways to remove duplicates from an array is by using a hash. Hashes in Perl inherently prevent duplicate keys, which makes them ideal for this task.

Read more »

Labels:

Wednesday, 12 November 2025

Developing an Asset Tracking System in ServiceNow

Asset management is a critical component of IT operations, ensuring that an organization’s assets are accounted for, deployed, maintained, and disposed of when necessary. ServiceNow offers robust capabilities for managing these assets. In this post, we’ll walk through how to develop a custom asset tracking system on ServiceNow to help streamline the asset management process.

Objective

Our goal is to create a custom application on ServiceNow that automates asset tracking, from procurement to disposal, and provides real-time visibility into asset status and location.

Step 1: Setting Up Your Environment

First, ensure you have access to a ServiceNow developer instance. You can obtain a free developer instance from the ServiceNow Developer Program, which includes all the tools and resources needed for building applications.

Step 2: Creating the Asset Tracking Application

  1. Launch ServiceNow Studio: Access the Studio from your ServiceNow dashboard by typing ‘Studio’ in the left-hand filter navigator.

  2. Create a New Application:

    • Click on ‘Create Application’.
    • Fill in the application details:
      • Name: Advanced Asset Tracking
      • Description: Automate and manage your asset tracking efficiently.
      • Application Scope: Ensure to specify a new scope for this application.

Step 3: Designing the Database Structure

  1. Create Tables:

    • Define a new table named Asset Register.
    • Add relevant fields such as Asset ID, Asset Type, Purchase Date, Status, Current User, and Location.
  2. Set Up Relationships:

    • Establish relationships between Asset Register and other existing ServiceNow tables like User table to link assets to current users or departments.

Step 4: Implementing Business Logic

  1. Business Rules:
    • Create a business rule to automatically update the Status field when an asset is checked out or checked in.
    • Script Example:
      (function executeRule(current, previous) {
          // This rule triggers when the 'Location' field changes
          if (current.Location != previous.Location) {
              if (current.Location == 'Storage') {
                  current.Status = 'In Stock';
              } else {
                  current.Status = 'Checked Out';
              }
              gs.addInfoMessage('Asset status updated to ' + current.Status);
          }
      })();
      

Step 5: Workflow Automation

  1. Create Workflows:
    • Develop a workflow to automate notifications when an asset’s status changes, such as when it is due for maintenance or replacement.
    • Use the workflow editor to drag and drop workflow elements like notifications, approvals, and conditions.

Step 6: User Interface and User Experience

  1. Customize Forms and Views:
    • Design user-friendly forms for asset entry and updates.
    • Customize views for different users, like IT staff and department heads, to provide relevant information tailored to their needs.

Step 7: Testing and Quality Assurance

  1. Conduct Thorough Testing:
    • Test all aspects of the application, including form submissions, workflow triggers, and business rules.
    • Ensure that notifications are sent correctly and that data integrity is maintained.

Step 8: Deployment and Training

  1. Deploy Your Application:

    • Move the application from development to the production environment.
    • Ensure all configurations and customizations are correctly transferred.
  2. Train End Users:

    • Organize training sessions for different user groups to ensure they are familiar with how to use the new system effectively.

By following these steps, you can develop a comprehensive asset tracking system within ServiceNow that not only enhances the efficiency of asset management processes but also improves visibility and control over organizational assets. This custom application will help ensure that assets are utilized optimally, reducing the total cost of ownership and supporting better investment decisions.

Labels:

Monday, 10 November 2025

14 Essential Free Courses Every Developer Should Learn

In today's fast-paced world, technology is constantly evolving, and it's essential for developers to stay up-to-date with the latest tools and trends. Whether you're a seasoned pro or just starting out, there are certain technologies that are must-knows for any developer. In this article, we'll explore 14 essential tools and technologies that every developer should master to take their skills to the next level.


1. Git: The Foundation of Version Control 💻

Git is a version control system that allows developers to track changes in code over time. It's an essential tool for collaborative work and is used by many organizations worldwide. Learn how to use Git effectively with our comprehensive course on LinkedIn Learning. 🔗 https://t.co/tjoVxVoKk4

Read more »

Labels:

Sunday, 9 November 2025

Building an ETL Pipeline with Perl and Amazon Redshift

Creating an ETL pipeline that interacts with a data warehouse (e.g., Amazon Redshift, Google BigQuery, Snowflake, etc.) is a common use case in modern data engineering. In this blog post, we’ll walk through building an ETL pipeline in Perl that extracts data from a data warehouse, transforms it, and loads it into another data warehouse or database. For this example, we’ll use Amazon Redshift as the data warehouse.

Overview

This ETL pipeline will:

  1. Extract: Fetch data from an Amazon Redshift data warehouse.
  2. Transform: Perform transformations on the data (e.g., cleaning, aggregations, or calculations).
  3. Load: Insert the transformed data into another Amazon Redshift table or a different data warehouse.
Read more »

Labels:

Saturday, 8 November 2025

Which Version of Perl Should I Use on Windows?

 When it comes to using Perl on Windows, there are two main distributions to choose from: ActivePerl and Strawberry Perl. Both have their own advantages, and the choice largely depends on your specific needs and preferences. Let’s explore the differences between these two popular Perl distributions to help you decide which is the best fit for your environment.

ActivePerl: A Long-Standing Favorite

ActivePerl, provided by ActiveState, has been the go-to Perl distribution for Windows users for many years. It’s often chosen by enterprise environments and developers who value stability and ease of deployment. Here are some key features:

Read more »

Labels:

Thursday, 6 November 2025

Automating Package and Service Deployment in DevOps

In today’s digital era, where software delivery speed and reliability are paramount, DevOps has emerged as the backbone of modern IT organizations. One of the most critical aspects of DevOps is the automation of package and service deployment. Manual deployments are error-prone, slow, and unscalable. Automation, on the other hand, brings consistency, speed, and confidence to the release process.

In this comprehensive guide, we’ll explore why deployment automation matters, the key concepts and tools involved, a step-by-step approach to automating deployments, and best practices to ensure your automation journey is successful. Whether you’re a DevOps engineer, developer, or IT manager, this post will equip you with the knowledge to transform your deployment process.

Table of Contents

  1. Why Automate Deployments?
  2. Key Concepts in Deployment Automation
  3. Popular Tools for Deployment Automation
  4. Step-by-Step Guide to Automating Deployments
  5. Best Practices for Deployment Automation
  6. Common Challenges and How to Overcome Them
  7. Real-World Example: Automating a Web Service Deployment
Read more »

Labels:

Tuesday, 4 November 2025

Automating Image Optimization and Upload to Google Cloud Storage Using Python and Cloud Functions

In the digital landscape, images are a fundamental component of web design, marketing, and content creation. They enhance user engagement, convey messages, and create visual appeal. However, high-resolution images can significantly affect website performance, leading to slower load times and increased bandwidth consumption. This is where image optimization comes into play. In this comprehensive blog post, we will explore how to create a Python script using Google Cloud Functions to automatically optimize images and upload them to Google Cloud Storage (GCS).

The Importance of Image Optimization

Before we delve into the technical details, let’s discuss why image optimization is crucial for modern web applications:

1. Faster Load Times

Optimized images load faster, which is essential for providing a seamless user experience. Studies have shown that users are likely to abandon a website if it takes more than a few seconds to load. By reducing image sizes, we can significantly improve load times, leading to higher user retention and satisfaction.

2. Reduced Bandwidth Usage

Large images consume more bandwidth, which can lead to increased costs, especially for websites with high traffic. By optimizing images, we can reduce the amount of data transferred, saving both bandwidth and costs associated with data transfer.

3. Improved SEO

Search engines like Google prioritize fast-loading websites in their rankings. Optimized images contribute to better page load speeds, which can improve your website’s search engine optimization (SEO) and visibility.

4. Storage Efficiency

Storing high-resolution images can quickly consume storage space, leading to increased costs in cloud storage solutions. Optimizing images not only reduces their size but also helps in managing storage more efficiently.

Read more »

Labels: