Message from @Pengyboz

Discord ID: 602207474782568457


2019-07-20 18:31:18 UTC  

Every Python developers favourite issue

2019-07-20 18:32:18 UTC  

The number of times I was GAing for an intro C++ class where a student would submit something, I'd almost reflexively send a "does not compile, 0" out for it, only to stop myself, throw it at the compiler, and then have to spend a solid 1-2 hours figuring out what the fuck the code actually did so I could explain exactly why the compiler didn't say "fuck off" and why the output (which was drastically wrong) was what it was.

2019-07-20 18:33:38 UTC  

That sounds like.. Fun

2019-07-20 18:33:39 UTC  

At least with C, unless you have some sort of overflow or are doing pointer magic, it's hyper-literal.

2019-07-20 18:34:09 UTC  

Agreed, that's what's appealing about it

2019-07-20 18:34:29 UTC  

I will say I mostly enjoy working with C#. .NET's builtins are trashy though

2019-07-20 18:34:32 UTC  

And tbh, the elegance of it

2019-07-20 18:35:49 UTC  

SQL parameter with a database type of TIME, you feed it a DateTime, it fucking crashes because the system can only ship a TimeSpan as an SQL TIME value. Never mind that when you pull that TIME back from SQL you'll be handed a DateTime again.

2019-07-20 18:36:40 UTC  

Then comes in the beauty of user made libraries

2019-07-20 18:36:44 UTC  

Shit like that is all over the place

2019-07-20 18:36:45 UTC  

And you import a library you've found online

2019-07-20 18:36:49 UTC  

And it just.. *works*

2019-07-20 18:36:51 UTC  

>importing a lib

2019-07-20 18:36:55 UTC  

Fuck that I wrote my own

2019-07-20 18:36:56 UTC  

lol

2019-07-20 18:37:13 UTC  

>it just works.

2019-07-20 18:37:14 UTC  

Just importing libs is the 'Python' way

2019-07-20 18:37:26 UTC  

"Eh, someone's already wrote it"

2019-07-20 18:37:28 UTC  

Okay Todd Howard.

2019-07-20 18:37:30 UTC  

It's super lazy

2019-07-20 18:37:53 UTC  

And I had to go digging for a lot of the shit.
Deepest arcane depths I've gone was figuring out what the fuck the W meant at the end of a function imported from AdvAPI32.dll

2019-07-20 18:38:58 UTC  

If I had just used the code I found I'd have had a bad memory leak and an even worse security risk due to keeping multiple user credentials in memory long past their logout.

2019-07-20 18:39:08 UTC  

Reason I hate using other people's code tbh

2019-07-20 18:39:22 UTC  

Unless it's from a known competent

2019-07-20 18:39:33 UTC  

If I'm doing anything involving security, then I'm probably going to look for other peoples, open source code

2019-07-20 18:39:38 UTC  

or someone I'm already implicitly trusting

2019-07-20 18:39:46 UTC  

Writing security related code, generally isn't a good thing

2019-07-20 18:40:09 UTC  

Writing your own crypto isn't a good thing. Your own security-related stuff isn't a problem so long as you actually do the legwork

2019-07-20 18:40:10 UTC  

When chances are, there's an opensource library which has been vetted and checked for 2+ years out there

2019-07-20 18:40:28 UTC  

It depends on the scenario I suppose

2019-07-20 18:41:10 UTC  

But then I've gone pretty deep on that end of things as well and have an idea of what to look for when it comes to even timing attacks.

2019-07-20 18:42:08 UTC  

Yeah, experience comes through actually doing the thing

2019-07-20 18:42:16 UTC  

You'll never learn if you don't do it I suppose

2019-07-20 18:43:06 UTC  

But even with that argument- still never roll your own crypto if you need actual crypto

2019-07-20 18:43:17 UTC  

Agreed

2019-07-20 18:43:22 UTC  

That is the one thing I don't care how experienced you are

2019-07-20 18:43:24 UTC  

Since it's so easy to mess up..

2019-07-20 18:43:29 UTC  

Open Source ONLY on crypto

2019-07-20 18:43:36 UTC  

You can *contribute* to said open source