HACKER Q&A
📣 joddystreet

Do you feel that the software industry is stagnating?


Looking back at the industry breakthroughs, that fundamentally changed the way software is developed, to me, is the Hadoop map-reduce and HDFS.

I don't feel that some of the recent technologies - Docker, lambda, etc have contributed towards taking the CS, as a subject, or the Software, as an industry, forward.

Please share your opinion about the state of the software industry or the computer science subject, and where do you see/feel/think the field headed?


  👤 pacificenigma Accepted Answer ✓
> Please share your opinion about the state of the software industry .... where do you see/feel/think the field headed?

A world where no consumer device works without the blue sky alignment of internet availability, vendor goodwill and security uneventfulness.

This is based on trends I've observed on most (but not all) new consumer devices I've purchased of late [1]:

* Requires internet for setup (always) and operation (usually)

* Only supports wifi (ethernet ports are rare, thus no easy VLAN option)

* Vendor mobile apps required (HTTP servers are crippled if available at all)

* Depends on MDNS / SSDP / proprietary multicast for discovery

* Requires a vendor user account (and rarely supports family access)

* Sends telemetry and updates firmware without any opt-in

* Service addresses are unconfigurable (eg NTP, DNS, MQTT)

* Documentation does not publish ingress or egress ports

The pendulum has swung too far toward plug and play (at the expense of reliability, security and privacy). Perhaps someday there will be an "ethical device" self-certification brand to promote those vendors trying to be more balanced.

In the meantime I mitigate using different SSIDs, VLANs and email accounts per vendor; relaying discovery protocols across IP subnets; logging traffic and denying by default; rewriting destination IPs for certain ports like DNS and NTP; local DNS to 127.0.0.1 attempts to call home; disabling options if given etc.

[1] Solar inverters (Enphase), house batteries (Sonnen), irrigation controllers (RainMachine), speech assistants (Amazon), amplifiers (Sony and Sonos), alarm panel (Paradox), EV (Tesla), SIP ATA (Cisco), home automation controller (Hubitat)


👤 unlinked_dll
Containerization and cloud services are applications of CS, not CS. They are to CS today what typesetters were to CS of the 1970s - pretty boring to consumers, but behind the scenes created an economy where things like Unix weren't just toys or research but projects backed by capital investment.

If you take a step back and look at the technological developments that the products you use every day are built upon, there is a lot of exciting things going on.

Just off the top of my head, immutable data structures and functional paradigms are becoming increasingly useful to real products, and performant implementation of them is an exciting area of development.

There's also a lot of exciting development in programming languages themselves, and with the (hopeful) propagation of things like the Language Server Protocol developing and using new languages is getting easier, distributing them is easier, and people are more receptive to using them. There's a new language craze going on right now and it's fun to be a part of.


👤 bkq
I get the feeling that most consumer software is consolidating on a single universal platform (the web). Whereby soon the web browser will essentially the gateway through which most users do their computing.

Rob Pike wrote Systems Software Research is Irrelevant [1], which I recommend you give a read based off the question.

[1] - http://doc.cat-v.org/bell_labs/utah2000/utah2000.pdf


👤 neuroticfish
>I don't feel that some of the recent technologies - Docker, lambda, etc have contributed towards taking the CS, as a subject, or the Software, as an industry, forward.

I wouldn't except consumer software like Docker or Lambda to have any measurable impact on computer science. How much is the landscape of astronomy shaped by advancements in home telescopes?


👤 buboard
in the 90s, it was obvious that an app user interface was made by developers: tons of options, hierarchical actions, keyboard shortcuts, ergonomics optimized for speed. in 2019, it is obvious that apps are made from marketers: total lack of options, repetitive designs, optimize for cuteness and wasting time.

👤 ryacko
I think it is regressing, UI design is touchscreen first, the old text interfaces were more information dense, default font size is 16 or 18 now.

But software? Compiler writers keep finding clever ways to improve software performance. There are demos from the demoscene that have 3D graphics and run on the Commodore 64.