Live data from Hacker News

Programming breakthroughs we need

yoyo-code.com

71–80 of 511 posts

Re: Programming breakthroughs we need

#71

Earlier quoted context omitted.

That’s funny because I feel like my day became cleaning up those kinds of projects as their countless dependencies rot. It feels anything but productive.

What is your alternative then? Vendored-in dependencies with their ossified security vulnerabilities? Or figuring out homegrown code of dubious quality for the functionality that is not core business of the company/product?

Nothing so dramatic. The alternative is judicious inclusion of dependencies rooted in thoughtful, experienced engineering.

Robust, comprehensive libraries from reliable vendors can provide a lot of value and are slow to rot. These can be anticipated and added early so that they’re made good use of and can become the first tool to reach for before adding other dependencies. Think React, lodash, QT, boost, etc.

Meanwhile, I acknowledge that most other packages and repos are of far more dubious quality than anything my team would write, have no accountability to my team or stakeholders, receive few/no code reviews when added or updated, introduce conflicting style/semantic conventions, and generally expand the surface area for bugs and vulnerabilities by including many lines of code that have no relevance to the project.

There are no strict rules, but these are the sort of considerations that weigh in.

Re: Programming breakthroughs we need

#72
post #9

Eh, unfortunately the one programming breakthrough the world actually needs is one that would drastically change, and perhaps harm, most of the people around here. We need more "Excels." More and better tools that let "regular" people program.

I'm not going to argue whether the 'world actually needs' that, or if people mostly, actually want that, or if, since excel is already there if you want it, you probably don't have to write, sell or build any more low code tools. ...because, although I could argue about those points, it's fundamentally unrelated to the OP, and issue that programming is hard, and, for a very long time, no one has really had any idea h…

>Is the future dynamic languages / high level specifications that are AI-transformed into typed verbose languages like C/Rust/whatever and then compiled?

How is that different from the present? Why are these "AI-transformations" different from what a compiler can do?

Re: Programming breakthroughs we need

#73
post #9

Eh, unfortunately the one programming breakthrough the world actually needs is one that would drastically change, and perhaps harm, most of the people around here. We need more "Excels." More and better tools that let "regular" people program.

This is a good take, but easy to misunderstand.

The main problem is that MOST "programming" languages/environments are not made for business apps, (or for other niches, btw).

Python? Ruby? Julia? Delphi? all fail to work to make(or solve even small cases of) business apps.

By a long mile.

-----

What Excel solves, is have a barebones, half-working, unscalable, ill-suited... BUT MADE FOR help people get a "solution" for this.

Things that are more like this are Django, Jupyter notebooks, a little of Julia, FoxPro. But still are more pro-developer than pro-power-user.

Re: Programming breakthroughs we need

#74
This to me sounds like someone whose job it is to dig holes and fill them back in, asking for an improved shovel, or exercises for his lower back.

There is nothing wrong with improving shovels, exercises are great.

But why are we digging holes? :)

What does using a modern subset of C++ prevent us from achieving, that we really want? Are programming tools the bottleneck of modern society?

Do we really need 100s of computer games released each year, 1000s of funded start-ups trying to become unicorns, a 'metaverse'? Do we need all that? Or would we rather have UBI, land value tax and enough sanity in society so that women choose to have children again?

You tell me :)

If you say 'we can have both', can we really?

Re: Programming breakthroughs we need

#75
I don't see the problem with boilerplate or editing code. Even using a template with your CI/CRUD boilerplate/deploy scripts/... is no problem if you have version control, you can easily see what comes from the template, what you've changed, and reconcile with a new version of the template.

What is the problem? That not 100% of the code in the file is business logic or only exists in that project?

When I receive a letter, there is plenty of boilerplate there: addresses, greetings, sign offs, business hours... does that really get in the way of my reading the message, once I'm used to the format? The information is there if I need it, easy to ignore if I don't, and easy to copy-paste for the author who will update if needed (e.g. closed exceptionally or something).

Is the author running into a problem or just complaining about perceived inefficiencies that don't actually get in anyone's way?

Re: Programming breakthroughs we need

#76
>Also notice how writing the refactoring as a query over the model is actually not that difficult. I can imagine how I would write an SQL query like that in a few lines. On the other hand, writing an automated refactoring system in IntelliJ or VSCode sounds like a lifetime problem, and it's kinda unsolvable.

No, it really isn't unsolvable. I saw the demo for DION[1] after following a comment[2] here, and it was close enough to some ideas that I also thought were unsolvable, until I saw their demo. They made a brilliant choice, use the model to regenerate source code. This transforms the problem into something much easier to work on.

I'm an old Pascal programmer, so I did what I always do, fired up Lazarus (the Free Pascal based IDE) and started writing code.[3] It doesn't do any actual work, except for showing off the main concept. Abstract syntax tree on the left generates almost usable Pascal code on the right. Selecting code then selects the right part of the tree that generated it. I've only got a few hours into it, and it's already doing things I would have thought impossible, trivially. There's no reason you, dear reader, couldn't do the same with your own programming language.

We're at one of those points in history where 5 people invent the same thing. The future is going to be a lot better once we can directly manipulate Abstract Syntax Trees instead of source code.

  1 - https://media.handmade-seattle.com/dion-systems/   (watch the 1st video!)
  2 - https://news.ycombinator.com/item?id=32372707
  3 - https://github.com/mikewarot/treehouse

Re: Programming breakthroughs we need

#77
post #34

Great post - the one word missing, "maintenance." Most programming work is done maintaining/enhancing existing code. The greenfield work is a piece of cake by comparison. You want to do the hard stuff? Maintain existing code you're not familiar with. The problems around maintaining unfamiliar code are huge, largely unsolved, expensive and risky. There's a little branch of computer science called Program Comprehension…

I always tell my clients - the difference between writing code and maintaining it, is the difference between raising your hands and keeping them raised indefinitely.

great analogy. totally stealing this.

Re: Programming breakthroughs we need

#78
Everytime someone proposes a non-textual representation of code I cringe.

There's a reason no one single alternative has triumphed over text. And many have been proposed!

Standards are hard. Proprietary tools lock you in. Text is universal (OK, restricted to plain ASCII, which is a big deal but has already happened). You can open and modify a text file with whatever editor of your choice, the simplest possible editing tool. Some weirdos (joking) even print source code.

That reading, not modifying, is the primary operation to be done on source code is an unchangeable fact of life. You won't be able to change anything without inspecting it first, and no representation is going to save you from that -- and it's undesirable to wish for this, in fact.

Re: Programming breakthroughs we need

#79
post #69
post #2

I feel like a lot of boilerplate is a choice, that often comes from frameworks being used. I disagree with the text criticism as well. The reason we spend time thinking and reasoning about code, is not because its text format. Its because that's the job. We aren't scribes just copying books. The hard part of programming is figuring out what to do, not writing it out. Well i am sure better visualizations or something…

> I feel like a lot of boilerplate is a choice, that often comes from frameworks being used. [...] I disagree with the text criticism as well. The representation as text files is also part of what's causing the boilerplate. As an example: How would you reduce the devops and configuration boilerplate in a monorepo? In your typical JS microservice, a lot of code is not actually JS but yaml, json, terraform, etc. And it…

>In your typical JS microservice, a lot of code is not actually JS but yaml, json, terraform, etc. And it is very hard to abstract these away since a lot of tools rely on the existence of actual files.

This is a problem of your own making, though. If you don't do a microservice architecture in JS and do a modularized monolith in Go, as an example, you don't have to write any of this code.

Re: Programming breakthroughs we need

#80
post #9

Eh, unfortunately the one programming breakthrough the world actually needs is one that would drastically change, and perhaps harm, most of the people around here. We need more "Excels." More and better tools that let "regular" people program.

[deleted]
Post reply on HN