Recent submissions

Comment · 8 months ago
What is the quality of software that gets shipped? What is the rate of defects and security issues?

What are the support costs once the software is shipped?

Comment · 8 months ago
Sample output for a significant github repository?
Comment · 9 months ago
> With this design, it’s possible to run native SQL selects on tables with hundreds of thousands to millions of columns, with predictable (sub-second) latency when accessing a subset of columns.

What is the design?

Comment · 10 months ago
How well does this approach work with C++ source code - which is notoriously difficult to parse, given context-dependent semantics?
Comment · 10 months ago
Tieredsort seems like a good balance between performance and complexity. Enough complexity (yet still relatively simple) to get very good performance.
Comment · 11 months ago
No one had the motivation to fix it, including management. Many of the developers saw the problem as job security.
Comment · 11 months ago
Anecdote:

I consulted for a large manufacturing firm building an application to track the logical design of a very complex product.

They modeled the parts as objects. No problem.

I was stunned to see the following pattern throughout the code base:

  Class of the object

  Instance #1 of the class

  Instances 2,,n of the class
I politely asked why this pattern existed. The answer was "it's always been that way."

I tracked down the Mechanical Engineer (PhD) who designed the logical parts model. He desk was, in fact, 100 feet away from mine.

I asked him what he intended, regarding the model. He responded "Blueprint, casting mold, and manufactured parts." - which I understood immediately, having studied engineering myself.

After telling him about the misunderstanding of his model by the software team, I asked him what he was going to do about it. He responded "Nothing."

I went back to the software team to explain the misunderstanding and the solution (i.e. blueprint => metaclass, casting mold => class, and manufactured parts => instances). The uniform response was "It is too late to change it now."

The result is a broken model that was wrong for more than a decade and may still be deployed. The cost of the associated technical debt is a function of 50+ team members having to delineate instance #1 from instances 2,,n for over a decade.

N.B. Most of the software team has a BS (or higher) in computer science.

P.S. Years later, I won't go anywhere near the manufactured product.

Comment · 11 months ago
In the United States, we all used to take a required course called Civics.

We learned how government and justice worked.

Comment · 1 year ago
45% slower to run everywhere from a single binary...

I'll take that deal any day!

Comment · 1 year ago
I think that there are a few critical issues that are not being considered:

* LLMs don't understand the syntax of q (or any other programming language).

* LLMs don't understand the semantics of q (or any other programming language).

* Limited training data, as compared to kanguages like Python or javascript.

All of the above contribute to the failure modes when applying LLMs to the generation or "understanding" of source code in any programming language.

Comment · 1 year ago
"English as a programming language" has neither well-defined syntax nor well-defined semantics.

There should be no expectation of a "correct" translation to any programming language.

N.B. Formal languages for specifying requirements and specifications have been in existence for decades and are rarely used.

From what I've observed, people creating software are reluctant to or incapable of producing [natural language] requirements and specifications that are rigorous & precise enough to be translated into correctly working software.

Comment · 1 year ago
IIRC, the percentage of Black students admitted to elite public schools was 10% in 1975.

What happened in the last 50 years to move that number down by a factor of 10 - literal decimation?

Comment · 1 year ago
Software Engineering is only about 60 years old - i.e. the term has existed. At the point in the history of civil engineering, they didn't even know what a right angle was. Civil engineers were able to provide much utility before the underlying theory was available. I do wonder about the safety of structures at the time.
Comment · 1 year ago
In my suburban middle school in Northern NJ, everyone (boys & girls) was required to take:

* Wood shop

* Metal shop

* Cooking

* Sewing

* Typing

I never saw an injury.

Learning to work with our hands safely was quite valuable.

Comment · 1 year ago
AI won't replace software devs for a key reason.

The hardest part about writing software is the requirements & specifications.

Some ambiguous thoughts rendered as an LLM prompt is neither.

The output will only be as precise as the input allows.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton