Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
NateDad
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
72 ms
·
691.
▲
by
NateDad
13y ago
Less code in general means fewer bugs. However, there's definitely an inflection point where you're trying to cram too much functionality into too few lines of code, and so the code you're writing is a lot more complex than
692.
▲
by
NateDad
13y ago
The thing is, while this kind of thing is available for pretty much every language, it is standard for Go. As in, if you don't gofmt your code, everyone who looks at it will bug you to format it. That's a huge difference. Th
693.
▲
by
NateDad
13y ago
Yes, right. Sometimes I think people (myself included) leave out PBKDF2 because it's hard to spell/pronounce. :)
694.
▲
by
NateDad
13y ago
Certainly, it's a message that bears repeating. New devs enter the workforce every day.
695.
▲
by
NateDad
13y ago
If someone can DoS your login api, they can do it to another api. Rate limit it. It's not hard. It's actually even easier because people login so rarely, you can really ratchet down the rate and not mess up the casual user'
696.
▲
by
NateDad
13y ago
Yes, exactly.
697.
▲
by
NateDad
13y ago
My guess is that anyone who still does this does not actually read technology blogs or Hacker News. The answer for a long time now has been "use scrypt or bcrypt". I think that answer still holds (IANAC).
698.
▲
by
NateDad
13y ago
So, you're right, of course, that the language differences are major, however, I don't think it's unfair to say that Rust's instability is a source of concern if you're planning a long-running project. No one wants
699.
▲
by
NateDad
13y ago
Yeah, they're really different languages. They're not in competition at all, any more than C++ and Python are competing. They're different tools for different jobs. The only thing Go and Rust have in common is that they
700.
▲
by
NateDad
13y ago
Not sure how you come to the conclusion that Go doesn't have type safety. In the end, the languages are quite different. Rust is ML/Haskelly, Go is C-ish. It's a matter of whether you like the advanced type systems, options,
701.
▲
by
NateDad
13y ago
That's a valid criticism. Mostly wanted to point your attention to the project, because I think it'll be a big deal in the next year.
702.
▲
by
NateDad
13y ago
Go has been very stable for quite some time now. There is a backwards compatibility guarantee while it stays in 1.x. Your old code will still build with new versions of Go. As for optimization, yes, it will get faster and better... I don
703.
▲
by
NateDad
13y ago
Take a look at go QML. I think it'll be the one GUI library to really take off, if for no other reason than the guy working on it (Gustavo), is pretty brilliant, and it's going to be used to write applications for Ubuntu Touch.
704.
▲
by
NateDad
13y ago
Generics generics. I've written Go code for 40+ hours a week for 10 months and only missed generics a couple times for some minor functionality. That, and they are not anathema to Go. The Go devs want to implement generics, they just
705.
▲
by
NateDad
13y ago
Go is the future of server side programming. I don't consider that to be an exaggeration. Node is not the future. Node is an interesting technical achievement, but programming in javascript on the server is not going to create the most
706.
▲
by
NateDad
13y ago
Go is pretty much proven at this point. The JVM scales well for CPU cycles and considerably less well for memory usage. Recompiling is a non-issue when it only takes 2 seconds to compile a relatively large application (larger than any REST
707.
▲
by
NateDad
13y ago
The Factory abstracts away instantiation and configuration details for a complex or dynamic initialization process. Is there some reason you can't do that by just having this? func IntializeFoo(f *foo) The capability to defin
708.
▲
by
NateDad
13y ago
The worst are the really random restrictions, like "can't have two of the same character next to each other" ...... what???
709.
▲
by
NateDad
13y ago
Ha! Glad someone else agrees :)
710.
▲
by
NateDad
13y ago
Actually, please do NOT have a maxlength on your password field. Instead, if the contents are too long, disable the submit button and tell me my password is too long. Why? Because I never actually type in a password. I generate a long
711.
▲
by
NateDad
13y ago
Why does the name and picture on that page not match the name and picture of the twitter account he links to? Is this someone we're supposed to know?
712.
▲
by
NateDad
13y ago
Uh yes, probably a factory is never going to be an optimal solution. If you know what type you need, why would you need a factory to create it for you? Just create it. You might need a generic initializer function that sets various val
713.
▲
by
NateDad
13y ago
Would you not assume that the entire OpenSSL library would count as being in need of extra scrutiny? The point is that any time you let people directly access memory, they can, and often will, screw it up.
714.
▲
by
NateDad
13y ago
> In what way? In the ways I described below that line :) > It's certainly not simple to set up! Most languages, I can put my projects wherever I want. It took me a while to find out that I had to put my projects in my Gopath for
715.
▲
by
NateDad
13y ago
I work on Juju. It's over 200k lines of Go code. It works just fine. Generics have only been missed in a small handful of places, and nothing at all critical.
716.
▲
by
NateDad
13y ago
The bit about packages being edited locally shows the problem was between the chair and keyboard, not in the language. That's like making edits to some local files and never pushing them up into source control. Of course it'll ne
717.
▲
by
NateDad
13y ago
Uh, no. You shouldn't use panic for error handling. You should basically never use panic unless you have some small bit of recursive algorithm inside your package that you want to be able to easily unwind. For general error handling
718.
▲
by
NateDad
13y ago
For one thing, it's just a simpler language. There are fewer keywords, there's only one kind of pointer (and no pointer arithmetic). Everything is just pass by value. There's very rarely anything going on "behind the s
719.
▲
by
NateDad
13y ago
Your code seems incredibly backward. Why does the ProviderFactory hold the knowledge about the query interval for each provider? Shouldn't the provider hold that information? With the data structure you have, any time you add a new p
720.
▲
by
NateDad
13y ago
One of Go's major features is that any particular function is very easy to reason about. The code is very straightforward, there's very little magic, and the code usually does exactly what you expect it to do, even if you're
More ›