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

I just inherited a .Net core app that was a proof of concept. It's a real pot luck of glued together functionality. I remember working in MS ASP land almost 2 decades ago and I swore I wouldn't invest a single minute learning another proprietary MS technology.

I by and large held to that but here I sit, banging away at some C# code. This is day 3. Did you know if you specify a path in JSON and apply it to Use app.UseStaticFiles with a single trailing slash, instead of a double, it'll bring down the .Net kernel in flames.

Not confidence inspiring in the least.


You could replace .NET core in this comment with any $framework and see plenty examples of developers misusing a tool.


by and large, btw


Living in Northern Ontario, I'm no stranger to Poutine. All sorts of places are popping up selling 'flavoured' poutines. Nothing beats the original. In fact, the best poutine is found at chip stands with suspect food handling standards. Not in fast food places nor even restaurants.

My personal favourite comes from the bush town of River Valley Ont. My god I could go for one now and it's only 8:30am.

Hey, were all gonna die sometime!


Beautiful.

I recently had to implement two way auth over 1.2 and this would have saved much hair pulling. (and who does TWO way auth over an MPLS connection. Turns out, us).


I feel your pain. Two-way TLS is a funny thing, it's supported by the standards and even most implementations but its actual use is minuscule compared to "normal" one-way TLS, so much so that it's hard to find documentation even acknowledging two-way TLS exists, let alone how to use it.

And don't get me started about the hassles of obtaining signed certificates that are actually usable for client auth...


Would you be interested in some articles about his? A lot of our infrastructure bases trust around self-signed CA chains and mutual TLS authentication in different configurations, mostly involving elastic stacks, vault, nomad, consul - and we're migrating a lot of the cert handling to be fully automated. We're also extending this to a number of our java applications as well.

I might be able to shed some light on there, as this topic isn't actually that hard. It just requires some very careful thinking.


> And don't get me started about the hassles of obtaining signed certificates that are actually usable for client auth...

What sort of clients were you authenticating? The Web PKI needs to be trusted by random people from the whole world, but most mutually authenticated systems have a relatively small number of clients which are known to the server operator out-of-band. So probably the Web PKI is not the right choice. Instead you (the server operator or some neutral facilitator if it's a group of providers operating services for the same clients) should operate a CA for this purpose, not piggyback on the Web PKI.

One reason not to use the Web PKI if you aren't actually part of the public Internet is that we, to put it bluntly, don't give a shit about people who do that. Running a PKI is expensive (not just in dollar terms, it needs a bunch of smart, motivated people who are morally upright or it's worthless), and this one is ours, so it obeys our rules.

If you have your own PKI (or just one CA) you set the rules. Fifty year certificates for 1024-bit RSA? Why not. A current passport photograph baked into every certificate? Sure. Want the issuer to mint the keys and keep a copy? Do as you please. All those things are prohibited in the Web PKI.


Ignoring the Web PKI defaults though is probably a silly idea - e.g. long lived certificates with rubbish hash algorithms, huge certificates, and issuer kept keys are all really bad ideas, in almost any scenario.


Most two-way implementations are generally privately controlled. You can act as your own certification authority and sign both the client and server certificates for a private communication.

Totally curious, it sounds like you were going for a traditionally signed certificate approach. So you had clients that you didn't "own" -- normal Joe Public -- using your service? If so, that is definitely way outside the norm. If not, why didn't you just sign your own certs?


That's what the Noise protocol framework is for.


For client auth, assuming you control the server, would it be easier to just issue your own and install the root on the server?


Yup. Hard lesson.

The contract between employer and employee is a simple one. You trade skill and time for money [Period].


I believe the issue is the number of ppl affected by change. Remember the population has increased from 38,555,983 (1870) to 328M+ today. Thats a lot of lives affected, no matter the industry, plus the subsequent affects.


The ethics of a technology dont' have to be so lofty. It's a real kick in the happiness meter when some code you have written puts ppl out of work. At this stage in my career, I actively make arguments of why I (we) shouldn't do something avoiding the intent of reducing labour costs.


But basically the whole point of doing something in software is to automate things that are labor intensive. If you're avoiding things that save work you're not doing your job as a software engineer correctly.

It's kind of like using an Ox in modern farming because you want more farmers to have work. You wouldn't do that because your farming business (barring some great marketing that lets you recoup the costs) would just go bankrupt quickly.


> But basically the whole point of doing something in software is to automate things that are labor intensive.

I see where you're coming from but that's quite an oversimplification, don't you think? Software that drives a computer's graphic card, for example, which in turn gets used to run software that enables a physician to explore a 3D MRI, are just two examples of tasks that do not consist of automating manual labour.

(You could probably pay a lot of painters to paint a lot of pictures but hooking them up to the MRI might be a little difficult).

There's a lot of software that achieves new things, rather than old and well-known things really fast and without involving hands or a human brain.

I prefer to avoid discussing ethics on forums like HN, so I won't comment on whether or not working on software that puts people out of work is "the right thing to do" -- suffice to say that, if you wish to avoid doing that, there's plenty of room to do it while still doing your job as a software engineer.


> There's a lot of software that achieves new things

Precisely. And the only way those new things are thought up is if someone has the time to dedicate to the task. If that person instead has to spend 12 hours a day foraging for berries just to stay alive, then they won't have time to build 3D MRI code.

The gains to productivity brought about by mechanical -- and now digital -- automation have lifted billions out of poverty and extended their lifespans by decades. I agree with GP that the only purpose for software is to automate a human task. Lucky for us, software is doing things that humans can't do at all (or would take years of effort, in the case of your MRI picture).


I disagree. You could do engineering to solve a wide range of problem. Some problems are cost reduction, but some aren't : you could have an engineering composant in an artwork, a new luxury unique product, or any other societal problems not oriented on cost-reduction.

By the way, you can always find a "cost reduction" in anything you do, it's a matter of point of view and horizon.


Productivity gains are the only way to raise the standard of living for the broad population. Automation is a huge part of that. Think of the vast improvement of the productivity of labor for agriculture and textiles that occurred during the Industrial Revolution.

Now, one farmer can work a hundred acres before breakfast with crop yields higher than ever due to technology. Would you have us go back to an ox and a plow so as not to kill agricultural jobs? Same story for textiles. Should we reopen the vast mills that employed thousands? We don't have elevator operator jobs. The printing press put all the scribes out of business.

Contrary to your viewpoint, the economic thing to do would be to automate as much work as possible. When labor is more productive, you can earn the same money in less time. This is how we can afford to not work weekends, not because of labor laws. When part (or all) of a person's job is automated, it frees them up to do something else. More importantly, they can take some workload from someone else's plate, freeing the other to do higher-order work.

How many brilliant minds throughout history never made a significant contribution because they spent their lives toiling in some field or hunting/foraging for their own food? It is only when material needs are easily obtained that the time is freed for the intellectual to think. Historically, this was only the aristocracy, privileged from birth, that had free time because of their serfs and vassals doing the labor. Compare to today, where anyone with enough intelligence can make such contributions, precisely because they're not trapped in a brutal subsistence lifestyle. (Yes, there are tons of issues about education and opportunity here. But we don't have to gather our food to survive anymore.)


I think that's an essential point, and though it's basic economics, it's often overlooked (and rarely made here). I'd take it a step further and say the grand project of building a better society (more freedom and economic opportunity) also is overlooked.

However, while automation helps in the aggregate, the world isn't lived or experienced in the aggregate but on the individual level. Put Jeff Bezos and 9 people living without shelter or money in a room, and in aggregate their average wealth is $15 billion per person; but that number tells you nothing about the individuals. When the factory closes due to technological advancement, sometimes those individuals can't get another job or one that pays nearly as much.

So we need to both encourage technological advances that increase productivity, but make sure it benefits individuals. I think the basic principle is that capital can move much more quickly than people - e.g., you can pull the money out of a factory in Kokkata or Indianapolis and invest bit in one in Hanoi much more quickly than the workers can move to Hanoi (probably impossible) or find another job anywhere. The answer may be much better unemployment insurance, retraining, and laws slowing economic changes enough that individuals can keep up, to a degree based on the economic impact: e.g., closing a big factory in a small town is higher impact than closing a startup in London.


Putting people out of work is not necessarily a bad thing. The clothes washing machine put a lot of people out of work, but I think society as a whole is better off with it. I sure don't want to live without mine.

Of course, society has to be able to sustain and re-educate these people for new productive jobs. That's the part where most societies have failed, leading to civil unrest.


I'm from Toronto. Congrats to Toronto for its accomplishments.

It should be realized that their is a great standard of living available outside of major tech centers all across the country(s). The opportunity is different, but the jobs do exist. I'd argue that their is far more opportunity outside of tech centers than within. A tech center addresses the issue of distribution. More specifically, of concentration. Having a small cluster of a 100 or so tech businesses conveniently located pales in comparison to the 10's of thousands scatter across the corporate landscape.

Its myopic to measure 'success' with such a short term metric. My measure of success is different at a wholesale level from my 20's to my 40's. Toronto is fantastic for those less than 30. Tons to see and do, easy access to everything. Flash forward 20 years with a family and kids and it's not so attractive anymore. What were once benefits are now become detriments.

That being said, today is my last day at work in my less than 150K population town. I start a new job in 2 weeks, +$$, +benefits etc. Same scenario, smaller location. My compensation is is within striking distance of the wages in Toronto's tech center. But without the heavy cost of accommodations (all else being marginally cheaper) but more importantly, I'm 5 minutes from a entire world of green space and the crushing humanity that is found in all major centers, Toronto included.

Enjoy your success T.O. :D


As a Canadian-U.S. dual citizen who has spent my whole life in Canada, and most of it in Toronto, I honestly can't justify settling down in Ontario. The taxes are high and complicated, the services are subpar (and I don't use most of them), and Canada largely lacks the civil rights stability enjoyed in the U.S. under the Constitution (as currently amended and interpreted), particularly regarding freedom of speech and the bounds of unlawful search.


This is one of the weirdest posts I have ever seen. Agreed that Canada doesn't have the 1st amendment but it's not like people feel they can't express themselves, unless what you have to say is threatening or offensive. In which case, you usually get away with it anyway. So unless one is a right wing christian that wants to post pictures of disgusting things or a racist that wants to put down other people I'm not sure why one would feel their civil rights were impinged.


Can you elaborate (with examples) how the freedom of speech (and other liberties) in Canada is in practice "less" than that enjoyed in the US?

Or are you speaking entirely theoretically?


lolwat


Please don't do this here.


If I had more work in Waterloo, Paris, Guelph, etc.. I'd definitely move further west (I'm on the western tip of Missisauga now). But, 90% of my clients are in the city so I have to go in to Toronto 4-5 times a month. Not really worth moving further west yet.


Thanks HN, I didn't realize this phenomena was named. Learn something new everyday.

I always just said, expenses rises to meet income, + 25%.


..and the “Rat race” I mentioned on a previous comment above is that exactly perpetual effort to cover that +25% as you very correctly stated of “more expensive lifestyle” that we impose to ourselves.


As a counter argument, never forget you can be a responsible saver one day, only to be dead and buried the next.

If you want to guarantee an expensive lifestyle, it’s best to obtain it as immediately as possible.


Thank god somebody said it. We are in the golden age of cheap travel and leisure, perhaps the golden age of all ages (and certainly of all past).

People spend your easy money and enjoy youth IMO.


It doesn't really make sense to say it because it's not as if there's a general cultural tendency towards shrift. Most people aren't saving enough, what's the point in popularizing the message that we should continue on that same course?


Saving never really makes you happy, it makes you feel secure. Seeing a number in an account rise over the years is great, but also a constant reminder of money you’ll never get to touch until you are old and gray, if you even make it that far. And even if you do, what if the world of the future is no longer worth exploring or even living in?

Is it more important for people to feel happy, or secure?


Security is a part of happiness. It is finding the right balance.

Modern medicine is advancing all the time. You could be old an grey for many years. You could live to be 170. If you live to 170 and save well you could retire at 65 and live the last half of your life with more income from savings to enjoy life than if you work until 170 and spend every penny as you make it.

Of course you could also die in the next few minutes. You need to find that balance.


I wouldn't. I'd learn a trade. Not to be facetious, I'm serious. I love programming. I never played video games, I spent my free time learning basic and then assembler in the late 80's. At the time, I was custom cabinet maker. I eventually become allergic to the 'smell' in oak, causing health problems. I had to give it up. I was busy 8 hours a day. I made decent money. Theirs a certain satisfaction at the end of the day and being able to point at something physical and say 'A good days work'. I began contract programming and eventually into full time employment.

Flash forward about 30 years. I'm still writing code professionally. I rarely write code for just enjoyment anymore. Those carpenters, cabinet makers, plumbers, electricians.. .trades people, make the same or more than I do. Their unionized. They can work practically anywhere and make the same amount of money. Not just in major cities. It doesn't see many radical shifts in technologies, unlike programming that is a life long learning because of advancing tech. Its VERY likely you will find your skill set obsolete without a real concerted effort of constantly upgrading. I wont even get into the culture which IMO is fostered by those writing the cheques and even your peers. Nor the moral issues that you will inevitably face - something few programmers ever talk about. It's a real kick in the happiness meter when something you write is designed solely to put many people out of work.

My opinion, my real opinion, is that if you find yourself writing code 'for fun' even if you don't know what your doing, pursue it. If your only in it for the career. Turn and run like hell. You'll be burnt out in 5 years and starting over.


The grass is always greener. I grew up in a working class neighborhood where the majority of my friends parents and high school friends later became involved in trades. My high school had a trades program for mechanics, HVAC, electricians, plumbing, and a beauty school.

The vast majority are NOT making six figures. The work is hard, has long hours, and is physically exhausting. My grandpa was a welder/machine shop owner my uncle is a electrician. They would trade anything for a cushy desk job with great pay, great benefits and easy workload. I've never worked past 4pm and have ample paid vacation time. They will never be able to say that. Google says that here in Austin TX, the average master plumber makes $25 an hr. HVAC is the highest at $44 an hour on average. And we are going through a construction boom, also don't forget that you have to factor working in 100 degree heat and 50% humidity 5 months out of the year.

Sure you can start a business and eventually have 5 workers and 3 trucks like my grandpa but then you become a entrepreneur and have to deal with the whole billing, scheduling, selling, headaches of running a small business.

I find a lot of tech people idolize the blue collar fields. It's damn hard work.


Just for a point of reference, I've been a Cabinet Maker, Welder, Powder Coater, Skid nailer, punch press operator and more. Believe me, I understand blue collar. I was in my 30's before I worked professionally as a programmer.

I currently live in a town that is resource based, mining and forestry. The epitome of blue-collar. Believe me, those guys make double what I do with bonuses and benefits. Even without, they make significantly more than I do. It isn't uncommon for a worker in this town to be able to retire by 45. They work until they are offered early retirement, or, have their pensions bought out. All this with very little education beyond 'common-core' in the mining sector. Ya, they bust their asses. But they're paid for it. So, ya, you raise valid points, but I'll stick with my first hand experience. Have you ever worked blue-collar or just second had info as you present.


> They can work practically anywhere and make the same amount of money

You are contradicting yourself by saying you’re in a boom town and also they can move anywhere. (Can they move to Thailand? I can move to Thailand as a programmer). In a mine in Australia you can make 6 figures standing at a gate and letting trucks through, or higher to drive the truck, but it’s specific.

I think their mobility would definitely be worse that a programmers.

> I'll stick with my first hand experience. Have you ever worked blue-collar or just second had info as you present.

I don’t think anecdotes are a good example here. Something like https://data.gov.au/dataset/taxation-statistics-2013-14/reso... would be better.


> My opinion, my real opinion, is that if you find yourself writing code 'for fun' even if you don't know what your doing, pursue it.

The dirty secret of turning your hobby into a career is that there exists a very real chance you will kill your hobby and passion for the craft.

Unfortunately, one can only deal with some much half-assed code and coworkers before turning into a cynic who hates the craft. I almost wish I was just in it for the money, for this reason.


The dirtier secret is that if you turn something you dislike into a career, you won't get even the small consolation of liking it, and all the other problems will not go away.


> something you dislike

There's a continuum between "turning a like into career" and "turning a dislike into career" wherein I think there's probably a good balance. Indifference, much like ignorance, seems to be bliss among many folks in my line of work. Especially when you've got someone passionate to pick up the slack.


You view of trades work is romanticized. The labor is grueling for 90% of the bodies on any given site. Some days you can sit in your truck and play on your phone for 8-20 hours until you get sent back to the roach motel with 2-3 other guys to come back in 8-12 hours to do it again. Other days it's 100F, and you're standing on asphalt or concrete all day boiling in your sweat rushing through a month of labor in a couple weeks to meet the deadline. You're only rushing after two weeks of sitting on your hands because the paperwork got messed up and that precisely ordered $10k of sheeting, or brick, or wire isn't the right color so the entire plan needs to be recertified. The culture is toxic. The labor will break your body and if you don't get addicted to heroin to make it through your day you're probably an alcoholic and are probably a smoker. The guys who are making 100k+ are site engineers, masters on jobs they're there to fix, or are honestly overpaid. Most masters I know are 60-90k and would love to have a job cushy enough to sit around and complain about on the internet during the work day.


Much needed reply to the parent.


Where I live, programmers make far more than cabinet makers and electricians.


I miss GFA to this day.


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

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

Search: