HN user

shrugger

75 karma

If you saw Atlas, the giant who holds the world on his shoulders, if you saw that he stood, blood running down his chest, his knees buckling, his arms trembling but still trying to hold the world aloft with the last of his strength, and the greater his effort the heavier the world bore down upon his shoulders - What would you tell him?

Posts0
Comments93
View on HN
No posts found.
How to Make an RPG 10 years ago

Then don't read it. In several years you've made only a couple negative, snarky comments on HN.

If a guy writes an entire book and you don't want to read it because he made a spelling mistake, then don't.

That is exactly true!

I have experience teaching kids Lua, and with the right metaphors and a little bit of backtracking and foundation-building, even complicated ideas like emulating classes and single inheritance can be understood and even implemented by young students.

If I taught them lua reserved keywords, and a couple little math tricks here and there, they usually would all bunch up everything into a couple huge functions, and their game would (sort-of) work but be impossible to reason about, and very painful to extend.

Introducing objects as a way to represent things that they want the game to do (draw things, shoot things, eat things, etc), it becomes clear to them that there is merit in structuring programs with objects beyond "shrugger says to do it like this!"

OOP on its own doesn't make much sense. You can't teach someone to drive stick shift if they don't know what a car is. Maybe you could, but that's probably even worse.

You misunderstand how capitalism works. If you don't want these companies to succeed, don't give them money and don't give them data they can make money from.

I don't use Facebook products because I don't want to give Zuckerberg my money. I don't use Apple because I don't want to give money to a company whose original figurehead thought that wearing Mom-jeans to press conferences was in any way professional.

The point is that these companies, however monopolistic they might seem to you (and me), are driving innovation several orders of magnitude faster and more efficiently than organizations like Mozilla or GNU. A company exists to make money. That's an ethos that I personally find more consistent and more comfortable to think about than "we should make software that EVERYONE can use" and it's a safer bet as well, since these companies will go out of business if they don't make money whereas GNU/Mozilla/et al will vomit out software that sorta works for a million years.

Also, machine learning is not about predicting the future anyways, it's almost exactly the opposite. Understanding what people have done is much more actionable than trying to figure out what people are GOING to do, because we are very fickle, complex, imaginative creatures. Could you have predicted that I'd write this comment? No. Could a program that has read every previous comment that I've ever made predict this comment? No. Could it predict that I might write a comment of a similar nature? Sure. If we were playing poker and I thought that you were going to fold, that's much different from some algorithm that was CERTAIN you were going to fold.

I understand, but your opinion doesn't change the facts. Scala.js is more than mature, with some huge projects already built in it. I'd not heard of erlangonxen, but it would take a lot of convincing to re-write something in Erlang to begin with, when I could write it quicker in Scala, and run on 2, eventually 3 different platforms.

Scala Native is not very far along compared to Scala.js, but it is actively being improved, and is considered an official extension. Additionally, Dotty will bring huge improvements for JVM scala.

I am not super happy with JVM most days, but I'd far and away prefer to be chained to JVM than BEAM. I mean, it's not even a question at this point, considering the billions of dollars spent developing JVM and the work of the brightest minds of several generations. Joe is a cool guy and all, but Erlang is objectively a niche platform compared to JVM.

Note the lack of technical claims that one is superior to the other, thanks for pigeonholing what I was getting at.

Or JS with Scala.js Or literally anything with Scala Native, which is being sponsored and supported by EPFL directly.

So yeah, no.

I switched from Ruby to Scala, and I have had an absolute blast. Elixir is sort of chained to BEAM, which doesn't appear to have as bright a future as the JVM or LLVM does, so Scala seemed like a safer bet.

Reading about Elixir is cool sometimes, but then I look at Dotty, and I feel confident that I made the correct choice.

I've also been keeping an eye on Crystal (statically typed Ruby-esque language, LLVM), but they aren't making great PLT choices so far. Maybe they'll get it together later. Scala-Native will blow it out of the water most likely anyways.

Sort of the opposite of losing statically typed programming, but I've really enjoyed the journey and it's improved my work a lot more than I thought it would. I know Ruby pretty well and I used to feel really dumb all the time when things would break, and it took some time for me to realize that it was a language problem. Looking back and reading some of the Ruby that I ported, it was impossible to reason about, and very difficult to make guarantees for. Nothing was solid at all, and runtime errors could hypotehtically stop the show at any time. With Scala there's a much sharper baseline of what will definitely work or not work.

Types make a LOT of things so much easier, in exchange for making a few things SLIGHTLY more tedious. After doing it, I'd make that trade ten more times if I had to.

missed a couple Govt classes? The existence of central banks are opposed by people who want to restrict third-party control of their money, not let any loser who walks by have a say (like DAO)

Ethereum is a bad idea and people are too embarrassed to admit it. I get it. However, turning around and shoehorning that sentiment into "They don't understand central banking" is just foolish and highlights the sort of headstrong obliviousness that has essentially springboarded DAO into the spotlight to begin with.

Smart contracts aren't good for stupid users. Someone outsmarted a big group, now they're having a fit because all of their money is going to leave, and rather than walk away from the poker table with their head hung low, they've decided to just rob the dealer and try for heisting the vault while they're at it.

And then they have the gall to say "Oh, you just dont understand the purpose of central banking" as they oppose a system that they put in place to benefit themselves, by themselves.

And you say you don't like Ayn Rand! Terse is just another word for unimaginative, when it comes to prose.

I think you might be blurring the lines between writing something in a socratic dialogue versus writing technical documentation. Dijkstra, obviously often is writing in the former style and so there's plenty of room for his personality in the text and it doesn't take away from the overall quality and cohesiveness of the text.

Reasonability. In an age where billion dollar companies are gutted by 16yo hackers on a monthly basis, it's worth the effort to build strong, secure systems that can be formally reasoned about.

I am so freaking excited about Scala Native. I haven't been so genuinely excited and enthusiastic about something for such a long time, but Scala Native is so awesome.

I feel like turning Scala into a cross-platform language is the best idea possible. I'd love to see Scala someday be able to just dump out WebAssembly, or JVM bytecode, or LLVM IR, or whatever the next "hip" format is, while keeping the language the same.

I also find it shocking how hard people are pushing Typescript when Scala.js exists. Why would you ever subject yourself to TS?!?!

A brief update 10 years ago

There is no argument. What the department is or is not doing is not up for argument. Objective reality doesn't change just because the dept used to have a different name, that's stupid.

I work with dozens of peaceful, bright people, on projects that are responsible for keeping people safe without violence or conflict or any nonsense like that. Many of the people whom I work with wouldn't swat a fly, so I don't really concern myself with the thoughts of people who have no clue what they're talking about, like commenters on HN who google "depart of defense not really about defense???" and then think they've stumped me. Honestly.

A brief update 10 years ago

Yeah what do I know anyways? I just work there, I'm sure your google search lends you more clarity as to what they're doing than my day-after-day exposure.

Cool.

Well, Scala was originally designed to complement a platform that encourages mutable data structures. When Scala was first getting started, Java didn't have anonymous functions yet, and it was a different time.

Currently, Scala-Native is working on off-JVM Scala, Scala.js is already plenty capable of compiling to efficient JS, and when wasm lands, it'll probably manage that rather easily.

Elm is a neat language, but I think it sort of presents too wide a divide. I have the same problem with Elm as I do with Typescript, Dart, and all of the other languages that recognize JS is a shit language, but just compile to it anyways.

Scala is a VERY well-designed language, and FP/OOP isn't nearly as polarizing as it might seem. I'd recommend LearnXinY Scala, read a little bit and you might see how natural it actually is (excluding the obnoxious syntax for certain things)

But yeah, JS has always been the crucial problem that needs to be solved. *.js is never going to solve it.

There's no supporting details?

"C++ programmers find it difficult." Says who? I doubt someone who slogged through enough pain to learn C++ would be fazed by the weird parts of Rust.

The Rust language is not at all a significant barrier to its adoption. I think that the fact that Mozilla refuses to standardize its development and has a history of political-correctness inclusivity is a bigger barrier to its adoption. Especially given that C++ has been around for so long already, is always (very slowly) improving, and is already standardized. It's not a great language in the sense that it's FUN to program in, but neither is Rust, and even if it was, it's not a good enough reason to throw away c++.

Those are the main reasons I go there so often. It's a certain caliber of customer that seems to go there, and I really enjoy the atmosphere and the certainty that there won't be any weirdos or spiky-haired freaks while I'm trying to eat my food.

I'm not so big on the whole religion thing, but whatever. They've a right to think that.

Checked C 10 years ago

Yeah but after sixty years of C, why should we trust an origanization like Mozilla? They've been thoroughly unwilling to come up with any sort of ANSI standard or anything, despite Rust being a reasonably mature language.

Google sought ECMA standardization when they took on Dart. Go language has an official specification, so someone could hypothetically re-implement it if they wanted to, and remain compatible Go projects.

Mozilla only wants Mozilla to be involved with Rust. They want everybody to use it in their systems, and have no input on where the language should go.

Putting Down Elm 10 years ago

What does this mean? There is almost no detail in this other than "Wow Elm is great and the compiler gives persistent, detailed messages"

which I think most people interested in Elm already knew.