go-concise-encoding VS rupy

Compare go-concise-encoding vs rupy and see what are their differences.

go-concise-encoding

Golang implementation of Concise Binary and Text Encoding (by kstenerud)

rupy

HTTP App. Server and JSON DB - Shared Parallel (Atomic) & Distributed (by tinspin)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
go-concise-encoding rupy
8 31
30 136
- -
6.9 1.1
7 months ago about 1 year ago
Go Java
GNU General Public License v3.0 or later -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

go-concise-encoding

Posts with mentions or reviews of go-concise-encoding. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-15.
  • Ask HN: How long does it take for you to release your open source project?
    7 projects | news.ycombinator.com | 15 Mar 2023
    I'm not sure, TBH... Maybe I'm just a glutton for punishment?

    I'm currently partway through refactoring all of the portable unit tests for Concise Encoding ( https://github.com/kstenerud/go-concise-encoding/tree/master... ) and it is a SLOG! I mean, so goddamn boring and tedious that I wanna stick an ice pick through my skull. There's easily another 200 hours of this terrible work ahead and I'll be right back to it the moment Dogma v1 is published in a few weeks (Dogma has been kind of a vacation from it in a lot of ways).

    Do I dread it? Yes. Am I still going to do it? Yes. Because at the end of the day I want to be able to stand back and say "I made that. I completed it - ALL of it. It's not perfect, but it's doing its job and people are using it."

  • Working in the software industry, circa 1989 – Jim Grey
    5 projects | news.ycombinator.com | 11 Jul 2022
    It's still in the prerelease stage, but v1 will be released later this year. I'm mostly getting hits from China since they tend to be a lot more worried about security. I expect the rest of the world to catch on to the gaping security holes of JSON and friends in the next few years as the more sophisticated actors start taking advantage of them. For example https://github.com/kstenerud/concise-encoding/blob/master/ce...

    There are still a few things to do:

    - Update enctool (https://github.com/kstenerud/enctool) to integrate https://cuelang.org so that there's at least a command line schema validator for CE.

    - Update the grammar file (https://github.com/kstenerud/concise-encoding/tree/master/an...) because it's a bit out of date.

    - Revamp the compliance tests to be themselves written in Concise Encoding (for example https://github.com/kstenerud/go-concise-encoding/blob/master... but I'll be simplifying the format some more). That way, we can run the same tests on all CE implementations instead of everyone coming up with their own. I'll move the test definitions to their own repo when they're done and then you can just submodule it.

    I'm thinking that they should look more like:

        c1
  • Ask HN: What are you working on this weekend?
    1 project | news.ycombinator.com | 19 Nov 2021
    I'll be working on the reference implementation [1] of Concise Encoding [2], which is a secure data format for the modern world. My aim is to replace insecure and clunky formats like JSON and XML and the various binary formats that do similar things less conveniently.

    In a nutshell:

    - Existing ad-hoc formats are too loosely defined to be secure, and that's becoming a huge problem as the bad guys become more sophisticated. CE is tightly specified and designed to mitigate exploitation of codecs.

    - CE is a twin text and binary format. Humans view and edit in text, and machines send it in binary, so you get the convenience of text and the efficiency of binary for free.

    - CE supports the fundamental types natively. Stringifying is buggy, causes incompatibilities, and opens security holes. And it's completely unnecessary with a properly designed data format.

    [1] https://github.com/kstenerud/go-concise-encoding

    [2] https://concise-encoding.org/

  • Ask HN: What are some tools / libraries you built yourself?
    264 projects | news.ycombinator.com | 16 May 2021
    I'm building a general-purpose data format for the modern age. The old ones are too bulky, too insecure, and too limiting.

    * Secure: As a tightly specified format, Concise Encoding doesn't suffer from the security problems that the more loosely defined formats do. Everything is done one way only, leaving less of an attack surface.

    * Efficient: As a twin binary/text format, Concise Encoding retains the text-based ease-of-use of the old text formats, but is stored and transmitted in the simpler and smaller binary form, making it more secure, easier on the energy bill, and easier on the planet.

    * Versatile: Supports all common types natively. 90% of users won't need any form of customization.

    * Future-proof: As a versioned format, Concise Encoding can respond to a changing world without degenerating into deprecations and awkward encodings or painting itself into a corner.

    * Plug and play: No extra compilation steps or special description formats or crazy boilerplate.

    https://concise-encoding.org

    Reference implementation (golang): https://github.com/kstenerud/go-concise-encoding

  • I'd like to review your README
    7 projects | news.ycombinator.com | 17 Apr 2021
    One thing golang did right is the go playground. When I put code in my README, I also include a playground link.

    Example: https://github.com/kstenerud/go-concise-encoding#library-usa...

  • Ask HN: Is there a place to build peoples’ open source ideas?
    1 project | news.ycombinator.com | 15 Apr 2021
    I could use some help if you're interested in implementing an ad-hoc data format codec in different languages.

    https://concise-encoding.org is nearing release, but building the reference implementation (https://github.com/kstenerud/go-concise-encoding) has taken so much of my spare time that I couldn't even think about other languages (especially since I'll need to focus on the schema format next, and the proto-RPC protocol after that).

  • Architecture.md
    11 projects | news.ycombinator.com | 6 Feb 2021
    I've started doing this in my larger projects e.g. https://github.com/kstenerud/go-concise-encoding/blob/master...

    An architecture document should be the code equivalent of a combined street map and tourist guide. Its purpose is to bring strangers up to a minimum level of familiarity with the code as quickly as possible. That includes where things are, why it was architected this way, things to look out for, and a few interesting points of weirdness perhaps.

  • Ask HN: Show me your Half Baked project
    154 projects | news.ycombinator.com | 9 Jan 2021
    Concise Encoding: https://concise-encoding.org

    The friendly data format for human and machine. Think JSON, but with 1:1 compatible twin binary and text formats and rich type support.

    * Edit text, transmit binary. Humans love text. Machines love binary. With Concise Encoding, conversion is 1:1 and seamless.

    * Rich type support. Boolean, integer, float, string, bytes, time, URI, UUID, list, map, markup, metadata, etc.

    * Plug and play. No schema needed. No special syntax files. No code generation. Just import and go.

    I'm in the process of finishing up the reference implementation (https://github.com/kstenerud/go-concise-encoding), after which I'll start on the schema specification. Once that's done, I have a low-level communication protocol that will use this format under the hood.

rupy

Posts with mentions or reviews of rupy. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-17.
  • Considerations for a long-running Raspberry Pi
    11 projects | news.ycombinator.com | 17 Feb 2024
    I have been running a Raspberry 2 cluster for 10 years: http://host.rupy.se

    A few weeks back the first SD card to fail got so corrupted it failed to reboot!

    My key learning is use oversized cards, because then the bitcycle will wear slower!

    I'm going from 32GB to 256/512/1024!

  • What Kind of Asynchronous Is Right for You?
    1 project | news.ycombinator.com | 17 Jun 2023
    How this article does not mention SSE, comet or chunking escapes me.

    What does their definition of event-driven really look like in practice.

    Nobody has a clue.

    Here is the ideal event driven system, it's async-to-async: https://github.com/tinspin/rupy/wiki/Fuse

    The example is not working because I had to shut down the services for multiple reasons, but the high level of it is that you use 4 (potentially different) threads to do one request/response middle man transaction.

    That way you have _zero_ io-wait or idling. I'm surprised nobody has copied this approach since I invented it 10 years ago. I understand why though you need your entire chain to be async and that means rewriting everything and that is a big risk when it's hard to debug.

    But if you succeed you can build something that is 10x perf/watt than all other implementations. Which is going to be important when interest rates go higher and crash our entire industry.

  • An unknown Swedish startup’s €3B bid to build a green rival to AWS
    1 project | news.ycombinator.com | 10 Jun 2023
    The hardware is peaking.

    So software is where you can make the difference: http://host.rupy.se

  • Sandstorm: Open-source platform for self-hosting web app
    15 projects | news.ycombinator.com | 4 Jun 2023
  • You Want Modules, Not Microservices
    11 projects | news.ycombinator.com | 3 Jan 2023
    I think we're all confused over the definition. Also one might understand what all the proponents are talking about better if they think about this more as a process and not some technological solution:

    https://github.com/tinspin/rupy/wiki/Process

    All input I have is you want your code to run on many machines, in fact you want it to run the same on all machines you need to deliver and preferably more. Vertically and horizontally at the same time, so your services only call localhost but in many separate places.

    This in turn mandates a distributed database. And later you discover it has to be capable of async-to-async = no blocking ever anywhere in the whole solution.

    The way I do this is I hot-deploy my applications async. to all servers in the cluster, this is what a cluster node looks like in practice (the name next to Host: is the node): http://host.rupy.se if you click "api & metrics" you'll see the services.

    With this not only do you get scalability, but also redundancy and development is maintained at live coding levels.

  • I wish my web server were in the corner of my room
    9 projects | news.ycombinator.com | 11 Oct 2022
    I have hosted my own web server both physically and codevise since 2014.

    It's on a Raspberry 2 cluster:

    http://host.rupy.se

    Since 2016 i have my own database also coded from scratch:

    http://root.rupy.se

    We need to implement HTTP/1.1 with less bloat, a C non-blocking web server that can share memory between threads is probably the most interesting project for humans right now, is anyone working on that?

  • Ask HN: Free and open source distributed database written in C++ or C
    12 projects | news.ycombinator.com | 16 May 2022
    I have one in Java: https://github.com/tinspin/rupy

    Here is the 2000 lines of code of the entire database: http://root.rupy.se/code?path=/Root.java

    And here you can try it out: http://root.rupy.se

  • Dokku – Free Heroku Alternative
    13 projects | news.ycombinator.com | 14 May 2022
    The smallest PaaS you have ever seen is one order of magnitude larger than mine: https://github.com/tinspin/rupy

    And I bet you the same goes for performance, if not two!

  • Server-Sent Events: the alternative to WebSockets you should be using
    19 projects | news.ycombinator.com | 12 Feb 2022
    The data is here: http://fuse.rupy.se/about.html

    Under Performance. Per watt the fuse/rupy platform completely crushes all competition because of 2 reasons:

    - Event driven protocol design, averages at about 4 messages/player/second (means you cannot do spraying or headshots f.ex. which is another feature in my game design opinion).

    - Java's memory model with atomic concurrency which needs a VM and GC (C++ copied that memory model in C++11, but it failed completely because they lack both VM and GC, but that model is still to this day the one C++ uses), you can read more about this here: https://github.com/tinspin/rupy/wiki

    You can argue those points are bad arguments, but if you look at performance per watt with some consideration for developer friendlyness, I'm pretty sure in 100 years we will still be coding minimalist JavaSE on the server and vanilla C (compiled with C++ compiler) on the client.

  • Jodd – The Unbearable Lightness of Java
    12 projects | news.ycombinator.com | 17 Jan 2022

What are some alternatives?

When comparing go-concise-encoding and rupy you can also consider the following projects:

diem - Diem’s mission is to build a trusted and innovative financial network that empowers people and businesses around the world.

huproxy

logsuck - Easy log aggregation, indexing and searching

cmdg - Command line Gmail client

thgtoa - The Hitchhiker’s Guide to Online Anonymity

Nullboard - Nullboard is a minimalist kanban board, focused on compactness and readability.

Joplin - Joplin - the secure note taking and to-do app with synchronisation capabilities for Windows, macOS, Linux, Android and iOS.

cakephp-swagger-bake - Automatically generate OpenAPI, Swagger, and Redoc documentation from your existing CakePHP code.

cargo-readme - Generate README.md from docstrings

dbmate - :rocket: A lightweight, framework-agnostic database migration tool.

vaku - vaku extends the vault api & cli

Aerospike - Aerospike Database Server – flash-optimized, in-memory, nosql database