mirror of
https://github.com/asimonson1125/asimonson1125.github.io.git
synced 2026-04-11 07:07:12 -05:00
Compare commits
4 Commits
d21a8ec278
...
dependabot
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d544deb70f | ||
| 6fb6fbd828 | |||
| c21f8089d4 | |||
| a478f708a2 |
@@ -13,8 +13,10 @@ import requests
|
||||
|
||||
SERVICES = [
|
||||
{'id': 'main', 'name': 'asimonson.com', 'url': 'https://asimonson.com', 'timeout': 10},
|
||||
# {'id': 'EternalRelays', 'name': 'eternalrelays.com', 'url': 'https://eternalrelays.com', 'timeout': 10},
|
||||
{'id': 'files', 'name': 'files.asimonson.com', 'url': 'https://files.asimonson.com', 'timeout': 10},
|
||||
{'id': 'git', 'name': 'git.asimonson.com', 'url': 'https://git.asimonson.com', 'timeout': 10},
|
||||
{'id': 'cascadalyst', 'name': 'cascadalyst.com', 'url': 'https://cascadalyst.com', 'timeout': 10},
|
||||
]
|
||||
|
||||
CHECK_INTERVAL = 60 # seconds between checks
|
||||
@@ -248,7 +250,7 @@ class ServiceMonitor:
|
||||
if not cur.fetchone()[0]:
|
||||
return None
|
||||
|
||||
return round((online_count / total_count) * 100, 2)
|
||||
return round((online_count / total_count) * 100, 3)
|
||||
finally:
|
||||
conn.close()
|
||||
|
||||
|
||||
2
src/requirements.txt
Executable file → Normal file
2
src/requirements.txt
Executable file → Normal file
@@ -16,7 +16,7 @@ packaging==26.0
|
||||
ply==3.11
|
||||
psycopg2-binary==2.9.11
|
||||
rcssmin==1.2.2
|
||||
requests==2.32.5
|
||||
requests==2.33.0
|
||||
six==1.17.0
|
||||
urllib3==2.6.3
|
||||
Werkzeug==3.1.6
|
||||
|
||||
@@ -219,10 +219,10 @@ tr {
|
||||
margin: auto;
|
||||
display: block;
|
||||
/* width: 5em; */
|
||||
width: 10em;
|
||||
width: 8em;
|
||||
/* height: 30em; */
|
||||
/* max-height: 70vh; */
|
||||
max-width: 90vw;
|
||||
max-width: 70vw;
|
||||
}
|
||||
|
||||
#homeName {
|
||||
@@ -341,8 +341,8 @@ tr {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
min-width: 100vw;
|
||||
min-height: 100vh;
|
||||
min-width: 200vw;
|
||||
min-height: 200vh;
|
||||
overflow: hidden;
|
||||
background-color: rgba(var(--bg-card-rgb), 0.85);
|
||||
z-index: -1;
|
||||
@@ -778,7 +778,6 @@ tr {
|
||||
text-transform: uppercase;
|
||||
border: 1px solid currentColor;
|
||||
background: rgba(0, 0, 0, 0.65);
|
||||
backdrop-filter: blur(6px);
|
||||
}
|
||||
|
||||
.proj-status-badge.complete { color: var(--status-online); }
|
||||
@@ -1512,6 +1511,10 @@ tr {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
|
||||
.cert-grid {
|
||||
grid-template-columns: 1fr;
|
||||
}
|
||||
|
||||
.legend-items {
|
||||
flex-direction: column;
|
||||
gap: 0.5em;
|
||||
@@ -1840,6 +1843,101 @@ tr {
|
||||
.text-muted {
|
||||
color: #888 !important;
|
||||
}
|
||||
/* Certifications */
|
||||
.cert-grid {
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
gap: 1.5em;
|
||||
margin-top: 1.5em;
|
||||
}
|
||||
|
||||
.cert-group {
|
||||
margin-bottom: 1.5em;
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.cert-group-provider {
|
||||
font-size: 0.75rem;
|
||||
color: var(--text-secondary);
|
||||
margin: 0 0 0.25em 0;
|
||||
letter-spacing: 0.08em;
|
||||
}
|
||||
|
||||
.cert-program-badge {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
max-width: 100%;
|
||||
padding: 0.35em 0.9em;
|
||||
margin-bottom: 1em;
|
||||
border: 1px solid rgba(var(--accent-rgb), 0.75);
|
||||
background: rgba(var(--accent-rgb), 0.18);
|
||||
color: var(--text-heading) !important;
|
||||
font-size: 0.78rem;
|
||||
letter-spacing: 0.09em;
|
||||
text-transform: uppercase;
|
||||
font-family: 'Courier New', Courier, monospace;
|
||||
transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
|
||||
opacity: 1 !important;
|
||||
}
|
||||
|
||||
.cert-program-badge:hover {
|
||||
background: rgba(var(--accent-rgb), 0.32);
|
||||
border-color: rgb(var(--accent-rgb));
|
||||
box-shadow: 0 0 8px rgba(var(--accent-rgb), 0.35);
|
||||
opacity: 1 !important;
|
||||
}
|
||||
|
||||
.cert-list {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0.5em 0 0 0;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 0.35em;
|
||||
}
|
||||
|
||||
.cert-list li {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.cert-item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.6em;
|
||||
padding: 0.5em 0.75em;
|
||||
border-left: 3px solid rgba(var(--accent-rgb), 0.65);
|
||||
background: rgba(0, 0, 0, 0.25);
|
||||
color: var(--text-secondary) !important;
|
||||
font-size: 0.88rem;
|
||||
text-decoration: underline;
|
||||
text-decoration-color: rgba(var(--accent-rgb), 0.35);
|
||||
text-underline-offset: 3px;
|
||||
transition: border-color 0.2s ease, background 0.2s ease, padding-left 0.2s ease, color 0.2s ease;
|
||||
opacity: 1 !important;
|
||||
}
|
||||
|
||||
.cert-item::before {
|
||||
content: '›';
|
||||
color: rgb(var(--accent-rgb));
|
||||
font-size: 1.25em;
|
||||
line-height: 1;
|
||||
flex-shrink: 0;
|
||||
transition: transform 0.2s ease;
|
||||
}
|
||||
|
||||
.cert-item:hover {
|
||||
border-left-color: rgb(var(--accent-rgb));
|
||||
background: rgba(var(--accent-rgb), 0.12);
|
||||
padding-left: 1em;
|
||||
color: var(--text-heading) !important;
|
||||
text-decoration-color: rgba(var(--accent-rgb), 0.6);
|
||||
opacity: 1 !important;
|
||||
}
|
||||
|
||||
.cert-item:hover::before {
|
||||
transform: translateX(3px);
|
||||
}
|
||||
|
||||
/* SPA Loading Bar */
|
||||
#loading-bar {
|
||||
position: fixed;
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
{
|
||||
"PsyCom - Physical Combinatorics": {
|
||||
"status": "WIP",
|
||||
"classes": "programming",
|
||||
"content": "Experimental innovation engine operating on physical attributes and limitations of proven existing technologies with further AI review."
|
||||
},
|
||||
"Antietam-Conococheague Watershed Monitoring": {
|
||||
"status": "complete",
|
||||
"classes": "geospacial",
|
||||
@@ -50,7 +55,7 @@
|
||||
]
|
||||
},
|
||||
"Portfolio Website": {
|
||||
"status": "WIP",
|
||||
"status": "complete",
|
||||
"classes": "programming",
|
||||
"content": "This website is my personal sandbox where I've integrated some of my data projects via docker cluster. It is self hosted and zero-trust secure while remaining dynamic and free of the tech debt that comes with pre-designed sites and excessive framework application. Yeah, I can do E2E.",
|
||||
"links": [
|
||||
|
||||
@@ -1,75 +1,49 @@
|
||||
{% block content %}
|
||||
<div class="foreground"></div>
|
||||
<div class="foregroundContent">
|
||||
<h1>Andrew's Secret Certification Page</h1>
|
||||
<h1>Certifications</h1>
|
||||
<p class="page-subtitle">
|
||||
Comprehensive list verifiable on
|
||||
<a href="https://www.linkedin.com/in/simonsonandrew/details/certifications/">LinkedIn</a>
|
||||
</p>
|
||||
<p>Computer Science BS and Data Science MS from Rochester Institute of Technology</p>
|
||||
|
||||
<strong
|
||||
>See
|
||||
<a
|
||||
href="https://www.linkedin.com/in/simonsonandrew/details/certifications/"
|
||||
>here</a
|
||||
>
|
||||
for a comprehensive list of certifications that can be confirmed by
|
||||
LinkedIn</strong
|
||||
>
|
||||
<p>Some highlights:</p>
|
||||
<strong><a href="http://credentials.edx.org/credentials/4b7e78dca8154c0d88ca9abc5aedb4ac">UCSanDiegoX Data Science MicroMasters Program</a></strong>
|
||||
<ol>
|
||||
<li><a href="https://courses.edx.org/certificates/b6deccc56e5344ae84cb55f9ad81fd79">DSE200x Python for Data Science</a></li>
|
||||
<li><a href="https://courses.edx.org/certificates/f29d0e65fc024c6e95121619e329a286">DSE210x Probability and Statistics in Data Science using Python</a></li>
|
||||
<li><a href="https://courses.edx.org/certificates/cccc2bd2ed61470e8492d6da1be530c5">DSE220x Machine Learning Fundamentals</a></li>
|
||||
<li><a href="https://courses.edx.org/certificates/4dfd6563a1f84caaa8922a02a5125f29">DSE230x Big Data Analytics Using Spark</a></li>
|
||||
</ol>
|
||||
<strong>One-Off Courses</strong>
|
||||
<ul>
|
||||
<li>
|
||||
<a
|
||||
href="https://files.asimonson.com/u/2403_3_1303226_1765822061_Databricks%20-%20Generic.pdf"
|
||||
>Machine Learning Operations by Databricks</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="https://www.linkedin.com/learning/certificates/2cb69378c606fec5a6f3a107b99a896862db392b7a3692f71a6b53af5d5545c5"
|
||||
>Career Essentials in Data Analysis by Microsoft</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="https://www.linkedin.com/learning/certificates/7facc28a13405134b3b7fa785303e9b1cf697f32d67f759e89960fbdc8a044d9"
|
||||
>Career Essentials in GitHub Professional Certificate</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="https://www.linkedin.com/learning/certificates/7b952323152e258ca468c33ddc9ebcf3c55036f58a5cfb3fb9c1410da655aaa5"
|
||||
>Docker Foundations Professional Certificate</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a
|
||||
href="https://www.linkedin.com/learning/certificates/7017147ac73af5bc26fdab9b3c43671fb8105a0de59d4689d5f0f71c549c150f"
|
||||
>Data Science Foundations: Fundamentals</a
|
||||
>
|
||||
</li>
|
||||
</ul>
|
||||
<strong>RIT Entrepreneurial Certifications</strong>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="https://files.asimonson.com/u/designThinkingCert.pdf"
|
||||
>Design Thinking Certification</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://files.asimonson.com/u/ideationCert.pdf"
|
||||
>Ideation Certification</a
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<a href="https://files.asimonson.com/u/toolsForInnovatorsCert.pdf"
|
||||
>Tools for Innovators Certification</a
|
||||
>
|
||||
</li>
|
||||
<div class="boxed cert-group">
|
||||
<p class="cert-group-provider">UCSanDiegoX · edX</p>
|
||||
<h2 class="concentratedHead">Data Science MicroMasters Program</h2>
|
||||
<a href="http://credentials.edx.org/credentials/4b7e78dca8154c0d88ca9abc5aedb4ac" class="cert-program-badge">
|
||||
View Program Certificate ›
|
||||
</a>
|
||||
<ul class="cert-list">
|
||||
<li><a href="https://courses.edx.org/certificates/b6deccc56e5344ae84cb55f9ad81fd79" class="cert-item">DSE200x — Python for Data Science</a></li>
|
||||
<li><a href="https://courses.edx.org/certificates/f29d0e65fc024c6e95121619e329a286" class="cert-item">DSE210x — Probability and Statistics in Data Science using Python</a></li>
|
||||
<li><a href="https://courses.edx.org/certificates/cccc2bd2ed61470e8492d6da1be530c5" class="cert-item">DSE220x — Machine Learning Fundamentals</a></li>
|
||||
<li><a href="https://courses.edx.org/certificates/4dfd6563a1f84caaa8922a02a5125f29" class="cert-item">DSE230x — Big Data Analytics Using Spark</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="cert-grid">
|
||||
<div class="boxed cert-group">
|
||||
<h3 class="concentratedHead">One-Off Courses</h3>
|
||||
<ul class="cert-list">
|
||||
<li><a href="https://files.asimonson.com/u/2662_3_1303226_1772561098_Databricks%20-%20Generic.pdf" class="cert-item">Building Retrieval Agents On Databricks</a></li>
|
||||
<li><a href="https://files.asimonson.com/u/2403_3_1303226_1765822061_Databricks%20-%20Generic.pdf" class="cert-item">Machine Learning Operations by Databricks</a></li>
|
||||
<li><a href="https://www.linkedin.com/learning/certificates/2cb69378c606fec5a6f3a107b99a896862db392b7a3692f71a6b53af5d5545c5" class="cert-item">Career Essentials in Data Analysis by Microsoft</a></li>
|
||||
<li><a href="https://www.linkedin.com/learning/certificates/7facc28a13405134b3b7fa785303e9b1cf697f32d67f759e89960fbdc8a044d9" class="cert-item">Career Essentials in GitHub Professional Certificate</a></li>
|
||||
<li><a href="https://www.linkedin.com/learning/certificates/7b952323152e258ca468c33ddc9ebcf3c55036f58a5cfb3fb9c1410da655aaa5" class="cert-item">Docker Foundations Professional Certificate</a></li>
|
||||
<li><a href="https://www.linkedin.com/learning/certificates/7017147ac73af5bc26fdab9b3c43671fb8105a0de59d4689d5f0f71c549c150f" class="cert-item">Data Science Foundations: Fundamentals</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="boxed cert-group">
|
||||
<p class="cert-group-provider">Rochester Institute of Technology</p>
|
||||
<h3 class="concentratedHead">Entrepreneurial Certifications</h3>
|
||||
<ul class="cert-list">
|
||||
<li><a href="https://files.asimonson.com/u/designThinkingCert.pdf" class="cert-item">Design Thinking Certification</a></li>
|
||||
<li><a href="https://files.asimonson.com/u/ideationCert.pdf" class="cert-item">Ideation Certification</a></li>
|
||||
<li><a href="https://files.asimonson.com/u/toolsForInnovatorsCert.pdf" class="cert-item">Tools for Innovators Certification</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
{% block content %} {% macro nameplate() %}
|
||||
<div>
|
||||
<h1 id="homeName" class="textGrad">Andrew's Definitely Active Website</h1>
|
||||
<h1 id="homeName" class="textGrad">oh no.</h1>
|
||||
<h2>I did not plan for visitors.</h2>
|
||||
|
||||
<br /> <hr> <br />
|
||||
|
||||
<div class="flex vertOnMobile">
|
||||
<div>
|
||||
<img
|
||||
|
||||
@@ -22,7 +22,15 @@
|
||||
industry obsessed with implicit rules and exclusive empiricism.
|
||||
As the analysis grew more sophisticated, so too did the tech
|
||||
stack - to the point that I now manage most services, like this
|
||||
website, end to end, container image to insight visual. -->
|
||||
website, end to end, container image to insight visual.
|
||||
|
||||
With substantial development and systems operation expertise, I
|
||||
am capable of working with small teams that require many critical
|
||||
functions, from devops to analytical platforms, to artificial
|
||||
intelligence implementations, to all be handled by the same person.
|
||||
Looking for an analyst who can create and operate the full digital
|
||||
stack on your crack team of scientists? You've come to the right place.
|
||||
-->
|
||||
<br />
|
||||
<br />
|
||||
I get bored and throw random stuff on this website.<br/>
|
||||
@@ -33,6 +41,8 @@
|
||||
<br/>
|
||||
<h4 class='concentratedHead'>
|
||||
I also have a
|
||||
<a href="certs">certifications page</a>
|
||||
and a
|
||||
<a href="Resume_Simonson_Andrew.pdf" target="_blank">resume</a>
|
||||
for unexplained reasons.
|
||||
</h4>
|
||||
|
||||
Reference in New Issue
Block a user