setpriv
on Linux supports Landlock.
@prologic@twtxt.net Yeah, itâs not a strong sandbox in jennyâs case, it could still read my SSH private key (in case of an exploit of some sort). But I still like it.
I think my main takeaway is this: Knowing that technologies like Landlock/pledge/unveil exist and knowing that they are very easy to use, will probably nudge me into writing software differently in the future.
jenny was never meant to be sandboxed, so it canât make great use of it. Future software might be different.
(And this is finally a strong argument for static linking.)
@lyse@lyse.isobeef.org dmenu is a great example.
There have been several attempts at porting dmenu from X11 to Wayland. Well, not exactly âportingâ it, more like rewriting it from scratch. Turns out: Itâs not that easy.
dmenu is super fast and reliable. None of the Wayland rewrites are (at least none of the popular ones that I know of). They are either bloated and/or slow.
It takes a lot of discipline and restraint to write simple software and not blow up the codebase. This is much harder than people think. Itâs a form of art, really.
@lyse@lyse.isobeef.org I do my timetracking in a little Python script, locally. Every now and then, I push the data to our actual service. Problem solved â but itâs a completely unpopular approach, they all want to use the web site. I donât get it. Then, of course, when itâs down, shit hits the fan. (Luckily, our timetracking software is neither developed nor run by us anymore. Itâs a silly cloud service, but the upside is that Iâm not responsible anymore. đ€·)
Some of our oldschool devs tried to roll out local timetracking once, about 15 years ago. I donât remember anymore why they failed âŠ
This is developed inhouse, Iâm just so glad that weâre not a software engineering company. Oh wait. How embarrassing.
Oh to be anonymous on the internet. That must be nice. đ
@movq@www.uninformativ.de Yeah, itâs a shitshow. MS overconfirms all my prejudices constantly.
Ignoring e-mail after lunch works great, though. :-)
Our timetracking is offline for over a week because of reasons. The responsible bunglers are falling by the skin of their teeth: https://lyse.isobeef.org/tmp/timetracking.png
- The error message neither includes the timeframe nor a link to an announcement article.
- The HTML page needs to download JS in order to display the fucking error message.
- Proper HTTP status codes are clearly only for big losers.
- Despite being down, heaps of resources are still fetched.
I find it really fascinating how one can screw up on so many levels. This is developed inhouse, Iâm just so glad that weâre not a software engineering company. Oh wait. How embarrassing.
For example, I reckon software should treat stdout
and stderr
with care and never output logs or other such garbage to stdout
that cannot possibly be useful in a UNIX pipeline đ
@movq@www.uninformativ.de Yeah thatâs why Iâm striking this conversation with you đ Not only do I respect your opinion quite highly đ€Ł But like you say (and Iâve read their philipshpy) it can be a bit âelitismâ for sure. Iâm genuinely interested in what we think of as software that âdoesnât suckâ. Tb be honest I havenât really put thought to paper myself, but I reckon if I did, Iâd have some opinions/ideasâŠ
@prologic@twtxt.net Hm, I wouldnât say that. Go code could fall into that category as well.
Maybe this topic could use a blog post / article, that explains what itâs about. Iâm finding it hard to really define what âsuckless-like softwareâ is. đ€ (Their own philosophy focuses too much on elitism, if you ask me.)
@prologic@twtxt.net Ah, Iâm referring to software thatâs similar to that of suckless.org: Small, minimal codebases, small tools, but still useful. dmenu is probably the best example and also farbfeld.
Hereâs the author of Anubis talking about some of their experiences:
https://xeiaso.net/blog/why-i-use-suckless-tools-2020-06-05/
(You can skip the long config and keybinds part.)
@movq@www.uninformativ.de Curious what you would define as âsuck lessâ software? (language agnostic of course!)
The lack of suckless-like simple, hackable software these days is appalling.
In all fairness, GOG says that Forsaken is only supported on Ubuntu 16.04 â not current Arch Linux. If you ask me, this just goes to show that Linux is not a good platform for proprietary binary software.
Is it free software, do you have the source code? Then youâre good to go, things can be patched/updated (that can still be a lot of work). But proprietary binary blobs? Very bad idea.
Ted Unangstâs snarky (and entertaining) remarks this month:
@movq@www.uninformativ.de Interesting internal education sessions are way too infrequent here as well. There are a bunch of âknowledge transferâ meetings actually, but 90% of the topics already sound totally boring to me. The other 9% talks turned out to be underwhelming, sadly. I only attended a single one where it was delivered what has been promised. Theyâre all talks, not real hands-on trainings like you did.
Once a year the security guys organize a really great hacking event, though. Teams can volunteer to hand in their software dev instances and all workmates are invited to hack them and report security vulnerabilities. Thatâs a lot of fun, but also gets frustrating towards the end when you donât make any progress. :-) Thereâs also some actual hands-on training in advance for preparation of the two days. Unfortunately, I missed the last event due to my own project being very stressful at the time.
When I had a Do What You Want Day I also show my direct teammates what I learned in the hopes of this being interesting to them as well. Iâm the only one in my team using this opportunity, sadly.
think iâm gonna use this license on my git repos going forward. it kicks ass https://anticapitalist.software/
Saw this on Mastodon:
https://racingbunny.com/@mookie/114718466149264471
18 rules of Software Engineering
- You will regret complexity when on-call
- Stop falling in love with your own code
- Everything is a trade-off. Thereâs no âbestâ 3. Every line of code you write is a liability 4. Document your decisions and designs
- Everyone hates code they didnât write
- Donât use unnecessary dependencies
- Coding standards prevent arguments
- Write meaningful commit messages
- Donât ever stop learning new things
- Code reviews spread knowledge
- Always build for maintainability
- Ask for help when youâre stuck
- Fix root causes, not symptoms
- Software is never completed
- Estimates are not promises
- Ship early, iterate often
- Keep. It. Simple.
Solid list, even though 14 is up for debate in my opinion: Software can be completed. You have a use case / problem, you solve that problem, done. Your software is completed now. There might still be bugs and they should be fixed â but this doesnât âaddâ to the program. Donât use âsoftware is never doneâ as an excuse to keep adding and adding stuff to your code.
pledge()
and unveil()
syscalls:
@movq@www.uninformativ.de That sounds great! (Well, they actually must have recorded the audio with a potato or so.) You talked about pledge(âŠ)
and unveil(âŠ)
before, right? I somewhere ran across them once before. Never tried them out, but these syscalls seem to be really useful. They also have the potential to make one really rethink about software architecture. I should probably give this a try and see how I can improve my own programs.
@movq@www.uninformativ.de I hear you! Iâd also love to forbid any use in military software (development). Even though I cannot imagine anything of my stuff ending up there.
When I chose the MIT license for all of my software, I thought:
âShould I use GPL, which I donât really understand? Is that worth it? Yeah, there is a theoretical possibility that some company might use my code in their proprietary product ⊠and then what? Should I sue them to enforce the GPL? Iâm not going to do that anyway, so Iâll just use the MIT license.â
And now we have those LLM scrapers and now itâs suddenly a reality that these companies (ab)use my code. I can see it in my logs. I didnât expect that back then.
GPL wouldnât help, either, of course. (Regardless, I now think that GPL would have been the better choice anyway.)
Iâm honestly considering taking my code and website offline. Maybe make it accessible through some obscure protocol like Gopher or Gemini, but no more HTTP.
(Yes, Anubis might help. Temporarily.)
Iâm just tired.
printf
?!)
@prologic@twtxt.net There have always been and there will always be people who have absolutely no clue what theyâre doing. Iâve been 100% one of them when I started. Guaranteed, heaps of new SQL injections are born every single day, numbers rising.
That doesnât justify all the WAF crap in the first place, though. In my opinion itâs just a filthy plaster applied to an injected wound. The software itself must be secure. Otherwise, donât put that shit on the internet. Probably not even operate it at all. Nowhere. Fix it or throw it in the bin.
Once or twice a year, I make an effort to switch from dark mode / black terminals to light mode again.
It usually doesnât end well, because the contrast is just not as good. Thereâs a reason that things like professional DAWs or CAD software use a dark theme.
With a heavy bold font, itâs much better:
https://movq.de/v/331aa40bde/s.png
My font doesnât get any bolder than this, though. Iâd have to make a new variant of it. Mhh. đ€
revisitando um projeto de hĂĄ 2 anos
erro no build
python do meu OS Ă© agora uma versĂŁo mais recente
incompatĂvel com uma das bibliotecas
keeptryingkeepfailing.mp3
a esperança vã de meter um issue no tracker do projeto
må disposição por acabar o dia com prob não resolvido
horas depois Ă noite, ping
o developer respondeu ao issue
e fez grande commit pra resolver o problema
fuck yeah software livre :szterminal:
@bender@twtxt.net I use it. Itâs not the feature I use the most in the fediverse, but I communicate this way with several friends. For example, itâs the main way I talk to the original creator of the twtxt-el repository, the way people greet me for the first time or the way they notify me of some bugs in the software I maintain. I can even tell you that itâs the main way I talk to some maintainers of the Emacs community. If there are any of you reading my words, speak up!
Why not have the same? There are things I want to say to @prologic@twtxt.net in private, why should I have to send him an email or private IRC? Or an public twt.
Of course, hereâs a topic weâve already talked about: what is twtxt for you? For me it will always be a social network, in microblogging format, but an asynchronous way of communicating. And having a tool to control visibility is basic đ
I look forward to hearing from you @eapl.me@eapl.me !
@prologic@twtxt.net @bmallred@staystrong.run Ah, I just found this, didnât see it before:
https://restic.net/#compatibility
So, yeah, they do use semver and, yes, theyâre not at 1.0.0 yet, so things might break on the next restic update ⊠but they âpromiseâ to not break things too lightheartedly. Hm, well. đ Probably doesnât make a big difference (they donât say âdonât use this software until we reach 1.0.0â).
I now subscribed to most feeds in my Go tt
reimplementation that I already followed with the old Python tt
. Previously, I just had a few feeds for testing purposes in my new config. While transfering, I âdroppedâ heaps of feeds that appeared to be inactive.
This might motivate me to actually âfinishâ the new client, so that it could become my daily driver. No need to use the old software stack any longer. Letâs see how bad this goes.
Although, most software I use is decentish in that regard.
Is that because you mostly use Qt programs? đ€
I wish Qt had a C API. Programming in C++ is pain. đą
@movq@www.uninformativ.de Where can I join your club? Although, most software I use is decentish in that regard.
I just noted today that JetBrains improv^Wcompletely fucked up their new commit dialog. Thereâs no diff anymore where I would also be able to select which changes to stage. I guess from now on Iâm going to exclusively commit from only the shell. No bloody git integration anymore. >:-( This is so useless now, unbelievable.
@movq@www.uninformativ.de mastodon is probably the worst fedi software to self host tbh, you might wanna check out gotosocial? not to like pull you in another direction but idk masto is just suuuuper heavy lol
@prologic@twtxt.net If it develops, and Iâm not saying it will happen soon, perhaps Yarn could be connected as an additional node. Implementation would not be difficult for any client or software. It will not only be a backup of twtxt, but it will be the source for search, discovery and network health.
If we donât keep insisting on simplify and âThe beauty of twtxt is, you put one file on your server, done. One.â, then people should just use ActivityPub-based software like Mastodon, PixelFed, etc. which are getting a lot of attention and uses migrating to the fediverse from meta/x here in Denmark over the last couple of months.
Hacer software cĂłdigo opensource es desafiante y paulatinamente desgasta a su autor. Todo comienza con pasiĂłn y entusiasmo, por supuesto. Si logras repercusiĂłn, te enfrentas a una carrera de fondo que muchos terminan abandonando por las demandas constantes de usuarios que, a menudo, no valoran el trabajo ni contribuyen de manera significativa. Por mencionar un caso reciente: Hector Martin. LĂder del proyecto Asahi Linux, quien dedicĂł años a adaptar Linux para los procesadores Apple Silicon, un logro tĂ©cnico impresionante. Sin embargo, terminĂł renunciando debido a la presiĂłn de usuarios que exigĂan soporte y mejoras como si fueran clientes pagos.
La mayorĂa de los mantenedores no reciben ningĂșn soporte econĂłmico. Solo unos pocos proyectos logran sostenibilidad financiera a travĂ©s de patrocinios, mientras que la mayorĂa de los desarrolladores terminan con un segundo empleo no remunerado.
Sin un cambio en la forma en que se valora y apoya los proyectos Opensource, y no solo hablo de las grandes empresas multimillonarias. SerĂa una perdida para todos si acabaremos con un ecosistema de software archivado y abandonado.
Ahora te paso la pelota a ti, Âżcuando fue la Ășltima vez que apoyaste a un mantenedor de software opensource?
I read a lot about Clean Code, SOLID, TDD, DDD⊠now Iâm discovering «A Philosophy of Software Design»⊠but nobody talks about the importance of the project architecture. Do we depend on the framework to do the work for us?
You know Iâm a big fan of Clean Architecture, but I feel alone when I share my thoughts on social media or at work.
You have to think outside the framework.
NASA has a list of 10 rules for software development https://www.cs.otago.ac.nz/cosc345/resources/nasa-10-rules.htm
Yesterday I was doing a lot of research on how #hyperdrive and the #holepunch project work. Would it be possible to use it to make #twtxt an easier gateway for new users? Could we stop using web servers?
My conclusion: We would end up being a #nostr. On the one hand it would become more complex to use, it would force the user to have software installed, and on the other hand the community would need a central proxy to make the routes accessible via HTTP. In other words, itâs not a good idea.
However, itâs an AMAZING technology. I want to start playing with it.
@xuu@txt.sour.is Thank you! A common mistake is to see Emacs as a text editor but itâs a Lisp interpreter with a text editor (among other software), so the limit is your imagination đ. Iâm glad you like it! đ
@prologic@twtxt.net Itâs opensource. You can run the software in your localhost or server. Cloud service is a free option.
@prologic@twtxt.net YESSS iâm gonna be using tiny pilotâs software on mine! i was inspired by jet too but mine wonât look nearly as cool lol
@kat@yarn.girlonthemoon.xyz after some fighting with this janky software (that i still love despite the jank) we now have stupid tux as our logo. slayyy
I found 2 active Registries: tilde.instite and twtxt.envs.net . I think that is missing a repository or system for them to find each other. It is easy to share registry users. Your work is awesome! Maybe you are supporting twtxt with the pod and software around them. I am very busy with the Emacs client, but I like to work creating my own version of Registry using Django.
If NICK = DOMAIN then only show @DOMAIN
So instead of @eapl.me@eapl.me it will just be @eapl.me
Iâm just having a similar issue with a podcast I just uploaded on Castopod (which supports ActivityPub).
My first thought was creating a subdomain with the name of the podcast mordiscos.eapl.me
Then I watched that the software allows many podcasts in the same domain, so I had to pick a handle:
https://mordiscos.eapl.me/@podcast
So now I have @podcast@mordiscos.eapl.me
when this one is âmore correctâ @mordiscos@podcast.eapl.me
or it could even be @mordiscos.eapl.me
I wasnât aware of all that when I setup Castopod (documentation might improve a lot, IMO)
My point here is that itâs something important to think from the start, otherwise is painful to change if itâs already being used like that.
Btw about social: found very interesting thing about twitter:
The legal basis that X asserts in the filing is not terribly interesting. But what is interesting is that X has decided to involve itself at all, and it highlights that you do not own your followers or your account or anything at all on corporate social media, and it also highlights the fact that Elon Muskâs X is primarily a political project he is using to boost, or stifle, specific viewpoints and help his friends. In the filing, Xâs lawyers essentially sayâlike many other software companies, and, increasingly, device manufacturers as wellâthat the companyâs terms of service grant Xâs users a âlicenseâ to use the platform but that, ultimately, X owns all accounts on the social network and can do anything that it wants with them.
@Codebuzz@www.codebuzz.nl Speed is an issue for the client software, not the format itself, but yes I agree that it makes the most sense to append post to the end of the file. Iâm referring to the definition that itâs the first url =
in the file that is the one that has to be used for the twthash computation, which is a too arbitrary way of defining something that breaks treading time and time again. And this is the case for not using url+date+message = twthash.
More thoughts about changes to twtxt (as if we havenât had enough thoughts):
- There are lots of great ideas here! Is there a benefit to putting them all into one document? Seems to me this could more easily be a bunch of separate efforts that can progress at their own pace:
1a. Better and longer hashes.
1b. New possibly-controversial ideas like edit: and delete: and location-based references as an alternative to hashes.
1c. Best practices, e.g. Content-Type: text/plain; charset=utf-8
1d. Stuff already described at dev.twtxt.net that doesnât need any changes.
We wonât know what will and wonât work until we try them. So Iâm inclined to think of this as a bunch of draft ideas. Maybe later when weâve seen it play out it could make sense to define a group of recommended twtxt extensions and give them a name.
Another reason for 1 (above) is: I like the current situation where all you need to get started is these two short and simple documents:
https://twtxt.readthedocs.io/en/latest/user/twtxtfile.html
https://twtxt.readthedocs.io/en/latest/user/discoverability.html
and everything else is an extension for anyone interested. (Deprecating non-UTC times seems reasonable to me, though.) Having a big long âtwtxt v2â document seems less inviting to people looking for something simple. (@prologic@twtxt.net you mentioned an anonymous comment âyouâve ruined twtxtâ and while I donât completely agree with that commenterâs sentiment, I would feel like twtxt had lost something if it moved away from having a super-simple core.)All that being said, these are just my opinions, and Iâm not doing the work of writing software or drafting proposals. Maybe I will at some point, but until then, if youâre actually implementing things, youâre in charge of what you decide to make, and Iâm grateful for the work.
@prologic@twtxt.net Thanks for writing that up!
I hope it can remain a living document (or sequence of draft revisions) for a good long time while we figure out how this stuff works in practice.
I am not sure how I feel about all this being done at once, vs. letting conventions arise.
For example, even today I could reply to twt abc1234 with â(#abc1234) Edit: âŠâ and I think all you humans would understand it as an edit to (#abc1234). Maybe eventually it would become a common enough convention that clients would start to support it explicitly.
Similarly we could just start using 11-digit hashes. We should iron out whether itâs sha256 or whatever but thereâs no need get all the other stuff right at the same time.
I have similar thoughts about how some users could try out location-based replies in a backward-compatible way (append the replyto: stuff after the legacy (#hash) style).
However I recognize that Iâm not the one implementing this stuff, and itâs less work to just have everything determined up front.
Misc comments (I havenât read the whole thing):
Did you mean to make hashes hexadecimal? You lose 11 bits that way compared to base32. Iâd suggest gaining 11 bits with base64 instead.
âClients MUST preserve the original hashâ â do you mean they MUST preserve the original twt?
Thanks for phrasing the bit about deletions so neutrally.
I donât like the MUST in âClients MUST follow the chain of reply-to referencesâŠâ. If someone writes a client as a 40-line shell script that requires the user to piece together the threading themselves, IMO we shouldnât declare the client non-conforming just because they didnât get to all the bells and whistles.
Similarly I donât like the MUST for user agents. For one thing, you might want to fetch a feed without revealing your identty. Also, it raises the bar for a minimal implementation (Iâm again thinking again of the 40-line shell script).
For âwho followsâ lists: why must the long, random tokens be only valid for a limited time? Do you have a scenario in mind where they could leak?
Why canât feeds be served over HTTP/1.0? Again, thinking about simple software. I recently tried implementing HTTP/1.1 and it wasnât too bad, but 1.0 would have been slightly simpler.
Why get into the nitty-gritty about caching headers? This seems like generic advice for HTTP servers and clients.
Iâm a little sad about other protocols being not recommended.
I donât know how I feel about including markdown. I donât mind too much that yarn users emit twts full of markdown, but Iâm more of a plain text kind of person. Also it adds to the length. I wonder if putting a separate document would make more sense; that would also help with the length.
@prologic@twtxt.net Wikipedia claims sha1 is vulnerable to a âchosen-prefix attackâ, which I gather means I can write any two twts I like, and then cause them to have the exact same sha1 hash by appending something. I guess a twt ending in random junk might look suspcious, but perhaps the junk could be worked into an image URL like
. If thatâs not possible now maybe it will be later.git only uses sha1 because theyâre stuck with it: migrating is very hard. There was an effort to move git to sha256 but I donât know its status. I think there is progress being made with Game Of Trees, a git clone that uses the same on-disk format.
I canât imagine any benefit to using sha1, except that maybe some very old software might support sha1 but not sha256.
Hello twtxt! Iâm James (or @falsifian@www.falsifian.org). I live in Toronto. Recent interests include space complexity, simple software, and science fiction.
With all M$âs apps being basically fancy web apps, there is no need to actually install any of their legacy applications locally anymore. Since I am online basically 100% of the time this turns my Office experience in a Chromebook like one. No installs, never outdated software. Just a yearly subscription contribution to worry about.
@movq@www.uninformativ.de Thanks for reaching out - just general wonkiness with the Epson printing job configuration UI. They offer Fedora software, but it seems that not all features are supported
Since I have these simple, yet effective bash shell commands, which allow me to edit notes, plans, todos and statuses from the terminal, I feel liberated from overly complex software - everything is just text files and applications which come preinstalled on every Linux system.
Fim de semana produtivo, mas agora vou dormir 72h seguidas
An official FBI document dated January 2021, obtained by the American association âProperty of Peopleâ through the Freedom of Information Act.
This document summarizes the possibilities for legal access to data from nine instant messaging services: iMessage, Line, Signal, Telegram, Threema, Viber, WeChat, WhatsApp and Wickr. For each software, different judicial methods are explored, such as subpoena, search warrant, active collection of communications metadata (âPen Registerâ) or connection data retention law (â18 USC§2703â). Here, in essence, is the information the FBI says it can retrieve:
Apple iMessage: basic subscriber data; in the case of an iPhone user, investigators may be able to get their hands on message content if the user uses iCloud to synchronize iMessage messages or to back up data on their phone.
Line: account data (image, username, e-mail address, phone number, Line ID, creation date, usage data, etc.); if the user has not activated end-to-end encryption, investigators can retrieve the texts of exchanges over a seven-day period, but not other data (audio, video, images, location).
Signal: date and time of account creation and date of last connection.
Telegram: IP address and phone number for investigations into confirmed terrorists, otherwise nothing.
Threema: cryptographic fingerprint of phone number and e-mail address, push service tokens if used, public key, account creation date, last connection date.
Viber: account data and IP address used to create the account; investigators can also access message history (date, time, source, destination).
WeChat: basic data such as name, phone number, e-mail and IP address, but only for non-Chinese users.
WhatsApp: the targeted personâs basic data, address book and contacts who have the targeted person in their address book; it is possible to collect message metadata in real time (âPen Registerâ); message content can be retrieved via iCloud backups.
Wickr: Date and time of account creation, types of terminal on which the application is installed, date of last connection, number of messages exchanged, external identifiers associated with the account (e-mail addresses, telephone numbers), avatar image, data linked to adding or deleting.
TL;DR Signal is the messaging system that provides the least information to investigators.
oh yeah I love software that just dumps giant amounts of data into my home directory without giving me any option of changing where it dumps the data
Ask HN: most interesting, mildly impractical, well-written books on software? [[https://news.ycombinator.com/item?id=29306651]] #links
Trumpâs Group has 30 days to remedy the violation, or their rights in the software are permanently terminated. SF Conservancy
I am out of popcorn, but might need some for this. đ
It looks like @movq@www.uninformativ.de isnât too active these days. This little piece of software is pretty neat!
donât get me wrong, I love the power of emacs. but itâs a very complex piece of software, which is inherrently brittle. not a problem in the short term, but for some of my more long term tools itâs a consideration.
TeX is Long Software. LaTeX is not.
been adopting a document-as-you go approach to the !monolith wiki. as I dogfood my software to make pieces an etudes like !breathing_cards, I write about it in a wiki stub. #workflow #documentation
penning out the structure of my current !music_software_ecosystem
Another fun day of loading data for this software pilot. Itâs fun just watching data load.
I love working with 3rd Party software. When you have an issue you get to put in a ticket and then wait weeks for a response.
CCC | Software to capture votes in upcoming national election is insecure â https://ccc.de/en/updates/2017/pc-wahl