A devastated Software Systems student, libre software promoter. Sometimes I draw pixel art. Very fond of classical Computer Science and Touhou project.

Autism® Inside™

  • 1 Post
  • 69 Comments
Joined 2 years ago
cake
Cake day: March 28th, 2023

help-circle

  • Hi. I understand your rant. Yes, the quality of most frameworks in the wild is pretty low, especially if it is one of the more niche algorithm nobody takes care to audit, or the programming language lacks safety syntax, like C++, which allows writing mixed C and C++ code and only few people understand the necessity of idiomatic C++. And of course, inexperienced devs go the easiest way.

    Don’t give up and take this as a challenge. It is a skill to understand what the other guy wrote. And this skill takes years to develop.







  • raubarno@lemmy.mltoLinux@lemmy.mlWhich is better: Linux or GNU/Linux
    link
    fedilink
    arrow-up
    6
    arrow-down
    1
    ·
    edit-2
    1 year ago

    As the others made a good point, Linux is the kernel (program that connects hardware altogether and manages processes). GNU is an organisation beginning in 1983 that made some vital userland programs (Bash, GCC, readline, GNOME, GTK, GIMP, etc.) as a replacement of the proprietary ones found in UNIX and Windows. Linux is created by a Finnish student Linus Torvalds and is not a part of the GNU project but it’s been licensed under the GNU General Public License (GPL), the first free software license.

    Linux is used by a lot of companies, and some of the products that have Linux inside refuse to accept the paradigm of software freedom. Examples of this are: Chrome OS, Windows Subsystem for Linux, Google Android and some (but not all) appliances (like routers) that are locked-in and contain proprietary blobs.

    Therefore, in technical discussions, I use the word “Linux” to refer to the OS, as “this software is compatible with Linux”. But, when I want to stress out software freedom, given a large influence of the GNU project, I say “GNU/Linux”.




  • There are programs (LyX, TexMacs) that implement WYSIWYG for LaTeX, TexMacs is exceptionally good. I don’t know about the standards, though.

    Another problem with LaTeX and most of the other document formats is that they are so bloated and depend on many other tasks that it is hardly possible to embed the tool into a larger document. That’s a bit of criticism for UNIX design philosophy, as well. And LaTeX code is especially hard to make portable.

    There used to be a similar situation with PDFs, it was really hard to display a PDF embedded in application. Finally, Firefox pdf.js came in and solved that issue.

    The only embedded and easy-to-implement standard that describes a ‘document’ is HTML, for now (with Javascript for scripting). Only that it’s not aware of page layout. If only there’s an extension standard that could make a HTML page into a document…




  • Markdown, CommonMark, .rst formats are good for printing basic rich text for technical documentation and so on, when text styling is made by an external application and you don’t care about reproducible layout.

    But you also want to make custom styles (font size, text alignment, colours), page layout (paper format, margin size, etc.) and make sure your document is reproducible across multiple processing applications, that the layout doesn’t break, authoring tools, maybe even some version control, etc. This is when it strikes you bad.


  • Open Document Standard (.odt) for all documents. In all public institutions (it’s already a NATO standard for documents).

    Because the Microsoft Word ones (.doc, .docx) are unusable outside the Microsoft Office ecosystem. I feel outraged every time I need to edit .docx file because it breaks the layout easily. And some older .doc files cannot even work with Microsoft Word.

    Actually, IMHO, there should be some better alternative to .odt as well. Something more out of a declarative/scripted fashion like LaTeX but still WYSIWYG. LaTeX (and XeTeX, for my use cases) is too messy for me to work with, especially when a package is Byzantine. And it can be non-reproducible if I share/reuse the same document somewhere else.

    Something has to be made with document files.




  • raubarno@lemmy.mltoLinux@lemmy.mlI had a journey
    link
    fedilink
    arrow-up
    3
    arrow-down
    2
    ·
    1 year ago

    Okay, maybe Lithuanian will explain better to an Estonian:

    Once in the 19th century there was a rapid industrialization. Farmers and citizen guild-workers lost their economical value and had to turn into factory workers. At that time, there was massive unemployment, and factory owners were unregulated. Then a philosopher Karl Marx went in, and started to analyse. He concluded that, in history, it’s always ‘slaves vs landowners’, then ‘peasants vs seniors’, and ultimately ‘workers vs enterprise owners (bourgeoisie)’. He named this phenomenon ‘class struggle’, and hypothesised that, after workers will defeat bourgeoisie, then it would be possible to create a perfect egalitarian society with no exploitation, in which people have all the rights except the right to be rich. That was called ‘Communism’, a proposed ideal society.

    His ideas attracted many followers, which were split into several political campus, for instance, Socialist democracy (‘mild’ socialism, rich people pay more taxes, etc.), Anarcho-Communism (no state, no regulations, lived only for a short period of time in Ukraine), and many more.

    Then V. Lenin came in, and told there must be a ‘peasants’ revolution’ that abolishes the existing state(s), kill all the enemies of that revolution, become a Socialist country (ie. State controls all the economy) and then slowly progress into Communism. His practices were furthermore refined by Stalin and were called ‘Marxism-Leninism’. History of the USSR shows that the power of a Socialist state can be used to create a totalitarian prison.

    So ‘Communism’ can mean either an egalitarian society or heading towards that direction, basically.




  • Looking at the log of my solo project, I could say the formula of my commit message is Verb the Subject, the Verb being Added/Tweaked/Removed, etc., and the subject of what is being changed. As I’m using git commit -m 'Message' GNU Bash every time (none of the clients tend to work well for me + git self-hosting practice over SSH), I just try to make one-liners and without entering an external editor.

    Although my professional experience is scarce. For most of the time, I’ve been creating but not maintaining my projects. My projects do not have a decent high-level structure, I do not test my codebase, I learn my code by heart and follow intuition. I tend to think in algorithms, rather than structural design patterns. Even for my newest project, the main.rs is bloated, the functions are not in the correct modules (a.k.a. files), the modules are improperly named. Alhough, I cannot believe in myself I am approaching 3.5K lines of code (separated over two repositories) but I can still navigate…