@topspin said in The Official Status Thread:
@accalia they didn't want War and Peace as a bed time story?
i have been tempted to try to set that.......
@topspin said in The Official Status Thread:
@accalia they didn't want War and Peace as a bed time story?
i have been tempted to try to set that.......
@topspin said in The Official Status Thread:
@accalia that’s a “I’ll sooner quit” kind of password policy.
i've more or less stopped logging in, just sending my manager the time off requests via email
i say requests.... they're more notifications of what time i'll be taking off.
@Tsaukpaetra said in The Official Status Thread:
@accalia said in The Official Status Thread:
Resizing
Should just be a parameter in the png, right?
....
....
Right?
mkdir Big\ Stickers; mv *.png Big\ Stickers;ls Big\ Stickers/|while read i; do echo $i; magick "Big Stickers/$i" -resize 128x128 "$i"; done
@BernieTheBernie funny you should mention that.
I had to call support once and they got through the prelims and they needed me to give a security question
Okay, i just need you to tell me the name of the street you grew up.... that can't be the correct answer
NOVEMBER WHISKEY mike STAR PAPA november zulu ROMEO bravo BANG two HASH yankee yankee AMPERSAND quebec hotel PERCENT..
woah woah woah. stop. i'm not gonna make you read the whole thing there's like a hundred characters here
A hundred and twenty eight actually.
right.... well you're clearly you.... moving on....
@dkf said in The Official Status Thread:
@accalia Time for a fox-squashed-into-a-box sticker? That idea has possibilities.
i still have the bigger versions and i'm not afraid to use them. :P
@Gustav said in The Official Status Thread:
@accalia they're okay now.
BTW, thanks @kazitor for that CSS snippet!
oi! you made it even tinier!!!!!!!!!!!!! you can barely see me at all there!
look, it's not that bad!
@Tsaukpaetra said in The Official Status Thread:
status: I fucking hate expiring passwords that also need to have a ten password remembrance.
you'll hate my work's time and attendance software then that i have to login to once a quarter or so to submit time off requests that has
Resizing my stickers to not be so big because apparently they're too big.....
>_>
@kazitor said in Forum customization:
.posts > [data-uid="650"] > .content .img-responsive { max-height: 100px !important; }
CC @loopback0
OI!
@loopback0 said in The Official Status Thread:
What's the HTTP error code for too many cartoon foxes?
it doesnt' exist. because it's impossible to have too many.
i have an ancient HP printer from the start of the era where they started to try to lock out the consumer..... but before they baked the nags into the printer, so it was just in the windows driver. since I print in Linux none of the non compliant toner nags actually work and the printer prints just fine so i can use refurb/third party toner.
that being said when the thing finally packs it in i'm yeeting it and gonna go to kinkos the one time a year i need to print out a hardcopy.
I've been using the same ream of paper to print for so long the paper's yellowing before i even print anything on it.... so it's not like using someone else's printer will be an issue.
@Zerosquare said in The Official Status Thread:
Because @Accalia likes making the world more weird?
also this
@Gustav said in The Official Status Thread:
@accalia if the IT industry had something like the bar association, I'd immediately report you for a crime of sending client error code for a server-side issue. Unfortunately we still live in technological wild west so the most I can do is yell at clouds (where the app in question is likely located).
There's a perfectly fine 503 specifically invented for this exact use case. Why won't you use it?
acctually.. i AM sending a 500 series http status code.
the hooman readable markup delivered is status 418 because lol. but the machine readable status is using HTTP503 return code. :p
@Zerosquare said in The Official Status Thread:
: A client called to complain about a fox with weird eyes. I have no idea what he's talking about, but fix it!
just used this as an outage page on work applications we're taking down for maintenance.
@Tsaukpaetra if you're hot, make sure you drink plenty of water. we dont' want you getting heat stroke.
@Tsaukpaetra said in The Official Status Thread:
@accalia said in The Official Status Thread:
i will be the most productive developer EVER
Splooshing code all over the place!
Splooshing you say?
@izzion said in The Official Status Thread:
@accalia said in The Official Status Thread:
unless i'm getting paid by the line, then of course i'm gonna do that.
Sounds like a complaint to bring to management on this job
if i'm getting paid per line of code written i will be the most productive developer EVER
@error said in The Official Status Thread:
Got the tests to pass!
The entire application fails to load. But the tests pass!
(Everything was working fine before I added tests.)
i know that pain.... all the tests pass, but the app no work.... yeeeep...... i know that pain too well.
@topspin said in The Official Status Thread:
@accalia said in The Official Status Thread:
expect(this.AppStub.get.firstCall.args).to.have.lengthOf(2)
I have to say I don't find this "fluent" method chaining nearly as readable as whoever came up with it imagined it to be.
yeah. i'm not sure i prefer it over Assert.equals
and friends...
/shrug
it's what i chose for this project so it's fine.
at least i did decide to reject the library's suggestion to make only a single assert per test.... that's just bonkers. unless i'm getting paid by the line, then of course i'm gonna do that.
Going Postal
as i write these tests. how apropos
Status: I forgot that i added this to my project.... well now it's codified into the tests that it has to be there.
@test
async 'it should set Clacks Overhead' () {
await start(3030)
expect(this.AppStub.get.callCount).to.equal(1)
expect(this.AppStub.get.firstCall.args).to.have.lengthOf(2)
expect(this.AppStub.get.firstCall.args[0]).to.equal('/*')
const fn = this.AppStub.get.firstCall.args[1]
expect(fn).to.be.a('function')
const resultStub = {
set: sinon.stub()
}
const nextFn = sinon.stub()
fn(undefined, resultStub, nextFn)
expect(resultStub.set.callCount).to.equal(1)
expect(resultStub.set.firstCall.args).to.deep.equal(['X-Clacks-Overhead', 'GNU Terry Pratchett'])
expect(nextFn.callCount).to.equal(1)
expect(nextFn.calledAfter(resultStub.set)).to.equal(true)
}
export default async function start (port: number) {
const [app, server, websockets] = Functions.CreateApp(port)
Functions.ConfigureBaseApp(app)
await Functions.RegisterRouters(app, server, websockets)
Functions.ConfigureLoggingAndErrors(app)
Functions.RegisterViewsAndMiddleware(app)
app.get('/*', (_, res, next) => {
res.set('X-Clacks-Overhead', 'GNU Terry Pratchett')
next()
})
Debouncer.startTimers()
return { app, server }
}
Vixavil [Vix] Hadaliv (the grey fox) is utterly adorbz.
@kazitor said in The curious case of the disappearing Polish S:
- Lack of API for intercepting save action, or non-use of it if so. There’s no guarantee that saving is triggered by ctrl+S, and as long as it’s possible to intercept arbitrary keyboard shortcuts, it might as well be possible to intercept their intended actions directly and explicitly.
i'd argue the attempt to block the user from saving at all is a sin, right up there with disabling the right click menu, highlighting, copying, etc.... none of that is going to stop someone who is determined but it is gonna piss them off something fierce, and there are legitimate reasons why someone would want to save a local copy of a webpage, or right click, or highlight and copy text...
>_>
<_<
@Zenith said in The Official Status Thread:
Status: How many times do I need to say “I’ve never ever gotten a phone or tablet to print to a printer” before people stop asking me how to set that up?
Instead of telling them that you've never gotten it to work, assert with 100% confidence that it is impossible.
then either they will prove you wrong and do it themselves just to prove it to you, thereby solving the problem without your involvement. or they'll stop asking you and stop trying to print things out because at this point all printers are just scams to make money for printer companies by making ink cost more per page than it would to carve the page out of granite.
in either case it's a win.
@TimeBandit said in The Official Status Thread:
@accalia said in The Official Status Thread:
that explains why the postgres use is so low, not why the nodejs transpiled typescript app is taking over a gig to serve a webpage
Welcome to the modern web
i'm genuinely scared to even expose this app to the internet.... but your point is well made
@dkf said in The Official Status Thread:
@accalia said in The Official Status Thread:
it's not like ungodly amounts, and it's pretty steady at thata amount, but still.. i should figure out what all it is.
Postgres likes to fork processes off per connection, meaning you have very little in the way of memory consumption when there aren't any active connections. (It also does clever things with shared memory segments.)
that explains why the postgres use is so low, not why the nodejs transpiled typescript app is taking over a gig to serve a webpage.... :D
Seen at the top of a powershell script by one of my coworkers
'use sanity' | Out-Null
# Good luck with that... theres no sanity to be found here
@PleegWat said in The Official Status Thread:
@accalia said in The Official Status Thread:
also you silly fox. it's practically 23:00 and you're still programming.... go to bed!
Wouldn't a fox prefer a basket?
what do you think i meant by bed? :P
@dkf said in The Official Status Thread:
@accalia said in The Official Status Thread:
it used to be running off sqllite, but then i started doing more complicated database things and the poor file based database coulnd't keep up.
You need to be doing something pretty intense for that to be true. Like seriously parallel write workloads or something like that.
For reference, I use it to handle lots of data, the raw data streams from our simulations (replacing a vast pile of binary files that were a complete PITA to manage in multiple ways at once), and I've used it to power a parallel web service implementation — it involved paying attention to keeping write transactions short — so even things that normally look impossible are actually quite doable. I'm not saying that it has no limits (of course it has them!) but such limits aren't usually hit when doing single-user work.
could be i was pretty inefficiently using it before....
I should actually test performance on sqlite again after i finish my tests... mayeb i've fixed the issues with performance taht caused me to have those issues, by not doing brain dead queries.
course now i have all the data in postgresql so...... i guess i'll have to migrate off of that
and i should probably figure out why the app has the postgreql container consuming 0.00431 / 134 GB and the actual app consumes 1.22 / 134 GB
that's a lot of RAM for what its doing.....
it's not like ungodly amounts, and it's pretty steady at thata amount, but still.. i should figure out what all it is.
@accalia then again...... this is a single user app, and that one user is.... pretty odd.....
@Atazhaia somehow i doubt that would be performant at all....
@Zecc said in The Official Status Thread:
@accalia To make matters worse, your
;
key seems to be broken.
it's not broken.
this is a personal project so i made some.... decisions.. :D
it's in typescript because why not, and it has a VERY opinionated linter configured that rejects the idea of semicolons. javascript doesn't actually need them so the linter i chose refueses to let me use them. :D
it used to be running off sqllite, but then i started doing more complicated database things and the poor file based database coulnd't keep up.
i've been thinking about moving to nosql, but i just don't see that working. the data i'm operating on is very much a relational schema....
I could drop the db entirely andjust drop text files on the hard drive in the directory structure i'm maintaining, but that's a bit too much code smell for me....
@accalia i have actually found and fixed a bug that was annoying me for ages where i was double counting a sum when doing a database operation leading me to have to do a divide by two to correct it.
now i know how i was double counting that ONE record out of 90k and have fixed the bug, allowing me to remove the unnecessary hard coded divide by two statement.
see you silly fox, testing is worth it! <3
also you silly fox. it's practically 23:00 and you're still programming.... go to bed!
@Tsaukpaetra said in The Official Status Thread:
@accalia said in The Official Status Thread:
she still insists
Sounds like it's time for malicious compliance!
i tried that.... but i caught myself and made myself do stairs for half an hour as punishment.....
@Tsaukpaetra said in The Official Status Thread:
@accalia said in The Official Status Thread:
in typescript
Now I know to push back adding tests to my project.... Thanks for the hint!
i pushed back as well, but my boss for this project wouldn't let me skive off and omit them. I tried to tell her that that means she has to write the tests because she is me and this is a personal project, but that didn't help and she still insists.
@_@
mocking out database calls to test code makes my brain hurt..... doubly so in typescript
@suite
export class SyncFoldersSyncRemovedFoldersTests {
LoggerStub: Sinon.SinonStub = sinon.stub()
LoggerFake = this.LoggerStub as unknown as Debugger
KnexInnerInstanceStub = {
select: sinon.stub().returnsThis(),
from: sinon.stub().returnsThis(),
whereRaw: sinon.stub().returnsThis()
}
KnexInstanceStub: { whereNotExists: Sinon.SinonStub, delete: Sinon.SinonStub } = {
whereNotExists: sinon.stub().callsFake((fn) => {
fn.apply(this.KnexInnerInstanceStub)
return this.KnexInstanceStub
}),
delete: sinon.stub().resolves(0)
}
KnexFnStub = sinon.stub().returns(this.KnexInstanceStub)
KnexFnFake = this.KnexFnStub as unknown as Knex
begin () {
// ...
}
after () {
// ...
}
@test
async 'it should create QueryBuilder on SyncItems table' () {
// ...
}
// ...
}
@BernieTheBernie said in Things that remind you of WDTWTF members:
***c++
-reads that-
-tries to parse what that statement does-
-screams in terror, for that code heralds the awakening of the ancient ones-
-flees-
@HardwareGeek said in Wallpapers:
@accalia said in Wallpapers:
sicne
Welcome back!
Me fail english? That unpossible!
@loopback0 i'm sure there's better outlets than even that.
take pictures of them and mod them into a DOOM WAD and go to town..... as an example.
just either get REALLY good at bosskeying or don't do that at work.
@Arantor honestly, in my experience as a techie.......
regardless of the reason for creating the moniker, working with someone who has adopted it gets pretty fatiguing quickly itself.
I get being frustrated and annoyed at users, but... there are better outlets i feel.
/shrug
you know.... i've never liked the term luser.....
it evokes a combative relationship between a user and the tech who support them.... and that's not a healthy work dynamic....
and sicne this is the wallpaper thread..... why not have a fall themed one.
@Tsaukpaetra said in Wallpapers:
@accalia said in Wallpapers:
And
In VR Too?
HTC Vive Pro.
I need to use it more than i actually do
@PleegWat i should look into those.... that would be handy!
@dkf very true. i have some teabags that i enjoy when i'm in a hurry, but if i have the time to do a proper brew nothing beats looseleaf <3
@PleegWat to be honest. i prefer loose leaf.
but it's rather hard to draw a mug of tea with the steeper still in and have people know what it is. so in the name of people not misidentifying which variety of hot brown i prefer i went with a teabag for the arts.