Hacker News new | past | comments | ask | show | jobs | submit | fruzz's comments login

Retain rockstar programmers at all costs, even if they push everyone else to quit over being mistreated. Give them fancy job titles.

Have upper management crack sexist jokes, and HR laugh with them, so that women at the company who are sexually harassed know reporting it will do at best nothing, and at worst risk their own career.

Only hire young men in their twenties, and praise the idea of working long hours. Child care is for their wives to do.

Create artificial deadlines, that have no real-world repercussions for missing. But make it an urgency that must be done, instilling stress, and causing people to work long hours. Then after the deadline passes, note how it was unimportant, and repeat.

Have upper management make engineering decisions without accepting the input of engineers. Then when things blow up in a manner predicted by engineers, blame the engineers.

Pay new grads more than you do women engineers who have been at your company for years.

Have interviews that are focused on sports, and how much fun you would be at a party.

Praise the management style of Jeff Bezos and Elon Musk.


>so that women

Men aren't impervious to sexism either.

>Only hire young men in their twenties, and praise the idea of working long hours

Young women are working ridiculous hours as well.

>Child care is for their wives to do.

What child care, most of the highly educated aren't having kids to begin with. (Exaggerating, but it's not the big deal given what most career couples in their 30s make.)

>Pay new grads more than you do women engineers

That's universal as well, not specific to women only. Several companies are overcorrecting by overpaying younger women compared to both the older cohort and their male cohort, too.


> Men aren't impervious to sexism either.

Men aren't impervious to sexual harassment, that's true. But in my career women have been overwhelmingly on the receiving end. I've seen a woman not be hired by a male interviewer because she was "too hot", I've had one woman tell me she was groped, a number been subject to unwanted sexual advances, and I've seen male staff cat call. I've had a manager massage me out of the blue. It's a gendered problem, the statistics bear this out, and acknowledging that is necessary in order to address it.

> Young women are working ridiculous hours as well.

That's not the point I was making.

> What child care, most of the highly educated aren't having kids to begin with.

That's not the point I was making.

> That's universal as well, not specific to women only.

Again, yes, Not Only Men, but there is a gender component to this that I am acknowledging.


> Men aren't impervious to sexism either.

Given that GP didn’t say they were, why is your first instinct to assume that anything OP didn’t mention, in what were fairly obvious examples, was specifically excluded?

> Young women are working ridiculous hours as well.

So are the elderly, why are you excluding them?

And so on.

Come on. There’s absolutely no need for the ridiculous pedantry, and it adds less than nothing to the comment chain. Be better.


> There’s absolutely no need for the ridiculous pedantry, and it adds less than nothing to the comment chain. Be better.

But it sure does tell us a hell of a lot about the person who wrote it.


The policies that hurt minorities aren't any policy he's personally affected by, thanks to his wealth and age. His wealth also insulates him from experiences that would foster empathy in others.

Meanwhile, conservative policies favour those who have a lot of money, like him.


Ask yourself to define "interesting" using concrete terms.

Are there specific fields you want the company to be in? List them.

Are there specific roles you want to be in within the company? List them.

How much of your time do you want to spend doing feature development vs maintenance? List that.

Are there specific stacks you want to be using? List them.

What size/phase of company maturity do you want? List it.

Go from there.


I understand that they have Reasons, but it sucks that my Core i3 laptop with 1TB SSD and 24GB RAM is deemed "too old" to run Windows 11 (by one CPU generation), when the current lineup of laptops at Best Buy have way worse specs.


I'm running Windows 11 on 11 year old hardware wihtout any TPM. I doubt you can't install it on your machine if you tried a clean install.

The TPM things was mostly a showstopper if you upgraded from Windows 10 but easily bypassed via a clean install.


Linux always boots perfectly fine with TPM hardware support disabled, even when there actually is such a chip built in.

The real showstopper would be if "SecureBoot" would be enforced. I hope it never actually happens for personal computers. Everything else in the consumer electronics business is pretty much a lost cause already.


TPM 2.0 and Secure Boot are two different things. Secure Boot has been enforced by default for the better part of a decade now with the major consumer Linux distros supporting it, and can be disabled in the BIOS setup.

SecureBoot prevents a very dangerous set of persistent rootkits that are completely invisible to the OS, not sure why tech savvy folks are against it for the vast majority of computer users, even Linux ones. Many UEFI setups allow you to add your own keys to the EFI and self-sign.

>Linux always boots perfectly fine with TPM hardware support disabled, even when there actually is such a chip built in

That would mean Linux is less secure in that scenario since the TPM is used to secure store things like hard drive encryption keys.


> The real showstopper would be if "SecureBoot" would be enforced. I hope it never actually happens for personal computers. Everything else in the consumer electronics business is pretty much a lost cause already.

This is the end game. Widespread hardware and software support with default off, then default on, then always on. All to protect users from themselves of course.


The so called "end game" is already here on mobile/tablets with iOS and most Android devices. And also Chromebooks. I have a Chromebook that got bricked because the TPM malfunctioned and there's no way to repair it without replacing the mainboard. Yet all these devices are credited with being more secure devices compared to PCs.


> Yet all these devices are credited with being more secure devices compared to PCs.

Yes. They are more secure for the manifacturer. Do you want to give this app access to your files ? To all your files. And it phones home. Encrypted so you cannot see.


Security ≠ Privacy


Win 8 had a secure boot. It was tricky to get Linux working on that system.

Right now, I am looking into repurposing an old thin client as a daily driver machine.


Dell's Wyse 5070 (and 5470 AIO with a passable for non professional graphics usage 24" display) thin clients are $100 (ebay or even dell outlet) machines that make great daily drivers. they aren't speed demons, but with a m.2 ssd stick and 8-16GB of ram, they are more than fast enough for every day use (my 5470 seemed to just stay at a 2.4ghz boost clock in a reasonably ACd room (and with just passive cooling to its cpu, no fan). So don't even need really old ones.

they also make great plex servers, due to intel quicksync for transcoding videos.


Secure boot is at least on the latest insider versions I'm on. I was unable to apply updates on the dev flights because my updated motherboard BIOS had the default option enabled for CSM which I thought was absurd when I finally looked. So yeah. You can't install future versions of Windows 11 with CSM enabled.


Why it sucks? They are doing you the service, you just don't realize it. Each new Windows upgrade brings more disadvantages/limitations than advantages. I'm using W10 and I guess that will be my last one, when I installed new OS on other laptop I went for 8.1, if I installed new OS on my main laptop I would probably go for W7 or at worst W8.1, those two were peak Windows, it's all downhill since then.


I noticed the same with an older i7 here. The requirements are nonsensical.


I have i7-8700K but I'm using the legacy mode, meaning if I'd want to install Win11 I would have to format the entire computer, which for obvious reasons I'm unwilling to do.

I think I'll probably be using Win10 for as long as I can and then switch to Linux. My laptops already run Linux (Debian :P) so I'm quite used to it.

It still feels dumb not being able to just upgrade my computer to Win11... I'm running GTX 1080, CPU mentioned above, 16 GB of RAM... There really isn't any reason why I shouldn't be allowed to upgrade in such a way that I can keep all of my files...

I'm guessing that Win10 will probably be sunset in about 5-10 years so I'm actually quite excited to see how far will Linux get by then!


That's an odd and unbalanced configuration. What do you use it for?


Too much Chrome tabs?


Especially when we all know that some 90% of windows 11 is really windows 10, 7, XP, etc... underneath.


There's no right answer for those questions.

I've burned out twice. Both times I quit. Took a year off between the two. I travelled both times, and then just had my own routine at home. I had no problem finding another job when it was time to come back.

- You can tell your boss. Expect sympathy, but, any plan that works for you is probably one you'll have come up with.

- If you leave, I'd recommend not dictating when it'll end up front. Say three months if people ask, but what you really mean is in three months you'll reassess if you need more time off. No actual deadlines.

- I don't know about you, but for me as a senior eng at a startup, work eats into all hours of day / weekend. Do an 8-4. Not one minute more. No weekend. No slack on your phone. No on call. No evenings.

Be kind to yourself friend. <3 Come up with a routine. I found my days filled up without work as they did with, but taking showers, cooking meals for myself, etc. was important.


Did those break change your attitude when going back onto the market ?

I'm feeling less naive and more picky, which also makes me more curious and more motivated. As if a kind of freedom grew. A necessary one.


It informed some questions I'd ask in interviews, informed some push back I'd give following crunches, and made contemplating subsequent departures seem less unsurmountable.

Best of wishes to you. :)


> I've burned out twice

When you say "burn out" can you describe what it feels like? Is it like depression?


Congrats on all of these, but especially #4 :)

As a fellow Ontarian, what attracted you to Florida? The weather? Job opportunity?


1. I spent time with my bff. I spent time with my dad. Time with loved ones is what I value most in life; I'm glad I got some good memories. :)

2. I got a job as a backend senior eng; I went from making $65K to $102K a year.

3. I did two trips: Maldives & Newfoundland.


I think learning the fundamentals is a worthy pursuit, but in terms of getting stuff done well, you realistically only have to grok one level below whatever level of abstraction you're operating at.

Being able to glue frameworks together to build systems is actually not a negative. If you're a startup, you want people to leverage what's already available.


I agree. An ideal is far from reality.

I like to get deep into low level stuff, but my employer doesn't care if I understand how a system call works or whether we can save x % of y by spending z time on performance profiling that requires good knowledge of Linux debugging and profiling tools. It's quicker, cheaper and more efficient to buy more hardware or scale up in public cloud and let me use my time to work on another project that will result in shipping a product or a service quicker and have direct impact on the business.

My experience with the (startup) business world is that you need to be first to ship a feature or you lose. If you want to do something then you should use the tools that will allow you to get there as fast as possible. And to achieve that it makes sense to use technologies that other companies utilise because it's easy to find support online and easy to find qualified people that can get the job done quickly.

It's a dog-eat-dog world and startups in particular have the pressure to deliver and deliver fast since they can't burn investor money indefinitely; so they pay a lot more than large and established businesses to attract talent. Those companies that develop bespoke solutions and build upon them have a hard time attracting talent because people are afraid they won't be able to change jobs easily and these companies are not willing to pay as much money.

Whether you know how a boot process works or how to optimise your ELK stack to squeeze out every single atom of resource is irrelevant. What's required is to know the tools to complete a job quickly. That creates a divide in the tech world where on one side you have high-salaried people who know how to use these tools but don't really understand what goes on in the background and people who know the nitty-gritty and get paid half as much working at some XYZ company that's been trading since the 90s and is still the same size.

My point is that understanding how something works underneath is extremely valuable and rewarding but isn't required to be good at something else. Nobody knows how Android works but that doesn't stop you from creating an app that you will generate revenue and earn you a living. Isn't the point of constant development of automation tools to make our jobs easier?

EDIT: typo


IMO the problem with this is when you go from startup -> not a startup you go from creating an MVP to something that works with a certain amount of uptime, has performance requirements, etc. Frameworks will still help you with those things, but if you need to solve a performance issue its gonna be hard to debug if a you don't know how the primitives work.

Lets say you have a network performance issue because the framework you were using was misusing epoll, set some funky options with setsockopt, or turned on Nagle's algorithm. A person can figure it out, but its gonna be a slog whereas if they had experience working with the lowest level tools the person could have an intuition about how to debug the issue.

An engineer doesn't have to write everything with the lowest level primitives all the time, but if they have NEVER done it than IMO that's an issue.


I agree with what you said, but Isn’t the goal to survive the seed stage to find product market fit and customers at all costs? If you get that, you can raise money and hire engineers to rewrite your stack. If you fail to get customers, you might have a really maintainable codebase but no money and hence bankruptcy.

The point being that maybe it’s fine if there are a lot of people who only know how to glue frameworks together if they know enough to build useful products. Let all of them try; some of them might very well make it.


This totally matches my experience from two different perspectives.

1. Working as a programmer perspective: I worked at a company with good practices but so-so revenue. What happens: horribly underpaid salary, nice laptop (but not the one I want), nice working conditions. I am now working at a company with pretty great revenue and mediocre practices. What happens: good salary, I get the laptop I want (not the one I need), working conditions are mediocre.

2. UX perspective (I did a bootcamp for fun): UX'ers make throwaway prototypes all the time in order to validate a certain hypothesis. When that's done, they create the real thing (or make another bigger throwaway prototype).

I feel this is the best approach, from a business standpoint. This also means you have different kind of developers and it depends on the stage what kind they are. I'd separate it as prototype stage, mid-stage and massive scale stage.


I think you're right, but I don't think this organizational discomfort with remote work will be true of the next batch of hip companies to work at. So you may yet get your chance. :)


Honestly, I don't get this debate.

If you were to take the pain points of debug by print, and address them, you'd come up with a debugger. Being able to put those "print" statements anywhere without recompiling, being able to go step-by-step in the code, etc. And sure, that's not always available.

Both end up having impacts on the thing they observe. A print() call can cause microscopic delays that are enough to cause a race condition not to trigger, as can waiting on a breakpoint, etc. If you compile with debug symbols, that can cause some bugs not to surface, as they are only visible when you compile with -O3 or whatnot (eg. a bug involving reading unallocated memory).

Both are just tools. Sometimes one is better in a given situation. Sometimes the other is. I just don't get how this is like an emacs vs vim thing.


> Both end up having impacts on the thing they observe. A print() call can cause microscopic delays that are enough to cause a race condition not to trigger, as can waiting on a breakpoint, etc.

I seldom encounter a program that is sensitive to a print() but robust to a debugger. Prints perturb programs _less_ than debuggers do.

> If you were to take the pain points of debug by print, and address them, you'd come up with a debugger.

Quoting myself from OP: The key skill it teaches is reasoning about a program by modifying it.. When might better debugging tools be counter-productive? If they cause you to forget that there is a debug cycle, and to stay too long observing when a new modification would get you to the answer faster.. Tools will always will have limits.. Prints prepare one for times when you have to leave your tools behind and enter the wilderness.


Am I understanding this correctly? Are you saying it's better to change things rather than understanding the existing code?


For embedded work, I've found great value in being able to observe and manipulate running systems without interrupting code execution. A non-blocking console buffer is very handy, but even more so is instrumentation for periodically sampling arbitrary variables cooperatively / in synch with program execution.

When you're making a 50KW motor spin under PID control, a debugger breakpoint can cause a lot of real damage.


I had a coworker once who was proud that he didn't know how to use a debugger. It was something about being able to statically analyze a program without dropping into a debugger that conveyed his superior skill. He only used print statements.

For me personally, I use both print statements and the debugger extensively. When I'm wrangling a hard to understand bug, I'll litter my code with print statements and then once I find a problem area I'll set a breakpoint. When I have more information, I'll even set a conditional breakpoint - I can't imagine wading through a lot of print statements after a few iterations when you know exactly which conditions will trigger your bug.


The tweet is not advocating print debugging per se, but about understanding the code by modifying it. This is how I approach any foreign/old code all the time, I can recommend it. If you have a theory about how it works, edit it, and see if your edit works expected. It may or may not, either way you learn something. I love debuggers, but editing the code can also help you trigger a breakpoint just before that special case hits. Much faster than conditional breakpoints.


Stepping through can be a pain sometimes, because to find certain bugs it's easier to look through a log throughout a longer run of the program, and see how the state changes.

Of course, a debugger that could generate a log like that instead of pausing execution would give you that benefit too.


Yes, this seems like an odd missing feature that would give me the best of both worlds: a "watchpoint", but that outputs to a log. It may be possible in VS debug or gdb but it's not really .. surfaced?


In gdb you can put commands to be executed on a breakpoint; you can put necessary prints + continue statement there.


This is possible in all JetBrains IDEs, just right-click the breakpoint and configure it that way.


Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: