HN user

pkteison

1,312 karma
Posts2
Comments223
View on HN

"a small slimy creature" was added after this picture was drawn, in the 1966 edition.

Other languages adaptions had larger gollum's also - see some at e.g. https://www.reddit.com/r/lotr/comments/vy7vij/before_the_196...

(It's difficult to find an excellent authoritative link clearly explaining that the change was in the 1966 edition - there is 'The History of The Hobbit' by John D. Rateliff, but I can't find it online)

Bugs Apple loves 6 months ago

I love this idea, and agree the bugs are important and embarrassing, but find the “it should only take Apple 320 hours to fix Mail search” to be so insulting that it ruins it for me.

Fair source sounds like a really bad idea. The problem is if you let someone else define what reasonable limits to competition are, you end up in court and learn that it can be anything. Say a company sells me fair source, but I don’t like the company so I fire them and take over for myself? Well, now I get to try to convince a court that I’m not competing, despite clearly having cost them one customer. Just study the history of the constitutions commerce clause, where everything can and has been construed to affect interstate commerce.

These articles scare my mom and she gets convinced she will be hacked. I wish there was a way to write stories like this to make it clear it's a real, important issue, but not directly to you. Mom banking on an iPhone is the safest way to bank yet invented, but she sees articles like this and ends up thinking exactly the opposite.

Going to college is still the most successful route towards landing an interview. My managers generally won’t let me schedule an interview with somebody with no degree, even with personal recommendations. And all of my coworkers have college degrees. I hope people don’t read stories like this and draw general conclusions based on rare outliers.

I've had it take 80 applications to actually get one on-site interview before (and I have a pretty good resume). I would not be suggesting people consider major life changes based on a few dozen attempts not progressing, it can definitely take more than that without reflecting on you.

it’s weird. The WARN law requires notice, but, the penalty for violating the law is you have to pay people 60 days of pay. So paying instead of providing notice is technically illegal, but enforcement is pointless if you pay people with no additional conditions. That being said, if you make the pay conditional such as requiring a non disparagement clause, that can be a problem, and is likely going to be a problem here. (Can’t be sure yet, I don’t believe anyone has the details from Twitter yet)

https://webapps.dol.gov/elaws/eta/warn/faqs.asp

I have given over 100 on site interviews for a large well regarded company, and I’d say about 20 percent can’t seem to program at all. I have only actually asked FizzBuzz once because it feels terrible to go with that simple a question, but they were failing another easy question and I wanted to calibrate if the easy question was too hard or they really couldn’t program. They completely failed fizz buzz - they started a for loop but couldn’t decide what to do in it, and the idea of directly translating each instruction in fizz buzz into a line of code in the for loop didn’t seem to gel with them. I know there is no way to know for sure, but it didn’t feel like just nerves - it really felt like they had no idea how to do word problems in math class, they couldn’t turn a description with a few bullet points into code implementing them.

So, for what it’s worth, I’ve definitely seen it. I don’t even think it’s particularly uncommon.

What an awful article. Expensive conclusions are drawn with no apparent consideration for their cost. The experience of a company which appears to have successfully balanced complicated tradeoffs in choosing features is discounted because there were bugs. And almost no examples or useful stories about any detail, or suggestions on how to do it better other than to go (much) slower and to spend (much) more or to not take rich customers money.

I suspect good arguments could be made for these things, but they need to acknowledge and justify their cost.

Grubhub charges restaurants for phone orders based on some claimed artificial intelligence determining that an order was placed on the phone call + the average price of the last 6 internet orders. A reporter easily found examples where reviewing calls where they decided to charge came up with false positives.

"I reviewed some of the recordings for Ghost Truck Kitchen and found multiple false positives, where Grubhub charged the restaurant between $7.80 and $7.92 per call for informational phone calls that did not result in an order."

https://www.vice.com/en_us/article/wjwebw/yelp-is-sneakily-r...

This actually isn't the "all your base are belong to us" situation. This is "we will stop employing you if you do [x]", not "we will own [x]". That's a much, much, much lower bar. They are legally not required to have cause to fire me, so being right doesn't help.

So, sure, I would own the videogame mod if I did it on my own time with my own resources. But I could also be out of a job. Being right but unemployed doesn't sound comforting - I like the job, and they've been up front about the terms, and I'd rather quit if I find them sufficiently unacceptable than risk being fired.

Edit: It actually looks like moonlighting is officially protected here, but conflicts are still disallowed, so I guess it's possible it could end up in court debating whether programming is a conflict. I already have the opinion of one side in writing (yes, it is a conflict, they claim), but at least it might be debatable.

Still, not particularly anxious to end up in court arguing that somebody should be forced to continue employing me after I did something they told me not to do on the grounds that they shouldn't have told me not to do it... complicated mess.

Monetized: Management must approve. Doubt they do, haven't asked.

Hobby: Not allowed to do anything similar to what employer does. Got an official opinion from legal that employer programs, working on a videogame mod is programming (although employer does not program videogames), so therefore I'm not allowed to work on a videogame mod. I'm not certain the employee manual agrees with the official opinion from legal, but I'm not really in a position to be able to disagree.

So, well, no side gigs. It's just something you have to agree to for this job, and it's a good job, so such is life. Maybe you could do it and hope they don't find out, but they have clear documented grounds to fire you if they do, so why risk a good job?

At least there isn't any non-compete. If I don't like the rules, I can always quit and go work somewhere else. Before this west coast job, every prior programming job I had was on the east coast and involved some sort of non-compete agreement (they tended to be slightly limited, like you can't work at these 5 competitors or you can't leave to work for a client, but 'slightly limited' can actually be highly limiting when those 5 competitors are the best employers for your specific expertise).

Can anyone recommend a good book on becoming a better technical interviewer? I’ve found plenty of books on being a better interview candidate, and a few for hiring ceos or sales people, but I haven’t been able to find anything with useful suggestions for the hiring side of the table in a tech interview.

In case you're still curious, I think the reason it isn't included is because auto-increment is a hard problem to do right, ends up being a leaky abstraction for technical reasons, causes bugs, and is philosophically sub-optimal for basically any use case you can dream up. Want to order? Dates are probably always a better thing to order by, or else some natural property of the data like name or title. Want to link two records together? GUIDs are so much better it's not even a contest.

In development, auto-increment appears to be previous field +1. Developers write code expecting that behavior and relying on continuous IDs without gaps. But, well, for example, Oracle doesn't rollback sequence values. They also pull them in blocks (I think blocks of 20?). So sometimes you can end up with numbering like 1,2,3,20,22 if things were weird at just the right time, and you probably never saw it during development or QA unless you happened to know to try to force it.

Then you get things like SQL Server resets auto increment field values on database export/import, so numbering which used to have gaps in the original will have no gaps in the import, causing the numbers to change. (I have no idea why, just seems like a bug/disaster waiting to happen.) Changing some ID fields tends to cause obvious disasters, as you usually have several tables which store a copy of the old auto ID value to join on.

I've seen several production data loss issues as I learned about the joys of this data type and prefer to avoid them as I learned more.

Learn Prolog Now 8 years ago

The thing that intrigued me the most about Prolog was that true and false are not opposites. True means it could prove it, but false means it couldn’t prove it in time, not strictly necessarily really false as in not true. Thinking about that distinction, that you can have a language where the default logic can’t be used for Boolean algebra, blew my mind when I was in college and has been fun to ponder ever since.

I find it weird that the responses seem to draw a distinction between whiteboards and coderpad. The assumption seems to be that the problem making the whole thing stressful and unnatural was the communication medium and not the fact that it's a super time compressed artificial problem with many unstated considerations and a tremendously outsized influence on the rest of your life, no pressure, just talk through everything exactly like you never do.

Most of the problem seems to me fundamentally unaddressable without verifiable portfolios, but those have their own problems. Even in industries where portfolios are standard, plagiarism is a thing - how do you get the verifiable part? I want to hire someone great, not just someone who was on the same team as someone great.

Every time an interviewer has told me something like this, they then nitpick syntax and appear to be primarily concerned with "does my whiteboard code compile" sorts of problems. And getting stuck / asking for help feels like I get docked for getting stuck. Same with less optimized. So it's hard to trust such an explanation - clearly my interview would be better if I came up with the perfectly optimized solution, or gave a lecture on the options rather than trying to discuss options.

So it seems to me entirely reasonable to still be nervous.

Mind you, I don't have a better answer, but I don't think just explaining that suboptimal is ok and it's a discussion really helps.

I was once sent to a training where they suggested we consider that people interact in four specific different ways and tailor interactions based on the recipient. It has seemed useful in future interactions to have a few more examples to draw from than generic "tailor your pitch" advice, but it's also somewhat concerning when I think about it because it's company training which is basically encouraging you to assume, bucket and stereotype.

I have interviewed a lot of people with great resumes who literally could not fizzbuzz, or even write a simple for loop. And then if they can write the for loop, most fail when it's a nested for loop. And I don't mean got the syntax wrong - I mean just can't even start, on the simplest of tasks.

I hate that I have to question whether candidates can code, but as near as I can tell, a lot of them truly can't. It leads to an interview process that I'm embarrassed to need to use, but it seems reckless to skip it. I've worked with people who really can't code, and don't want to be back in that situation again. I'd love to have a better interview process, and I'd love to spend more time talking about higher level concepts, but most of the process seems to be stuck just verifying that the things on your resume are really things you did, and not just things you were on the team for but didn't actually do, or outright fabrications.

Your site shows up fine if I search for SGML Syntax Reference or SGML syntax. Meanwhile, it doesn't appear to generally be about learning basic SGML concepts, so it seems quite reasonable that it doesn't show up when just searching for SGML. And why blame Google when Bing does the same?

It seems like your complaint is that adding one page of reference info wasn't enough to serve as an ad for your business. It doesn't seem like a valid complaint to me.

Yes, surprise firing is technically an option for almost all employees, including the long-term engineering staff talent at wealthy tech companies. It's reciprocal - the employee can quit with no notice also. A very very few public faces, world famous leaders in their field, will negotiate different deals - but the general long-term engineering staff isn't at that level.

I think it's not a point of competition, especially for the talent worth competing for, for several reasons:

1) People don't value the protection as much as they value the freedom of being able to quit, and you only get one or the other. Basically: "I'm good at my job, why do I need protection? But another offer might come along and I might want to leave."

2) People believe it won't happen to them / they have control over it. (I think this is generally true - don't do boneheaded things, keep being good at your job, you won't get fired.)

3) I prefer working somewhere that has the ability to fire bad coworkers. It leads to less bad coworkers.

4) Surprise firings are not really common, and when they do happen, the examples seem to make sense - people get fired for doing obviously bad things (or for being horrible, but that is usually a drawn out process and not the surprise described here.)

5) If you don't announce it, it will be difficult for your next employer to learn the circumstances, so you can always just get another job. (Companies in America tend not to answer questions about why prior employees left, it's mostly up to you to spin the story in the next interview. Most companies (in tech at least) don't even bother checking references because it's unlikely to be productive.)

6) The worst cases of fired-for-no-good-reason are already legally protected

If it was extremely common then this would probably change, but so far in my career it just hasn't seemed like a big concern.