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.
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.
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.
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.
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.
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.
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.
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'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?
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.
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.
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 :)
I do see my comment in context of using SQL for your Queries while your main focus as a Developer (like for java etc.) is not writing SQLs as your main priority.
Also it does state 'we can do better than sql' and i do have a certain amount of practical experience to state my personal opinion that i do not think that their approach is actually better than sql.
They did show quite avg examples; Examples which are leading me to assume certain points like where they would like to replace sql.
I'm not doing SQL every day but i have rarely any issues with it.
Do we really need to do better than SQL? I don't think so and i also don't think that the chosen new syntax is better.
At the end of the day, most critical is not the language but understanding how it works to optimize indezes etc. If you are only able to write simple SQL because you are not good in SQL/Databases, you will not optimize your Database independently from the language.
If you are good in SQL/Databases, you (or at least i) do not care about syntax details; You just look it up, and get acquainted to your specific underlying Database.
I just wanna write a few small lines of a shell script which downloads stuff;
It is very very stupid through what loops you hvae to jump to do this with curl and bash script in a good way including readability and error handling.
Is a perl script really better?
Perl 5,6 and 7 did not make it very sane to me, managing and installing and working with perl is also less trivial then having a shell like bash, sh or dash available to you.
Something inbetween bash and go is missing, i like the approach of crush. I think thats the biggest misstake happening in bash: playing around with strings and auto expansion and substition etc. Its weird, its error prone, it doesn't have a proper clean well defined ecosysem.
Also there are plenty of non google service based android phones and alternatives.
You can also use Linux on most Android Phones as well.
A Pi Zero or a Pi in general is very very far away from what a Android based Phone does and can do. Alone for Security.
What is your thought why you would assume a lot of people could get beind this setup? I do like the project, its nice though but for me probably for different reasons then for you.
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...