A little more on the original topic: www.addconnectionssettlement.com
Post by Alan MooreBGB,
Thanks for your response, see mine inline below...
Post by Alan MoorePaul,
I think you are spot on - the software industry (and many others) are
driven singularly by profit (marketing spin and self delusion aside) with
little consideration for being thorough and doing right by the end user.
There are a number of reasons for how we got here but clearly things need
to change. This is the reason I'm subscribed to this list and why I work
nights and weekends trying to figure out a better way (I'd do it as a day
job but the job I want doesn't exist ... yet.)
but, this is assuming most people care about much of anything beyond profit.
IME, often they do not, so everything from the level of businesses down
to interpersonal relationships is driven mostly by money, profit, or
sometimes other goals (interpersonal gets more complicated, but mostly
boils down to each person using others as stepping stones to try to get
whatever it is they hope to accomplish, typically money or possessions or
similar, or a line of communication to help them leverage benefits from
those higher up the chain...).
That is probably true for many people. However, there is a substantial
number of others that realize that working for mutual benefit can result in
greater gains than if they went it alone. There are a lot of engineers
willing to give away code for free, usually in return for other less
tangible benefits, usually having to do with reputation or simply because
they enjoy it.
Human motivation is varied and complicated as you pointed out. I don't
expect a majority of engineers will want to work as a cooperative but I
think a non-insignificant number of us will. We don't need very many to be
effective in putting together a profitable venture. Beyond financial gains
cooperative principles promote fairness, transparency and sustainable
development practices. Many people don't know this but cooperatives are one
of the most stable forms of enterprise outside of governments and
institutions and often outlive their "competitive" counterparts. Instead of
profits being siphoned off to VC investors, as would happen with a typical
startup, much of the generated income can go back into further development.
Post by Alan Moorefor a company, the main use of end-users is in terms of getting them to
give them money.
the best-interests of the user are secondary, mostly in terms of how it
may influence the users' actions.
Yes, most enterprises are maximally profit driven but that doesn't mean
there aren't alternatives. There is value in the aligning with user's
interests and not everything needs to be a race to the bottom.
Post by Alan Moorewhile it doesn't seem to be "ideal" by any means, as far as I can tell,
this is basically how it works.
That is probably more true in non-differentiated markets and products.
However, software tends towards monopoly so I think it resides at the other
end of the spectrum.
Post by Alan Moorea person who doesn't have much, or have much to offer, is effectively
seen as useless and is pushed aside.
How sad. I don't see things that way but I guess everyone has their own
experience.
Post by Alan MooreSome of these changes will come from technical innovations and rethinking
basic assumptions about computing, programming languages, storage,
security, etc. but I think fundamental positive changes will only come from
a cultural shift. We need an alternative to the perpetually late projects,
the underfunded projects and the projects that are designed primarily to
exploit the end user for profit rather than making their needs and concerns
a priority. We need to be as innovative in our approach to cultural issues
as we are to the technical side of things.
well, it is basically like you give the people a slot machine. they pull
the arm hoping for an outpouring of quarters, but the provider has little
reason to care beyond that the user has on-average more input of quarters
than they receive back out.
can society be changed? I really don't know.
Maybe I'm tilting at windmills but in any case I'm having fun doing it :-)
Post by Alan Moorein any case, things need to be considered carefully, as unintended
consequences or disastrous results are also something to be avoided, and
the application of a policy more often goes where it wants to go rather
than where the creators intended it to go.
Agreed - I think our culture has gone too far down the dog-eat-dog path
and I think many are craving a sense of agency in their work. I think
people want more of a say in the direction their company takes and don't
want to be just a cog in someone else's machine. IMHO cooperatives offer
employment that is democratically owned and operated rather than being a
strict hierarchy with just a few "winners" at the top.
Post by Alan MooreMy contribution to bring about a cultural shift is to promote the use of
the cooperative business model as an organizing principle for software
development (see: coopsource.org.) If we can organize ourselves more
effectively developers will be driven less by quarterly profits and more by
engaging with our end users using sustainable business practices that serve
all of us.
dunno.
I have pretty much resorted to doing programming almost solely as a hobby
at this point (little chance of me making any money off it).
I've been doing it for a very long time and am able to find work. I don't
know where you live but it could be a geographic thing - I've lived and
worked in the SF Bay Area since junior high so I there are a lot of jobs
there. YMMV.
Post by Alan Moorethe rest is mostly special-purpose stuff, like code related to some of my
recent electronics and robotics projects (I have been working some on
things like building small robots and other things, have built 3-phase
inverters/VFDs for running 3-phase induction motors, ...).
some of this is things like real-time signal processing on "moderately"
limited hardware (such as a Raspberry Pi), as well as some stuff using
hardware a fair bit more limited (8 or 16 bit microcontrollers).
comparably, you don't exactly have lots of resources on an 8/16 bit MCU.
Sounds like you have some mad programming skills to me. I love that stuff
too but don't get enough time to play with them lately... sigh.
Post by Alan Moorehowever, it tends to have rather little real "general purpose" appeal,
* mostly so that I can do green-thread switching at 250kHz to 1MHz, and
have predictable latency.
* the normal Linux OS scheduler falls well short of the latency
requirements.
I had for a little while worked on starting to port a BGBScript (loosely
based on ActionScript, C, and C#) variant to run in this VM, but this has
been slow as it is a lower priority. the performance and latency
requirements make things a little more complicated (as well as having to
pay attention to memory footprint, as the ARM SoC's don't exactly have a
whole lot of RAM).
unlike the PC version, this version would also not use a GC, instead
using mostly a mix of statically-determined lifetime analysis, RAII, and
manual new/delete. it would retain optional dynamic classes and dynamic
typing, as well as a restricted form of the delegate-scope model (only
statically visible delegation paths would be used).
My day job is doing "embedded systems" programming but it isn't anything
like it used to be. There is always the tradeoff of development time (e.g.
time to market) and making guarantees about performance and reliability,
etc. HW is getting so powerful (and cheap) that it is often better to spend
more money on a better processor than spend time/effort on writing
efficient code...
Post by Alan Moorelikewise goes for a newer video codec intended to run on the same
hardware (for encoding and streaming video from an image sensor, it can
encode 480p30 in real-time on a 700MHz ARM11). it focuses a fair bit on
encoder speed, while also trying to have decent video quality and bitrate.
it is based on VQ technology rather than DCT. likewise, it is designed to
be used with the encoder encoding and streaming the image in small pieces
(over UDP over WiFi) rather than sending whole frames at a time.
it also encodes reasonably quickly on a desktop PC, so is fairly useable
for screen capture (*).
it doesn't seem to be quite as fast as some of my other designs, but it
does get better bitrate and image quality.
*: most of the "standard" options don't really work acceptably on my PC,
generally because they either kill the HDD or the CPU, or both. I also like
capturing my desktop at full resolution (1680x1050 at 30fps).
I have observed though that pretty much no one cares.
Except for those who work in the professional video industry - which I do.
Contact me offline and maybe we can work something out.
Post by Alan MooreWe have a long way to go to seize control of our destiny instead of
leaving it to the tech giants in our industry. I'm in this for the long
haul - fifteen years ago I promised myself that I would take a slow and
deliberate path to building my vision. Several personal setbacks have
slowed my progress but in the end the timing couldn't be better. Growing
dissatisfaction with the status quo and limitations of Open Source
"business models" are becoming apparent. We need alternatives, we need to
get organized and we need software to stand on it's merits, not on how much
advertising it can sell. I'm trying to provide at least one edge/corner
piece to help solve this complicated puzzle. It will take time and patience
but it is important work.
yeah.
it is like compilers and video-codecs, pretty much everyone sees them as
magic black boxes, they don't know or care how they work.
those who do know, can't see them as applicable to any use-cases outside
the narrowly defined niches the mainstream options fill (or see it as
trying to ram the other use-case into an established niche).
like, what are technically the bests option for something like YouTube,
are not necessarily the best options for remotely controlling a robot.
I think robotics are finally going to start becoming both useful and
mainstream. You may find your interests will become more and more relevant
in the coming years.
I'm optimistic about the future of programming but I think we need to
change a lot about how we go about developing software. We need to change a
lot of our basic operating assumptions and practices if we are to scale to
meet the demands that will be placed on systems going forward, especially
in the areas of trust and security.
Take care.
Alan
_______________________________________________
Fonc mailing list
http://mailman.vpri.org/mailman/listinfo/fonc_mailman.vpri.org