What do you carry in your backpack?

my backpack contents as of april 26 2013

I’m a software developer and this is everything I was carrying in my backpack today April 26th 2013 (from the top, left to right)

  1. A case for SD cards.
  2. Raspbery PI I’m toying with at the moment.
  3. A roll of #punsr stickers
  4. US Passport, you never know when you get a crazy invitation (or emergency) to fly out.
  5. Emergency Icebreaker underwear, you never know if your luggage might get lost, you can at least take a shower and have a fresh pair.
  6. Checkbooks, electronic bank keys.
  7. Snes-like USB gamepad (for the Raspberry PI video game console project)
  8. pens
  9. Microsoft USB wired optic mouse, still my favorite, never worry about not having batteries for it.
  10. Punsr business cards, Tech Consulting business cards.
  11. Amazon Kindle Fire HD
  12. iPad
  13. Beats Pro headphones
  14. toothpicks, so you never have to suffer with food between your teeth for hours.
  15. coins (I try to not have coins, I keep them in the car for parking meters)
  16. Nexus 4
  17. Galaxy SII
  18. USB power adapters
  19. WD My Passport 2TB backup drive (I keep another at home attached to my monitor for automatic backups)
  20. Macbook PRO Power adapter
  21. European power converters
  22. Ethernet cable for the raspberry pi and because you never know when you might need it.
  23. prescription sunglasses, needed in sunny florida.
  24. MacBook PRO 2.3 GHz Intel Core i7, 8 GB ram, 500GB SSD

How to GPU-mine BitCoins on a MacBook Pro

I’ve just gotten started into BitCoin a little late in the game (April 2013) and if you’re reading this you’re probably on the same boat.

This post details the steps I took to start mining BitCoins with GPU on a MacBook Pro.

4195093260_78f080cab0_z

1. Get DiabloMiner. You will need to have installed git and a jdk (Java Development Kit) to build it.
Clone the source code from the github repository into your computer. From the command line

git clone https://github.com/Diablo-D3/DiabloMiner

after it downloads you will have to build it, invoke

cd DiabloMiner

mvn package

it will download all its dependencies and build itself.

2. Register into a Bitcoin Mining Pool

Now you will see a “DiabloMiner-OSX.sh” script. if you try to use it to mine in solo mode (connecting agaisnt localhost:8332), you will get errors, it seems nowadays there’s only pooled mining (i may be wrong), so you will have to register into a Bitcoin mining pool to make this happen.

I registered my account at deepbit.net, in there you get to enter your BitCoin address to receive your mining rewards.

3. Launch DiabloMiner (in as many machines as you can using your pool mining account)

./DiabloMiner-OSX.sh -u youremail@somedomain.com -p yourpasswordhere -o pit.deepbit.net -r 8332 -g 5 -w 64

and you should see…

[4/26/13 11:02:23 PM] Started
[4/26/13 11:02:23 PM] Connecting to: http://pit.deepbit.net:8332/
[4/26/13 11:02:24 PM] Using Apple OpenCL 1.2 (Dec 4 2012 18:26:30)
[4/26/13 11:02:24 PM] Added ATI Radeon HD 6750M (#1) (6 CU, local work size of 64)
mhash: 46.0/44.4 | accept: 0 | reject: 0 | hw error: 0

Hope this helped you.

Raspberry PI Game Console Project: Getting an OS to run on it.

8d8f488e9e5c11e2a3d822000a1f9be5_7

(My previous post)

So now that we have a Raspberry PI we need an ARM based Operating system to go on it.

My original idea is to run Jelly Bean on it, but I couldn’t quickly find an image for the Raspberry PI (which means I’ll either have to find harder or I’m gonna have to bust my ass and build one myself and add all the drivers necessary so that it runs like charm)

At this point I just need to know that my hardware is good to go, so the quickest, easiest way to put an OS on the Raspberri PI that I found was to get a Debian based Linux on it called Raspbian “wheezy”.

You can download the .zip file that contains the image file via http or you can help seed a torrent of it after you get it.

Once you download that you will end up with a 493.6MB .zip file, unzip it, and you will see the 1.96GB 2013-02-09-wheezy-raspbian.img file.

Now you have to put that .img file inside the SD card that will go into the Raspberry PI.

I’ll teach you how to do that on a Mac (on a linux box is quite the same, the file and mount locations are probably the only thing that’ll change)

1. Stick the SD card on the SD slot of your macbook.
2. On the Finder, Eject the SD card as soon as it comes up.
3. Open a Terminal
4. Execute sudo diskutils list, you should see something *like* this (this is actually how it’ll look when you’re done)

[bash]$ sudo diskutil list
/dev/disk0
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *500.3 GB disk0
1: EFI 209.7 MB disk0s1
2: Apple_HFS Macintosh HD 499.4 GB disk0s2
3: Apple_Boot Recovery HD 650.0 MB disk0s3
/dev/disk1
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *2.0 TB disk1
1: Apple_HFS Time Machine 2.0 TB disk1s1
/dev/disk2
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 TB disk2
1: EFI 209.7 MB disk2s1
2: Apple_HFS PICS_AND_MOVIES 999.9 GB disk2s2
/dev/disk4
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *15.9 GB disk4
1: Windows_FAT_32 58.7 MB disk4s1
2: Linux 1.9 GB disk4s2[/bash]

I want you to notice the “/dev/disk4“, judging by the size, that’s our 16 GB SD card right?

5. Now that we know where it is, let’s copy the image file into it. First make sure to unmount the partitions that are on the SD Card so you can write on it, for example, I have there a Windows_FAT_32 partition I don’t want to loose (disk4s1), you unmount it like this:

sudo diskutil unmount /dev/disk3s1

Then copy the image using the awesome dd utility, if the .img file was in your “Downloads” folder the command would look like this. (“if” stands for “input file”, make sure you put the full path to the file, or go to that folder and execute the command below)

sudo dd bs=1m if=~/Downloads/2013-02-09-wheezy-raspbian.img of=/dev/disk4

This will take a few minutes, be patient.

Once done, take the SD card, put it in the Raspberry PI SD Slot, hook it up to a monitor and power, snap a mouse and keyboard, and boot. It should work.

New FrostWire for Android 1.0.6 – Now with access to Archive.org’s 7.3MM files

177fc79ea15011e2b19422000a1f9bc9_7

Download the APK or get it at Google Play

A new FrostWire for Android is here, this is a major update that you should not skip, specially if you’ve had issues in the past.

The biggest changes are:

Integration with Archive.org

Archive.org indexes free files from all over the internet, there’s a huge amount of Public Domain files and Creative Commons files, so keep an eye for those archive.org results if you’re looking to remix legally free available content, FrostWire will be a great tool to find it.

Archive.org also indexes torrents of these files, if you download and seed you will help make its contents more decentralized and durable, not to mention you will save archive.org some bandwidth.

The Archive holds over 7.3 million files, it’s a powerful content library that now is easily accesible from anywhere using FrostWire, we hope you find it very useful, for example, law students and attorneys can now use FrostWire to search for public transcript of court cases, among other documents. Almost every known public domain film, book, and audio recording is available and best of all we’ve integrated it with FrostWire after revamping our search architecture which now delivers results as soon as possible to your android device.

Search results coming from archive.org include basic information about the file’s license if available, make sure to check the licenses and to respect your local copyright laws, FrostWire condemns copyright infringement.

Faster Search, Reduction of CPU/Battery consumption

We’ve made search considerably faster, now results are shown as soon as they come in, in the past our algorithm would wait for a certain amount of results to come in and show them to you, the search experience should feel snappier now. Also we optimized and fixed our code and some third party libraries that weren’t meant to be used on Android so now the app consumes up to 84% less CPU which will result in your battery lasting a lot longer if you’re running FrostWire.

We’ve made a few improvements in the bittorrent core, namely the hashing algorithms are about 15% faster than before which also reduces battery consumption while downloading and checking torrent chunks.

More stable and compatible

Since our last release in november we received thousands of crash logs from users worldwide and we went through all of them fixing bug by bug, in the process we did a few updates on the user interface you will notice a nicer looking navigation menu, and more intuitive icons to share/unshare files on the Wi-Fi network.

Many fixes related to the audio player, specially an annoying double-playback bug lots of you reported, thank you.

Full Changelog

For those of you following the codebase and who know geek-speak

FrostWire 1.0.6 - APR/08/2013
 - Faster search results. Search architecture revised and improved.
 - Includes search results from archive.org, which indexes millions
   of public domain and creative commons works from all over the
   internet.
 - Reduces CPU and battery consumption up to 84%.
 - FrostWire won't disable screen locking during audio playback.
   It's now up to the user to set longer auto-locking timeouts if
   they want to use FrostWire as an audio player in their vehicles.
 - UI fix, media player screen is correctly updated if a song starts
   while the screen was locked.
 - Updated icons and graphics.
 - Improved mime type detection.
 - Supports WebM video search results.
 - Updated UPnP cling libraries for better Wi-Fi sharing discovery.
 - Multiple crashes and freezes fixed.
 - Opens .torrent files from urls and from any file browser.
 - Faster hashing and checking of ongoing and finished torrent downloads.
 - Fixes a crash when sharing files from third party apps like FileKicker
   which pass filepath uris instead of android provider uris.
 - Fixes double audio playback issue with third party media playing apps.
 - Fixes bug where the app would force close and restart on phones without SD cards.
 - Fixes bug on Android 4.x where finished document downloads wouldn't appear under
   documents.
 - Avoids crash caused by AdMobSDK and WebView's cache being null.
 - Fixes bug where sharing files from a third party app would open FrostWire
   in a way that hitting the back button would take the user to the desktop and
   not back into the third party app.
 - Replaced navigation menu for a better one that presents itself with a smooth
   brief zoom-in animation.
 - Navigation menu and transfer screen looks properly on Motorola Razor
 - More efficient use of Bitmaps should cut down on the number of Out of Memory errors on most devices.

Daft Punk’s Random Access Memories should be a masterpiece

On May 21st this year, 12 years after their incredibly successful “Discovery” release (and after doing Tron Legacy’s Soundtrack and the not so successful “Human After All” album), french Duo Daft Punk will release Random Access Memories in the US (comes out on the 17th in other countries) with some great collaborators that tell a little bit about the production process of this album.

Judging by this, there’s been a tremendous amount of work behind every track and they’ve gone for nothing but perfection, I’ll have my fingers crossed for a masterpiece classic release.

Sony Walkman NWZ-W262 gift from Klout perks arrives! #Review

482869_10151529018337863_66618839_n

72126_10151529018347863_41259959_n

First Impressions
Feels good in my ears (I’m already used to in-ear buds, this ones have a nice vacuum when you slide them in)

Unlike my old sport Sennheiser headphones (which I love for running) the speakers are joined by a thick cable, not a thin cable enclosed by a plastic frame.

Screen Shot 2013-04-04 at 11.04.47 AM

It took a couple of minutes but the drive “WALKMAN” was mounted automatically! Maybe it was the first time the device was started it may have needed to boot or it just didn’t have enough charge to mount itself, who knows. it’s mounted now, I’ll be uploading music to it with drag and drop next.

Controls

The controls are placed on the underside, buttons are nicely separated. You will have volume controls on your left ear, the same goes for one button to turn shuffle on or off. Controls are responsive, skipping is instant just like you’d expect.

On the right ear you will have skip and play/pause buttons. Some buttons trigger a female voice that tell you what you just did, that’s a nice touch.

I’d give the controls and overall design a 4/5.

Sound
If you’re used to Dre. Beats you will be disappointed, If however you use regular headsets sound quality is comparable to the sport Sennheisers, it seems like they will do the job well when you’re running.

You won’t be able to blast super hard with these headsets, and a downside is the sound bleed. People around you will hear your music, something that surprises me because they are in-ear, but now I’m starting to think that the in-ear part is only to avoid sweat from going into your ear canals when you’re running, it’s not related to sound quality.

I’d give them a 3.8/5 in sound, I guess if you’re not too demanding they’re fine.

I’ll be updating this post after I take them on a 3 mile run.

Specs
2GB storage.

1.5 hours to charge, up to 8 hour playback.

water resistant, perfect for sweaty runners like myself.

Verdict

They are well worth the $55, Get them on Amazon if you like them.

Disclosure: I didn’t buy the Sony Walkman, they’ve been given to me by Klout perks, probably with the intention of me reviewing these and generating buzz around the product. Still the targeting by Klout Perks was great, I’m a geek and a runner and I do need a product like this. I would’ve probably not bought it in the first place since I tend to do all my running work outs using my Android phone and several apps (FrostWire for the media player, Cardio Trainer for mile tracking)

My First Raspberry PI Project: DIY ARM Video Game Console.

I got everything on amazon, didn’t pay for shipping (Prime member):

raspberry_pi_diy_game_console_nes_snes_sega_n64

So far I bought:
Raspberry PI ($48)

Raspberry PI case ($14)

Power adapter ($2.25)

SNES-like Controller with USB jack ($10.75)

SanDisk SDHC 16GB class 6 (30mb/s) ($15)

I first intend to install Ubuntu ARM along with several video game console emulators for NES, SNES, SEGA, N64.

People at the Raspberry PI G+ Community have suggested instead to install arch linux and keep it light, I’ll go first for ubuntu since I know it well.

However I’m thinking that a more interesting option, given that it has an ARM processor is to install Android Jelly Bean on it and see if not only I can run game emulators on it, I’ll be running and testing FrostWire for Android on it.

Ever since I started developing FrostWire for Android I’ve thought that Android has everything in it to be a desktop operating system, maybe Raspberry PI’s will be the hardware I’ll use to prove my vision.

The idea is to end up with a nice tutorial on how to do this after I’m done so you can all do it. In the meantime I’ll keep posting updates.

Only when you start reading minds you start becoming an expert at something.

I’ve been doing what I now consider truly coding for the last 4 years, but I’ve been doing much simpler programming for 10 years.

Something happened more over the last 2 years, as I used other’s peoples libraries and found bugs or thought of ways of improving them, I stopped being afraid or intimidated by other’s people’s open source code and I started reading it, and understanding, and I started critizing, and then fixing, and in most cases now, this is so familiar that I open several projects of other teams and I can now read them as If I had wrote them.

The code, which is meant to tell the computer of an algorithm, all of a sudden becomes a language of intellectual expression on which programmers can talk to each other in these concepts that we somehow try to describe with words, but they’re so much more that language cannot hold. Programmers can try to describe to each other ideas on how to build these systems, but there comes a point where they read each other’s minds and nod, and they start speaking through their code.

Coding has this awesome instant gratification that occurs when you run the code and it works like expected, it’s a really awesome validation of the correctness of your mental model to be able to see the thing working and to experience that along with other people who are thinking about these systems just like you feels great, it’s like speaking another higher level language.

I think the same thing occurs with anybody that is good at whatever they do, they must first get to a certain level of sofistication to be good at it. Comedians eventually master the timing of the joke delivery, and they can perform combos to make you laugh exactly when they want you to laugh. Great comedians disassemble other comedians shows probably even to a mathematical level, just to learn or read what is it that whoever wrote this was trying to do with the public’s

The same with musicians, they speak with more than words when they speak to each other through the music. To be able to communicate with other people like this I think that’s some sort of mind reading