HNHacker News
TopNewBestAskShowJobs

rhapsodic

2,209 karma · joined June 23, 2014

submissionscomments
rhapsodic··on Lisa Brennan-Jobs Recalls Memories of Her Famous Father

  > “You’re not getting anything,” he said. “You understand?
  > Nothing. You’re getting nothing.” Did he mean about the
  > car, something else, bigger? I didn’t know. His voice
  > hurt—sharp, in my chest.
Yep, a wise father imparting a valuable life lesson to his beloved daughter.
rhapsodic··on Lisa Brennan-Jobs Recalls Memories of Her Famous Father
It is truly amazing how he is hero-worshiped while Bill Gates is vilified. The early secretaries at Microsoft became millionaires from their stock options while many who played key roles in the success of Apple got their salaries and bennies and that's it.
rhapsodic··on Inducing People’s Employers to Fire Them Should Be a Civil Wrong
And it should be noted that the person the GP was smearing was not accused of pedophilia. He was hounded out of his job for supporting a ballot proposition that was ultimately passed by a majority of California voters. I tried to reply to the GP directly but couldn't because it got flagged dead before I could get the reply submitted.
rhapsodic··on Behemoth, bully, thief: how the English language is taking over the planet
>Then explain to me why the French are using Go, To etc. instead of TB and GB like everyone else?

Probably because some French law mandates it.

rhapsodic··on Are SUVs Ruining Retirement Savings?
I would like to see a similar analysis applied to living and working in Silicon Valley or San Francisco, as opposed to some metro area in the Midwest. I have a hunch that given two similar people, one in each place, with similar careers, financial habits, consumer habits, etc., the one in the Midwest will be able to retire sooner and more comfortably than the one in SV/SF.
rhapsodic··on I Was the Mob Until the Mob Came for Me
As I've said before, the only way the internet rage mob culture will dissipate is if participation in a rage mob carries the risk of being subject to a retaliatory rage mob. That's why I love to read stories like this, and I wish they happened more often.
rhapsodic··on The open-plan office is a terrible, horrible, no good, very bad idea
I'm old enough to remember when high-wall cubicles were standard fare, and they were mocked and derided as soul-crushing corporate cost-cutting measures. But they gave you a lot of privacy, relatively speaking. And you could still have spontaneous conversations with your neighbors.

And then when school-cafeteria-style open offices became de rigeur in the startup culture, people seemed hesitant to push back on the "but collaboration!" nonsense. It looks like the overton window for that is finally starting to shift.

rhapsodic··on Goodbye Microservices: From 100s of problem children to 1 superstar
>It's so nice to build something that works without JS in the first place and then just add some JS and CSS3 animations.

Yeah, but JS buys you a lot. There are certain things that you can accomplish with JS that you absolutely cannot accomplish without it.

OTOH, anything that you can accomplish with React, you can accomplish without React. I'm with the GP on that one.

rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
>A huge reply after being so damningly called out?

Serious question: what the hell are you talking about?

>It's like the flip-side of foobar...

WTF does that even mean?

>avoid like the plague any place where all the tech questions are gotchas or obscure language features. The lead developer is probably someone you do not want to work with.

If you consider those questions "gotchas" or "obscure language features" you don't stand a chance of working with those lead developers. Their process is designed to weed people like you out.

I think, for the book I'm writing, I can build an entire chapter around this subthread. Can I quote you by name, mattmanser?

rhapsodic··on Simple, correct, fast: in that order
>This title is misleading. The post actually says that the reason "simple" comes first is because without it you can't have "correct" (nor "fast", not that that matters so much). So he's not saying simple is most _important_, just that it comes first chronologically, and has the other two as consequences.

If that's what he meant, he's flat wrong. Simplicity is neither necessary nor sufficient for correctness.

rhapsodic··on Simple, correct, fast: in that order
>But I would put $10 down that if I asked you to assert that all medical software in current use that has never killed a patient because of its software issues is therefore "correct", you'd walk back hard. You'd have to be crazy to assert that all such software is "correct".

I made no such assertion. That's a straw man.

But I think I can safely assume that if the patient dies as a result of the software's functioning, that software is not "correct".

You may disagree, but I think it's preferable to have a patient kept alive by an overly-complex system than killed by a simple, elegant, incorrectly functioning one.

Not to be intentionally blunt or snarky, but I think Drew DeVault's post was a bunch of rambling, hand-waving nonsense. Until today, I wouldn't have expected anyone to seriously argue that simplicity is more important than correctness. But he comes along and makes that very argument, with a self-assured, authoritative tone, but very little in the way of concrete reasoning, and to my surprise, the number of people on HN who apparently agree with him is non-zero.

rhapsodic··on Simple, correct, fast: in that order
>Sure... but define "correctness".

How about this, for example:

The patient lives.

rhapsodic··on Simple, correct, fast: in that order
>You're right, future times are more complex and might require more attention to detail. But I think you can still achieve the requirements in a simple way, perhaps by storing it as UTC + lat/long and running a script to update future dates when someone changes their rules.

Seriously? That, in your opinion, is simpler?

rhapsodic··on Simple, correct, fast: in that order
>I disagree. I just can't get more specific without specific cases to examine.

You should probably mention somewhere that you're the author of the blog post under discussion. And it looks like you're going to make a reputation for yourself as the guy who argues that it's more important for software to be simple than for it to function correctly.

Good luck with that.

rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
> The rules for implicit coercion in JavaScript are rather unintuitive.

Yes. And a lot of self-described Javascript developers don't even know that. Because they've never read a book or any other document that explains those rules. And that's why they struggle, like the person in this thread to whom I originally replied, and they can't produce correct code quickly and efficiently, and they create bugs that they don't understand and can't fix, and they can't correctly understand code written by someone who actually understands those aspects of the language.

I agree that you can't memorize everything there is to know about Javascript. But if you don't know something, you have to at least know that you don't know it, so you can look up the correct information when you need it. But a lot of self-described Javascript developers don't even know what they don't know.

For example, I know that the methods String.prototype.substr and String.prototype.substring both exist and they're both used to extract substrings from a string. But I still, for some reason, unless I've used one or the other within the last day or so, I have to check the API docs to determine which one I want to use and what its parameters are. I know that I don't know what I need to know. What I will never do, is write a loop that extracts the characters I need one at a time and builds the substring from them. But I have seen where people have done that, in production code and in technical interviews. I am of the opinion (not universally shared here on HN, apparently) that that is not acceptable from a highly paid professional software developer.

And certain basic things about JS, like the ones I originally described, I think you should just know. But again, that's just me.

rhapsodic··on Simple, correct, fast: in that order
> If you cannot achieve correct without simple, redefine correct.

More hand-waving.

rhapsodic··on Simple, correct, fast: in that order

  > The reason is straightforward: if your 
  > solution is not simple, it will not be 
  > correct or fast.
A very hand-wavy statement, and not always true.
rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
I think you're reading too much into the phrase "rattle off". By that I simply meant that the interviewee should know those things well enough to answer correctly and confidently.

And it still amazes me that this position seems to be controversial here on HN. There are people who have expressed unequivocal agreement, to be sure, but a significant number seem to see that stuff as obscure arcana that a developer would not typically need to know.

rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
Nadya, whether or not that's the best thing to test for is beside the point. All I'm saying is that, in my view, a professional Javascript developer should know those things. And apparently, a lot of people on HN disagree with me.
rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
> You are the reason I keep a few pieces of esoteric code in my interview notebook. I'll gladly answer yours as long as you can answer mine.

I don't see those examples as esoteric at all. Ignorance of those basic things can result in all sorts of bugs. If I'm paying someone a six-figure salary, I want them to know those things. But that's just me.

rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
>Does that mean I am hired? :-)

Not necessarily, but it puts you ahead of about 80% of all the other candidates in consideration.

rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
>I'd much prefer a length check than truthiness check if I wanted to test for empty strings - that way if any nulls or undefineds come through, they would show up as errors.

That may well be the best approach in some circumstances. But do you think I'm being unreasonable wanting to hire only someone who knows those very fundamental aspects of the Javascript language?

rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
Nadya, I don't understand the vitriol in your reply. If you think I'm being unreasonable not hiring someone who doesn't understand those basic aspects of the Javascript language, I would be interested in hearing your reasoning. Please share it if you don't mind.
rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
It was not sarcasm.
rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
>The fact that you even need to ask those questions (about the truthiness of those variables), means the language is a dealbreaker, to me.

What absurdity.

By "dealbreaker", do you mean that you will not take a job that requires you to write Javascript at a professional level? If so, kudos for walking your talk.

rhapsodic··on Ask HN: What you wish you'd known before getting into JavaScript?
>2. I really wish I had studied JavaScript. I didn't, at all. I was like "Yeah front end is easy anyway, lets roll" and just got started developing. I did so many stupid things, suffered so much, and really resented the language at so many different points exclusively out of my own ignorance. Once I got my head out of my ass, and actually studied the language in depth I felt like so many things started making sense.

Based on my experience interviewing candidates with years of alleged "experience", I marvel at how many so-called professionals don't bother to learn Javascript in any depth. I've had more than a few candidates that couldn't demonstrate how to iterate through the elements of an array, for example. Or correctly give the truth value of expressions like:

  "  ";
  "";
  undefined === null;
and on and on. These, to me, are dealbreakers. If someone can't rattle them off, I'm not going to pay them the six-figure salary they claim they're worth.

I'm surprised at the amount of resentment this sentiment of mine generates here on HN, of all places, but it does.

rhapsodic··on React from zero: a simple tutorial for React
> Javascript natively is quite difficult to do this and requires a lot of code to handle simple logic.

Statements like this are what boggle my mind. I just don't see what's so damn difficult about native Javascript.

rhapsodic··on React from zero: a simple tutorial for React
>Do you use any framework, library or specific patterns in your apps?

Yes, but my team takes the same approach that Facebook or Google takes. We don't try to shoehorn in some general framework made for some other application by someone else. We make our own, that serves our own particular needs. We are the architects and the builders of our software.

rhapsodic··on React from zero: a simple tutorial for React
>oh. it would seem this is more about you feeling impressed with yourself, rather than making substantive arguments.

That is my argument. It's simple logic. If I can get good results without React, I've proven that React is not necessary to get good results.

rhapsodic··on React from zero: a simple tutorial for React
>When people tried to write big enough applications with JavaScript, they found out, that it was a mess.

I have written huge, complex, graphics-intensive applications with Javascript, and that was not my experience at all. So maybe it's not the language, but the person using it that is responsible for the mess.

> It's similar to WinAPI. Sure, you can write C with WinAPI and it's enough for simple applications.

That is a very far-fetched comparison, in my view.

← PreviousPage 4 of 24Next →