Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
tdbgamer
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
6 ms
·
1.
▲
by
tdbgamer
2y ago
I guess the upside is that you end up with a "compiler" that checks the invariants of your project and that domain rather than strict type safety. I love static typing, but I did try Elixir w/ Phoenix recently and was impress
2.
▲
by
tdbgamer
7y ago
Improving performance isn't the only way you can make something "better". A system could be architected in a fragile or rigid way that makes extending it or adding new features extremely difficult without a rewrite. I can
3.
▲
by
tdbgamer
7y ago
While I agree with you that the JVM is great, I think most people that don't like it really just hate Oracle. It's not really a technical argument as much as it is philosophical. I don't really care either way, but I can see
4.
▲
by
tdbgamer
7y ago
If you just hate the JVM, Clojure was designed in such a way that it could be hosted on many VMs which is nice. As others have pointed out, it can run on BEAM VM or even V8 with Clojurescript I believe.
5.
▲
by
tdbgamer
8y ago
This isn't just a design principle for .NET libraries, it's a SOLID design principle. All classes should be inextensible unless they are explicitly designed to be extended.
6.
▲
by
tdbgamer
8y ago
Yeah so if there are any vulnerabilities in his software, he just gave them all they need to exploit them...
7.
▲
by
tdbgamer
8y ago
This article seems like a great argument for using open source encryption software. This guy handed over his source code to the NSA without a warrant or anything? So any idiot that steals your laptop can just call him up and exploit his sof
8.
▲
by
tdbgamer
8y ago
Uhhh did he say it wasn't Sony's fault? His point was cross-play isn't the worst part, but the way Sony locks your account in. Don't see how that exonerates Sony.
9.
▲
by
tdbgamer
8y ago
I really liked Elm a lot, but the issue for me was that composing components is a shit show. You have to add variants to the root Msg type for every single subpage and have it dispatch to the right update/view functions. I'm reall
10.
▲
by
tdbgamer
8y ago
Did you look into Google App Engine, Heroku, etc.? Those were pretty seamless managed experiences for me, of course you pay for the convenience though.
11.
▲
by
tdbgamer
8y ago
A tool doesn't need to fix _all_ problems to be useful. Yes, Docker doesn't cover differences in Linux kernel versions but it will take care of basically every other difference. Now the search space has been narrowed to Kernel
12.
▲
by
tdbgamer
9y ago
My impression is that people use Rust for correctness, security, and speed over ease of use. Although I do think once you get over the initial learning curve (which is admittedly large) it mostly makes sense.
13.
▲
by
tdbgamer
9y ago
To be clear, cyclic references are just as much an issue in GCed languages. In Python I had to use weakref lib to ensure cyclically referenced objects are still GCed. Rust is the same in that aspect, you use the Rc builtin type and create a
14.
▲
by
tdbgamer
9y ago
There is tons of C software out there that depends on libc that is never going to be rewritten in Rust. Also think about interpreted languages like Python, Ruby, etc. I imagine they all depend on libc. The only real way for Redox to gain ad
15.
▲
by
tdbgamer
9y ago
He mentioned some bad C experiences he had for a whole 7 sentences and that's your take away from the article? You're totally missing the point dude. The point is that C doesn't protect developers from some of the most basic
16.
▲
by
tdbgamer
9y ago
C++ does have a lot of the features that Rust has. You won't get any of the memory safety guarantees or compile time checks though. I will say that to me a lot of the C++ equivalents to Rust features seem very awkward to use (maybe not
17.
▲
by
tdbgamer
9y ago
Uhh did you read the same article I did? 90% of the article was features missing in C: Generics, Slices, Dependency Management, Tests, Useful macros, Pattern matching, etc. Those things have nothing to do with good or bad code and have ever
18.
▲
by
tdbgamer
9y ago
You just have to intentionally use a method on integers called wrapping_add() to explicitly allow overflows. That said I believe overflows are only checked when you compile with the debug target. So when you compile to the release target it
19.
▲
by
tdbgamer
9y ago
We need net neutrality because ISPs are allowed to be monopolies. Way easier to replace an OS than start a new ISP.
20.
▲
by
tdbgamer
9y ago
Iron and Diesel are pretty new, so they may not have very sophisticated templates yet. If you just mean setting up a rust project though it's as simple as 'cargo new --bin [project_name]'. I've found cargo to be a lot si
21.
▲
by
tdbgamer
9y ago
It's mostly part of everyone's dream of using the same language for frontend and backend code. When Node/NPM became popular and built up lots of useful libraries and could be used for backend code, people started trying to us
22.
▲
by
tdbgamer
9y ago
To be fair to Cython, they have access to the entire C++ stdlib, so that's a fairly good amount of tooling. The main thing is lacks is good documentation and memory safety.
23.
▲
by
tdbgamer
9y ago
Cython deceptively similar to Python with a lot of the pitfalls of C baked in. I personally found their documentation lacking and had to read through tons of Cython projects to discover how it behaved in many scenarios. I've had a much
24.
▲
by
tdbgamer
9y ago
Sounds like the author picked a very specific case and assumed all LTS was that way. I've personally always understood LTS to be a feature freeze with only security patches being back ported. I've worked at places that did stuff l
25.
▲
by
tdbgamer
9y ago
No problem! I did read Clean Code by Robert Martin. He's definitely in the "die hard TDD guru" category, but there are still useful examples to be extracted from the book. Besides that, I mainly learned a lot of testing trick
26.
▲
by
tdbgamer
9y ago
I am generally for TDD, but I don't think APIs really need heavy code coverage. That said, testing the input/output directly doesn't work well because now a single change the output data (adding a field to the JSON for exampl
27.
▲
by
tdbgamer
9y ago
It's too high-level for a lot of low-level work, and too low-level for a lot of high-level work. This is true in the very specific cases that you gave, but I believe that is the minority of use cases, not the majority. Even the
28.
▲
by
tdbgamer
9y ago
Python has asynchronous coroutines (the async/await thing) so you don't really need to do callbacks as far as I know. I personally find that syntax much easier to follow than callbacks.
29.
▲
by
tdbgamer
9y ago
() is an empty tuple (1,) is a tuple with one element Most small numbers are Singleton's, hardcoded or single character strings are Singletons as well.
30.
▲
by
tdbgamer
9y ago
Scaling reads is pretty easy with MySQL as you can create read replicas and just have a single write node. Scaling writes while maintaining strong consistency is very hard and requires a sharding setup. Facebook wrote an article showing a b
More ›