The last minute challenges saved by perl

Raja Renga Bashyam, Web Developer - Webstars Computing

T20

  1. A buzz word in cricket world
  2. New age short format of the game
  3. Challenging & thrilling format
  4. Twists in final minutes
  5. Handling last minute challenges will make a difference

T20 moments in software.

  1. Last minute changes & challenges
  2. Non-linear implementations
  3. Tight time-bounde prototypes & updates
  4. Unexpected resource shortages
  5. Budget constraints in infrastructures & tools

For a winning moment

  1. Lateral thinking is vital
  2. Often these constraint, challenging & commited times
    • Leads to innovations & lean solutions that ignored for long
    • Mind will transcends in all directions & breaking barriers to get a solution
  3. Often we look for a partner
    • thinks in our wave-length
    • will give us synergtic energy to accomplish

In our case
Perl' flexibility & multifaceted character
shown us ways to
solve the non-linear challenges

Bridge of Leads

A data munging operation to capture the missed business leads from 1000s of email in the era of Desktops & Connectivity

  • A Small-sized photographer registered for business leads in a marketing portal
  • The mobile number noted wrong, after a month only the error realized
  • But he recieved the queries in email that counts nearly 1000
  • The portal support team, suggested to go for manual lookup of email
  • His request to give it in a document format has only recieved bitter replys
  • He neither have the resources nor the time to carry the manual proccess
  • Every delaying day can be proved costly of losing a business

Bridge of Leads

A data munging operation to capture the missed business leads from 1000s of email in the era of Desktops & Connectivity

Solution Map

Downloading the mails to local by Mozilla Thunderbird
Moving the lead mails to a folder by manual search
Mail::Box Module to read the mails from the folder
Neutralize & stretching the mail content to detail
Write the queries into a excel file for easy usage

Bridge of Leads

A data munging operation to capture the missed business leads from 1000s of email in the era of Desktops & Connectivity

Mail Local Storage / Mail Message Sample

Bridge of Leads

A data munging operation to capture the missed business leads from 1000s of email in the era of Desktops & Connectivity

Business Leads in Excel

Bridge of Leads

A data munging operation to capture the missed business leads from 1000s of email in the era of Desktops & Connectivity

Minimal Code

Catch Me If You Can?

Catching outgoing emails in shared web hosting

  1. An auditing firm looked for switching to business email for security improvement
  2. The key requirement is monitoring outgoing email
  3. We blindly accepted it based on generic use case with shared hosting platform
  4. Later we realized that, VPS hosting only have that feature
  5. It's need a skyrocketing 10x budget
  6. We were in crossroads. There is no off-the-shelf solutions.
  7. Days of technical search finaly landed in no man's land

The Net::IMAP::Client
helped to catch it.

Catch Me If You Can?

Catching outgoing emails in shared web hosting

Solution Map

Net::IMAP based script checked to traverse emails
Insisted to use
IMAP Protocol in Email Client
Script implemented for capture new emails on every run
Cron job implemented for every user
Batch process for overcome time & resource limit

Catch Me If You Can?

Catching outgoing emails in shared web hosting

The main script with Net::IMAP::Client & IMAP::Query

Catch Me If You Can?

Catching outgoing emails in shared web hosting

Email Boxes

The Hundred Step Document

Producing demo document pdfs in 1/4 of the time for a surprise business proposal

  1. Documentation is a challenging task for us than writing code
  2. For demo documentation, we have a lengthy process of image->word->pdf
  3. The process itself distanced from doing it
  4. A sudden surprise business proposal need of a demo document in few hours
  5. It has 25 screens, each page has four steps.
  6. It will take more than an hour to do
  7. But the clock is ticking for demo document

PDF::Reuse
give an hand to
create the magic.

The Hundred Step Document

Document Automation

Solution Map

The app screen images put it in a folder
Image names combined with
title & line order
PDF::Reuse created the magic. Doc. created with in 30 min.
Now we are quick every time.
It may helps in smilar needs.
It's improving incrementally.
The module in Github.

The Hundred Step Document

Document Automation

Images

The Hundred Step Document

Document Automation

Minimal code

The Hundred Step Document

Document Automation

Minimal PDF

The Hundred Step Document

Document Automation

Continious Improvements as PDF::Combine

The Hundred Step Document

Document Automation

PDf with Custom Title & Text

The band of modules

Perl & Imagemagick's magic to update a product image based website with less resource in dying hours

  1. In our market, websites often created or revamped before a business expo participation
  2. In that way, we had a website implementation for a textile machinery spares supplier in 10 days
  3. Primary requirement is present their 70+ product images in website
  4. With three days reamining, we got the professional images
  5. The surprise was, they missed to mention the name in the image file
  6. Now naming itself a time-eater. Than there was a heavy rain pour
  7. Two of our team members unable to join next day. The countdown moved to hours

Spreadsheet::WriteExcel,Imagemagick & PDF::Reuse modules
saved the day.

The band of modules

Image & Content Automation

Unnamed Product Images

The band of modules

Image & Content Automation

Base Data Sheet from Excel

The band of modules

Image & Content Automation

Base Data Sheet from Excel

The band of modules

Image & Content Automation

Resizing & watermarking with batch process

The band of modules

Image & Content Automation

Product images by category

A Decade Delayed Delight

Revamping a website after 15 years with 1000 of gallery images

  1. SOHO business with few members, always have a challenge to work for themselfs
  2. Our design partner, a creative agency keen to update their website. But it dragged for years
  3. Finally during Covid-19 first wave, they had time for themselfs & seriosuly restarted it
  4. Revamping after 15 years is a different experience. They have lot to say.
  5. After many round of sorting, the count settled in 1000 images. Manual updation is a challenge
  6. Though we had little experience in image automation, we thought it can be managed
  7. But different sizes,recursive folder traverse & few other things slowed down the work

The Path::Iterator::Rule
shown a path
to achive the automation.

A Decade Delayed Delight

Revamping a website after 15 years with 1000 of gallery images

Solution Map

The creative images sorted
to different verticals/clients
Category based gallery
automation planned
Path::Iterator::Rule helped to
recurse multiple folder levels
CMS improved to accomdate
category based grouping
The automation paved way to
rejuvenate the little team.

A Decade Delayed Delight

Revamping a website after 15 years with 1000 of gallery images

Images in nested folders (Cateory/Client/Campaign)

A Decade Delayed Delight

Revamping a website after 15 years with 1000 of gallery images

CMS gallery - preloaded images from automation

A Decade Delayed Delight

Revamping a website after 15 years with 1000 of gallery images

Gallery Category

A Decade Delayed Delight

Revamping a website after 15 years with 1000 of gallery images

Gallery View

Kesari

Defending the cyber incursions of an unknown enemy

  1. Few times, we had cyber attack in our web applications & wordpress websites
  2. The attacks mostly do website defacement or over traffic. So we have a glue to respond
  3. But in a silent attack, the defacement happened in index page meta tags for multiple websites
  4. Search results reflected that. The impact was severe. It's happened every day..
  5. It's escaped server malware scanning. Security expert service costs 250 USD that time.
  6. Immediately we don't have the budget. So we manually changed and defended for some time
  7. After few weeks, the defacement frequency increased to hours. We unable to defend it manually

Kesari

Defending the cyber incursions of an unknown enemy

Solution Map

A script captured the
index file of websites
A patroling script configured to run every 15 mins
It moved the affected & replaced the real with log
We defended for some time,
until the expert cleanup
Logs helped in final encounter.
Patroling continues now.

Kesari

Defending the cyber incursions of an unknown enemy

Setup

Kesari

Defending the cyber incursions of an unknown enemy

Source Files

Kesari

Defending the cyber incursions of an unknown enemy

Affected File

Thank You All.



Webstars Computing, Coimbatore, INDIA. | info@webstarscg.com