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

People have to realize, that software is not done when written.

Software makes the fabric between everything in our lifes. It brought us tones of innovation; It is one of the biggest enabler, innovation drivers and tool we have. It is one of the complexest and cheapest tools we have.

You know what happens with software which is stoped being worked on?

Very old, unflexible Cobolt Software on Mainframe systems in banking systems. Guess why your bank is so antiinnovation?

Security holes

'Legacy hell'

We just need to do less Software and better Software.


People realize this, especially on HN. The post is referring to deprecations. You can patch security vulnerabilities and move a product forward without deprecations. Google does it well with Go.


Deprecation is too kind of a word. Traditionally deprecated means that it is no longer a best practice/canonical. It's nice to see deprecated flags when building new code because you know you found an out of date bit of documentation and you should look at what may be a better approach.

Deprecated APIs, functions, etc, in many orgs hang around forever. They might not be ideal, but they still work for code written before (or even code written after that might have some perverse reason).

Google (outside of Android) doesn't deprecate, they rip it out. It makes things easier for them, as this post details at length, but it makes it harder for the rest of the universe.


Until Go is deprecated in favor of Kotlin (as Kotlin is experimenting with server-side)


Its the same thing.

Versioning and backwards compatibility costs a ton of money and blocks your innovation.

Legacy hell comes often enough also from dependencies you can't get rid of anymore...


Yeah 'ethical engineers'.

They exists don't get me wrong but you know plenty of engineers don't care or bother with more simple things like recycling, keeping themselfs in shape, working on their own mental health etc. etc.

There are plenty fish in the ocean which do not care or just never thought about the implications.


When i read comments here i'm wondering how and why people are either for or against intel?

IF i need to upgrade, i will check the current situation and will buy the best cpu in comparison to my needs and price.

If it means that i need tons of core because of my workload i might choose a threadripper. Do i need to compile often and i know a specific intel cpu will save me ton of time waiting but it costs more? Fine.

Do i wanna play games? lets see what i can get for ~150$ bucks range.

/shrug


When you're a business, you can't make turn-on-a-dime decisions like that. You commit to business-equipment purchase/leasing/upgrade agreements with a particular OEM; who in turn usually commits (for economy-of-scale reasons) to one CPU supplier or the other. So, if you're stuck with an OEM who's in turn stuck with "the wrong" CPU supplier (right now Intel), that can make you cross, at the potential performance that's being left on the table.

But even for the individual, unless you're buying sealed non-upgradable appliance devices, you've still gotta consider the fact that in building a PC, you're choosing a motherboard socket, and thus potentially making it cheap to upgrade to later-gen CPUs that stay compatible with that socket.

In that mindset, it makes sense to be happy with the CPU maker you're "stuck with" for a while when they provide good, high-ROI upgrade options; and to be angry with them when they don't.


>in building a PC, you're choosing a motherboard socket, and thus potentially making it cheap to upgrade to later-gen CPUs that stay compatible with that socket.

I'm curious how common it is for people to upgrade just the CPU or motherboard.

I tend to upgrade / replace my personal PC's every 4-6 years. At that pace, it's always seemed worthwhile to upgrade both motherboard and CPU at the same time, because of platform improvements. But maybe I'm an outlier.


One oft-stated reasoning is that people who currently don't have much money (e.g. college students) can build a PC with a motherboard socket targeted by both low-end and high-end CPUs; and then select, for now, the (cheap) low-end CPU. Then, a few years later, when they're working and have more money, they can replace it with the high-end version.

I'm not sure how common this actually is in practice, but it seems logical.


it's great if you decide to upgrade your CPU a couple years later and you motherboard is still compatible, but imo this is not a good reason to choose a particular platform in the first place. you never know when the CPU manufacturer is going to drop support for that chipset. even if the new CPU does support the old chipset, you might be sacrificing some new features or leaving some performance on the table. plus if I'm going to buy a high-end cpu, I'd like to pair it with a high quality power delivery also, which you probably aren't going to find in a college student's budget build.


AMD is pretty good about sticking with motherboard sockets and maintaining firmware compatibility. The motherboard I got with my 1st generation Ryzen is handling my 3rd generation chip just fine, though admittedly I'm missing out on PCIe 4.


They usually don't drop support for chipsets. They move to a new socket.


Probably not too common. The only people I‘ve seen do this were enthusiasts that had high end gaming rigs and spent a lot of money on their computers. It probably would’ve been cheaper for them to replace everything every 3-4 years. But it‘s their hobby and who am I to judge?


I had a time in my life where the price of a motherboard mattered. But you can't tell me, that most comments here on HN are from poor students which will not be able to afford a new CPU+Mainboard after 4 years or so.

I have not had this issue to be honest, i just switch both if required. Especially with PCI4 etc. its often enough critical to upgrade after a while and i did sell my old motherboard and cpu combi. That should reduce the 'in my opinion overstated risk' of wasting your old mainboard.


There's no one particular reason, I think, it's just yet another thing to show brand loyalty for.

I'm fairly certain every single person has used or currently uses an Intel powered machine, so choosing AMD has a bit of caché to it (ha ha get it), because you're supporting an underdog, and as it so happens, that underdog has been kicking Intel's butt as of late.


Asides from 486 to Pentium III, I've been using AMD since the K7. Intel has been the 800lb gorilla with lots of questionable anti competitive business practices. For the most part Intel already has market dominance and better performance so engaging in such to such underhanded behavior to secure their position doesn't sit well with me.

I'm also an ATi fan and since they merged with AMD it doubles me down on loyalty.

With Ryzen and Vega/Navi it's a lot easier to recommend AMD products. While they might not have the peak absolute performance their value is much better than the other alternatives. Unlike when AMD went with the Bulldozer architecture, I always died a little inside when I had to recommended an Intel Core i3/i5 over AMD's offerings.


That sounds like a very small setup you run with very limited requirements if you run this successful.

The benefits they are mentioning are theoretical for you and i personally have not worked in a professional env where VPSs and rsync would be enough at all.


You sound exactly like my friends. Except that they know that my systems are several orders of magnitude bigger then theirs.

So they don't argue with the present "This cannot work" but with the future "This will lead to catastrophic failure at some point!".

This has been going on for years now.


What is your rough setup then?


> That sounds like a very small setup you run with very limited requirements if you run this successful.

No, not necessarily. Computers are fast, and if you don't add complexity until you need it, you can do a hell of a lot with a half-decent VPS and some rsyncing.

For context: a couple of years ago I ran a website that was in the Alexa top 1K for a while (back when that was still relevant), and that was heavily visited and used for the time during which it was relevant. If you worked at any news organization anywhere, it was probably on your daily list to check.

Yet it was relatively crappy PHP, not even very optimized aside from some very naive memcache caching, and ran off a random VPS with 2GB of RAM - and that included the database. The biggest challenge wasn't scaling or deployment processes, but fighting off constant DDoS attacks.

Of course, the key difference between that deployment and a typical startup deployment is that it wasn't built like a startup. It wasn't "measuring engagement", it wasn't doing "big data", it wasn't collecting data for targeted advertising - it just did one thing and it did it well, with the only complexity involved being that which was actually necessary for that purpose.

Over the years I've looked at a lot of complex "devops" setups for other people, and almost without exception the vast majority of the resource requirements and complexities originate from data collection that approaches kleptomania, and their choice of tooling - which ostensibly was chosen to better handle complexity. It's just a self-fulfilling prophecy that way. Most people don't actually have this degree of complexity to manage.

That's not to say that there's no organizations or projects at all that would benefit from automated cluster orchestration (with or without containers). But it's very much a "prove that you need it" kind of thing, not a "you need it unless..." kind of thing.

(I do think that there's inherent value in deterministic deployments. But that's separate from whether you need multi-system orchestration tooling, it can be achieved without containers, and even then the deployment process should be trivial enough to make it worth your while.)

Edit: To be clear, this is not an argument to prioritize performance over everything else or avoid dependencies/tools, at all. Just an argument to not add moving parts that you don't actually need. For anything you add, you should be able to answer "what concrete problem does this solve for me, and why is it worth it?".


These things can all be managed an automated using ansible/salt/etc -- containers just add another layer of abstraction to manage/maintain/understand/etc.


I'm not sure if you have seen a proper build and maintained automated e2e lifecycle.

You write code, you push it, 5 Minutes later it is rolling out, tested, with health checks and health metrics.

Your infrastructure itself is keeping itself up to date (nightly image builds, e2e tests etc.)

It just works and runs. It doesn't make the same mistake twice, it doesn't need an expert to be used.

I'm not saying its for everyone! Put three/four VMs on AWS, add a managed database and you are good to go with your ansible. Use a Jira plugin to create reaccuring Tickets for doing your maintenance and that should work fine.

Nonethless, based on your 'random list of things' it does sound like you are not doing it right.

There is something very wrong if you really think its critical for you to be able to 'hot fix' aka playing hero by jumping on your vms and hacking around. IF you only one single server for your production env. there is no risk of forgetting a server to patch but there is still the issue of forgetting to backport it (which is probably the wrong term if you don't hotfix your release branch)

Most mistakes i do, are mistakes i do because i was able to do them.

And that might sound unfortunate but there is a feeling of trust for your setup. At least i get that feeling and i get that through automatisation. Knowing and seeing the deployprocess just working day in day out. Knowing that my monitoring and alerting is setup properly, knowing that the systems keep themselfs up to date, knowing there are proper tests in place.


> You write code, you push it, 5 Minutes later it is rolling out, tested, with health checks and health metrics.

Yep, I have that. It's more like 15 minutes than 5 for me, but this process has nothing to do with containers - it can be done in the same way without containers.


> It just works and runs. It doesn't make the same mistake twice, it doesn't need an expert to be used.

Except when you misconfigure something on friday night and it does the same mistake 100 times per hour until someone notices it.


This will happen once and then there will be a test for it.

My automated system will only get more resiliant over time. This is a benefit for the system itself.

Of course when you do it manually, you will learn and gain experience but thats only for YOU. It does not just get transfered to your colleagues and when you are on holiday and shit hits the fan, it will not help.

My biggest reason why i like automatisation so much is: the company becomes less reliant on me.

It is the same mechanism why the industry is getting more computer logic: Machines are complicated and you need to train people. Make it easier for people to 'just use' and you have more people available which you need to train less.


That's why there is a don't deploy on Friday rule.


Yeah, I don't think that's a new problem with containers.


I stoped 2 webshops which basically sell expensive stuff 20% off by wire transfer (bank transfer?!) which then never send the goods of course!

I did the following:

- I found out where it was hosted and send them an email explaining them why and how that shop is a scam

- I found out where they hosted the domain and wrote the registrar an abuse email

- I wrote an email to the banks where the bank accounts where active

The scammer had a webchat module active and he/she did wrote back to me, nothing came out through that, nonetheless:

next day, both webshops were gone due to being taken offline from the hosters.

I do believe, that they do have a chance because literaly no one cares. I have seen mentioning of one of those two shops older then 6 month. I pissed at them with very little effort in a very short time.

I do hope i helped out.


Abuse email/report to the registrar is also my goto. Usually results in a quick response


You'll get a response but it'll always be a polite "fuck off" unless you have some sort of actual authority (are you the trademark holder? are you LE? do you have a court order?). You'll have better luck contacting the hosting provider because they're actually responsible for the content.


I attended a meetup at our local registrar (SIDN) where they explained how data analysts on their payroll detect such fake webshops and how they then actively block those domains on DNS and registrar level.


I'm assuming you don't mean "employee payroll" right?


English is not my native language. I meant "they work for SIDN at SIDN". Employees.


I like to think it helped out, but at the same time, these people are professionals and will have automation to generate new instances and scam campaigns easily. At least it should be more difficult for them to set up new bank accounts though, they need ID for that, and / or a network of mules, and those are finite resources.


I think the bank thing is done through students quite often: "Hey, I can't get a bank account as I'm a refugee fleeing a war, please help by receiving £5000 cash, we'll give you £100. Say it's a gift from your Aunty to buy a car with."

I've seen reports of this in the UK at least, maybe they managed to stop it.


At least in the US the people who accept the offer can be charged as money mules.


I think that's true in UK too, but often the people aren't aware how wrong what they're doing is.


I'm not sure what your background is but your analysis sounds quite strong opiniated.

There are examples in law that 'work' can be protected; Just because you don't have the copyright doesn't mean that someone else is just allowed to use your work results.

Apparently in this specific case its not protected.


Just because someone says 'you will get RST when you do x' doesn't mean its true.

I'm touch typing now for over 18 years, quite fast, basically started with touch typing and i don't have issues.

There are plenty of alternative keyboards out there which will allow you to keep touch typing = fast and more ergonomic.

Alone the fact, that you need to look down to find your keys is weird to me. How do you correct your text while typing? Looking up and down all the time?


Personally I never have any issue with using keyboard. It's the excessive usage of mouse that is detrimental for my (right) hand (not just the wrist, the fingers hurt more from clicking and using scroll wheel too much.)


I got slight issues with my trackpad. I have not figured out a proper pattern though.

It is still rare.


I'm not a big fan of people just doing what the ticket states.

Quality doesn't start when a customer comes up with a simple fix/enhancement. Quality comes from people with experience who knows exactly what needs to be done even if it is not stated in a Ticket.

- Security - Maintainability - Usability - Clarity - Performance

You are the expert, NOT your PO. Your PO tells you what he/she needs, you tell them what you HAVE to do.

And personally, i have never heard anyone complaining that someone else did a better job on a ticket than the ticket stated.


100% Agree - I am the PO on my product. I was the original coder, I know this code better than any of the newer devs.

And yet they bring so many great ideas to the table that make the product far better than what I wrote up in a story. They make the code better, they ask great questions, they propose changes to designs and features... and we then end up with a much stronger product. The stakeholders love the results we are coming up with, and I'm thrilled with where the product is going, and the devs enjoy contributing at multiple levels and having some autonomy.


I agree, the teams that cause the biggest messes are, in my experience, the ones that passively receive requirements from POs, without thinking about the conceptual integrity of their domain. However, complaints about stories taking “too long” sometimes are complaints that people are trying to do a better job on a story than specified.


Is this not the norm?

I haven't been working for long, but the product manager at my job just tells us the features and the we're free to build it however we decide to.


Highly depends on the skill level and experience of your overall team.

There are plenty of people writing code in small companies who just never seen or heard it or never experienced the advantage of doing it good/better.

They get a task to do and thats what they gonna do.

There are also Teams in the wild where people get pushed to over a longer time of period because people gave up on them but you don't wanna be the bad guy firing them and there is still an it expert shortage and you might find something new for them to do, you know, people where you are wondering how they earn a paycheck.

And i have seen plenty of experts who just don't have the experience to see certain issues.

Good example are things like: Mandatory Code review (for shared ownership, for quality), taking metrics serious (yes messure what you do), proper CI/CD (no do not skip breaking unit tests...) etc.

I believe, one of my most critical skill for companies is making sure those things are in place or become good. It feels weird to be honest, that those things are so critical and still are not lived as you would assume, or at least i do.


yes and i'm always looking at HN Entries which show the next file upload etc. and think 'puh holy shit they are fearless' because thats why i'm not building something like this.

I would create a company to have legal seperation for my private assets, i would use a ton of mechnism upfront to make sure i do my best to not support childporn and stuff and when i have analyzed how much work the proper way is, i will just stop thinking about it :)


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

Search: