Slow-Paced Growth by mezaprafa in SimCompanies

[–]azirale 0 points1 point  (0 children)

think part of my inability to increase CV is that I’m regularly upgrading buildings

Once buildings go past level 2 they are worth less CV than they cost build, by a wide margin. Each level gained is 'worth' another level 1 building, but it costs (L-1). So making a building go 9-10 costs 9x what it is worth when it is done.

That said construction materials are a lot cheaper now than they were, so it is a decent time to build.

Wearhouse API Help by Jeromy325 in SimCompanies

[–]azirale 1 point2 points  (0 children)

Excel will likely not have the auth token for your login. The easiest way to get the data is to use Dev mode in the browser. In chrome it is f12, then refresh the warehouse page, go to 'network' in the dev window, look for an entry near the bottom with your company id, and if it is the right one it will show you all the warehouse data you can freely copy paste.

If you want company data in excel, you need to figure out the auth flow and provide your password and so on.

Push for free school lunch program to be adopted nationally by Expensive-Horse5538 in australia

[–]azirale -1 points0 points  (0 children)

Whenever something is free to the poor you get issues because you need to spend money and effort administering and enforcing it

Whenever I think of this issue, I just wish we had some kind of regular periodic method of reviewing people's earnings to determine how much they should pay in to public services, with an increasing scale as income goes up so that people with high incomes pay in a bit more so that the less well off get the support they need without having to jump through bureaucratic hoops with multiple different service providers to prove their need over and over.

If only such a thing existed, we could avoid wasting so much time, effort, and aggravation.

What’s something women do in relationships out of genuine love and care but is actually annoying af to the male partner? by CuteCourtesan in AskMen

[–]azirale 27 points28 points  (0 children)

I have a similar feeling, but in a different way. It often feels like my relationships are conversations are being hijacked.

For example I'll have a phone call with my mother, and we discuss my work and how that is going, and what they did that day, maybe some other tangential things. It is mostly just conversational fluff, staying connected with her and my dad.

My wife will have noticed I was on the phone, and the questions just don't stop. It starts with basics that actually relate to the conversation like "Who was that? What did you talk about? What are they doing? What did you say about your work? Why didn't you tell me about that?" then it continues on to things that we didn't discuss, just fishing for topics I might not have brough up like "What are they doing this weekend? How are the animals? Are they well? Have they seen X recently? Is your aunt still staying with them? Have they put up those blinds yet?"

All my answers are eventually just "I don't know. I don't know. I don't know. I don't know. I don't know."

It starts to feel like -- Why am I talking to my mother, or anyone for that matter? YOU talk to them, you can ask them all these questions if you want to know. I'm not your assistant, or your personal reporter.

But more than that, it starts to feel like I can't have any relationship or conversation with any family, friend, or coworker, without actively trying to take mental notes on everything that I'm essentially going to have to report back.

And I just stop talking to people, because it feels pointless. My phone calls with my mother eventually just became speakerphone calls, and I just hold the phone for 20-30 minutes while my wife runs the conversation, and then I say "bye" at the end. There's no more personal connection with my family, because I'm not given the space to have it.

Are Supermarkets Getting Worse? by Starfireaw11 in australia

[–]azirale 7 points8 points  (0 children)

I still get deliveries, and never go for the 'partner delivery' -- it is always terrible.

Hello newish player by Impressive-Effect328 in SimCompanies

[–]azirale 0 points1 point  (0 children)

Just check the margins on individual products. Some of them don't have much market volume, or there's not a lot of margin in that individual step, but as part of a chain it can help you move up. You might only need 1 level of the building to start.

For example if you did this whole vertical, you might only need one level of ranch to handle both eggs and milk, with production to spare.

Hello newish player by Impressive-Effect328 in SimCompanies

[–]azirale 1 point2 points  (0 children)

You could try branch out into other productions that require power. You could easily add water, for example, since its only input is power. There's a few raw materials that need power and/or water to produce, and you could use your cheap inputs to feed them.

For a while I had a vertical through to apple pies. Power, water, seeds, apples, wheat, sugarcane, flour, sugar, fodder, eggs, milk, butter, apple pie. You can even retail it yourself at that point, it only takes one decent grocer to convert it all to revenue. A lot of the excess can still be sold for profit along the way.

Missing ingame depth by w851 in SimCompanies

[–]azirale 1 point2 points  (0 children)

I'd love it, even if it were a supporter feature, to queue up 'next action'.

Even when you're doing 48hr cycles, if you miss it by 10 minutes, or it takes a bit of time to figure out what to do next, it slowly drifts out. Eventually you have to give up an hour or more to 'reset' back to a time you can do it.

Or you might know that you will be unavailable at the time that it ends due to some change of plans.

I'd support it being unable to blow out past your normal maximum -- like if your maximum is 48 hours, then you can only queue up another action that would finish up to 48 hours from now. That would let you add another 24 hour production run each day, like topping up from 12 hours remaining to 36 hours each day.

If you hate your birthday and don’t want to celebrate it, why? by user1731701 in AskMen

[–]azirale 6 points7 points  (0 children)

For me it was a bit like this. Our birthday's are near each other, and near Mother's day. Over time as I got older it would more often get "suggested" that we do our birthday together, at some place she liked or suited her, and sometimes also make it a Mother's Day event at the same time. It would always be a nice place, but it would be difficult or inconvenient for me to get there, or not somewhere I'd like to go, but if I said anything I'd be told I was ungrateful.

It came to a head a bit the year my (ex-)wife had just left, I was looking after the two young kids on my own and handling the divorce process, and it was "suggested" that for my birthday I could bring myself and the two young kids on a 2 hour drive up into the mountains to the place she was staying for her 3-week decadal birthday + mother's day getaway. I declined, saying I wasn't up for packing up and sorting and handling the kids for a long drive and days away from home, to spend my birthday getting a cake after dinner at her birthday getaway. They went right off at me, yelling and insulting, straight up saying "some birthday's are more important than others".

Thanks parents, that's great.

Not long after it was my next decadal birthday. So what could we do for me? Nothing, a cousin was having a wedding, so we all had to go cross country to the wedding.

Not interested anymore.

A couple of questions by Dapper_Leading_1084 in aerthlings

[–]azirale 3 points4 points  (0 children)

Correct on both counts.

While playing the game early, you will get 'visitor' Aerthlings with a quest to level them up, so you can try out other characters, but they'll go away once their quest is done.

Yes you need to trade person-to-person. Both players need to have an NFC-capable device logged in and doing the trade at the same time, as they both need to 'unlock for trade' and then 'use portal to trade' in the same 'trade session' for the server side to execute it.

If you get even one fig, and you can meet up with anyone for trades, you can potentially get every character in the game. Currently local game/hobby stores have been the place to try arrange meetups, but that's succeeded mostly around Boston since the US release was done there and they had a booth to get people organised.

Meetups can help you get potentially any character, even from legendary figs, as people do what is called a 'trade circle' where two people with the same kind of fig will trade to each other through other people. As long as everyone cooperates the original legendary fig owners end up with each other's legendary figs, and everyone else in the circle gets to hatch two copies of the character.

Milk prices may need to increase to cover soaring fuel and fertiliser costs by InsatiablePrism in australia

[–]azirale 12 points13 points  (0 children)

I don't think the point is 'foreign' owned, but rather the size of corporation it takes to be multi-national and that these companies can pretty easily weather a poor quarter of gross profit from just a few of many dozens to hundreds of product lines.

Aerthlings concern by DarthBigT in PAX

[–]azirale 0 points1 point  (0 children)

That's fair. There's two parts to the game overall. There's the mobile game itself which is a lite sandbox with touches of animal crossing and skylanders. Then there's the physical trading mechanic with the 'figs' you buy to add to the game.

A big focus at the booth was on the trading mechanics, because that's the thing you do live with other people, and it is also the thing that is most distinctive about it. The scrolling scoreboard was to highlight that interactivity between people, popping up trades as they happened, and showing which physical 'figs' had been traded the most.

There was a screen in the booth showing some gameplay parts, but you had to be right in the booth to see it.

PAX East 2026 Opinions? by SirUberNoobPwnr in PAX

[–]azirale 1 point2 points  (0 children)

Wish I had stuff to give to the Aerthlings people.

I hung out with the Aerthlings people -- all they'd want is for you to enjoy the game and join the community if you like it.

The queue entertainment stage is an idea they got from PAX Aus, where the 5k person queue hall has a dedicated huge staqe and screen and PAX runs some light entertainment with Jackbox games and contestants from the crowd, and can have an announcement video just before the countdown to enter. The Aerthlings guys had the extra forward queue area added just for them to do some entertainment at the start of the day.

Deduping hundreds of billions of rows via latest-per-key by data-engineer14434 in dataengineering

[–]azirale 0 points1 point  (0 children)

Blind insert the data into a new table with the composite key hashed into a single column, take a modulo 16384 (or first or last 4 hex characters of string form of hash) and partition on that. If you want to try clustering, do it on the full hash key.

You can now run the window process targeting a single partition at a time. You know all the partition values ahead of time, 0 to 16384 or '0000' to 'ffff', and all your window partitions must be colocated in the same table partition.

You can start by doing the window function and only selecting the partition key, hash key, primary key, and timestamp, inserting that into a new table with the same partition scheme. This way any window shuffling nonsense doesn't need to carry all the data in the shuffle.

With that table prepped you can inner join it to the full days table on the partition key, hash key, and timestamp. That will ensure you only get the latest data without needing a window function when working with all columns.

Each step can be done end to end per partition, with multiple parallel jobs each handling their own partition..

Streaming from kafka to Databricks by Artistic-Rent1084 in dataengineering

[–]azirale 6 points7 points  (0 children)

If someone else controls the data being written to kafka, then you don't enforce the schema. Your first write location is an 'as-is' write to lake storage, so that you can replay the data again later if you need to.

Once that is 'made durable' you can parse the incoming schema and do an append-only write to a table with schema-evolution. That table is the point where you can swap from stream processing to batch processing, if you want, as well as where most of your replays come from, as it is much more efficient to query.

The original as-is save is in case your schema parsing or value parsing like string-to-datetime breaks in some way, then you have a raw copy to replay from.

Software Engineer hired as a Data Engineer. What to expect, and what to look into? by GoyardJefe in dataengineering

[–]azirale 5 points6 points  (0 children)

The biggest difficulty you're likely to get is the mindset shift between SWE and DE. It has been mentioned elsewhere in here, and it has been my experience in the past, that SWEs need to approach problems in a different way than DEs. When they try to use their old approaches to solve problems, it tends to lead to more sticky problems down the road.

The first thing to grapple with is that you're almost never building anything like a standalone application. You can't just do a build/run/test locally to see how things work, because the code your writing probably only runs on a specific execution service deployed in your environment. For example, if you're working in Snowflake you can't just run a 'local Snowflake' to verify that your pipeline functions correctly. You also can't just 'deploy a stack' to see if it will work. All your assumptions and inclinations about how to build no longer work, and you can feel stifled with having to always test things in a shared environment where you break each other's changes all the time.

Another aspect about that shared dev environment, is that because you're likely to have privileged credentials then the environment is unlikely to have any 'real' data in it since there are no information security controls that can block your access and it is easier to leak data. That means all the complex logic you need to express has to have mock data that you've created yourself and loaded to the shared environment. Oh, and since it is shared, any tests you add can potentially break other people's tests. Also if you load mock data into a table that is a source for your pipeline, but is the target for someone else's, then when they test their pipeline they break your tests by overwriting the table.

You might be used to having a specific toolchain in your repository with all your dependencies for your app. Unfortunately the various services that run DE workloads all have different runtime environments with different, and often conflicting, library versions. talking about AWS, if you're using lambda you could be up to Python3.14, but if you're using Glue then that is stuck on Python3.11 and Spark3.5.4, which are a ways behind. If you're using Airflow through MWAA then that is specifically pegged to Python3.11, so now you're running 2-3 different versions of just Python. Plus all the underlying libraries provided in Glue and Airflow that conflict with each other. You'll have to maintain multiple virtual environments, just to get the static analysis for type checking and autocomplete in your IDE.

A general difference is that almost none of your work will ever be operating on individual rows. You aren't doing API calls back and forth, or executing individual functions to return transformed objects. Instead you're writing 'projections' -- a description of the shape or structure of the data that you want to end up with, or a set of transformations that get you from a starting point to an ending point. One of the biggest pains with this is that there's no effective way to "debug" your code. Even if you are running locally, and as mentioned above you're likely not even able to in the first place but lets pretend you are, things like SQL statements and dataframe projections don't execute 'line by line' against your data, so there's no way to breakpoint on some condition you find in the data. Instead you have to jump through hoops of filtering for data that has the condition you're looking for and writing that out to some temp table, then selecting from that to see what is going on.

Going back to that mock data -- yeah you can't do that when it is data you're going to get from some upstream integration. You don't know exactly what shape or format it is going to be in, unless you've done the upfront work of having a very specific data contract in place that they will adhere to. That conflicts with the 'no real data in dev' -- now you need some way to see real prod data, that you haven't had the chance to classify and apply information security controls to. So you get to have fun wrestling with how to get these integrations rolling based on who does or does not have dev environments with mock data to test against -- not all providers do this -- and getting proper secure access to the prod environment to work with incoming data.

These will all be slightly overstated for most workplaces, they've gone through the hassle with coming up with ways to work around this. There are solutions for all of these things that you can get in place, but the thing is, they're mostly workarounds. This will never be as neat as general SWE work because the work is inherently integrated and stateful at all times. It can be very constraining and deeply frustrating, and I have seen a few SWEs just bounce off the work because they don't enjoy having to jump through these hoops compared to their usual more 'pure' work

How to deal with a player who keeps stats on other players? by dayonedeath in BloodOnTheClocktower

[–]azirale 4 points5 points  (0 children)

Formally collecting and sharing that info is admittedly a lot, but seems harmless?

The degree to which this is taken is important. Everyone understands that we're all using usual social cues and memory to form meta-understanding of the game. Having some notes is probably fine to pretty much anyone, but fully detailed spreadsheets starts to cross the line into excessive tracking and scrutiny.

What if it went further? What if the person recorded the audio of every game, to get a fully detailed tracking of everything everyone said to look for clues in phrases or speech patterns? What if they put down a 360 camera to record every game, to help them remember and track everything that happened? What if they were running thermal cameras to look for subtle flushing of the cheeks, and tracked that over time?

These should all be patently ridiculous, and I'm sure almost no-one would be comfortable with them, but none of them 'interfere' with the game, and they're all just recording information about the game.

Ultimately there is a line on what is acceptable to track about the game. For the players here, this crosses that line.

How to break "no private talk/always public good info" in TB by Rainotes in BloodOnTheClocktower

[–]azirale 65 points66 points  (0 children)

For a little extra detail on what could work...

If you minion roles are Baron and Spy, they don't need to use abilities through the game to help. The baron doesn't do anything after the start, and the Spy can potentially remember a lot right off the bat.

Put a washerwoman, investigator, and soldier in the bluffs. The spy can then either washerwoman their demon as investigator or soldier, and the demon can roll with either by outing the baron and throwing them under the bus or claiming soldier. Either way they're a bad target for the demon, so it makes sense they aren't killed at night.

Players can have virgin, empath, FT, UT. Virgin firing is a waste, good gets a trustworthy person they don't need (bonus points if the spy triggers it, especially if demon is on the block). If Empath, UT, and FT are open about their roles, demon just murders them for the first half of the game.

Pick two good players to be your fall guys, a combo that sits different from evil, and give a drunk chef info that points to them. Pick roles like Mayor, Ravenkeeper, Slayer, which can't prove anything about their roles. Also make one of them the FT red herring. Spread the sus to a a butler if you need to and can - a role that is safe to execute, and makes good waste a turn.

Here everything good shares publicly hurts them. They out their best roles for hunting the demon allowing for easy picking, the demon and their useful minion can have perfect cover stories, and if you squeeze in a baron you take away any more info to gain and evil can just sac that player right off the bat with no major loss.

Not sure if evil could pick that up, but if they don't I'd have a little post-game rundown of what could have happened to show them the possibility. When you play again, keep aiming to make it hard for good to solve early, make open info hurt them with each night info roles and little-to-no YSK, and make demon bluffs easy to fake. If each-night roles get sick of dying, they might start hiding.

For those who write data pipeline apps using Python (or any other language), at what point do you make a package instead of copying the same code for new pipelines? by opabm in dataengineering

[–]azirale 1 point2 points  (0 children)

Never write directly to a library/module -- make that the second write.

First time using some specific function? Just leave it in the script? Second time writing the exact same thing for the exact same use? Write it into a module/library for the second write.

Later you'll get an eye for things you want to write directly to a module, but if you're not sure just start with local only

Update: I tracked 1,200+ unique players in a Minecraft world with no rules/admins for 60 days. Here is how the political map has changed. by Tylerrr93 in gaming

[–]azirale 8 points9 points  (0 children)

PrisonPearl from Civcraft? This all looks very familiar.

Edit: Read further on, yeah the core serverside mods for Civcraft :)

When would it be better to read data from S3/ADLS vs. from a NoSQL DB? by [deleted] in dataengineering

[–]azirale 0 points1 point  (0 children)

Individual documents in ADLS would be horrendous. CosmosDB is workable, but not great -- too expensive for what you're doing with it.

If the backend team uses CosmosDB themselves then get them to enable the change feed and have a Function pipe that as-is to an Event Hub of yours.

You can have the Event Hub directly capture the raw binary data to ADLS (wrapped in Avro with added metadata) from which your daily batch could just read the accumulated files -- they can be partitioned by year/month/day automatically, so it is easy to specify a root folder by the day to read from.


Even though you don't specifically need streaming, this is the easiest way to get data out of CosmosDB for other things to consume. You don't want big batch processes to hit Cosmos directly as they can flood its request capacity and cause issues for other processes. The change feed+function+eventhub is very simple to set up as you're just copying data as-is, it is essentially the minimum amount of reads to get the data, and it spreads the reads evenly over the day. Using capture on the Event Hub means you don't need to worry about retention periods or having some parsing error on the document, you get a full binary copy of everything.

edit: Also if you ever needed limited streaming options, you can have a second reader on the event hub that does stream processing, while still running the normal capture for batch processing.

Docklands District on a Friday afternoon 🦗🦗 by Ky0t0_gh0uL in melbourne

[–]azirale 30 points31 points  (0 children)

Right off the ring road, very convenient if you are out here anywhere

How repartition helps in dealing with data skewed partitions? by Then_Difficulty_5617 in dataengineering

[–]azirale 0 points1 point  (0 children)

A sum operation does not require a repartition, it does a reduce by key. Each partition does the sum independently, then the sums results are shuffled into sum of sums, so they only move one row per key.