The project is a POC (Proof of Concept) that went into production and the company has customers who are using it. The developers had been working for several years, without testing, structure, isolation and so on. The company hired me to transform the project into a real product. There are in my hands 422 python files to transform that they beg me a refactore, architecture and testing. Every developerās bad dream.
My first step is to read and understand the tree because there are apps inside other apps call each other. I am very determined to work on a new repository.
1st thought⦠Run!
Well, Iāve heard you have plenty of experience with Unit Testing and TDD. Perhaps designing a few tests before refactoring?
Iāve heard of Snapshot testing, but have never tried it: https://github.com/spatie/phpunit-snapshot-assertions
Also, what kind of refactor are you trying to do?
@andros@twtxt.andros.dev I suggest to not touch it and work on a different project instead. :-D
No, in all seriousness, thatās a tough one. Try to figure out the requirements and write tests to cover them. In my experience, if there is no good documention, tests might also be lacking. It goes without saying that you have to understand the code segments first before you can begin to refactor them. Commit even earlier and more often than usual, this will help you bisecting potentially introduced bugs later on. Basically baby steps.
But it also depends on the amount of refactoring required. Maybe just scrap it entirely and start from scratch. This might not be feasible due to e.g. the overall project size, though.
Testing the limits of our new 5G internet connection at home with pushing 1.5GB docker images into the cloud a bunch of times dayā¦
NASA tests new nuclear rocket fuel + 2 more stories
NASA and General Atomics test nuclear fuel; Ukraine employs more drones for war effort; engineered bacteria shows promise in recycling nylon waste. ā Read more
For many years I have found Flask to be too basic a tool for modern development. But since I create APIs using Flask with Pydantic to validate the input data, some middlewares for parsing and Blueprint to separate the code into modules⦠I must admit that I am super comfortable, fast and easy to test.
#flask #python #pydantic
Dies ist ein Test zum Verfassen eines Beitrags im TwtxtReader - inklusive Upload-Funktion für Bilder.
@prologic@twtxt.net Or databag self-hosted on a RaspberryPi you can throw on a corner of your basement (or a small vps if one is willing to pay for threema) and never look back. The hardest part is getting others to at least test anything other than the already mainstream apps.
@andros@twtxt.andros.dev Sweeeeet! Just gave it a try, youāve done a wonderful work š«” I wanted to replay from there but couldnāt go past the first page of the feed. It kept freezing on me and complaining about some bad Url (as mentioned on the test twt), so Iāll have to dig through my follow list and see where I effed up this time. š
Skill Issues of course, but that's going away next as soon as I get my php-fpm shi_ together.
@doesnm.p.psf.lt@doesnm.p.psf.lt yes, thatās what I did while testing things out on locally but Timeline kept freaking out on me. Iām still RTFMing trying to wrap my head around the rewrites and such.
What is clean architecture? Thatās a good question.
You think of a pattern for ordering code with good decisions isolating technologies (you can change the web framework or database without break the business logic), easy to test (you only test interfaces and use cases), sharing code between frameworks (entities and use cases), scalability, modulations and standardizing names. Clean architecture is not perfect, it has a learning curve and some abstraction in each technology. You can even find rejection with yours colleagues.
I have a good article on this topic.
https://programadorwebvalencia.com/implementando-arquitectura-limpia-en-python/
#python
@prologic@twtxt.net @lyse@lyse.isobeef.org First, please leave me your comments on the repository! Even if itās just to give your opinion on what shouldnāt be included. The more variety, the better.
Second, Iām going to try to do tests with Elliptic keys and base64. Thanks for the advice @eapl@eapl.me
Finally, Iād like to give my opinion. Secure direct messages are a feature that ActivityPub and Mastodon donāt have, to give an example. By including it as an extension, weāre already taking a significant leap forward from the competition. Does it make sense to include it in a public feed? In fact, weāre already doing that. When we reply to a user, mentioning them at the beginning of the message, itās already a direct message. The message is within a thread, perhaps breaking the conversation. Direct messages would help isolate conversations between 2 users, as well as keeping a thread cleaner and maintaining privacy. I insist, itās optional, it doesnāt break compatibility with any client and implementing it isnāt complex. If you donāt like it, youāre free to not use it. If you donāt have a public key, no one can send you direct messages.
@doesnmppsflt@doesnm.p.psf.lt It looks like it⦠Although they shouldnāt be empty since Timeline took care of sending those. I believe I have an idea as to why that happened, but will have to test before filing an issue.
@doesnm.p.psf.lt@doesnm.p.psf.lt Testing Testing⦠123⦠Ouiiiiiii⦠š
Test reply for webmention tester!
@movq@www.uninformativ.de I think it was user error. Testing again.
Testing ⦠(yeah!)
The editor can launch a new shell now:
https://movq.de/v/6ec68b50dd/los86-edit-shell.mp4
Trivial to implement but super useful. It allows for simple but meaningful dev cycles: Edit source code, run/test it, back to editor. Thatās what I do in the video.
(The Brainfuck program is silly, but I got nothing else at the moment.)
The I/O cache is also getting better. All that back and forth doesnāt hit the disk at all, once cached.
This whole thing is much more fun and interesting when you run it from a real floppy disk. Itās a 5.25ā floppy in the video (so itās actually floppy š ). Disk seek times can be catastrophic and you donāt notice any of this on modern disks.
Test twtxt parser (please remind me to delete this)
Iām still making progress with the Emacs client. Iām proud to say that the code that is responsible for reading the feeds is almost finished, including: Twt Hash Extension, Twt Subject Extension, Multiline Extension and Metadata Extension. Iām fine-tuning some tests and will soon do the first buffer that displays the twts.
Meh, I hit an import cycle while writing tests. Now I have to relocate some code. What do we conclude from that: donāt write tests. ;-)
tz test
test
testing video posts hereās a yunjin fancam
⨠Follow button on their profile page or use the Follow form and enter a Twtxt URL. You may also find other feeds of interest via Feeds. Welcome! š¤
whyād it announce my test account LOL
š Hello @test@yarn.girlonthemoon.xyz, welcome to yarn, a Yarn.social Pod! To get started you may want to check out the podās Discover feed to find users to follow and interact with. To follow new users, use the ⨠Follow button on their profile page or use the Follow form and enter a Twtxt URL. You may also find other feeds of interest via Feeds. Welcome! š¤
"twtxtfeevalidator/0.0.1" UA about? I thought I could ask before throwing a 1000GB file at it šŖ¤ could it be the same 'xt' thing @lyse was talking about the other day?
I cobbled that together yesterday, @aelaraji@aelaraji.com. Since I was too lazy to write some tests, I simply hit your feed as I knew it contains two invalid lines right now. Sorry mate! :-( Next thing is to actually write some proper tests, improve the messages, etc.
Hereās the code: https://git.mills.io/yarnsocial/validator
Looking forward to that, @prologic@twtxt.net. :-)
@lyse@lyse.isobeef.org itād be a blast to record too with my camcorder! iād have to figure out positioning and stuff like you said but i could probably figure something out with a bit of testing :P yeah it probably does make the project itself longer than it should be but i feel like if you make it a cozy kinda āsew with meā video where people watch you sew and film it with a static angle instead of like, showing every step? i think thatād be nice even if a bit boring. so i could absolutely try that.
magnetic tape camcorders omg!!! mine is digital but iād LOVE to get a tape camcorder
my camcorder battery & mini dvds came in the mail so i did a test recording! itās so cool i love the crap quality. i do hope the memory stick arrives soon though because for the discs i canāt get them on my computer (not even a rom drive filesystem mount) without āfinalizingā the disc which is like an old camcorder thing. i still think iāll prefer disc recording though even if a limit of 30 minutes (or longer for lower quality) is strict. i like limitations like that
image upload test. have a wonyoung

another cli test for icons this time
cli test 3
cli test 2
cli test
test
test
test test test
Test Mention for Goryon! @doesnm@demo.yarn.social
Lasering Incidents
ā Read more
Dies ist ein Test!
Does anyone else declare a computer dead after extensive testing, let it sit on a shelf for 2 weeks or a year, try it again, and have it work fine? It seems like thatās happened to me a lot more than it should.
@eapl.me@eapl.me why not https://domain.com/.well-known/twtxt/:domain/:user ?
the business card test is this can you write it on your business card and have someone you give it to be able to figure it out without added context?
- phone number: yes because everyone knows what a phone number is.
- email address: yes, everyone knows an email and their aol or prodigy will let them email.
- twitter/x/insta/pintrest handle: no, whats a twitter? do i need to sign up?
- domain name: yes its simple and you just type it in a browser right?
- twtxt url: kinda? its a bit long and is that a forward slash? or a backward slash?
Lyse and me tested. Now prologic make public key auth. Ask prologic for create user and give your public key
Another test testing your test! š
Test post from IndiePass app
Micropub test of creating a basic h-entry
Hm, does your implementation works not with txt-only? Iām tried to write own but didnt test it: https://paste.ee/p/CopOR