
Ask HN: Do you prefer strong typed of dynamic typed languages? - NicoJuicy
I once loved dynamic languages ( eg. ruby, &quot;javascript&quot;) for being able to code fast.<p>But since working on constantly &quot;evolving&quot; software. I&#x27;m starting to have a serious preference for strongly typed ( eg. Typescript, c#, ..)<p>Eg. When i rename a class. I update my ( .net use case) nuget packages. Everywhere the errors are coming up where required. Change them and save them.<p>What is your preference and why?
======
osullivj
I like both: different tools for different jobs. In his seminal 1990 paper
Planning the Software Industrial Revolution [1] the immortal Brad Cox explains
why both are necessary.

[1]
[http://bat8.inria.fr/~lang/hotlist/free/licence/papers/cox/C...](http://bat8.inria.fr/~lang/hotlist/free/licence/papers/cox/CoxPSIR.html)

~~~
NicoJuicy
When do you use strong vs dynamic then? I also prefer the right tools for the
job. But on long term i seriously prefer strong typed languages.

If i skim through the article, i see he says they can co-exists. But i don't
see concrete examples.

Edit: When i look at spreaserve ;), that's definatly a use case for dynamic
typed. But that doesn't mean i prefer it in most cases.

~~~
osullivj
In SpreadServe the core spreadsheet engine is in C++, and there's a process
management and messaging framework in C++ too. The framework is wrapped in a
Python API, so new processes can be written in Python and/or C++. A deployment
is a cluster of co-operating server processes running on the same host,
talking asynchronously to each other via pipes. The web server and REST API
are coded in Python. RDBMS integration introduces two more processes, one in
Python, and one in Java. So low level performance critical framework code is
in C++. Higher level integration and UI code is in Python.

------
sidcool
I like strongly typed language for serious programming, viz. non scripting and
hacking away programming.

