I recently picked up TypeScript. Coming from an object oriented background, it felt natural and easy (for the most part) to learn.
I learn most of it in a day. However, there are some very important parts that still escape me. This is from needing to get a project done, vs taking the time to learn the other 10% of TypeScript, which is where the important tidbits live.
I spend 2 hours trying to figure out why my new module declaration files were not being found. The IDE clicked through and could find them just fine.
I checked that they were all there, that the package.json "types" pointed to the file, all seemed to be configured right.
Well apparently for what ever reason, you have to add "baseUrl": "." to the tsconfig.js file..... I thought that it would default to the root directory.
Why is the hell did that fix my code? How frustrating!
This leads me to the frustrating point that the devil is in the details.
How many of you have been stumped, just to realize you missed something simple due to not fully learning a language?
What was it and did you learn anything from it?
Top comments (4)
Definitely a bunch of times. I'm in the process of building something in Rust for a schoolproject and know enough to build something basic and functional. But it takes time to get comfortable with many concepts of the language. Now that borrowing and ownership are ideas that I can apply with more ease my lack of knowledge about 'lifetimes' is definitely holding me back.
I have the feeling (but might be completely wrong) that missing the simple stuff or just small stuff in general is part of the dev experience, especially while learning something new. It's really frustrating but also a sign that it should be okay to slow down from time to time to debug and reflect on what you have learned.
I agree with you. I have had to learn that it's ok to slow down and take the time to learn it. I think i'm harder on myself than my bosses... actually I know I am. I've been told by my boss that it's all part of the process. For me, it stems from when I had horrible jobs and they would literally yell at me to get the F***ing work done. So I'm paranoid that if I take the time to learn it and it means my work gets delayed, that I'll get in to trouble. Thankfully this job is the best job I've ever had and they never do that.
I only get frustrated when I am getting stuck on things I am supposedly good at. When I am trying to learn something new I am trying to be more patient. But sometimes it's easy to give in to frustration.
Last time I had a similar experience was while trying to learn Rust. I like the whole idea about Rust, but one thing which took ages to get used to and when I realized the equivalent to other languages I felt stupid for 'not getting it' was mainly around some weird and hip (for my age) terminology that Rust tends to use.
I find that with some of the developers who specialize in a single language, they know the ins and outs, so they show me very complex solutions. I'm grateful that I learn pretty quickly but I still have to stop them and tell them to go over it again until I'm sure I have it.