Earlier quoted context omitted.
> In theory but in theory any application could crash at an unexpected time That’s a terribly unsatisfactory answer. > In my experience on a half decent code base these sanity checks never trigger during production in normal code; they're designed to get triggered during tests. They're there to make it easy to track down the root cause of bugs. There are a lot of conditionals attached to your statement. ;) > The time…
Your answers are exactly in line with the views usually espoused by a developer who skimps on TDD and automated testing and thus over relies on compiler type checking to catch trivial bugs. The idea that you've been doing it like this for 30 years is somewhat depressing.
On Learning Rust and Go: Migrating Away from Python
281–290 of 346 posts
Re: On Learning Rust and Go: Migrating Away from Python
#282Earlier quoted context omitted.
I did not intend to “attack” you and I don’t believe that’s a good-faith characterization of what I wrote. I do attest to this same criticism of Haskell from time to time because I believe it’s important to refute the very frequent, baseless claims that are often made on Hacker News that claim that functional programming or static typing can make any difference on the reliability or rate of defects in software: they…
> I did not intend to “attack” you and I don’t believe that’s a good-faith characterization of what I wrote. You were recently warned by a moderator to stop making sarcastic and unsubstantive comments[0], so I don't think it's me who has trouble reading your tone. > I believe it’s important to refute the very frequent, baseless claims that are often made on Hacker News that claim that functional programming or static…
Re: On Learning Rust and Go: Migrating Away from Python
#283Earlier quoted context omitted.
Your answers are exactly in line with the views usually espoused by a developer who skimps on TDD and automated testing and thus over relies on compiler type checking to catch trivial bugs. The idea that you've been doing it like this for 30 years is somewhat depressing.
Weird how you've come to that conclusion when I've been the one talking about testing and you keep shrugging it off with " well I prefer exceptions " because " sometimes you have to debug things on production ". I honestly don't think you know the first thing about writing stable software so are now just lashing out at me.
Basically (and this goes for both of you as well as the rest of us), when you find yourself unable to keep from replying as irritation mounts, it's best to wrest oneself away from the internet for a bit.
Re: On Learning Rust and Go: Migrating Away from Python
#284> Note that I've not written any significant code in either language, so I'm just writing based on what I've learnt by reading. So he’s basically comparing 20+ years of Python usage with marketing material from Go and Rust. Right. I wish people could be honest with their motivations, instead of making up excuses to justify this sort of change. Here it’s a classic case of “I got bored and I don’t like the new features…
Wow. It's amazing the lengths people go to to maintain their delusions. Show me one python IDE in action doing effective refactoring across a large, nontrivial python code base. And you didn't even mention concurrency and skipped over it altogether! > use type hints or one of the many libs that enforce types... As if that's pythonic. Heard of duck typing? And those are things you have to do yourself, as additional wo…
Re: On Learning Rust and Go: Migrating Away from Python
#285So a typically unimaginative python programmer sees new Kool aid and is thinking about taking a drink. Decides to write blog post about it. And somehow it's #1 on hn.
Re: On Learning Rust and Go: Migrating Away from Python
#28615Kloc and trouble is indicative of other problems than a problem with the language. I wrote multiple 50Kloc and up pieces of software in GFA Basic, arguably a much more limiting and unsafe environment than Python ever was, and yet, that software worked well and was maintainable to the point that its descendants still run 3 decades later. Python has all the bells and whistles you need to build large code bases, but y…
Most of my serious work has been done with statically typed languages, though of course I have worked with dynamically typed ones as well. There are a few things about dynamically typed languages that seem to productivity-negative, but it may just be my lack of understanding of how people expert at a dynamic languages work with them. 1 - When working with a large enough code base that you don't remember exactly what…
If your project is just _your_ project, then dynamic languages let you start faster and produce quicker. Apart from anything else, these languages attract people who value productivity, so clunky tools don't survive in those ecosystems.
Of course, almost no successful project stays in the hands of just one or two people: new developers come in, or it's Open Source and more people show up, as well as the "drive-by" contributions.
IME, Ruby on Rails projects scale to about three core developers before you start to feel pain. The strict conventions of the framework help mitigate the communications issues of keeping people in sync. Beyond that, the implicit knowledge that is not in the codebase is harder and harder to scale.
Re: On Learning Rust and Go: Migrating Away from Python
#287Earlier quoted context omitted.
Weird how you've come to that conclusion when I've been the one talking about testing and you keep shrugging it off with " well I prefer exceptions " because " sometimes you have to debug things on production ". I honestly don't think you know the first thing about writing stable software so are now just lashing out at me.
This also crosses into personal attack, which is also not ok here. If you would also please review https://news.ycombinator.com/newsguidelines.html and follow the rules when posting to HN, we'd also be grateful. Basically (and this goes for both of you as well as the rest of us), when you find yourself unable to keep from replying as irritation mounts, it's best to wrest oneself away from the internet for a bit.
Re: On Learning Rust and Go: Migrating Away from Python
#288Having used all three of those languages, I've commented on this before. Go is mediocre as a a language, but it has one big edge - if you're doing web backend stuff, the libraries for that are the ones used internally by Google. So they're being executed billions of times per second on Google servers and tend to be well behaved. Python tends to have multiple libraries for basic functions like the database interface,…
So are Java and C++ programs at Google. golang is very mediocre for webdev, if anything, it can be used for small network tool kind of stuff. For anything that needs to be more complex, Java would be a better fit (e.g. golang doesn't have annotations that can be used for validations or automatic mapping between different internal and external types, which come in very handy and prevent bugs).
Re: On Learning Rust and Go: Migrating Away from Python
#289> Rust is developed by a community, and was started by Mozilla. Go development seems to be de facto controlled by Google, who originated the language. I'd rather bet my non-work future on a language that isn't controlled by a huge corporation, especially one of the main players in today's surveillance economy. Anyone else agree with this view ? Programming languages should be choosen based on technical merits, rather…
I'd say, all things being equal, yes, choose languages on tech merit or suitability to task. But look at what's happening with Java and Oracle's handling of it. I think the Google vs Oracle lawsuit is still going through appeal. Ask Google if they wish in hindsight they'd built Android on something else.
It got fully open sourced?
Re: On Learning Rust and Go: Migrating Away from Python
#290The strengths of Go become apparent when working in teams and when deploying, not when reading blogs about the language before trying to write code in it.
I’m working in a team of 5 people who has never used go prior to 9 months ago and had no training in it and we’ve just been unbelievably productive in it. We came to it from a combination of python and javascript backgrounds and have no problems collaborating or jumping into each other’s code. To me the main advantage of it is that the small number of primitives and simple syntax forces people to in general be very e…