Wednesday, July 4, 2012

I've fun learning new stuff

For more than last two months I've been working with the team at LMC on their system that runs biggest job board in Czech Republic www.jobs.cz. I need to say that it is quite interesting for me. There is a lot to learn and they use a variety of technologies to build their system. Most people will judge it just looking at the website presenting job ads but there is more on the back-end side where recruiters manage their campaigns.

Moving from tooling and RCP-based application to a larger system running on web is fun. Teams are using Scrum more or less successfully and do their best to push updates for deployment to production bi-weekly. I believe we will be able to do even better in the future because there is a feeling that move towards more frequent releases was a good one. Jenkins is used heavily and some parts of system are deployed from it directly. Maven is used most often for builds and I have to admit that it makes many things simpler because maintaining too many Ant scripts would be a nightmare. Here I had to convert to Git though I prefer Mercurial. As a part of that conversion I became an early adopter of NetBeans 7.2 because there are some important bugfixes in their Git support. My current task is to refactor some web service that runs deployed on JBoss and make it talk to database in an efficient way. Of course I am trying to cover this with some basic tests and grunt why so many cool technologies come without (unit-)testing story. And there is long list of tasks that I can choose from next. Most of them have the promise that I will have to learn something new.

As you can see it keeps me busy and the downside is that my other projects are almost stalled. NBAndroid rarely receives updates these days and I need to decide what is will be the future of my Android app Fireside Talk.

BTW: new Head of Technology is wanted :-)

Wednesday, March 21, 2012

Revamping Fireside Talk UI

The UI of my Campfire client is now updated to use action bar on all supported devices. It uses better available space on screen while providing nice user experience. Together with this set of changes I modified the theme to use light background colors as this seems more common on modern devices. Other than that I spent some time to add support for image displaying.

There were some quirks with NetBeans IDE support for Andriod development so I had to tune it little bit.

Wednesday, March 14, 2012

More features for Fireside Talk app

As suggested in previous post the support for transcript loading is added to Fireside Talk client. It took me a while to learn the concept of fragments and apply it to this project. Now the application uses different fragments as tabs when showing room activity.

There was some additional work to add some button and images in a way that looks acceptable on different platform and tune the layout little bit for landscape and portrait modes. The picture shows landscape mode where the buttons are moved to the left side to leave some extra space needed to show messages. There are shown as a row of buttons above the message area in portrait mode.

Saturday, March 10, 2012

Campfire client for Android

My current pet project is Fireside TalkCampfire client running on Android. It is now available on Android Market Google Play. I have a lot fun there and learned a lot of things.

Here are some of them:

  • A few activities with AsyncTasks to perform network communication was good enough start.
  • Later I changed that to activities + content provider to persist the data between sessions.
  • The next important step is to add a service to run asynchronous updates.
  • Resources are expensive on device so I decided to build a server side to watch for updates in chats and notify the device through C2DM
  • The backend on server is now simple HTTP server running on Grizzly. (It is a pain to resolve dependencies of their Maven project to get it set up with pure Ant build).
  • I played a little bit to set up security for the communication between device and server.
  • Then I updated my Samsung Galaxy Tab to Android 3.2 to see some new bugs. So I went to fix them. Including bunch of threading violations.
  • The plan now is to add few more features like transcripts, search, file attachments and improve the user experience on tablets.
I can post some more detailed comments on these later. At the moment I am busy with all this work. As a side effect I have various ideas how to improve development support in NetBeans because obviously I am using NBAndroid plugin.

Thursday, July 2, 2009

Intro

This is going to be a place for my comments on topic related to programming, languages (most often Java), tools (most often IDEs) and related stuff. Hopefully it will be more often positive than negative.