Post your coding projects

I overhauled this over the weekend. It’s much more fleshed out now and abandons rsync for rclone so it can target cloud storage (as well as sftp and local storage).

I’ll combine it with another script that compiles a report of backup activity in a periodic notification email.

I developed my bash style in pretty much a complete vacuum, I’d be curious to see what a more seasoned person thinks of it.

built a little mini itx box to run the server thing on

found a dumb little bug in the mcli thing

just had the part where it resets a int to 0 so it doesnt print the chart to a file, in one loop too low

did some more bug checking and stuff, still workin on it about more

added a built in alias for ‘-n (listname) 1 -a’ to be ‘-snp (listname)’ since found myself doing it a bit often. ex: play a movie after current file ends and then, switch back to the normal programming right after

I’ve been playing with Rust on my Teensy 3.0 to brush up on my bare metal programming chops and catch up on new developments in the Rust ecosystem. I got an LED to turn on once at the beginning but then everything broke and I don’t know where I screwed it up yet :smiley:

dunno sounds weird lol

so far only thing is trying to diagnose a thing where once in a forever it loads the position from the copy instead of the original

am lazy so instead of copy on write, i do copy on read

which is that, when it opens tracking file for the list it has open/is playing

it makes a copy then, typically 11-25min later(90+ if a movie w.e.) then it updates the original to be the new value(usually number+1, unless it hits the end then it resets back to 1)

the benefit being is a workaround for testing for if the file was written properly as linux having disk caching, if i were to just open and try and read it, it would pass, as it can access from memory, which doesnt tell me if its fully written to the disc thru the cache and everything, which lazy to figure out, but also if the system/program whatever crashes before it updates to the new number, or it crashes during write it can just use the old one which would then be the correct value(the file that was last fully played, so it would just restart the same file when they restart the server/have it play that list)

havent figured it out yet will have to wait til i notice it again and then stop the file/cat the 2 position files before it ends, so i can see if the file just never updated/became corrupt or something, as i checked the code and couldnt find anything wrong at first glance, so was gonna check if maybe something with the way the disk is mounted/shutdown procedure might mess it up if shutdown to fast after closing server, if forces it and doesnt wait for cache, in which case i could just add a delay for the shutdown or something(on the server program itself)

An event-driven non-linear component-based note-taking web application with a focus on math.

It’s EXTREMELY early. I only set up the repo a couple hours ago. I am still working out basic user stories and other details.


Let me know your thoughts if interested.

oh yeah

did some minor bugfixes and stuff on md5rcmp

apparently is pretty fast, can do the test load on my media server(some 36k files or so) in the compare snaps mode, so… verifies the first snap(by comparing the files together that they all still match, could probably skip this and just do hash of the file itself), then the second snap, then the 2 snaps to eachother
in less than a second on the athlon 200ge using 1 thread, takes forever to make the snap of course since scrubbing entire drive(like 1tb of data currently)

I think I actually broke something, so now I’m using an nRF51822 bluetooth dev board thingy (based on an arm cortex m0 I think). Starting to get the hang of linker scripts and unsafe volatile register access in Rust :stuck_out_tongue:

Over the past week, I threw this together.

If anyone is actively looking for something on craigslist, I would appreciate any input on usage of it.

I’m still thinking of a better way to manage the telegram bot id, without adding it to the management page. Also, notifications use telegram… I’ll be adding email eventually, but it was easier to just use telegram to have something now.

2 Likes

couple minor changes mcli(forgot a couple minor things forever ago lol)

added a ‘-s’ ‘-start’ option for mserv(so that you can override it starting from the shutdown state into low power/wait state, into the running state)

added a pair of big options for the list creation,
namely a programmed mode
and an option to duplicate sublists(so that they appear multiple times in the list) mainly for the programmed mode

tldr: you can set a specific/exact order to be played and it will just repeat all shorter sublists until the longest one is completed(still works with multiplier for the longest list), with specific consideration for programmed mode that it considers all of the duplicates to be the same list as far as incrementing the sub list, so that they play sequentially,

had to do bunch of stuff for the other options to make it work with the dupe function, so that you can address them individually for changing the placement in the list(with move), multiplier, removing the list it removes all the duplicates etc

found a minor bug
had to move decreasing a integer into an already existing if/then, for the 1000 indexing thing, where the first file only has 999(1-999) and the following have 1000(1000-1999 etc) where it wasnt reading the last line of the file after the first one, in the case of input lists over 999
so just had to move it down one line basically

need to reaudit whole shebang tho still(specifically testing weird/obtuse scenarios looking for such occurrences of minor issues that havent been noticed thus far)

1 Like

Project to view photos from panoramic 360 cameras in VR headsets that also fakes 6-degrees-of-freedom and has non-destructive photo orientation correction

2 Likes

That’s pretty awesome!

Github link?

1 Like

Sorry, I don’t use github (nobody would be able to read my code anyway)… and I sell software.

2 Likes

That’s fair.

1 Like

added

a function to mcli to (pseudo)randomize the sublist order of the currently opened list

also forgot a debugging printf’s from the programmed mode, so removed them

updated the help text(to add rand), had to add a second comparator to an if statement that i added for the dupe function to prevent trying to open a non existing file

2 Likes

gonna run through the help texts and stuff again

but did add most of the stuff for the new functions already,

tuned/corrected a thing with using the single/numbered play when you interrupted the command with a new one, so now it reverts back to list before that command if you issue a halt or a stop, if you issue to play something new it just does that command

3 Likes

just couple more bugfixes mostly, and changed one of the setups for error messages(in some cases it would print one which was also correct but more information then required/not the correct one, like given filename doesnt exist, but also in couple cases arguments didnt match anyways, instead of saying incorrect arguments, would say the file thing first)

and gonna look at some of the text output to make it a bit more uniform with some of the newer stuff

had some downtime on a long gig past couple days so wrote a simple timecode clock and tap tempo bpm counter. Did them both in pythonista app

Code not on github yet, will try to compile in Xcode when I get some time to

havent done much lately with the projects, although probably gonna do a new mode for the md5rcmp thing, probabaly as a -v where it compares files individually instead of for verifying exact backups, more to verify if any files at all match, and report files which dont have any match

which will take alot more compute work to do the substantially increased amount of comparisons, but thats why its not the normal mode/will announce it will take longer etc

not sure how long it will take would have to implement a timer function with pretty high resolution but dont think it would give that accurate of a estimation given how fast it is currently(less than 1 second to verify 2 snaps, and then compare those snaps) as it may be fast enough that cpu turbos etc stuff would effect it a fair amount, where the longer one wont be affected nearly as much by percentage

but think it could be okay since is mostly for emergency use/when you think there may be an issue after a large dataset change to try and verify as much as possible, so if it took say 5000x longer with my current dataset it would only be like ~84minutes assuming it takes a whole second(when i know its less than 1 currently)

I’m not a programmer so this is some basic stuff but i made a GUI, using qt creator, to work with MAME so i can quickly launch various consoles games through MAME.

You can find it here:

And a video of how it works: