Software Disenchantment (2018)
From the OP:<p>&gt; I hope I’m not alone at this.  I hope
there are people out there who want to do
the same.  I’d appreciate if we at least
start talking about how absurdly bad our
current situation in the software industry
is.  And then we maybe figure out how to
get out.<p>Okay, I&#x27;ll respond, especially on the last
part &quot;how to get out&quot;.<p>For the problems and struggles in the OP,
I&#x27;ve seen not all of them but too many and
sympathize.  Mostly though, I don&#x27;t have
those problems, and the main reason is in
the simple, old advice in the KISS
Principle where KISS abbreviates Keep it
Simple Silly although the last <i>S</i> does
not always abbreviate <i>silly</i>.<p>In particular my startup is a Web site and
seems to avoid all of the problems in the
OP.  Some details:<p>(1) Bloated Unreliable Infrastructure?<p>My Web site is based on Microsoft&#x27;s .NET
with ASP.NET for Web pages and ADO.NET for
access to SQL Server (relational
database).  The version of .NET I&#x27;m using
is some 4.x.  So far I&#x27;ve seen essentially
no significant revisions or bugs.<p>For the software for my Web pages I just
used one of the languages that comes with
.NET.  I wanted to select between two, the
.NET version of C# and the .NET version of
Visual Basic.  As far as I can tell, both
languages are plenty good ways to get to
the .NET classes and make use of
Microsoft&#x27;s <i>managed code</i>, e.g., garbage
collection, and their CLR (common language
run time) code.  And IIRC there is a
source code translator that will convert
either language to the other one, a point
which suggests that really the two
language are deeply equivalent.<p>I&#x27;ve written some C code off and on for
20+ years; mostly I remember the remark in
the Kernighan and Ritchie book on C that
the language has an &quot;idiosyncratic syntax&quot;
or some such -- I agree.  I never could
understand the full generality of a
declaration of a function -- IIRC there is
some code in the book that helps parsing
such a statement.  I do remember that<p>i = ++j+++++k++<p>is legal; I don&#x27;t want any such code in my
startup; also my old tests showed that two
compilers gave different results.<p>I find Visual Basic to have a less
&quot;idiosyncratic syntax&quot; and a more
<i>traditional</i> syntax closer to the original
Basic and then Fortran, Algol, PL&#x2F;I,
Pascal, etc.  So, my 100,000 lines of
typing are in the .NET version of Visual
Basic (VB).<p>For my Web site, part of the code is for a
<i>server</i> process for some of the <i>applied
math</i> computing.  The file of the VB
source code is 478,396 bytes long (the
source code is awash in comments), and the
EXE version is 94,720 bytes long.  As far
as I can tell, the code loads and runs
<i>right away</i>.  Looks nicely small and fast
and not bloated or slow to me.<p>(2) A bloated IDE (integrated development
environment).<p>I have no problems at all with IDEs.  The
reason is simple:  I don&#x27;t use one.<p>Instead of an IDE, I typed all my code,
all 100,000 lines, into my favorite text
editor, KEdit.  It has a macro language,
KEXX, a version of REXX, and in that
language I&#x27;ve typed about 200 little
macros.  Some of those macros let KEdit be
plenty good enough for typing in software.<p>E.g., I have about 4000 Web pages of .NET
documentation from Microsoft&#x27;s MSDN site.
Many of the comments in my VB source code
refer to some one of those pages by having
the tree name on my computer of the HTML
file; then a simple command displays the
Web page.  When reading code and checking
the relevant documentation, that little
tool works fine.<p>After all, VB source code and HTML code
are just simple text; so are my Web site
log files, the KEXX code, Rexx language
scripting code, all the documentation I
write either in the code or in external
files (just simple text or TeX language
input), etc.  So, a good general purpose
text editor can do well.  And, &quot;Look, Ma:
I get to use the same spell checker for
all such text!&quot;  The spell checker?
ASPELL with the TeX distribution I use.
It&#x27;s terrific, really <i>smart</i>, blindingly
fast, runs in just a console window.<p>For KEdit, it seems to load and run right
away.  I just looked and saw that what
appears to be the main EXE file
KEDITW32.exe is<p>1,074,456<p>bytes long -- not so bloated.<p>(3) Windows 10 Home Edition Reliability.<p>For a move, I got an HP laptop; it came
with Windows 10 Home Edition.  I leave it
running 24 x 7. It hasn&#x27;t quit in months.
It appears that now the Microsoft updates
get applied without stopping the programs
I usually have running, e.g., KEdit, the
video player VLC, Firefox, etc.<p>Using carefully selected options for
ROBOCOPY, I do full and incremental
backups of <i>my</i> files.  I keep the
ROBOCOPY log output; that output shows the
data rate of the backup, and I have not
seen that to grow slower over time.  The
<i>disk</i> in that laptop is rotating, and
I&#x27;ve never done a de-fragmentation.  So, I
can&#x27;t complain about performance growing
slower from bloat, disk fragmentation, etc.<p>(4) Windows 7 64 bit Professional Server.<p>For a first Web server, I plugged together
a mid-tower case with an AMD FX-8350
processor, 64 bit addressing, 8 cores, 4.0
GHz standard clock speed and installed
from a legal CD and authentication code
Windows 7 64 bit Professional SP1.  As I
left that pair running 24 x 7,
occasionally it would stop with a memory
error of some kind.  I installed an
update and never again saw any
reliability problem in months of 24 x 7
operation.<p>Since then I looked into Windows 7 64 bit
updates and concluded that (i) there was a
big <i>roll-up</i> of about 2016 or some such;
(ii) since then there have been updates
and fixes monthly and cumulative since the
big roll-up, and (iii) the updates for
Windows 7 64 bits and Windows Server 2008
are the same.<p>I can believe that Windows Server 2008
long ran and still runs some of the most
important computing in the world.  So if
my Windows 7 64 bit Professional has the
same updates as Windows Server 2008, maybe
for use as a server my Windows 7
installation will be about the most
reliable major operating system in
computing so far.  Fine with me.<p>So, I am not screaming bloody murder about
operating system or software reliability.<p>(5) Smart Phone Bloat and Reliability.<p>I have no problems with smartphones if
only because I have no smartphone and
don&#x27;t want one:  When smartphones first
came out, I saw the display as way too
small and the keyboard as just absurd.
Heck, in my desktop computing I have a
quite good keyboard but would like a
better one and, of course, would like a
larger screen -- no way do I want to
retreat to an absurd keyboard and a tiny
screen.<p>Next I guessed that there would be
problems in security, bloat, reliability,
system management, documentation, and
cost.  Maybe history has confirmed some of
these guesses!<p>For a recent move, I got a $15 cell phone
and did use it a few times.  Then I junked
it.<p>My phone is just what I want -- a land
line touch tone desk set with a phone
message function from my provider.  Works
fine.  So, I have a phone with lower cost
and no problems with keyboard, screen,
security, bloat, or documentation.  Ah,
old Bell Tel built some solid hardware!<p>(6) Web Site Speed, Reliability, and
Bloat.<p>My Web site apparently has few or no
problems with speed, ....<p>Why?  The site is simple, just some very
standard HTML code sent from now old and
apparently rock solid ASP.NET.<p>Fast?  The largest Web page sends for just
400,000 bits.<p>The HTML used is so old that it should
look fine on any device anywhere in the
world with a Web browser up to date as of,
say, 10 years ago.<p>The key to all of this?  The KISS
Principle.<p>YMMV!