[go-nuts] [ANN] ethereum-playbook: configure and deploy Ethereum DApp infrastructures using a static specification

2018-10-22 Thread Maxim Kupriianov
Ethereum-playbook is a CLI tool that configures and deploys Ethereum DApp 
infrastructures using a static specification.

Ethereum is a decentralized platform that runs "persistent scripts" called 
smart contracts. These sentinels resemble the usual microservices in a web 
application architecture, each having an API and dependencies. With growing 
amount of services in the distributed application, the fuss with deployment 
and data management becomes very significant.

The tool has been designed to be simple, with lowest possible mental 
overhead and absoulte no learning curve. It has been designed to be more 
declarative, rather than imperative, using YAML for the playbook. 
Everything that is declared in a playbook: inventory, wallets, contracts, 
commands and targets is statically validated upon start. The playbook 
doesn't have a state. It has been inspired by Ansible Playbooks 
 however 
has a different terminology and approach.

https://github.com/AtlantPlatform/ethereum-playbook

Enjoy!
- Max

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] ANN: objstore a multi-master distributed caching layer for Amazon S3

2017-08-29 Thread Maxim Kupriianov
Hi gophers, let me share a cool project with you.

https://github.com/SphereSoftware/objstore

This project aims to provide an easy to use, self-organising multi-master
caching layer for various cloud stoarge backends, e.g. S3. It combines
functionality of a simple object storage with added robustness of cross-node
journal synchronisation, object replication and cluster auto-discovery.

*Discussion & FAQ:*
https://www.reddit.com/r/golang/comments/6wnxhc/a_multimaster_distributed_caching_layer_for/

--
Regards,
Maxim Kupriianov

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] [ANN] Nuklear GUI package for Go now supports various backends including Android

2017-01-08 Thread Maxim Kupriianov
Hello Gophers.

Nuklear is an immediate mode graphical user interface toolkit written in 
ANSI C, it is platform agnostic and custom backends can be implemented to 
execute drawing commands and handle input on any platform.

I wrote backends for desktop GLFW OpenGL 2.1 and 3.2, as well as an Android 
backend for EGL OpenGL ES 2 and ES 3 in Go programming language. So now 
it's rather easy to create sophisticated GUI apps for Android in Go. Please 
see examples.

https://github.com/golang-ui/nuklear

https://github.com/xlab/android-go

https://www.youtube.com/watch?v=3-MiceegZlM

Feedback is welcome!

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] A simple WebM player with support of VP8/VP9 video and Vorbis/Opus audio.

2016-09-27 Thread Maxim Kupriianov
Hi folks,

just a project of a weekend, I've implemented a WebM player that's based on 
libvpx bindings an that actually decodes the video and audio, not a 
shortcut for ffmpeg. While being still poor on audio sync after seeking, it 
works just good enough to show how bindings for large C libs can be useful. 
It also contains sample code on the Opus and Vorbis decoding flow, the 
latter is always really tricky to get right. EBML parsing work is made 
previously by Jorge Acereda Macia, he's a bit upset after I used his code, 
so keep up dude, you rock.

https://github.com/xlab/libvpx-go

Please note that the demo player is based on GLFW+Nuklear to do GUI, there 
may be complications with compiling under Linux or Windows,
feel free to file any bugs you found. I wish I could write that part 
entirely in Go, but not this time.

-Max

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] Re: [ANN] Cgogen - automatic Go bindings generator released

2016-09-20 Thread Maxim Kupriianov
Hi Markus, nice project! I must agree that the subject-specific bindings
will always be superior over the generic ones. Another good example of that
is https://github.com/therecipe/qt bindings with custom generator as well.

As for LLVM, I'm trying to avoid using it for now, because that's a very
heavy dependency to have. Also that'd require rewriting more than half of
the current code. One day we may join our efforts working on a generic C
code transcriber, but that's another story.

> Maybe we can find some inspiration from each others projects?

I find the "ArrayNameFromLength" function curious, sadly things like that
are almost impossible in a generic context, even with YAML hints.
Take a look onto my helper pipeline (gen_bindings.go), I used that approach
instead of using templates that are pure evil for generating code.

I definitely will study your code deeply because it's interesting indeed to
compare our approaches to the same problems.
Feel free to reach me out :)



On Tue, Sep 20, 2016 at 1:23 PM, Markus Zimmermann <zimm...@gmail.com>
wrote:

> This looks pretty neat. We did something similar for
> https://github.com/go-clang/ The generator is here
> https://github.com/go-clang/gen and a resulting binding is here
> https://github.com/go-clang/v3.7 Maybe we can find some inspiration from
> each others projects? It would be also interesting to figure out how we
> could merge each efforts?
>
> Cheers,
> Markus
>
> On Tuesday, September 20, 2016 at 10:19:14 AM UTC+2, Maxim Kupriianov
> wrote:
>>
>> Hello everyone,
>>
>> today I'm glad to announce that after 3 months of full-time development
>> back in 2015 and after 1 year of part-time field testing and improvements
>> in 2016,
>> an automatic CGo bindings generator for Golang is finally released to the
>> public. Visit https://cgogen.com
>>
>> Sources: http://github.com/xlab/cgogen
>> Documentation: https://github.com/xlab/cgogen/wiki
>>
>> That is the same generator that brought us Go bindings for Android NDK,
>> Vulkan Graphics API, CMU PocketSphinx, ALAC and Ogg/Vorbis decoders, Pure
>> Data embeddable library, PortAudio and PortMIDI adapters. And bindings for
>> the libpvpx from WebM are on their way.
>>
>> I hope the project will be useful for the community and awaiting for the
>> feedback and issues.
>> Good luck y all!
>>
>> --
>> Max
>>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "golang-nuts" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/
> topic/golang-nuts/3I7TzmEirbo/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] [ANN] Cgogen - automatic Go bindings generator released

2016-09-20 Thread Maxim Kupriianov
Hello everyone, 

today I'm glad to announce that after 3 months of full-time development 
back in 2015 and after 1 year of part-time field testing and improvements 
in 2016,
an automatic CGo bindings generator for Golang is finally released to the 
public. Visit https://cgogen.com

Sources: http://github.com/xlab/cgogen
Documentation: https://github.com/xlab/cgogen/wiki

That is the same generator that brought us Go bindings for Android NDK, 
Vulkan Graphics API, CMU PocketSphinx, ALAC and Ogg/Vorbis decoders, Pure 
Data embeddable library, PortAudio and PortMIDI adapters. And bindings for 
the libpvpx from WebM are on their way.

I hope the project will be useful for the community and awaiting for the 
feedback and issues.
Good luck y all!

--
Max

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] [ANN] A package for offline speech recognition and analysis with CMU PocketSphinx

2016-09-04 Thread Maxim Kupriianov
http://github.com/xlab/pocketsphinx-go

Hello. A reddit user has asked if there are any options for offline speech 
recognition for Golang, so I did a quick research and was surprised that 
thing like CMU Sphinx[1] has no Go bindings yet. That's a legendary 
framework and it continues to improve every day for 20 years now. So enjoy.

[1] http://cmusphinx.sourceforge.net/wiki/about

- Max

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] [ANN] Golang Bindings for Vulkan API with demos

2016-08-16 Thread Maxim Kupriianov
Hi everyone!

I'd start from a little story. On 3rd March a Reddit user itsmontoya, a 
friend of mine, besides an ex-coworker, challenged me to do Go bindings for 
the Vulkan API that has been released officially that day. It was a fun 
idea since vulkan.h is a big chunk of a typical header code and I decided 
to accept it. In a couple of hours I got ~17KLOC of binding code for that 
header. Well, I had no idea where to get the implementation..

So it turned out that the implementation is a vendor-specific thing, and 
the fastest way to get it is to buy an android tablet from Nvidia. So I did 
that and after a couple of months (the parcel has been lost twice, so I 
reordered) the table tablet was mine. In order to be able create apps for 
android using the Android NDK without any fancy stuff being done with 
ANativeWindow, I dedicated some time in May to create the well discussed 
freamework http://github.com/xlab/android-go. It works cool with 
EGL/GLES/GLES2 but of course that was a side-effect. What I really did was 
the first Vulkan run on a device that got me the surface properties.

Since May my binding generator improved a lot due to feedback and bugs I 
got while binding those two beasts,
so in August I found some time on a weekend to create examples. And now I'm 
glad to announce the release.

Package github.com/vulkan-go/vulkan [1] provides Go bindings for Vulkan [2] 
— a low-overhead, cross-platform 3D graphics and compute API. And some demo 
apps [3] for Android for those who have got the supported devices.

[1]: https://github.com/vulkan-go/vulkan
[2]: https://www.khronos.org/vulkan/
[3]: https://github.com/vulkan-go/demos

Cheers!
- Max

P.S. still no generator release, but I may assure it's 99.9% ready now, 
after all this :P

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.