Remix.run Logo
crystal_revenge 7 hours ago

> left inner join

While I do appreciate this joke (and I do hope this is a joke), I've recently had a project majorly held up because a lead dev didn't understand SQL. It's great to admit gaps but it's equally important to close those gaps.

> As a hiring manager I interviewed software engineers and tried to filter for object-oriented knowledge. Retroactively, it’s clear I was hypocritical.

As some one who has been on the other side of "rejected by an interviewer who didn't understand the thing they've interviewed you about" I, again, appreciate the transparency, but I'm not entirely feeling that the lesson has been learned in the case.

There was a time in my life where I felt ashamed that I didn't know calculus... so I learned calculus and my life has been better for it. While refusing to admit ignorance of a topic is particular problem in tech, confessing that you don't know something and gleefully stopping there is not much better. Holding people up to a standard you do not hold yourself to is a major problem in this field. The technical people I've learned the most from hold you to a high standard and hold themselves to an even higher one.

Of course not every engineer has to hold themselves to a high standard, but if you want to write a blog about a topic, then part of the requirements here is that you do hold yourself to a high standard. Yes, we all have gaps, and we shouldn't let shame get in the way of learning, but we shouldn't let shamelessness about what we don't know limit us either.

Kerrick 7 hours ago | parent | next [-]

I am indeed learning, working to close those gaps.

For automated testing, I'm in the middle of reading Developer Testing by Alexander Tarlinder, with xUnit Test Patterns by Gerard Meszaros coming close behind. I'm also working through Test-Driven Development: By Example with my wife as we have time.

For SQL, I read Grokking Relational Database Design by Qiang Hao last winter, and I started SQL Queries for Mere Mortals by John Viescas this week. Sadly, my flub with "left inner join" was not a joke.

For OOP, I've been on a whirlwind tour: OOA&D With Applications by Booch et al., Object Thinking by David West, POODR and 99 Bottles of OOP by Sandi Metz, Domain-Driven Design by Eric Evans, IDDD and DDDD by Vaughn Vernon, Design Patterns in Ruby by Russ Olsen, Clean Architecture by Robert C. Martin, and Smalltalk Best Practice Patterns by Kent Beck. Still on the docket are Design Patterns by the Gang of Four, PoEAA by Martin Fowler, Smalltalk, Objects, and Design by Chamond Liu, and Object Design by Rebecca Wirfs-Brock.

> confessing that you don't know something and gleefully stopping there is not much better [...] we shouldn't let shamelessness about what we don't know limit us either

I promise you, this was not gleeful and this was not shameless. Shame and fear affected me for months on these issues. And I'm not stopping there... From the end of the article: "I’m going to continue to work on skill building, but now I feel free to write about it. If [...] you’d like to help me fill [my knowledge gaps], [...]"

> if you want to write a blog about a topic, then part of the requirements here is that you do hold yourself to a high standard

A high standard of writing, maybe. But plenty of great stories come from those who are striving for a high standard, not just those already in the upper echelon. It's what makes this place different from academic journals.

crystal_revenge 6 hours ago | parent | next [-]

This is great to hear and I do appreciate the clarification. Having put lots of content out in public myself (though this account is intentionally pseudonymous) I know it's also equally difficult to comment on content like this without being on either end of the "asshole" <-> "awesome!" spectrum, and sincerely hope my comment to not fall to close the the first part.

6 hours ago | parent | prev [-]
[deleted]
el_benhameen 7 hours ago | parent | prev [-]

Not exactly your main point, but where’d you go to learn calculus? I did the usual classes in high school but none since, and I’d love to develop a better appreciation for it.

zlarin 6 hours ago | parent | next [-]

Check out Mosaic Calculus and see what you think: https://www.mosaic-web.org/MOSAIC-Calculus/. It's a free resource and it takes an interesting perspective on calculus pedagogy.

ccapitalK 6 hours ago | parent | prev | next [-]

I find 3blue1brown to be a great resource to build up good intuition about math topics, his videos about calculus and linear algebra are wonderful in particular. https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53... is his essence of calculus series, I found the visualizations made it a lot easier to grok.

cosmosgenius 4 hours ago | parent [-]

I can second 3blue1brown as intro, but anything practical needs practise. Get your local 12th grade or undergrad math book which has problems to solve will bring more focus and faster learning. Have a list of problems to solve in your head while learning theory has been faster for me than just learning theory.

cogman10 6 hours ago | parent | prev | next [-]

I got mine doing a computer engineering degree.

My suggestion is using Khan Academy if you want to better your math knowledge. It's really quiet good for that sort of thing. It was just starting to take off when I finished my degree. I wish it was available before then.

jihadjihad 6 hours ago | parent | prev | next [-]

Calculus for Dummies is surprisingly not bad.

MarcelOlsz 5 hours ago | parent | prev | next [-]

No offence to everyone else in this thread but the holy grail is truly The Art Of Problem Solving textbooks + mathacademy [0].

[0] https://www.mathacademy.com/

HDThoreaun 2 hours ago | parent [-]

Learning stuff that doesn’t help in work(calculus is not helpful for 99% of software engineering) is really hard if you don’t base it in reality I find. Maybe it’s just me but I would never read a text book for fun so suggesting learning by reading a text book seems crazy. Calculus can be fun and interesting but the teacher has to actively try to make it so. The learning will take longer but you’re more likely to see it through and I think it’s more likely to stick long term too.

I learned way more reading crafting interpreters than I did in my compiler class for example.

throwaway31131 an hour ago | parent [-]

That’s interesting because I can’t imagine learning a subject without a textbook. I have a hard time believing another medium would have the depth and density to get all the points across. Although it does depend on the subject matter and one’s learning goals.

But I also do read textbooks for fun… Now that I have a few decades of experience in a lot of these subjects I get way more out of the books. And I can start to understand more of the meta information. Like, of all the things the author could’ve used as an example, why did they pick that. Also, it’s hugely interesting for me to look at the homework problems and theorize why this particular problem was picked. Especially fun for electrical engineering books. But ya, I’m weird like that.

david38 7 hours ago | parent | prev [-]

Youtube

sincerely 7 hours ago | parent [-]

About as helpful an answer as “book”

mindcrime 5 hours ago | parent | next [-]

https://www.youtube.com/playlist?list=PLF797E961509B4EB5

https://www.youtube.com/playlist?list=PLDesaqWTN6EQ2J4vgsN1H...

https://www.youtube.com/playlist?list=PLDesaqWTN6ESk16YRmzuJ...

yoyohello13 5 hours ago | parent | prev [-]

I do unironically think the simplest method to learn calculus is to go through a college level textbook. They are usually pretty accessible.