Live data from Hacker News

Ask HN: What Technologies to Learn in 2020?

news.ycombinator.com

291–300 of 441 posts

Re: Ask HN: What Technologies to Learn in 2020?

#291
post #267

Today, my background is 25'ish years in security design. My near term aspirations about the ideas that will matter in 10 years from now include more functional programming with Haskell's QIO monad for basic quantum related concepts, understanding GANs, the gremlin stack for graphs instead of cypher, and maybe some category theory. Solving problems in these areas is the foundational knowledge for the next 10-20 years…

More than focusing on any single technology, I am willing to drive my stake to the ground here. If you have the background, or sufficient interest in security, add two things to the mix: psychology and usability. The UX of security related software/solutions are nothing if not atrocious. Fixing that would be a good start, but I won't hold my breath. It's also going to be increasingly important to understand why peopl…

What I've learned is they don't need problems solved, managing problems is their job, they want data they can use as leverage to drive agendas in higher level conversations that get them money/resources.

Security people make their livings managing a black box of uncertainty and producing spectacles on behalf of whoever needs them as an ally for an agenda, and when you solve a problem that reduces that uncertainty, you reduce their leverage and value to their stakeholders.

The only valuable security products will be ones that serve that need. The rest are science projects, imo.

I can replace security consultants with a SaaS product on a large number of engagements, but that breaks the economics of the compliance game. Regarding psychology, it may be a darker journey than you expect. :)

Re: Ask HN: What Technologies to Learn in 2020?

#293
post #255

Earlier quoted context omitted.

> I think people need to get over their fear of the parens and start paying more attention to it. i have no problem with parentheses. it’s the JVM that gives me pause. i feel .NET and BEAM are the better choices these days with c#/f# and elixir/erlang/lfe, respectively. i would love to use a lisp/scheme but just don’t feel comfortable with the JVM and how much of it comes through in clojure.

Then compile clojure to .Net? Clojure has compilers for both jvm and .net

as far as i can tell clojure clr is just a side project for a couple of people and in no way gets the same full support as clojure on jvm, not to mention that it lags behind clojure on jvm. and again as far as i can tell, no one really uses clojure clr. i have never seen anyone mention it other than to point out it exists. it isn’t like clojure purports to be a lisp on both jvm and .net.

it is also unclear how to interop clojure clr with c# and f#. clojure clr doesn’t address the want of a stable vm, clear usage, and supporting toolset.

Re: Ask HN: What Technologies to Learn in 2020?

#294
post #255

Earlier quoted context omitted.

> I think people need to get over their fear of the parens and start paying more attention to it. i have no problem with parentheses. it’s the JVM that gives me pause. i feel .NET and BEAM are the better choices these days with c#/f# and elixir/erlang/lfe, respectively. i would love to use a lisp/scheme but just don’t feel comfortable with the JVM and how much of it comes through in clojure.

Then compile clojure to .Net? Clojure has compilers for both jvm and .net

Out of the frying pan and into the fire.

Re: Ask HN: What Technologies to Learn in 2020?

#295

Blazor. I stopped doing development work about five years ago because JavaScript seemed to be taking over everything. I absolutely hate JavaScript so I ended up making a career change to not have to deal with it anymore. Blazor (and other compile to wasm frameworks) lets you avoid 90% or more of the JavaScript nonsense that makes up modern apps.

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?

#296

In a word: biotech. Okay, yeah, that's a bit beyond the scope of your question... Tech-wise I think the stealth silver-bullet will be "Categorical" programming†. When this hits it might even contract the job market for programmers. Compiling to categories" Conal Elliott http://conal.net/papers/compiling-to-categories/ † As in a kind of PL paradigm: https://en.wikipedia.org/wiki/Programming_paradigm

Any good resources you have for beginners in biotech?

The Machinery of Life

Re: Ask HN: What Technologies to Learn in 2020?

#297

Instead of learning a new bespoke technology, How about learning more fundamental, lateral concepts, that potentially could apply across technologies. e.g. https://brilliant.org/

Because companies never ask for “x number of years in fundamental, lateral concepts”

Re: Ask HN: What Technologies to Learn in 2020?

#298
post #118

Earlier quoted context omitted.

Why Django over something like rails? If you going to go for batteries included go for a Tesla battery pack and not a set of double a Duracells. I like using flask but django always felt half baked to me vs rails.

I don't know Rails. I know Django. Should I learn Rails in 2020 ? Or something else?

Rails is like Django, it's boring because it's predictable, well documented, safe and stable. All of which, for me, is a huge plus. Version 6 was released recently, it's always being updated and it's stunningly easy to use.

Yes, it's totally worth learning in 2020.

Re: Ask HN: What Technologies to Learn in 2020?

#299
post #76

Learn 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…

> Learn how to really use a relational database, relational data modeling, and SQL. I have to second this. There is so much power in relational databases that is untapped by most developers. The best part about this is that, for the most part, this type of knowledge can apply to multiple databases. Some specific things that I want to gain a deeper understanding of are window functions[0] and recursive CTEs[1]. In par…

SQL seems to be the most long-lasting skill in the IT industry. Definitely worthwhile to learn well.

Re: Ask HN: What Technologies to Learn in 2020?

#300

It's not a 'hottest tech stack', but I would suggest people take 2020 to learn testing. TDD/unit/browser/whatever - look to incorporate testing in to your work more often. For me, that has meant making sure code you're writing is testable first. I don't do hardcore TDD, but often am writing tests more or less concurrently with little bits as I'm writing those bits. I don't do this for every single project all the tim…

How is this something to learn? It's more of something to try. Anyone who can write code can write tests and anyone who can write tests can writes tests before they code. It's trivial. Instead learn formal methods. Learn how to prove your code correct for all cases rather then verifying your code for one test case. This is learning and it won't be rehashing what you know like tdd. Formal methods is brutally hard.

The concept of correctness by proof, rather than by spraying tests at the code and hoping, is a shift of perspective, but it doesn't have to be brutally hard and doesn't require going all the way to direct application of formal methods (which is often impractical). I encourage people to go partway in the right direction. Instead of telling me your test coverage, tell me how you can prove that the core algorithm of your product is correct. Or how you can prove that it is secure. This kind of thinking is the only thing I've ever seen lead to quality code.
Post reply on HN