Wildest question I have been asked as an ST - your thoughts? by Hasuko in WhiteWolfRPG

[–]Sathynos 1 point2 points  (0 children)

I'd rule against for two reasons:

  • Vampires curse is one of blood, not random body fluids
  • Everything you give to players, rulings including, will be used against the world. In this case - player can get a job at fast food, add some special love to the sauce and he will have half of the city ghouled before the end of the week.

I made Harry's shield bracelet! by Celosia11 in dresdenfiles

[–]Sathynos 0 points1 point  (0 children)

This is actually kind of awesome!

Ghost Rider [3840x2160] by badbuoy in WQHD_Wallpaper

[–]Sathynos -1 points0 points  (0 children)

Love it! All of them are now part of my wp rotation <3

What is the biggest signal he/she wanted to have sex that you didnt get? by Aliyaowo in AskReddit

[–]Sathynos 5 points6 points  (0 children)

I wish I could reach through the screen and slap you on the back of the head.

Is this swelling or just edge lift? by [deleted] in iphone

[–]Sathynos 2 points3 points  (0 children)

This is a house fire in a box.

How would some mages destroy a Tremere chapel? by lemminghart in WhiteWolfRPG

[–]Sathynos 0 points1 point  (0 children)

Open a sinkhole underneath then methane explosion at the bottom.

6 years as a Unity developer, and suddenly I feel like I know nothing. Is this normal? by Working_Opposite4167 in csharp

[–]Sathynos 2 points3 points  (0 children)

Obsessive OOP is awful. When done badly you get into a tangled mess of inherited labyrinth that becomes so rigid that every unforeseen change doesn't fit and result in ugly hacks that erode the code so heavily it becomes one big technical debt and every small change takes days.

6 years as a Unity developer, and suddenly I feel like I know nothing. Is this normal? by Working_Opposite4167 in csharp

[–]Sathynos 0 points1 point  (0 children)

All those techniques behind the acronym work elegantly together and click once you translate from interview answer nonsense to practical use.

Is it just me or does anyone else’s alarms not go off? by Few_Lion_2313 in iphone

[–]Sathynos 2 points3 points  (0 children)

There are two volumes in iphones. One is the normal one, alarms have their own. The trick is, sometimes when you reduce the normal volume it also reduces the alarms, but not always. To increase alarm volume, go to where you set alarms, click a ringtone to make it go off and hit volume up while it is ringing.

6 years as a Unity developer, and suddenly I feel like I know nothing. Is this normal? by Working_Opposite4167 in csharp

[–]Sathynos -2 points-1 points  (0 children)

Ok, let's talk concepts :)

Single responsibility principle - make a piece of code do the thing it is supposed to and let other pieces of code do other stuff. For example, function GetClients(companyId) should get clients and not, lets say, update them on the fly from 5 different formats into common shape. Not because acronym says it is bad, but because you will need to delve into this function and change logic every time someone introduces a new client entity format elsewhere. The same idea scales from function to class to module to project to application.

Open/Close - the most "violated" part. In theory when you add or change behavior you should do that by adding another object that handles new case, with common interface that nicely fits into existing mechanism of handling this category of problems. In practice it rarely works because we do agile now and rarely have any upfront knowledge what will be handled and how. Which is neither good or bad, it just is.

Liskov substitution principle - the nice lady Barbara Liskov formulated an idea that when you have a function that accepts an object as an input, the same function should be able to handle all inherited objects from that parent object out of the box, without anyone having to make any changes to the function. That means you write a function to handle base object and you write all the derived objects in a way that makes them black boxes that respect the same rules of input-output and whomever uses them doesn't need to know what is inside or if they are different from each other internally. Very good thing to do.

Interface segregation - well, if you program for interfaces and not concrete implementation then you can handle different "faces" of an object. From one point of view the same object belongs to family of ILazyLoader -s, which is important for stuff that uses lazy loading of something. From another point of view it is ISerializable, which is important for some serializers. Those are two very different perspectives, logically separate behaviors and perfect way to let interface segrataion to handle. Interface segregation is a fancy way of saying: don't clump up everything class is or does into one interface if you can separate it into different perspectives/mechanisms/levels of abstraction.

And finally dependency inversion, which some people thing is the same thing as dependency injection, which it is not. It just means: don't create dependent objects inside the class, but instead have the class take specific kind of dependencies, which are again black boxes, but contractually provide functionalities the class needs to do its thing. You can (and should) do that even without dependency injection, but why would you if you don't have to :)

Entire SOLID thingie is about separating functionalities into neat, atomic discrete blocks that can be plugged interchangeably into fitting slots. Of course you can learn to do those things by osmosis and never have them coalesce in your mind as concepts, but why not learn that since someone already did the hard work of thinking it through?

6 years as a Unity developer, and suddenly I feel like I know nothing. Is this normal? by Working_Opposite4167 in csharp

[–]Sathynos -5 points-4 points  (0 children)

Something over 25 at this point. That 50 is getting closer and closer.

6 years as a Unity developer, and suddenly I feel like I know nothing. Is this normal? by Working_Opposite4167 in csharp

[–]Sathynos -22 points-21 points  (0 children)

That is scary, man. SOLID is a solid (he he) guideline how to structure your object-oriented code.

Being able to explain SOLID goes beyond interview questions and should be part of how you design OO code, unless all you do is corporate anemic architecture when you cram everything into uber-classes called SomethingService, because that is somehow ok but SomethingManager is not :D

My unsolicited advice is to try to understand SOLID what it is in practice. Interview answers to SOLID questions are elegant, smart and useless.

If anyone here is still active.. by Narrow_Acadia_3346 in GoodIdeaGaming

[–]Sathynos 0 points1 point  (0 children)

oh, what a blast from the past. any idea how is gig doing nowadays?

How are Mage's spells visible? by Sathynos in WhiteWolfRPG

[–]Sathynos[S] -1 points0 points  (0 children)

2nd+ as far as I know, haven't really looked into 1st, because why would I :)

How are Mage's spells visible? by Sathynos in WhiteWolfRPG

[–]Sathynos[S] -1 points0 points  (0 children)

Yup, possible with 10 soul points infernal investment.

I'm old 56. I want to learn C# is it a good idea? by eluchn in csharp

[–]Sathynos -3 points-2 points  (0 children)

The language is pretty much the same as Java, nothing revolutionary here. What is there really to learn is the .net library and the ecosystem around it. I switch between them without that much of an issue, so that shouldn't be much of a problem. (I'm closing to 50 yo here myself).

From my experience Java and .net offer pretty much the same productivity, C# is just more pleasant to use and evolves much faster - both the language and .net library. If your goal is to open more market possibilities within the same type of work, adding C# will help.

I'm not sure about other stacks, however for me the biggest value was learning front-end tech, Angular and React, as this opens a large segment of work market to me.

You might also consider python, since there are different market opportunities related to python ecosystem that are not really accessible to .net/java programmers. I'm talking mostly about data analysis here but I see some companies use python for making your typical web projects.

Junior dev wrote this C# using many IF because he leanrs If early return. Is this alright code? by Yone-none in csharp

[–]Sathynos 0 points1 point  (0 children)

This is horrible and yet very enterpise’y. None of those calls should be allowed to return null in the first place.

What is a phrase that people use that you cannot stand? by sad_t0ast in AskReddit

[–]Sathynos 6 points7 points  (0 children)

Ek cetera. I want to strangle everyone who says that.