Ashvin Savani “arckid” – Flash Platform Expert

All about RIA development using Flash, Flex, Flash Media Server (Flashcom) with various middleware and backends.

Archive for the ‘Productivity’ Category

Perspective is a very powerful term exist while you are thinking about anything. I am currently working little as a programmer and more as project manager. From my journey in IT industry so far, I came across many roles like designer, developer, manager, hardware engineer, IT manager, system administrator etc., I noticed that, Whatever role you working as, You wears that particular hat while you are thinking about given matter. For each role you see a matter from different perspective and your brain respond it accordingly.

In past, I was working for British Telecom company called Iqara, which is now known as You Tele. At that time, I was serving as Flash Experience Engineer. My duty at that time was to create presentation for CEO about their operations in India. He need to show the presentation to British Telecom board about what progress they are doing in India from the money they invested in the new broadband company. I had to include some photographs of company, data center etc., in to the presentation. For some reason, pictures were not ready and I was always worried that, deadline is near by and they are not giving me pictures. How I would able to finish the project on time? Whenever, I contact my reporting officer, He was telling me – “Ashvin, use some dummy boxes right now and start working on picture effects”. And I was thinking like, How can I give effects without having real photographs. He might be thinking, why this guy is always asking a single question – “Where are the photographs?”. That’s the difference between perspective about a project between project manager and developer or designer.

Currently, I am working at a FlashBrain as Project Manager. Project release as a manager is a different thing and it’s different thing as a programmer. Project manager thinks that release should be there on deadline. He agree that, It’s not always possible to have perfect planned release on planned date. But, release should be there with some modules not implemented or with some known issues. For Project Manager, His commitment to the client is important about timings. Even client agree that release may not contain everything planned. If there is one or two day delay is there with a release as per plan that is even okay for a client. But if, Project Manager is giving commitments to the client about releases and client don’t see a release after more than 2 false commitments, Client starts thinking about – “Are they serious about their commitments? or Are they even working on my project?”. While projects are outsourced to remote locations (That’s the case for FlashBrain, We provide outsourcing services for Flash development projects), this is the biggest threat.

If we imagine the same thing as a developer perspective, There are two kind of developers. One who are perfectionists and another type is who believes in finishing the work and they are not much serious about quality of the work. For both kind of developers, there are advantages and drawbacks associated with them. Perfectionists are good for a company in long run, As whatever they do is perfect. But the drawback is, they will take more time to implement the solution and which might even more than the deadline. Other type of programmers, who mostly finish all the tasks on time but in a long run, He or other programmer may need to do rework on that in later stages of the project.

In FlashBrain, Our 95% of Flash Developers are perfectionists. While, they are working on some project, they want to have it perfect. They give priority to quality of work instead of deliver it on given date. Of course, they get permission for that from Project Manager and respective Clients. Our developers always tries to minimize known issues and bugs ratio from the work done by them. So for sometimes releases are not ready on given date. Project Manager wish that even with some known issues, Project Release can help him to maintain his commitments given to the Client.

In our last management meeting, We were thinking to if its possible to come up with some process which can keep everybody happy – Client, Project Manager, Developers and of course quality of the work. At FlashBrain, We believe in trying every possible solution to make sure the path we are choosing is most optimized in every aspect if feasible. The first solution we are trying currently is, Do a quick review of the work being done by team twice in a day. It doesn’t matter if the quick review is just for 30 seconds or 5 minutes. It’s all about to make sure that team is on correct path. If not, We have two chances in a day to cure it. This means, We can see what is going on with release twice in a day. If one particular module is taking more time than expected, due to whatever reason – Project Manager or Client can take decision on that as soon as possible and this practice will help to keep the distance between planned release and actual release.

If our current solution will help us to improve release qualities, I will share more about that or other solutions that we might try in future.

Meeting – Creating IMAP client with Adobe AIR – Part 1

Hello friends,

Today, Once again We came up with interesting meeting series. Instead of just one speaker, We are including many speakers who have expertise in different topics. As mentioned in the meeting topic, Here are the modules we are planning to include in whole series of meetings:

  1. Basics of AIR. (By Ashvin Savani)
  2. Basics of Protocol. (By Ashvin Savani)
  3. Basics of IMAP. (By Ashvin Savani)
  4. How to understand any protocol specifications from specification document / RFCs.
  5. Basics of Socket Communication in Flash Action Script 3.
  6. Handshaking with IMAP Server.
  7. UI – Login Screen.
  8. UI and Event Handling.
  9. Authentication with IMAP Server.
  10. Retrieving Folder Structure from Server.
  11. UI – Displaying Folder Structure.
  12. Retrieving Email headers for given folder (From, To, CC, BCC, etc.,).
  13. Retrieving Email data for given email.
  14. Separating Email Body and Attachments from email data.
  15. UI – Displaying Email Body.
  16. Decoding Email Attachments in to file data.
  17. (Not Sure – For Now) Scan the file via anti virus tool before display it.
  18. UI – Displaying whole email.
  19. UI – Replying email.
  20. Basics: Sending an email via SMTP.
  21. SMTP specifications and normal procedures.
  22. Handshaking with SMTP.
  23. Sending an email with SMTP.
  24. Final touch up to the application.
  25. Lessons Learnt by each attendee.

I hope, all of us will really enjoy this series and it would be meaningful add on pack to the knowledge of everyone of us:

As usual, Sponsor for Event, Place and Equipments is Avinashi and FlashBrain.

Part 1 – Venue and Time:

FlashBrain Unit, Avinashi Systems.
Seminar Hall, 2nd Floor,
Kohinoor Complex, Saiyedpura,
Surat – 395 003.

User Group ManagerAshvin Savani
User Group Co-Manager
Naresh Khokhaneshiya

Update:

  • We were able to finish 3 topics on first part of our meeting on 2nd Aug 08.

Project Management (Status) and Mind Maps

We are small Adobe Flash Platform based development company located in India. We have team of 15 people and mostly we are dealing with 2-3 client projects and 1-2 in house product development. During 5 years of project management (while I was doing freelancing and after), I tried various project management systems to find the best which I can use. Even I like some of them but to check the status everyday, is bit tough. And in case of agile development we are doing, where a single person is working on more than one project and a project contains more than one persons.

Status part is tough because, your mind need to analyze all tabular data and constantly compare with all the visual image you have of your projects in your mind. It compares about what you hear from the client in the last communication and check, if we are on track or not and all that. Also, if you are running a company, You need to make sure that every team member are doing at their best. Also, company is using all the resources with best or optimum rates. To analyze all this, you might need to have two relationship comparison between tasks v/s developers and developers v/s tasks.

Mind mapping is a cool idea while you believe more in visuals instead of tabular data or data with full of bullets. I tried MindJet’s Mind Manager which is really a cool desktop mind mapping tool. They also have project management plug-ins to keep track of all of the projects that you are working on. But the negative point is, you need to keep it updated manually all the time. So sometimes it makes you feel like you are more of data entry operation instead of a project manager. So still, It has something missing for me.

During my test ride of most of the project management systems are not made for you as you are not using a very specific and standard project management. Also, all the projects are not like same and of course same for clients too. In some projects, releases are as frequent like everyday. So it’s too hard to keep track of everything and get whatever information you need at anytime. So I decided to make own project management system, which is also part of our intranet system which we call as Karma.

I will tell you more about Karma later, but the important feature we developed is called mind map integration of tasks and projects. At end of the day or on request at any time, it generates cool mind map where you will see status by projects and status by team members. So if client calls you for the status, just expand his project branch and keep telling him. We also tried to color all the tasks based on the progress. e.g. If task is not started it would be red and if it’s done it would be green. If progress is there on that, based on percentage of completion of task, it will show you shade between orange and green. I simply love that. As a company owner  you can also check another report / node in the same map where  you can see what every team member is doing on which project and also their tasks with status. What else you need?

Still seems like, that is not enough! Yeah, its a human nature. Now we are trying to integrate it with different tools like outlook tasks, other desktop based task system and more tight integration with our intranet system – Karma. Once that is done, one can add or update tasks from anywhere and get the reflection for the same real time. We will also provide a view to clients so they can see their relevant information in tabular or map format.

I will keep posted on maps and project management after few days.

Adobe announces new version of Acrobat Connect Pro

Adobe today announces new version of Acrobat Connect Pro.

Here are interesting updates for Developer and End user perspective:

  1. It does have support of editing the recording. Yes, now you can edit your meetings recoreded previously. That is really cool feature so you can remove unnecessory items from it and can have neat and clean content. Very good for Universities so they can have meeting recorded and edited for perfect reference for some subject or topic.
  2. Integration with IMs. With new version of Acrobat Connect Pro, you can see your friends and mates inside meetings. I still not experienced the new version but still, guessing you should able to invite them to join meeting etc.,
  3. Improved LMS support for e-learning. Now Acrobat Connect Pro supports tight integration with LMS. A meeting room can be splitted in to some sections for seperate discussion for group of students. With other improvements in e-learning through Acrobat Connect Pro, Adobe tried the best to minimize the distance between virtual class room and the actual class rooms.
  4. New version of Adobe Presenter. Adobe also launched new version of Adobe Presenter along with Acrobat Connect Pro, which is add-on to facilitate smoother experience of meetings. In this new version of Adobe Presenter, Now you can have complex puzzle creation support with randomization. There is also improvement in working with video in Adobe Presenter. Now you can also publish your presentation(s) to Mobile Devices and inside PDF too.

Availability:

According to press release, it should be available at end of May, 2008 with languages listed below:

  1. English
  2. French
  3. German
  4. Spanish
  5. Dutch
  6. Italian
  7. Brazilian Portuguese
  8. Japanese
  9. Korean
  10. Simplified Chinese

Important Links:

Download – FlashDevelop 3.0.0 Beta 6 Released

We are using FlashDevelop as our AS3 code in our daily coding since a long time at Avinashi.

FlashDevelop is came up with a new Beta 6 release for version 3 with obviously some cool features and some bug-fixes. These features are as following:

Changes:

  • General UI and localization fixes and improvements
  • New Bookmarks panel added for an overview of all your open documents bookmarks
  • Captures Flash CS3 compiler errors in FD results panel when CS3 is called from FD
  • Contextual generators (Ctrl+Shift+1) for getter/setter, event listeners, override methods, interface implementation, unknown var/method
  • First class SWC integration in AS3 projects
  • New in templates, set package of new project. Creates the main class with the package you provide
  • You can run your project in your web browser instead of FD or external player
  • Less aggressive and generally smarter completion
  • Improved Flex Compiler support
  • Improved Flash CS3 support


Important:

  • Java 1.6+ is required for the Flex compiler (ActionScript 3).
  • The Flex SDK (2 or 3) is required for ActionScript 3 development if you don’t use Flash CS3.
  • Backup your customized user files and uninstall any previous versions of FlashDevelop 3.0.0.

Full Release Notes can be found here.

Download FlashDevelop 3.0.0 Beta 6 (Built from rev. 2133)

And obviously if that seems a nice editor for Flash CS3 developers, you should donate too J