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.

MargotRobbie , in Rebase Supremacy

I think this is a fake quote that somebody made up for an Internet comedy bit, since it seems unlikely for Hollywood actress Sydney Sweeney to have such uncharacteristically strong opinion on software version control, of all things.

Because she of all people would know that there isn’t anything wrong with using git merge, and it ultimately comes down to personal preference to what you are used to.

Conyak , (edited )

I mean, it’s posted in programming humor so yeah.

archomrade ,

Fair point, Margot Robbie

MargotRobbie ,

That’s esteemed Academy Award nominated character actress Margot Robbie to you!

sundray ,

And successful Hollywood film producer – props on getting into the stakeholder end of the business so early in your career!

errer ,

She’s modest too!

Jax ,

But esteemed Academy Award nominated character actress and film director, Margot Robbie, if it’s unlikely that Hollywood actress Sydney Sweeney said this… wouldn’t it be just as unlikely that Margot Robbie would be here? Adding her own comment?

… are you projecting? Is there something you want to tell us esteemed Academy Award nominated character actress and film director Margot Robbie?

hactar42 ,

I think this is a fake quote that somebody made up for an Internet comedy bit

You can tell by the pixels

tja ,
@tja@sh.itjust.works avatar

No, the tweet is real. Just not the quote.

beeng ,

"Don’t always trust what you read on the internet."

  • Benjamin Franklin
ManniSturgis ,

Wait a second, there wasn’t even any social media sites back when Benjamin Franklin lived. Did he write that in his newsletter or something?

masterofn001 ,

I think he was a senior contributor for the underground cracker mag 1600 back in the late 80s.

They called em zines.

Klear ,

Truly he was ahead of his time.

Artyom ,

Margot Robbie, I was about to agree with you and thought that was a very reasonable take, until you tried to argue that git merge is better than git rebase, then I simply had to disregard the whole thing.

MargotRobbie ,

This is why Sydney Sweeney isn’t on Lemmy.

Klear ,

She probably is, just anonymous. It would be crazy to expect anyone to post on lemmy under their real name.

DudeDudenson ,

But they were arguing that it’s personal preference not that one is better than the other

renedescartes ,

A bit of the old on the internet no-one knows you’re a dog, I think. Therefore I am a webdev dog too.

xlash123 , in Life Hack
@xlash123@sh.itjust.works avatar

Too complicated. Just enter a negative number.

kevincox ,
@kevincox@lemmy.ml avatar

No negative sign on the keyboard. But you can enter 2147483647

ripcord ,
@ripcord@lemmy.world avatar

Risky gamble there

Zagorath , in Life Hack
@Zagorath@aussie.zone avatar

The meme says “IRS”, so it’s obviously intended to refer to America.

But outside of that context, they’d fucking deserve it for their shitty dark pattern UX trying to export American tipping culture into the civilised world. If people want to tip, they can do it using cash (so the money actually goes to the person you intended it to!). Or at most, there could be a little “tip” button in the corner somewhere that then takes you to a page like this. It shouldn’t be shoved in our faces like this.

Gradually_Adjusting ,
@Gradually_Adjusting@lemmy.world avatar

I, an American, was ashamed when I had to ask that a tip be removed from my bill at a restaurant in Camden.

CAMDEN WAS SUPPOSED TO BE WOKE AND Y’ALL FUCKING DOG OVER HERE

Pay your damn staff a good wage

Zagorath ,
@Zagorath@aussie.zone avatar

Camden in Sydney? That’s appalling. It’s bad enough to be presented with a screen like in the OP. Needing to actually speak to a person to not have a tip added sounds probably illegal.

Gradually_Adjusting ,
@Gradually_Adjusting@lemmy.world avatar

Camden Town in London actually; historically counterculture, but punk is dead at The Cheese Bar.

Zagorath ,
@Zagorath@aussie.zone avatar

Ah right, cheers. Tbh my first guess was that it might be a place in Britain, but I didn’t know so I Googled it and all the results were about Sydney (including one from brittanica.com…).

Gradually_Adjusting ,
@Gradually_Adjusting@lemmy.world avatar

Well, we did almost end up in Canberra at one point, but as luck would have it the wife’s boss didn’t support the transfer. It’s no Sydney, but anything would have been better than staying stateside. I don’t really miss it, and all my friends say it’s worse now 🙂

melpomenesclevage ,

its worse now

Your friends are correct.

Gradually_Adjusting ,
@Gradually_Adjusting@lemmy.world avatar

Sorry about that. I wish everyone with the sense to leave had the option.

melpomenesclevage ,

I wish enough people had a spine that it wasn’t necessary.

Thisfox ,

Yes, if it had been in Australia. Report it when you see it.

kevincox ,
@kevincox@lemmy.ml avatar

In most places even if you tip cash they are supposed to keep that for the tip pool and it is split. Often among the cook staff and other people at the restaurant.

Taalen , (edited )

Live in a country where tipping is practically unheard of. Lately pay terminals have started appearing in restaurants that have asking for tip enabled by default, and restaurants often don’t know how to disable it.

Well, at least there are some safeguards. I was handed the terminal so I put in my PIN code, not realising it was actually asking for a tip. I was pretty confused when it said “value too high” or something like that.

freebee ,

Taalen’s PIN > 0001 confirmed.

gerbler ,

restaurants often don’t know how to disable it.

The owners know how. They also know that by leaving it there they make extra money on top of sales. They also know that the person getting berated for having it there is the worker who can’t change it.

Case ,

I was the SME over POS terminals in a past job.

Owners are often the biggest morons at the location.

Before that, I used the same basic software package at Subway because the owner couldn’t be bothered, and the manager, great lady, was not technically apt.

frostysauce ,

Who carries cash, though?

blind3rdeye ,

I do.

LodeMike ,

Me too.

FartsWithAnAccent ,
@FartsWithAnAccent@fedia.io avatar

Same.

Obi ,
@Obi@sopuli.xyz avatar

Germans.

samus12345 ,
@samus12345@lemmy.world avatar

People who live in safer countries than the US.

gdog05 ,

Farmers. Farmers’ mums.

CopernicusQwark ,

Yarp.

evranch ,

Am farmer, can confirm. I also have my chequebook with me… Non-farmers, when was the last time you wrote a cheque, aside from rent? I feel like we’re the only ones still using them.

dgriffith ,

Australian here. Last time I wrote a cheque, Michael Jackson was still black.

Hootz ,

People named Johny for one.

ArmokGoB ,

People buying drugs

gerbler ,

Bartenders and servers

Harbinger01173430 ,

Americunts shit on you when you tell them tipping culture is bad. Like, here in my third world country, where we all earn a misery compared to the minimum wage in burger land, we can say no to tips or just give a few cents or some more…fuck this. Food is already expensive. I am not going to waste extra cash for my food.

Soulg ,

Who the fuck defends tipping culture, you’re just making shit up to justify your hatred of an entire country

Hootz ,

Well capitists, the rich, government, industry, ect… Oh yea don’t forget the capitalist boot lickers.

anonymouse ,

I’ve seen plenty of wait staff show up to defend tipping in Reddit threads. They’d rather shame customers than demand fair wages from their employers. Or maybe they were all just bots.

Asafum ,

I think those people tend to make a lot of money off tips. There have been times I could get way more than you’d get from any paycheck a restaurant would ever be willing to pay, even with the laws changed for that sector, for “less” work. Depending on the place you work at you could have $300+ a night cash Friday-Sunday and that’s me going back to what I remember from 12 years ago so who knows what they’re able to get now.

I don’t even make $900 a week now in a psudo-managment position in a factory. Not that the $900 is consistent there for those in food service, I just think that’s one reason people would be openly resistant to the idea of changing how tipping works.

EndlessNightmare ,

And tipping culture has creeped in both magnitude (i.e. 15% used to be standard, but now it’s the low end) and scope (e.g. tips prompts at fucking fast food places)

Thisfox ,

Plenty. I have had people tell me I am inhumane for criticising tipping culture, and if I point out it is related to the extreme class system and slavery history of America they downvote me to hell and try to justify that it is “land of tha free” or whatever.

They don’t even have freedom from hunger or illness in their messed up country.

laurelraven ,

I’ve seen a lot of people, including servers and diners, defending tipping culture.

Sadly.

I’m on the side of tipping while in a tipping culture, but only because of the crap way servers are payed and they’re the only ones hurt by protesting through refusing to tip. Otherwise, it’s a practice that needs to die.

JoYo , in Rebase Supremacy
@JoYo@lemmy.ml avatar

Anyone mind explaining to me how git rebase is worth the effort?

git merge has it’s own issues but I just don’t see any benefit to rebase over it.

Aux ,

Well, rebase allows you to resolve the same conflict ten times in a row instead of doing it once. How cool is that?

jjjalljs ,

Squash your branch first

rapist1 ,

Doesn’t this defeat the purpose, may as well merge then no?

jjjalljs ,

Do not merge your unfinished stuff into main.

I don’t like merging main into my branch because I don’t understand git, and I feel like that can make a confusing history.

expr ,

Nope, you just need to do it once: git-scm.com/book/en/v2/Git-Tools-Rerere.

Aux ,

Why would I ruin all the fun?

Jesus_666 ,

I use interactive rebases to clean up the history of messy branches so they can be reviewed commit by commit, with each commit representing one logical unit or type of change.

Mind you, getting those wrong is a quick way to making commits disappear into nothingness. Still useful if you’re careful. (Or you can just create a second temporary branch you can fall back onto of you need up your first once.)

bamboo ,

This 100%. I hate getting added to a PR for review with testing commits in the history, and I’m expected to clean those up before merging into main.

Zangoose ,

I feel like squash and merge on GitHub/GitLab is nicer for that anyway though, it makes the main branch so much cleaner automatically

dejected_warp_core ,

If you’re using “trunk-based development” (everything is a PR branch or in main), this works great.

If you’re using GitFlow, it can make PRs between the major prod/dev/staging branches super messy. It would be nice if GitHub would let you define which merge strategies are allowed per-branch, but that’s not a thing (AFAIK). So you’re probably better off not squashing in this situation.

bitcrafter ,

The way I structure my commits, it is usually (but not always) easier and more reliable for me to replay my commits one at a time on top of the main branch and see how each relatively small change needs to be adapted in isolation–running the full test suite at each step to verify that my changes were correct–than to be presented with a slew of changes all at once that result from marrying all of my changes with all of the changes made to the main branch at once. So I generally start by attempting a rebase and fall back to a merge if that ends up creating more problems than it solves.

muad_dibber ,
@muad_dibber@lemmygrad.ml avatar

Only before you collaborate with anyone else. After that, don’t ever use rebase, or they’ll get an error, and will have to overwrite their local history with the one you’ve rewritten.

go_go_gadget , in Computer components cheat sheet

We don’t talk about bubble jet.

BlackRoseAmongThorns , in Three monitors, and i feel insulted

I had my PC built for me while all i had to do was specify parts, tried to get fans with no light just to avoid this, got the almost exact model but with lights.

Now if i use my PC at night my room glows pink (not for any particular reason besides it being the most dominant in my rainbow led fans)

Username ,

It’s not even controllable RGB? Just shitty rainbow all the time?

BlackRoseAmongThorns ,

There’s an extra device which is required to control them, yes i already tried the bios.

Basically yes, rainbow, at least it’s not rotating and is just a static rainbow circle.

spatialdestiny , in Computer components cheat sheet

Now do software concepts like Bitcoin, machine learning, and blockchain.

go_go_gadget ,

Bitcoin: An excel spreadsheet a bunch of people agree on.
Machine Learning: Electrons in a room banging on typewriters.
Blockchain: A marketing term for linked lists.

nifty ,
@nifty@lemmy.world avatar

I think you switched blockchain and bitcoin

AeonFelis , in Rebase Supremacy

I like rebase, it’s everyone else that hate it when I rebase main twice a day.

RagnarokOnline , in Life Hack

Now if I could only bypass the float only input field…

Maalus ,

F12 lol. The only issue with a dev console helping would be serverside checking

grue ,

How do you press F12 on a touchscreen interface?

trxxruraxvr ,
RagnarokOnline ,

So I have to bluetooth my mobile device to the restaurant’s point of sale app?

smeg ,

You could probably also try peeling off the outer plastic of the device so you can access the USB port and plug in an external keyboard, but the person holding it might notice

affiliate ,

you could also bring a regular keyboard and try to plug it in when the cashier isn’t looking. i’m sure that will go over well

Zehzin ,
@Zehzin@lemmy.world avatar

Based username

RagnarokOnline ,

Always nice to meet a fellow adventurer. See you in South Pront 👍

some_guy , in Life Hack

I laughed a lot at this.

fubarx , in Life Hack

Little Bobby Tables says hi.

bobbytables ,

Hi!

MadMadBunny ,

Whaaaaaaaat!?!?

Gabu ,

Oh no! He’s arrived

LordTrychon ,

You’re not so little anymore!

mr_satan , in Three monitors, and i feel insulted
@mr_satan@monyet.cc avatar

Monitors – hell yes! RGB – can’t stand it. My keyborad has a plain white backlight and that’s it. It’s purely functional.

Mesa ,
@Mesa@programming.dev avatar

Could one argue that your conscious choice to not pick an RGB backlit keyboard is in part because of your aversion to it, therefore making it somewhat of an aesthe-

RGB == FPS bro

cyborganism , (edited ) in Rebase Supremacy

I prefer to rebase as well. But when you’re working with a team of amateurs who don’t know how to use a VCS properly and never update their branc with the parent branch, you end up with lots of conflicts.

I find that for managing conflicts, rebase is very difficult as you have to resolve conflicts for every commit. You can either use rerere to repeat the conflict resolution automatically, or you can squash everything. But when you’re dealing with a team of Git-illiterate developers (which is VERY often the case) you can either spend the time to educate them and still risk having problems because they don’t give a shit, or you can just do a regular merge and go on with your life.

Those are my two cents, speaking from experience.

technom ,

I agree that merge is the easier strategy with amateurs. By amateurs I mean those who cannot be bothered to learn about rebase. But what you really lose there is a nice commit history. It’s good to have, even if your primary strategy is merging. And people tend to create horrendous commit histories when they don’t know how to edit them.

agressivelyPassive ,

Honestly, I’m pretty sure 99.9% of git users never really bother with the git history in any way that would be hindered by merging.

Git has a ton of powerful features, but for most projects they don’t matter at all. You want a distributed consensus, that’s it. Bothering yourself with all those advanced features and trying to learn some esoteric commands is frankly just overhead. Yes, you can solve great problems with them, but these problems almost never occur, and if they do, using the stupid tools is faster overall.

aniki ,

We use history and blame a lot

chamomile ,
@chamomile@furry.engineer avatar

@agressivelyPassive @technom That's a self-fulfilling prophecy, IMO. Well-structured commit histories with clear descriptions can be a godsend for spelunking through old code and trying to work out why a change was made. That is the actual point, after all - the Linux kernel project, which is what git was originally built to manage, is fastidious about this. Most projects don't need that level of hygiene, but they can still benefit from taking lessons from it.

To that end, sure, git can be arcane at the best of times and a lot of the tools aren't strictly necessary, but they're very useful for managing that history.

zalgotext ,

Yup, once you can use git with good hygiene, it opens up the door to add in other tools like commitizen and semantic-release, which completely automates things like version number bumps and changelog generation.

xigoi ,
@xigoi@lemmy.sdf.org avatar

I fucking hate auto-generated changelogs, so I consider that a downside.

agressivelyPassive ,

I’d still argue, that the overhead is not worth it most of the time.

Linux is one of the largest single pieces of software in existence, of course it has different needs than the standard business crap the vast majority of us develop.

To keep your analogy: not every room is an operating room, you might have some theoretical advantages from keeping your kitchen as clean as an OR, but it’s probably not worth the hassle.

zalgotext ,

To keep your analogy, most people’s git histories, when using a merge-based workflow, is the equivalent of never cleaning the kitchen, ever.

agressivelyPassive ,

No, it’s not. And you know that.

Seriously, ask yourself, how often did the need arise to look into old commits and if it did, wasn’t the underlying issue caused by the processes around it? I’ve been in the industry for a few years now and I can literally count on one hand how often I had to actually look at commit history for more than maybe 10 commits back. And I spend maybe 10min per year on that on average, if at all.

I honestly don’t see a use case that would justify the overhead. It’s always just “but what if X, then you’d save hours!” But X never happens or X is caused by a fucked up process somewhere else and git is just the hammer to nail down every problem.

zalgotext ,

Seriously, ask yourself, how often did the need arise to look into old commits

Literally every single day. I have a git alias that prints out the commit graph for my repositories, and by looking at that I can instantly see what tasks my coworkers are working on, what their progress is, and what their work is based on. It’s way more useful than any stand-up meeting I’ve ever attended.

I’ve been in the industry for a few years now and I can literally count on one hand how often I had to actually look at commit history for more than maybe 10 commits back.

I’ve been in the industry for nearly 15 years, but I can say that the last 3 years have been my most productive, and I attribute a lot of that to the fact that I’m on a team that cares about git history, knows how to use it, and keeps it readable. Like other people have been saying, this is a self fulfilling prophecy - most people don’t care to keep their git history readable, so they’ve only ever seen unreadable git histories, and so they think git history is useless.

I honestly don’t see a use case that would justify the overhead.

What overhead? The learning curve on rebasing isn’t that much steeper than that of merging or just using git itself. Take an hour to read the git docs, watch a tutorial or two, and you’re good to go. Understand that people actually read your commit messages and take 15 extra seconds to make them actually useful. Take an extra minute before opening an MR to rebase your personal branches interactively and squash down the “fixed a typo” and “ran isort” commits into something that’s actually useful. In the long run this saves time by making your code more easily reviewable, and giving reviewers useful context around your changes.

It’s always just “but what if X, then you’d save hours!” But X never happens or X is caused by a fucked up process somewhere else and git is just the hammer to nail down every problem.

No, having a clean, readable git history literally saves my team hours. I haven’t had to manually write or edit a changelog in three years because we generate it automatically from our commit messages. I haven’t had to think about a version number in three years because they’re automatically calculated from our commit messages. Those are the types of things teams sink weeks into, time absolutely wasted spent arguing over whether this thing or that is a patch bump or a minor bump, and no one can say for sure without looking at diffs or spinning up multiple versions of the code and poking it manually, because the git log is a tangled mess of spaghetti with meatballs made of messages like “finally fixed the thing” and “please just work dammit”. My team can tell you those things instantly just by looking at the git log. Because we care about history, and we keep it clean and useable.

thanks_shakey_snake ,

I gotta say, I was with you for most of this thread, but looking through old commits is definitely something that I do on a regular basis… Like not even just because of problems, but because that’s part of how I figure out what’s going on.

The whole reason I keep my git history clean and my commit messages thoughtful is so that future-me (or future-someone-else) will have an easier time walking through it later, because that happens all the time.

I’ll still almost always choose merge instead of rebase, but not because I don’t care about the git history-- quite the opposite, it’s really important to me in a very practical way.

chamomile ,
@chamomile@furry.engineer avatar

@agressivelyPassive You should still clean your kitchen though, that's my point.

agressivelyPassive ,

Did I say anything otherwise?

technom ,

Only users who don’t know rebasing and the advantages of a crafted history make statements like this. There are several projects that depend on clean commit history. You need it for conventional commit tools (like commitzen), pre-commit hook tools, git blame, git bisect, etc.

agressivelyPassive ,

Uuuh, am I no true Scotsman?

Counter argument: why do you keep fucking up so bad you need these tools? Only users who are bad at programming need these. Makes about as much sense as your accusation.

You keep iterating the same arguments as the rest here, and I still adhere to my statement above: hardly anybody needs those tools. I literally never used pre-commit hooks or bisect in any semi-professional context. And I don’t know a single project that uses them. And before you counter with another “well u stoopid then” comment: the projects I’ve been working on were with pretty reputable companies and handled literally billions of Euros every year. I can honestly say, that pretty much everyone living in Germany had his/her data pushed through code that I wrote.

technom ,

Uuuh, am I no true Scotsman?

That’s a terrible and disingenuous take. I’m saying that you won’t understand why it’s useful till you’ve used it. Spinning that as no true Scotsman fallacy is just indicative of that ignorance.

You keep iterating the same arguments as the rest here, and I still adhere to my statement above: hardly anybody needs those tools.

And you keep repeating that falsehood. Isn’t that the real no true Scotsman fallacy? How do you even pretend to know that nobody needs it? You can’t talk for everyone else. Those who use it find it useful in several other ways that I and others have explained. You can’t just judge it away from your position of ignorance.

xigoi ,
@xigoi@lemmy.sdf.org avatar

Why would you want to edit your commit history? When I need to look at it for some reason, I want to see what actually happened, not a fictional story.

technom ,

You can have both. I’ll get to that later. But first, let me explain why edited history is useful.

Unedited histories are very chaotic and often contains errors, commits with partial features, abandoned code, reverted code, out-of-sequence code, etc. These are useful in preserving the actual progress of your own thought. But such histories are a nightmare to review. Commits should be complete (a single commit contains a full feature) and in proper order. If you’re a reviewer, you also wouldn’t want to waste time reviewing someone else’s mistakes, experiments, reverted code, etc. Self-complete commits also have another advantage - users can choose to omit an entire feature by omitting a commit.

Now the part about having both - the unedited and carefully crafted history. Rebasing doesn’t erase the original branch. You can preserve it by creating a new branch. Or, you can recover it from reflog. I use it to preserve the original development history. Then I submit the edited/crafted history/branch upstream.

Atemu ,
@Atemu@lemmy.ml avatar

Because when debugging, you typically don’t care about the details of wip, some more stuff, Merge remote-tracking branch ‘origin/master’, almost working, Merge remote-tracking branch ‘origin/master’, fix some tests etc. and would rather follow logical steps being taken in order with descriptive messages such as component: refactor xyz in preparation for feature, component: add do_foo(), component: implement feature using do_foo() etc.

magic_lobster_party ,

How others are keeping their branches up to date is their problem. If you use Gitlab you can set up squash policy for merge requests. All the abomination they’ve caused in their branch will turn into one nice commit to the main branch.

trxxruraxvr ,

In a small team at a small company it becomes my problem pretty quickly, since I’m the only one that actually has some clue about what git does.

cyborganism ,

This. When they get any sort of conflicts in their pull request, it becomes MY problem because they don’t know what to do.

zalgotext ,

Heaven forbid my teammates read any documentation or make any attempt to understand the tooling necessary to do their job.

That being said, I taught my dumbass git-illiterate team members a rebase workflow, with the help of the git UI in Pycharm. Haven’t had any issues with merge conflicts yet, but that might just be because they’re too scared to ask me for help any more

expr ,

I don’t want squashed commits. It makes git tools worse (git bisect, git cherry-pick, etc.) and I work very hard to craft a meaningful set of commits for my work and I don’t want to throw all of that away.

But yeah, I don’t actually give a shit what they are doing on their branches. I regularly rebase onto master anyway.

RustyShackleford ,
@RustyShackleford@programming.dev avatar

Git-illeterate illiterate

cyborganism ,

Ah thanks.

northendtrooper , in Life Hack

Can’t they trace it back to you since you’re using a card to get that prompt?

survivalmachine ,

In my country, we can buy pre-paid credit cards in the supermarket using cash. I guess that is still traceable using supermarket security cameras and facial recognition, but if you’re attempting this, I’d make it as difficult as possible.

SnipingNinja ,

You just have to buy a prepaid card through another third party

Stoney_Logica1 ,

Prepaid VISA gift card purchased with cash.

TexasDrunk ,

Are there still places you can buy those that you wouldn’t be on camera and immediately trackable?

I’m not shitting on the idea, I’m just trying to make it as good as possible.

dbx12 ,

Masks don’t only protect from airborne viruses…

Stoney_Logica1 ,

Paired with a hat or hoodie with IR LEDs.

ProgrammingSocks ,

This isn’t even remotely viable. There’s so much isolation and “cloud” shit that it wasn’t viable from the start. It’s just a joke.

psud ,

Maybe. If they can identify which record was the last one changed and the last one changed its directly related to the one that made the change and the ended transaction statement successfully posted a transaction

If the SQL injection crashed that person’s transaction there’s little chance of finding the culprit

Coasting0942 , in Life Hack

Jokes on you. Restaurant owner too rich, behavior is within normal range for IRS AI.

Though the AI is interested on how your bank account is higher than it’s supposed to be.

itsnotits ,

Joke’s* on you

(Short for “The joke is on you”.)

Klear ,

Thank’s.

small_crow ,
@small_crow@lemmy.ca avatar

No, jokes. It’s plural because there are many jokes on you.

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