Skip to content

Instantly share code, notes, and snippets.

View pmsudhi's full-sized avatar

Sudheesh PM pmsudhi

View GitHub Profile
@pmsudhi
pmsudhi / sentry_mattermost_webhook.php
Created March 22, 2022 06:57 — forked from dkmonaghan/sentry_mattermost_webhook.php
This script can act as a middleman between Sentry's webhook system and Mattermost's Incoming Webhooks
<?php
$json = json_decode(file_get_contents('php://input'), true);
if ($json['action'] !== 'created'){ die('Only create actions are alerted'); }
$error = $json['data']['issue'];
if ($error['project']['id'] == 1){ die('Ignore internal errors.'); }
if (empty($error['shortId'])){ die('No shortId passed'); }
// Set channel and username
[
[
[ "Revenue Per Employee", "$170.540", "⇡ 1.4%", "Revenue Per Employee", "$120.540" ],
[ "Customer Satisfaction", "85%", "⇣ 7.6%", "Customer Satisfaction", "85%" ],
[ "Absenteeism Rate (monthly)", "2.4%", "⇣ 1.9%", "Absenteeism Rate (monthly)", "2.4%" ],
[ "Turnover rate (annual)", "6.90%", "⇡ 0.2% (yoy)", "Turnover rate (annual)", "6.90%" ],
[ "Average Tenure", "720 days", "⇡ 0.5% (yoy)", "Average Tenure", "620 days", 215 ],
[ "Time to hire", "55 days", "⇡ 2%", "Time to hire", "55 days" ],
[ "Applications received", 86, "⇡ 5%", "Applications received", 76 ],
[ "Interviews (monthly)", 14, "⇡ 1%", "Interviews (monthly)", 11 ],
[
[
[ "Revenue Per Employee", "$120.540", "⇡ 1.4%", "Revenue Per Employee", "$120.540" ],
[ "Customer Satisfaction", "85%", "⇣ 7.6%", "Customer Satisfaction", "85%" ],
[ "Absenteeism Rate (monthly)", "2.4%", "⇣ 1.9%", "Absenteeism Rate (monthly)", "2.4%" ],
[ "Turnover rate (annual)", "6.90%", "⇡ 0.2% (yoy)", "Turnover rate (annual)", "6.90%" ],
[ "Average Tenure", "620 days", "⇡ 0.5% (yoy)", "Average Tenure", "620 days", 215 ],
[ "Time to hire", "55 days", "⇡ 2%", "Time to hire", "55 days" ],
[ "Applications received", 86, "⇡ 5%", "Applications received", 76 ],
[ "Interviews (monthly)", 14, "⇡ 1%", "Interviews (monthly)", 11 ],
#
# THE FOLLOWING QUOTATION IS PROVIDED THROUGH THE COURTESY OF THE AUTHORS.
#
# "IT WILL BE PROVED TO THY FACE THAT THOU HAST MEN ABOUT THEE THAT
# Page 310
# USUALLY TALK OF A NOUN AND A VERB, AND SUCH ABOMINABLE WORDS AS NO
# CHRISTIAN EAR CAN ENDURE TO HEAR."
# HENRY 6, ACT 2, SCENE 4
# Page 731
## At the get-together of the AGC developers celebrating the 40th anniversary
## of the first moonwalk, Don Eyles (one of the authors of this routine along
## with Peter Adler) has related to us a little interesting history behind the
## naming of the routine.<br>
## <br>
## It traces back to 1965 and the Los Angeles riots, and was inspired
## by disc jockey extraordinaire and radio station owner Magnificent Montague.
## Magnificent Montague used the phrase "Burn, baby! BURN!" when spinning the
## hottest new records. Magnificent Montague was the charismatic voice of
@pmsudhi
pmsudhi / gist:4a7ca6ebe1ea39ef3c4a1db19deab13c
Created June 10, 2016 17:16
Traceability, Testability, Measurability and Maintainability = Software architecture
Please read the complete article regarding software architecture from below link
https://www.linkedin.com/pulse/ttmm-four-pillars-software-architecture-sudheesh-p-m
There are 4 basic things that should be in place in any software product- Traceability, Testability, Measurability and Maintainability. Quality of these four attribute defines maturity of a software. As a software architect one should always try to balance these four pillars for an optimal architecture. Any over focus or under focus on these attributes will result in un even pillars resulting an unstable software base
There are two faces for traceability. Traceability as in requirement mapping from requirement document to final product through codebase. This traceability matrix allows all stake holders to define and confirm the definition of “Done”. A well-defined traceability matrix also supports the maintainability of the software product. Most of the software development tools available today in the market have support for this. With incre