Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
redleader
Aug 18, 2005

Engage according to operational parameters
if you've ever written a right join, gently caress you

Adbot
ADBOT LOVES YOU

gonadic io
Feb 16, 2011

>>=
groovy is driving me loving INSANE

Even with a debugger, the fact that all the constructors and getters/setters are implicit based on the method names means that I'm having a hell of a time figuring out what is even getting called

FlapYoJacks
Feb 12, 2009
If you use a CLI to program just lol@you.

You aren't being more professional, you aren't being more hardcore, you are being loving stupid.
IDE's are great and cool and good and should be used. What can you possibly gain from the CLI that an IDE can't do + more?
If you have to edit a single file then sure, go nuts and edit it with the CLI, but to use the CLI as your main editor? LOL.

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder

gonadic io posted:

groovy is driving me loving INSANE

Even with a debugger, the fact that all the constructors and getters/setters are implicit based on the method names means that I'm having a hell of a time figuring out what is even getting called

why are you using groovy stop turn around!

Sapozhnik
Jan 2, 2005

Nap Ghost

ratbert90 posted:

If you use a CLI to program just lol@you.

You aren't being more professional, you aren't being more hardcore, you are being loving stupid.
IDE's are great and cool and good and should be used. What can you possibly gain from the CLI that an IDE can't do + more?
If you have to edit a single file then sure, go nuts and edit it with the CLI, but to use the CLI as your main editor? LOL.

dumb text editors are fine for dumb langs like c

gonadic io
Feb 16, 2011

>>=

MALE SHOEGAZE posted:

why are you using groovy stop turn around!

It's our legacy frontend app I'm connecting my scala apis to. I'm already job searching.

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder

gonadic io posted:

It's our legacy frontend app I'm connecting my scala apis to. I'm already job searching.

We're hiring if you want to move to Raleigh, NC!

(Also it's bad here). Although I like the people I work with a lot and will probably stay provided they give me enough free reign to fix our problems.

cinci zoo sniper
Mar 15, 2013




im trying to remember that one web page that had somewhat lengthy and fairly satirical overview of r, from point of view of a programmer in another language. does this ring a bell to anyone?

Ellie Crabcakes
Feb 1, 2008

Stop emailing my boyfriend Gay Crungus

Shaggar posted:

if you find that you use the command line a lot it means your tools are bad.

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder
i am using intellij's built in data source thing for writing /testing queries and it is comically better than trying to use dbeaver or pgadmin for query writing.

JawnV6
Jul 4, 2004

So hot ...

JewKiller 3000 posted:

try programming in java
lol why tho

Sapozhnik posted:

dumb text editors are fine for dumb langs like c

ratbert90 posted:

If you use a CLI to program just lol@you.
i didn't claim any of that, but cool that u brought an axe to grind?

no i know the specific refactoring that would be easier with an ide, they just don't come up often enough to justify switching over. it's the reverse of folks who only use CLI git for ONE task and that's subsequently the most difficult thing in the workflow

jony neuemonic
Nov 13, 2009

surely this time we'll get to the bottom of editors vs ides.

...i like visual studio :shobon:

MononcQc
May 29, 2007

fwiw I still think it would be way neater if any refactoring an IDE does could be done from a standalone executable (just give it a cursor or range to operate on). That way you could do that poo poo programatically as well, and not just when clicking things by hand like an idiot.

Like "okay you're moving from X to Y, run this program that auto-upgrades your poo poo for you".

It also means it should work from a command line, which would not be a loss.

Zemyla
Aug 6, 2008

I'll take her off your hands. Pleasure doing business with you!

:yeah:

Workaday Wizard
Oct 23, 2009

by Pragmatica

MononcQc posted:

fwiw I still think it would be way neater if any refactoring an IDE does could be done from a standalone executable (just give it a cursor or range to operate on). That way you could do that poo poo programatically as well, and not just when clicking things by hand like an idiot.

Like "okay you're moving from X to Y, run this program that auto-upgrades your poo poo for you".

It also means it should work from a command line, which would not be a loss.

this is the goal of language servers

made by msft so you know its good: https://github.com/Microsoft/language-server-protocol

MononcQc
May 29, 2007

Shinku ABOOKEN posted:

this is the goal of language servers

made by msft so you know its good: https://github.com/Microsoft/language-server-protocol

yeah, clojure and leiningen have something similar for their CLI tool. My guess is that you can integrate the entire clojure toolchain real easy in a thing like VsCode then.

Arcsech
Aug 5, 2008

MononcQc posted:

yeah, clojure and leiningen have something similar for their CLI tool. My guess is that you can integrate the entire clojure toolchain real easy in a thing like VsCode then.

looks like clojure doesn't speak LSP: http://langserver.org/

the point of LSP is it's a standard protocol, so for every language you make a server, and for every editor you make an LSP plugin, and now you have deep autocomplete/refactor/etc support for every language in every editor

what clojure does is kinda like that, except they do their own custom poo poo so you have to make a clojure-specific plugin for every editor. this is exactly the situation LSP is trying to stop

JewKiller 3000
Nov 28, 2006

by Lowtax

JawnV6 posted:

lol why tho

:homebrew:

redleader posted:

i had to write a couple of CROSS JOINs the other day. felt wrong

there's nothing wrong with cross joins, they're often useful for things like generate_series()

Shaggar
Apr 26, 2006

lol

HoboMan
Nov 4, 2010

redleader posted:

if you've ever written a right join, gently caress you

i found a right join yesterday and in a blind fury deleted it before i even stopped to consider side effects. i should probably submit a code review or something

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

Arcsech posted:

the point of LSP is it's a standard protocol, so for every language you make a server, and for every editor you make an LSP plugin, and now you have deep autocomplete/refactor/etc support for every language in every editor

I'm skeptical that LSP can provide sufficiently deep autocomplete and refactoring for some languages

there's a lot of contextual information that's involved in compiling typical C code (header include order, #define and -D preprocessor macros, etc.) that I can't tell whether it accounts for

if Clojure has macros and load like Common Lisp there could be similar levels of contextual information involved

HoboMan
Nov 4, 2010

oh no i have to architect something
mmmm, that wonderful sinking feeling that i am making bad decisions

Arcsech
Aug 5, 2008

eschaton posted:

I'm skeptical that LSP can provide sufficiently deep autocomplete and refactoring for some languages

there's a lot of contextual information that's involved in compiling typical C code (header include order, #define and -D preprocessor macros, etc.) that I can't tell whether it accounts for

if Clojure has macros and load like Common Lisp there could be similar levels of contextual information involved

I think all that poo poo is delegated to the language server, which usually reads standard project definitions (package.json for node stuff, cargo.toml for rust, etc) but could also read a .my_shit_lang_server_config or whatever for tools that don't have standard build system like c/c++

like, pretty much everything is delegated to the language server. the editor tells it "I'm at character 69 on line 420 in src/poop.butt, give me autocomplete info" or "give me the go to definition location" and the editor sends back some junk you can just shove into the ui. I don't know how that would limit context any more than existing tools do

e: nevermind what I had about refactoring here before I'm a moron. refactoring can be done in the language server, lsp exposes generic "Actions" to the editor

Arcsech fucked around with this message at 20:27 on Aug 30, 2017

ThePeavstenator
Dec 18, 2012

:burger::burger::burger::burger::burger:

Establish the Buns

:burger::burger::burger::burger::burger:

HoboMan posted:

oh no i have to architect something
mmmm, that wonderful sinking feeling that i am making bad decisions

When asked to justify your decisions just roll your eyes into the back of your head and ritualistically chant a throaty-sounding "MVC...MVC...MVC..." over and over while holding an inverted cross. That should satisfy management.

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder

Shinku ABOOKEN posted:

this is the goal of language servers

made by msft so you know its good: https://github.com/Microsoft/language-server-protocol

yeah rust has one too but it sucks atm

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

HoboMan posted:

oh no i have to architect something
mmmm, that wonderful sinking feeling that i am making bad decisions

1) what would you personally enjoy building?

2) figure out a way to justify it

"why yes, Idris is absolutely the industry standard in the sector, here are fifteen incomprehensible white papers that obviously say as much"

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

i am only very very barely joking. remember that companies exist to benefit people and not vice versa

Arcteryx Anarchist
Sep 15, 2007

Fun Shoe

NihilCredo posted:

i am only very very barely joking. remember that companies exist to benefit people and not vice versa

i think you mean exist to benefit a specific subset of people

akadajet
Sep 14, 2003

HoboMan
Nov 4, 2010

NihilCredo posted:

1) what would you personally enjoy building?

2) figure out a way to justify it

"why yes, Idris is absolutely the industry standard in the sector, here are fifteen incomprehensible white papers that obviously say as much"

i did this already when i said we should rewrite our most lovely and problematic page as a single-page-app
i regret everything
that was months ago and it's still not done lol

Shaggar
Apr 26, 2006
spas are the worst and javascript is the worst.

oh no blimp issue
Feb 23, 2011

programming is cool and good

akadajet
Sep 14, 2003

Shaggar posted:

spas are the worst and javascript is the worst.

no, you are the worst

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

lancemantis posted:

i think you mean exist to benefit a specific subset of people

precisely, so make sure you're one of them, whether the owners know it or not

JewKiller 3000
Nov 28, 2006

by Lowtax

Shaggar posted:

spas are the worst and javascript is the worst.

:agreed:

HoboMan
Nov 4, 2010

Shaggar posted:

spas are the worst and javascript is the worst.

but now i know that first-hand!

Shaggar
Apr 26, 2006
I liked knockout but the SPA routing poo poo is always super unmanageable. luckily steve sanderson has moved on from knockout and is working on fixing browsers forever with blazor

https://www.youtube.com/watch?v=MiLAE6HMr10&t=1860s

best thing ever is at 33:08

Sapozhnik
Jan 2, 2005

Nap Ghost
spas sound relaxing

Workaday Wizard
Oct 23, 2009

by Pragmatica
hey all can anyone tell me what i'm doing wrong here in this pom.xml? i want to try out jetty but maven tries to download a non-existent jar (https://repo.maven.apache.org/maven2/org/eclipse/jetty/jetty-project/9.4.7.RC0/jetty-project-9.4.7.RC0.jar)
XML code:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 [url]http://maven.apache.org/xsd/maven-4.0.0.xsd[/url]">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>project</artifactId>
    <version>1.0-SNAPSHOT</version>

    <dependencies>
        <dependency>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>jetty-project</artifactId>
            <version>9.4.7.RC0</version>
        </dependency>
    </dependencies>


</project>
e: i'm using intellij's built in maven 3

Workaday Wizard fucked around with this message at 22:28 on Aug 30, 2017

Adbot
ADBOT LOVES YOU

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder
slick is bullshit. gently caress slick.

here's the basic sql query I'm trying to write in slick:

code:
select invoice.id, sum(item.price) 
	from public."INVOICE" as invoice 
	join public."INVOICE_ITEM" as item on invoice.id = item.invoice_id 
	group by invoice.id;
here it is in slick!

code:
    val joined = invoiceTable join invoiceItemTable on (_.id === _.invoice_id)
    val grouped =
      joined.groupBy(_._1).map { case (invoice, grouped) => (invoice, grouped.map(_._2.price).sum) }

    db.run(grouped.result)
      .map(_.map { case (invoice, price) => invoice.copy(price = price.getOrElse(0)) })
i'm not going to post the generated code because it sucks but also it doesn't even properly parameterize poo poo so there's an attack vector there. it may be that it doesn't parameterized UUIDs because in theory a parsed UUID is injection safe but idk. i jsut dont know.

oh and it has an escape hatch in the form of plain sql queries. but guess what? it doesn't support interpolation of traversable types so you cant even do IN properly.

I'm switching to scalalike and I should have done so last week when gonadic io mentioned it.

DONT THREAD ON ME fucked around with this message at 22:41 on Aug 30, 2017

  • Locked thread