There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

programmer_humor

This magazine is from a federated server and may be incomplete. Browse more on the original instance.

stebo02 , in Need a rust version too.
@stebo02@sopuli.xyz avatar

no python? how are normie programmers like me supposed to relate to this?

aniki ,

The artist is still waiting for the python cells to render.

scratchresistor ,

Rescuing is only I/O bounded; your argument is irrelevant.

troyunrau ,
@troyunrau@lemmy.ca avatar

You have python. You import antigravity. The princess flies off into space. You monkey patch the princess so she has wings.

stebo02 ,
@stebo02@sopuli.xyz avatar

And this is how I learned about the antigravity module. Pretty cool!

aniki ,

Same! I also learned about


<span style="font-weight:bold;color:#a71d5d;">import </span><span style="color:#323232;">this
</span>
HerbalGamer ,
@HerbalGamer@sh.itjust.works avatar

import this

“In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you’re Dutch.”

lol

iAvicenna ,
@iAvicenna@lemmy.world avatar

import army

CanadaPlus ,

Which is a library written in C, of course.

psud ,

No perl either. Much like python you find a relevant library (in cpan), but unlike python there will be seven different implementations, and any four perl devs will come up with at least ten solutions, nine of which will successfully rescue the princess

evranch ,

Everything will seem to be be going great, but to actually gain access to the castle you’ll have to compare your situation to successful rescues to find the undocumented drawbridge control

CodeMonkey ,

Python: You send someone else to rescue the princess on your behalf. That someone else is the C knight.

scratchresistor ,

Only if you have to rescue many princesses in a short period of time

remotedev , in Need a rust version too.

Ruby: there is a built in method called free_the_princess()

karmiclychee ,

On Castle, no less.

CmdrKeen ,
@CmdrKeen@lemmy.today avatar

<span style="color:#323232;">require 'castle'
</span><span style="color:#323232;">
</span><span style="color:#323232;">begin
</span><span style="color:#323232;">  Castle.attack
</span><span style="color:#323232;">rescue Princess
</span><span style="color:#323232;">  puts "Done"
</span><span style="color:#323232;">end
</span>
scratchresistor , in Need a rust version too.

Python:


<span style="color:#323232;">from Rescues import Princess
</span><span style="color:#323232;">Princess.rescue()
</span>
bob_lemon ,

map(lambda princess: princess.rescue(), [castle.get_princess() for castle in castles])

scratchresistor ,

Don’t forget to keep your return values…

rescued_princesses = [{“princess”: princess, “rescued”: princess.rescue()} for princess in [castle.get_princess() for castle in castles]]

CmdrKeen ,
@CmdrKeen@lemmy.today avatar

<span style="color:#323232;">from Castle import Princess
</span>

Done

cobra89 , in what's the difference?

Git = bittorrent

GitHub = the pirate bay

Code = content

Even that’s not the perfect analogy but it’s better than the OP.

vinhill ,

Though OPs example is easier for the general population to understand.

CmdrKeen ,
@CmdrKeen@lemmy.today avatar

Yes, but mostly because the general population likely isn’t super familiar with Bittorrent and PirateBay.

A better, yet similarly correct explanation would be to say GitHub is to Git what GMail is to email.

This also doesn’t confuse protocol and content, and it doesn’t require knowledge of piracy.

datelmd5sum , in It's that time of the year again!

Query OK, 0 rows affected

Donkter , in It's that time of the year again!

The beginning maps perfectly to “The Distance” by Cake and I was singing along to that tune as I read.

docAvid ,

Cut to Mrs Claus baking a spice cake:

She’s all alone, all alone, in her time of spice

GBU_28 , in It's that time of the year again!

No closing semicolon, anyone got any extras to throw on this thing?

epyon22 ,

; found this in the back for you should still work though

db2 ,

Can confirm.

Moops , (edited )

At the very least I’d try to clean up that fuzzy condition on behavior to anticipate any bad or inconsistent data entry.

WHERE UPPER(TRIM(behavior)) = ‘NICE’

Depending on the possible values in behavior, adding a wildcard or two might be useful but would need to know more about that field to be certain. Personally I’d rather see if there was a methodology using code values or existing indicators instead of a string, but that’s often just wishful thinking.

Edit: Also, why dafuq we doing a select all? What is this, intro to compsci? List out the values you need, ya heathen ;)

(This is my favorite Xmas meme lol)

mp04610 ,

behavior is an ENUM.

moroni ,
@moroni@lemmy.ca avatar

That’s a table scan, right there. Naughty.

krotti ,

Honest question, which ones wouldn’t it work with? Most add a semicolon to the end automatically or have libraries and interfaces saved me a million times?

jaybone ,

Usually with libraries like jdbc or whatever and prepared statements you don’t need the semicolon.

GBU_28 ,

Other reply s accurate but it’s always a good practice to include the semicolon else you can get

“Bobby tables’ed” look that xkcd comic up

krotti ,

Wouldn’t that still apply, if you can inject straight SQL, such as “query’ OR 1=1?”

docAvid ,

I’m not sure how including a final semicolon can protect against an injection attack. In fact, the “Bobby Tables” attack specifically adds in a semicolon, to be able to start a new command. If inputs are sanitized, or much better, passed as parameters rather than string concatenated, you should be fine - nothing can be injected, regardless of the semicolon. If you concatenate untrusted strings straight into your query, an injection can be crafted to take advantage, with or without a semicolon.

GBU_28 ,

Yep it would only work if you didn’t sanitize a user input string in this case ‘nice’

They could write ‘’; drop table blah;

pruwybn , (edited )
@pruwybn@discuss.tchncs.de avatar

Need to normalize the database. I would add a join to a BehaviorTypes table.

Edit: or, if the only options are naughty or nice, make it a boolean.

takeda ,

You need semicolons if it is a script with multiple commands to separate them. It is not needed for a single statement, like you would use in most language libraries.

mellejwz ,

If you don’t use a semicolon directly in MySQL it won’t do anything until you add it.

takeda ,

In the MySQL client console where you can run multiple commands.

If you add semicolon in language library commands such as fetch() you will get an error.

fmstrat ,

Can we get a SIMILARITY?

xantoxis , in Programmer tries to explain binary search to the police

This argument did not go well

You can’t convince people to do their job with logic when they just don’t want to do their job. After minorities, the thing cops hate most is doing their job.

SPRUNT ,

WRONG! After minorities, it’s poor people. Then doing their job. :P

buzz ,
@buzz@lemmy.world avatar

Nah, they just dont care about some stupid bicycle.

Also - why dont this guy just give them the exact footage? He doesnt want to?

Micromot ,

They might not know when in the footage it happened

merc ,

I assume he doesn’t have access to it. He just knows there’s a camera pointing at the place where his bike was stolen, and that the police have access to the footage.

CosmicCleric ,
@CosmicCleric@lemmy.world avatar

when they just don’t want to do their job.

It might also be a matter of getting a directive from their management not the care, because there’s not enough cops to go around for the ‘important’ stuff.

They don’t want to waste their limited time for simple property theft, which is ironic considering that’s what police are supposed to be doing (stopping theft).

The answer would be then to hire more police, but unfortunately that would mean higher taxes for the citizenry, and that seems to be a hard glass ceiling.

HawlSera ,

No, the police just don’t want to do any work. In my hometown you can’t get the police to do shit unless you are a black man who “fits the description” or “smells like weee” then they will gladly try to make your death look as much your fault as possible.

trolololol ,

Wrong

The police exists to protect the status quo. Try overthrowing any immoral law or legally but immoral behavior and you’ll see how efficiently they move about.

HeyThisIsntTheYMCA ,
@HeyThisIsntTheYMCA@lemmy.world avatar

Before handing out life advice maybe try it IRL and see how it goes. It’s kinda fun.

trolololol ,

I tried being born rich but it didn’t work this time around. Maybe next re incarnation?

DroneRights ,

More police wouldn’t cost more money if they stopped buying tanks.

HawlSera ,

Come on, don’t disparage our hard-working Boys in blue. Without police who’s going to come to your house to take notes about the crime that you have sufficient evidence to prove, and even have a likely suspect for, and then never follow up?

DoucheBagMcSwag , in :q! to quit the Force

This is how I played guitar hero III on PC but upside down. I wasn’t allowed to play it back at my house so I pirated it and improvised

turbodrooler ,

“No son of mine is going to play a fake guitar!” - Your dad, Robert Fripp or somebody

DoucheBagMcSwag ,

No it was more of rock music being the devil or something like that. N

ApexHunter , in It's that time of the year again!

I can’t be the only one disappointed by the lack of an order by clause after being told the list was being sorted (twice!)…

tsonfeir , in It's that time of the year again!
@tsonfeir@lemm.ee avatar

I started this in my head sounding like the singer from Cake.

purelynonfunctional , (edited ) in what's the difference?

It’s not, though. Git is a means of distributing content, not the content itself. The thing analogous to PornHub’s porn on GitHub is the source code in the repos hosted there, not Git itself.

CanadaPlus , (edited )

If only there was a website called “StreamHub” or something.

Honestly the content vs. characteristic method of delivery distinction is subtle enough this is still a great way of explaining.

purelynonfunctional ,

Depends on to whom. If you’re explaining to your grandma, a small child, a co-worker, or a student under your tutelage, you probably don’t want an explanation that relies on reference to a porn site.

And if you’re explaining to a novice developer or to an IT person who sometimes might have to work with Git, they deserve an explanation that leaves them with a basic understanding (or at least the names) of the kinds of things Git and GitHub are (VCSes and SCM forges, respectively), not just an inkling that GitHub is not unique in being ‘a place to host (some?) Git, whatever that is’.

So… if you don’t mind that it suggests ‘GitHub is for uploading Git(s)’, that line is an okay way to teach ‘the difference between Git and GitHub’ to non-technical, non-elderly adults who don’t really need to know what Git is (and don’t work with you or study under you).

That’s an explanation of pretty damn narrow usefulness, to put it generously.

It is pithy and memorable, though.

CanadaPlus ,

How often does grandpa ask you what GitHub is?

emptiestplace ,

You’re right, we probably should’ve noticed sooner.

spiderplant ,

I agree that porn is a nsfw way to explain something in a lot of scenarios but I disagree about people needing to know at least the names of a technology from an explanation.

Most people don’t need to know or care about the names to understand or use them. Knowing the names after I learnt the commands did not give me greater insight into how the tool works.

If they are just being introduced to git and github then they are likely new to programming and have much more important things to care about like learning their first programming language or understanding how their teams project actually works.

A place to host gits is a perfectly good explanation for anyone who is new to it.

merc ,

Git is a DVCS. GitHub is a place where DVCS repositories are hosted. There are many other places where DVCS repositories can be hosted, but GitHub is the most famous one… Porn is a type of content. PornHub is a place where porn is hosted. There are many other places where porn can be hosted, but PornHub is the most famous one. It’s a pretty good analogy.

dan ,
@dan@upvote.au avatar

There are many other places where DVCS repositories can be hosted

I mean… Everyone that’s cloned the repo has a full copy of it. You could clone it directly off someone else if you wanted to.

merc ,

Sure… and you could pass around porn on thumb drives. But, having a central website where you can browse public repos and clone the interesting ones is a pretty key part of Open Source / Free Software development.

dan ,
@dan@upvote.au avatar

How many people use Github for discovery though? I usually find interesting projects through a search engine, through word of mouth, through posts on here, etc. at which point it doesn’t really matter where the repo is hosted. A lot of the useful projects I use aren’t even on Github.

As far as I know, Gitea is current working on federation support, which will be great. It’d be like Lemmy where you can browse repos, submit issues, etc from one instance even if the repo is hosted at a different one. Git was really designed for a model like that, not for a centralized one.

spiderplant ,

How many people use Pornhub for discovery though? I usually find interesting content through a search engine, through word of mouth, through posts on here, etc. at which point it doesn’t really matter where the porn is hosted. A lot of the useful content I use aren’t even on Pornhub.

Seriously though, I agree with you, githubs value to open source is not it’s discover-ability. Personally I think its value comes from the stability, as much as I’m an advocate for self-hosting I know from the amount of dead links on the internet that we could have lost a lot of projects or at least they would move about as hosts went down.

I quite like the idea of federated gitea, although technically there is already a federated platform for porn if you count Lemmy and/or mastadon.

docAvid ,

But it’s a categorical error. The analogy is about “git”, not “git repositories” or “DVCS repositories”.

merc ,

k

BolexForSoup , (edited ) in It's that time of the year again!
@BolexForSoup@kbin.social avatar

He sees you when you’re bashing

He’s hacked your VPN

jballs ,
@jballs@sh.itjust.works avatar

He knows you’re not in the sudoers file

So he’ll report your ass again

Masimatutu ,
@Masimatutu@mander.xyz avatar
jballs ,
@jballs@sh.itjust.works avatar

I’ll be damned if that’s not the most relevant xkcd that I’ve ever seen.

agent_flounder , (edited ) in what's the difference?
@agent_flounder@lemmy.world avatar

That…isn’t quite right.

Git is a distributed version control system for software development^1.

Version control allows you to manage code versions and changes to code. You take snapshots, so to speak, of every change you make.

Distributed, in this context, means multiple developers can write code on each of their development computers and merge the changes, usually to a centralized git server.

GitHub runs a web-based git server at GitHub.com so teams can store their code in a central location on the internet.

  1. Ok, technically, even though It’s often used for software source code, it can be used for any set of files and directories.
kernelle ,

If you read it as “a website providing a service, but that service is also available elsewhere” the analogy makes perfect sense.

kevincox ,
@kevincox@lemmy.ml avatar

I don’t see anything you said that it isn’t quite right.

Porn is a distributed form of entertainment.

Porn allows you to get your rocks off. You take views, so to speak and do your thing.

Distributed, in this context, means multiple enjoyers can watch porn on each of their entertainment computers and share the videos, usually to a centralized porn server.

PornHub runs a web-based porn server at pornhub.com so viewers can store their porn in a central location on the internet.

agent_flounder ,
@agent_flounder@lemmy.world avatar

So in the analogy porn corresponds to git? Or to source code?

spiderplant ,

In this analogy it could be that:

  • the filesystem is git and the porn is source code
  • the file is git and the data is source code
  • you don’t consider the source code because you can host anything on github
  • we shouldn’t be reading into the analogy this deeply because its a silly analogy meant for absolute beginners
Rodeo ,

Ok, now explain the part you think is not right.

agent_flounder ,
@agent_flounder@lemmy.world avatar

Git is a tool. GitHub is one implementation of a git server. Git is used to manage source code. GitHub hosts / manages source code.

Porn is content. Pornhub is one service that hosts content. Porn is not a tool. Git isn’t content. Source code is content.

So porn isn’t really analogous to git.

Maybe a better analogy would be… Git is to GitHub as outlook mail client is to outlook server–or Gmail app to Gmail server.

Rootiest ,
@Rootiest@lemmy.world avatar

GitHub runs a web-based git server at GitHub.org so teams can store their code in a central location on the internet.

Wait… it’s GitHub.org?

I always assumed it was GitHub.com…

Edit: GitHub.org only seems to support HTTP and then it just does a permanent redirect to GitHub.com

agent_flounder ,
@agent_flounder@lemmy.world avatar

Ugh I’m an idiot. Thanks.

Rootiest ,
@Rootiest@lemmy.world avatar

All good 😊 you had me going for a minute though

Truck_kun , in It's that time of the year again!

That SELECT and WHERE are all caps, but from is not is bugging me.

I don’t care if you choose to uppercase keywords or lowercase, but consistency please.

Also, great, love it.

cupcakezealot ,
@cupcakezealot@lemmy.blahaj.zone avatar

it also implies that naughty or nice is an either or thing and not a weighted thing from an incidents table. the good place lied to us.

ursakhiin ,

It could be a materialized view that is generated off of a weighting where you are nice until you have a certain number of incidents.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • [email protected]
  • lifeLocal
  • goranko
  • All magazines