I’m claiming Michelangelo for NA
He has a thousand ideas, and every now and then, one of them will be brilliant.
I’m claiming Michelangelo for NA
He has a thousand ideas, and every now and then, one of them will be brilliant.
Wouldn't a gradual re-factorization of most of the codebase be effectively the same as a rewrite?
Maybe we have different definitions of what a rewrite is. To me, a rewrite can be in the exact same stack. It seems like, from your responses, that you are taking rewrite to be a fundamental change of how the code works (aka using a different web stack). That's probably the correct definition anyways.
Gradual re-factorization in the same web stack doesn't seem fundamentally different than a rewrite in the same web stack.
My definition of a rewrite is 'We start over from scratch and build the same thing. It might be the same tech stack, but we don't re-use any of the old code.'
A good example of an (IMO, successful, rewrite, despite Reddit memes) would be the League client. The old League client was written in a proprietary stack and in such a way that made it a serious undertaking in order to add new functionality, like replays, which is one of the reasons the client was rewritten.
It wasn't that coding with the old League client was just 'hard'; it was difficult to hire for (proprietary stacks tend to be), difficult to write code in and it made a lot of assumptions about the rest of your tech stack outside of the League client that we in some ways still pay for today.
Security flaws rarely require foundational changes :)
You haven't worked on enough shitty web stacks where people abuse global variables and local storage, I take it?
I'm talking security through obscurity. IDK MAN. I think we have just had vastly different experiences.
I've been working as a software engineer for 7 years. I have worked in mom-and-pop companies, Riot, fintech companies. The entire time I've been using JavaScript as my primary language.
I am also a very active member on codereview.stackexchange.com, /r/webdev, /r/reactjs and stackoverflow.com.
Part of my job involves reviewing any code submitted for security review.
I have seen it all.
There've only been a few times in my life where I thought a full rewrite was mandatory. In nearly every case you can refactor gradually.
Which region gets Donatello?
EU because our plays are big brain
Wouldn't this mean a rewrite would only occur when the fundamental requirements have changed or a security flaw was found?
I think that's somewhat impractical, but I guess the burden is in the fact that you cannot prove a rewrite would be better until it's already done- which was your point, or at least some of it, I believe.
I think I'm just irritated because I am currently working on a web site (one of many at my company, we bounce around projects) that was done very, very poorly (sizable code base) and makes doing even some of the easiest tasks very difficult and usually quadruples the time it would normally take. This kind of technical debt is where I feel a rewrite is almost mandatory.
Wouldn't this mean a rewrite would only occur when the fundamental requirements
Yes.
There's no need to rewrite everything unless something very fundamental has changed. It's almost always better to refactor instead
security flaw was found?
Security flaws rarely require foundational changes :)
For what it's worth, I agree with everything said here.
Just want to throw it out there that a lot of companies refuse to rewrite old code even though the cost of rewriting the code is far less than the cost of the technical debt it creates over several years.
This is just another example of companies only being able to think in quarters, to their own detriment. To be quite honest, there is never a really good reason to leave shitty code shitty.
The biggest argument is time, but again every single new developer that works on that code base will end up spending more time than necessary trying to even become acclimated into the code base if it is bad enough. Let alone modifying it.
IDK. This is a big pet peeve to me. The entire mindset regarding legacy systems is understandable, but at the same time while being understandable I also think the current approach of most companies is incorrect.
Most of the companies you're referring to are successful, though, and therein lies the rub. Can you make the argument that these companies would be more successful by either rewriting or modifying a system that, from a business perspective, still works? How do you prove that?
The problem with rewriting is that you're proposing that you take a system that works (if imperfect) and suggesting a business invest a lot of time in coming up with a new system that is functionally identical to the old one but is somehow 'better' from a code quality perspective (which may or may not translate to increased value to customers ergo more $$$ for the business).
So, the problem for any engineer proposing a rewrite is how exactly does the rewrite equate to more value for the business and is that worth the time investment? not only would it cost money to pay developers to do this, QA, etc, but it also takes time away from those engineers from doing something that has a more ...
Read moreTMNT = TournaMeNT. TMNT1 is tournament realm 1 for example.
You're correct, but I'm now starting a petition to rename the tournament realms to teenage mutant ninja turtle realms because that's way cooler
yeah, if you got into programming via an unusual way, it can happen that you do not have a github account, stackoverflow etc
Many programmers and software developers etc do not even know how wrong and how far away from their meant use some programming languages are being utilized.
while i was studying for my scientific degree I first got in contact with c++ and python in my bachelor's and master's thesis, and boy you do not want to see the code of some doctorates there. im talking about many 1000 lines of code, not one single class which could have been useful, sometimes not even a single function declared. everything hardcoded, mostly uncommented, and sadly, many many severe mistakes, that caused many problems for my thesis, but not for the doctors thesis, cause it was already done and he got is summa cum laude.
Very frustrating and shocking experience for me, completely knocked me away from university and becoming a doctor...
If you dropped out of getting a doctorate because you saw some bad code, my dude, I have bad news for you.
There's a reason why it's almost a meme that newly hired programmers at any company propose to rewrite everything because 'the previous guy had no idea what they are doing'.
All code is terrible, undocumented, hardcoded, etc. What matters is that it works. All we can do as engineers is try to leave a codebase in a better place than we found it, but ultimately quality is always going to be compromised by other factors (usually deadlines)
I fully expect to get some backlash from this comment given some of the memes around spaghetti code, but it's true.. you're not going to be in the field very long if you quit after seeing bad code.
Nah, its just a red herring
I mean, I understand the joke, but this very much did happen.
huh. that happened.
That was something
This was great to watch. It's great to see how you can truly abuse certain match-ups, but this does leave me with a question.
Is there anything Jensen(Akali) could've done? With the way the match-up plays out it seems like there was no real answer. I guess at a pro-level, everyone is on the same page and kinda accept it from draft phase, and attempt to make plays elsewhere.
I think here there were two things that could have been done differently:
Had Jensen not TPed, this lane probably would have gone back in his favour since Orianna ended up roaming for nothing and iGs jungler died.
Hi!
The main difference is the neutral objectives that the lane is closest to. Top lane is closest to the Rift Herald and bottom lane is closest to the Dragon.
The dragon is generally more valuable and easier to take early on in the game, so teams tend to position a Marksmen (a champion that is weak until later on in the game) and a Support (a champion that is a bit stronger and mostly exists to protect the Marksman, with a few exceptions) in the bottom lane.
This lets each team have four people able to take the dragon early game.
Because most of the focus early game tends to be around the Dragon area (again, it's easier to take and, in general, more valuable), top lane doesn't tend to get much attention. Champions that go top lane need to be fairly self-sufficient and strong right from the get-go, so these champions tend to be bruisers (who are strong melee range fingers), tanks or occasionally ranged champions (which can beat up bruisers and tanks)...
Read more[deleted]
You're not going to get a presence of mind proc on Akali if you can only use two Qs :P
akali W and R
lower dmg on dash and high cd on smoke and the champ is fine and balanced.
This kills the Akali. She needs her energy regen :P
[deleted]
by having lp gains and losses weighted by individual performance, like overwatch does with sr losses and increases
you already have an individual performance system
you can weight lp gains losses by how badly someone gets rated by said system, unless you're going to admit that the grade system is broken
The grade system isn't broken, but it's meant to be a cosmetic thing. I'm not sure it's ready to be used to determine who ends up climbing ranks or not.
(Speaking as a player, not a designer, because I am not a designer)
How would you define who the best players are?
The easiest way to determine who the best players are is whether or not they won the game. Any other metric would likely lead to abuse. For example, if you measured by KDA, players would play incredibly conservatively to avoid dying at all so that they would have a perfect KDA.
it's all about the point of view: I am not good at this game and I am way higher placed at the rating than him. Thus I have to think he is bad as well.
But my attitude makes me hungry. I chase improvements. I eventually want to become a good player!
I am not satisfied with a lot of things I do ingame.
I am not good at this game and I am way higher placed at the rating than him. Thus I have to think he is bad as well.
There's nothing that says you have to discredit other players achievements in order to acknowledge that you aren't as good as you'd like to be.
Thanks to playing so much of this game, I know there's a lot I don't know, therefore it feels like I'm bad at the game (and I say it a lot in game as a self-deprecating joke). However, I also know that I have the knowledge to know that there's a lot I don't know, which makes me a lot better than I would otherwise give myself credit for. ...
Read moreDepends on how you define bad player. One of the first definitions of "bad" on Google is "not such as to be hoped for or desired". I would assume that you would desire to be about as good as other people that have put in the same amount of work and practice that you have at something. As a very rough analogy, if a baby can take 10 steps at 6 months old they are very good at walking, but if a full grown man can take 20 steps before falling you would say they are bad at walking, even though they are much better at walking than the baby
I think most people here, including OP, are defining bad as the antonym of "good". If you're platinum, you're definitely good at the game, so by definition not bad.