AstonJ

AstonJ

What needs fixing in the digital sphere?

What do you think needs fixing in the digital / computer science sphere?

Most Liked

Korbin73

Korbin73

Software languages as a whole. Being a developer this may sound strange to say because I obviously love building software, but. I have been doing this for 20 years and while I would like to say a lot has changed it really doesn’t seem like it. Just looking at the history of languages, the timeline of events feels as though we have made very little progress. The summary of the timeline seems as though it goes like this:

  1. Lisp was created: What a HUGE breakthrough. It was a language with garbage collector, based on lambda calculus which basically meant that it had a 50 year history before it’s invention. And what’s the sad part… well lisp was and still is the only language that really follows the “code is data” tenet which pretty much makes it more like building material where you can change the language to meet your needs. This is lost in most languages, and certainly any language created by a vendor makes extension insanely hard.
  2. Smalltalk: Another big breakthrough for it’s time. OO was truly manifested as Alan Kay’s vision. And it was a completly interactive environment.
  3. C++: It was C with classes bases on the misunderstanding of what OO means when Alan Kay coined the term LOL. Now, pretty much every OO curly brace language has a strong influence from a language that uses a construct that was misunderstood.
  4. Javacript, C#, Java and pretty much every popular language used today: Brandon Eich was supposed to build javascript based on scheme until it was hijacked and made into what it is today. C#, Java, and many other curly braced language OO language language was pretty much recommended not to use inheritance LOL. The biggest reason to use the language, is now not the preferred way to program. So we are right back to the original paradigm of lisp (functional) in the 1960s of functions separate from data with modules.

Ok, I got a bit too long-winded. But, over the last 60 years we have seen very little progress in languages. One would even argue that we spent the last 3 decades validating that the misunderstood OO paradigm didn’t really meet our needs. What I want:

  1. Declarative languages - I shouldn’t have to tell the computer how to do it, just what to do
  2. Interactivity - I write something and can get immediate feed data to it like SmallTalk could (or the modern day repl) or instantly see the UI update as a I build it.
  3. Extensibility - I waited 15 years for certain features to be added to C#, and finally just moved to a different language because the language doesn’t provide an accessible way to extend it.
    While there are languages that fit some or most of this criteria, the ones that do aren’t mainstream.
Korbin73

Korbin73

Hah, unison is the perfect example of hitting all those points that I touched on that I want (declarative, interactive, extensibiltiy, etc). However, widespread adoption for a language that started as a research language has only happen once, Python. But hopefully, the expectations that I want in mainstream languages will be met before I retire in 20 years :stuck_out_tongue:

AstonJ

AstonJ

IMAGES!!!

I hope one day photographs can be easily traced back to the source - helping prevent identify thieves from being able to take other people’s photos or media outlets using other people’s images without their consent, etc.

Perhaps the creators of Shazam have some thoughts!

Where Next?

Popular General Dev topics Top

AstonJ
Which screen resolutions do you frequently use? Note: not the resolution the display is capable of mind, but the resolution you’re using...
New
AstonJ
If so, what was the last blog post you wrote… and if not, why not?
New
siddhant3030
I’m thinking of buying a monitor that I can rotate to use as a vertical monitor? Also, I want to know if someone is using it for program...
New
New
AstonJ
Great paper by Igor Kopestenski on Erlang and GRiSP: Erlang as an Enabling Technology for Resilient General-Purpose Applications on Edge ...
New
Exadra37
Kubernetes is everywhere. Transactional apps, video streaming services and machine learning workloads are finding a home on this ever-gro...
New
AstonJ
I’ve been watching Prag Dave’s Elixir course and I noticed he uses tree: Tree is a recursive directory listing program that produces a ...
New
Exadra37
Your users of the two forums are spread across the world, thus I am curious how did you solved it?
New
DevotionGeo
Hi everyone! I bought this domain name when I was planning to create a website like ElixirSchool.com, but that didn’t ever happen. Now ...
New
harwind
I’m working on a C++ program where I need to convert a string containing a numeric value into an integer. I want to ensure that this conv...
New

Other popular topics Top

PragmaticBookshelf
Stop developing web apps with yesterday’s tools. Today, developers are increasingly adopting Clojure as a web-development platform. See f...
New
PragmaticBookshelf
Brace yourself for a fun challenge: build a photorealistic 3D renderer from scratch! In just a couple of weeks, build a ray tracer that r...
New
PragmaticBookshelf
Free and open source software is the default choice for the technologies that run our world, and it’s built and maintained by people like...
New
PragmaticBookshelf
Learn from the award-winning programming series that inspired the Elixir language, and go on a step-by-step journey through the most impo...
New
PragmaticBookshelf
Rust is an exciting new programming language combining the power of C with memory safety, fearless concurrency, and productivity boosters...
New
PragmaticBookshelf
Learn different ways of writing concurrent code in Elixir and increase your application's performance, without sacrificing scalability or...
New
PragmaticBookshelf
Create efficient, elegant software tests in pytest, Python's most powerful testing framework. Brian Okken @brianokken Edited by Kat...
New
New
First poster: AstonJ
Jan | Rethink the Computer. Jan turns your computer into an AI machine by running LLMs locally on your computer. It’s a privacy-focus, l...
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New