Employees are happier when led by people with deep expertise - <AUTHOR> https://hbr.org/2016/12/if-your-boss-could-do-your-job-youre-more-likely-to-be-happy-at-work <comment><USER2> At a unicorn I was working at, MBAs were being hired to be engineering managers. I did not see a single engineer promoted to management, it was mostly all MBAs. The few I had direct contact were really useless at helping engineers out, all I ever heard from them was "Just get it done.". If I asked for help, they'd say "Well who else is gonna do it then?".

I felt demoralised and lost some of my confidence. But the company was bleeding talent at the engineering level, plenty of engineers called out this crap and asked the CEO for answers. CEO would make excuses and not do much. Now the company is not doing well at all, even the senior leadership is leaving in droves, the CEO has even been replaced, the valuation has also declined quite a bit.

I am not in silicon valley, so not sure about there but over here, it seems to be a trend to have MBAs in all management positions above engineering and even CTOs of startups who are MBAs.

I had no interest in an MBA until I saw this trend. Now I am seriously considering that route, because it seems there is a serious glass ceiling. Doing an MBA might be necessary for me to move up the ranks.

<comment><USER3> While I can't speak for what happened at this company. I think the problem is not "MBAs or engineers being managers" rather them not being good listeners.

And that is the point the HBR article is also missing. In my previous job, I had manager (ex-engineer) who would often say - "I don't even understand what are you talking about". But he would always listen patiently to us and even spend some of his personal time after office or weekends on google trying to understand the issue in depth. If he came across articles/links he thought could help us, he would email us. If he couldn't do that, he always approached the upper management to provide us training or help as required.

while in my recent job I had a manager (ex-engineer) who tried his best to come across as someone with "deep expertise". He would often google topics we wanted to discuss with him. The end result wasn't pretty. Lot of times he would make an assertion that he read somewhere that the design we were presenting was unworkable. Example: while talking about a design on "messaging queues" (MQ) using RabbitMQ he insisted on using Microsoft Outlook. It can handle so much daily load of message (email) volume he said.

<comment><USER4> That clearly isn't an example of a manager with deep technical expertise, its a poor engineer who has been promoted and is faking it. By the measures in the study he would not have counted as a deep knowledge engineer.

Just because he was an engineer doesn't mean he has any deep skills.

</comment></comment></comment><comment><USER5> >The benefit of having a highly competent boss is easily the largest positive influence on a typical worker's level of job satisfaction

This is one of those great discoveries that is hardly surprising and makes you wonder why it hadn't be seen before.

Honestly some of my worst work experiences were getting jerked around by a superior who completely failed to understand the work required to do my job.

<comment><USER6> _This is one of those great discoveries that is hardly surprising and makes you wonder why it hadn 't be seen before._

Well, the traditional view of "management" is that it's a distinct job from "doing". Therefore, so the thinking goes, there is a distinct difference in skillsets, and thus the manager should be good at the managing bit, and the doer should be good at the doing bit.

The reality is that in order to effectively manage, you have to understand what the doers are actually doing.

Interestingly, this relates to a topic that came up yesterday about product managers (who are not "managers" in a traditional sense). Every time I see complaints about PMs, the root cause often starts with the PM not understanding how software is built and how developers work. Thus they disregard practical technical realities. Those folks describe as a "good" PM are often those with a technical background... who could, as it happens, do your job if needed.

<comment><USER7> > The reality is that in order to effectively manage, you have to understand > what the doers are actually doing.

Actually it is not. One of the best bosses I ever had had no clue what I was doing. He was smart enough to admit that he didn't know how to do my job. He was excellent at his job though: figuring out who were good people and removing roadblocks from their way. He identified a few good programmers to do the technical interview part while he focused on are the people he was hiring good fits for the people he already had.

If you cannot have a great manager who will get out of your way, then a manager who understands what you are doing means at least when he tells you to do something it was probably what you were going to do anyway.

The worst boss I've ever seen took some programming classes as a door into management - he knew enough to be dangerous when telling programmers what to do, but not enough to be helpful.

<comment><USER6> _Actually it is not._

Well, the HBR studies cited, here, indicate a _correlation_ between a manager who could do their direct report's job and job satisfaction of that direct report.

It does _not_ claim that this is _necessary_ for direct report job satisfaction, only that it makes it more likely.

So, my comment could have been better phrased as:

The reality is that in order to effectively manage, it helps if they understand what the doers are actually doing.

 _If you cannot have a great manager who will get out of your way_

I claim that knowing how to "get out of your way" is a necessary but not sufficient skillset in a "great" manager. Understanding how you do your job will better enable a manager to remove impediments and provide you with the right environment (both physical and technical) and right motivators to help you perform even better.

No one would claim that a football coach should try to handle the ball themselves (as per the manager you described in your last paragraph). But a coach that just stands back and lets the players play is only doing half their job (at best).

<comment><USER8> Yeah I think there's a balance here. One of my favorite managers also didn't understand my project (although he did understand software engineering in general) and I later found out everyone else hated him. I've seen what I suspect is similar later: managers who just see their job as defending their team. Someone needs something from the team? Push back. Their teams needs something? Hound those responsible. Team has an opinion? It's undisputed truth now. No ability to mediate or help with the bigger picture. Just like a lawyer for their employees.

What you need is someone who will take care of the employees and jump on grenades of distraction so they can focus on their job. But you also have to have enough context to step back and say, "hmm... doing this would be best for the greater good - my team should take a look at this." It doesn't need to be the ability to do it themselves, but they have to have some.

<comment><USER9> You'd be lucky in software engineering if your non-technical manager sees their job as just defending their team. Someone needs something from the team? Push the team to give it to them. Their teams needs something? Give excuses on behalf of higher management but take all the flak from your employees for the excuses. Team has an opinion? Promote upper management's opinion as undisputed truth. Does have ability to recognize the bigger picture of their next promotion or new job. Just like a lawyer for their own CV.

<comment><USER8> Agreed - I guess what I'm trying to say is if you have a boss who doesn't understand the technicalities and won't understand them, this kind of manager is the best-case scenario. Certainly there are worse managers, but there are fundamental limitations preventing them from becoming better.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> I skimmed the comments and didn't see the following perspective so thought I would add it: one thing that makes it great for me to work with people with deep expertise is the ability to learn amazing things. I am willing to put up with a lot of 'management personality/quirks' if it comes with learning that is invaluable. I believe people who work with 'interesting' (sometimes abusive) chefs such as Gordon Ramsay may also share this motivation. However, this is just my opinion and I can't say that there is a general trend for this sort of thinking.

<comment><USER11> Nothing more annoying than an incompetent co-worker or boss. I don't think you're alone in that regard. If someone is competent that means I can trust them to do the right thing. If they're incompetent it's a crapshoot and causes unnecessary stress. I guess that is not necessarily the same as deep expertise but it's hard to imagine someone with expertise who is also incompetent in that domain.

<comment><USER12> Lets not forget- every lousy software architect needs a demolition crew to clean up behind him. ;)

</comment></comment></comment><comment><USER13> Is anybody surprised by this? A boss who can do your job can:

\- Fill in when the team is busy. Ever seen the manager at McDonald's flipping burgers or frying fries? Some goes for any other manager, sometimes, they have to step into the code or read legal docs, or operate the machines.

\- Provide a perspective that's likely to be relevant to you. He knows what it was like doing your job, and has a good guess as to where it's going. As opposed to simply imagining what you do.

\- Understand push-back. A boss who isn't an expert will require explanation that an experienced boss will not. "We can't add this feature because it breaks our database schema". "Uhm what's a database schema?". Only so many times you can hear that from someone who supposed to be deciding things before you lose faith.

\- Guess what the team wants. Better experience -> better guesses. Even if the boss hasn't done the work for a while.

\- Give feedback beyond "work completed/not". Because they can see where the hurdles are before you complete, and they have an understanding of how big the problems you've solved are on the way to completion.

Looking at my experience, anytime I worked with someone who didn't have the technical understanding, the worst drops in morale happened when I felt something was obvious, but the person needed it explained. It would have been fine for a new staffer to ask, or a graduate, but not a decision maker.

The main annoyance was the issue of where costs could be cut. Some people I've worked with seemed to think that just by asking enough questions, some piece would show up that could be cut from the solution with no harm. And so they'd keep asking around about whether this-or-that was "really" necessary. And perhaps when you're not an expert you can't come up with new pieces or processes, so your line of questioning is inevitably towards slimming whatever is already there.

</comment><comment><USER14> This is very interesting, and rings true on many levels.

For one, it takes a certain level of competence to be able to differentiate between good and bad work. If your boss can't tell the difference between the two, workers will be rewarded/punished/promoted/fired based on some other metrics, which are likely to be unfair or even arbitrary.

Another, is that bosses and managers are responsible for providing guidance. If you have two ways to do something and aren't sure which is best, it's natural to go to your manager for advice. If you get the feeling that the advice you get is worthless (or even harmful), then you'll feel lost and unsupported.

And finally, in many organizations, the boss sets priorities. If he doesn't understand the work, he is likely to have unrealistic or actively harmful expectations. And you'll feel like you're wasting your time.

All of these things are terrible for morale.

<comment><USER15> There is nothing more demotivating than realizing that the person in charge of making technical decisions has no idea what he is talking about. You have no authority to make good decisions or hope of explaining things to willfully ignorant management. All you can do is quietly implement their stupidity and hope to avoid the fallout.

<comment><USER16> I think one of the biggest saps of motivation in that situation is that even _successes_ are meaningless. Because one instinctively doubts the whole thing then (even a broken clock is right twice a day, but it still doesn't make one feel great).

</comment></comment></comment><comment><USER17> What's with HN editors changing the title on this one from the actual title of the article ("If Your Boss Could Do Your Job, You're More Likely to Be Happy at Work") to " Employees are far happier when led by people with deep expertise"? The original title was far more descriptive.

<comment><USER18> I agree with your comment. The new title seems to be taken from the article itself though (as opposed to just made up by someone).

 _" Using these three measures of supervisor competence, we found that employees are far happier when they are led by people with deep expertise in the core activity of the business."_

</comment></comment><comment><USER19> Amazon still has pockets of very deep expertise with highly technical leaders that make for very productive and profitable teams. I've personally worked with some OR and Economics teams that consistently deliver exceptional results for the bottom line. And I know that many of Amazon's best businesses have come (originally) from organizations like these: AWS, Kindle, Echo, etc.

But it very quickly is moving away from that idea and toward a world in which MBAs with half baked ideas that don't pass basic sanity checks are allowed to commit to impossible (P=NP!) ideas on behalf of their teams. And it destroys morale: nobody wants to work on a project that is known from the start to be impossible to deliver as specced. So they churn out.

And when you talk to the goon that is in charge of it all, the problem always magically seems to be that they can't hire fast enough.

</comment><comment><USER20> It works both ways. In my first job I had the most intelligent and insightful boss I've ever encountered but I was too young and cocky to notice and the same went for my coworkers. We insulted him behind his back, ignored his suggestions to improve our work, ignored the fact that he was a truly interesting person who had some incredible stories to tell (his background was consumer electronics and radio comm's systems) and it wasn't until I left the company, travelled, grew wiser and older that I realized we as a team made him a pretty unhappy person and he wound up leaving the company to take a more junior role to save his sanity. The only reason he couldn't get rid of us was he wasn't respected by the owner of the (quite small) company and thus no real power beyond supervision. Work went out the door on time so everything was dandy.

Be careful judging others abilities through the lens of your own role in a company. Now that I've had two managerial roles I can see things from his perspective and often long to take a job where I'm simply judged on my own work rather than the sum of a collective.

</comment><comment><USER21> Right now I am 36. I had a team- and tech-lead position for the first time in my carreer back when I was 28. All other programmers loved me (except 2 slackers who hated being asked for statuses, even if it was twice a month). QA was much better than before, frontenders were happy to receive clear directions and tasks while having some freedom in choosing designs. The devs from other teams loved interacting with me, I almost always had something interesting to share on how I do things, people were learning from me.

Things were swell. It was an extremely positive environment.

But I got demoted 7 or so months later simply because the other managers hated me. I didn't talk about charts showing increased amount of tickets per sprint resolved, about increased productivity, about how to make people more efficient via some BS measures that never really work (except maybe in a Chinese factory or in a pyramid-scheme marketing organization?). I knew how to make my people efficient and I was doing it. On the managerial meetings I was bored to tears and eventually I just told everybody in the room (including the CEO) -- "People. Why are we here on this meeting? I only see this as an excuse for everybody to congratulate themselves on how awesome you are. Speaking of which (at this point I pointed at 2 other managers) the only thing you ever managed to do was impede me by imposing waiting in inter-team communication for weeks while your devs are telling me they are idle and have nothing to do -- and you're also criticising my managerial techniques no matter the fact that in this 150+ people organization my team is the only one not behind schedule". Or something like that.

Needless to say, I got demoted -- and left the place -- shortly after.

Thinking of it 8 years later, I'd absolutely do the same but I'd use even more brutal language.

Management needs less BS. It doesn't deserve its current breed of slackers who licked bottoms most of their conscious lives to get to such a position and then they figured they'll unofficially retire at 40 while officially leeching salaries into their 60s (read: show up at the job but practially do nothing).

As any human system, inertia and credentialism are a huge problem. This has to change.

<comment><USER22> This is just my perspective. I've been in (increasingly) challenging engineering leadership roles over the past 5 or so years.

When I first started, I felt exactly like you do. That my job was to enable and empower my engineering team to build awesome product and that all the "management" stuff was a huge waste of time.

I received some advice from my boss that I was missing 50% of the job. You're being paid and expected to do the engineering leadership side on top of being the interface with the company for progress and business objectives. Any talented engineer with a modicum of people skills can usually do a halfway decent job of leading a small team to build a product, but it takes some business acumen to understand how your team fits into the bigger operating environment of your business.

That was the skill they expected you to bring to the table, and you not only despised it, you blew up at them in a meeting.

Granted, that company may very well have had a terrible meeting process and been looking at all the wrong KPIs for how things should work. But knowing how to positively influence that process inside the environment and doing so in a political way that preserves culture and existing team dynamics is crucial.

I hope you give that type of role another shot. The world needs better engineering leaders that can help businesses understand the value of a strong engineering culture.

<comment><USER21> Appreciate the feedback, thank you.

I had a pretty good idea on what was expected of me even back then. Truth be told, I would have cultivated the more business-oriented skills with time if the management environment wasn't so full of self-congratulatory practices and people patting themselves on the back -- while all of them know perfectly well they contributed no more than $500 to their employer's bottom line at the end of the month.

I plan on doing a small business of mine so I have no choice -- I will learn everything necessary from this point of view with time.

But in that particular environment I didn't care about helping those people at all. They were all there because the job was stable, well-paid and expected almost nothing of them. The CEO was an idiot who bought a very cheap "success lingo" all the time. These people didn't want any changes; that meant they had to work more which was the exact thing they were strongly against (and were sabotaging everyone who tried to introduce a more positive change like myself and one girl who was leading team of designers and frontenders).

Thank you for your kind words. Even being strongly dismissive of my own abilities (which IMO is important if one wants to always evolve and improve himself) I believe I would indeed be a valuable addition to a managerial roster but quite frankly, I don't want to be involved in politics and fighting with people who despise change.

<comment><USER22> I had to trick my brain into just enjoying it as a strange engineering discipline. I like to go through life imagining everything as a system to be programmed, so to me, business politics was just a different type of system in a programming language I had yet to learn.

Now I like to think that I can bend those systems to my will as well. :)

Good luck with your small business endeavors.

</comment></comment></comment></comment><comment><USER23> I remember being taught how to mop a floor by the store manager at a supermarket. It's a very small thing but it added to my positive feeling about the company.

</comment><comment><USER24> Hiring MBAs at tech companies as managers directly managing engineers has not proved to be effective. MBAs have traditionally worked in finance, oil and other Wall Street companies and everyone thought that bringing in MBAs to tech world (partially pushed by investors) would be a good idea. As with any new experiment, you just have to wait and let the time decide the results. And it has been few good years now since MBAs have flooded tech industry and as many like minded engineers have experienced, MBAs with no technical background are a bust as your decision making managers. Sure they can thrive at duties such as managing supply chain management of a large tech companies such as Apple or Amazon. Or dealing with international clients where your "prized" skills such as charisma, emotional intelligence and thinking on the feet matters.

</comment><comment><USER25> The most surprising part about this to me is that this matters at the top. Sure, for a middle manager it makes sense that it matters quite a bit. I'm pretty surprised that it matters much at the top, though.

If Elon Musk decided to head a major grocery chain I wouldn't stop to consider whether his lack of experience in retail groceries mattered much. But maybe it does?

Really interesting to see the analogy extend to sports, too. Professional sports teams, even successful ones, are almost universally run (coaches, GMs, etc.) by people who didn't play at a high level. Without actually pulling the numbers up, I'd estimate with high probability that the number of "all-stars" either managing or running teams is countable on one hand.

I mean, hell, this year's superbowl is being lead by two coaches who played D3 football, and one GM who played football for a Canadian university. One of said coaches is pretty universally considered one of the greatest coaches of all time.

For the most part these coaches/GMs absolutely could not do the job of the players on the field, nor could they ever.

<comment><USER26> Did Elon Musk have a lot of experience in self-driving cars or space rockets before Tesla?

<comment><USER27> But if you listen to his interviews, it's clear the guy has a nuanced, clear understanding of the technology and business model behind both Tesla and SpaceX. He may not be able to do every job, but he can do the job of his direct reports.

In contrast, there's the "professional manager" archetype, who Musk is definitely not.

<comment><USER28> obligatory Elon Musk SpaceX tour: [https://www.youtube.com/watch?v=xahiWQQKw7Y](https://www.youtube.com/watch?v=xahiWQQKw7Y)

</comment></comment></comment></comment><comment><USER29> I've had a boss who was very competent technically, but was completely incompetent as a people manager. Somehow he rose to a VP level, but still wanted to micromanage everything down to individual code reviews. It was comical at times. Eventually he was fired.

<comment><USER15> Successful managers need both people and technical skills. That is why it isn't an easy job.

<comment><USER30> Actually technical skills and then people skills and in that order.

<comment><USER31> I disagree. A manager is not an individual contributor. It's important for them to have technical skills, but I don't think it's necessary they be on par with an average developer _, let alone better than the best.

_ * The developers they're managing.

</comment></comment></comment></comment><comment><USER32> This may be true for an developer/administrator/maintainer in a "Scientific Management" (Taylorism) design process.

[https://www.wikiwand.com/en/Scientific_management](https://www.wikiwand.com/en/Scientific_management)

This is not true for a creative/synthesis/multi-functional/unconstrained design process.

I've been basing my career on acquiring skills/knowhow on being unique in my ability to synthesize different crafts together with a defined worldview (similar to a Meta Model in NLP).

Having a boss be able to do my job has often led to bike-shedding & lack of space to explore novel ideas. Since I have taken on clients that aren't able to build what I build, I have had room to perfect my craft & my process wilst learning how to communicate with others who do not share my knowledge.

It's been more satisfactory to find people that share my worldview but don't necessarily share my skillset. It's kindof like a tribe of ideology or spirit.

</comment><comment><USER26> By the same token, you're probably more likely to be happy at work if your boss knows nothing of your job, rather than a little.

</comment><comment><USER33> I think it's probably a bit like Uncanny Valley this one; it goes from no understanding at all, slowly to increasing understanding but just before you get to "boss can do my job" you have "boss knows enough to be dangerous and counter productive"...

</comment><comment><USER27> This is why, all other things being equal, it's better for an engineer to work for an engineering driven company (Facebook) rather than a sales driven one (Oracle).

The opposite is probably true for a salesperson.

</comment><comment><USER34> I thought that was one of the nice touches in Better Off Ted. It turns out that Ted probably _could_ fill in for any one of the team if he needed to, and the reason he didn't interfere more technically was just that (as a good manager) he was avoiding micromanaging.

<comment><USER35> Except the scientists, I don't think he could replicate their job. Otherwise, I can see it.

Such a great show. I rewatch it about once a year. Really wish it had at least one more season, though.

<comment><USER34> True, their actual expertise is left kind of hand-wavey. On the one hand they can genetically engineer exploding pumpkins, on the other hand they can't fix their lab door alarm keypad. Maybe they're more biochem-based, but I digress... I don't think we ever learn enough about their skills to know what they can and can't do.

</comment></comment></comment><comment><USER36> So does this mean 'professional managers' are the root of most unhappiness at work?

Certainly that's been my experience.

A company that doesn't hire MBAs is one I want to work for.

<comment><USER37> > _A company that doesn 't hire MBAs is one I want to work for._

Can you point to all the successful companies that make a conscious effort to not hire MBAs? Tough slog. Maybe these companies know something you don't?

But any company that eliminates candidates based simply off their degree is _no_ company I want to work for.

</comment></comment><comment><USER38> I'll throw in an alternative perspective:

I don't care so much about expertise, but about just raw intelligence.

Talk to a really smart person about your engineering problem, and even if they are not an engineer they will give you good advice.

Ditto for sales, marketing, etc.

I've always been happy when I can tell the person that is managing me is a few steps ahead of me, allows me to learn from them and actually makes my job easier.

To me, it's only a bonus if they can do my job better.

<comment><USER39> A really smart person would probably admit that they weren't the best person to deal with a problem outside of their own area of expertise.

</comment></comment><comment><USER40> Considering this is HN, I'll stick to the software/hardware field. While there is some truth to this, I disagree with the assertion that in order for a manager to be good, he "should be able to do your job". I fully agree that a manager for a technical team should have a technical background, and more specifically in the same broad field as the employee. Taking my own case, I am a scientific software developer, with lots of experience in Python, C etc. But as a manager of a team of software developers in different fields, I have no clue how to do web application development or devopsy type stuff, JavaScript, Kubernetes, Go and the like, which we use as well. However I hope I can still be a good manager because I understand the process of software development, I understand people and their needs (technical needs, motivational needs, professional development needs etc), and I can recognize good people when I see them, who can be leaders in their respective technical roles and mentors to others.

Or maybe I suck at my job and I don't know it!

</comment><comment><USER41> I agree, but this is very tricky in the software development industry where things change so quickly. I went from senior to leading a team of 5 people. As soon as I started to lead, my technical skills started to atrophy. I've now switched companies and dropped back down to a Senior position because I need to build my skills back up. How do you navigate this?

<comment><USER42> If you know fundamentals things do not change that quickly. True paradigm shifts (such as FP) that require ground up revisit of internalized knowledge happen at a fairly stately pace.

</comment></comment><comment><USER43> It seems many take the negative perspective of this finding - anecdotes about moments where management "doesn't get it" and tying that back to their lack of technical expertise.

What's missing from the discussion is the underlying foundation of the finding: in an average case, if your manager has technical expertise in your field, you're likely to learn a lot from them - that learning (and growth) is a major driver of job satisfaction. It creates closer relationships through shared understanding/experiences as well.

I'd also argue that simply being able to do the job and not developing the team in technical expertise yields similar job satisfaction as not having deep technical expertise at all.

</comment><comment><USER44> This is really interesting. I don't know if it reaches the level of detail necessary to understand how it influences lots of tech work.

E.g., "employees are far happier when they are led by people with deep expertise in the core activity of the business." Well, I have deep experience in IT and building websites, but I'm not a great programmer and I have had devs reporting to me who were concerned about that (so I've worked on supporting them in other ways).

</comment><comment><USER45> I guess I have to be a little bit contrarian. Of course we want our managers to have good technical fluency and to not have to have everything explained to them. It's necessary but insufficient. The skill set of a good manager is different from the skill set of a good individual contributor. I've worked with way too many engineering managers who were great engineers but needed a lot of coaching in order to manage well. At lots of tech companies, you get managers this way: Roger is "smarter than the average bear" and we want to reward smart people, and the only promotion we know is management, so congratulations: Roger is now a manager! Go manage people, Roger! Go understand the business implications of your team's work. Go communicate effectively with execs. Go write a project plan. It's not that Roger is stupid --far from it, its that he is now in a role that requires a totally different skill set.

</comment><comment><USER46> If you're talking about Flipkart, then it's not really a tech company as much as it is a retail company these days. So it is expected to have more MBAs in important positions, or in places where they can prioritize like an MBA.

No wonder Amazon is kicking their ass, and their last few product launches were nothing short of a disaster.

</comment><comment><USER47> I think that startups are particularly susceptible to this, everyone else is sharing stories of MBA's in charge of software dev, but it happens in other areas as well.

I do work in performance marketing (very data driven, analytics, testing, etc.) and the new Chief Marketing Officer was someone from a big ad agency. He had worked with some really big names and bragged constantly about how he had had an ad play in the SuperBowl, etc.

Which was all great, but none of those skills translated down to a budget 1000X less than what he was used to dealing with. He was unprepared to think about things like a website's "Devcenter" as having a purpose beyond a branding exercise.

He wasn't a bad person or actually incompetent, but he didn't have the deep expertise in startup marketing that it would take to really see them succeed.

</comment><comment><USER48> Oh my gosh, that's all I've wanted for years: a boss who knew at least as much as I did. Trying to persuade -- to be an agent of positive change or even just get anything done -- is all but impossible when you have to explain everything to someone before you can even begin a dialogue.

</comment><comment><USER49> Well, yeah.

It's not that they _can_ do the work (they shouldn't), it's that they can better relate to the people they're leading. They know, for example, that asking engineers to complete an arbitrary development task in two weeks without regard to scope, value or other work is completely unreasonable. They've been there. Managers without that experience (or even knowledge of that experience) can never relate, so when their managers ask for a thing and ask that it be done in two weeks (because we're doing "Agile"), they'll more than likely pass the buck down.

But as long as businesses are run by professional C-executives that don't even understand the business they're managing, this will be a problem.

</comment><comment><USER50> This not exactly surprising but yes, it's nice to be able to talk to your boss about the subtleties of my work. This is what makes work interesting. I hate when it's clear that all he is interested in are deadlines and budgets.

<comment><USER51> The only thing my manager is interested in, is if i solve their customers problems correctly. Most of them have little to no knowledge of computer systems. This usually applies to both the customer and the manager.

There are virtually no any other meaningful rewards than the paycheck.

It pays the bills, which is about the only reason i have this job anyway.

</comment></comment><comment><USER52> When leaders don't have expertise, we burn time educating them on fundamentals just to orient them on a decision that needs to be made.

A better title would be "businesses aren't truly agile until their leaders have deep expertise."

</comment><comment><USER53> I was just thinking about this today. I'm usually happier when I'm doing things that I know my boss nearly-fully understands and when I know that they're able to work on it themselves if needed.

</comment><comment><USER54> A manager should be just a facilitator.

Our department manager at a previous company that I've worked for had economic background, while we were a Perl dev department. Basically, his job depended on our productivity, while our job depended on his ability to win projects. We had to trust each other that we were doing our jobs properly.

While we made sure he could make the customers happy with our work, he screened us from interactions with pesky customers and got us all we needed so we can focus entirely on the projects.

I worked with him for 5 years and we've been totally happy.

</comment><comment><USER55> I actually think you get more respect if your boss (or his nephew) can't do your job.

At my last offfice job the programmers doing graphics/OpenGL stuff got way more respect than the web developers.

<comment><USER36> You would think so, but that's mostly not the case in practice.

A lot of people that don't know what you do will assume it's simple enough.

It's just not worth their time. That's why they never learned to do it.

For instance, I used to think sales and marketing were easy until I had to do it.

<comment><USER55> Yeah it probably depends on what the job is. If it's generally seen as skilled and prestigious then you'll get respect but if it's skilled but seems easy then you won't.

</comment></comment></comment><comment><USER56> Is it really about whether your boss can do your job or not, or whether your boss thinks your job is difficult or not?

</comment><comment><USER57> A leader has to lead, it does not matter if the leader knows or does not know how to do the team's job. Those MBAs were not leaders, as simple as that.

However, a company does not need a lot of MBAs to function, 1 or 2 should be enough, dedicated to improve the business in general. That unicorn was very sick.

</comment><comment><USER58> From the comments: "I'd bet a lot of workers who are unhappy for other reasons end up judging their supervisor to have low technical competence, making causality hard to determine."

Curious to see how competence is objectively measured in this case.

<comment><USER59> In my opinion, if the people who work with someone consider them incompetent, they likely are. I would even go so far to say that the opinion of coworkers might be the best predictor of someone's competence, better than any "objective" measure.

At least if the people you're asking are themselves competent in the skill they are judging (asking the dev team whether someone is good at sales might not be predictive).

</comment></comment><comment><USER60> So people like it better when the people in charge know what they're talking about. But people keep putting the ones that tell them what they want to hear in charge. And the two sets don't usually overlap much.

</comment><comment><USER61> I thought this has more or less been identified in the software world. That also probably was the reason to grow people organically for management than bringing from the outside, more so for lower management positions.

</comment><comment><USER62> Having worked with a boss who had never done our work, and one who had, I can assure everyone: There's a world of a difference!

</comment><comment><USER63> First it states that business knowledge is most important. Than it states that deep tech knowledge is most important.

Which is it?

<comment><USER8> I think there's 2 different questions: Which one makes people happier? Which one makes people more successful? I was at a company where a CEO with deep experience in our field effectively stepped aside as they hired a CEO with deep experience in business. A lot of people didn't like it, even though the old CEO stayed around and was very involved. But looking back, the new CEO helped the company do very well. As I stated in a different comment, you need a balance. You need technical leadership and business leadership, and sometimes they need to be different people working together on the same team.

</comment></comment><comment><USER64> "People don't quit bad jobs, they quit bad bosses"

Looking back, this is the actual reason why I left my previous jobs.

</comment><comment><USER65> This is core to human leadership and has been detailed as far back as ancient Greece.

</comment><comment><USER66> i think managers should be good at observing and linking cause to consequence. and use that experience to make good decisions. in the future we might be able to replace managers with AI.

</comment><comment><USER67> There's probably some CAP theorem of management

</comment><comment><USER68> So with Donald Trump as prez, I guess we're all gonna be very unhappy...

</comment><comment><USER69> especially when they are flying on a plane.

</comment><comment><USER70> this is a good article!

</comment><comment><USER71> Missing from this study is the fact that we tend to project confidence, intelligence and wisdom on those that we like.

A staffers perception of the competence of their boss may mostly be a function of how much they like their boss.

Also - staffers may have no ability to judge the competence of a boss.

Example: boss is highly technical, nice, gives you good feedback, stays 'out of your hair' \- and 'let's you do your job'.

Problem: you're all way behind schedule, and he's afraid to be unpopular by steering you and the team in the right direction. From a management perspective, he's failing, and causing the whole company to fail.

<comment><USER72> >"staffers may have no ability to judge the competence of a boss"

They often do. The biggest indicator is one you touched on... 'let's you do your job'. A good manager sets clear but fair expectations, and then works to shield you from roadblocks so you can get the job done as promptly as possible. In my experience it's easy to see this in action.

<comment><USER71> I agree that a worker can often reasonably evaluate their boss.

But unless you've been a director level person - with 'managers of people' working for you, it's easy to see how a 'well liked boss, who lets's their workers do their jobs' is often not the best manager.

Team staffers may think their job is to do ABC, but really it's XYZ. A dev may think it's his job to write 'quality software'. But the business objective may call for 'a quick iteration for demonstrative purposes'.

The staffer thinks he's 'doing his job', his boss lets him, but the business objectives are totally off.

<comment><USER72> >"But the business objective may call for 'a quick iteration for demonstrative purposes'."

Most developers I've worked with are smart enough to know quick hacks are fine in small doses, but if they become the norm you end up with a great deal of technical debt, which can ultimately cripple the productivity of a company.

From the perspective of managers who aren't familiar with technical debt, the 'quick win' is always going to seem like the best option. It's up to the development team to strike a balance between 'the quick way' and 'the right way', and whilst some managers may get frustrated on the occasions when 'the right way' wins out, in the mid to long term they benefit too, though they may not understand why.</comment></comment></comment></comment>


7-zip broken password random number generator - <AUTHOR> https://threadreaderapp.com/thread/1087848040583626753.html <comment><USER2> This is getting a lot of play today on Twitter but it's not all that consequential in the normal setting of a ZIP file.

The flaw they're pointing out is that 7z's AES encryptor has a 64-bit IV (half the block size) --- not itself a vulnerability _in block ciphers_ \--- and uses a predictable RNG to generate the IV (for simplicity, just call it "time and pid"). 7z uses AES in CBC mode.

In CBC, you want IVs to be unpredictable; if you can predict an IV _and_ you control some of the plaintext, you can in some cases make predictions about secret data that follows your controlled plaintext (this is an "adaptive chosen plaintext" attack).

This doesn't really come up in 7z's usage model; you're supposing someone integrates 7z with their own application, which, on-demand, encrypts attacker- controlled data with a secret suffix and puts it somewhere the same attacker can see the resulting ciphertext. Don't do this. In fact, if you're using ZIP archives in your application, don't use ZIP's AES at all; encrypt yourself with a modern mode. ZIP AES isn't meaningfully authenticated.

Having said all that: for the normal usage of an encrypted ZIP, this doesn't really matter at all.

It's a good finding, though! Cheers to anyone who takes the time to look at the underlying code for any popular cryptography. I hope they keep it up.

A more important PSA: unless you're absolutely sure otherwise, you should always assume any ZIP program you're using doesn't actually encrypt password- protected ZIPs. It's just as likely that it's using the old, broken PKWARE cipher, which is dispiritingly common due to backwards-compat concerns. It would be nice if there was a mainstream, built-in way to password-protect a file that you could share with someone else (or just stick on a thumb drive), but ZIP encryption isn't it.

Pentesters sometimes go out of their way to use 7z because it actually does encrypt with a real cipher. And, I guess for what we're doing with it, 7z is fine. But it's sad that it's the best common denominator we have.

<comment><USER3> > It would be nice if there was a mainstream, built-in way to password-protect > a file that you could share with someone else

This is going to sound really ghetto, but if you zip up some files, drag and drop the zip archive into a (modern) Word document, then pick File->Info->Protect Document->Encrypt With Password, you end up with a shareable file with decent encryption. IIRC, key generation is done with 500,000 rounds of SHA512 (which takes about 0.8 seconds on a contemporary CPU) and the encryption is 256-bit AES.

<comment><USER4> Or just use GnuPG

<comment><USER3> Yep, there are a lot of ways you can _do_ it. The point is, what are the chances my accountant is going to have GnuPG already installed on their laptop versus MS Word?

<comment><USER2> None, is the answer. There is a none percent chance. And if you're going to get someone to install something, it's not going to be GPG. Without loss of generality this applies as well to lawyers, IT managers, development leads, chief security officers, cryptographers, and some former PGP developers.

<comment><USER4> It's a simple install and even has a GUI app for right-click support.

</comment></comment></comment></comment></comment></comment><comment><USER5> >I thought about reporting this at 7zip Sourceforge forums but then I vomited again when I saw a long thread of largely incoherent exchanges on how 7z should be using Twofish instead of AES-256 because...

Just because a bunch of tinfoils are arguing over whatever doesn't mean you shouldn't still report it! Just be sure to word the report more generic than usual so the hordes don't find the issue and turn it into a battleground before a serious maintainer can get to it

<comment><USER6> Hi! I've reported it already on 7zip Sourceforge page. No response. In the forums I saw a thread someone had already started where the author said it's better to save 8bytes per archive than fix the IV ¯_(ツ)_/¯

</comment></comment><comment><USER7> It is not clear if anything is actually wrong here. It would be nice if someone who has spent more than "30 minutes" looking at this code could verify these claims and publish an article explaining the implications of these design choices.

The twitter thread that this is aggregated from has replies that seem to indicate that there is no practical exploit here.

[https://twitter.com/3lbios/status/1087848040583626753](https://twitter.com/3lbios/status/1087848040583626753)

<comment><USER8> On the other hand, using the system cryptographic RNG (/dev/urandom, CryptGenRandom) is probably less effort than it took to write this strange half-baked RNG.

<comment><USER9> Yup, if you want to see the state of the art in this, here it is from libsodium:

[https://github.com/jedisct1/libsodium/blob/master/src/libsod...](https://github.com/jedisct1/libsodium/blob/master/src/libsodium/randombytes/sysrandom/randombytes_sysrandom.c#L335)

They sum it up in their docs like this:

\- On Windows systems, the RtlGenRandom() function is used

\- On OpenBSD and Bitrig, the arc4random() function is used

\- On recent Linux kernels, the getrandom system call is used

\- On other Unices, the /dev/urandom device is used

<comment><USER10> It seems they use getrandom() on FreeBSD too:

        # if defined(__FreeBSD_version) && __FreeBSD_version >= 1200000
        #  include <sys/random.h>
        #  define HAVE_LINUX_COMPATIBLE_GETRANDOM

</comment></comment></comment></comment><comment><USER11> not a cryptographer: but from memory the main quality important in an IV for CBC is that it isn't reused for the same key (chosen plain-text attacks aside)

so that routine... while far from ideal would seem to mostly satisfy that property if you are making zip files of your own data to send to people (unless you use the same key rather a lot)

<comment><USER12> Correct, the guy on twitter doesn't seem to know what he is talking about.

Random IVs in CBC mode are an easy way to be fairly sure that you wont accidentally repeat a key+IV without much effort, but there is no security dependency on it being random nor on it being secret.

<comment><USER2> No, I think you might be the one who doesn't seem to know what they're talking about, unfortunately. I think you have CBC mode confused with CTR (and its derived modes). CBC IVs need to be unpredictable, CTR nonces need to never repeat. Neither IVs nor nonces need to be secret, but it's important not to be able to _predict_ an IV before it's used.

<comment><USER12> What? Even for an encrypted 7zip archive? How does predicting a past event make sense here? Maybe you know an attack I'm not aware of. This isn't an interactive protocol.

Edit: Sounds like you addressed this in your other comment. So again, there is no attack here and OP doesn't know what he is talking about...right?

<comment><USER2> No. You wrote "there is no security dependency on it [a CBC IV] being random". That is plainly false --- in fact, it's _Wikipedia false_ \--- you can literally just go to Wikipedia and search for the word "unpredictable" to see why. People do indeed use random CTR nonces as a way to ensure they never reuse them. But that's not why they randomize CBC IVs. There's a Cryptopals challenge about this if you'd like to play with the concept more.

('garypoc managed to relate this downthread completely in just one sentence, because they're better at this than I am, so maybe track that comment down for more information).

It is actually not a big deal that you're wrong --- people get the properties CBC IVs (which can't be monotonic counters) and CTR nonces (which can) confused all the time. It's why I get hives when libraries refer to the CTR nonce as an "IV".

But you didn't just get this wrong. You said the person who reported the bug "didn't know what they were talking about". Again, it was you that didn't know what they were talking about. Consider apologizing.

<comment><USER12> I feel like you're telling me (and others) I'm wrong in this comment but agreeing with me in others.

As far as I can tell, the reporter made rather public denigrating statements against the authors for a total non-issue that has no attack. As in, doesn't know what he is talking about. So I'm not sure why you want me to apologize instead of him.

You seem to be taking issue with how I worded my comment in that I made an unqualified statement about CBC IVs, which is true in applications like this, but not true broadly. Is that accurate?

The only security risk of relevance here is that if a password is reused, and any blocks are the same in multiple files, this will be evident. This is defeated so long as an IV is not reused, which can't happen (I'm comfortable rounding "unless a user makes a 7zip archive with the same password at the exact same time on multiple machines and manages to get the same PID" down to "can't", to be clear) even though the IV is reasonably predictable.

In other applications, like TLS, or IPSEC, yes, the OP would have had a legit bug finding.

There is no bug here, just a bad crypto code smell. It's like pointing to a strcpy and saying "this code has buffer overflows!" when all call sites have bounds checking or fixed size inputs.

If you think I'm still wrong about _this_ , I'm inclined to believe you, but I think you're only saying predictable IVs are a problem in other, unrelated applications, which I am not disagreeing with.

It's a completely dick move even if he were correct (but he isn't). That's not how you report issues. The author of this (free!) software obviously isn't a cryptographer, but he thanklessly wrote an otherwise good piece of software that millions benefit from.

If you're going to publicly shit on his code to get points from security twitter, at least nake sure you have a real finding. But better yet, don't be that guy.

Appsec people need to learn that they aren't better than developers because they found the one narrow domain that they know more about than the author. It's extremely likely that the author could teach you way more than you can teach them, so if you have a leg up somewhere, be humble about it.

Edited to add: Igor, the author, appears to be having a civil and receptive dialog with the reporter on the 7z mailing list after the fact, discussing alternatives and tradeoffs and trying to validate a potential attack. So, this isn't even a case where someone gave a well-meaning researcher the middle finger and motivated them to go public. OP just started shitting on the guy for public praise right out of the gate (even saying he wanted to vomit over how bad this is), completely unnecessarily.

I encourage him to apologize to Igor, who sounds like he is going to fix it regardless.

<comment><USER2> I'm sorry. You remain wrong. Predictable IVs in CBC mode are a vulnerability. A low-severity vulnerability; so are most CSRFs. We don't generally write dozens of paragraphs about how irresponsible and clueless someone is when they report a sev:lo CSRF. In fact, what a lot of companies do for that is pay a bounty. (I know, not the fact pattern here).

You're also missing pretty much the whole conversation about _why_ predictable IVs in ZIP's CBC is a vulnerability. Yes, as lots of people have pointed out, in the 95% use case of 7z as a simple file format, the IV doesn't matter. You can't use the flaw to decrypt someone else's 7z file.

But 7z is a file format. Applications build on top of those. Plenty of applications generate zip files. If one of them, for whatever reason, chose to generate 7z zip files with 7z's code, this sev:lo vulnerability stops being sev:lo. A predictable IV plus known prefixes turns CBC mode into ECB mode. If this person had reported 7z using ECB mode, nobody would be question the competence of the report. But they reported a more sophisticated flaw. It flies over people's heads. They claim it's bogus. You can see my issue here.

The world does not need more encouragement to write bad crypto code. We're up to our ears in it. But the world definitely needs more people to do the harder job of looking through the bad crypto and mapping out the pitfalls. Thats's what this person did. I'm fine if you don't want to thank him, I'm even fine if you just want to debate whether they reported it the best possible way (I'll disagree but we disagree on lots of things).

What I will not let anyone get away with is claiming that the finding itself is incompetent because predictable IVs are not a bug. That's not just wrong, it's _theatrically_ wrong. I don't care if you apologize about slagging this person for reporting something. But I think you should apologize for claiming, falsely, that they were incompetent. I'm kind of a little surprised you haven't already!

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> The attack here is:

1) You encrypt two pieces of data within the same second in the same process (so probably using the library?)

2) or if you're using the command-line, the attack is you encrypt two pieces of data within the same second, and somehow wrap-around your pid within the second to get the same pid again.

That may be enough, or not enough -- but for those that claim that's not enough, one needs to recognize the cognitive dissonance with reusing the same password

A monotonically increasing integer as IV is perfectly fine, and this dude is a bit out of his depth thinking IVs need to be random.

<comment><USER2> Monotonically increasing CBC IVs are in fact _not_ fine; you have them confused with CTR nonces, which need single-use rather than unpredictability. See Bard for more details of the best-known attack on predictable IVs. If you're going to try to take someone down a peg, be right.

<comment><USER13> They are if you don't have an oracle afaik

<comment><USER2> I don't follow your response. If you're wondering whether it's OK to have predictable IVs, check:

* Rogaway's IPSEC chained CBC IV attack

* Bard's HTTPS predictable CBC IV attack

* Dai's attack on SSH

* Thai Duong and Juliano Rizzo's BEAST

... all of which are based on predictable IVs (usually: the last block of the previous message, which is taken as a synthetic IV in 1990s-era protocols). In short: no, CBC IVs must be unpredictable.

<comment><USER13> If you reuse an IV on 2 files at rest, information that both files have the same prefix leaks. If you use a counter IV, or a random IV, you got nothing -- that's the only point I'm making ivs don't have to be random in the confines of the right context

<comment><USER14> You should read about the attacks tptacek mentioned. If IVs are predictable, it's the same impact as if you reuse the same IV, you just have to compute (m' xor IV' xor IV) instead of just m' if IV' = IV Then in both cases you check if c' = c

</comment></comment></comment></comment></comment></comment><comment><USER15> It seems every few months we hear a story about something which is supposed to be secure not actually being secure or secure as expected.

Someone should make a bug bounty for all the major encryption programs, 7zp, wnzip, etc. Allocate 5 or so encrypted bitcoin private keys (with brute-force resistant passwords) for each program and see how long it lasts, with he public keys made public so people verify the status. if zip's bounty has lasted years, then it's reasonable to assume it's safe.

<comment><USER16> Cryptography doesn't quite work that way. Just because recovering cleartext is not feasible in some specific case does not make a cryptosystem secure in general.

<comment><USER17> In fact, that's basically what Telegram did with their impossible "crypto contests": provide a specific attack scenario, promise lots of money to break that (impossible) scenario, and then claim that it is secure against all possible attacks.

<comment><USER18> That seems interesting. Do you have any links explaining the situation?

<comment><USER19> [https://hackerfall.com/story/a-crypto-challenge-for-the- tele...](https://hackerfall.com/story/a-crypto-challenge-for-the-telegram- developers-1)

</comment></comment></comment></comment></comment><comment><USER20> > Open-source "many eyes have looked at it for years so it must be secure" > crypto code.

Nobody claims this. Open source code is just easier to audit than non-open code.

<comment><USER21> Well, in the past it was one of the main arguments in favor of open source. There is even a related article on the WP: [https://en.wikipedia.org/wiki/Linus%27s_Law](https://en.wikipedia.org/wiki/Linus%27s_Law) (it has nothing to do with Linus though)

<comment><USER22> No, it's not and has never been; you have it backwards. _Closed-source_ code is guaranteed[0] to be _in_ secure, open source code may or may not be secure. New open source code is almost certainly insecure for much the same reasons closed code is insecure, but trends toward security over time as more people inspect it and fix security holes.

0: In the same sense that the hash of a arbitrary string is guaranteed to not be all-bits-zero or that a fair coin is guaranteed not to come up heads 100 times in a row.

<comment><USER21> I don't claim that the "Linus's law" is true, I only point out it was used by some open source evangelists. It took decades and a few high-profile bugs to show it's not that simple.

As to the core of your argument, I think your position is too extreme. It depends very much if the software was developed using formal methods and a specialized language. Safety-critical systems are rarely open source, and yet a lot of effort and resources is put to make them secure. That other project choose time-to-market rather than security is their choice, not something inherent to open or closed-source software.

</comment></comment></comment></comment><comment><USER23> The way this is written reminds me why I try to never interact with security people in any social or professional situation, ever.

When is the insufferably arrogant techno mage trope going to die?

<comment><USER16> > When is the insufferably arrogant techno mage trope going to die?

Probably at the same time as insufferably bad software engineering dies

</comment></comment><comment><USER24> Addressing the debate this thread seems to have spawned, a practical attack on predictable CBC IVs is described here:

[https://stackoverflow.com/questions/3008139/why-is-using- a-n...](https://stackoverflow.com/questions/3008139/why-is-using-a-non-random- iv-with-cbc-mode-a-vulnerability)

Therefore in a strict sense, this is "broken". However, the "I zipped a file and it to someone" scenario is not one in which the above attack is practical.

</comment><comment><USER15> knowing the IV does not allow one to crack the message [https://stackoverflow.com/questions/3225640/how-to- decrypt-a...](https://stackoverflow.com/questions/3225640/how-to-decrypt-aes- cbc-with-known-iv)

[https://stackoverflow.com/questions/3225640/how-to- decrypt-a...](https://stackoverflow.com/questions/3225640/how-to-decrypt-aes- cbc-with-known-iv)

the odds of the 7zip generator choosing an IV that corresponds to a re-USED IV for the same first block for a different message are very small and one would need to have access to this message

<comment><USER2> Once again, no, CBC IVs need to be unpredictable.</comment></comment>


Fast Mobile UIs: You're an Edge Case  - <AUTHOR> http://horia.me/fast-ui

<comment><USER2> Before anyone else reads all the way through, this seems to actually be a (high level) article about just iPhone Mobile UIs, not general Mobile.

I deduce this (possibly incorrectly) because the only mention of Android is on the second to last slide: "Android is broken, though".

<comment><AUTHOR> Pretty much all I say applies to iOS and Android.

It's just that Android has a lot of other hidden "gems"

</comment></comment><comment><AUTHOR> I thought I'd share my learnings that I presented at Berlin.js yesterday with everybody</comment>


Burning Man has been ruined 27 out of 30 times - <AUTHOR> https://m.sfgate.com/burningman/article/burning-man-terbo-ted-first-dj-electronic-playa-13188760.php <comment><USER2> I fail to see how Burning Man's been "ruined" based on one guy's impression who hasn't attended it in 20 years. Sure, it's changed a lot since it's nascent beginnings, but thousands of people still go and have fun. It is what you make of it.

If this is about reminiscing on a small group going out to the desert to have an "awakening" experience, then that could still be accomplished without Burning Man.</comment>


Show HN: Vue Flags, a component with 230 countries (and a backup flag) - <AUTHOR> https://www.growthbunker.dev/vueflags/ <comment><USER2> Nice!

I added an issue because the flags of Switzerland and Vatican should be a square.</comment>


You Have to Break It. - <AUTHOR> http://blog.paradoxica.net/post/1214142321/you-have-to-break-it

<comment><USER2> The feat is impressive, but there is such a self-deprecating sense to this article that makes me sick.

Let me see if I get this straight: "While on vacation, I spent a significant amount of my time with a node in our production cluster attempting to understand this problem"

"Eventually, I discovered a race condition that allowed an SO_WRITE interest to be set on a socket but never cleared."

"Upon returning to the office and offering up one heck of a mea culpa"

\---

Took his own time to hunt down an extremely difficult to find bug and then fixed it. Yea, mea culpa all around. This is the kind of ridiculous attitude that has people working themselves to death.

I agree with the rest of the article, I think you should never be afraid to change and refactor your own code. This particular part of the article struck a nerve for me.

<comment><USER3> I work with the guy and know all about the project he refers to.

Hopefully I can clarify the situation. The server application he worked on was fairly new territory for him, but moreso to us. He had experience in the language (Java) that we didn't have so it was really _his_ project. The application has had numerous subtle bugs that never caused huge problems, just weird behaviors here and there. As time pressed on, it seemed for a while that the bugs would never cease. Keep in mind that this is a server heavy with NIO internals and several worker threads, so maintaining state is a very delicate process. Race conditions that seldom occur are perhaps the worst kind of bug to tackle.

Additionally, he's the new guy. Being the new guy is hard when tasked with such an important task. Especially when the task itself seems to haunt you every day for several weeks. We encouraged him and never once blamed him for anything (as if we would have known better?). He simply took his responsibility personally. Perhaps too personally.

This sort of humanity in software is uncommon and humbling. He's a good kid who isn't out to prove anything to anyone, just to be the best programmer (person?) he can be. I think he can be forgiven for being too self- deprecating.

<comment><USER2> I didn't mean to slag on the author, he does seem like a stand up guy with a good technical head on his shoulders. I think it bothered me because I've been that new guy that's working harder than he should and ended up burning out and setting myself back.

I can forgive him for being self-deprecating, but he should be careful to strive for a good work-life balance or all those smarts and ambitions will flame out and burn out and he will be left trying to pick himself back up.

Of course from one blog post it's hard to know what his work-life balance is, so I could just be talking out of left field. I think it resonated with me because I saw a bit of myself in what he was saying and I know that taken too far that behavior that seems like a great idea can lead you to a place you don't want to be and that I'm finally starting to get out of.

</comment></comment></comment><comment><USER4> If you are afraid that you don't know what your code is doing, that's reason enough right there to spent some time working on it. You should never get into that situation.

<comment><USER5> In an ideal world this is true. But in reality we don't always have control over the codebase from birth until deprecation. Often, you find yourself a newcomer to code, and being able to reason your way though it can be time consuming, and scary.

I think this article's approach is a good one. Take precautions, use things like continuous builds, static analysis tools to boost your confidence, but DO make the necessary changes. Better sooner than later.

</comment></comment><comment><USER6> Did this yesterday ... then I realized why more people (including myself) just don't bother.

I started on what should have taken 1 hour of work to do at 6pm... 7 hours later, I was almost done ... It threw off my entire schedule and destroyed my plans for today (I'm usually up at 6am, got up today at 11).

So yeah ... fear of breaking the software isn't unfounded.

</comment><comment><USER7> The general principle in this article is a good one, but the specific scenario he described does not have to happen.

Be granular in how you check in your changes, and backing things out (especially loosely coupled code like debug logging and senseless exception handling) carries low to no risk.

I became good at this when emacs vc-mode made it easy.

</comment><comment><USER8> This happens to me all the time when I am venturing into new territory with a language or framework I have little to no experience with and only the docs to guide me.

I can be 100% certain I found out what caused my bug, or how my code should really work. But I am iffy about taking out the superstitious and useless changes I made while I should have probably walked away for a bit... Changes that didn't help but didn't break anything either.

</comment><comment><USER9> _I'd suggest that this cruft is among the most insidious forms of technical debt in that it's held in place by a lack of understanding and fear to modify the program, rooted in superstition rather than reason._

"insidious", "technical debt", "lack of understanding", "fear to modify": agreed!

"rooted in superstition rather than reason": disagree...

My primary reason for not breaking it has always been lack of time. There were many times I encountered something I would have loved to have rewritten, but it would have thrown the rest of my schedule off. If I have 27 open tickets, 3 bosses, and 9 customers breathing down my neck, the last thing I need is some clusterfuck I broke and can't put back together fast enough. That's a mistake you only make once.</comment>


Probably hardest game you ever play - <AUTHOR> http://www.zachtronicsindustries.com/alchemy/alchemy.htm

<comment><USER2> I have m,4,12,0,2,cluodr;m,4,5,0,2,rwwclo; for the first level. Anyone else?

Edit: shrunk it down to m,4,12,0,2,clor;m,4,5,0,2,ujrclo;

</comment><comment><USER3> space chem is way harder (and easier to understand at the beginning), imo

</comment><comment><USER4> TL;DR</comment>


Chicago Schools to Students:Submit to Our Choices for Your Futures or No Diploma - <AUTHOR> http://reason.com/blog/2017/07/05/chicago-schools-to-students-submit-to-ou <comment><USER2>
      > The official description of this new demand notes that the
      > mayor and district are attempting to raise $1 million to
      > create new positions for "college and career coaches."
      > This a jobs program for them. Installing this system is
      > meant to create leverage to ratchet up administrative
      > funding.

The fiscal budget for the Chicago Public School district is over $5 billion.[1] A request for $1 million is pretty thin evidence for a supposed plan to ratchet up funding.

      > It's not just about blackmailing students and parents into
      > declaring they'll conform to a set of roles in order to
      > get out from under the state's thumb.

Huh? Once you're 18 you're free to drop out, regardless.

      > Currently Chicago requires students to earn one credit in
      > biology and two credits in other lab sciences. They're
      > changing the system so that in order to graduate, students
      > must pass biology, chemistry, and physics classes. No more
      > choices.

The horror! Of course, I'm sure there are remedial biology, chemistry, and physics classes. Perhaps the requirement will have the unfortunate consequence of lowering the bar for passing those classes, or maybe even of the non- remedial classes. But at least on its face it looks like an attempt to raise the bar, and I can't see how that's an obviously bad thing.

Imagine if a high school degree once again was evidence of mastery of some minimal skillset and knowledge. Won't change much for the kids who drop out or who graduate by aging out, but it might do wonders for those who never attain a higher degree. Now imagine pummeling any administration which does anything but make a high school diploma guaranteed merely for showing up.

The mind boggles. It's almost as if the Reason article was written by a surely high school libertarian.

[1] Now that's downright shocking, frankly. But maybe I'm getting old. Throwing out (and reacting to) big numbers as prima facie evidence for poor fiscal responsibility is a pasttime of old folk who don't put much thought into the ravages of inflation, especially of education and health care.</comment>


Maybe this help porting TextMate to Linux - <AUTHOR> https://github.com/dmenounos/objective-gtk

<comment><USER2> Great! When are you going to start working on it?

Without the individuals willing to put in the work then directions like this are pointless, however well intentioned. Since no-one attached to the development of Textmate has expressed any interest in porting over to Linux, or any other platform, I find it unlikely that the situation will change in the near future.

</comment><comment><USER3> It would probably be easier to write a new editor (in a different language) from scratch with a compatibility layer for TextMate bundles.

<comment><USER4> Check Sublime Text 2, it runs on Linux, Mac and Windows ... It also works with TextMate bundles.

<comment><AUTHOR> Redcar is compatible with TextMate bundles

</comment></comment></comment><comment><USER5> Or bring the GNUstep framework on par with Cocoa. Would be many years of work in either case.

</comment><comment><USER6> I don't see the need to port TextMate to Linux. We already have Vim/Emac/Gedit.

<comment><USER5> And Sublime Text 2.

<comment><USER7> Exactly. For those who dont't like the learning curves of these editors, there are easy to learn and well designed editors like Sublime Text, Bluefish, Geany.</comment></comment></comment>


Marketing a "Justice as a Service" company - <AUTHOR>

My startup, CellBreaker, empowers consumers by making sure they're not shouldering any weight their not obligated to shoulder. Our first approach is by getting people out of their cellphone contracts with no early termination fees.
With all the recent uproar about cellphone providers throttling data and the unsatisfactory customer service, I feel there is a huge opportunity to raise aware not only for this product, but also this social service of giving people what they're due.
What would be the best way to raise awareness for my service? <comment><USER2> Your marketing strategy should address (1) the pain points your service is designed to address, and (2) how your solution is the most desirable solution to the identified pain points.

You identify the pain as people "shouldering any weight their (sic) not obligated to shoulder." Specifically, you point to early termination fees for cell contracts.

You're on the right track, but you aren't there yet. A person becomes obligated to pay an early termination fee if they contractually agree to pay such a fee. The problem you identify is illusory, since anyone who agrees to the provisions of their cell phone contract, ARE OBLIGATED to such. The problem is that people generally lack the interest and the education to READ the terms and conditions of the contract.

Unless you have a solution that will invalidate early termination fee provisions, your approach appears to be futile. Any other solution will require cooperation from cell companies. Given your choice of "cellbreaker" for a name, you aren't thiking about gaining their cooperation. You're thinking as an antagonist.

I've spent the past couple of years clarifying the issues that you are beginning to identify and if you have a technical background (i.e. development) I'd be interested in talk with you.

<comment><AUTHOR> Firstly, thank you for your response.

We have a solution that invalidates the early termination fee provisions. We've already considered and addressed the points you make. We are an antagonist to the cell providers. We do not require their cooperation.

That being said, you are correct in that we target the pain point of early termination fees for cell contracts, and are looking for the best way to market that.</comment></comment>


How much space do I have in Local Storage? - <AUTHOR> https://github.com/bolshchikov/localstorage-space

<comment><USER2> Did you do research how much local storage (per domain or total) the various browsers offer these days? I remember some browsers never enforced a limit.</comment>


Ask HN: What is the next housing bubble? - <AUTHOR> Are there any leading indicators that point to a recession in 2018? <comment><USER2> Securities-based loans aka shadow margin.

It seems that nobody tracks them, so it's possible that there is something brewing. If there is strong stock market correction, and loans must be paid back people get into trouble.

<comment><AUTHOR> I wonder how common this kind of loan is? Article from Kiplinger about security-based loans: [https://www.kiplinger.com/article/investing/T035-C000-S004-s...](https://www.kiplinger.com/article/investing/T035-C000-S004-securities- based-loans-are-risky-business.html)

</comment></comment><comment><USER3> Don't forget to look North. The housing bubble in Canada never popped in the first place.

<comment><USER4> Same with Australia.

<comment><USER5> Esp. Sydney although that's now deflating a bit.

</comment></comment></comment><comment><USER6> Housing could already be in a bubble in some places. It's far beyond what's reasonable vs. median income and is reportedly being propped up by a huge amount of foreign cash making cash purchases.

A lot of commentators I've read say we're not in a bubble because these are cash purchases, but this assumes there's an infinite supply of this cash. If/when the cash influx stops the present prices may not be sustainable. I doubt it would be as hard a landing as 2008 but you could definitely see a correction.

</comment><comment><USER7> There is a report by UBS for what it is worth: [https://www.ubs.com/global/en/wealth-management/chief- invest...](https://www.ubs.com/global/en/wealth-management/chief-investment- office/features/global-real-estate-bubble-index-2017.html)

US seems to be """safe""" as per the report.

</comment><comment><USER8> It might be housing. I'm seeing those "real estate investor seeks trainee" hand-made signs at intersections again. People are placing offers on houses sight-unseen because houses are moving so fast. The only thing missing is extremely low percentage down payments; does anyone know if 3% down is back?

</comment><comment><USER9> No bubble, but higher interest rates will drag the prices down. People won't be able to afford the same house at 5-8% interest rate. Experts predict a hike to at least 5% by the end of this year. So, more likely a price drop not a bubble.

</comment><comment><USER10> The US will get there again. Other countries are clamping down on lending to contain house prices while the US is opening up lending once again. And you can trust they'll do it recklessly again too.

</comment><comment><USER11> Car companies are offering ridiculous deals, and giving out loans to people that don't have good credit. If I had to guess, they didn't learn their lesson and will be in deep trouble again.

</comment><comment><USER12> Bitcoin and blockchain

</comment><comment><USER13> Same one as before.</comment>


Italy Ends Property Tax Breaks For Churchs - <AUTHOR> http://www.ft.com/cms/s/0/1d61448e-58be-11e1-b118-00144feabdc0.html#axzz1mZJpp3IE <comment><USER2> "FT.com articles are only available to registered users and subscribers."

<comment><USER3> try this:

[http://www.reuters.com/article/2012/02/16/us-italy-church- ta...](http://www.reuters.com/article/2012/02/16/us-italy-church-taxes- idUSTRE81F1J320120216)</comment></comment>


A Deeper Look Into Google's 800-Pound Panda Problem - <AUTHOR> http://neutralground.blogg.se/2010/january/draft-jan-25-2010.html

<comment><AUTHOR> Disclosure:

I am the author of this blog post. I previously worked in IT before coming to China almost a year ago. Currently, I teach English and enjoy reading, researching, and writing with the free time this new profession affords me.

I've lurked HN for a while, but haven't given back in any way until today. My friend enjoyed this piece and encouraged me to share it to a wider audience, so here you are.

<comment><USER2> Wow, where are you at?

It sounds like you are hearing a lot of pro-Google sentiment, but here in Ningbo, all I get from people is anger. Curiously enough, the anger is not about Google or the censors, but it seems more about the West 'trying to push China around...' or 'trying to keep China down...'

So much so that I've learned to avoid even remotely political conversations with people here.

Maybe I should start hanging out with more English speakers, but then I wouldn't be able to learn as much of the language.

Sigh...

<comment><USER3> Same old story: a corrupt government invokes patriotic feelings to counter attacks against itself from abroad (or inside, associate the opposition with external forces and call them traitors). I'm so sick of this.

<comment><USER4> Yeah but to be honest it's H.Clinton's fault for providing them with ammunition. What else did she think she was going to achieve by adding her weight to the argument? It was completely unnecessary and IMO a diplomacy fail.

It's the same with Ahmadinejad, most Iranians don't like him but they'll be "for" him if the Western world is being seen to deny them nuclear power.

</comment></comment></comment></comment><comment><USER5> I had an interesting talk with my coworker (fellow engineer) from China. He had just been back there for a month, so I asked him what people thought about the whole Google thing.

At first he explained that he thought most people wouldn't care because they all use Baidu. But when I explained that Google was going to turn off censorship and filtering or leave, he seemed to get a little flustered. I think he couldn't imagine either possibility. He said he thought they would stay, but with less filtering than before.

I felt like the subject was getting touchy so we left it there. But I do find it plausible that Google's move will shock the average Internet user in China, especially if it shocks my relatively well-informed friend.

</comment><comment><USER6> I don't agree with your assertion that China is this manipulative siren and the googles and microsofts of this world are naive innocent suitors.

For all the talk of corruption, censorship, and privacy, the Chinese government is surprisingly transparent at the macro level.

Gates and co knew going into China that the government will not budge regarding issues that even remotely threaten their political legitimacy. This point extends itself naturaully to the economic arena as well, as it forms the foundation of CCP's legitimacy for the past few decades.

So all the IP frou-frouing in your post seems off-the-mark to me, not to mention that blatant copying can be found in really any developing economy. Before the rise of China, recall that the centers of piracy were in HK, Taiwan, and Korea. Innovation is derivative and when you can't you copy until you can.

This is a natural phenomenon of economic growth.

Anyways thanks for trying to be at least more nuanced in your analysis, instead of casting blame only on one side.

</comment><comment><USER7> Fresh perspective from inside the GFW. The picture painted reminds me of V for Vendetta. Censors monitoring everything. A government stretched thin to protect its hold over the people. How could outsiders help from home?

</comment><comment><USER8> Google leaving China due to "government stuff" is a simple way for them to ease out of a market where they are losing to Baidu.

according to: [http://brainstormtech.blogs.fortune.cnn.com/2009/12/28/googl...](http://brainstormtech.blogs.fortune.cnn.com/2009/12/28/google- v-baidu-which-company-will-win-china/)

 _Baidu's market share for search in China was about 77% in the third quarter, up from 75.6% in the second quarter. Google (GOOG), she says, lost share in China, dropping to 17% in the third quarter, from about 19% in the second quarter._

<comment><USER9> I always hate seeing this argument. Using back of the napkin calculations, that means Google is getting out of China because it's down to 50 million users there. I guess we should expect them to be leaving Canada soon, since they only have about 19 million users here. Not to mention that the number of internet users in China is growing by about 80 million people per year at the moment according to the world bank, of which Google was presumably getting their 17% as well.

<comment><USER10> Anybody can point to figures/estimations showing how much Google makes in China and in North America per capita ? I strongly believe that doing business in China is really not worth the associated trouble in Google's case (and in many others too).

</comment></comment></comment><comment><USER11> Given the historical Western narratives on China (and all other Others), I think we can do a lot better than talking about China as a highly sexualized female seductress with ulterior motives.

</comment><comment><USER12> In the meantime, google.cn has been running uncensored for several weeks now...

<comment><USER13> Has it? The only evidence I've seen has been that image search screenshot for [tianamen square] with all the tanks. But that query was never censored in the first place, because it's a misspelling that only Westerners make. [tiananmen square] or the equivalent Chinese query is mostly pictures of the square itself.

</comment></comment><comment><USER14> Very good!

</comment><comment><USER15> In the end it's not the Chinese people who suffer at the hands of their government, but the West.

<comment><USER16> This comment to me indicates that while the Chinese people do obviously suffer, maybe like the poster above they have become so desensitized over the years, inside the great wall/firewall, that they don't even realize what they are losing/missing or have already lost.

<comment><USER10> The less you know the well you sleep. Majority of people disregard the natinality prefer to sleep and eat well rather than to bother about missed possibilities and opportunities.</comment></comment></comment>


Advice needed: Intern at exploding startup vs. return to school - <AUTHOR>

I work for a tiny Silicon Valley startup that is likely about to make it big.  I won't say why, but I'm privy to almost all communications, and the big players we've been talking to lately and the interest they've communicated tells me a lot, and I think there is a strong likelyhood this company will likely have a few million at least within a year, with further potential beyond that.  I've been there for 5 months as an intern breaking even financially at less than $9 dollars an hour.  They have trusted me with so many things, and I've done so many little things that are hard to put a value on, from product design to dealing directly with customers, building and manning a booth at trade shows, to marketing and web design, to literally modifying the early products, packaging and shipping them.  I got an immense spike in traffic awhile back (10,000pageview/day - which earned the first online sale) and I have personally interacted with so many different potential buyers.  I pleased our first and only refundee to reconsider, and they will likely be buying more in the future.
They all really like me.  I've gone beyond what they've expected of me.  The CEO has already told me he wants me to remain their full-time since I know the product better than anyone else.  I am literally his right-hand man (okay, slave :P) fixing every tiny problem he can't do himself (website, his phone, you name it).  My boss has already told me if it made it "Apple big... or maybe not THAT big..." that I would be completely taken-care of.  I understand skepticism to such a statement, and with anyone else I wouldn't think much of it, but he built a successful business of 20 years before this and is one of the most stand-up guy's I've ever known.   I know and trust his character very well; I have faith in almost nothing, and I have faith in him.
My dilemma is I'm supposed to return to school this upcoming spring quarter far away in a different city.  I'm at a very critical point, and I've already pushed finishing school back a few years, so I'm in my mid-20s, and the heat from my family (and myself) to finish school is strong.
I would very much like to remain working with this company considering it's potential upside, but I'm not sure how to ask whether staying around would be worth my while.  This won't get "Apple-big," but it is definitely a potentially amazing opportunity that could rocket me places a degree would never really offer.  Worst case scenario, I return to school a few months later.
While the experience and potential foot in the ground floor of a new technology is great and all, my shit wage isn't going to do it for me.
I would really like to get somewhere around $15/hour for the time being, but I would't consider staying around if the possible BIG upside weren't a big factor.  Really, how do I ask for more 'reassurance' for putting my education (and life) on hold for a bit to help make this great?  My father has advised trying to get profit-sharing / stock, but I don't really know how to ask for that.
Any advice would be awesome. <comment><USER2> The only person who knows enough info to make this decision is you; as a university student myself, I understand your dilemma.

I will say that the fact that you're only making $9/hour at a company that's supposedly about to go big is a huge red flag. If you've made as many contributions as you say you have, then there's something very wrong. Either you have failed to negotiate fair compensation for yourself, or the company is banking that you will continue to break your back for the chance to go big.

The last time I made $9/hour was hauling bags of salt at a retail warehouse selling pools. If I were you, I'd go back to school. $9/hour is not only unsustainable, but a serious red flag regarding how the company views their relationship with you.

<comment><AUTHOR> You bring up good points, but allow me to clarify:

I originally came aboard as an intern for such mentioned 20-year-old company. The owner of that, my boss, is also an owner of this startup, and so all of our efforts have gone towards the startup. My wage was negotiated months ago long before anyone had an idea this would be where we're at right now, and I'm confident once there is some revenue coming in I will get more pay. One equity-holding position of the startup actually started out as an intern like me a few years ago.

<comment><USER3> The point still stands. Why is a 20-year-old engineering company paying you $9/hour? The coffee shop in town here pays new counter staff $14/hour. Generally speaking, one does not pay someone who is as important to the business as you claim to be so little, intern or not. Realistically, I see two possibilities:

a) You're wildly over-estimating your value to the company.

b) Your boss is exploiting you.

Think carefully about which it is. Be honest with yourself. If (a) go get the coffee like a good intern, then go back to school. If (b) ask for a more reasonable wage and/or equity (if that's your preference), in the form of a signed contract. "We'll take care of you" is worthless, no matter how trustworthy the person saying it. If they actually mean it, there will be no problem with getting a deal signed on paper.

<comment><AUTHOR> I definitely am not absolutely critical to the success of this company, and I realize this, but losing me would still hurt them. It's really the experience and knowledge I have with them that's valuable to them, and that would be hard to reproduce with someone else quickly, especially at such a critical time like right now.

Am I stepping up my game and responsibilities as much as possible? Absolutely.

<comment><USER3> Ok, then you need to ask for a raise. $9/hour is a wage you pay someone who is completely replaceable; and even then only if you're a greedy bastard who doesn't care about your employees.

A raise could come in the form of a much higher wage, or a combination of a higher wage and equity, if you really believe in the company. You should be getting a significantly higher wage either way, though.

</comment></comment></comment></comment></comment><comment><USER4> You can always go back to school. Taking some time out on a startup where you're trusted and valued is rarely a bad move.

You should play the school card as a negotiating point, though. I'm usually very upfront in negotiations and would simply say "Look, I've got a lot of pressure to finish school. I totally believe in this company and am willing to put school off in order to join full-time, but you need to come up with a compensation package that makes that worth my while. My priority is on long- term compensation so I'm fine with a super-low hourly wage of $15 per hour in exchange for equity. What can you offer me?"

<comment><USER5> I guess by now the founder would have read this thread , doesn't he read HN ?

<comment><AUTHOR> Heh, no.

</comment></comment></comment><comment><USER6> I was in this same situation. I worked for Lift (<http://lift.do>), partners with the founders of Twitter/Blogger - the Obvious Corporation.

I couldn't sleep well for weeks, and it was probably the hardest decision I had to make. It all boils down to what you want to do - the reason I went back to school (I have 2 years left as well) is because I can work the rest of my life, but the times I've had at school won't be available in 2 more years, when my best friends have graduated.

The way I solved it was by flipping a coin. Heads - I'll stay; Tails - I'm going back to school. If you have any doubts when it lands on either, I think the decision has been made.

In your case, seeing you're in your mid-twenties and was going to return back to school at a different one, that would be a heavy factor. I'd just make sure you're taken care of and get all of the logistics worked out if you do end up staying.

Good luck - let me know if you'd like to talk about it at all. Contact info is in my profile.

</comment><comment><USER7> When they say that you will be "completely taken care of", they don't mean it if they don't put it in writing. That means a salary, stock options or grants, anti-dilution clauses...

The way you ask is, "I'm considering putting school on hold for this. Could you give me a formal offer letter?" If there is any resistance at all to putting promises on paper, or anything that will be determined "when the time comes", don't accept. (Family pressure to finish school is a fine excuse.) It doesn't matter if they're malicious or incompetent, either way you'll work your ass off and get nothing. Better to take extra classes at school and graduate earlier with your increasingly impressive resume.

</comment><comment><USER8> Be a little wary of the offer to be taken care of if the company gets "apple big" (ie, becomes the most valuable company in history).

0.01% of "apple big" is $50 million.

On the other hand, few startups have an exit of $500 million, and 0.01% of $500 million is $50,000. Which might help you take good care of your dog but you'd hardly be "well taken care of".

It sounds like you're in a great spot and you'll learn a lot. Everything is your story says "delay school and stick around", except for the promise about "apple big" which sounds deceptive.

<comment><AUTHOR> It was definitely not a promise. It was an if-statement. We all know it won't be Apple big, but that was just a comment he made I think to convey a message.

<comment><USER9> Yeah but the message was to sell you on a dream of heaven and earth but only deliver a bit of earth in reality.

</comment></comment></comment><comment><USER10> If you are delaying school, you need to be paid way more, or given substantial equity. It really seems you are being taken advantage of.

</comment><comment><USER11> If you're making so little, why not ask for some equity? Then do a financial evaluation, ask for a leave of absence in your college and perhaps give the start-up a 12 month tryout. This short time span can give you the space for adequate reflection.

</comment><comment><USER12> The red flag from the startup is that you're being paid a pittance for a valuable role in what I presume is something technology-related. (And a little, that the "old, successful" corp that originally hired/pays you may be different than the one you're really working for and hope to benefit from, and whose start-up nature is being used to lower your compensation expectations below what an "old, successful" company should be paying.)

The red flag from the back-to-school option is that you haven't even mentioned key details like your field of study or distance to a degree. (Are you a semester from a technical degree that might help you shift specializations in a desired direction? Or many semesters from a degree unrelated to what interests you just to finish a checklist item with your family?)

I'd suggest: to be full-time, and to again (and perhaps forever) defer your formal education, you need to be getting a legitimate full-time salary with benefits _and_ stock participation. Full-time salary is quoted per year and not per hour, and even divided by ~2000 hours/year should be higher than your $15/hour target, given how knowledgeable and reliable you've described yourself.

And if you trade some pay-now for hopes of pay-later, that can be formalized (rather than be a strict article of faith), and the stock especially needs come up front. ("We'll allot you some stock if and when this is successful" is a way for the granter to capture more of the upside leaving you with more of the risk.)

<comment><AUTHOR> Yes, it is very much technology-related.

I'm about 1.5 - 2 years from degree in engineering, which among other things would be very useful here as well. I haven't really done any engineering while here since I'm still learning, though I have watched and learned a lot. While the degree interests me a lot, school was boring for me (but not too easy), and I absolutely love what I'm doing right now.

Also, for what it's worth, a lot of money has been invested in the business, but budget is very small right now.

Thanks for the great response, too.

<comment><USER9> If you are 2 years from a degree in engineering you should already be doing tech work not coffee, and earning $15-30/hr. Amazon and Google and those pay $30+ /hr equivalent for interns writing code.</comment></comment></comment>