|
MrMoo posted:He covered that, he calls it "arena" according-to-him, but not what other people (tm) may understand as that. Invalid entity is fairly mild and Blow says a crash would be better than hiding it because you can go debugging and fix it quickly. The allocator scheme she creates allegedly does not eliminate an incorrect but valid entity being presented due to possessing a stale reference and so the language is not really helping at all and required the same development strategy other languages require too. Jonathan blow literally said women are mentally less capable of programming computers. why are you bending over so hard to try to give him cover
|
# ? Sep 14, 2018 20:28 |
|
|
# ? Dec 7, 2024 04:54 |
|
I'm looking at moving our godawful database script management into something a bit better I.e. That actually manages the individual artefacts instead of being a massive pile of incremental change scripts that may or may not have been built on the right version and I've figured I can pretty easily manage procs views and functions just as scripts and pull out anything that's changed in a branch via a Git diff BUT wtf do I do with tables? i mean, my first thought is just have a single script that creates the table as of a point in time and then adds incremental changes via sequential Alter statements and then I thought "well I want this to be rerunnable" so I added checks vs sys.information_schema to see if an individual table /column/constraint existed before each statement and now I'm thinking this is madness. some team at work are using liquibase but that just seems to do the exact same thing except via its own definition language and with an extra executable in the way that you have to run to generate your actual scripts. also no possible way am I gonna do a "copy rows to a shadow table, drop and recreate and copy back" that's just asking for trouble.
|
# ? Sep 14, 2018 20:38 |
|
import your database into a visual studio database project
|
# ? Sep 14, 2018 20:39 |
|
Sapozhnik posted:What is an ecs a miserable pile of systems seriously tho I kinda want to decompile alphabeard's Caves of Qud
|
# ? Sep 14, 2018 20:44 |
|
Shaggar posted:import your database into a visual studio database project tried this but its way of generating the change scripts is to try and connect across prod/test and do a diff but we have zero environment control so at any one given time dev will have changes that probably shouldn't go live. plus I want to version those components separately so I can do a 'what's the history of the viewButts proc" and see who hosed it up. also iirc it does the "table alter by drop and recreate" thing which makes me nervous.
|
# ? Sep 14, 2018 20:45 |
|
that rear end in a top hat is wrong anyway. this is exactly the same argument that people bring up with, like, Haskell not having null pointers. "OOHOHOHO, but then when you need to represent absence, you use Maybe which JUST LIKE A NULL!!" yeah, no poo poo dumbass, the point is you're free of null everywhere else. I happened to have watched the original rust conf video last week, and it was 100% "figuring out how to do traditional gamedev poo poo in rust" and it was actually a decent talk. It was a pretty standard "we restrained ourselves with this tool, but now we need to figure out how to do this traditional thing under these constraints." Circumventing the borrow checker? Yeah, in exactly one way: whenever you have entities with persistent references to other entities, you might discover they're stale. That's it. And it's not like her solution causes memory corruption or anything. And it not like those kinds of reference are even that common. It's Maybe types all over again. And meanwhile, literally everything else is still getting checked by the borrow checker. blowhard is mad because Rust got lots of attention, and he feels he deserves all that attention because he feels he's the hottest poo poo ever.
|
# ? Sep 14, 2018 20:49 |
|
crazypenguin posted:blowhard is mad because Rust got lots of attention, and he feels he deserves all that attention because he feels he's the hottest poo poo ever. "why doesn't everyone admire me the way that my internet sycophancy club does? it must be that they're stupid, as well as wrong."
|
# ? Sep 14, 2018 20:52 |
|
does jblow have fans within the game industry or is his club made out of gamers and aspiring game devs?
|
# ? Sep 14, 2018 20:54 |
|
his complaint is a non-issue, practically. I've used several ecs libraries over the years and all of them have had some kind of unique reference id for keeping persistent references to other entities. unity even bakes it into the entity id itself, as far as I know. it's really obvious that using a reference directly to a raw entity id, which may be removed or reused from frame to frame, is a bad idea and I'm pretty sure nobody does it in real life. it's also probably impossible or practically impossible to statically prove that an entity id hasn't been removed from play since it was referenced at a particular point, so I'm not sure what he's expecting rust to be able to do there.
|
# ? Sep 14, 2018 20:59 |
|
Powerful Two-Hander posted:tried this but its way of generating the change scripts is to try and connect across prod/test and do a diff but we have zero environment control so at any one given time dev will have changes that probably shouldn't go live. plus I want to version those components separately so I can do a 'what's the history of the viewButts proc" and see who hosed it up. also iirc it does the "table alter by drop and recreate" thing which makes me nervous. the db project should keep things like the viewButts proc as individual script files so you can version them like that. it also keeps history in some form so it will handle things like renames properly (in most cases). the real problem is like you said with stuff in dev that isn't ready for prod. there aren't any tools that fix this since its a process problem. There are kind of 3 ways to handle it: 1) When you do a diff for prod with the db project diff tool it will give you a list of objects from which you can filter things for the release 2) Divide your schema into separate databases to limit the impact of parallel development 3) Create a new Dev environment and only publish current releases from dev to test so test to prod is always current changes. They all suck for various reasons but there really isn't a good solution.
|
# ? Sep 14, 2018 21:04 |
|
white sauce posted:Hi, I'm a fng learning Java and I need help with my first set of Homework for my programming class It's very basic stuff but I have 0 experience with this and the assignment is pretty difficult. dont fuckin do this this reads as "i want to pay someone to do my homework for me". nobody wants to do your homework for you. your question and someone will probably help you if you really think you need a ton of help find a real tutor e: but seriously just post your question, even if it's really dumb it's almost certain someone will at least post a link to point you in the right direction
|
# ? Sep 14, 2018 21:13 |
|
white sauce posted:Hi, I'm a fng learning Java and I need help with my first set of Homework for my programming class It's very basic stuff but I have 0 experience with this and the assignment is pretty difficult. i will do your homework for you. my rate is $300/hr, minimum 2 hours
|
# ? Sep 14, 2018 21:27 |
|
Arcsech posted:dont fuckin do this seriously yospos took me from an underpaid overworked tech writer to a six figgie engineer and I didn't have to pay anyone. we're all dorks and it's fun to help someone tease out an idea.
|
# ? Sep 14, 2018 21:28 |
|
DONT THREAD ON ME posted:does jblow have fans within the game industry or is his club made out of gamers and aspiring game devs? from my experience its mostly gamers and people looking to break into the industry. on more than one occasion, quite a few people have described him as "someone who has never suffered a day in his entire life", while others say he acts like someone who "wears a hat that says I'm special on it"
|
# ? Sep 14, 2018 21:46 |
|
crazypenguin posted:blowhard is mad because Rust got lots of attention, and he feels he deserves all that attention because he feels he's the hottest poo poo ever. in the end that's really the gist of it it clearly hit a nerve. a rust programmer talking about game programming, oh my, time to be a condescending rear end in a top hat to this woman, nitpicking a strawman argument.
|
# ? Sep 14, 2018 22:02 |
|
Symbolic Butt posted:in the end that's really the gist of it he's probably mad that rust gets more attention than his home-rolled, no-formal-spec bideo-james language
|
# ? Sep 14, 2018 22:04 |
|
Slurps Mad Rips posted:from my experience its mostly gamers and people looking to break into the industry. on more than one occasion, quite a few people have described him as "someone who has never suffered a day in his entire life", while others say he acts like someone who "wears a hat that says I'm special on it" tbf, from what i've heard about the guy he was basically a broke loser just scraping by until braid became a minor hit like so many other dorks though, he seems to have taken the concept of having money as justification that he is always right
|
# ? Sep 14, 2018 22:07 |
|
the one good thing jonathan blow did was the puzzle game grant for underrepresented developers (https://www.gamesindustry.biz/articles/2018-03-20-the-witness-studio-offering-usd20-000-grants-to-underrepresented-developers), and i have a friend who was on the committee that decided who gave out grants who said it only worked because everyone yelled at blow constantly to the point that he just withdrew from the decision making process entirely. not that he admitted that he was ever wrong, mind you; he just withdrew because he didn't like getting yelled at. the dude is lovely as hell. anyways, am i right in assuming that this is the rust ecs talk he was mad about? i'm gonna watch it, i guess. i've been writing a unity-style component framework for games in typescript, but a proper ecs system that separates state and logic seems closer to what i actually wanted. i used to try to build functional games but never knew how the gently caress to structure them; while an ecs system like this isn't really "functional" it's closer to the ideal i wanted when i was doing that, i think. i guess with the coming of webassembly i guess i could start looking into actually writing games in rust, but i do like typescript quite a bit. dunno if rust bridges to stuff like canvas or pixijs are up and running yet. converting the stuff i've been working on to ecs would probably be a nightmare but it might be interesting to build out a little ecs implementation in typescript or something abraham linksys fucked around with this message at 22:20 on Sep 14, 2018 |
# ? Sep 14, 2018 22:16 |
|
Arcsech posted:dont fuckin do this I'm working through the problems by myself already, I just kinda needed some guidance understanding some of the basics (like boolean operators). I've never really coded before and the teacher threw us a difficult first set of problems, so I thought I would need help from someone that already knows his poo poo. The main issue is that it's a huge loving class and the teacher and the TA's all have their own poo poo going and 1 on 1 time is limited, so I need to seek outside sources of help. But yea, it's doable, it'd just be faster if I had someone to tell me "oh that problem is Big O notation question"
|
# ? Sep 14, 2018 22:59 |
|
Ha the gently caress, slightly irate developer overwrites last version of his package in NPM with a message saying "stop using this". Subsequently the software disappears from the Internets. https://www.reddit.com/r/node/comments/91kgte/uws_has_been_deprecated/ I've been trying to get this into production this week as well, dang. It's a rather fast WebSocket library for NodeJS, like 100% faster than the other option available. MrMoo fucked around with this message at 23:35 on Sep 14, 2018 |
# ? Sep 14, 2018 23:13 |
|
that guy owns.
|
# ? Sep 14, 2018 23:28 |
|
Shaggar posted:the db project should keep things like the viewButts proc as individual script files so you can version them like that. it also keeps history in some form so it will handle things like renames properly (in most cases). the real problem is like you said with stuff in dev that isn't ready for prod. there aren't any tools that fix this since its a process problem. I keep telling you Shaggar to double down on tools like liquibase which can take all your changes from dev to prod in a reproducible manner. Versioning of the sprocs and tables is handled by the tool and lets you push changes form dev->test->prod along side with your application.
|
# ? Sep 14, 2018 23:35 |
|
CRIP EATIN BREAD posted:that guy owns. He has a nice grading repo that really winds some folk up,
|
# ? Sep 14, 2018 23:38 |
|
Janitor Prime posted:I keep telling you Shaggar to double down on tools like liquibase which can take all your changes from dev to prod in a reproducible manner. Versioning of the sprocs and tables is handled by the tool and lets you push changes form dev->test->prod along side with your application. that's not the problem. the problem is there are objects for multiple releases in the dev or test database at the same time and the tool cant differentiate between what objects belong with one release and which ones belong with another. so lets say I edited proc a for my release and a coworker edited proc b for his and while they have no effect on each other, if I were to point the tool at the db and compare it with a previous diff or with the next environment both procs would be included. But I only want proc A to be included because proc b development isn't finished or is otherwise part of a separate release that's not ready to migrate. The tool cant decide which procs should go so a human has to tell it.
|
# ? Sep 14, 2018 23:44 |
|
That's not an issue with Liquibase because it doesn't model changes based on diffs between environments. In your example, each dev would have their respective changes to the sprocs in the changelog file. When feature A is complete you commit and merge your branch back into master which then gets applied to all the environments in the pipeline, following your normal release process. When feature B is done, it gets committed and pushed upstream at that point and there is none of the poo poo you talked about involved.
|
# ? Sep 14, 2018 23:55 |
|
that relies on the developer manually keeping track of their objects as in option 1. it works but its not great.
|
# ? Sep 15, 2018 00:00 |
|
hmmm I'm getting a strong feeling thatShaggar posted:They all suck for various reasons but there really isn't a good solution idk maybe I'll look at liquibase again. Its the table/index/constraint bit that's most annoying because everything else can just be a drop/create each time. Well I guess indexes can as well but you get my point.
|
# ? Sep 15, 2018 00:10 |
|
Powerful Two-Hander posted:I'm looking at moving our godawful database script management into something a bit better I.e. That actually manages the individual artefacts instead of being a massive pile of incremental change scripts that may or may not have been built on the right version and I've figured I can pretty easily manage procs views and functions just as scripts and pull out anything that's changed in a branch via a Git diff BUT wtf do I do with tables? I still haven't used it but it sounds like sqitch exists for this purpose: quote:Sqitch is a database change management application. What makes it different from your typical migration-style approaches? A few things: https://sqitch.org
|
# ? Sep 15, 2018 00:40 |
|
prisoner of waffles posted:I still haven't used it but it sounds like sqitch exists for this purpose: this seems unnecessarily complicated compared to flyway imo, maybe it is solving additional problems that i'm not seeing?
|
# ? Sep 15, 2018 00:46 |
|
DELETE CASCADE posted:this seems unnecessarily complicated compared to flyway imo, maybe it is solving additional problems that i'm not seeing? idk, what parts seem unnecessary to you? then work backwards from those to "when would anyone ever need such a thing?" and answer your own question
|
# ? Sep 15, 2018 00:57 |
|
Shaggar posted:that's not the problem. the problem is there are objects for multiple releases in the dev or test database at the same time and the tool cant differentiate between what objects belong with one release and which ones belong with another. the standard workflow should be: - author your database definition in visual studio as t-sql source files - ci produces a versioned build artifact -- the dacpac file - use sqlpackage, webdeploy, or powershell+dac api to publish the dacpac to a target database. the publishing tool will figure out how to make the target database look like the database you defined in visual studio.
|
# ? Sep 15, 2018 01:28 |
|
Powerful Two-Hander posted:also iirc it does the "table alter by drop and recreate" thing which makes me nervous. no, ssdt tries to avoid drop and recreate where possible. the biggest issue is that sql server doesn't allow inserting a new column into the middle of an existing table. it only allows appending columns to the end of a table. ssdt considers column order to be part of a table's definition, so it has to drop and recreate if you insert a new column in the middle of a table. or you can just tell it to ignore column order and it'll append new columns to the end regardless.
|
# ? Sep 15, 2018 01:36 |
|
Fiedler posted:preparing update scripts by schema comparison of dev/test/prod is not the intended use of database projects. yeah that's not how anyone uses this stuff tho. I talked to someone on the vs team ages ago and it blew their mind that anyone would ever develop a database used by multiple applications or that someone might do development work in SSMS instead of VS since until like a year or two ago VS db dev tools were unusable. they way it should work is sql server has its own versioning system for every object and then you can build a deployment script by selecting combinations of objects and versions. like you set a tag on an object and it can be grouped together into a release. idk. versioning w/ sql is a pita
|
# ? Sep 15, 2018 02:13 |
|
the vs db dev tools, excluding ssis and ssas tools, have basically not changed at all in the last eighteen months? regardless, yeah, people use the tools the wrong way all of the goddamn time, and the ssdt tools enable them by having great support for updating projects from databases.
|
# ? Sep 15, 2018 02:23 |
|
we use liquibase and we just make sure our migrations run on snapshots of daily/staging/production perfectly fine and never have to worry about it
|
# ? Sep 15, 2018 03:24 |
|
mystes posted:Capitalist/proletariat i am v late to this discussion but wholeheartedly suggest that we use chatlanin/patsak: https://www.youtube.com/watch?v=Pe66FcnlYpA base leader election on the color of the database's pants
|
# ? Sep 15, 2018 05:22 |
|
Fiedler posted:no, ssdt tries to avoid drop and recreate where possible. the biggest issue is that sql server doesn't allow inserting a new column into the middle of an existing table. it only allows appending columns to the end of a table. ssdt considers column order to be part of a table's definition, so it has to drop and recreate if you insert a new column in the middle of a table. or you can just tell it to ignore column order and it'll append new columns to the end regardless. ah OK that's pretty standard behaviour I think. some genius did that to a production database a few years ago because they wanted to "clean up" the column order and wiped the table lol ill have a look at sqitch and the others. also there is no CI process or automated deployment tool because we suuuck edit: I have to install perl to use it on windows? loving gross
|
# ? Sep 15, 2018 08:06 |
|
white sauce posted:I'm working through the problems by myself already, I just kinda needed some guidance understanding some of the basics (like boolean operators). I've never really coded before and the teacher threw us a difficult first set of problems, so I thought I would need help from someone that already knows his poo poo. Dropping Big O in babies first programming class sounds cruel and unusual
|
# ? Sep 15, 2018 11:26 |
|
AggressivelyStupid posted:Dropping Big O in babies first programming class sounds cruel and unusual i'm pretty sure that at my university, before i could take anything related to programming, i had to take an algorithms course that was nothing but reading/write pseudocoe and time complexity analysis.
|
# ? Sep 15, 2018 12:56 |
|
|
# ? Dec 7, 2024 04:54 |
|
CRIP EATIN BREAD posted:i'm pretty sure that at my university, before i could take anything related to programming, i had to take an algorithms course that was nothing but reading/write pseudocoe and time complexity analysis. this is like people admitting that their parents beat them with switches when they were kids but then swear that it was just discipline being abused by a cruel education isn't your fault
|
# ? Sep 15, 2018 13:00 |