Greggman is a game and web graphics developer who writes about programming, WebGL, typing debates, and old game development.
HN mostly links it for the dynamic versus static typing post, where commenters cite its points on faster development and shorter code.
Near future: Scala.
There is more professional work being done in Scala, and it makes it more palatable to managers that it runs on the JVM and allows them to leverage some of the existing knowledge of their Java programmers.
In the financial world, however, F# use is on the rise.
I currently work in F# but not in finance, and the lack of mature libraries for common things (like JSON serialization!) makes it a major pain in the behind.
Were I told to select a functional language, "quick!", I would select Clojure when caffeinated, and Javascript (ES7) when not.
FWIW: I subscribe to the notion that dynamic typing with unit testing will get you a correct and working program faster than static typing. In the case of Clojure, you now have clojure.spec, which means you can write conformance criteria as functions and generate tests and test data.
http://games.greggman.com/game/dynamic-typing-static-typing/
https://news.ycombinator.com/item?id=10933524
Where is the evidence that static typing results in a net benefit? There's some evidence that points in the opposite direction:
http://games.greggman.com/game/dynamic-typing-static-typing/
When a language imposes static types, it also imposes a development cost, possibly negating all the value it brings.
Typescript is a little in the middle in that static typing is optional, but then you also don't reap the supposed benefits wherever you don't use it. Any "tool-based" refactoring is now less reliable than a simple text search.
As for catching type errors, those are usually caught very early. If they aren't, that points to a lack of test coverage.
As for the "documenting" aspect: The article claims that by static typing, the documentation need not be consulted, which is rather irresponsible. If you use a function, you had better read the documentation. I know that's a bit much to ask from actual developers, but it's true.
I wasn't saying tar is better than zip (though if you want to read about issues with the zip file format, have a look at this post: https://games.greggman.com/game/zip-rant/ -- HN discussion: https://news.ycombinator.com/item?id=27925393). I'm just saying there's nothing about the tar file format itself that makes you loathe it, you just loathe that Windows doesn't support it. That's not a problem with tar.
I don't even know if it's true that tar is less common than zip. I know zip is incredibly common, but truly, so is tar. In the UNIX world, _everything_ happens through tar. And as someone who almost exclusively operates in the UNIX world, I interact with zip files very rarely, while I work with tarballs all the time.
Just don't blame the format for a deficiency in your operating system, that's all I'm saying.
I do have such experience and I really can't tell that. Which is why I wondered if anyone else was in fact saying that.
> But here is your internet source for this blatantly obvious fact: https://games.greggman.com/game/dynamic-typing-static-typing...
Ah no I meant a proper peer reviewed source. The claim that untyped code has fewer bugs is completely bonkers, so I was quite sure that no such source existed.
Why do you think microsoft, google and facebook are all in the business of typechecking python? If typechecking would actually introduce bugs, it'd be better not doing it right?
Using github for statistics is flawed. There are millions of 10 line js libraries. Yes it's easy to not make type mistakes in 10 lines. I suppose that type errors increase more than linearly with size.
Here's a study:
https://games.greggman.com/game/dynamic-typing-static-typing/
The key points are as follows:
* Development in Dynamically Typed Languages is faster
* Dynamically typed languages use less lines of code than statically typed languages by a significant margin
* The level of bugs is the same between Dynamically typed and Statically typed code.
"You can write almost completely typeless, highly performant, c and assembly code,"
Yes, I'm sure the LOAD instructions take pictures of cats as operands via their typeless instruction sets... What in earth are you on???
"completely typeless, highly performant, c"
well once someone does that let me know. The only thing near is Javascript and that is only faster for microbenchmarks not real programs.
I wrote up a blog post on an idea of what if google had a site that looked similar to youtube, but was links to webpages instead of videos. Like youtube it would let you "subscribe". Also like youtube if would recommend other articles based on your subscriptions and/or clicked links.
My "aha moment", assuming it was an aha moment, was noticing the number of views on certain youtube channels and believing that blog posts generally don't get a similar number of view. At first I thought the obvious reason is people like videos more than blog posts. But then I thought, well, maybe one reasons is because youtube recommends more things to watch as well as lets you subscribe and blog posts don't.
https://games.greggman.com/game/google-like-youtube/