stratts

joined 1 year ago
 

I recently rebuilt a moderately sized jQuery application/component using Lit, with the end result being 6-7 components spread over around 2,000 lines of code.

We currently have no automated testing at all but I'd like to implement it, especially now as the markup/styles have been moved into JavaScript. It's much better overall - but it feels riskier.

But I have no idea where to even begin. Do I set up end to end tests using Playwright on site? Can I test the components individually? Keeping in mind as well that we don't use a build system/any sort of CI.

Just wanted to get people's thoughts/experiences here.

[–] [email protected] 12 points 1 year ago (2 children)

I use a single monitor AND a light theme for my IDE.

 
[–] [email protected] 9 points 1 year ago (1 children)

We have !programming_horror 🙂

[–] [email protected] 2 points 1 year ago* (last edited 1 year ago) (1 children)

GSMarena's HTC Titan review is funny in hindsight: https://www.gsmarena.com/htc_titan-review-675.php

It's significantly smaller than the 'small' S23

[–] [email protected] 3 points 1 year ago* (last edited 1 year ago)

The Galaxy S21/22/23 is slightly larger than the OP's Pixel 5 however. The Zenphone 9 might be a good option as it's around 2mm narrower - not a lot but it'd be noticeable for one handed usage.

[–] [email protected] 1 points 1 year ago

You can't beat yourself up too much over code you wrote in the past, especially if you're just starting and you learn from your mistakes.

I'm the only dev at my company, so most of the code was written by an external dev a while back. They very occasionally do some work for us still and their code written today is just a shitty as it was 4 years ago.

26
SCSS nesting (programming.dev)
 
  • This file is over 20k lines long, and 400kB

  • It is nested over 10 levels deep in many places

  • There is no naming consistency. The original file used BEM, but now it switches randomly between whatever the devs felt like at the time. There are random contractions all over the place (eg, a parent container might have the class payment-items, but the children are p-item)

  • There is no style consistency. It switches randomly between kebab case, camel case, snake case, a mix of kebab and snake case (!!) or no case at all (just one long word with no separators). A parent element might use one case, but then the child element will use a different case for the exact same term

[–] [email protected] 4 points 1 year ago

My understanding is that it’s just the large nozzle extension that’s made of niobium as it’s radiatively cooled - the upper part of the bell and the combustion chamber is cooled by pumping propellant between the walls, so it can just be made of steel.

This is what the Merlin Vacuum engine looks like without the nozzle extension (though this is 1C):

It’s possible that the ‘stubby’ engine is just this.

[–] [email protected] 5 points 1 year ago (1 children)

You're right, this is some homebrew I wrote for my DS when I was in highschool.

But it was nothing as clever or logical as that! I think I had read somewhere that floats were really expensive on the DS ARM9 CPU, as was division (?). So to allow fractional values for object positions, etc, you would store them in an integer at 256x their true value, then shift it by 8 to the right to 'divide' by 256 and get the proper value back.

Not sure whether this was actually true, but either way this would've been completely cancelled out by calling that 'lowestXInObj' function 20 times per frame - it loops through every object in the scene!

 
[–] [email protected] 6 points 1 year ago (1 children)

Could we get programminghorror (Programming Horror) please? I've got some content to post 😆