Reuse: Sounds Good

I like to listen at streaming radios all day long while working and hacking, but I was annoyed by plugging and unplugging the speakers' audio jack from my laptop every time I have to move it. Some time ago I attached speakers to a RaspberryPI, so to obtain an isolated system to play music, but it was inconvenient to interact with it by a SSH connection and I always procrastinated the effort to give RuneAudio a try. Today, inspired by this post on Slashdot, I remembered to have still around…

Keep reading

Hard Style Sleeping - Lazy Edition

More than one year ago I managed to put a RaspberryPI and a pair of speaker on my bedside table, programmed to loudly play a dubstep music stream at a given hour to wake me up on the most brutal and effective way. It worked, but recently I had to setup different hours on different days and it was boring to daily change the configuration of the application. So I tried to introduce a more complex configuration on my little software, breaking everything. I'm too lazy to fix it, so…

Keep reading

DNS, The Masquerade

Scenario: a RaspberryPI primarily acting as access point, assigning IPs by DHCP and catching all DNS requests to redirect all HTTP traffic to himself, which may eventually switch to connect as a client to an existing wireless network (and delegating DHCP and DNS to another access point). 90% of this stuff may be easily achieved with nmcli, the powerful and convenient command line interface for Network Manager. nmcli c add type wifi ifname wifi-device con-name myconnection \ autoconnect yes ssid myconnection nmcli connection modify myconnection \ 802-11-wireless.mode ap 802-11-wireless.band bg…

Keep reading

Signed in Blood

As I'm now a business holder under the Italian laws jurisdiction, I had to ask a legally recognized "digital sign": a USB key containing some spare applications, libraries and a set of public and private certificates to produce recognizable digital signs identifing myself. The certificates are in an unknown and very specific codification, so the embedded applications are required to actually use them: a classic RSA key pair GPG-style would have been to easy... Today I've been to the local "Chamber of Commerce" to obtain my personal USB key, as…

Keep reading

Lazy Developer Portfolio

I'm a professional freelancer, and it is useful to highlight my activities for self-promotion. Most of my peers have some kind of online portfolio listing previous works and personal projects, and so I do on my website. But I'm also a lazy developer, and often I forget to keep it up-to-dated and meaningful. So, I've just deployed a little script to do it for me. You can find the code here. The concept is: all items are listed in a sources.json file, with informations about the repository where the…

Keep reading

The Perfect Object Storage

Me: Will this stuff be hosted in AWS? $Customer: No, we are going to host on infrastructure of $PopularTLCOperator! $PopularTLCOperator: Yes, come to us! Me: Fine. Do you have an Object Storage? $PopularTLCOperator: Errr... Nope... In this way I started my review of existing solutions for DIY files storage and management. And of course I began looking for something interoperable with AWS S3 API, the de-facto standard for that kind of activities, supported by the Flysystem abstraction layer included in Laravel. First option: Swift, the object storage included in OpenStack.…

Keep reading

CryptoLocker vs Photorec

A very short note about a very hot topic: ransomware viruses spreading across the Internet. Some day ago a man bring to me a USB disk infected by one of those malicous applications, asking to recover the many family photos collected there (of course, stored in single copy). I had no way to decrypt encoded files, and little experience with that kind of issues (you know: I use Linux...), the only idea I had has been to pass the disk with photorec, popular and powerful recovery application able to scan…

Keep reading