Compare commits
No commits in common. "b613b4539470260d489aa35af751dee3dd9094de" and "22c1cb29dd0730bb7eb1e91b77ff70e1ffb5007b" have entirely different histories.
b613b45394
...
22c1cb29dd
7 changed files with 28 additions and 117 deletions
48
Gemfile.lock
48
Gemfile.lock
|
@ -83,58 +83,58 @@ GEM
|
||||||
rb-fsevent (0.11.2)
|
rb-fsevent (0.11.2)
|
||||||
rb-inotify (0.11.1)
|
rb-inotify (0.11.1)
|
||||||
ffi (~> 1.0)
|
ffi (~> 1.0)
|
||||||
rexml (3.3.8)
|
rexml (3.3.7)
|
||||||
rouge (4.4.0)
|
rouge (4.4.0)
|
||||||
safe_yaml (1.0.5)
|
safe_yaml (1.0.5)
|
||||||
sass-embedded (1.79.4)
|
sass-embedded (1.79.2)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
rake (>= 13)
|
rake (>= 13)
|
||||||
sass-embedded (1.79.4-aarch64-linux-android)
|
sass-embedded (1.79.2-aarch64-linux-android)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-aarch64-linux-gnu)
|
sass-embedded (1.79.2-aarch64-linux-gnu)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-aarch64-linux-musl)
|
sass-embedded (1.79.2-aarch64-linux-musl)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-aarch64-mingw-ucrt)
|
sass-embedded (1.79.2-aarch64-mingw-ucrt)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-arm-linux-androideabi)
|
sass-embedded (1.79.2-arm-linux-androideabi)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-arm-linux-gnueabihf)
|
sass-embedded (1.79.2-arm-linux-gnueabihf)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-arm-linux-musleabihf)
|
sass-embedded (1.79.2-arm-linux-musleabihf)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-arm64-darwin)
|
sass-embedded (1.79.2-arm64-darwin)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-riscv64-linux-android)
|
sass-embedded (1.79.2-riscv64-linux-android)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-riscv64-linux-gnu)
|
sass-embedded (1.79.2-riscv64-linux-gnu)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-riscv64-linux-musl)
|
sass-embedded (1.79.2-riscv64-linux-musl)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86-cygwin)
|
sass-embedded (1.79.2-x86-cygwin)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86-linux-android)
|
sass-embedded (1.79.2-x86-linux-android)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86-linux-gnu)
|
sass-embedded (1.79.2-x86-linux-gnu)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86-linux-musl)
|
sass-embedded (1.79.2-x86-linux-musl)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86-mingw-ucrt)
|
sass-embedded (1.79.2-x86-mingw-ucrt)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86_64-cygwin)
|
sass-embedded (1.79.2-x86_64-cygwin)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86_64-darwin)
|
sass-embedded (1.79.2-x86_64-darwin)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86_64-linux-android)
|
sass-embedded (1.79.2-x86_64-linux-android)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86_64-linux-gnu)
|
sass-embedded (1.79.2-x86_64-linux-gnu)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
sass-embedded (1.79.4-x86_64-linux-musl)
|
sass-embedded (1.79.2-x86_64-linux-musl)
|
||||||
google-protobuf (~> 4.27)
|
google-protobuf (~> 4.27)
|
||||||
terminal-table (3.0.2)
|
terminal-table (3.0.2)
|
||||||
unicode-display_width (>= 1.1.1, < 3)
|
unicode-display_width (>= 1.1.1, < 3)
|
||||||
unicode-display_width (2.6.0)
|
unicode-display_width (2.6.0)
|
||||||
webrick (1.8.2)
|
webrick (1.8.1)
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
aarch64-linux
|
aarch64-linux
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<title>{{ page.title }} - {{ site.title }}</title>
|
<title>{{ page.title }} - {{ site.title }}</title>
|
||||||
<link rel="stylesheet" href="/assets/css/main.css?v=2" />
|
<link rel="stylesheet" href="/assets/css/main.css" />
|
||||||
<link
|
<link
|
||||||
rel="alternate"
|
rel="alternate"
|
||||||
type="application/rss+xml"
|
type="application/rss+xml"
|
||||||
|
|
|
@ -48,7 +48,7 @@ _I also want to call out and thank TNT in particular for their help with
|
||||||
sustainability!! The NeoPass partnership has been a genuine game changer—I'll
|
sustainability!! The NeoPass partnership has been a genuine game changer—I'll
|
||||||
talk about it more below!_
|
talk about it more below!_
|
||||||
|
|
||||||
### Stability: Changes to keep the site running {#stability}
|
### Stability: Changes to keep the site running
|
||||||
|
|
||||||
At the start of the year, DTI was… uhhh, often broken 😖 We'd have multiple days
|
At the start of the year, DTI was… uhhh, often broken 😖 We'd have multiple days
|
||||||
of downtime, and I'll be real with ya: it was _mostly_ an awareness and time
|
of downtime, and I'll be real with ya: it was _mostly_ an awareness and time
|
||||||
|
@ -74,7 +74,7 @@ smarter about it. So, hey—we're being smarter!
|
||||||
With these changes, it's been months since our last like, _major_ downtime
|
With these changes, it's been months since our last like, _major_ downtime
|
||||||
event. We're still not as consistent as I'd like to be, but hey—more to come!
|
event. We're still not as consistent as I'd like to be, but hey—more to come!
|
||||||
|
|
||||||
### Simplicity: Cleaning house, clearing hallways {#simplicity}
|
### Simplicity: Cleaning house, clearing hallways
|
||||||
|
|
||||||
The high-level goal here is: **I want to remove Impress 2020, but only once we
|
The high-level goal here is: **I want to remove Impress 2020, but only once we
|
||||||
no longer need it**.
|
no longer need it**.
|
||||||
|
@ -121,7 +121,7 @@ We'll check in with y'all before retiring Impress 2020 altogether, I think
|
||||||
there's still plenty of steps along the way! We're just doing our best, bit by
|
there's still plenty of steps along the way! We're just doing our best, bit by
|
||||||
bit.
|
bit.
|
||||||
|
|
||||||
### Sustainability: Finding more time, with TNT's help {#sustainability}
|
### Sustainability: Finding more time, with TNT's help
|
||||||
|
|
||||||
At the start of the year, the reality of the situation was just… I did not
|
At the start of the year, the reality of the situation was just… I did not
|
||||||
_have_ volunteer hours available to give to DTI. What time I _did_ have for
|
_have_ volunteer hours available to give to DTI. What time I _did_ have for
|
||||||
|
|
|
@ -1,83 +0,0 @@
|
||||||
---
|
|
||||||
layout: post
|
|
||||||
title: "This week in DTI: Performance upgrades!"
|
|
||||||
date: 2024-10-03 14:47:00 -0700
|
|
||||||
author: Matchu
|
|
||||||
excerpt: |
|
|
||||||
<p>Things got a bit slow this week—so we made three changes to improve pageload times across the site! <em>(Also, I'm job-hunting right now!)</em></p>
|
|
||||||
---
|
|
||||||
|
|
||||||
Hi, everyone! You might've noticed earlier this week that DTI had started to
|
|
||||||
stutter a bit. We experienced a bit of a traffic spike, and pageloads would
|
|
||||||
sometimes start taking a few seconds. (My phone was ringing off the hook to let
|
|
||||||
me know!)
|
|
||||||
|
|
||||||
![Screenshot of my email inbox: many emails on Sep 30, from health@openneo.net, saying "GlitchTip: Dress to Impress is down" or "is back up"](/assets/images/posts/2024-10-03-perf-upgrades/email.webp)
|
|
||||||
|
|
||||||
When we dug into it, there wasn't any _specific_ cause—just a bit more pressure
|
|
||||||
causing our database to max out our server's CPU a bit too often.
|
|
||||||
|
|
||||||
Rather than just throw more CPU at the problem (always an option, but never a
|
|
||||||
cheap one!), we popped open the slow query log. We found the worst offenders,
|
|
||||||
and started getting to work fixing database queries that have _always_ been a
|
|
||||||
bit slow—in some cases, for many years!
|
|
||||||
|
|
||||||
Here's the three big changes we made:
|
|
||||||
|
|
||||||
- **Item searches:** We
|
|
||||||
[sped](https://code.openneo.net/OpenNeo/impress/commit/efda6d74ab6b9405cd563ccc72bb45b4f10eabe3)
|
|
||||||
[up](https://code.openneo.net/OpenNeo/impress/commit/efda6d74ab6b9405cd563ccc72bb45b4f10eabe3)
|
|
||||||
some of our tougher filters (`occupies` and `fits`) from taking a couple
|
|
||||||
seconds at worst, to always nearly instant! _(We did this by "caching" more
|
|
||||||
data about the item's appearance onto the item record itself.)_
|
|
||||||
- **Trade listings:** Earlier this year, we added the Offering/Seeking pages to
|
|
||||||
Classic DTI, and built them faster than the Impress 2020 versions. Now, we've
|
|
||||||
[deleted](https://code.openneo.net/OpenNeo/impress-2020/commit/067da33025cbf5ed92707efa1558a658135e310e)
|
|
||||||
Impress 2020's slower version of the page, redirecting to Classic's faster one
|
|
||||||
instead. _(This brings us closer to [merging
|
|
||||||
the apps]({% post_url 2024-09-20-state-of-dti-2024 %}#simplicity), too!)_
|
|
||||||
- **Modeling progress:** When we're missing data for new items, we ask for help
|
|
||||||
at the bottom of the homepage—and we
|
|
||||||
[used the same upgrades](https://code.openneo.net/OpenNeo/impress/commit/03e4233f67935b6e8998904d41305fb41f7660af)
|
|
||||||
from item searches to make this faster, too. _(We also
|
|
||||||
[fixed](https://code.openneo.net/OpenNeo/impress/commit/fe4db1b60571cbc2b6d295cfc1230f2ebbc6f3bb)
|
|
||||||
the long-standing bug of Maraquan items asking for more help than we need!)_
|
|
||||||
|
|
||||||
And these changes don't just affect these features: when our CPU starts to peak,
|
|
||||||
_everything_ gets slower. And so when we make the site more efficient and stop
|
|
||||||
hitting those limits, _everything_ gets faster!
|
|
||||||
|
|
||||||
Since then, the site has been back to being steady, and I've been glad to see
|
|
||||||
item searches—one of the most common things that happens on the site—run much
|
|
||||||
faster for everyone!! And it's always a joy to clean up decade-old code and
|
|
||||||
bring it closer to what it always deserved to be 🥰
|
|
||||||
|
|
||||||
Hope everyone's doing well, and that you've got fun Halloween plans! I'm excited
|
|
||||||
to see your pets all dressed up again this year!!
|
|
||||||
|
|
||||||
## By the way, I'm job-hunting right now! {#job-hunting}
|
|
||||||
|
|
||||||
After a few years consulting part-time, I'm looking for a full-time role again!
|
|
||||||
(The tech layoffs came for me and my family, whuh oh—time to step it up!)
|
|
||||||
|
|
||||||
_\[Lore dump!\]_ In addition to running Dress to Impress for 15 years, I've also
|
|
||||||
been a senior engineer and tech lead at an edtech nonprofit (2015–2020), focused
|
|
||||||
in B2B partnerships, team mentorship, and building integrated platforms to
|
|
||||||
support multiple products across teams.
|
|
||||||
|
|
||||||
I'm primarily looking for remote roles hiring in the United States, leveled at
|
|
||||||
senior or staff—but some of that could be flexible for the right situation!
|
|
||||||
|
|
||||||
Right now, I'm especially interested in:
|
|
||||||
|
|
||||||
- Consulting firms, especially with a focus in nonprofit
|
|
||||||
- Stewarding critical integrations long-term, like identity or payments
|
|
||||||
- Shifting to information security, or technical writing
|
|
||||||
- Engineering management, for the right human-focused team
|
|
||||||
|
|
||||||
If you happen to have an opportunity, please
|
|
||||||
[reach out](mailto:dti-jobs-thank-youuu@matchu.dev) and let me know! It'd help
|
|
||||||
me out a lot.
|
|
||||||
|
|
||||||
Thanks for taking a look!
|
|
||||||
_—Matchu_
|
|
|
@ -123,12 +123,6 @@ article {
|
||||||
h3 {
|
h3 {
|
||||||
font-size: 1.5em;
|
font-size: 1.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
p img {
|
|
||||||
display: block;
|
|
||||||
max-width: 50%;
|
|
||||||
margin-inline: auto;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.posts {
|
.posts {
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 128 KiB |
Binary file not shown.
Before Width: | Height: | Size: 61 KiB |
Loading…
Reference in a new issue