oblique63
http://blog.nikosbaxevanis.com/2015/04/25/fsharp-on-emacs-wi...
Just curious, is this with regards to Elm / ML-style static typing specifically, or were you talking about it in combination with languages like C#/Java/etc?
I'm an elm noob, but I've been using F# for a good while, and its ML style of static typing is almost like the exact opposite experience of working with things like Java. Significantly less code, less boilerplate, and more expressive[0][1]. For example, one of the coolest features of F# that really showcase this, are type providers:
https://channel9.msdn.com/Blogs/Seth-Juarez/Type-Providers-i...
With them, you can leverage F#'s type system to automatically infer the structure and type of any external data source. Which means practically zero boilerplate or "ORMs" needed for things like reading-from/writing-to databases, making web api calls, parsing json/xml, or even interfacing with packages from entirely different languages like R [2].
So static typing can definitely have a lot of cool/practical benefits besides just catching bugs that make life easier, while still maintaining the flexible/lightweight feel of languages like python. However languages like C++ and Java have definitely seemed to have given it a bad name for a while, and haskell's whole tie-in with abstract math hasn't historically made it very accessible for us average programmers to notice all the tricks it has up its sleeve.
Elm is still young and I'm a total novice to it, but after working in F#, I'm definitely sold on it and like where it's going.
[0] https://fsharpforfunandprofit.com/series/why-use-fsharp.html
[1] https://skillsmatter.com/skillscasts/4971-domain-driven-desi...
https://github.com/jonathanchu/atom-one-dark-theme
https://github.com/NicolasPetton/zerodark-theme
https://github.com/nashamri/spacemacs-theme (not really an atom/dark-one clone, but pretty good nonetheless)
Visual Studio is still a bit nicer with regards to handling all the .fsproj stuff, and visually showing you the order of your files, but the editing itself on vscode is definitely on-par with it.
I'd say having a large line spacing, an unjustified text layout, and a darker/lower-contrast[2], all help more than the font choice itself, but any tiny optimization is helpful.
[0] as a former graphic designer, it actually took me a while to get comfortable with the idea that I found Comic Sans useful for anything, lol
I wish there were (more?) people who feel about software like Steve Wozniak feels about hardware. Because it is an art, a pursuit of perfection.
Didn't mention anything about shipping popular software, so I'm not sure where you're getting that metric from, but it's completely irrelevant to what OP was describing, and uncle bob fits OP's description perfectly. His talks show how passionate he is about code as a craft, and how he wants to strive for perfection. The popularity of his code doesn't take away from that (not to mention that Jobs played a significant role on Woz's end for that, so it's not exactly an apples-to-apples comparison either). The fact that Martin has good rationales to support his ideas is just an added bonus in that regard. I get the impression that he's disliked more just because people have a fear of falling into the 'java culture' than because of his actual arguments.
Also, Linus is nothing like Woz other than their shipping of popular products. Nothing against the guy, I'm sure we're all grateful for his work, but he doesn't seem to display the same kind of childlike wonderment of his craft like woz does.
Uncle Bob in particular (the author of Clean Code[0], The Clean Coder[1], and the Clean Coders videos[2]) is a lot like Wozniak.
[0] http://www.amazon.com/Clean-Code-Handbook-Software-Craftsman...
[1] http://www.amazon.com/Clean-Coder-Conduct-Professional-Progr...
The cost of abstracting away the DOM isn't as much as I would've expected compared to the cognitive overhead of switching back and forth between languages, making sure everything is linked up nicely, as you normally would. There are a few times when that abstraction can lead to annoying hidden bugs, but overall I've found the workflow to be much nicer.
http://www.xda-developers.com/android/exclusive-android-l-lo...
At least for this particular example, dart supports an 'isNotEmpty' property on all iterables[0], so it'd just be this:
if (arr.isNotEmpty) { ... }
The core libraries support a lot of useful properties like that.[0] https://api.dartlang.org/apidocs/channels/stable/dartdoc-vie...
This post in particular seems to be advocating the concept of having a single 'aggregate root' as opposed to independently loaded 'entities', and Flux sounds like it just advocates the use of an 'event bus' to send separate 'read'/'write' 'commands' to 'domain objects'... the main difference of course being that all this recently has been specifically with the browser in mind. Is that a reasonable assessment?
Thanks for the support! I've been working on a collaborative editing solution of my own for a while (though not for code), and can definitely appreciate the work that goes in to such a thing.
But overall it's pretty effective for those times when you just need to look at code with someone remotely.
All-in-all, still not a very straightforward 'improvement' path performance-wise -- at least not from the end consumer's point of view.
EDIT: I can't believe people seriously downvoted you for that simple comment. The pedantic negativity this community is filled with is ridiculous sometimes.
We literally do not know that. Similarly, we cannot know that about soylent either. Because we simply do not know enough about human nutrition to be making these kinds of statements yet. The government's "Recommended Daily Intake" system is just a veneer over our relatively primitive understanding of nutrition to help give us some very basic possible guidelines (which are still quite susceptible to being wrong). The unfortunate part is that people take these 'recommendations' to mean that we virtually know all there is to know about nutrition when that is truly far from reality...
I'm confident that we'll get there eventually, but first the quality of nutritional research will have to improve significantly, and it'll be far more work than any one meal-replacement company can hope to realistically invest in. So as much as I am for soylent 'pushing the boundaries' in that area, it's gonna take a lot more than that to get us a full-diet-replacement figured out for sure.
I've been wondering about why so many python devs have migrated to using Go recently instead of Julia, given that Julia is a lot closer to python and has performed as good as, if not better than, Go in some benchmarks [1]. Granted I've really only toyed with Julia and Go a few times as I've never really needed the performance much myself, but I'm curious about your preference of Go/Rust over Julia for "the other stuff".
What would you say makes Julia less suitable (or Go more suitable) for nonscientific applications? Is it just the community/support aspect? Cause that seems like an easy tide to overturn by simply raising more awareness about it (we see Go/Rust/Haskell blog posts on the front page of HN every week, but not too many Julia posts).
Just curious cause I'm not nearly experienced enough with any of these young languages yet to know any better, and have only recently started to consider taking at least one of them up more seriously.
Recently saw a really interesting well-researched Norwegian documentary that explores this topic and kinda throws that whole view into question:
http://www.youtube.com/watch?v=MGfhQTbcqmA
http://www.slideshare.net/AnnholmMSCCC/identifying-neurocorr...
http://www.keys2cognition.com/papers/EEGandSocialCognition.p...
Because right now this is looking like an isolated incident (albeit an inconvenient one for Canonical's PR), so it could be meaningless to try and read into it too much...
@davedx: Thanks. More people should speak up about this sort of nonsense, cause it's really getting old...