|
useful autocompletion falls into two categories: statically-typed, (possibly-)compiler-supported, context-sensitive fact lookup about the codebase, and completely generic token-based completion that makes no attempt at context-sensitive information whatsoever, merely showing you the names of tokens that exist in the codebase. Anything in between (see: any attempt at intelligent static analysis of Javascript) is effectively useless if not harmful. if the auto-complete list shows Foo and Bar but not Baz, then Foo and Bar drat well better be valid in that context, and Baz better not be, and to be really useful, no other tokens better be valid there either. otherwise it's just telling you bullshit and your cognitive load goes way up trying to figure out just which information is erroneous.
|
# ? Oct 10, 2016 16:21 |
|
|
# ? May 18, 2024 03:22 |
|
Cybernetic Vermin posted:this kind of gigantic surface-area is a bit of a java'ism anyway (a million tiny and arbitrarily delineated abstraction units tossed in a pile without thought), ideally you'll have codebases which do not require an encyclopedic knowledge of the breadth of the system this is dumb.
|
# ? Oct 10, 2016 17:48 |
|
good auto complete is insanely good, regardless of whether stupid idiots use it to grub around their garbage code bases. the argument that "well, I just write code good enough to not need autocomplete " is asinine and made by jealous plangers. meanwhile the rest of us don't need to wait till runtime to figure out we called the wrong method or got the arguments out of order or switch to the stdlib docs just because we forgot the exact name of the method that foozles bars or whatever because we use it once every two years.
|
# ? Oct 10, 2016 17:57 |
|
leftist heap posted:good auto complete is insanely good, regardless of whether stupid idiots use it to grub around their garbage code bases. the argument that "well, I just write code good enough to not need autocomplete " is asinine and made by jealous plangers. meanwhile the rest of us don't need to wait till runtime to figure out we called the wrong method or got the arguments out of order or switch to the stdlib docs just because we forgot the exact name of the method that foozles bars or whatever because we use it once every two years. I've found error highlighting way more useful generally than autocomplete/docs, but it's pretty close.
|
# ? Oct 10, 2016 18:19 |
|
you are very much reading a lot of backwards value judgements into that: java-style java is the way it is for good reasons, it finally brought about a situation where programmers are a at least somewhat fungible resource, in that as long as you keep up the tiny abstraction style and have the right tooling you can replace most programmers with other similar ones bringing the tooling to other platforms does not solve the entirety of the problem, one also needs the approach and pretty delineated style. i do in fact don't believe that much in the value of the tooling on other platforms, in like c you certainly tend to need to understand the context you are in more deeply than just auto-completing something vaguely remembered all in all not very romantic, but it is what at least enterprise software needed
|
# ? Oct 10, 2016 18:30 |
|
java is good in large part because special snowflakes fresh out of college think it's boring. yep. totally. java sucks, it's an awful language for bad programmers doing stuffy boring jobs. please don't come here. bye.
|
# ? Oct 10, 2016 19:00 |
|
i mean yeah, they're right. java is boring. this is a good thing.
|
# ? Oct 10, 2016 19:01 |
|
to be fair, Java does suck rear end
|
# ? Oct 10, 2016 19:05 |
|
there are much better boring languages than Java.
|
# ? Oct 10, 2016 19:09 |
|
i thought Java was really bad when I was learning it in school because i was never told about those fancy "IDE" things and was doing all my programming in notepad like a animal then when i tried using Eclipse i didn't like it and doubled down on the loljava but then i tried NetBeans and it was fine and that is what I use for Java now. also i dont Java anymore.
|
# ? Oct 10, 2016 19:09 |
|
i wonder if in carpentry school they teach you to use a hand saw for everything and then when you finally get your first job you're handed a circular saw and you have no idea how to use it.
|
# ? Oct 10, 2016 19:39 |
|
comp sci should not be carpentry school, it's supposed to be saw design school
|
# ? Oct 10, 2016 19:48 |
|
hackbunny posted:comp sci should not be carpentry school, it's supposed to be saw design school imo it should be a study of 'what kind of things can we build using saws?' but this analogy sucks!!
|
# ? Oct 10, 2016 19:54 |
|
Ploft-shell crab posted:but this analogy sucks!! i know lol
|
# ? Oct 10, 2016 19:54 |
|
Sapozhnik posted:i mean yeah, they're right. java is boring.
|
# ? Oct 10, 2016 19:56 |
|
imagine if people treated all languages the way they treat programming languages i'm bored with english, i'm gonna write all my work emails in klingon because it's way more expressive
|
# ? Oct 10, 2016 19:58 |
|
Cybernetic Vermin posted:you are very much reading a lot of backwards value judgements into that: java-style java is the way it is for good reasons, it finally brought about a situation where programmers are a at least somewhat fungible resource, in that as long as you keep up the tiny abstraction style and have the right tooling you can replace most programmers with other similar ones well then i'm not really sure what your point is?
|
# ? Oct 10, 2016 20:02 |
|
Asymmetrikon posted:there are much better boring languages than Java. probably. nobody uses them tho. java has its flaws. if i had a time machine i'd go back in time and make james gosling fix them. but i don't.
|
# ? Oct 10, 2016 20:02 |
|
Sapozhnik posted:probably. nobody uses them tho. i think c# is pretty commonly used.
|
# ? Oct 10, 2016 20:03 |
|
Sapozhnik posted:probably. nobody uses them tho. i would just show my teenage self a 200 GB microSD card.
|
# ? Oct 10, 2016 20:06 |
|
leftist heap posted:well then i'm not really sure what your point is? that the tools (autocomplete and friends) are mostly essential for java due to the very specific style in which java is written, the second one was just to clarify that this is not a bad thing as such
|
# ? Oct 10, 2016 20:09 |
|
Soricidus posted:imagine if people treated all languages the way they treat programming languages when i get drunk i speak another language (native language where i live now vs english (my native language)) and its pretty fun doing this hth
|
# ? Oct 10, 2016 20:46 |
|
Mr SuperAwesome posted:when i get drunk i speak another language (native language where i live now vs english (my native language)) and its pretty fun doing this hth grats, that sounds cool and good the pl attitude I'm criticising is more analogous to "english sucks, I'm going to rewrite all our contracts in lojban so they'll be unambiguous and we won't need lawyers"
|
# ? Oct 10, 2016 20:53 |
|
Soricidus posted:grats, that sounds cool and good reminder that "we'll just write all our contracts as code embedded in the blockchain and then we won't need lawyers" is something people actually tried
|
# ? Oct 10, 2016 21:03 |
|
are trying you mean
|
# ? Oct 10, 2016 21:08 |
|
Cybernetic Vermin posted:that the tools (autocomplete and friends) are mostly essential for java due to the very specific style in which java is written, the second one was just to clarify that this is not a bad thing as such imo there's more to it than that. the degree to which java inherently needs tooling is generally overstated. its insane popularity and the amount of money being poured into it drove the tooling, but that popularity was certainly driven by its ability to make idiot programmers more productive (or more accurately less outright destructive). maybe i'm just splitting hairs now tho
|
# ? Oct 10, 2016 21:18 |
|
leftist heap posted:imo there's more to it than that. the degree to which java inherently needs tooling is generally overstated. its insane popularity and the amount of money being poured into it drove the tooling, but that popularity was certainly driven by its ability to make idiot programmers more productive (or more accurately less outright destructive). maybe i'm just splitting hairs now tho Sadly, that just means even more idiotic programmers will find work.
|
# ? Oct 10, 2016 21:27 |
|
Xarn posted:Sadly, that just means even more idiotic programmers will find work. we all gotta eat
|
# ? Oct 10, 2016 21:39 |
|
like, if you follow that line of reasoning we should make languages harder to use and the tooling worse?
|
# ? Oct 10, 2016 21:39 |
|
leftist heap posted:like, if you follow that line of reasoning we should make languages harder to use and the tooling worse? yeah, it's totally possible at this juncture to remove the ability for normal folks to control their machines and return that birthright to us and our kin alone
|
# ? Oct 10, 2016 21:51 |
|
a girl can dream
|
# ? Oct 10, 2016 21:56 |
|
Xarn posted:Sadly, that just means even more idiotic programmers will find work. java limits the amount of damage bad programmers by forcing certain behaviors and also making certain patterns easy to spot. it doesn't prevent bad programmers, but it lets you control them much better than if you had them on a p-lang.
|
# ? Oct 10, 2016 21:58 |
|
Sapozhnik posted:java is good in large part because special snowflakes fresh out of college think it's boring. C# is honestly the best compromise of productivity and dullness
|
# ? Oct 10, 2016 22:02 |
|
c# needs maven so bad
|
# ? Oct 10, 2016 22:05 |
|
c# is only just gaining a credible port to Linux. Maybe in five years when it has a credible track record I'll consider it. As I keep saying, I really wish Java had async/await, but the stupefying badness of the java.util.concurrent.Future interface makes this rather difficult. java 8 + guava + guice + autovalue = extremely good (and maven of course, but you already knew that)
|
# ? Oct 10, 2016 22:11 |
|
C# also needs a better SQL mapper.
|
# ? Oct 10, 2016 22:12 |
|
leftist heap posted:imo there's more to it than that. the degree to which java inherently needs tooling is generally overstated. its insane popularity and the amount of money being poured into it drove the tooling, but that popularity was certainly driven by its ability to make idiot programmers more productive (or more accurately less outright destructive). maybe i'm just splitting hairs now tho the converse is more key: java and the standard approach to java is such that auto-completing your way to code tends to work out well: you will seldom find yourself getting something vastly different than what you expect calling some method you find by auto-complete we do rather need to not consider the somewhat blunt approach to software "idiot" territory either, apartment buildings are not built by cabinet makers. the few old english houses more or less were built that way and may be fantastic pieces of art, but they are often not that nice to live in, and it would be a hopeless way to actually get people usable housing on any kind of scale
|
# ? Oct 10, 2016 22:42 |
|
Xarn posted:Sadly, that just means even more idiotic programmers will find work. christ what an rear end in a top hat
|
# ? Oct 10, 2016 23:03 |
|
i encounter this the most from the wrong end of the dunning kruger curve i mean i'm still an elitist jerk but I try to reign it in
|
# ? Oct 10, 2016 23:03 |
|
|
# ? May 18, 2024 03:22 |
|
the twist ending is we're all idiot programmers
|
# ? Oct 11, 2016 00:32 |