HackerTrans
TopNewTrendsCommentsPastAskShowJobs

formulathree

no profile record

Submissions

Ask HN: I have 10 yrs of Exp. Failed 4 takehome projects. What am I doing wrong?

25 points·by formulathree·قبل 3 سنوات·85 comments

comments

formulathree
·قبل 3 سنوات·discuss
Have you been interviewing recently? The qualitative interviews that test design are actually the ones that are unreasonably challenging now. You have to cater to the interviewers design philosophy.

For example I tend not to prefer putting data into a class if it's not needed, but we had one interviewer who wanted all my logic as methods on a class even though it's fine to have functions operating on a data structure. Not a big deal either way right? But there it is... With the influx of candidates they measure this bs.
formulathree
·قبل 3 سنوات·discuss
There are so many leetcode problems most people can't fully memorize them all and many people just don't.

I actually think interview questions that are more qualitative are worse. I have to freaking guess the "design philosophy" of the interviewer and cater to his viewpoint which is often pointless or just flat out wrong.
formulathree
·قبل 3 سنوات·discuss
Charisma is one of those factors that bypass conscious mechanisms.

Experienced managers think they aren't screening for charisma but I would say 99 percent of managers who say this actually are, but they just don't know it. It's subconscious.

I can somewhat prove this to you because there's science on this. Charisma isn't very measurable or quantifiable but a physical attribute similar to charisma is, and that is physical beauty and height.

The more attractive you are and the more taller you are the more likely you are to be hired. It's absolutely true. There's so much studies around this it hurts. Just Google it.

There's even been a news segment in 60 minutes where they literally sent in a ugly dude with a shitload of Ivy league credentials and a handsome tall dude with nothing. And it was incredible. Ugly dude was grilled like a mofo and not hired. Handsome dude was a shoe in, didn't even get asked any hard questions.

The interesting thing is, the hiring manager wasn't even aware he was being biased. When asked in a subsequent interview on how he chose each candidate he stated credentials, but was completely unaware he wasn't even looking at credentials.

Now you yourself may be the exception just like how everyone thinks they're the exception and I'm sure you have examples to prove it too. But humans are inconsistent, I'm positive that at some point during your experience you mis-judged a person with rizz as being more technical.

Its human nature. We are wired to be biased this way. Nothing consciously immoral here. Just note that the first human bias being triggered by any reader reading this post is that they think they themselves are clearly above this bias. That should be the first thing the reader is thinking, and if I guessed correctly on that... Likely I guessed correctly on everything else.
formulathree
·قبل 3 سنوات·discuss
I've been applying too. I've landed tons of interviews about 40 total. Did them all.

All failed but one. It's definitely harder than before. Much harder.

I got failed for the most trivial reasons. There were interviews where I passed and did all the tasks required and the interviewer gave me positive signals like "good job", "talk to you soon" and boom the recruiter told me I was rejected the next day.

There was one where I made it to the final round onsite. Everyone liked me in the onsite. Schooled the technicals with code that worked first run and they canned me because behavioral. One guy (the director who I wouldn't even be reporting too) didn't like my reasoning for wanting to work at the company because I focused on my interest in the technology rather then the mission.

Like literally I just didn't talk about the mission... a specific thing and that was it. Besides that 4 out of 5 people during the final interview told me "talk to you soon" and one told me "I hope we see more of you in the future".

So yeah it's harder, brutally harder not just on the screening but even up the pipeline. I would say my resume is impressive enough that recruiters still contact me and I can make it to a first technical.

I think the people who are getting hired the most right now are people with connections. Who knows who.
formulathree
·قبل 3 سنوات·discuss
True. Occasionally the thing builds an entire cathedral out of nowhere and you're just shocked.
formulathree
·قبل 3 سنوات·discuss
Leave it to Google to do absolutely nothing with this like they did with LLMs.
formulathree
·قبل 3 سنوات·discuss
Buy ultrawide. Then tiling works without screwing over aspect ratio. It's a real estate issue. (5120 x 1440))
formulathree
·قبل 3 سنوات·discuss
The author is describing something different. He breaks into day dreaming in the middle of changing clothes. Or in the middle of eating medicine.

It's a neurological condition. I find it hard to believe this is learned.

Daydreaming when you're bored is normal.
formulathree
·قبل 3 سنوات·discuss
Human concepts can be placed under mathematical interfaces.

Inversion for gender

   ~male = female
Ordinality for human hierarchies:

   CEO > manager > worker
Commutativity for human action:

   Punch human + kick human = damaged human
   Kick human + punch human = damaged human
Mathematical interfaces are different from mathematical primitives which I believe you have mistakenly combined into a singular concept in your response.

By fitting human concepts into mathematical interfaces you develop a sort of algebra dsl for the language allowing you to apply all mathematical theorems of the equivalent algebra to the domain. Those theorems are the generalities that improve design by improving modularity.

Suddenly for ordinal concepts I can use a general min or max function across all domains. By using mathematical interfaces I am in the realm of the ultimate generality. Normally people would be writing some form of equivalent logic to derive the lowest ranking human in a hierarchy when really the concept of min covers it.

These basic mathematical interfaces that apply to basic numerical logic are found to be expandable across domains. There's no proof or logic as to why these interfaces happen to be more universal. It's just a gut feeling after using this interfaces more that they happen to be extremely universal. Thus there's no way I can prove to you what I'm saying is correct, you ultimately have to try it.
formulathree
·قبل 3 سنوات·discuss
[dead]
formulathree
·قبل 3 سنوات·discuss
[dead]
formulathree
·قبل 3 سنوات·discuss
Python syntax has really good ergonomics around functional programming. I hardly write loops when I use the language now.
formulathree
·قبل 3 سنوات·discuss
No, parallelism is useful, concurrency without parallelism is not useful.

Go and elixir provide some parallelism but the primary focus for both languages is concurrency.
formulathree
·قبل 3 سنوات·discuss
>"It's easy to hate the rich. But do you have the courage to hate the poor?"

The majority of the population is not rich and the answer to this question/quotation is self mostly self evident to the same majority of the population.
formulathree
·قبل 3 سنوات·discuss
I'm more thinking in terms of logical primitives for the design of modules and components that can be composed, decomposed and recombined. I'm thinking less about proof based correctness.
formulathree
·قبل 3 سنوات·discuss
I actually somewhat agree. I think there's a gradient here between modularity and useability. The more modular something is, the less user friendly it becomes.

The problem the GP is talking about here is a modularity problem right? He designs (aka guesses) the interface and finds out later that his guess was wrong. Mathematical interfaces deal with this problem better.

However mathematical interfaces are less user friendly and less intuitive, especially for someone not familiar with mathematical interfaces.

The reconciling solution is that the public interface can be very domain specific and made narrow in usage. The logic underneath this public interface can remain mathematical and therefore more amenable to future changes.
formulathree
·قبل 3 سنوات·discuss
The language of math itself is functional. In fact "functional programming" is basically programming as if everything was math. Think about it, does math allow for variable mutation inside a mathematical expression? No.

Interfaces that mutate internal values do not exist in mathematics. So, in essence, yes. Mathematical interfaces only support functional operations.

Haskell would be the language.
formulathree
·قبل 3 سنوات·discuss
There's another style of programming that has much of the required interfaces predefined in the language itself. A set of universal interfaces that conceptually work universally for all programming.

It's mathematical interfaces.

Commutativity, Identity, Associativity, Ordinality and more. For these interfaces, it becomes less about "designing" interfaces with gut intuition, guessing and checking... but more about finding the final design via calculation.

Math is known to be universal so it makes sense why mathematical interfaces have such wide application. When you use mathematical interfaces and compose everything along those parameters... it's no longer about "you never come up with the right interface at first"... That concept becomes less relevant.

It's hard to agree with me when I'm just saying it here. It has to "click" after you tried it with a language that supports this type of programming first class.
formulathree
·قبل 3 سنوات·discuss
There is strict reasoning why ternary expressions are, in fact, logically better than a typical if statement.

The reasoning is because ternary operations eliminate programming singularities.

Example:

   var x;
   if (someExpression) {
       x = True;
   }
   //var x is undefined
Example 2:

   var x;
   x = someExpression ? true : false;
   // use of ternary expression prevents var x from ever being undefined.
The ternary expression forces you to handle the alternative case while the if expression can leave a singularity. A hole where x remains undefined.

Some people say ternary expressions are less readable. But Readability depends on your "opinion." There are no hard logical facts about this. So it's a weak-ish argument.

It is actual fact (ie not an opinion) that ternary expressions are categorically more Safe then if-statements. Therefore, they are factually better in terms of hard logical metrics.

This is the reasoning behind nested ternary statements. It's also one of the strange cases in programming where superficial qualitative attributes of "readability" trumps hard and logical benefits. The overwhelming majority of the population will in fact find many nested ternary operations highly unreadable and this "opinion" overrides the logical benefit.

Usually though, to maintain safety and readability I just alias boolean statements with variable names. The complexity of a conditional expression can be reduced by modularizing parts of it under a symbolic name, you don't necessarily have to reduce complexity by forcing the conditional into the more readable bracketed spatial structures favored by if-statements.

Example:

   isXgreaterThanY = x > y;
   isWlessThan2 = w < 2;
   isSubExpressionTrue = isXgreaterThanY & isWlessThan2 ? False : True;
   isFactNotTrue = isSubExpressionTrue ? False : True;
Yes technically the ternary expressions are still nested in a way here, but when reading this code you don't have to dive in deep past the symbolic name.

Imagine if you have a boolean condition that relies on multitudes of these sub expressions. By defining the final statement as a composition of Named ternary expressions you eliminate the possibility of a hole;... a singularity where one alternative wasn't considered. In my opinion this is the best way to define your logic.

If-statements, imo, should be reserved for functions that are impure (void return type).. code that mutates things and touches IO which is something you as a programmer should keep as minimal and segregated away from the rest of your pure logic as possible.

Example:

     if true:
        sendDataToIO(data)

     //the alternative of not sending data to IO is not a singularity. It is also required... a ternary expression makes less sense here. 

Last but not least: The ternary expression is also a bit weak because it only deals with two possible branches: True/False. The safest and most readable primitive to deal with multiple branches of logic is exhaustive pattern matching. Both Rust and Haskell have a form of this. In rust, it is the match keyword.
formulathree
·قبل 3 سنوات·discuss
[dead]