|
lifg posted:Like Go Or guys who really wanted to work at Google and end up at AWS instead, like the guy who made us use Go at my last company.
|
# ? Jul 9, 2022 13:41 |
|
|
# ? May 12, 2024 16:21 |
|
ultrafilter posted:My rule of thumb has always been that a repository should contain a single releasable unit. That's not a perfect solution but it seems to work pretty well for the projects I've been on. This is it. My company has a monorepo and the main advantage is to release everything at once; on any single commit the whole system is deployable together and compatible. No need to put too much effort into versioning and compatibility. However, now (three years in), we have reason to release some set of components separately. As soon as we implement that, we lose the benefit of the monorepo and so we'll probably split that set of components into its own repo. Although I don't know if we'll be in a hurry to do so... We won't have the main benefit but also we haven't hit any real drawbacks yet (besides the release process coupling we're now addressing). All the special tooling we needed was a copious use of changes: in our GitLab CI pipeline definitions.
|
# ? Jul 9, 2022 15:08 |
|
My last company hired a bunch of ex-googlers at the same time and it was a nightmare as they all tried furiously to rock the boat and make everything like it was at Google.
|
# ? Jul 9, 2022 15:26 |
|
I can’t imagine an ex-Googler leaving Google and then wanting things to be like Google. Wasn’t the point to, like, leave? I’m sure they exist though.
|
# ? Jul 9, 2022 15:40 |
|
smackfu posted:Heh, I bet it’s like a virus that infects companies that hire ex-Googlers. Extremely so. Our Go devs recently moved to a monorepo, spurred by some xooglers. We are nowhere near enough to have the rest of the infra up to snuff.
|
# ? Jul 9, 2022 16:12 |
|
Pollyanna posted:I can’t imagine an ex-Googler leaving Google and then wanting things to be like Google. Wasn’t the point to, like, leave? I want to work for my old company except I'm in charge or this time I get rich off the IPO are common answers
|
# ? Jul 9, 2022 16:39 |
|
Pollyanna posted:I can’t imagine an ex-Googler leaving Google and then wanting things to be like Google. Wasn’t the point to, like, leave? I once had an ex-Goog coworker who was fired for sexual harassment, so that's one way it can happen
|
# ? Jul 9, 2022 17:28 |
|
https://twitter.com/gd3kr/status/1545370626273120256 This probably can't handle anything really complicated but it's worth a try for simple regexes.
|
# ? Jul 9, 2022 18:13 |
|
We’ve got a halfway solution where our team which is responsible for multiple products (within a larger organisation) has them in a single repo using turbo/yarn workspaces. In practice it allows multiple deployable projects to reference “@lib/design-system” and our other reusable pieces without having to split them out and actually package/version them. It works well enough and we do have builds that trigger only on certain paths that means slower moving services aren’t bothered often. We are full into typescript across everything though which makes the tooling easier.
|
# ? Jul 9, 2022 18:16 |
|
Destroyenator posted:We’ve got a halfway solution where our team which is responsible for multiple products (within a larger organisation) has them in a single repo using turbo/yarn workspaces. In practice it allows multiple deployable projects to reference “@lib/design-system” and our other reusable pieces without having to split them out and actually package/version them. Yeah this is exactly what I'm looking for I think. I don't want everything to deploy together but I really want those references to @lib/design-design system and maybe a few other shared things. The other thing that I'm realizing might be tricky though is if I have a long running branch in one project while still needing to make frequent deploys to another project. For example one of our projects is undergoing a weeks-long redesign right now even though the other projects are stable and just receiving odds n ends updates to develop/main. But maybe a monorepo requires a different branching strategy.
|
# ? Jul 9, 2022 19:32 |
|
ultrafilter posted:https://twitter.com/gd3kr/status/1545370626273120256 the one in the very first pic is wrong
|
# ? Jul 9, 2022 23:02 |
|
redleader posted:the one in the very first pic is wrong
|
# ? Jul 9, 2022 23:17 |
|
Y is a vowel ?prom candy posted:one of our projects is undergoing a weeks-long redesign right now even though the other projects are stable and just receiving odds n ends updates to develop/main. Referencing a specific branch in source code seem like very very bad idea, a complete crossing of the streams. You had to reference a prebuilt package from a package repo instead and specify the release version instead.
|
# ? Jul 10, 2022 12:50 |
|
AskYourself posted:Y is a vowel ? Yes. I learned this for vowels in 1st grade: “A e i o u and sometimes y”
|
# ? Jul 10, 2022 17:32 |
|
would love to see the regex that correctly accounts for y as a vowel
|
# ? Jul 10, 2022 17:36 |
|
brand engager posted:What do you call this mess they have where the android git repos needed a utility just to manage them all https://source.android.com/setup/build/downloading Unfortunate Pollyanna posted:I can’t imagine an ex-Googler leaving Google and then wanting things to be like Google. Wasn’t the point to, like, leave? cum jabbar posted:I once had an ex-Goog coworker who was fired for sexual harassment, so that's one way it can happen Yeah, people change companies and not all for the same reasons. Some people get pushed out, or quit, because they are dick bags or because the dick bags are specifically loving with them. Some people want more money, or to live elsewhere, some people want to just do different things altogether. A coworker of mine, who was stuck doing very high level software stuff (stack level wise not technical difficulty) when he was happy as could be working on firmware, is now much happier working somewhere else working on firmware instead of that very high level stuff. Another former coworker left to eventually start their own company. There's plenty of reasons beyond technical ones to change. Volmarias fucked around with this message at 17:46 on Jul 10, 2022 |
# ? Jul 10, 2022 17:37 |
|
AskYourself posted:Referencing a specific branch in source code seem like very very bad idea, a complete crossing of the streams. You had to reference a prebuilt package from a package repo instead and specify the release version instead. We don't reference the branch in the source code, unless I'm not understanding what you mean
|
# ? Jul 10, 2022 17:58 |
|
Pollyanna posted:I can’t imagine an ex-Googler leaving Google and then wanting things to be like Google. Wasn’t the point to, like, leave? In my experience, people don't leave Google over the tooling. In general, the tooling is great and the repo and commit tooling is world class. There's some idiosyncrasies over what is supported, unofficially supported, and deprecated that are an annoyance, but it's generally not a big deal. There's a reason ex-Googlers try to replicate it, though if you don't understand the complexity backing it then that's doomed to fail.
|
# ? Jul 10, 2022 23:35 |
|
mitztronic posted:Yes. I learned this for vowels in 1st grade: “A e i o u and sometimes y” Also sometimes w because of a loanword from welsh.
|
# ? Jul 11, 2022 03:54 |
|
AskYourself posted:Y is a vowel ? the regex in the first pic is /nw*g/i, which isn't quite "all words starting with n and ending with g" unless the whole thing is a joke, in which case i can only claim poe's law
|
# ? Jul 11, 2022 07:17 |
|
Volmarias posted:My dude you need to calm down, Reader has been turned off for a long time now, let it go. lol was that a sensitive spot? i specifically quoted someone else's language about monorepo. not everything's about you, buddy!
|
# ? Jul 11, 2022 17:35 |
|
Hate the combined scenario of a looming and difficult deadline combined with waiting around for access to the things I need to build the thing that they want built so quickly.
|
# ? Jul 26, 2022 21:33 |
|
prom candy posted:Hate the combined scenario of a looming and difficult deadline combined with waiting around for access to the things I need to build the thing that they want built so quickly. CYA time. Make it very loud and apparent in your emails that you are delayed because you don’t have the things built. Continue to prominently display that they are moving the deadline back, and inform your PM that you refuse to keep the same deadline.
|
# ? Jul 28, 2022 00:16 |
|
FlapYoJacks posted:CYA time. Make it very loud and apparent in your emails that you are delayed because you don’t have the things built. Continue to prominently display that they are moving the deadline back, and inform your PM that you refuse to keep the same deadline. They are a huge and wildly important customer. I'm just gonna have to eat a bit of poo poo on this one unfortunately. I'll keep my boss in the know so if things slip it's not totally on me but I'm just gonna have to do what it takes to get their thing done. My job is insanely chill 99% of the time so I'll just vent in here but otherwise chalk it up to that's life sometimes. On the plus side I got into a 1 on 1 meeting with a developer on their end and we sorted a bunch of stuff out in about ten minutes.
|
# ? Jul 28, 2022 04:42 |
|
I asked this in the IT thread, because thats where I belong, but this specific question might go better here. I got asked for help. Some person is a product manager for a software consultancy, and regularly having arguments with the engineers on their team about good design practices like logging database transactions. His specific request is what resources (books/whitepapers/whatever) can I expose myself to, so I can better explain that the family of tenets like "explicitly store DB transactions" are good . His situation is as follows:quote:I'm having recurring fights with one of my engineers about things that make sense/are obvious to me but it's hard for me to convey why in a convincing way. Eg, we have a cron job that when it runs, some transaction occurs. I ask where that transaction is being logged so we can expose it. She says it's not being logged. Because we can back our way into that transaction data by knowing when the chron job kicked off and the lack of any other alternative transactions. This is so incredibly stupid/basic, "log when transactions occur" but she says, "what's the requirement to log a transaction if it requires extra work and we can find it implicitly" I dont know of any resources about the proper fundamentals of system/app design, any of you all have suggestions? I've never been in a situation where I didn't want to log DB transactions, but I'll concede its possible that calling it a fundamental of good system design is an overreach
|
# ? Jul 28, 2022 05:03 |
|
Happiness Commando posted:I asked this in the IT thread, because thats where I belong, but this specific question might go better here. I got asked for help. Some person is a product manager for a software consultancy, and regularly having arguments with the engineers on their team about good design practices like logging database transactions. His specific request is what resources (books/whitepapers/whatever) can I expose myself to, so I can better explain that the family of tenets like "explicitly store DB transactions" are good . His situation is as follows: Some people log everything and have terabytes of unusable logs full of "someone has stolen your trees!" messages. Some people have configurable trace levels but that runs the risk of the "right" log level not being on at the time you need that information. The scenario above could easily be "no one has ever needed that information in 20 years and won't need it for another 20, so we have a reasonable way to get the information when we need it and adding additional logging will take longer than just finding out the info when asked". Especially if it's a clunky old system, adding the kind of logging they're after could genuinely be a pain in the rear end for minimal benefit. Sometimes you just let the clunky old poo poo keep on clunking. Edit: the person who asked the question is also using weird terminology that is meaningful to them but nonsense to the rest of the world. A "transaction" in a database is a very specific term with a very specific meaning, and nothing about it would involve "logging". "Exposing a transaction" is a complete nonsense phrase from a technical perspective. If they mean "we want to be able to audit the logs of activities taken by our applications", they should say that. We inhabit a world of ambiguity caused by the same words meaning different things in different contexts, so it's important to be very deliberate when choosing words to describe things. Don't assume your shorthand expression will translate for others. New Yorp New Yorp fucked around with this message at 05:27 on Jul 28, 2022 |
# ? Jul 28, 2022 05:21 |
|
Yeah, I don't have the slightest clue what "log a database transaction so we can expose it" or "explicitly store DB transactions" means or what's being requested.
|
# ? Jul 28, 2022 06:22 |
|
Happiness Commando posted:His specific request is what resources (books/whitepapers/whatever) can I expose myself to, so I can better explain that the family of tenets like "explicitly store DB transactions" are good . His situation is as follows: Appeals to authority are super annoying, so it's weird for him to request one. I guess he's basically saying he does not respect yours and doesn't want to listen to your arguments.
|
# ? Jul 28, 2022 07:42 |
|
It sounds like he wants audit logs. And yeah, if your mechanism for getting audit logs is "reconstruct the prior state of the system and work out what it should have done assuming everything worked correctly" then that's laughable, but the authority pointing out that it's wrong shouldn't come from a system design book, it should come from the thing that these audit logs are intended to be used for. It may be that he doesn't know he wants audit logs, he just knows he observed logging like this at some old job and thinks setting up something similar here shows initiative.
|
# ? Jul 28, 2022 07:54 |
|
PM should ask for some kind of outcome and leave it to the devs to figure out. If the PM thinks the engineering team's implementation won't fit their outcome they need to give more context or communicate the future better.
|
# ? Jul 28, 2022 13:15 |
|
We have some call center apps that log literally everything the person does and very visibly shows that log to the user. I assume it’s mainly to discourage people from loving around.
|
# ? Jul 28, 2022 13:22 |
|
Xguard86 posted:PM should ask for some kind of outcome and leave it to the devs to figure out. If the PM thinks the engineering team's implementation won't fit their outcome they need to give more context or communicate the future better. This. If a PM is coming to you asking for a specific technical implementation, something is very wrong. Ask them what they actually want to accomplish and trust your devs to either do it or to explain why doing it is difficult or expensive.
|
# ? Jul 28, 2022 14:20 |
|
Yeah it sounds like they might mean "financial transaction" rather than "database transaction", which are different levels of abstraction.
|
# ? Jul 28, 2022 19:16 |
|
Happiness Commando posted:I asked this in the IT thread, because thats where I belong, but this specific question might go better here. I got asked for help. Some person is a product manager for a software consultancy, and regularly having arguments with the engineers on their team about good design practices like logging database transactions. His specific request is what resources (books/whitepapers/whatever) can I expose myself to, so I can better explain that the family of tenets like "explicitly store DB transactions" are good . That said he could be in the position where he's managing people who don't know what a database transaction is etc. That's a sign to get on the market and get another job, not to argue with your engineers.
|
# ? Jul 28, 2022 20:27 |
|
Paolomania posted:Yeah it sounds like they might mean "financial transaction" rather than "database transaction", which are different levels of abstraction. Pretty important distinction here.
|
# ? Jul 28, 2022 21:11 |
|
Situation: For example, emails are deleted if they are in spam for 30 days. PM: Tell me when emails in spam are deleted. Situation: Uhh, I just did. 30 days after they are marked as spam. PM: Yeah but when are the emails in spam deleted? Situation: ... PM: (dying) but when?
|
# ? Jul 28, 2022 21:51 |
|
I really need a date to tell the client.
|
# ? Jul 28, 2022 23:04 |
|
bigperm posted:Situation: For example, emails are deleted if they are in spam for 30 days. I…what what is even happening here
|
# ? Jul 29, 2022 15:38 |
|
bigperm posted:Situation: For example, emails are deleted if they are in spam for 30 days. "Daily, usually, but again usually only for some."
|
# ? Jul 31, 2022 03:11 |
|
|
# ? May 12, 2024 16:21 |
|
Let's say you had a monolithic Rails back end serving as an API for multiple front end projects and also running a ton of background tasks for ingesting and managing data. Let's say for a number of reasons you hated it and wanted to move to something more modern. Also let's say that the centrepiece of your backend is an SQL database that is the single source of truth for just about everything. How would you even begin to start taking steps to move away from it? I hate this language and framework so loving much now but I feel completely stuck with it. Also I know leaving the job is one way to free myself from this torment but I really, really like the job.
|
# ? Aug 6, 2022 23:28 |