Programming

Appreciate this. I am recovering abstraction-creation-addict, so I spend a lot of time thinking about this. A couple things that have helped me:

  1. In some cases, the “future” that you’re trying to plan around is actually the present, and the only thing that hasn’t happened yet is you finding out about the new/different requirement. If you’re jonesing to do some speculative abstraction, you can sometimes redirect that energy into learning more about the actual requirements, which might get you to a point where you know enough to identify definitely useful abstractions.
  2. If you must create an abstraction and you can’t justify it via business requirements, it’s less harmful to create fancy abstractions that make your code easy to test rather than domain abstractions. At a minimum, it will encourage you to write more tests to use whatever cool nonsense you created!

My boss is obsessed with automating one of our git workflows for some reason. The problem is this app is our entire CRM system, which for cost purposes can only have two environments - test and prod. And for business purposes has multiple features sitting in the test environment at any given time waiting for business owners to test and approve the feature - which could take months.

So we basically have a bifurcated system where a developer creates a feature branch, creates a pull request to the testcrm branch when ready, which is then approved by the owner of the test environment, and incorporated into the test codebase. Once the feature is finally approved, the dev creates a PR of the same feature branch into prod, which is ultimately executed by a different platform guy who oversees the prod CRM environment.

Apparently the nature of developing custom CRM features means devs are always working in the same files and getting merge conflicts that need to be manually resolved, so that adds to the fun.

So for whatever reasons my boss wants to automate pieces of the flow. Like when the dev creates a new feature branch, they must create it off of prodcrm, not testcrm, which has extra features that haven’t been approved to go to production yet. So she found github actions, which do sort of have a way to automate this one step.

And then I’ve kind of figured out how to get github actions to automate some of the merge/PR creation of a feature into testcrm and prodcrm. But of course there’s likely to be a manual step in the middle where the dev has to fix merge conflicts.

I’ve been trying to tell her that CICD really isn’t for automating git commands. CICD is supposed to be triggered by changes to branches, not trigger them itself. I feel like what she’s looking for is the kind of in-house automation software I imagine FAANGS have. Which would sit above and outside of github, not be working from inside the github CICD pipeline system.

One clue to support this is their are no built-in github actions that support stuff like creating branches or creating or merging PRs. The actions that do that stuff are all in the github action marketplace, created and maintained by randoms, and they’re pretty spotty.

a read is making the rounds in the office today
https://towardsdatascience.com/redis-unsafe-at-any-speed-f2731f738a25?gi=27c4dcd789bb

Who does important stuff in Redis?

apparently most if not all gaming companies.

I’m avoiding reading this now since Reading time: 40 min read and I don’t use redis (we use memcached), but I’m throwing it in the “To Read” list so I can get paid to read that one day in the future.

It helps keep your servers stateless so they can scale. :open_mouth:

lol.

yeah the game stuff makes sense, only thing I use redis for is sessions and I don’t GAF if someone’s session isn’t perfect they can just log back in.

My fucking board game site is STILL under DDOS attack from some lunatic but he only does it like once an hour, wrecking people’s games, lol. I’m gonna rewrite it to get off websockets I guess but not sure what I can use instead.

“so tell me more about your front end tech stack. What libraries or frameworks do you use for styling and CSS?”

“Well we use flexbox”

Low level managers are useless.

Can any smart person help me with what seems like a simple problem that I’m having a hell of a time with. I can find answers when I google but they are a bit beyond my level of understanding (changing config files or something) and I need to be handheld more. I even asked a stack overflow question reporting services - Exporting data from SSRS to a .csv file adds lots of quotation marks how do I get just one set? - Stack Overflow but the answer that came back was “it’s fine” but it’s not fine.

If you’re willing to try and help the link above is probably the best explanation but cliffs notes are I’m trying to export some data from SQL server (via SSRS at the moment but not necessarily if there is a better way) but I need a csv with " marks around each item I can only get 0 " marks or 3 " marks each side no matter what I try I can’t get one.

If you’re not willing to do my job for me for no compensation then screw you :slight_smile:

1 Like

I don’t know SSRS, but I know a fair amount about CSVs. Quotation marks are part of the CSV specification, and need to be used when a data value contains a comma so that the parser knows that the embedded comma isn’t a delimiter. E.g., if you had a data value:

Biden, Joe

this will automatically become “Biden, Joe” when you convert to a CSV file. By default, a lot of tools will only enclose fields in quotes if they are string-like and contain embedded commas, but there are usually settings to enclose all string-like fields in quotes. So one solution may be first to convert the numeric fields in your underlying data to string-like formats and then use the option that encloses all strings in quotes when the CSV is created. That should end up with a CSV file where every data value is enclosed in a single pair of quotes.

1 Like

OK I understood that in principle. Thanks. I cannot find this option and I’d say I’ve looked reasonably hard. Is that something that is likely to be an option in general? The program is called reportbuilder 3.0 for whatever that is worth. Or is there an option to export like that using SQL server management studio because I could do that but again I’ve looked for that option also (probably less hard) and couldn’t find it. That’s what sent me down the rabbit hole of changing .config files for export settings but I backed out of that one because it looked way too complicated and rather not destroy something on my work’s server.

I don’t use those tools, so I’m not sure. Does your SQL server export wizard have a step like the one below. If so, I would try putting " in the Text qualifier box.

1 Like

I guess my question number 1 would be why you need to do that. But assuming you have a good reason, this is difficult to do in SSRS. Essentially you’re saying “I want a ‘CSV export’, but I also don’t want it to comply with the rules of how CSVs are formatted”. Therefore the correct way to do this is to write a custom rendering extension.

A hackier solution is to append a line break to the end of each field as described here. I don’t know if this will just work, or whether you need to set SuppressLineBreaks=true. You don’t need to modify config files to do this provided you can run the report via URL.

Alternatively, you could run the report without quotes and then use Excel to force the use of quotes.

1 Like

Tab-delimited ftmfw

“Use pipe delimited”

“Pipe? What’s that? I can’t find it on my keyboard”

“Neither can anyone else”

1 Like

|

.

https://twitter.com/chrisfralic/status/1430507211726508033

4 Likes

If anyone cares about an update I found the settings econophile mentioned. I thought it would be on the top ribbon but didn’t realise I had to right click on the database and navigate to tasks and then go from there. So thanks UP for helping me believe in myself.

Idk I use socketio still but I certainly don’t get that. For something new I’d go with webrtc. I know helpful. Wrap the thing in try catch obv.