skysight-inc/HackerNews huggingface dataset:
I'm not a fan of Unix man page section numbers in parentheses.

strlcpy is a stopgap, whack-a-mole solution for buffer overflows. It is rationalized by the reasoning that it does not make the program less wrong, while (probably) making it more secure.

When truncation matters and you have a fixed size buffer, that buffer should be large enough in order for it to be justifiable to say that someone is misusing the application. Perhaps a tester trying to break it.

Nobody’s surname needs 128+ bytes. No reasonable URL for a firmware update download needs 4096 bytes.

If truncation matters, no, it does not always make sense to accept a gig of data and be ready for more. You can impose a limit. A violation of the limit is an error, treated like a case of bad input.
I got involved in open source when I was in my teens, and I'm now pushing 40.

I'm as interested as I ever was in consumer free software, but...

Having worked professionally in the software industry for the majority of my career (most of that time in open source), I just could not care less about what comprises the open source "movement" today. I don't want to rehash the whole free software versus open source discussion here, but suffice it to say, most of the energy being put into open source projects today is completely uninteresting to me. Enabling a developer ecosystem with open source, only to see this technology used to create proprietary and downright Orwellian software that abuses the rights of end users more than any point in history doesn't motivate me to participate in corporate open source.

Wake me up when we start writing software where the beneficiary is the end user.

Do you want to attract young people to open source again? Start actually building software where the story behind why open source matters is actually true again.
The article doesn’t break out Google/MS proper from their cloud offerings, so it’s not really fair to say they’re using more power like the folks at these companies are choosing to do this. They rent compute and their customers are using a lot more of it. If google just said “we’re not renting out GPUs to save the environment” people would just shift to a competitor.
Hey, cool idea but I think you are going to have do delete all that data. Users never agreed to have their data used for anything.

Easy fix though, simply add a prompt letting users give their concent.
And what was TJ's attitude when New England cut up rough about the embargo?
I remember when Browsers were User-Agents and worked for the sole benefit of the user. These days they are Advertisement-Agents. And especially for Firefox to survive Mozilla should go down the road of being a user agent and a user agent only. What other use is there for firefox? It's not faster, it's soon not going to be more private and it is less secure than chromium based browsers.
Depends on what they are doing. Consuming a large amount of energy for cloud platforms isn't the worst, as that'd be done by the customers directly if the cloud didbt exist after all.

Using it on generative AI on the other hand is burning huge amounts of energy, manpower and effort on a robot that advises how to cook spaghetti in gasoline for flavor. A complete waste.
Do you work for an ad company by any chance?
> what is the solution for them

Locally produced, given the cheaper labour cost they should also be able to compete in the EU or US by offering a cheaper product, due to cheaper production cost. At least in some areas.

I don't think the current state of the web is doing poor regions any favours by granting the free access to western products, compared to encouraging or even forcing them to build their own infrastructure or products.

Donating Europe's discarded clothing to Africa killed pretty much all of Africa's textile industry. Free access to the online services from the west (or China) is just as much of an obstacle to growing their own technology and media companies.

Edit: Free access to general knowledge, open source software and learning material is clearly a bonus, but it also takes little away from local industry and can help kick start companies.
There is also strscpy [1] which behaves like the authors use of memccpy except the former doesn’t require manually passing the null terminator as an argument.

[1] https://manpages.debian.org/testing/linux-manual-4.8/strscpy...
Mozilla also doesn't have to operate out of one of the most expensive cities in the world. And no, they don't have to be there to attract competent developers either.
Fun fact, since soviet calculators were copied from western designs, when an error happened it was displayed also a "error" on a 7seg display. if you squint hard enough you can read it as ЕГГОГ (eggog, total nonsense gibberish) in russian, which was explained in manuals as a "keyword signaling an error condition". There is an article in russian wikipedia on studying the error codes and undocumneted features - "eggogology" https://ru.wikipedia.org/wiki/%D0%95%D0%B3%D0%B3%D0%BE%D0%B3...
Is that X% in moment or in total? Which is critical distinction. Overall might not be too helpful is renewables at time massively over produce. Electricity is fungible only in moment. And storage is nowhere close...

You could have someone getting paid to waste electricity during over-production while this wasted amount will somehow still count when coal is being burned...
Type-checking is helpful in your IDE (for developer hints) and in your CI (for verification), but you don't want type-checking in your hot-reloading dev loop.
The sad thing is that the index would take just as much space as the data itself, because in average you can expect to find a n-bit string at the 2^n position.
We are getting close to companies with armies and intelligence agencies at the scale of governments?
Show HN: Learn a new language by speaking with AI
If someone ever has to use your stuff over FFI from a high level language, they will curse you for not just using C strings.
Have you tried picking a project that might have a lower bar for contributing, or is closer to your skills? Of course, this doesn’t help those projects be more accessible, but it could help develop your confidence until you’re ready to work on those (and hopefully change their culture!)
You are right. You can see the data first, charts, even dependencies. And yet nobody is drawing `IF(ACTIVE[A1:A4]=E$1)`
> I think they'd work out a way to do more AI training when the wind is blowing and scale down when more power is delivered from coal.

Maybe they could even use AI to help them figure out when to do that.
> I'm curious to know what software projects you've worked on and how long for?

The longest i've contributed to a single project is the Fossil SCM (https://fossil-scm.org), since early 2008.

> How did it change over time?

Fundamentally, it hasn't much changed in terms of technology or core feature set. It evolves to suit its primary purpose (the SCM for sqlite) on an organic basis as its main architect (Richard Hipp, of sqlite fame) needs new features, and a few of us add features we want for our own project or which are suggested by non-coding contributors. The most change, IMO, has been in the people who participate - certainly both my coding and my team-working skills have improved many times over since my early days in that project.

That's not to say that the software hasn't changed over the years, just that it's not _fundamentally_ changed. Its core feature set is still the same as back then, just fleshed out over the years. New featured have, of course, been added, always organically (as needed) rather than as part of some roadmap or marketing vision.

> What caused it to thrive or die?

i opine that about the only thing which enables any non-git SCM to "thrive" (for a given definition of "thrive") nowadays is the same reason AmigaOS still "thrives": there's a stubborn social circle of people who simply won't let go. We use it because we prefer it, and we'll stop using it when it's pried from our cold, dead fingers.

In the case of Fossil its continued survival and development is also a matter of principle. Richard Hipp (creator of sqlite and Fossil) has a philosophy which he's often stated as "freedom is being able to take care of yourself." The most glaring way that philosophy shows in his works is that third-party dependencies are only accepted when they're absolutely necessary. For example: not including the C standard libraries and POSIX, Fossil has only a single non-negotiable 3rd-party dependency (zlib) and a few optional 3rd-party dependencies (most notably libssl). Changes in upstream dependencies can and do break things, which is largely in conflict with the "being able to take care of yourself" part of Richard's definition of freedom. That philosophy extends to source control of his own projects, all of which are of course hosted with Fossil. Ergo, so long as his other projects remain active, Fossil still has a reason for surviving.
Who's the victim when someone steals something from your house? Who's the victim when someone does drugs? You cannot compare the two.
What makes me wonder after reading the article, how did AT&T bill its users, especially in its early days.

It was so capital intensive that it must have been earning good money, but without computers, how was their business model?

E.g. a fixed fee per line, or did they have a way to charge its customers per call, or duration of the call as we're now used to?
> I've not read any of these comments but it sounds like the author of that message is somewhat peeved at the fact he can't control the conversation of others.

Are you fucking serious right now? Did you actually read what they said? Want is wrong with you? They're not "peeved" about "not being able to control the conversations of others", they're pointing out that because of Hacker News's lax and irresponsible moderation and disturbing overlap with much worse communities, it is a breeding ground for endless hate and harassment that can, and has, driven people to suicide on other occasions. That's way more serious and understandable, and playing that down as just someone being "anti free speech" as being part of the problem.
Show HN: A locally hosted search engine for all your memes
The open source engine indexes your memes by their visual content and text, making them easily searchable. Drag and drop recovered memes into any messager.

The backend is built using these great open source components:

- moondream: a tiny, kickass vision language model

- all-MiniLM-L6-v2: a popular text embedding model

- faiss: a fast and efficient vector db

- sqlite: the swiss army knife of dbs
I agree that one should refrain from ever using "guarantee correctness" in context of type systems outside of Coq & co. But "extremely basic properties" is IMO similarly exaggerating in the other direction.

Take the "basic" property "cannot be null" for example - Considering the issues and costs the lack of that one incurred over the decades, I'd call that one damn interesting.

And Rust? C'mon, its affine type system is its biggest raison d'etre.
How to Build a Basic Chatbot Using TensorFlow and JavaScript
And yet you apparently have learned to walk, despite the ground meeting you quite rudely here and there. Apply the same here.

True, assholes do exist. If they didn't, the modern human world likely wouldn't be a shithole, but yet here we are. But as you demand people to extend their goodwill and charitable assumptions to you, take a moment to do the same to them. It might very well be that your contribution is taking the project in a direction they don't want to pursue. It might be that what you are contributing is the failed idea #420 from a year ago. It might be that what you are contributing is what has caused bug #666 which took many months to debug and fix. It might be more often than not that you blatantly fail to do as Romans do when in Rome.

Maybe young people are exactly the same as they were 20 years ago, but it's my perception that thanks to flashy media abound, attention spans are indeed shortening, and demands for instant gratification are bigger now than they used to be. But this is not how you do anything of value. Maybe spend some time reading the room before rushing in and then complaining about rude comments.
https://keepassxc.org/blog/2019-02-21-memory-security/
"Open source software leads to proprietary Orwellian tech" is quite the take
As a fellow ancient person my only consolation is that the browser-based development experience most people now learn on is (with some path-dependent ugliness) basically the experience Smalltalk promised us in the 1980s and never quite delivered.
> You can avoid the sell low situation by having 3-6 months of expenses saved in an emergency savings account.

Maybe. You can also just be trying to catch a falling knife. Sometimes it's sensible to cut your losses but, of course, it's often not clear when (or if) that's the case.
> The production is physically limited, if you have the money and power to be green, the others are not and you can seriously slow down the transition.

This doesn't make sense. If big players are eating up all the renewable sources, then the renewable sources are making money hand over fist and are encouraged to expand. The market forces should speed up overall production of renewables, not slow it down.
>in defiance of market laws

My understanding of the economics of software is that open source software is inevitable. The marginal cost of producing and distributing software is zero, and so the only real way to make money is to sell access to physical resources as a service and give the software away for free.
Good luck. Farming is a hard business if you want to make money. And you'll need money for electricity, fuel, medicine, etc.
Evictions Surge in Major Cities in the American Sunbelt
There is actually now very expensive cutting edge stuff (FRAS) that’s flexible and can barely stop a 5.56 round, and i’d assume important people have whatever top secret upgrade exists for that, but that could be wrong.
They've known from the start. There are d8/d9 shops everywhere now. It's kind of annoying actually. I think the articles have been slow to roll out because of the line at the very end of the article. They've been waiting until it's too late.
First, I don't know if the average age of open-source coders is increasing (in a way you wouldn't expect from general demographic trends). Second, if it is happening, blaming mature coders is probably pretty far down the list. More likely is (in no particular order):

(1) corporate contracts that discourage employees from contributing to OSS

(2) green-field effect (there is already a lot of OSS and few obvious opportunities for new OSS, and creating a new open-source project is often easier than it is to gain the trust of developers of an existing project and a lot more exciting,

(3) VC culture: imagine if Facebook had open-sourced their platform from the start; yeah, I can't either, where's the money in that?
I should have known that, as I have been reading magazines for decades, so the question now (for me) is why I have only recently found them to be intrusive - is it me that's changed?
It is a long, time-honored tradition to attempt to improve on flawed standard library functions with equally flawed functions.
I found frama-c to be pretty good, including all the integer quirks
But it doesn’t have to. We can choose any other language that compiles to native, including memory-safe ones.
> What we found a long time ago was, the line of code that a developer can write the fastest, can maintain the cheapest, that never breaks for the user, is a line of code the developer never had to write.

> The goal here is to literally eliminate 80% of the code that every developer has to write for their app - because it's in common with every other app. And let them focus on just the 20% of their code that's unique and value-add to their app. That's what this is all about.

---

A video of historical interest - OpenStep's Interface Builder in 1997, the year Steve Jobs returned to Apple.

It shows how forward-thinking NeXT was. Many of its innovative user interface concepts are relevant and in use today in different guises and interpretations.

> Every single app on NeXTSTEP was built using Interface Builder. It is the frosting on top of this object-oriented cake that we have called NeXTSTEP.

In the demo, Steve seems to use the word "object" with a depth of meaning closer to what Alan Kay explained, like independent (or rather interdependent) "cells" of software that communicate to each other via messages.

> OOP to me means only messaging, local retention and protection and hiding of state-process, and extreme late-binding of all things. It can be done in Smalltalk and in LISP. There are possibly other systems in which this is possible, but I'm not aware of them.

On the Meaning of “Object-Oriented Programming” - http://userpage.fu-berlin.de/~ram/pub/pub_jf47ht81Ht/doc_kay...

It's interesting that the Interface Builder was considered a "frosting" or visible representation of the underlying objects, which the users more or less directly created, edited, and connected together - without writing a line of code.

That ideal of user experience still hasn't been fully achieved to satisfaction, it feels. The ease and naturalness of creating software visually, as well as with other modalities, senses, medium of expression beyond text.
re: data on cloud providers: I trust ProtonDrive to not use my data because it is encrypted in transit and in place.

Apple now encrypts most data in transit and in place also, and they document which data is protected. I am up in the air on whether a future Apple will want to use my data for training public models. Apple’s design of pre trained core LLMs, with local training of pluggable fine tuning layers would seem to be fine, privacy wise, but I don’t really know.

I tend to trust the privacy of Google Drive less because I have authorized access to drive from Colab Pro, and a few third parties. That said, if this article is true, then less trust.

Your analogy with early Gmail is good. I got access to Gmail three years before it became public (Peter Norvig gave me an early private invite) and I liked, at the time, very relevant ads next to my Gmail. I also, gave Google AI plus (or whatever they called their $20/month service) full access to all my Google properties because I wanted to experiment with the usefulness of LLMs integrated into a Workplace type environment.

So, I have on my own volition surrendered privacy if Google properties.
Besides "write code" and "donate money" what are some other ways to help F/OSS?
> make web sustainable.

I'm old enough to remember a day when the "social media" that I used was a set of phpBB forums paid for by one or more of the members because they wanted to host the community. Nothing on the modern ad-supported web comes close to the dynamic of friendship and camaraderie of those community-supported forums—if anything the new platforms are a great place to ruin real-life friendships rather than create new ones.

So, no, I don't think the web needs to be made "sustainable" in the sense you seem to mean. Things were better when people sacrificed a bit to keep their communities alive.
I just remember the integer part.
Ask HN: What is your opinion and experience with DSPy?
Hi People, hope everyone who is reading this is doing well. I wanted to try out DSPy for some research I am doing. I don't have experience in using LangChain or any other Gen AI prompt engineering tools.

So, while I dive into this tool, I wanted to ask people who have used it so far: What is your experience? What are pros and cons of it. Is it delivering what it is promising? Are the prompt responses hard coded & difficult to change or flexible & well-generated. What are the areas of improvement?

I know I can google these questions but it is better to ask a community who would give personalized opinion based on their experience.

PS. I apologize if you find any part of this post hard to understand or if I haven't communicated the questions well.
Thank you for reading.
I think putting everything on github might have.
> should raise taxes, especially for large coorparations and in higher income brackets

Google and Microsoft are large corporations. Their employees and investors are high income. OP proposes curtailing their growth. That reduces those taxes. That’s why OP’s suggestion is a false economy.

Energy, in this context, isn’t a zero sum game. Tax Google and Microsoft more and use that to pay for more power.
This goes for every SaaS / cloud native company

I think there will be a real shift back on prem with software delivered traditionally due to increased in shit like this (and also due to cost)
I can't find a rant in the link. Was the link changed or did I overlook something?
Well visual programming is standard in Unreal projects and they definitely scale beyond toy projects with a single developer. Although Excel is the most popular visual 'programming language', the second most popular is surely Blueprint.
In cross platform environments, it gets horrible when one does something like:

#define strlcpy strncpy
I'm glad at least some other people on this horrible site feel this way.
I’m always glad to see more people coming around to the fact that memccpy is the actual function they want, not these inefficient nonstandard garbage functions that are needlessly inefficient for no reason but that everyone flocks to anyways for “security”.
Windows ARM64 – ThinkPad X13s
> And then in modern C++ std::string cares about and preserves the stupid C-style zero termination anyway, so you're paying for it even if you never use it.

I don't think this in itself is a real problem. You pay for the zero at the end, which is not much. The real cost of zero termination is having to scan the whole string to find out the size, which with std::string is only needed when using it with C-style APIs.
Absolutely guarantee you today’s RNC convention will contain many, many more references to their candidate getting a minor ear piercing than Teddy’s speech contained to a shot to the chest that left him with a bullet stuck in his body for the rest of his days.
They still have plenty of space for bitcoin mining though apparently.
That's like saying if you don't like ransomware just develop your own.
OneDrive family plan turned out cheaper than having to setup everything myself with Multiple phones, laptops and OSes with elderly parents not living close to you.

I keep an external ssd with some important backups and that's about it.

Take printouts of photos as your digital copies will likely go away with you or when you stop paying.
Oh wow! Thanks for the info. I'm glad to hear it's not crazy everywhere out there.
In my experience, flat earthers are not capable of the kind of rigorous enquiry that would allow them to even attempt to answer this.

Flat earth isn't a position arrived at by reason, it's one that is invariably reached by either confusion, or as a necessary consequence of some unshakable core belief (typically either an extremely literal reading of the bible, or a paranoid "everything official is a lie" delusion).
Because the global goal of all that is the CO2 emissions that we emit __today__.

I'm perfectly fine that we start big plans to build many new nuclear and renewable plants, but __today__ we need to emit less CO2, now. CO2 just add up in the atmosphere and don't degrade in the time we have.

SO, in the quota we need to respect, I prefer to ensure that the today capacity we have of "clean energy" are used for a proper usage better than allocating the current clean, and upcoming clean ones to some Google servers that are used to generate AI images for fun.

If your house is on fire you don't use the water you have to fill up your pool, you actually need to turn off the fire, even if you will have more water soon.