Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 14 19:13
    hwanders commented #4096
  • Dec 14 13:05
    IgorFedchenko commented #4085
  • Dec 14 03:08
    hhko commented #4094
  • Dec 13 21:37
    Aaronontheweb commented #4085
  • Dec 13 20:28
    IgorFedchenko commented #4085
  • Dec 13 20:27
    IgorFedchenko commented #4085
  • Dec 13 15:38
    Aaronontheweb labeled #4096
  • Dec 13 15:38
    Aaronontheweb milestoned #4096
  • Dec 13 15:38
    Aaronontheweb labeled #4096
  • Dec 13 15:38
    Aaronontheweb opened #4096
  • Dec 13 10:41
    peirens-bart opened #4095
  • Dec 13 08:37
    Aaronontheweb synchronize #4071
  • Dec 13 08:13
    jiyeongj opened #4094
  • Dec 12 15:42
    Aaronontheweb synchronize #4086
  • Dec 12 15:42
    Aaronontheweb closed #4083
  • Dec 12 15:42

    Aaronontheweb on dev

    Fix #4083 - Endpoint receive bu… (compare)

  • Dec 12 15:42
    Aaronontheweb closed #4089
  • Dec 12 15:42
    Aaronontheweb labeled #4093
  • Dec 12 15:42
    Aaronontheweb labeled #4093
  • Dec 12 15:42
    Aaronontheweb labeled #4093
Aaron Stannard
@Aaronontheweb
pull up a chair, and hear my song: a tale of woe about endianness, built-in serializers, and wire format compatibility
Joshua Benjamin
@annymsMthd
lol
Arjen Smits
@Danthar
hehe ^^
Aaron Stannard
@Aaronontheweb
many moons ago, computer organizers decided for no apparent reason to organize words in memory in completely backwards orders
across different systems for reasons that are arbitrary
but that matters not
the JVM architects decided, for their own reasons, that big endianness was the one true way to organize bytes
and Microsoft, being the arch-nemesis of any company run by open source birkenstock-wearing hippies
decided that little endianness must be the one true way
Arjen Smits
@Danthar
birkenstock lol
Joshua Benjamin
@annymsMthd
and so the battle of endianness swept the land into darkness and despair
Aaron Stannard
@Aaronontheweb
yes, indeed
file format and wire compatibilities were hopelessly dashed
and many heated arguments between bearded UNIX-y types ensued
and for all a time, there was nothing but darkness spread across the land
Aaron Stannard
@Aaronontheweb
but as the years crept by, legends arose in the Microsoft community of new projects in JVM land
of unspeakable power
distributed databases, batch processing systems, streaming ETL pipelines
much like the citizens of East Germany living in the shadow of the Berlin wall, we dismissed these stories as just JVM propaganda
and chuckled smugly to ourselves as we patiently waited for SQL Server 2013 Super Streaming MapReduce Does Everything Edition
but as the years ticked by, these stories stepped into the realm of fact
and us CLR developers, seeing with our own eyes for the first time, decided that the great Endian war must come to an end
so we learned how to use byte[].Reverse()
But no, my sweet summer child, that was not the end
indeed... as it turns out - none of our built-in serializers are cross-platform compatible
and thus the small light of hope we only just recently lit was in danger of being squelched by the aftermath of the Endian war after all
Aaron Stannard
@Aaronontheweb
But we said "enough!" and developed cross-platform wire formats that used their own serializers, like Thrift and Protobufs
and finally tore the great format wall down once and for all
ok, I can't keep telling this like an Epic poem
gave it everything I had
lol
Joshua Benjamin
@annymsMthd
clapping
Aaron Stannard
@Aaronontheweb
the lesson of the story is - if you want Akka --> Akka.NET interop, then you will need to add a cross-platform object representation format
and make sure both ends serialize using that
might be as simple as adding a JSON serializer as the default for Akka
and then on the CLR side you'll need to account for endianness
probably better off just making an Akka.IO wrapper in C#
and use that to communicate as a client
rather than attempt to get Akka.Remote / Akka.Cluster to be JVM-compatible
was wondering when Galdalf the Red, Blue, Yellow and Green would come in
Joshua Benjamin
@annymsMthd
those are the bearded UNIX-y types
Arjen Smits
@Danthar
lol. Some Magica pics would be suitable as well ^^
Natan Vivo
@nvivo
Arjen Smits
@Danthar
rofl
Aaron Stannard
@Aaronontheweb
at some point we'll do an Akka.NET conference and I'll try to come up with an interpretive dance version of this story
lol @nvivo
Arjen Smits
@Danthar
@Aaronontheweb be carefull now. We will hold you to that!
Aaron Stannard
@Aaronontheweb
I used the word > try