Earlier quoted context omitted.
Second this. Looking for resources as well. Been working as an engineer for 3 years but still feel this is my weakness due to ORMs
What helped me a lot getting away from being limited by ORM capabilites while on the job: - Get the raw SQL of some slow or memory intensive queries the ORM produces and try to optimize them by hand. Try different approaches to get the same result, measure and understand them by using 'explain' and visualizers like http://tatiyants.com/pev/ This works great together with libraries like sqlalchemy where the ORM is opt…
Ask HN: What Technologies to Learn in 2020?
331–340 of 441 posts
Re: Ask HN: What Technologies to Learn in 2020?
#332Earlier quoted context omitted.
I consider Rust a lower-level language than Go, because it's forcing the programmer to deal with memory management. In what sense do you consider it higher-level?
Rust is lower-level than Go, but it's also higher-level (!) insofar as Go is among the least "expressive" languages out there — has to be its #1 criticism / value depending on where you stand. Go is very niche in scope, which is how it manages to be so essential.
Re: Ask HN: What Technologies to Learn in 2020?
#333Re: Ask HN: What Technologies to Learn in 2020?
#334Earlier quoted context omitted.
Do you hate JS the language or do you hate the ecosystem? JS gets a bad rap from folks that have never had a chance to master the language and do pure JS development, which is actually quite enjoyable.
I hate the ecosystem. That being said, you can’t go wrong by having JS under your belt. Because of its ubiquity and path dependency, it’s not going anywhere. Besides it’s the one language that can be used for any front end development - web, mobile, and desktop. Typescript makes it a lot less painful as a language but the ecosystem is still a mess.
Re: Ask HN: What Technologies to Learn in 2020?
#335If you're in the web sector, definitely give a try to wasm. Have a go at Rust while you're at it — see what I did there? I'm personally hot for GraphQL because it's a powerful paradigm to model data. Both Go and Rust are incredibly interesting languages, in very different ways. In some ideal world, Go fits in a scaling/efficiency vertical somewhere in-between C and C++ (it's very specific but it basically encompasses…
Re: Ask HN: What Technologies to Learn in 2020?
#336Learn how to really use a relational database, relational data modeling, and SQL. Not knowing of their capabilities may lead you to unnecessarily complicating your tech stack. You can go a really long way with just this domain of expertise. From there, do the same with whatever key-value store interests you (for me, it's Redis). Python isn't known for high performance but when a django web app uses a cache and relati…
Re: Ask HN: What Technologies to Learn in 2020?
#337Earlier quoted context omitted.
Python isn't known for high performance As was said by one of the original Twitter architects, defending the choice of Ruby against people who were saying that it was at the root of all of their performance problems, for any well capitalized company, the language rarely makes a difference. A stateless web server is a “embarrassingly parallelizable”. The speed or lack there of your runtime is usually not a make or bre…
So your proposed solution is to throw more hardware at the problem? It surely can work at the small scale, but why do it when you're talking about hundreds of thousands of dollars / mo in servers? Why not choose a proper high-performance language, at least for the parts that are slow?
Yes. It's usually cheaper and better for the business, as has been proven time and time again. There's a reason the phrase "cheaper to throw hardware at it" is kinda a thing in our industry. It took Facebook a LONG time and many hundreds of developers before they needed to create HipHip/HHVM.
Even at a small startup, my team of 6 costs over $1MM/yr while our two dozen or so EC2 instances and other AWS resources cost less than $25k/yr. Hell yes I'm going to throw hardware at it.
Re: Ask HN: What Technologies to Learn in 2020?
#338Learn how to really use a relational database, relational data modeling, and SQL. Not knowing of their capabilities may lead you to unnecessarily complicating your tech stack. You can go a really long way with just this domain of expertise. From there, do the same with whatever key-value store interests you (for me, it's Redis). Python isn't known for high performance but when a django web app uses a cache and relati…
Using Python for high-performance anything is a bad choice. You will quickly bottleneck at the code execution speed, even if it's just to query some cache. If you don't agree, make a simple "hello world" endpoint and see how many req/sec you get. Then compare to Rust / Java / C++ / Go. It will be radically different.
https://www.techempower.com/benchmarks/#section=data-r18&hw=...
https://www.techempower.com/benchmarks/#section=data-r18&hw=...
Re: Ask HN: What Technologies to Learn in 2020?
#339Learn how to really use a relational database, relational data modeling, and SQL. Not knowing of their capabilities may lead you to unnecessarily complicating your tech stack. You can go a really long way with just this domain of expertise. From there, do the same with whatever key-value store interests you (for me, it's Redis). Python isn't known for high performance but when a django web app uses a cache and relati…
What topics/ideas would say someone needs to understand in order to really understand relational databases? Also, can you recommend any resources?
Re: Ask HN: What Technologies to Learn in 2020?
#340Earlier quoted context omitted.
What resources do you recommend for learning relational databases and key value stores really well?
Relational: Jennifer Widom's Stanford MOOC is often highly recommended. https://lagunita.stanford.edu/courses/DB/2014/SelfPaced/abou...