• 2 Posts
  • 7 Comments
Joined 1 year ago
cake
Cake day: June 1st, 2023

help-circle
  • Yep, streamlining the process to write a new compiler. Most compiler development utilize something like Bison/Flex or by handwriting their own lexer/parser, but those things doesn’t generate AST tree and you still have to read/modify that AST tree before reading it to generate the final resulting code.

    The sheer absurdity in scale of development increases when you realizes that you also have to do the same for LSP server.

    Melosynthos is came up with to think about streamlining all of this in one unified workflow.



  • Yeah, but when someone is completely new to programming, it’s best to start somewhere easy where there are quite a lot of tools to help them fix bugs in code. In C# IDE, it have a lot of visual indicators to help them identify bugs, debugger is pretty comprehensive and integrated, and there are quite a lot of resources to introduce them to programming in forms of videos and documentations and community. The goal of learning C# is not to only program C#, but to get them acquaintances with general programming such as for loop, memory management like using disposal in C#, recursion functions and so go on. They can use C# as a starting point to just basic programming and then once they are comfortable, they can move on to other language that they are curious about.


  • One of the thing I recommends is to start small. Going from Python to C is quite a leap, because C language requires some fundamental computer science understanding when you write codes that offers no railing or safety net when you make mistakes. I would actually suggests that you start with C#, it is very forgiving when you make a mistake and have various tools to help you identify the bug in your program.

    Big part of C# is that there is available video tutorial on an introduction to C# provided by Microsoft and it have subtitles. The biggest reason why I would recommend C# to beginner is simply that they offers a lot of resources to help beginners understand the fundamental of programming in general. They have tons of books, video tutorials, vibrant community, and so forth. Also C# can run on wide range of platforms, Windows, Linux, Mac OSX, Raspberry Pi, and so forth. Once you master C#, you’ll find that a lot of the knowledge you gained from it is transferable to C, C++, Rust, DLang, and so forth.


  • That’s an interesting dilemma when you bring up Android. I have always considered android device as a hardware compromised device and that it shouldn’t be used for highly confidential data to an extent that you might be using PGP/GPG for.

    But you could have all of your PGP/GPG centrally managed on a Linux system with android device having it’s own unique keypair that is signed by your root PGP/GPG keypair on your Linux system. As for software for managing GPG/PGP on Linux system, I just simply use KGPG which does the job plenty well. If you have to use PGP/GPG on Android Phone, then I recommend sticking with f-droid repository for PGP/GPG key management app, not Google Play Store.

    OpenKeychain Source Code

    OpenKeychain Package on F-droid

    Few use-cases for GPG/PGP on android is encrypting email or chat, but application integration is limited to select few software like K-9 Mail or Conversations.

    –Edited to add–

    Why the heck did server spam duplicates of my comments? :(