Ich steh auf elektronische Ohrenzerstörung, herzlichen Dank für die Horizonterweiterung
Was zum Fick ist Gabber, und warum geht es so hart? Eigentlich nicht so ganz meine Ecke, aber mit hart verzerrten Gitarren stell ich mir das echt geil vor. Gibt es Gabbermetall schon?
Thank you. Funny enough, just today I chatted with a colleague that mentioned one of the tools was technically available to us, but actually not approved for use. Ordering it wouldn’t be an issue, but getting it signed off would be quite the chore.
The fun comes when there is no actual data model. All in all, I’d say being familiar with the data model is about 60% of my job. 35% is building queries and query scripts for people who need regular exports. 5% is running after other people’s fuckups.
Strap in, because this is a ride.
There is a raw database from a decade-and-a-half old app, which I get to access through a layer of views that does some joining, but not all, with absolutely no documentation on how the original database is structured or where things are pulled from or what anything refers to. No data dictionary, no list or map of key relations, some objects are mapped in two different views, no semantic naming of columns.
If you want to want to query order part delegations by who they’re assigned to (Recipient in the app) you need to use the foreign key RefAssignmentUnit
. The “Assignment” unit that did the delegation is just RefUnit
. If you have orders that were created by a salesperson on behalf of a customer, OrderingPerson
(also a foreign key, but not named Ref-) is the customer, while OrderingPerson2
is the salesperson that entered the order. Don’t confuse that with Creator
, which for orders created through the web form is usually a technical user, unless the salesperson is one of the veterans that use the direct app in which case it’ll be the salesperson while OrderingPerson2
is null.
Also, we have many-to-many relationships that are mapped through reference tables… whose columns are named object
and reference
for each and every one. Have fun trying to memorize which refers to which so you don’t need to look it up every damn time.
Create my own views to clean this up? Nope, only the third party service providers for the app can do that, and they don’t wanna. Our internal app admin (singular) can use some awkward tool to generate those views, but there’s no reverse lookup to see what a given column refers to. Also, they have no concept for what actually constitutes a good model because they’re not really familiar with the database, just with the app.
Get my own serverless DB to create views that query the original DB? No can do, you’d need to order a whole server and that’s pricy.
Get a cloud DB? Sure, but it will be managed by the cloud team and if you want to have or edit custom views, you’ll get to create a project request. They’ll put it in the backlog and work it into some future sprint.
Get literally any tool that allows me to efficiently create reusable data prep so I don’t have to copy & paste the base transformations needed for a given query every fucking time and if the source DB ever changes I need to update all my query scripts? If you can somehow squeeze the time to prepare a convincing pitch - a full Power Point presentation, of course - between all your tedious and redundant query preparation and script maintenance, find a management sponsor willing to hear you out and hopefully propose your request to their superiors. Best case: It becomes a whole project - alternatives will have to be considered first, implications, security, costs, and you’ll be the one having to assemble and present that information to management only to have some responsible person point out that it would actually be the remit of a different team… that also works in sprints, has a backlog and will give you no control over your prep.
And obviously, the app provider doesn’t give us any advance notice of just what will change in the DB with the next update. We only learn that when a view breaks. The app admin can use the tool to refresh the affected views then, while I scramble to determine all the scripts that need to be updated and copy&paste the fix. If a user has been granted their own access to the database, odds are they’ll come crying to me when their modified versions of my queries break.
There is a lot I like about my job, I acknowledge the difficulties of a historically grown system and service contracts, but the rigid and antiquated corporate culture can go take a long walk off a short pier.
Aw shite, I’ve been pedant-baited? GG
Taken literally, that implies you do care.
(To mitigate the pedantry: Given it’s a rather dispassionate response in the context of a provocation, it is probably a very weak “care” though. Just because it’s nonzero doesn’t mean it’s significant.)
Last I heard, there were some issues about who owns the IP and copyrights? I’m not overly familiar, but legal jungle combined with corporate politics may be scary enough to navigate that Miyazaki would rather be careful around making explicit statements
People also seem to think giant eyes with no nose look cute… yeah, basically the meme.
As someone on the outskirts of Data Science, probably something along the lines of “Just what the fuck does my customer actually need?”
You can’t throw buzzwords and a poorly labeled spreadsheet at me and expect me to go deep diving into a trashheap of data to magically pull a reasonable answer. “Average” has no meaning if you don’t give me anything to average over. I can’t tell you what nobody has ever recorded anywhere, because we don’t have any telepathic interfaces (and probably would get in trouble with the worker’s council if we tried to get one).
I’m sure there are many interesting questions to be debated in this field, but on the practical side, humans remain the greatest mystery.
Survivor Bias - you only see the ones that “survive”, which may lead you to underestimate just how many tried and failed and vanished from attention.
So glad slavery got abolished*!
*terms and conditions apply
A chunk of their target audience aren’t really gamers so much as FIFA players. They don’t buy a lot of games, so they don’t mind splurging on the newest and most up to date installment of their favourite soccer sim once per year.
Two years
A few major events
My god, they must’ve really fucked up their shit
A boomerang is a clip that plays and rewinds in a loop, like it’s flying to the end of the clip and returning like a boomerang.
I don’t even use Instagram myself, why do I know this
I think the issue is that it’s not also millenial-universal. If only some millenials know it, the rest of us is left out.
I can still operate the iPod though, so I don’t need to know who it is to look for and select.
Das ist der ekligste Brenn den ich über einen Dialekt gelesen habe.
Hast du auch einen zu Schwäbisch?
If you’re looking for good code, you missed the point of my comment 😄
If I was looking for an enumeration of valid inputs, I’d make it a selection box rather than a text field that’s supposed to contain a number and give the selections reasonable names. If I want an integral quantity, I’d use a number input field.
If I have no control over the frontend, that means I’m writing a backend in JS for a bullshit frontend, and no amount of good coding practice is going to salvage this mess.
I’m also blessedly far away from WebDev now. I work in Data Analytics and if I ever have to do any of this for a living, something has gone very wrong.
Converting texts into numbers or dates still haunts me though - fuck text inputs for numbers and dates.
Some Sekiro, some X3: Terran Conflict. Taking on a whole squadron of enemies with a single (albeit powerful) ship to calmly dispatch them one by one is just the perfect mix of cozy and power fantasy for me to wind down between the more fast-paced sections of “Let’s chop you down as fast as possible because the longer the fight drags on the more mistakes I’ll make”.
Actually, compared to the US at least, we do get decent comp. I believe the meme spawned from that one incident was more along the lines “We want Pizza Parties” because we’ve got the rest already.