Hacker Newsnew | past | comments | ask | show | jobs | submit | poidos's commentslogin

Don't know if one has or not, but a lack of announcement is not a lack of success.

Do you really think that if a Chinese model had achieved a significant math breakthrough that it wouldn't be trumpeted to the global media? The "Deepseek moment" was great for China; this would be the same.

It’s a stated [0] goal of the project:

> SQLite strives to be flexible regarding the datatype of the content that it stores.

[0]: https://sqlite.org/stricttables.html


You can be flexible with strict tables, type every column as ANY and you pretty much get back the original behaviour.


Sure, but you lose the representation of the developer’s intention that way. I would be pretty pissed off if I inherited a project and the schema was all ANYs.


The developer's intention is that anything can go in there.

You would only inherit a project where everything was ANY if anything could go anywhere.

With SQLite's default behavior, anything can always go anywhere, so the type definitions are at best semi-accidentally observed by the code, and at worst completely misleading. You have no idea which of the two the developer intended.

I get the impression that this SQLite behavior is a historical oddity caused by the original use case for the tool, rather than something that was intentionally planned and thought through, and was later retconned to be intentional and benign. To me, it makes no sense, even after reading the explanation on sqlite's website.


IIRC SQLite originated as a Tcl extension. In Tcl at the user level "everything is a string" or a number. So it's logical SQLite would accept values as a string or number. Interestingly a Tcl function defines its own semantics, an input value means whatever the function says it means, perhaps a timestamp. SQLite inherited these attributes, and as many commenters observe, SQLite largely continues to work that way.

Implies documentation is crucial. Fortunately SQLite's documentation is among the best out there.


“I intended this to be an integer but it could really be anything” is not very useful.


Sure it is. If you encounter something that’s not an int, that could be a signal you have a bug in your writers. Or in the source of the data. That’s useful information compared to “oh, I have some ints and some strings, that’s ANY, everything is ok.”


> If you encounter something that’s not an int, that could be a signal you have a bug in your writers

Which, is something you could have caught before it got written at all if you had your db enforcing your types.


i have no idea why this would be preferable to failing immediately on write


The intent of ANY is obviously that the values be flexible. That’s why it’s there if you need it.


But that is still better than getting a table with typed columns that have been used like ANY columns.


But why aren't you pissed at a database where the columns have types that aren't enforced?


Postgres is flexible, too. Sometimes design choices are just bad, and it's ok.


It only puts 90% of developers out of a job if the demand for software stays flat.


Exactly. I see software engineering going the way of accounting or lawyer.

Every business needs an accountant and a lawyer on hand. In the past, hiring one software engineer to build custom software for your small or midsized business was not worth it. What can one software engineer build? Maybe an MVP in a year? No chance it was worth it for the vast majority of businesses. Outside of corporations or tech companies, employing a software dev was simply not a thing.

Nowadays, your kindergarten might employ a full time or part time software engineer to build custom software. One dev can build a lot more a lot faster.

That said, I think the average or below average dev won’t earn $200k/year anymore. However, the top devs will earn more than ever. If AI increases an average dev’s productivity by 10x, then it will increase a top tier dev’s by 100x.


“ However, the top devs will earn more than ever. ”

No they won’t. Productivity does not determine the wage rate.


It’s already happening. Top tier devs have two ways of earning way more than before:

1. They can build and sell their own products or services. We are already seeing 1-2 person software companies earning real money. Top devs don’t have to stay in corporate if they think they can generate more revenue on their own.

2. When companies get rid of their B devs without losing productivity, they can pay their A devs more.

I’m in the #2 camp right now. My team shrank by 50% through attrition in the last year. We didn’t hire anyone new when someone left. My pay has increased.


[flagged]


I’m not desperate at all. It was my company who was desperate to keep me and gave me a huge pay rise. I was already making top tier money.

I threatened to leave to start my own company unless they gave me enough money to make me not want to do it. They did.


[flagged]


Don't think I need pity from a random person on the internet. ;)

Regardless, I didn't say "many". I said top tier. How you define that is up to you.

There is already ample evidence for top dev talent earning way more than before whether it's through corporate or starting their own company.


Your company might fail then. Because I won’t be fighting to work at your company, I’ll just compete with your company and get paid what I deserve.

We already have CEOs is vendors trying to scare people away from vibe coding their contract away, while I diligently vibe code their contract away.

Not much new here as my entire career has been coding away 3rd party contracts, and it’s now easier than ever.


The whole point is that the company doesnt need you if there is ample supply of developers


My point is that there isn't/won't be an ample supply of developers.


It does, in the higher echelons of performance / seniority.

Junior wages won’t change, and may even get lower.

But, at least at present, the top devs are earning more than ever as their skills are much more leveraged.

I don’t see that changing anytime soon.


curious as to why

most top swe comp comes from equity in the company, which benefits from productivity

not only that but the leveraged nature of swe means top performers are in perpetual shortage and low performers contribute negative productivity

anecdotally weve seen comp rise as the best candidates have multiple competing offers as well as the freedom to start their own business


Because companies can hire one great Dev for $300k instead of 5 mediocre ones for $150k each and get better results.


That supports my point right?

Top devs make more than before


Yes. I agreed with your point.


> “ However, the top devs will earn more than ever. ”

The AI companies will skim all the extra profits.


It's even better than accounting or lawyers, because good software engineers can build incredible businesses from scratch instead of being tied to the number of businesses that exist

SWEs are more leveraged than ever and we've seen comp drastically rise for top performers


Because there is so much money for kindergarten teachers, paying an extra salary for a software dev for every kindergarten will certainly lead to better outcomes. The computer programs will make up for the lost teacher economically by teaching the children instead of people, raising the market share of my local kindergarten, or enticing people to have more babies. \s


How much does the appetite for good* software need to grow to not have loss of jobs?


> It only puts 90% of developers out of a job if the demand for software stays flat.

...or if there's an increase of demand for software, but mostly of the kind that can be completely automated by AI, no need for developers.


Love sourcehut and want to see them succeed, but their build service (despite having some very cool ideas like allowing you to SSH into your build container) is pretty barebones / lacking compared to GH/GitHub actions. You either get no task parallelism (all your tasks are in one manifest) or you get up to N=4 parallelism (you have four manifests). As far as I can tell, you can’t specify job dependencies beyond just “when this job finishes, trigger this next job by deploying a manifest”. No build caching, and artifact sharing felt like a kludge.


OTOH, the nice thing about a minimalist build system is it forces you to solve these problems yourself, in a way that’s broadly compatible with any provider: for me, nix builds, cache with cachix, and use gnu parallel for running concurrent jobs.

Means that my CI pipeline can be ~instantly moved to any provider, or a box that I own, or whatever.


Yep. I cannot imagine any universe where I'd rather use GitHub Actions than a shell script.


Doesn't the high quantity of boilerplate pollute the context, thereby making agents less useful over time? i.e. go is not "token efficient"


Language models need redundancy (as informing structure). Not surprising, since they're trained on human language. It's hard to train a model on a language with a high entropy. I haven't tried it, but I think LLMs would perform quite badly on languages such as APL, where structure and meaning are closely intertwined.


Gwern hosts a lot of PDFs -- see https://gwern.net/archiving


I guess that makes sense in the light of her previous post and work on making a new archiving solution for being able to host singlefile archives more efficiently.

Thank you



her?


Been meaning to cancel nitro and move off to Matrix or something, thanks for the push Discord!


Publishing ffmpeg and QEMU in a five year span that also included winning IOCCC (twice!) is absolutely bonkers.


Two excellent changes after ten wonderful years. Thanks for everything Eric! Cheers to many more


It's worse. Attention is all we have.


I heard somewhere it was all you need


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: