diff --git a/main.go b/main.go index fbb3c17..82de1c1 100644 --- a/main.go +++ b/main.go @@ -39,7 +39,7 @@ func main() { fs := http.FileServer(http.Dir("static")) http.Handle("/static/", http.StripPrefix("/static/", fs)) - http.HandleFunc("GET /{$}", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, "./static/about.html") }) + http.HandleFunc("GET /{$}", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, "./static/index.html") }) http.HandleFunc("GET /infra", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, "./static/infra.html") }) http.HandleFunc("GET /finance", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, "./static/finance.html") }) http.HandleFunc("GET /cinema", func(w http.ResponseWriter, r *http.Request) { http.ServeFile(w, r, "./static/cinema.html") }) diff --git a/site b/site index a65afc6..63632bc 100755 Binary files a/site and b/site differ diff --git a/static/about.html b/static/about.html deleted file mode 100644 index 0dd63d6..0000000 --- a/static/about.html +++ /dev/null @@ -1,440 +0,0 @@ - - - - - - - Samantha Vero Friis - - - - - - - - - - -
- -
-
-

About Me · 2026

-

Samantha
Vero Friis -

-

Bachelor's student in Business Administration seeking an entry-level analyst or - finance-related role while studying. Strong numerical skills, advanced Excel, and experience in company, risk, - and financial analysis. Analytical, detail-oriented, and efficiency-focused.

-
- -
- samantha42.xyz - me@samantha42.xyz -
-
-
-
-

experience

-
-
-
-
- Independent Equity Research - finance -
-

Fundamental analysis using SEC filings (10-K, 10-Q) and earnings reports. Assess - profitability, liquidity, risk factors, and long-term business sustainability. Handle incomplete or - low-transparency information through structured cross-validation.

- // Go to Analysis -
-
-
- Technical Tools & Automation - engineering -
-

Build lightweight backend tools to automate repetitive analytical and operational tasks. - Python for data processing, validation, and workflow automation. Lightweight online services in Go, - focusing on speed and reliability.

- // Go to Tools -
-
-
-
-
-

education

-
-
-
-
2025 — present
-
-
Bachelor of Economics & Business Administration (HA)
-
Aalborg University · Expected 2028
-
-
-
-
2024 — 2025 -
- discontinued -
-
-
Mathematics-Technology (BSc)
-
Aalborg University · 1 semester
- -
-
- -
-
2020 — 2023
-
-
HTX – Technical Upper Secondary Education
-
Viden Gymnasier
-
Mathematics A, Biology B · Study project: Mathematics & Technology
-
-
-
-
-
-
-

opinion

-
-
- cinema - finance - infra -
-
-
- -
-

- The task here is simple: to reduce work, it's a simple investment. The choice of picking the correct - bottleneck is as important as the tool itself, as this gives it use. If it's never used, it never creates - value. The same goes for uptime, it's important that stability is almost perfect, as downtime undermines - the utility of having the tool. Remember that making and using a tool also creates debt for future - maintenance of the tool. -
- To adhere to this, I often choose Golang or Python as they are cheap to maintain. Golang has good - stability because it is easy to code and compile checks give early error detection. A word of caution on - AI generated tools: while they are cheap to make, the maintenance debt grows exponentially, as the code is - often poorly understood by the team and difficult to reason about over time. - -

-
-
- Portfolio Engine -
-

A lightweight portfolio and financial data backend written in Go. Tracks companies, - currencies, revenue reports, and trades across configurable time periods — replacing spreadsheets with a - proper database, REST API, and interactive shell.

- Roadmap -
    -
  • Price update endpoint
  • -
  • Multi-currency conversion
  • -
  • Frontend dashboard
  • -
  • Shares outstanding history database table
  • -
  • Earnings per share (EPS) based on shares owned
  • -
  • First-In, First-Out (FIFO) realized gains
  • -
  • Dividends earned and related taxes
  • -
  • Total tax obligations
  • -
- Git repo -
-
-
- Accounting Management -
-

- A lightweight, SQL-backed, web-based CLI system designed to track assets and liabilities. The goal is to - provide a simple, fast, and scalable financial tracking tool that can grow from personal use to more - advanced scenarios.

-
-
-
-
- - -
-
- Story vs Fundamental value -
-

- - The truth I keep coming back to is simple: find value grounded in the fundamental numbers of a company. -
- My approach is rooted in fundamental analysis using SEC filings (10-K, 10-Q), earnings reports, profitability, liquidity, risk factors, and long-term business sustainability. In low-transparency situations I rely on structured cross-validation across sources. -
- A pattern I keep seeing is CEOs speaking just close enough to reality to generate a short-term price boost, then moving the goalposts when reality catches up. What companies state in filings and what they communicate to retail or even professional investors can be two very different stories. Guidance only needs to reach far enough into the future to say almost anything. -

-
- -
-

Current stock analysis

-
-
-
- MSTR: Strategy (Sell) -
-

- The company only owns btc by issuing debt and preferred stock offering. -
- The company is a ponzi scheme at its best. -

- Read file -
-
-
-
- Novo.B/NVO: Novo Nordisk A/S (buy) -
-

- The product sales of wieght loss drugs are highclass, pipeline is undervalued. -
- Pipeline and wegovy pil is not reconsiced correctly as high focus on expireation of current sold product. high pisimistic view of pipeline. -

- Read file -
-
-
-
- - -
-
-
- - - - - - - - \ No newline at end of file diff --git a/static/about.js b/static/about.js deleted file mode 100644 index 42129b6..0000000 --- a/static/about.js +++ /dev/null @@ -1,68 +0,0 @@ - const toggle = document.getElementById('toggle'); - const track = document.getElementById('track'); - const knob = document.getElementById('knob'); - const rays = document.getElementById('rays'); - const stateLabel = document.getElementById('state-label'); - const themeRoot = document.getElementById('themeRoot'); - - let isDay = true; - - const RAY_COUNT = 8; - for (let i = 0; i < RAY_COUNT; i++) { - const r = document.createElement('div'); - r.className = 'ray'; - r.style.transform = `rotate(${i * (360/RAY_COUNT)}deg)`; - rays.appendChild(r); - } - - function applyState() { - if (isDay) { - track.className = 'track day'; - knob.className = 'knob day'; - toggle.setAttribute('aria-checked', 'true'); - themeRoot.classList.remove('night'); - } else { - track.className = 'track night'; - knob.className = 'knob night'; - toggle.setAttribute('aria-checked', 'false'); - themeRoot.classList.add('night'); - } - } - - toggle.addEventListener('click', () => { isDay = !isDay; applyState(); }); - toggle.addEventListener('keydown', e => { - if (e.key === ' ' || e.key === 'Enter') { e.preventDefault(); isDay = !isDay; applyState(); } - }); - - function copyClass() { - navigator.clipboard.writeText(classOut.textContent).catch(() => {}); - } -// just some fun. - console.log("%c👀 hi there!", "font-size:20px") - - - -// about.js -function closeOverlay() { - document.getElementById('overlay').style.display = 'none'; -} - -// or toggle it from anywhere: -function openOverlay() { - document.getElementById('overlay').style.display = 'flex'; -} - -function InterestShow() { - const body = document.getElementById('interests-body'); - const chevron = document.getElementById('interests-chevron'); - chevron.classList.add("hidden") - body.classList.remove("hidden") - chevron.textContent = hidden ? '▶' : '▼'; - } - - function toggleInterests() { - const body = document.getElementById('interests-body'); - const chevron = document.getElementById('interests-chevron'); - const hidden = body.classList.toggle('hidden'); - chevron.textContent = hidden ? '▶' : '▼'; - } \ No newline at end of file diff --git a/static/index.html b/static/index.html index f8402c0..57bb547 100644 --- a/static/index.html +++ b/static/index.html @@ -1,411 +1,510 @@ - - - -Home - - - - - -