3 ms·
I definitely make this mistake. I have a handfull of maintained projects, but nearing 100 repos, most without readmes, many are just random ideas The last time
by __s 9y ago
I definitely make this mistake. I have a handfull of maintained projects, but nearing 100 repos, most without readmes, many are just random ideas
The last time I interviewed the technical interviewer actually had me go over my openEtG project, & dive into the guts of the AI's eval. They also stumbled upon https://github.com/serprex/brainwebfuckassembly https://github.com/serprex/brainwebfuckassembly which ended up having a profanity filled interview
They started to explain the code challenge that would follow if I was invited to a 2nd tech interview before realizing I'd already done it: https://github.com/serprex/backend-coding-challenge https://github.com/serprex/backend-coding-challenge
I fixed their github pages page (previously wouldn't load stats & projects) https://github.com/coveo/coveo.github.io/pull/3 https://github.com/coveo/coveo.github.io/pull/3 but that didn't come up
I didn't get past the first tech interview. Admittedly I'm terrible in interviews: bring up feeling I have a weakness with mathematics, don't have a prepared answer for "what is clean code", when asked about "code patterns" I start rambling about how data structures are essentially a pattern
- penpapersw 9y agoMy difficulty with interviews is, I'm a fairly good programmer. But when asked to put these kinds of things into words, that's just not how my mind works. I see the patterns in abstract ways, and I know which ones to use when. And I can write clean code pretty well. And if presented with a concrete problem to solve, I can communicate effectively on how to solve it. But during interviews, or any kind of abstract discussion about "code in general" (whatever that means), I fumble and stumble and can't put my thoughts into words no matter what.
- B73kkww 9y agoI often see an inverse correlation between being able to "talk about code" and actually producing good code. That is not only between persons: I can get myself into a talker's mindset in a couple of days just by reading, drawing diagrams and generally doing anything that increases self confidence. My actual coding abilities drop in the process because the ability to see abstract graphical patterns decreases. On my best coding days I'm barely able to utter a coherent sentence at the end of the day.
- cjcenizal 9y agoI think there's a correlation between being able to explain something and fully understanding it. Being able to think clearly and communicate clearly are interconnected -- if you're programming by instinct then you're not thinking critically about the problems you're solving.
- XYawqd 9y agoI'm more with Feynman: If you are able to do something, you understand it. Natural language quite primitive when it comes to math/programming. Explanations are full of holes and gloss over important things. It is funny that you mention "critical thinking". The vocabulary of a music critic/philosopher like Adorno is astounding and impressive. This did not prevent Celibidache (a famous conductor) from calling Adorno the "biggest blowhard of the 20th century". Intuition always rules in the discovery phase. Often others come and "explain" the works they did not create, because the creator is already busy doing his next thing.
- acidus 9y agoAnd how can you get better at it?
- TheCowboy 9y agoWriting. When you engage in writing out your thoughts you quickly realize that you may not have as coherent or clear explanation as it may feel to you. You end up doing some research and thinking about how to express it. At the very worst, you come away with a better way to express one specific thing. Even just trying to provide quality explanations to comments on Reddit is a good practice. That won't always help when it comes to verbally expressing things on the fly. If you can't practice with someone, you can try recording yourself trying to explain a topic on the fly, and playing it back. It's best to have a partner. Attending technical Meetups is another venue where you work this mental muscle.
- brooklyn_ashey 9y ago
- ashark 9y agoI'm a little like that with programming. I used to have a similar, but more pronounced, problem with my native language (English). I could read and write way above my grade level, pretty much from as soon as I could read and write. I've seen college students who write worse than I did in 5th grade. I could tell you when a sentence had a problem and how to fix it. What I couldn't do was tell you why something was wrong in the language of talking-about-language. Basic parts of speech, sure. Past that I was lost. It took learning a fair bit of French in a formal setting to get that stuff to stick. I think the problem was that I didn't need those words to think about my native language[1]. It just happened for me. Learning a foreign language made it easy to pick up the vocabulary, because I actually needed it to talk about what was going on. Point being that maybe there's a way to pick up some of the lingo by finding a way to need it. Maybe learn a radically different programming language from what you're used to. On the other hand I find that even a not-especially-deep understanding of how things actually work makes some of these named concepts and patterns look like really obvious and not-needing-their-own-words cases of some more fundamental thing, so if it's that giving you trouble then I'm not sure what to do about that or how to make you need those words enough to learn them. Some significant percentage of the time I end up re-casting "complex" ideas as an implementation/combination of some simpler or more fundamental thing(s) I already know, which turns out to be an exact match for how the thing actually works and leaves me wondering entirely WTF all the fuss is about, and usually thinking I don't actually understand it long after I in fact do because everyone writing/talking about it is using mysterious, magical language. Being able to communicate with people who prefer to... I don't know, come at problems from the other direction I guess, is a problem I continue to have. [1] N.b. I would eventually have needed them to develop further, and I picked up some really bad habits in high school that harmed the quality of my writing but helped me make mandatory page counts so I definitely had room to improve. [EDIT] embarrassing farther/further error. The finer points of usage remain a struggle.
- RaleyField 9y agoObligatory Feynman https://www.youtube.com/watch?v=lr8sVailoLw&t=47 https://www.youtube.com/watch?v=lr8sVailoLw&t=47
- ionwake 9y agoSounds like you should have gotten to the 2nd round at least
- mixmastamyk 9y agoSteve McConnell's Code Complete can help with the clean code part. Read it and jot down some notes.
- AlexCoventry 9y agoI think I would ask a few questions about what exactly the questioner means, because "clean code" is a very vague term. If they're borrowing from Uncle Bob's book, then I'd have a pretty good idea.