I was thinking of some file types that afaik don't exist.
One is filesystem entries of files stored in memory from disk files, updated when the disk file modification time changes. This would be a big disk-access optimization in some cases.
The in-memory entry permissions would be ignored, and writing to it would write to the disk file.
Another one is dynamic files that (only) have the name of a executable, which when opened would be executed by the kernel, creating a process child of init with its standard output piped to the file descriptor obtained by opening the dynamic file.
Here reading would depend on both the dynamic file's read permission and the named executable's execute permission. The idea is that it's transparent to the reading process.
Whether they could change the file to which they point to without deleting it would depend on the implementation, I think. (https://en.wikipedia.org/wiki/Symbolic_link#Variable_symbolic_links)
I was gonna make an OS that like totally made sense super intuitive wouldve changed the desktop forever but I got stuck at implementing jishin/kashin.
The first type is called mmap, and caching like that is done automatically by the kernel.
The second type, if I understand correctly, is a script glued to a fifo.
Oh yeah kernel caching.
>The second type, if I understand correctly, is a script glued to a fifo.
That's rather rudimenary. For that you could just serve virtual files. My idea was that the writer and reader programs didn't have to know about this, but, now that I think about it, that just reading might execute something is probably too wild.
Oh, I see. So opening the file would implicitly start its target program, and read/write operations on the file would redirect to stdi/o. How would you change the target program?
Perl uses this idea - opening a subprocess is identical to opening a file, but the filename begins with a pipe.
>How would you change the target program?
Similar to changing other files, probably.
>Perl uses this idea - opening a subprocess is identical to opening a file, but the filename begins with a pipe.
Kinda like the POSIX popen interface, yeah. But having to use special interfaces or languages falls short of transparency.
OS development is a major undertaking, it's not the sort of thing you can do in a weekend, especially considering it requires low-level programming techniques that are avoided in modern application development. The appeal of things like Linux and BSD is that the hard work is already done for you, but unlike Windows or Apple operating systems you have the freedom to modify the user interface (which is all most people really care about, messing around "under the hood" is really only called for when working with embedded systems or mainframes, where you need to get every last bit of performance out of the machine - and only low level programming specialists really have the ability to effectively optimize in those areas, anyway). And the UNIX architecture, although rather old, wasn't really made for "mainframes", one of its main advantages at the time was that it could run on lower-end systems.
Shiichan sucks and is written in PHP. Kareha sucks, is written in Perl (which causes more issues than anything else ever could when trying hard to do so) and doesn't scale well at all, seeing how a board of just the size of 4-ch needs to use archiving scripts in order to keep things running smoothly.
Is there any sane BBS software out there or do I have to try and do it myself, despite not being too much of a coder?
All textboard software sucks. Kareha just sucks less, and Shiichan could also suck less if VacBob actually bothered to clean it up, but I guess not.
Become a coder and code one in Python.
I don't understand why people will use the language that an application is written in as a reason for it being bad. If it is a tool that performs within your requirements and has the features that you need, who cares what its written in?
PHP is just ugly. And Shiichan has undocumented features, BBCode, very serious comments all over the place, horrible logic. Take a look at it and barf.
CGI/Perl is just notorious for causing issues. Especially kareha insisting on having the index.html in the same location as kareha.pl. The moderation could also maybe need some better ACL. I know, trust your moderators and stuff, but it doesn't feel right.
We are sick of language discrimination, more so the PHP/Java bashers. There will be little tolerance of blatant and repetitive insults. You are still welcome to bring forward a sensible, insult-free argument regarding a certain topic at the appropriate time and place for it.
Is there one based on Ruby? If not, I would be willing to help develop one. It would be a good way to beef up my Ruby skills...
My point was that the language of a tool is not reason for it to be considered bad. Your reasons against shiichan are due to poor coding practices, not simply because it was written in PHP. You could find a poorly coded application in any language, but that in itself is not a reason to dislike that language. You shouldn't dislike well written applications simply because of the language that they were written in either.
Personally, I don't like PHP and no longer use it for new projects. Is that going to stop me from using a PHP application if it is the "best" tool for the job? No.
AOMEI Backupper is the simplest FREE backup software with system/disk/partition/file backups and system/disk clone. http://www.backup-utility.com
Have you considered <del>converting to Scientology and discovering what Lord Xenu wants for you</del> I mean Re-writing it in Rails?
What are your (current) hobby projects? What languages or libraries are you using? How usable or complete is it? What makes what you're doing novel or great?
No need to be smug or anything, or get all angry at other people for using <thing you hate>. Just share what you're up to. Add a URL if it's public too, if you want.
I'll start. I'm writing a stack-based language in Racket for use in embedded devices. It's already got Hindley-Milner style type inference, it just needs to actually produce output.
I'm also planning a modal text editor that feels like vim and a music-making program somehow.
But enough about me. Let's get some actual content on the front page of /code/.
tbh it looks like something people on /prog/ would masturbate over, and I don't see why I should care. I can back up and restore any *nix system with
dd, and have no need to add more moving parts that break as soon as you actually need to restore a backup.
That's great for you, and I'm sure your total lack of experience with nix and guix gives you license to shout your opinions on them as loudly as you want with the other over-opinionated folks on /prog/.
It's actually got fewer moving parts than most other distros, though. I'm curious, how does [code]dd[/code] fare when you want to set up the same system on a different machine with a smaller disk?
I tried installing GuixSD on an EEE PC netbook and it did a kernel panic every time.
After all this pain I am running Void on my netbook, and not really bothering with any backup/reproducibility plans.
Welcome to die
I want to be a professional programmer because I'm under the impression programmers don't have to speak that much. The only programming language I know is Java because I took a few classes. I liked learning Java, and it came easy to me, but even though I want programming to be my job, I don't want to learn any more-- I prefer drawing manga pictures (which I'm bad at). What should I do?
remove your ribs and try to get your own penis into your mouth :)
speaking is fun nigga
yo will need to remove some spine and muscle too
or soak them in vinegar to make them more flexible
or just do yoga goddamn
Get better at drawing manga and hope for the best. Programming as a job involves working in teams and lots of communication.
Along with this question on motivation, how can you motivate yourself to program for multiple hours straight?
have a grand plan in your head, when you get bored take a look at the bigger picture and think about what to do next, your interest in the subject will grow
Yeah, I agree with >>5. If you are going to get programming as your job, you will communicate alot. As you need to explain your code to your team, and explaining the functions of your program to your client/boss.
As for >>6, I'm motivated to program for multiple hours when I know that I am getting progress at coding the program.
Give yourself a sequence of small, defined goals that you know you can easily achieve and that follow on from each other. I'm talking less than half an hour for each thing; you want to be able to know you can do it soon, but don't bother planning any smaller than that - tedium isn't fun.
Make sure that you can tell whether the thing works once you've done it for the sense of achievement, and the "Cool, now I've got that working, I can do this!" that follows.
Do this plan for a couple of different areas of your project so you have more to work on if you get stuck.
Optional: drink coffee and booze alternately. YMMV.