Python vs Scala

Which is most productive for one-man projects? Does Scala's strong typing mean less testing?

I've worked with Java and Python, and no, strong typing does not mean less testing. Types don't come into play when both use the same format for unit or integration testing, and with type hinting in 3.5, your IDE can quickly spot the usual type errors on the fly, just like strongly typed languages (it's more efficient to use the IDE for this than wait for compilation to return with an error)

By more produce, do you mean write less code/develop quickly for the same task? Then probably Python, it's higher level.

For anything robust, I'd use Scala. The development tools it provides (and the JVM) are extremely mature. Far superior language features compared to Python.

The one that let's you write code and not shitpost on Sup Forums obviously.

whichever you know

which lets be real is probably python

Why do people use languages other than java? How many of you actually code solely as a hobby or for fun? Programming can be a lucrative skill; so why do you guys invest your time half-assing it with all of these fragmentary languages?
If you are going to program, have some self respect and begin as a patrician by using the industry standard language that is java.

>Why do people use languages other than java?
What third-world shithole do you live in where """"""people"""""" still write web apps in Java?

Python is strongly typed. More strongly typed than C at least. Is dynamically typed the term you're looking for?

Because java doesn't take experience to use effectively.

Python, for the simple fact that its repository of third-party libraries DWARFS Scala's. Rather than spending 5 years (poorly) duplicating other people's work in a meme language that has lost steam, you can glue together a couple of Python libraries in a week and spend the rest of your 6-month contract fucking your waifu.

I use Python for work, but have worked with Java before

Just because you've never tried it, doesn't mean Python isn't mature. I personally find Python to be more mature in terms of support, security, testing, and its usage in web development, mathematics, science, ai, machine learning and a variety of other fields

Everyone who builds a new application will create the same old constructs/design patterns. Don't feel guilty that Python is an abstraction that implements many of these patterns, and then use the excuse that it is too slow. As a famous dev once said, computer time is important if your own time isn't

>java doesn't take experience to use effectively
what did he mean by this

Scala can use Java libraries too.

>I personally find Python to be more mature in terms of support, security, testing, and its usage in web development, mathematics, science, ai, machine learning and a variety of other fields

You aren't familiar with modern Java in that case. The development tooling surrounding the Java ecosystem is objectively superior to Python.

I made my post with modern Java in mind. Even if I loved Java to bits, with my build up experience with both languages, I would choose Python any day

Python
Scala's good but only if you're already pretty experienced with functional programming.

>The development tooling surrounding the Java ecosystem is objectively superior to Python.
in wot respect?

Not him but I've just got a job doing Java backend webdevving here in NY.

Anyone ever tried Groovy? Seems handy in having all the Java libraries at hand while at the other hand being almost a simple scripting language.

>java backend
lmfao
>new york
lmfao

>Which is most productive for one-man projects?
Depends on your skill but for most cases it would be python.
>Does Scala's strong typing mean less testing?
Yes.

Sounds terrible. JEE and Spring are disgusting monstrosities.

Does Scala have anything comparable to python's unittest? imo the expressivity and meta-configurability of python, plus unittest's mock and patch functionality is incredibly useful

Scala is going nowhere and peaked years ago. Even Typesafe has rebranded itself as Lightbend and is now focusing more on building Java APIs because industry use of Scala is practically nonexistent.

Between those two I would pick Python. If was absolutely forced to use the JVM I'd just use Java.

Do you want to run your code in production?

Do you want to maintain your code?

If yes to either: never use an interpreted, weakly typed language.

>le type safety = less bugs meme

>weakly typed language.

Python isn't weakly typed. Maybe you should learn about type systems before regurgitating shit you heard on Reddit.

There are also far bigger and far more production systems running perfectly fine on Python than Scala.

...

I do both and use the strongly-typed language known as python

t. Rajesh

> Scala

If you're going to pick a full blown meme language you might as well go with a decent one like Haskell or Ocaml.

Pajeets actually think Intellij/Eclipse/Netbeans makes JEE and Spring usable.

>make Spring usable
Is such a thing possible?

If I had to do webdev, I would rather choose MEAN over Spring and I dislike most of MEAN

I would pick any framework in any other language over Spring. Only the Java community could come up with something so utterly disgusting.

Why would you ever want less testing.

>implying any developer can into testing

>Testers are special people.

Python is strongly typed as well. You might be talking about static typing.

>Developers are special people.

Very few developers are good, just as very few testers are good.

wew lad

None of that implies that Python is weakly typed. Python is strongly typed and dynamically typed.

C is strongly typed, right? Give this a shot
int main()
{
int x = 2 + "3";
printf("x = %d", x);
}

That's called type narrowing and is type unsafe. You can write C++ that is type safe if you're not a complete fucking moron like you seem to be.

I'm just saying that this doesn't have to do with how strongly or weakly typed a language is.

Silent type coercion, user. That implies some degree of weak typing. pic related.

> C is strongly typed, right?
my sides

:^)

>functions can't take arguments of different types without it being weakly typed
Someone doesn't know the first thing about language design, do they? gb2reddit

No, that implies dynamic typing. Python is strongly typed and dynamically typed.

Python's actually doing the type conversion there. Since it's fucking dynamically typed. Not weakly typed.