Wednesday, April 9, 2008

ASPY Player Beta 4 released - S60 Player with Last.fm scrobbling built-in. Open signed online now possible!

I've just released the beta 4 version of the ASPY Player. Currently I have only few hours (~3h) a week to work on it, so that's the reason for few enhancements in this release, however I think some of them are very important.

The changes in this release are:

  • Possible to sign the sis file through open signed online;
  • Blinking "now playing" screen bug fixed;
  • Better handled id3v2 only files (id3v2 not supported yet);
  • Track number info being used in the app;
  • Better tracks ordering handling;
  • Better handling of non-US ASCII characters in directories names;
  • Application code design improved;

As usual, all kinds of feedbacks are welcome. They have been essential to improve the player quality, thank you guys!

Friday, March 21, 2008

ASPY Player Beta 3 released - S60 Player with Last.fm scrobbling built-in

After coming back to work from vacations, it has been hard to find time to work on the player. Currently I'm leading 5 projects in my work! However I got some time (most of it while traveling) and released the beta 3 of my player. Bellow is a list of the major changes:

  • Non-US ASCII bug fixed, now files path and id3 content can have é, è, ã, etc..
  • Now it's possible to view the current music history, ie, tracks not sent to last.fm yet
  • After selecting an artist, now it's possible to select all tracks of that artist as before or drill-down by artist album, just like the native player
  • AudioScrobbler protocol hard error handled correctly
  • Application icon added
  • Correct version number set (major/minor)
  • Now it's possible to play tracks in random mode
  • Several bugs fixed

As usual, the source are here and here there's a step-by-step tutorial on how to run it without signing using the python shell (thanks Brixton).

The python snake image I found using Google Images so I don't know who created it. Any information about it, please, tell me so that I can ask the creator the usage authorization.

I also have to find a more beautiful image for the "Now playing screen", preferentially a dark one to help with the energy consumption. I have also to make the now playing screen stop blinking too. I'll try to stabilize the current feature set (fix bugs and refine the design) then start adding more features.

Ahh, BTW, because of my efforts to build this player, the guys from Build Last.fm gave me 12 months of subscription!! Great incentive! Thank you guys again!

I'd like to thank the guys who are using the player and sending me feedbacks.

Douglas

Some new pics from this version:

Saturday, March 1, 2008

Second release of my Last.fm S60 Client - aspyplayer

Today I released the second beta version of my last.fm client for S60 devices (although only tested in my N95-1). I rewrote the whole UI, now it's a little less ugly and it kinda looks like the native player. Now it's also possible to play/stop/forward/back/volume up/volume down using the keyboard in the "Now playing" screen like the native player.


The major bug in the moment is that it cannot handle well files with path or title that contain special characters, such as 'é', 'è', 'ç', 'ã'. I'm Brazilian, so it's a problem for me because in portuguese, words with that kind of characters are so common. However, for me it's strange how the pyS60 handles unicode, I didn't get it yet. It pissed me off and I gave up for the moment, so the bug is there. I have to correct some spelling errors too and now, I don't know why, the sis only works on C:


For those who can't sign the sis files and want to try the player, here can be found a good tutorial explaining how to sign sis files. Besides that way, it's possible to run the application using the sources. To do so, get the aspylayer.py and now_playing_bg.jpg files from the repository and copy them to c:\python or e:\python. After that, run it using the Python Shell like in the image bellow.


Thank you guys for the feedbacks (I'm waiting for more :)). I think soon a more stable/usable version will be released...


Some screeenshots for this release:





Wednesday, February 27, 2008

My Last.fm S60 Client - aspyplayer

In the last few days I've been working on a S60 music player with Last.fm scrobbling capabilities because most of time I listen to musics in my N95. I'd the idea to build this application months ago, but only now, in my last week of vacation I had time and today I released the first beta version (ugly UI and barely working) at: http://code.google.com/p/aspyplayer/

Some screenshots for this first beta release are available at: http://code.google.com/p/aspyplayer/wiki/screenshots

I'm writing the application in python (pyS60), which for me, currently is the best development platform for Symbian devices. However, it has a lot of limitations compared to C++ on S60 devices.

The application architecture kinda follows DDD, with a basic MVP for the presentation layer. The last time I did some development in python was about 5 years ago, so the code is not that good yet. The sources can be seen at: http://code.google.com/p/aspyplayer/source/browse. Code reviews are welcome.

Now I'll work on the UI, which currently is very ugly and I have to refactor some code to decouple the file system libraries from the model putting it in the infrastructure layer. Besides that, I have to create more unit tests.

Any kind of feedback is welcome.

BTW, yesterday I found an amazing last.fm client for iPhone/iPod Touch, it's called MobileScrobbler. It's too bad that the S60 interfaces sucks when compared to iPhone interface which is fantastic.

Wednesday, February 20, 2008

My current "must read" technical readings

Although I read more than one hundred of blogs (~4500 posts in the last 30 days) using the kickass Google Reader and be a member of several mailing lists, I don't read everything with the same priority. I read ASAP only few blogs/lists that I consider important/cool, others sometimes I read months after I noticed them in my google reader or gmail.

The following items are my current "must read" technical readings:

Top 10 Feeds (no specific order):
Brazilian bloggers
Mailing lists

BTW, the address of my google reader shared items is: http://www.google.com/reader/shared/11574825750058829373.

In paper I usually read non-technical (computer) stuff, currently I'm reading the applied psychology books from "The Personal MBA", the current one it's my third and till now all were great readings.

Douglas

Friday, October 12, 2007

I'm in love with my Nokia N95

I fought with myself for weeks, but about 2 weeks ago I could not resist anymore and finally bought a Nokia N95. I have been using it since then and what I can tell is that the device is amazing!

For those who don’t now the device yet, it’s a GSM smartphone with a 5MP camera, Wi-Fi and embedded GPS running on S60v3 (Symbian OS). A great generic review is available in the link bellow:

Nokia N95 review: Nokia’s crown jewel
http://www.gsmarena.com/nokia_n95-review-141.php

My digital camera is broken; I needed an mp3 player because I have been spending about 10h a week in a bus because of my current project and I like to listen to music while traveling, so I decided to buy this phone, because it can be used for these functions pretty well.

Currently I’ve been running some very cool softwares on it. For example:

  • Putty for ssh;
  • Python for some cool scripts (graphics, text editor, etc.) that I found;
  • Quake 1;
  • Google Maps integrated with the GPS, which, btw, absolutely rocks;
  • DivX Player to watch TV series episodes while traveling;
  • Fring to make Skype calls over Wi-Fi, which it’s also very very cool;
  • Gmail client for reading e-mails which is very close to the standard gmail, but gmail mobile is ok too;
  • Nokia podcasting software for listening to podcasts;
  • Nokia mp3 player is very nice too; most of my favorite albums are in the phone already, etc.
And now I can take nice pictures (5MP) whenever I want!

Using it for web browsing over Wi-Fi is very cool also. Currently more than half of my feeds I read on it using Mobile Google Reader, which is also very cool. The standard browser of N95 is very good in general; it uses the same engine of Safari and it’s a real browser (not a “wap” browser)! I can access most of my “standard” sites using it and everything works pretty well. I have installed Opera mini, but I think it’s too heavy. So, for reading and listening to music I've been using my N95 more than my laptop.

There are some things that I want to do in the future with it, for example, install a ruby interpreter, install a software for use it as a webcam that I cannot remember the name, buy more memory; install a software to download maps of Sorocaba and Volta Redonda to use with GPS without having to use any Internet connection (it already has a pretty good map for São Paulo), download more games like Quake, write some apps in python for it, send photos to flickr directly using it, etc.

I’m also impressed about how easy is to write graphical applications with python for S60. I’m thinking about writing some apps in python to explore the GPS and also, if possible, a Nokia mp3 player integration with last.fm site.

In my opinion, for advanced users, there’s no comparison with iPhone, which is VERY cool because of its UI, but it’s also much closed for custom software. I could not do most of the things that I’m doing with my N95 if I had an iPhone!

Of course, it has some problems, for example, the battery sucks, the camera flash sucks, internal RAM is not enough for running more than 3 applications in parallel, it’s very expensive (~2,3K reais in Brazil), it’s kind of big, etc. But, for me, up to now, it rocks!

Some images of my N95 running:

Some of my applications











A skype call


Route: Parents' home in Sorocaba -> my apartment in São Paulo


Fibonnaci in python


The mp3 player


Some of my photos


Using google reader


Using google reader

Monday, June 25, 2007

Tools that I Love

Common Tools

  • Launchy - I rarely use the "Start Menu" with it. It's the closest Windows tool to Mac Quicksilver. I used to use SlickRun, which is also a great tool, but I moved to Launchy because of the better user experience;
  • Notepad2 - The best "simple" text editor around, it looks like the traditional Notepad, but much more powerful;
  • Process Explorer - Much better than the traditional Windows Task Manager. Using it you can know what is really going on in your machine.
  • Unlocker - Do you want to delete some file and Windows does not allow you because some other process is using it? Unlocker solves this kind of problems perfectly;
  • TrueCrypt - Strong cryptography made easy, specially for usb sticks;
  • Paint.NET - Similar to Notepad2; simple as the traditional Paint, however much much more powerful;
  • Foxit - Is it so hard to read a pdf file? I can't even remember the Acrobat Reader nowadays with Foxit;
  • Free Download Manager - Kick ass download manager without ads and stuff like that, although the name is not the most "creative" I ever seen;
  • Firefox - I cannot figure out why people still use Internet Explorer. Firefox is great, but its add-ons are even better: del.icio.us, greasemonkey, flashgot, firebug, fasterfox, etc. are fantastic...

.NET Developer Tools (I haven't developed in Java for the last 2 years, so my Java tools will be in another post)

  • Resharper - It's impossible to use Visual Studio without Resharper if you ever seen Java IDEs like IntelliJ and Eclipse. It makes you at least 25% more productive. I rarely use mouse in VS because of it...
  • Reflector - Visual Studio Class Browser is a shame when compared with Reflector. Reflector is much more user friendly, more powerful, great disassembler and have nice plug-ins;
  • Subversion - Simply the best version control system around if your team is not 200+, TortoiseSVN is a great client as well;
  • Cruise Control .NET - I cannot imagine myself working in a team without a CI server anymore and Cruise Control .NET does a fantastic job. However, it could get a better default report page, like the new Cruise Control Enterprise. CCTray is great as well;
  • Test Driven .NET - The best way to launch your unit tests inside Visual Studio. I love the Resharper, but its unit testing tools are not so clean/light/not intrusive as Test Driven .NET. Run Last Test feature is fantastic;
  • NCover - Very simple but efficient way to check your tests coverage;
  • FxCop - Great inspection tool, Microsoft could create more tools like that, however it sucks for creating custom inspection rules because of its API;
  • ActiveWriter - Do you want to create a full domain model compatible with Active Record and/or NHibernate? Using ActiveWriter is the simplest way to implement it;