HN user

TheCapn

2,201 karma

P.Eng/B. ASc - Software Systems Engineering

Occupation: PLC/HMI/Web/DB/C++/.NET/VB6 Programmer - AKA The Software guy at an industrial controls/automation company.

Posts0
Comments599
View on HN
No posts found.

As a Canadian who has been listening to the "51st state" wordvomit coming out of US administration your comment is very apt.

For some reason I can't fully grasp, a LOT of US citizens are ignorant to how the rest of the world is perceiving them at the current moment. There's countless US articles talking about US/Canada relations as if it is a trade dispute and that they think Canadians are eager to re-unite and go back to the way things were without ever addressing the threats to our sovereignty. Then you have comments like the parent to your post who is....wildly off the mark thinking that in a point of contention we'd prefer to keep our data on US controlled systems because their government would need to follow their own legal processes to acquire data of a foreign/hostile state??????

You're discussing layoffs.

OP is discussing firings.

And yeah, there's crossover but they're not 1 to 1. At the same time, if a company is taking two people of equal position and firing one, or keeping the other, the honesty in how they came to that conclusion through transparency has value. Was the decision one of seniority? Performance? Geographical relevance? Was it favoritism masked in another reason? The person receiving the pink slip deserves to know the truth, especially in cases where legal matters could be of question where a company may say one thing, but be acting on another.

Not the OP you're replying to, but a parent nonetheless.

From basically the very moment you realize you're having a kid you essentially become the #2 person in your own life. Its more so for the mother, but even the father likely needs to do some maturing in preparation to being a good dad.

If you're hoping to be a good parent you need to start weighing every decision on a basis of where it leads to. There's simple things like affordability: deciding to make smarter financial decisions because you're going to be supporting another human for the next couple decades at least. There's more complex things like suddenly seeing your own health as a liability and needing to straighten yourself out if you want to set a good example. Things get way easier if your life has structure honestly. Having good habits about food prep, cleaning, chores makes things way easier and bad habits really make life more difficult than it needs to be.

You also need to adapt quickly. You realize that you don't define your schedule any longer. Whether you sleep at night is up to the kid. As they grow from baby to toddler you start to see how the fundamental things like routine have impacted your child and you can begin to make connections to how you did things 6 months ago impacts how things are going now. Self reflection is huge, knowing how your emotions, your reactions, your behavior is a template this person learns from humbles you.

I really enjoyed the write up. As father to a 2y/o as well I relate so hard to much of it.

This line sticks out to me:

    you see life as a collection of experiences to be sampled
...because I feel like that was my hardest adjustment to becoming a parent while the vast majority of my friend circles are either single or DINKs. You very quickly become a sideline to many people. You get invitations to join the pint after work, to go hit up the trails each weekend, to travel, to do frivolous things on a whim but you just...can't anymore. I think I struggled with that transition for a long time. Partially worried I would lose my friends and become isolated, partially the FOMO of no longer being able to partake on all the things that were most enjoyable to me.

But thinking about it at this point? I've lost a few friends (not in a breakup sort of way, they just slowly faded out) but the ones who stick around were always those I was closest to. I do miss out on a lot more of the hobbies I once loved but at the same time I've traded those for experiences that are new, different, and fulfilling in their own ways. I've truly been a believer that the best reward always comes after a period of suffering or struggle. In the same way that cold glass of water feels like heaven after a strenuous workout that immense feeling of reward when your kid takes first steps, first words, first sentence just crush all other emotions and swell you with joy and love. Is 2 years of hard work worth that immense wash of emotion? Arguably yes. And I hope to keep getting hit with those experiences.

I've never been shy to say it isn't something for everyone. You sacrifice a lot to have kids. Financially, physically, emotionally, mentally, it all takes a toll, but the rewards are also so much deeper than anything else.

I could never get used to ergonomic keyboards. I actually spend a considerable amount of my day typing single handed across the entire QWERTY so I don't have to remove my hand from the mouse. I developed the habit working on far too many apps with bad/missing keyboard shortcuts or broken tab ordering.

For me I wanted a smaller keyboard, but one that still included the numpad and ended up with this custom build:

https://i.imgur.com/H2sddCI.jpg

I use a fullsize board at work, but at home I prefer the slightly smaller footprint that I got in that design.

Would be interesting to know how they were testing authentication. Were they using a botnet of any sort? Otherwise for every "valid" user/pass combo from an external leak they tested there'd be several failures. A single (or multiple) hosts smashing auth attempts should raise flags. They didn't "Brute force" one user account at a time, but they did brute force the authentication system in general.

Yeah... I randomly punched in $40,000 for Gaming and got

(1) Parts that total $9,980, but claims it totals $33,950 (2) Recommendations for parts that are both years out of date, and vastly inferior to other options (CPU = AMD Ryzen Threadripper 3990X, GPU = RTX3090)

So I'm guessing the AI data isn't trained enough and is going off some poor metrics like sorting by price, perhaps recommending multiples without indicating (was it asking me to double up on RAM or Stroage?)

This is a discussion that is much larger than what's available in a comment section like this. But I agree with you wholeheartedly.

I think part of the thing is Software Engineers haven't been a thing for as long in the industry. I'm the only Software Engineer I've met doing controls. My supervisor has a CS degree and an Electrical Technician diploma, but never another SE.

Second is I think up until recently, the work done by Control Systems has been what's capable of an EE or ME so having a SE hasn't been necessary. I've been with my company for 10 years now, and in that time I've watched the evolution of what my clients are seeking in terms of requirements to their systems.

I primarily work in Agriculture or Food Production. 10 years ago my projects were assembling plants and getting their motors to start, with the required protections then some rudimentary automation to align paths and ensure flow.

Today? I'm building traceability systems to report on exactly which truck load was the origin of contamination for a railcar shipped months later. Or integrating production data to ERP systems. Adding MES capabilities to track downtimes and optimize production usage. Generating tools to do root cause analysis on events... It's a different world and the skills of a Software Engineer haven't really been a super important role for quite a while.

I think the mindset is shifting, but it is slow.

You're not wrong. It shows in the state of PLC/HMI Development tools. Even simple things like Revision Control is decades behind in some cases.

I've basically found my niche in the industry as a Software Engineer though I can't say I see myself staying in the industry much longer. The amount of time's I've gotten my hands on code published by my EE coworkers only to rewrite it to work 10x faster at half the size with less bugs? Yikes. HMI/PLC work is almost like working in C++ at times, there's so many potential pitfalls for people that don't really understand the entire system, but the mentality by EE/ME types in the industry is to treat the software as a second class citizen.

Even the clients treat their IT/OT systems that way. A production mill has super strict service intervals with very defined procedures to make sure there is NO downtime to production. But get the very same management team to build a redundant SCADA server? Or even have them schedule regular reboots? God no.

My company is generally good about that. We have lots of overlapping documentation that answers questions like that in different ways. From Electrical schemas to QA docs, picture archives of panels and wiring, ticketing systems, spreadsheets over I/O, etc. etc.

I hate PLC work for other reasons. I'm starting to look at going back to more traditional software role. I'm a bit tired of the road work and find the compensation for the amount asked of you to be drastically underwhelming. This meme is very much relevant:

https://i.redd.it/rawo5uki1v9b1.jpg

All my comment is adding a software anecdote to the story. It really is just regular Chesterton's Fence, a term I've never heard until now but dealt with for the last several years.

You're not wrong, but in the context of a PLC controlling a motor or gate it is far more segregated than the code you're probably thinking of. Having a timer override on a single gate's position limit sensor would have no effect on a separate sensor/gate/motor.

If the gate's function block had specific code built into it that affected all gates then what you're talking about would be more applicable.

Huh. Finally a name for it.

I do a lot of support work for Control Systems. It isn't unheard to find a chunk of PLC code that treats some sort of physical equipment in a unique way that unintentionally creates problems. I like to parrot a line I heard elsewhere: "Every time Software is used to fix a [Electrical/Mechanical] problem, a Gremlin is born".

But often enough when I find a root cause of a bug, or some sort of programmed limitation, the client wants removed. I always refuse until I can find out why that code exists. Nobody puts code in there for no reason, so I need to know why we have a timer, or an override in the first place. Often the answer is the problem it was solving no longer exists, and that's excellent, but for all the times where that code was put there to prevent something from happening and the client had a bunch of staff turnover, the original purpose is lost. Without documentation telling me why it was done that way I'm very cautious to immediately undo someone else's work.

I suppose the other aspect is knowing that I trust my coworkers. They don't (typically) do something for no good reason. If it is in there, it is there for a purpose and I must trust my coworkers to have done their due diligence in the first place. If that trust breaks down then everything becomes more difficult to make decisions on.

For personal development, it was merely shipping things. The more I published, the better I felt about myself. The more I published, the more I had learned and had to refer to. Now when I'm taking on tasks I can instantly recall how each of the pieces of the problem can be stitched together from things I did previously (or at least know where to look for foundations to build from)

For the confidence? It was working with others. The first job I had I got to sit down with one of the company's programmers as part of my on boarding and watch him work through tickets. After I saw just how flawed everyone was I felt a lot better about myself. I suppose that's a weird thing to say: Oh he was pretty shit, so I shouldn't feel bad about my poor performance...but that's not the point I want to make really. More that, it is wrong to compare your efforts to learn and grow against the final product of others. Once you sit down with the experienced devs and see how they shape and form the product and all the bumps along the way it doesn't feel so bad to struggle on your own.

Ultimately the skills that I honed that gave me the best boost in confidence were not really the direct programming parts where I put letters and numbers in files. It is the debugging. Understanding how things move and where to look for problems makes me feel like I can solve any problem with the right tools.

Perhaps you're using a broad/generic example to try and make the point but I'll say this:

If a seasoned mechanic is unable to figure out how to reset the Maintenance Reminder or look up how to sync Tire Pressure sensors, run away.

In the same way that one can use knowledge of one programming language as a means to leapfrog into other languages, other skilled trades are similar. Perhaps there's something that could be said about an ICE mechanic trying to dabble on Electric but that's not the point you're making. So yeah. I know you're trying to make a point about lock in, but when I think of people I want to hire for tasks who might say "Oh, sorry, you have a Volkswagen and I only know how to work on GMC" I wouldn't take my GMC to them either. It shows a fundamental lack of skill in that they don't understand the broader concepts and their universal applications. If I, a programmer, can figure out my Volkswagen, my GMC, my Mazda, my Nissan, certainly a mechanic can. If my appliance repair specialist can only do Whirlpool when I ask for help on a Bosch that's red flags.

One might specialize. Sure. But to refuse? Weird. But I fear I might be getting lost in the weeds here because its all about the approach. "Sorry, too busy to take on work on things that aren't my specialty": yep, understood. "Sorry, I don't know <model> I only know <other model>" bad.

Then again how much time do computers save?

This is honestly a good question to ask at times. I remember back when I was trying to get into weight lifting. I was searching for apps and tools that would help me track milestones and progress, setting up routines and all that. I remember going through some options, then making a spreadsheet, and refining the spreadsheet and just hating the whole process.

So then I opened a notebook and just wrote down my lifts for the day. At the top I wrote my 1 rep maximums for the big 4 lifts and had a page for my program that denoted the rep#/set#/1RM% and done.

What did it lack? Maybe some categorizing or search tools. Maybe some graphing to visualize progress over large spans of time? Well I don't need any of that. What matters is what I'm doing now.

There's probably several examples of things like that. I can't count the number of times I've tried using organizers for things like groceries or maintenance that have me spending more time fiddling with settings and formats than just doing the task. At my job I create a new text file daily to note what I worked on and shit that came up. I date it and save it to a directory and just use grep to recall info when I need to look back over large spans. No awkward TODO lists or planner apps. No updates or UI changes. No subscription fees or "Share" buttons.

Sometimes, asking how much time you save with a computer/app/whatever is the right thing.

sexual fertility

You think our government respects people taking time to rear offspring? Of course not! They're not contributing their labour to our economy while being parents so we've structured the incentives to start families in such a way that they're driven back to work ASAP. Strictly speaking: having children is bad for our labour force and should be avoided.

I actually had a decent experience with their support on my Pixel 1 with shoddy bluetooth. It was one call to tech support and they basically just said it isn't worth troubleshooting and arranged the entire replacement on the spot. It was a big reason why I went with a Pixel 3 and Pixel 6 on my upgrades.

Why we got the run-around treatment with my wife's device? Unsure. But I'm not willing to play those games down the line so we're going to find other devices on next replacement.

My wife had issues with her Pixel 6 Pro almost immediately after delivery. It was stuttering randomly doing anything. My rough diagnosis after watching it/replicating it was hardware issue there was no doubt in my mind.

Google's help though? Basically wanted us to engage them in some sort of circus over a device 3 days old. We just straight up returned it and ordered a new one which has worked great. Google wouldn't even issue a straight replacement through their tech support and we did a Return + Purchase to get around their hoops they were trying to get us to jump through.

As all things with Google: they need to actually fix their user support. Even as paying customers of theirs they passed our concerns off and treated us like idiots. I've been using Google's phones since their Nexus line but that experience has made it so I'll be looking elsewhere when replacing my 6 in a year or two.

Can I ask what you drive?

There's a 3rd cost that you're sorta glossing over. The work you're doing (and the speed you're capable of doing it in) means you've had a non-negligible amount of experience. Depending on how fickle we're going to get, there's 4th costs of the tools you own allowing you to do that work. Perhaps other costs for your living situation allowing you to have a place to do such tasks.

I do my own maintenance work too. But I think it's foolish to gloss over those aspects of the work. They don't come for free.

There's something else odd going on. I think the easiest answer is the company is just poorly run but considering everything we've seen from both sides of the issue:

- Reddit believes costs to maintain their API are on the level of charging 3rd party apps upwards of $20MM each. A small handful of 3rd party apps between iOS/Android would be netting them $100MM annually? Does it really cost them that much to run the API? There's a lot of questions regarding those figures by themselves

- Reluctance to come up with alternative offerings. If this is about 3rd party apps not serving ads, why is the most obvious solution not just "3rd party app usage must be through premium accounts"?

- An absolute refusal to recognize how their site operates and the value of the free labour given to them through moderation and content generation. This one is where I'm most in the dark. They must've run the metrics to see that even if losing a sizable portion of the 3rd party users they won't be in a bad place. I'm assuming they're prepared to rework their moderation structure in its entirety? But at the same time, they seem unable to devlop/publish meaningful features that have been requested by those who know the site best

My gut reaction is the IPO is coming. They want short term numbers bump to justify these actions and damn the long term. A mindset of solve the immediate problem, ignore the rest and figure it out later. Most people see this as a bad strategy, they seem to believe in it...but have they had a good track record to date showing they're capable of making these measured decisions? I think not.

It's interesting to watch & experience at least.

I think one looking for alternatives needs to understand what they're hoping to gain from other resources.

If you want low effort jokes, or memes, the most likely outcome is you're going to migrate to where the most people are. Similar to how some subreddits overtook others in popularity, there'll be a federated instance that "wins". We're sort of in a new frontiers phase where people are scrambling to find new homes and there'll be a lot of duplication until winners and losers are settled.

But in the end, if good memes come out of the most populous place. Reddit will probably just simply be the best you have. Anything else will be second rate. Perhaps 'the best' will make its rounds through all sites as reposts just as 9Gag stuff and Imgur stuff finds its way to Reddit or Twitter, or TikTok.

But back to the main point. Lemmy/kbin/etc likely will never be reddit. I'm okay with that because I found most value in smaller niche communities (similar to how HackerNews scratches an itch that Reddit never could). I think there'll be plenty of opportunity to drop my reddit habits as I find moderately active NetSec/Programming/Networking/etc. communities on Lemmy. I'll keep Imgur for lazy image humor, and probably nod to reddit for catching the beat on my local community/provincial subs.

I still see it perhaps as a positive for myself. Loosening my Reddit addiction will be healthy long term. I'll be forced to make decisions on what topics matter to me and how I'll consume them instead of blindly marching through reddit on another doomscroll because it was convenient.

Blogs are parallel to research papers in a sense. They're useless without peer review unless you're already intimately familiar with the source material and able to critically evaluate the contents.

So Blogs are more useful when they're aggregated through a site like Reddit, where users have already done the vetting on whether the linked page is valuable. Reddit comments are invaluable to pages by adding additional context. Noting when the content has become dated or inaccurate due to external changes, etc. Sites like Brian Kreb's blog are the exception as the author is well known and respected. But the general blogs? It takes time to earn that community respect.

Then beyond that, how often have you gone on the hunt for something obscure only to run across 3 or more blog pages which look entirely unique, but have the exact same article pasted to them? It isn't that the contents are bad/wrong/inaccurate, but rather who do you trust? How much effort are you going to put in to finding which blog was the original, written by the expert and which ones are bots copying the info?

I don't think many people have much of an issue with it at the base level. Creating threads to drive engagement on hypothetical issues, made up humor/ragebait stories, etc. are pretty harmless in itself.

But when the actions are done in an attempt to trick individuals weighing financial incentives? That becomes much more murky. Had they bootstrapped these communities prior to the IPO filing? Fine. After the spotlight is on them to prove organic growth for the IPO? Murky.

That goes for practically any low-barrier-to-entry common interest topic.

Reddit lives and dies by the moderation. Communities with very strict moderation often get a lot of flack for not allowing the low effort drivel. Communities that "let the votes decide" are overrun with low effort memes, waves of "DAE <super common opinion>?" and repost after repost. Often times to have a truly unique and useful experience with the site you need to manage your own content moderation with blocks/filters/etc. This is why there's a lot of inertia to the 3rd party apps and plugins we use, because seeing those as on the chopping block means we're going back to a wild forest of low effort dredge.

If Reddit Is Fun, RES, or old. gets killed off I'm going to leave the site. It will absolutely be difficult, but it will be for the best. I avoid certain subs that are massively popular because they mostly play on the ragebait engagement or outright ignore core issues solved by the moderation. Having that put back to the forefront of my experience will feel like re-opening Facebook or signing up for Twitter. No thanks.

I have a friend who basically kickstarted his entire career by boosting posts on Reddit with bots he ran. I won't knock his talent, he's a brilliant engineer, but I 100% believe he's gotten where his is in life because he knows how to play the game properly. Heck, getting his indie business off the ground is only one of several examples he's admitted to me of using Tor networks and bots to boost his ranking in competitions or sites like reddit/twitter/etc.