The "Good news, everybody: we’re safe from Skynet!" Rant
-
@arantor said in The "Good news, everybody: we’re safe from Skynet!" Rant:
given that programming with emoji is already a thing, it's hard to imagine the next 5 years not being full of that doesn't make sense to anyone.
You mean like this?
-
-
@arantor You do know that's valid Haskell code, right?
-
@antiquarian that might have been why it was that choice of emoji ;)
-
@arantor The worst part is I know what it does.
It's a map function.Spoiler
-
@masonwheeler said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@weng said in The "Good news, everybody: we’re safe from Skynet!" Rant:
WtfFramework, a proprietary development environment and runtime used by WtfCorp to rapidly develop WTFs (actually, event driven workflows).
Workflow Transformation Framework?
That's good. We're looking to rebrand and I'm going to pitch that.
-
@antiquarian said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@arantor said in The "Good news, everybody: we’re safe from Skynet!" Rant:
given that programming with emoji is already a thing, it's hard to imagine the next 5 years not being full of that doesn't make sense to anyone.
You mean like this?
I've been reading too much functional stuff. I understood that just fine.
-
@masonwheeler
If the majority of your data access operations need all of the columns in the table(s) you're selecting out of, you either:- Have a really simplistic data model
- Have a really poorly normalized database design
- Are requesting tons of YAGNI data and not thinking about what you're throwing away.
-
@masonwheeler said in The "Good news, everybody: we’re safe from Skynet!" Rant:
in the majority of cases you do want everything
Only if you define the majority of cases to include all the simple one-off statements that you write while building other scripts or looking up data or doing other direct work in the database.
-
@izzion said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Are requesting tons of YAGNI data and not thinking about what you're throwing away.
Yeah, I just realized this was happening on our Character list. For some reason, the Indexing page was requesting the entirety of the character table and joining up all the sub-tables in the relationships on that table, and spit-wadding that up into the page, only to be discarded (because I only need the character name, last map located on, and one or two attributes.
Merely loading the page in dev (because we have 1000 bot accounts for testing) caused us to exceed our 5 DTU limit by an order of three.
So instead, I told it to select just my columns I needed (and just the rows I needed, not the whole damn set) and despite that we were still being rate-limited (due to high resource usage) the page was actually performant.
Of course, now I'm struggling to make an Expression extension to dynamically select rows using a Contains for each of the selected columns. That's throwing me for a loop, and even StackOverflow isn't helping very much...
-
@tsaukpaetra said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Of course, now I'm struggling to make an Expression extension to dynamically select rows using a Contains for each of the selected columns. That's throwing me for a loop, and even StackOverflow isn't helping very much...
Feel free to hit me in a DM (or create a different thread and ping me) if you would like. If you can provide a little more information about what you're trying to do, I can probably help query build.
-
@dkf said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Do ORMs do
select *
much? They certainly seem to be at least partially to blame for many of the other DB usage antipatterns that crop up…EF Core does that.
ETA on a second thought, it might be that it does it only when doing code first and not specifying explicitly column names for each property. I'd have to check.
-
@xaade said in The "Good news, everybody: we’re safe from Skynet!" Rant:
I meant, if minecraft was a gui for programming, and the different blocks represented different syntax.
There's always Creative Mode. Also be sure to turn mob griefing off, if you don't want bugs raised because an Enderman moved something.
-
-
@r10pez10 said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Oooh, nice.
Hmm. 10's not all that new anymore…
-
@kt_ said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@masonwheeler said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@blakeyrat said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@anotherusername At that company, using
SELECT *
wouldn't have passed code review. Always specify the columns you need in the order you need, guyz.I've heard people say that many times, and never understood it. About 75% of the time (I won't say "all the time" because I know that exceptions abound, but the vast majority of the time) when you're SELECTing data, "the columns you need" is the entire set of columns in the table--because the table was designed with that exact set of columns to meet that specific need--and "the order you need them in" is irrelevant. So why not use
select *
when it's appropriate, which is the majority of the time, and designate specific columns when that's appropriate?Because if you use * and then someone adds a new column or a set of columns, one of two things can happen:
- The query will start having performance issues.
- Your query will start failing.
- Or both.
Oh, and if you do this in a function and you forget to recompile it after adding a new column, your function will start failing. Fatally. It could even crash SQL Server.
-
@dreikin said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@r10pez10 said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Oooh, nice.
Hmm. 10's not all that new anymore…
It says where from. It's asking you whether you want to download from their windows 7/8 server pool or from their max os x server pool.
No idea why they have a server pool running mac os x.
-
@pleegwat said in The "Good news, everybody: we’re safe from Skynet!" Rant:
No idea why they have a server pool running mac os x.
In case you want to do cloud builds of iOS apps. There are places that have ready-made racks for Mac Minis to slot into for this kind of purpose.
-
@pleegwat said in The "Good news, everybody: we’re safe from Skynet!" Rant:
windows 7/8
Huh, I don't remember Windows 7/8. Was that before or after 3.11?
-
@dreikin Why, yes it was.
-
@hungrier said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@djls45 said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@tsaukpaetra said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@magus said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@tsaukpaetra It worked for Mario and one of the Belmonts.
Yeah, but we couldn't just out right say "Hey, treat this like Mario 64!". It might have been more obvious if we duplicated the wavy-picture effect, but then again, legal stuff...
Is the wobbly-picture effect trademarked or something?
You could also try having some other sort of energy reaction when an avatar gets close enough to an "active" painting, like maybe a faint path of particles moving from the avatar into the painting or a ring of glowing energy around the border of the painting.Or make it like a modern game, with text at the top of the screen saying "Press X to stick your head in the painting", a graphic showing the commonly used action buttons with X highlighted and labelled "Stick head in painting", and a GPS arrow directing you to the painting. And on the load screen, make sure one of the tips is "Stick your head in paintings using X." Maybe a disembodied voice telling you to stick your head in the painting as well.
Then add a really long unskippable animation of you tentatively peeking your head into the painting, followed by a year-long loading screen, followed by a really long unskippable animation of you falling out of the painting, doing a couple involuntary somersaults, landing on your face, sitting up, and staring in wonder at your environment.
-
I remember hearing in high someone remarking. "This is coding? I thought it would be drawing lines between boxes by now".
wasn't that the wet dream of software engineering of the 90's-00's ?
-
@marcodave said in The "Good news, everybody: we’re safe from Skynet!" Rant:
I remember hearing in high someone remarking. "This is coding? I thought it would be drawing lines between boxes by now".
wasn't that the wet dream of software engineering of the 90's-00's ?
Yeah. Tried it. It really fucking sucks outside of very specific domains, and it takes a stupid amount of code to enable working like that.
-
@dkf YES, IT'S BETTER TO BE STUCK IN THE 70S FOREVER! NO WAY THE CHURCH OF LINUX WILL EVER LET THE COMMON FOLKS LEARN THE SACRED ART OF PROGRAMMING! </blakey>
-
@Gąska Wanna bitch about it? Try doing it for real first.
-
@Gąska I know you're being sarcastic about the specific point, but regarding the general issue of making programming accessible, it's not the written nature of code that is the issue. People have used recipes for hundreds of years and a program is very much like a recipe.
To make programming more accessible you need better libraries that expose only what the person cares about. That's the tough part, most programmers are terrible at writing interfaces.
-
@dkf why would I bitch for real about perfectly reasonable stance? Graphical programming is a cancer, and the only people who think it's a good idea is people who have no clue about what programming is about and what makes it so hard for average people.
Edit: oh, you thought I'm sharing Blakey's view on the matter. No, I very much do not. I don't have direct experience, but I worked with people who worked in a quite large project written in graphical language (if made in conventional programming language, the codebase size would be in 100-1000KLOC range). Suffice to say, when they've rewritten it all in Java, development velocity went through the roof.
-
@Kian said in The "Good news, everybody: we’re safe from Skynet!" Rant:
To make programming more accessible you need better libraries that expose only what the person cares about. That's the tough part, most programmers are terrible at writing interfaces.
That's a good goal but I still don't think it does all that much to make programming more accessible, except for extremely limited domains where there isn't much to do. Granted, it can be an incredible thing for that domain, but it doesn't solve the fundamental problem that many people can't / won't / don't break a problem down and think about it analytically to solve it using code.
-
@Gąska said in The "Good news, everybody: we’re safe from Skynet!" Rant:
I don't have direct experience
I do. I've written several graphical programming languages, and I've also tried to use others' graphical programming tools (e.g., Rational Rose). They work for trivial examples. Once things become non-trivial — where the program would be not the easiest thing to conceive of in any programming language — they become at least as complicated as using text. The hard problems are how to handle displaying the sheer volume of complexity in a big program, and how to do refactoring (you might argue these are related; you'd be right). I've seen quite a lot of effort thrown at this (by a superb, thoughtful programmer) and the results were nothing like as satisfactory as one might hope. Moreover, when I started actually using those capabilities to build complex programs (with some significant meta-programming involved) I was told that what I was up to was horrifying.
It might be possible to make a truly good graphical programming language. I'm fairly sure nobody's actually succeeded yet.
-
@dkf said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Once things become non-trivial — where the program would be not the easiest thing to conceive of in any programming language — they become at least as complicated as using text.
Spaghetti code becomes literal spaghetti.
-
@Zecc
At least my believe comes with a strainer
-
@marcodave said in The "Good news, everybody: we’re safe from Skynet!" Rant:
I remember hearing in high someone remarking. "This is coding? I thought it would be drawing lines between boxes by now".
wasn't that the wet dream of software engineering of the 90's-00's ?
It's currently the wet dream of toy companies who are riding the train of "your local news had a story about how everyone should learn programming so here's a crappy version of Turtle with only a fifth of the features. It costs $250 and some TV celebrity bought it."
They're just about as effective as "drawing lines between boxes", but they do succeed in their primary goal: parting helicopter parents from their money.
-
@dkf said in The "Good news, everybody: we’re safe from Skynet!" Rant:
The hard problems are how to handle displaying the sheer volume of complexity in a big program
That is really easy: just display it in text form
-
-
@Weng said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Frankly, I'm afraid TFS is going to die soon, replaced by a Microsoft hosted Github clone.
That's an insanely precise prediction, one year before the fact. If I read it at the time I probably thought it was nonsense
-
@apapadimoulis said in The "Good news, everybody: we’re safe from Skynet!" Rant:
- Instant Messenger/Chat; this is basically dead. AIM circa 2002 was probably the best we’ve had to date; it was an open protocol, and tools like Pidgin or Trillian could be used. Everyone has since closed protocols, and we’re stuck with bloated garbage clients like Slack, Teams, etc. that use the CPU fan to indicate new messages are incoming.
@blakeyrat said in The "Good news, everybody: we’re safe from Skynet!" Rant:
The worst part is even Microsoft who used to be one of the good guys is down the rabbit hole of open-source-y shit practices now.
Please don't necro shit like this when I'm still on my first cup of coffee.
-
@sockpuppet7 said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@Weng said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Frankly, I'm afraid TFS is going to die soon, replaced by a Microsoft hosted Github clone.
That's an insanely precise prediction, one year before the fact. If I read it at the time I probably thought it was nonsense
As I've said at work as well, I believe git is fundamentally unsuitable for enterprise use. Compared to traditional source control systems it lacks any distinguishing characteristics which add value in that context, while being rife with complexity to serve decentralized development models which enterprises do not use.
-
@PleegWat said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@sockpuppet7 said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@Weng said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Frankly, I'm afraid TFS is going to die soon, replaced by a Microsoft hosted Github clone.
That's an insanely precise prediction, one year before the fact. If I read it at the time I probably thought it was nonsense
As I've said at work as well, I believe git is fundamentally unsuitable for enterprise use. Compared to traditional source control systems it lacks any distinguishing characteristics which add value in that context, while being rife with complexity to serve decentralized development models which enterprises do not use.
Yeah, nowhere that I've been that used git (all of the places) have actually used it like a decentralized repo, and had a central repo workflow. This makes the key point of fit an unnecessary cost of complexity for no fucking reason.
-
I’ve literally seen it used as a decentralised repo once, and that was because the primary got fucked up and it was restored by scavenging together details from local developers’ copies. But that only qualifies on a technicality.
Edit: Actually now that I think about it, I actually made a lot more use of this in the past. When at the Moodle shop, we had our internal repo with customer specific patches and stuff, and we would load upstream as a new remote and pull in their patches (and rebase our stuff on the end) which would have sucked a lot more without Git being DVCS.
-
Somewhat recently, I mentioned to somebody that Git was a decentralized VCS. They looked at me like I had spontaneously sprouted another head. Plenty of younger people don't seem to even realize it.
Filed under: All hail Github!
-
@PleegWat said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@sockpuppet7 said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@Weng said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Frankly, I'm afraid TFS is going to die soon, replaced by a Microsoft hosted Github clone.
That's an insanely precise prediction, one year before the fact. If I read it at the time I probably thought it was nonsense
As I've said at work as well, I believe git is fundamentally unsuitable for enterprise use. Compared to traditional source control systems it lacks any distinguishing characteristics which add value in that context, while being rife with complexity to serve decentralized development models which enterprises do not use.
Our ops workflow would be a world of pain if not outright impossible if we had to deal with enterprisey license fuckery. Plus the focus on decentralization has made it so that git was simply the first VCS that's so cheap (in most senses of the word) to use that you can use it for pretty much everything. Yeah, not big binaries, but so what. Application sources, websites, infrastructure-as-code, passwords, dotfiles, everything is versioned, and that's a good thing. My experience with people using something else is that they check in their work stuff and other things simply don't get version control. Who'd want to depend on being online at the same time as Azure to be able to use VisualFoo-du-jour just to edit their
.bashrc
and risk losing all history together with their job?
-
@apapadimoulis said in The "Good news, everybody: we’re safe from Skynet!" Rant:
I think… I think… we’re already there. Let’s consider the technological regression of software right now:
...
Web forums; enough said.
I think is a good place for me to pass on to posterity my belief that the "twisty" feature of Outlook Express while reading Usenet forums was of divine origin.
-
@Arantor said in The "Good news, everybody: we’re safe from Skynet!" Rant:
When at the Moodle shop, we had our internal repo with customer specific patches and stuff
When I started my current job, we had a bunch of custom patches to our Moodle.
I replaced all of them by writing a couple plugins. No more hacking Moodle's code
-
@TimeBandit we had some pretty out there Moodle builds. We also had more than one client with customised versions of otherwise-public plugins.
We were also unfortunate enough to be hosting Mahara sites with some of them.
-
@PleegWat said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@sockpuppet7 said in The "Good news, everybody: we’re safe from Skynet!" Rant:
@Weng said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Frankly, I'm afraid TFS is going to die soon, replaced by a Microsoft hosted Github clone.
That's an insanely precise prediction, one year before the fact. If I read it at the time I probably thought it was nonsense
As I've said at work as well, I believe git is fundamentally unsuitable for enterprise use. Compared to traditional source control systems it lacks any distinguishing characteristics which add value in that context, while being rife with complexity to serve decentralized development models which enterprises do not use.
Oh hey, that's what I've been saying for 10-ish years now. It was a purpose-built tool designed specifically for the massively distributed cat-herding mess that is Linux kernel development, which does not look like the development of your project for virtually every possible value of "your." It makes common-case tasks significantly more difficult in the name of simplifying tasks that are extreme-corner-case or entirely irrelevant to anyone but a Linux kernel developer.
For the life of me I cannot comprehend how it ever became "the default" throuhout our industry.
-
@Mason_Wheeler said in The "Good news, everybody: we’re safe from Skynet!" Rant:
For the life of me I cannot comprehend how it ever became "the default" throuhout our industry.
- It's free. 2) It makes branching and merging significantly less shitty than SVN.
At least, that explains why it won out over SVN but it doesn't explain why Mercurial didn't win.
-
@Arantor 1) SVN was free too. 2) Git is good at branching and merging because branching and merging is how you do everything in Git. It's Git's "magic hammer." Before Git, we didn't do branching and merging for every little thing, because we had better ways to do them, because we weren't using Git where everything requires branching and merging!
-
@Mason_Wheeler said in The "Good news, everybody: we’re safe from Skynet!" Rant:
Before Git, we didn't do branching and merging for every little thing, because we had better ways to do them, because we weren't using Git where everything requires branching and merging!
The widespread adoption of Git, almost to the total exclusion of everything else, has always seemed weird to me given that Git was originally just something that Linux Torvalds threw together in a couple of weeks for his own personal use.
-
@Mason_Wheeler I'm not sure. I have a side project that isn't even software --it's a rule book written in latex. But I regularly work on it from two computers. And I frequently have changes on one machine I'm not ready for on the other. Having a branch based workflow where I can control what goes into main and what gets built (because only one machine can actually build it for ) and released makes my life easier in lots of ways. I can add and incorporate changes on my schedule, without accidentally locking the whole repo because I forgot to release from my home machine and I'm on my mobile machine.
Do I need even a tiny fraction of the features? Nah. But git's style actually works really well with how I see the world.
-
@Benjamin-Hall said in The "Good news, everybody: we’re safe from Skynet!" Rant:
git's style actually works really well with how I see the world.
You mean, as in "it's built on user-hostile arcane rules, so your best bet is to memorize magic incantations and pray things don't go pear-shaped, otherwise you're really fucked"?