it's less about single words/phrases, more about patterns: - blanket statements that either treat something (e.g. OOP, type safety, unit testing) like a silver bullet or condemn some features (e.g. goto, global variables, constructors) to hell - this indicates a cargo cult approach and blindly repeating of programmer memes instead of actually thinking for yourself and trying to evaluate why those things are considered good/bad and why they are/aren't appropriate in solving your problems; this is the most common with enterprise and web developers but it's not like others are immune (see: functional purity zealots banging their heads against the wall to design pure video games, pure networking and pure device drivers, not realizing that the lack of state makes those particular things counter-intuitive and inelegant) - excessive focus on design patterns and avoidance of basic language features because they're not 'robust' enough - those things might be useful in some cases but if every single thing they do requires complex layers of abstraction and indirection, maybe the language they chose simply isn't the right tool for the job - complaints about the repetitive nature or programming - if you keep doing the same shit over and over again, you're doing something wrong; either you can't use the language well enough or you're both using a boilerplate-heavy langage (e.g. java, seeples) and are unable to automate your work; automation is seriously underrated, it allows you to be more productive than co-workers while shitposting on /prog developing your own interesting projects - securityfag bonus #1 - conflating encapsulation with security - where does this meme even come from? - securityfag bonus #2 - insisting on broken crypto because it's not yet epxloitable in practice - it's not yet exploitable in practice but it will be soon, attacks are not getting worse with time
Name:
Anonymous2016-12-07 12:50
type safety
Indeed, it is not a silver bullet. It is however a golden bullet.
goto is not necessary but may be useful for low-level optimization, e.g. in kernel code. global variables are useful for stateful programs with a global state - you can put everything in scopes but it will still function like global variables.
>>86 goto considered convenient for handling error cases in a single code path within one function
Name:
Anonymous2016-12-08 14:50
>>87 Then stop using your computer as a giant state machine!
Name:
Anonymous2016-12-08 14:59
>>87 global state considered helpful for when the problem is best modelled with a state machine. emulation is an obvious example - you could write a purely functional CPU (after all you don't need state to have TC) but you'd just be designing something labyrinthine and inefficient which offers no advantages over just having state.
mfw the functional programmer imperatively writes his haskell files to the global state that is his hard disk
(^:
Name:
Anonymous2016-12-08 22:04
>>87,89-91 Any kind of system has "global state". "Global state" means the state of the whole system.
If the CPU only generates heat and doesn't do any other communication, it still has global state.
I don't think something without global state can possibly exist. Try to describe it. If you can describe it, it has global state.
Name:
Anonymous2016-12-08 23:29
I only eat kosher
Name:
Anonymous2016-12-09 0:23
>>92 slippery slope, soon you could say the evil act of writing to a file is part of global state too, because you may delete it eventually so it's akin to RAM.
you could write a purely functional CPU (after all you don't need state to have TC) but you'd just be designing something labyrinthine and inefficient which offers no advantages over just having state.
A purely functional CPU could solve the halting problem.
Name:
Anonymous2016-12-09 8:17
>>92 statelesness is an abstraction, although it's often a useful one
>>114 three line handlers by themselves are not enterprise but they're a bit of a red flag. kinda like classes which are just wrappers and layers of indirection around other classes - they add up over time until most of the code basically does nothing.