During the last week I have been away on a hackathon with friends. We rented a big vacation home and made ourselves comfortable there. We didn't have any special topic or project to work on. Everybody just met there to have fun playing around with whatever he wanted to test, learn or discuss. As always it hasn't only been a lot of fun, but quite a productive week as well.
An experimental Grid of L8s
After receiving further L8s. I planed on integrating a Grid feature into my node-l8smartlight library. I wanted to control a grid of multiple L8s, as if they were one big matrix with a greater amount of pixels. In order to do that I introduced an abstraction layer, which transparently maps between a matrix of the available L8s pixels, and their respective local coordinates and operations. The whole process is completely transparent to the user. I took a small video of it during the hackathon, which demonstrates the first working implementation of it.
Before releasing a new version of the library I will have to cleanup and document the created code further. However you are welcome to play around with what is there already. You will find the current state in the master branch of the node-l8smartlight repository over on github.
An experimental FTP2HTTP gateway in Go
After my initial work on the L8s was finished I wanted to do something new. Learning a new programming language? I have been curious about Go for quite some time now. Therefore I started to fiddle around with it. After a short period of time I was comfortable with the basics of the language. In order to further explore it I needed a simple, but yet interesting little project for me to realize. After a discussion with a friend about the fact, that a lot of people still use FTP for import/export of data in and out of there systems (especially ERP-Systems). I realized I could ease the pain in a certain project myself by having a HTTP2FTP bridge. The idea was born: Create an application, which acts as a FTP-Server to the outside world, while querying a HTTP-Backend, once a file is requested for download, a folder listed, or something uploaded. This would allow me to directly integrate a FTP interface into a web application without pain or the maintenance overhead of a real FTP server, which is then synced via cron or some other worker with the real web application.
I decided that this project would be ideal, to allow to learn further things about the Go language. One and a half days later, the first version was ready and mostly worked as I wanted it to be. If you want to take a peak at the project head over to my http2ftp repository on github. Or simply install the tool inside your Go environment with the following command:
$ go get github.com/jakobwesthoff/http2ftp/cmd/http2ftp
As I potentially will use this gateway myself I might change and update it in the future. However you should think of it as an experiment in its current state, which is most likely not ready for production use ;). As I said I developed it with 1 1/2 days of Go knowledge.
As the build file (
Gruntfile.js) got more and more complex, to the point, where it afflicted pain on me during updates ;), I decided to split it up into different files, each reflecting one build scenario. Those scenarios can now be found inside the
Build Support folder. In addition the main build steps are now executed in parallel to speed things up a little. Further changes involve a more semantically correct naming of folders, package updates as well as configurable build
Parameters(.json) and some minor tweaks.
Just head over to the repositories and take a look. Pull requests are always welcome. If you have similar setups, maybe involving another technology stack, like browserify instead of requirejs, drop me a line and we can give it a separate repository inside the BootstrapJS organization. The more the merrier.
Besides the experiments detailed in this post I used the time to work on some aspects of the Qafoo Profiler together with my fellow co-workers. I had a lot of fun developing solutions for certain aspects of this project. I am already looking forward to publicly announce some of them in the near future. Stay tuned!
Thanks for this great week
On a personal note I wanted to thank all the awesome people I had the chance to meet and talk to during the last week. As always it has been a blast. Thanks for the fun times. Hopefully see you all again next year :).