Hacker Newsnew | past | comments | ask | show | jobs | submit | doorstar's commentslogin

ADA rules also add a lot of expense that is important, I believe, but certainly limits the amount of 'uniqueness' that is possible when building new structures.


Kind of a strange article with the implication that we've got a wide selection of people willing to marry us and the challenge is to choose the best one.

I really only ever found one person I wanted to marry and I married them. We have similar tastes, we have similar values, and they challenge me at an intellectual level.

If the author feels like that is the wrong criteria - well I'm not sure what the alternative is. There just aren't a lot of other people I want to spend every waking day with.

> maddening children who kill the passion from which they emerge

Whatever ups and downs my marriage may or may not have, I would change nothing whatsoever when I look at the amazing children we have produced together.


I know a couple people who won't think about people 'that way' if the person is in a stable relationship. For me it was hit-or-miss.

Do you think if you included people who were unavailable because they were taken or you were taken, would that number increase?


In the anonymity of the internet I am not going to pretend that I've never wondered about relationships with people who are unavailable, or despite my own unavailability. It is certainly possible to find people attractive whatever one's personal situation.

I still can't say I've found a better match.


Buyer's remorse is a real thing, and at some point it's far more important that you trust that you made the right choice than for some third party to approve of your decision 'objectively'.

Knowing this makes it into a kind of moral hazard to continue to press you for more information, so I will simply close with 'Congratulations'.


Statistically having minor children has been shown to make people less happy.

https://ifstudies.org/blog/does-having-children-make-people-...

I’ve never had to deal with raising small children - I have two stepsons for whom I’ve been their only father since they were 9-14 (now 18-23). But they were already mostly self sufficient by that time. They were at the fun age. Not the helpless baby stage where they couldn’t do anything for themselves.


'Happiness' studies show up now and again and I've got to say that I've always found them suspect. The polling, the questions, the conclusions are so fungible that I find it hard to believe that there's any value in them.

Satisfaction is a more interesting measure and isn't necessarily reflected in questions of how "happy" you are. I bet a poll would find that start-up founders are less happy than people with stable jobs at large corporations. Does that prove anything about whether or not someone should do a start-up?


The entire presupposition that we're supposed to be little happiness optimizing robots always struck me as completely bonkers. I'm pretty sure it's something designed to sell more soap or greetings cards.


The helpless baby stage is over in the blink of an eye. For me they start getting fun once they can smile and laugh, which is often in the first six months.


Plenty of places have more than two engineers and still paid ransomware. This is like any other cyber-crime, which is to say it happens all over, it's not always publicized, and it's very hard to stop.

I watched a couple of presentations on security recently and just felt like we are all in a losing battle. There are always more bad actors, they get better and better, and they are a lot more motivated than any security team you can put together.


College vs. trade school isn't just about money or 'social acceptability', it's also about opportunity. A 18 year old who goes to trade school to become an electrician is going to become an electrician, they are not going to be able to change their minds in two years and become a biologist.

That kid who went to college at 18 has a lot more options. They can switch majors, they can take internships, they can get their degree in underwater basketweaving and still be considered a good applicant to a masters program. They can also take that degree and apply to a lot of 'soft' positions. A basketweaving degree won't get you a dev job at google, but it might get you a HR job.


It seems like an easy solution to this is to have a 'trade academy' or a coalition of trade schools that allow / require you to do a rotation in each of the related trade specialties, i.e., if building / construction related, you spend a week / month / quarter learning about plumbing, electrical, framing, mechanical, landscape, etc. This would both promote understanding of related fields and give people an exposure to a variety of potential interests.

This is not unlike the required courses that predominate pre-major studies at a traditional university (in the U.S., at least)


I think it's still going to be hard to get 'middle class' parents to embrace this for their kids - and I am a 'middle class' parent.

If my kid wants to become an electrician I'd probably say "Why not major in EE?". A construction worker - why not major in Civil Engineering? If I felt my kid was fundamentally incapable of the level of effort required for those degrees, perhaps my opinion would change.

I'm on HN and I have an engineering degree, so I'm predisposed to think my kid could get one too. I'm not sure how I'd feel otherwise.


What you're describing is often done in trade high schools. Freshman will rotate through trades and pick one to continue on.

Once you need a career it doesn't really work like that though, often you're working years as an apprentice in a specified trade before you can even think about branching out on your own.

If you switch trades you're back at the bottom with apprenticeships all over again.

Someone like an English major can much easily change careers as long as they're somewhat adjacent (e.g., copywriting, research, journalism, etc) and generally starts off at a higher salary depending on their degree level. Until you hit masters level most degrees are broad generalized education.

Trades are specializations. If you're unsure about which trade you want to get into, you'd likely be better served with a business degree (which is another generalized area of study)... at least that can be applied across trades. Many tradespeople struggle with the business side of things despite being very practiced at their trade.


Sure, they can change their mind and become a biologist. But in doing so, they throw away the two years. They have to start college from zero, because their trade-school classes don't translate into college credits.

You can start college at 20 as easily as at 18. The problem is that you get nothing for the two years (except, I suppose, you can work as an electrician to pay for college, instead of working at McDonalds).


I'm guessing that our hypothetical student must or might take a college-level Biology course as part of their undergrad degree, and that exposure might cause them to change their mind about their chosen field.

I also don't know how easy it is to get into the same college at 20 that one would have gotten into at 18. If at 18 they got accepted to a school that cost 100K/year (as the parent comment suggests) then they may find that school closed to them 2 years later.


Also, there are no underwater basket weaving degrees.

There are art degrees, for artists, not people expecting to make well paying careers out of it.


"Underwater basket weaving degrees" is a great piece of rhetoric because it lets the listener project their personal most hated field in its place. If you think gender studies degrees are useless, I don't see the value in marketing, and we run into this little meme: boom, suddenly we're attacking higher education hand in hand. Epstein conspiracies are another example. Lots of people think he didn't kill himself. Ask them what did happen and they're at loggerheads, but if you can steer thoughts away from that you have broad public support. It's a clever if disastrous way to build American anti-intellectualism.


That's an easy allegation to throw out. Someone can advocate for a social safety net and still have bills due next month.


Keeping kids out of school _is_ a decision, and not an easy one when having kids at home means the parents can't work.


This keeps being trotted out but is actually a solved problems. For those situations where both parents have to work and both have to work out of home the schools can stay open and give a limited number of pupils regular lessons.

That way you cut down tremendously on a potential vector of transmission with as limited an impact as possible. We've done this here in NL successfully and in other countries besides.


maybe the solution is that parents shouldn't have to work during a pandemic if they can't.


> a well-functioning court and jury should easily be able answer these questions,

I'm going to ignore the qualifier of 'well functioning' which obviously up for debate. The process of being charged with a crime, being put on trial, wondering at the consequences of the outcome etc., is no joke. It is a tremendously time-consuming, expensive, and stressful processes and even if you are acquitted there is no undoing the damage that has been done. There's a reason doctor's spend huge chunks of their income on malpractice insurance, and if we decide that engineers need the same protection in case they get sued than the biggest beneficiary is going to be the insurance companies.

If insurance companies also had to sigh oaths we might make some progress, but the nature of their game is to spread the risk - which is to say they take money from a lot of people and hope they never have to pay them back. There's only so much regulation can do about that.

It shouldn't just be thrown out as 'well if you make a decision in good faith then you are sure to win your court case'. It is not a reasonable burden to put on someone who cannot anticipate all the possible outcomes of decisions they make.


That's exactly it. It also begs the question, if corporations already have liability insurance, what's the point of forcing all of its employees to get similar coverage. It really is just giving more money to the insurance industry.


Have you ever worked at a company where they bring in a brand-new CTO or Lead Architect and they decide after a week or so that the entire dev org has been Doing it Wrong and it's only them, with their clear outsider's view, that can see the true way forward.

I certainly have. It usually leads to 3-4 wasted years of dev time on the brand new architecture that will never match all the features of the old stack, and during that time the old stack has fewer and fewer resources and the tech debt piles up.

It is absurdly easy to come up with a better plan in 10 minutes if you have absolutely no idea how it really works or how complicated it really is.


Yes, I agree that the fair default assumption is I just don't understand the true complexity of the problem. And this is certainly true.

However, I don't accept this answer. I think most of the time the government's plan is so bad, so glaringly flawed, that even from my position of ignorance, I'm confident I can beat it without hardly trying.


The plans Congress comes up with look like shit from your perspective because to you, a good plan is one that solves problems for regular Americans. Congress does not work for regular Americans. The plans they come up with are great plans for the people they work for. They are highly effective and channeling money to the rich and their corporations. Just look at the trend lines of the past 40 years - consistently increasing inequality between rich and poor. That kind of consistent performance is by design. As always, the purpose of a system is is what it does.


Our schools are going virtual when they reopen but there are plenty of parents who object. Several reasons come up

- Virtual learning did not work at the end of last year, and most parents think it's unlikely to work this year. I'll wait and see, but I'm also pessimistic about virtual learning for kids 5-18. It's just not engaging in that age range.

- Related, families with two working parents are going to be very limited in their ability to work with their kid, e.g., make sure they are attending/paying attention in their zoom meetings, keep track of their assignments and make sure they are getting worked on, really sit and help with challenging projects and assignments.

- Along the same lines, families with two parents who are or will be working outside the home are really in a bind.

- Finally, there is continuing uncertainty about kids getting/transmitting Covid to the point where some people feel it's worth the risk. There is also a persistent group of parents who think this is all overwrought - they believe otherwise healthy kids and adults under the age of 60 are so are just unlikely to get very sick from Covid, certainly not more than any other virus.

There's a wide range of feelings. I don't think the schools should open, but I'm also quietly prepared for this to be a lost educational year for my kids.


> I don't think the schools should open, but I'm also quietly prepared for this to be a lost educational year for my kids.

"Quietly prepared" as in what? You're just going to accept it? Or you're going do what you have to to fill in the gaps and make it not a lost year for your kids?

I'd urge you (and everyone) to go for the second option. They're your kids. They're not the school system's kids; they're yours. If you have to spend time and/or money to make sure that they actually get the education they need (because the school system can't or won't[1]), even if you have to give up some things to do so, do what you can to help your kids.

[1] I'm not yelling at the school system here. They're in an impossible situation. They can't function at 100% effectiveness in an impossible situation? No shame in that, and no surprise, either.


I'm accepting it, make of that what you will.

About the only thing I can give up to help this situation is my job. I'm not yet willing to make that trade.


No, I'm not suggesting that you should give up your job.

But can you give up half an hour an evening, to work with your kids on... well, on anything that would help fill in the gaps? That costs time and energy, and it's hard after working all day. But it can make a difference.

Maybe a starting point is to identify what the gaps are. Whatever your kids' district is doing, what isn't working? What specifically isn't working for your kids? Is there anything you can do to help that for your kids?

It's not all or nothing. But each bit costs time, thought, maybe some money, and energy. Still, despite the costs, I'd encourage you to try to do what you can.


How do you propose the average couple in America that is living from paycheck to paycheck to make that sacrifice?


The more I program in Go, the more retroactively irritated I get at C++. A buddy of mine did a few 'brown bag' sessions on advanced C++ templating and my jaw just dropped further and further at each one. Who has the energy for this? It's hard to write, it's hard to read, it's hard to debug.

For someone who a) knows what they're doing and b) really needs to squeeze every last millisecond out of the code I suppose they could be useful. It made me want to send Rob Pike a thank you card.


IMHO if you're messing with templates in C++ you've probably over-engineered your solution.

There are a few cases where they can make sense, like in the standard library, but most of the time without them your code will be cleaner and you'll never actually run into the case where they pay off.


I've run into cases where templates pay off once or twice. I was once able to refactor 1000+ lines of code into about 150 lines using a template class. However, I've tried more than once to learn "advanced" meta-programming techniques, and I've yet to find a use case that makes any sense.


I wrote a library a few years back to do in-place non-square transposition in the GPU register file. The algorithm had a lot of math that needed to be computed for every size matrix. I wrote it in C++03, before any constexpr, so the metaprogramming is intense. One of these days I'll rewrite it in C++20 and most of the code will go away. This code is still in use by the way.

https://github.com/bryancatanzaro/trove


If you need compile-time stuff that constexpr can't do, then you have little choice. Of course, in reality, its very rare that you "need" compile-time stuff.


It is not rare at all to want your program to handle generic output. Templates might not be the cleanest syntax but they do address a real need.


I wasn’t referring to genetics or saying that templates aren’t necessary or useful, or even that they aren’t common. Those uses of templates are relatively straightforward most of the time. Where templates, IMHO, become unwieldy is when trying to compute things at compile time. In many cases constexpr works here, but my point was that the remaining cases are relatively rare, certainly when you need it (as opposed to just wanting it, eg for performance).


> A buddy of mine did a few 'brown bag' sessions on advanced C++ templating (...) Who has the energy for this? It's hard to write, it's hard to read, it's hard to debug.

C++ programmers who dedicate themselves to template metaprogramming are like stunt performers. You see them get on their shiny bikes and flashy costumes, you clinch your fists in a mix of fear and awe when they showcase their skills, but in the end it might be entertaining but it has virtually no real practical use beyond extremely niche applications.


I'm afraid you've describe my friend to a T. Ah well, it takes all types. If we couldn't work with some strange personalities, we wouldn't make it far in this business.


C++ templates can indeed get crazy, but I miss them in every other language I use. For example, I recently wrote some code in which I needed to know whether or not a member existed in a class, at compile time. Turns out, there's a way to do that in C++ using templates and overload rules:

https://en.wikibooks.org/wiki/More_C++_Idioms/Member_Detecto...

Yes, conceptually it's a bit nuts, but the fact that you can do stuff like this makes it unlikely that you'll ever get completely stuck trying to implement something.

I personally love C++ because it's just a giant bag of tools, even if one of those tools is a footgun.


Having experienced similar "ah thank god C++ allows me to do [ridiculous template magic]" moments, 99% of the time it is because the language is forcing you (or leading you) into some kind of design that would have never been necessary in a different language. I have seen many hours/days wasted on using esoteric C++ features in order to get around a language limitation/quirk.

So I am going out on a limb here and assuming that your needing to know whether or not a member exists in a class at compile time is simply something you would never need in a different language because the language would allow you to design for something simpler that satisfies the same requirements. As someone who writes both C++ and C# daily, I often end up comparing the two and most of the time I end up thinking "it's cool that you can do that in C++ but this would have been half the lines and cleaner code in C#".


In my case, I needed to know whether or not a member exists in order to implement object tracking. I basically have a macro that inserts a member into a class, and calls that member's constructor with the "this" pointer of the tracked class. A different function needs to know, at compile time, whether or not a class is tracked, as the way memory is allocated differs.

I didn't want to use inheritance, as tracking is disabled in a shipped build, and I want it to have as little effect on the codebase as possible. So, the simplest option seemed to be to check whether or not the member exists (and assume the name is unique enough an untracked object will not contain it). This was good enough for my purposes.

I'm not as familiar with C#, but attributes seems like a potential alternative, though I'm not sure they can be fully removed from a release build. And, of course, C# is garbage collected, which is not ideal for all types of software. If there is a better alternative, I'd be interested in hearing it though!

Don't get me wrong, I'd absolutely love a "better" C++. Rust is a great language, but I personally don't feel that the safety guarantees are worth it for every class of software. If a video game crashes, the world isn't going to end.


C++ and Go are different languages with different goals.

Why would a C++ programmer learn Go? They should learn Rust since it is pretty much a cleaned up, modernized C++.


There are a million things. Fast compile times, UTF8 strings by default, easy concurrency, great standard libraries.

And the most important thing - I can easily read and understand the code written by others.


> Why would a C++ programmer learn Go?

Perhaps to find a new reason to hate a programming language thanks to Go's GOPATH.


rust is just new, not too bloated, YET. long way to go until it can be seen as a "better C++".


Agreed, it is lacking tooling support and many other things, but it is a cleaner C++. That plus the borrow checker are its two major features. Otherwise, nobody would use it and their designers would have done a pretty bad job given the 30 years of experience they had from C++!


> It made me want to send Rob Pike a thank you card.

Do it, it'll make his day.


Maybe I should!

I sometimes feel like sending one to Bjarne Stroustrup too, because C++ is still an incredible language. I see Rob and Ken talking about how they hate C++ and I worry about poor Bjarne's feelings.


Well, features like exceptions and classes don't improve performance. You could write the same code as fast in C, even if it would perhaps be more cumbersome and error prone to read and write. You save perhaps development and maintenance cost, but not runtime cost. Features like lambdas don't improve performance either, they rather make the language easier to write and even more hard to read (think of the name of a function as part of the documentation).

In theory the higher abstraction of C++ provides for optimization opportunities for a sufficiently smart compiler. I have yet to see such though.

Write the little bits which need to be fast in C and the gross in a sane language mere mortals can read (e.g. no 'most vexing parse').


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

Search: