DEV Community

Cover image for What were some of the toughest technologies and concepts for you to grasp along the way?
Ben Halpern
Ben Halpern

Posted on

What were some of the toughest technologies and concepts for you to grasp along the way?

What were they, did you every fully overcome your confusion?

Latest comments (87)

Collapse
 
gowikel profile image
Pedro José Piquero Plaza

Kubernetes. In fact, I am still on it.

Collapse
 
tcharl profile image
Charlie Mordant

Reactive programming made properly: RxJS or/and Reactor.

Other:

  • Spring cloud (stream+eureka+ribbon+feign+oauth2)
  • Oauth2 identity brokering
  • Data engineering (ETL, Data Vault, Kafka, Dimensional mode, Olap)
  • Observability/tracing (Zipkin)
  • Ansible is also sometimes fun ;-). ...
Collapse
 
hoxon profile image
Leonardo Mangano

Ownership model in Rust

Collapse
 
adamdsherman profile image
AdamDSherman • Edited

React for me.

I was very familiar with using JS on a website, so I thought React would be an easy transition. Nope. What stung me was:

  • React is compiled locally. If you're not used to that and how it works then its a pain to get started. When I learnt JQuery ages ago I started with something very, very small eg $(".mydiv).text("hello world");. This worked and I was able to build upon that and create more and more complex DOM manipulations from there. With React you can't just start with that one line.
  • React has a lot of dependancies that don't make sense at first. Node, npm, React-DOM. In most beginner React tutorials there is little to no explanation of these. Initially I thought I would have to learn Node.js in and out before I learnt React - and that's a totally different kettle of fish.
  • React tutorials are inconsistant. Some are very old, some predate React Hooks, some use TypeScript, some don't use Create React App, some presume prior knowledge of things like Redux.
  • It's not intuitive to actually deploy a React component or app up on a live site. Most React tutorials end at the point where you've completed the app on your local machine... cool, but now what? How do I actually get it on my site?
Collapse
 
manuartero profile image
Manuel Artero Anguita 🟨

OAUTH

I've read and even studied several times. My mind just go blank for some reason.

Collapse
 
baasmurdo profile image
BaasMurdo • Edited

Sockets (as in WebSockets), not coding them, that was the easy part.
But actually understanding why and how they work with multiple sessions and clients.

Collapse
 
isupermario profile image
Sarang

And Flex is all you need 😅

Collapse
 
bandev profile image
Bryan M

Containers and Kubernetes, for my first internship I was thrown into the cloud computing world and I had no prior knowledge of it at all. It took a week to figure out what exactly a container was and why containerized apps are crucial to today's CI/CD.

And kubernetes..... don't get me started with that. Something I'm still trying to figure out until this day xD

Collapse
 
jcs224 profile image
Joe Sweeney

I disliked JavaScript greatly for many years. I just didn't get how to use it, coming from mostly object-oriented languages (Java, C++, even PHP 5 and above). Then, one day, a switch flipped and suddenly I thought it was actually pretty fun! I think it took just embracing a new mental model and embracing/getting over some of its quirks.

Collapse
 
crayoncode profile image
crayoncode

Some concepts of Functional Programming like pure functions and monads. To this day I cannot reconcile/fully understand the idea of functions without side-effects and basically no external state that does not depend on the function's arguments with what I know about programming. I simply could not find a consistent approach on how to build the applications I code on a daily basis using pure functional programming and I would trade my right arm for a look at a codebase of a buisness application that fully embraces FP.

Collapse
 
maddy profile image
Maddy
  • Cucumber. Probably because I'm not the fan of the syntax.

  • TDD. I still struggle a lot with it. I failed many interviews because they asked me to create applications using TDD and I didn't know where to start.

  • SQL Joins: I understand them theoretically, but I don't know how to do them practically.

Collapse
 
thibaultjanbeyer profile image
Thibault Jan Beyer

I have a heavy Frontend background it felt easy to me and I was afraid of backend, then I moved into backend, boyyyy was I wrong, backend web development is 1000x easier than frontend, no idea why the pay is better. Then I became a solid fullstack. Then later manager. So back to the question dynamic programming challenges are insane I don't get it and it hurts my brain, also binary operations. The most difficult thing I came across my career so far was in gaming client side predictions and server reconcilliation, also everything with geometry I struggle, like calculating the sum or two angles etc. seems like learning formulas by heart but understanding is tricky. Yeah the more you know the more you know you don't know and impostor syndrome grows bigger.

Collapse
 
adam_gardner_ed9d6a4f26f8 profile image
Adam Gardner

I struggle with Rx specificity RxJava. I know enough for the pubSub but that’s about it. I know it can do so much more but that whole concept really don’t not stick in my brain.
Recently stepped into the React and React Native world. As a person who built their career on OOP, the whole functional programming is like the Wild Wild West and hard to learn and follow.

Collapse
 
lexplt profile image
Alexandre Plt

Everything revolving around functional programming, monads and all, were hard for me to grasp. On top of having to learn this concept, I had to learn it in a language I didn't know, Scala. Since then I've had a lot of fun with those concepts and the language!

Collapse
 
alvarolorentedev profile image
Alvaro

developer ego as carreer goew by and experiences diferent things grows an idea of how things have to be (ex. Clean code) and makes growth, value delivery, etc more complex and slow. its q phase but not everyone goes over it, to improve collaboration and contine growing without the safetynet of "being correct".