Compare commits

...

3 commits

Author SHA1 Message Date
9b96e480a5
Added new image
Some checks are pending
Deploy Jekyll site to Pages / build (push) Waiting to run
Deploy Jekyll site to Pages / deploy (push) Blocked by required conditions
2025-04-23 20:55:16 -07:00
5b0838a095
Added resume 2025-04-23 18:11:31 -07:00
85df0d4fa2
Moved over stuff from old thomasjwebb.com 2025-04-23 17:44:13 -07:00
21 changed files with 269 additions and 33 deletions

View file

@ -2,3 +2,7 @@ source "https://rubygems.org"
gem 'cvless', '~> 2.6' gem 'cvless', '~> 2.6'
gem 'erb', '~> 4.0', '>= 4.0.4' gem 'erb', '~> 4.0', '>= 4.0.4'
group :jekyll_plugins do
gem 'jekyll-optional-front-matter'
end

View file

@ -287,6 +287,7 @@ PLATFORMS
DEPENDENCIES DEPENDENCIES
cvless (~> 2.6) cvless (~> 2.6)
erb (~> 4.0, >= 4.0.4) erb (~> 4.0, >= 4.0.4)
jekyll-optional-front-matter
BUNDLED WITH BUNDLED WITH
2.4.14 2.4.14

View file

@ -5,8 +5,8 @@
[![bandcamp](https://img.shields.io/badge/-pinkboi-408294?style=flat-square&logo=bandcamp&logoColor=white)](https://bandcamp.com/pinkboi) [![bandcamp](https://img.shields.io/badge/-pinkboi-408294?style=flat-square&logo=bandcamp&logoColor=white)](https://bandcamp.com/pinkboi)
[![email](https://img.shields.io/badge/-thomas@thomasjwebb.com-blue?style=flat-square&logo=Gmail&logoColor=white)](mailto:thomas@thomasjwebb.com) [![email](https://img.shields.io/badge/-thomas@thomasjwebb.com-blue?style=flat-square&logo=Gmail&logoColor=white)](mailto:thomas@thomasjwebb.com)
**2025/04/06 Attending [Haxe Roundup Roundup](https://discord.com/invite/0uEuWH3spjck73Lo)** **2025/05/04 Attending [Haxe Roundup Roundup](https://discord.com/invite/0uEuWH3spjck73Lo)**
**2025/04/01-02 Attending [FediForum](https://fediforum.org/)** **2025/11/10-12 Attending [ADC](https://audio.dev/) online**
- 🔭 Im currently working on: interesting fediverse integrations - 🔭 Im currently working on: interesting fediverse integrations
- 💬 Ask me about: synthesizers - 💬 Ask me about: synthesizers

View file

@ -1,35 +1,35 @@
title: cvless title: Thomas J. Webb
description: Jekyll theme for a beautiful online CV description: Webb Master
baseurl: "" baseurl: ""
url: https://thomasjwebb.github.io/thomasjwebb/ url: https://thomasjwebb.com/
theme: cvless theme: cvless
# site settings # site settings
taglong: Jekyll theme for a beautiful online CV taglong: Webb Master
tagshort: Jekyll theme tagshort: Webb Master
cv: true cv: true
# author settings # author settings
author: author:
name: Place Holder name: Thomas J. Webb
email: username@domain.com email: thomas@thomasjwebb.com
photo: assets/files/photo.jpg photo: assets/files/thommy.jpg
address: Foobar Hall 1.23 address: Sparks, NV, USA
phone: +1 234 567 890 # phone: +1 234 567 890
# profile links # profile links
profile: profile:
# facebook: https://www.facebook.com/username # facebook: https://www.facebook.com/username
# x: https://x.com/username # x: https://x.com/username
mastodon: https://mastodon.social/@username mastodon: https://haxe.social/@tjw
# bluesky: https://bsky.app/profile/username.bsky.social # bluesky: https://bsky.app/profile/username.bsky.social
# instagram: https://www.instagram.com/username # instagram: https://www.instagram.com/username
linkedin: https://www.linkedin.com/in/username linkedin: https://www.linkedin.com/in/thomasjwebb/
# xing: https://www.xing.com/profile/username # xing: https://www.xing.com/profile/username
# stackoverflow: https://stackoverflow.com/users/0000000/username # stackoverflow: https://stackoverflow.com/users/0000000/username
# medium: https://medium.com/@username # medium: https://medium.com/@username
github: https://github.com/username github: https://github.com/thomasjwebb
# build settings # build settings
permalink: pretty permalink: pretty
@ -46,6 +46,7 @@ plugins:
- jekyll-paginate-v2 - jekyll-paginate-v2
- jekyll-seo-tag - jekyll-seo-tag
- jekyll-sitemap - jekyll-sitemap
- jekyll-optional-front-matter
sass: sass:
sourcemap: never sourcemap: never

12
_includes/contact.html Normal file
View file

@ -0,0 +1,12 @@
<div class="contact">
<h2>Contact</h2>
<ul>
<!-- <li>University of Jekyll</li>
<li>Department of Themes</li>
<li>123 Main St, Anytown, USA</li> -->
<li><span class="li-icon">{% include svg/pin-alt.svg %}</span><span>{{ site.address }}</span></li>
<!-- <li><span class="li-icon">{% include svg/phone.svg %}</span><span>{{ site.phone }}</span></li> -->
<li><span class="li-icon">{% include svg/mail.svg %}</span><a href="mailto:{{ site.author.email }}">{{ site.author.email }}</a></li>
<li><span class="li-icon">{% include svg/internet.svg %}</span><a href="{{ site.url }}">{{ site.url }}</a></li>
</ul>
</div>

91
_includes/portfolio.html Normal file
View file

@ -0,0 +1,91 @@
<div class="row">
<p>
This is not an exhaustive list but just a few examples of projects where I played a major role and either did
management or wrote a significant
proportion of the code that makes the app work. Some of these are my own projects made from the ground up by
myself following a plan I outlined
and based on meeting my own need or my own market research.
</p>
<div class="col-md-4">
<div class="card mb-4 box-shadow">
<img class="card-img-top" src="img/tripoli.png" alt="Tripoli screenshot" />
<div class="card-body">
<h3>Tripoli</h3>
<p class="card-text">
Next generation open source successor to Viu Calibrate that I'm working on. With a core written in
Rust and support for multiple
frontends, it will revolutionize datalogging and machine control. Contact me if you wish to be part
of this!
</p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card mb-4 box-shadow">
<img class="card-img-top" src="img/viu.png" alt="Viu Calibrate screenshot" />
<div class="card-body">
<h3>Viu Calibrate</h3>
<p class="card-text">
Cross-platform high performance datalogging and machine control software used in labs around the
world to calibrate mission-critical
and medical packaging machinery. I made this because I wasn't satisfied with existing software at
the time.
</p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card mb-4 box-shadow">
<img class="card-img-top" src="img/trip.png" alt="Trip Music screenshot" />
<div class="card-body">
<h3>Trip Music</h3>
<p class="card-text">
AI-based personalized therapeutic radio app. I managed the development of every part of this app,
making high-performance real-time audio code
as well as python-based machine learning-based playlisting.
</p>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="card mb-4 box-shadow">
<img class="card-img-top" src="img/ditty.png" alt="Ditty by Zya screenshot" />
<div class="card-body">
<h3>Ditty by Zya</h3>
<p class="card-text">
Ditty was an app that turned your texts into singing music videos based on popular and classic songs
launched in 2015. It repurposed audio tech
we had made for Song Battles, speech synthesizers and syllable alignment tech.
</p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card mb-4 box-shadow">
<img class="card-img-top" src="img/zya.png" alt="Zya Music screenshot" />
<div class="card-body">
<h3>Song Battles</h3>
<p class="card-text">
Song Battles and Zya were music-making games. You could drum beats or sing melodies into it and it
would confirm the whole mix to your chord progression.
I worked extensively on the servers where the audio and music magic happens.
</p>
</div>
</div>
</div>
<div class="col-md-4">
<div class="card mb-4 box-shadow">
<img class="card-img-top" src="img/craft.png" alt="CRÆFT Softsynth screenshot" />
<div class="card-body">
<h3>CRÆFT Softsynth</h3>
<p class="card-text">
My first major software project, a surround-sound modular software synthesizer where location of
outputs could be modulated like any other parameter.
Functionality from this has been in the process of migrating to my open source api, grig.
</p>
</div>
</div>
</div>
</div>

16
_layouts/cv_print.html Normal file
View file

@ -0,0 +1,16 @@
<!doctype html>
<html>
<head>
<meta charset=utf-8 />
<title> {% if page.title %} {{ page.title }} | {% endif %} CV</title>
<link href="media/{{ site.style }}-screen.css" type="text/css" rel="stylesheet" media="screen">
<link href="media/{{ site.style }}-print.css" type="text/css" rel="stylesheet" media="print">
</head>
<body>
<div id="main">
<div id="content">
{{ content }}
</div>
</div>
</body>
</html>

28
_layouts/default.html Normal file
View file

@ -0,0 +1,28 @@
<!DOCTYPE html>
<html lang="en">
{% include head.html %}
<body>
{% if page.title == "Home" %}{% include particles-home.html %}{% endif %}
{% if page.title == "404" %}{% include particles-404.html %}{% endif %}
<div class="container">
<div class="row justify-content-center">
<div class="col">
{{ content }}
</div>
</div>
</div>
<script src="{{ '/assets/js/bootstrap.min.js' | prepend: site.url }}"></script>
{% if page.title != "404" %}
<!-- <script src="{{ '/assets/js/darkmode.js' | prepend: site.url }}"></script> -->
{% endif %}
{% if page.title == "Home" or page.title == "404" %}
<script src="assets/js/particles.min.js"></script>
<script src="assets/js/main.js"></script>
{% endif %}
</body>
</html>

View file

@ -32,6 +32,10 @@ header {
margin-bottom: 2em; margin-bottom: 2em;
} }
.card {
--bs-card-bg: #515151;
}
footer { footer {
margin: 2em 0; margin: 2em 0;
} }

Binary file not shown.

BIN
assets/files/thommy.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 255 KiB

13
cv.md
View file

@ -7,15 +7,4 @@ title: CV
{% include contact.html %} {% include contact.html %}
## Section {% include_relative resume.md %}
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
* Ut enim ad minim veniam
* Quis nostrud exercitation
* Ullamco laboris nisi
* Ut aliquip ex ea commodo consequat
### Subsection
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

BIN
img/craft.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
img/ditty.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 329 KiB

BIN
img/trip.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 KiB

BIN
img/tripoli.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
img/viu.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

BIN
img/zya.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1,024 KiB

View file

@ -3,17 +3,49 @@ layout: home
title: Home title: Home
--- ---
# About
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. # Thomas J. Webb
This is the home page. It can be used for a short introduction. [Click here](cv) to see the full CV, and [here](assets/files/cv.pdf) to download a print version. The theme also ships with a blog: [click here](posts) to scroll posts from the most recent. Finally, [click here](404) to see a page that can't be found. This is just a page I put up to help tech people get a hold of me, see what I've worked on or what I'm currently working on. If you feel like chatting about technology or have an idea feel free to contact me any of the ways listed below.
By default, the theme only contains these few pages in order to stay lean and flexible. However, it can be easily extended to accommodate more pages, [collections](https://jekyllrb.com/docs/collections/), [categories, and tags](https://jekyllrb.com/docs/posts/#tags-and-categories). ## Find Me
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. **@thomasjwebb**
Find me on [codeberg](https://codeberg.org/thomasjwebb), [github](https://github.com/thomasjwebb/), [gitlab](https://gitlab.com/thomasjwebb) and [Fediverse](https://haxe.social/@tjw).
You can also [e-mail me](mailto:thomas@thomasjwebb.com) or [request a meeting on Calendly](https://calendly.com/thomasjwebb/30min).
Below is a list of blog posts included for illustrative purposes. Make sure to delete or modify them before deploying your website. **@osakared**
Find me on [Fediverse](https://haxe.social/@osakared) and [twitch](https://www.twitch.tv/osakared).
**chat**
Message me on Matrix (@thomas:osakared.com) or [discord (tamsynne)](https://discord.com/users/tamsynne).
## Portfolio
{% include portfolio.html %}
## Writings
[Avoiding Social Media Lock-In With ActivityPub](https://osakared.com/blog/2023-07-09-avoiding-social-medial-lockin)
2023-07-09
Small and larger businesses are well aware of the importance of owning their online presence and diversifying their social media strategy...
[The Company is Sometimes Wrong](https://osakared.com/blog/2022-02-15-the-company-is-sometimes-wrong)
2022-02-15
The bane of every retail worker's existence is the old saying, “the customer is always right”...
[Strengths and Weaknesses of Using Haxe for Audio Development](https://thomaswebb.net/2019/05/10/strengths-and-weaknesses-of-using-haxe-for-audio-development/)
2019-05-10
At the Haxe Summit, I did a talk about doing audio programming in haxe...
[Static Websites with Terraform, Netlify and NS1](https://thomaswebb.net/2018/03/22/static-websites-with-terraform-netlify-and-ns1/)
2018-03-22
This is a wider card with supporting text below as a natural lead-in to additional content.
## Overview
The below is copied from my [github page](https://github.com/thomasjwebb/)
{% include_relative README.md %} {% include_relative README.md %}

53
resume.md Normal file
View file

@ -0,0 +1,53 @@
# Thomas J. Webb
Creative and insightful programmer. Sees the big picture to the minute detail and every important
step in between. Can turn the vision in your head into reality and then some.
<div id="webaddress">
<a href="thomas@thomasjwebb.com">thomas@thomasjwebb.com</a>
</div>
## Education
__Machine Learning Engineer Nanodegree, Udacity__
__Bachelors of Science in Business Administration, University of Phoenix.__
__Associate of Arts in Liberal Arts, Victor Valley Junior College, Victorville, CA.__
## Patents
`2015`
System and method for automatically converting textual messages to musical compositions (at Zya)
## Languages and Frameworks
C++ · C · Rust · Python · Haxe · C# · TypeScript · JavaScript · nodejs · React · Full-Stack Development · High-Performance Real-Time · Multi-Threaded Programming · Audio Programming · Machine Learning · Ruby · Ruby on Rails · Django · Embedded · Unity
## Employment and Contracts
`2022-2025`
__Lead Developer__, Trip Music
Managed a team of developers and turned a prototype of playlisting application into performant MVP that can be efficiently and affordably scaled. Rewrote major parts of application and rearchitected to improve performance and quality of machine learning output.
`2020-2021`
__Senior Software Engineer__, Verys
Did full-stack development for various clients, as well as updating tools for a AAA game developer in C++. Worked on B2B SaaS applications in django and ruby on rails.
`2018-2020`
__Audio Specialist__, PRO Unlimited @ Facebook
Helped build the internal multi-channel, ambisonic audio engine Meta/Facebook uses in internal projects in modern C++ and created an authoring tool for this engine in React and Electron.
`2016-2018`
__Senior Software Engineer__, Surge a Catalyte Company
Working on C++ code for the desktop, server or embedded. Making APIs for customers to use. Also worked with web technologies on the client or server side, including Ruby on Rails, Django, node and React.
`2010-2016`
__Senior Software Engineer__, Zya Inc., Calabasas, CA
Improved high performance realtime audio and music engine for music making game. Ported code to server environment. Created speech synthesis microservices. Got named on patent for fully integrated music theory and DSP system I helped design.

5
resume_print.md Normal file
View file

@ -0,0 +1,5 @@
---
layout: cv_print
title: Thomas J. Webb's resume
---
{% include_relative resume.md %}