Tuesday, January 9, 2007

3326.aspx

The Architect and its destiny

My ex boss, Maurizio Cunico, has written an article on MSDN on the role of the architect (in Italian).


I agree with most of the points in the article but I think there is one aspect missing; teamwork. The article describes a "one man show" scenario where the Software Architect does everything. Being humble, as Maurizio mentions, also means realizing that you have limitations and have to actively seek input from the people you work with to produce the best possible solution for the client.


You sometimes have to be a Jack of all trades if you work on small projects but I don't think it is a good idea on complex projects. I have seen many examples in the past where the "Jack of all trades" architect produced brilliant architectures on paper that had major problems when deployed in the real world (scalability, security, load balancing, ...). Working side by side with the systems architect that has to deploy and mange the software is a must if you develop large/complex on line systems.


I agree that the architect does not necessarily have to code, but the architect should help the members of the team grow, not only take care of the architecture.


What do you think?

Monday, January 8, 2007

3322.aspx

Ant Colony Algorithm

This article on DrDobbs is well worth the read:  Ant Colony Algorithms.


Ant systems are usually used to solve traveling salesman problems. The ant algorithm mimic the behavior of ants in the real world to find a close to optimal solution fast without spending forever evaluation of all possible solutions. Wikipedia describes the algorithm better than I ever could:



In the real world, ants (initially) wander randomly, and upon finding food return to their colony while laying down pheromone trails. If other ants find such a path, they are likely not to keep travelling at random, but to instead follow the trail, returning and reinforcing it if they eventually find food (see Ant communication and behavior).


Over time, however, the pheromone trail starts to evaporate, thus reducing its attractive strength. The more time it takes for an ant to travel down the path and back again, the more time the pheromones have to evaporate. A short path, by comparison, gets marched over faster, and thus the pheromone density remains high as it is laid on the path as fast as it can evaporate. Pheromone evaporation has also the advantage of avoiding the convergence to a locally optimal solution. If there were no evaporation at all, the paths chosen by the first ants would tend to be excessively attractive to the following ones. In that case, the exploration of the solution space would be constrained.


The ant algorithm gives good results fast and have one big advantage over “similar“ methods like genetic algorithms; they can be run continuously so it will adapt to changes in real time. An obstacle like a traffic jam would quickly lead the ants to take a different road.


Don't you just love algorithms? There is always something new to learn that opens your mind to different ways of doing things.

Saturday, December 16, 2006

3252.aspx

Remote 60 for Symbian Series 60 devices

Remote S60 is a great tool if you, like me, write applications for Symbian devices or show demos of mobile portals. There are special stands that uses a video camera to record and show what happens on the device but they cost more, and it is yet another gadget to drag around. Remote S60 on the other hand, costs $25 and does not require any additional hardware. It uses Bluetooth, IrDA, TCP/IP or the data cable to remote control the phone and display what is on the phone screen on the PC.


The following screen shot was taken from my phone with the demo version:



You can even control the phone using the keyboard on the PC which makes demos faster and easier. It also lets you you take screen shots and record the action to an AVI movie.


Thanks for the tip Alessandro.

Friday, December 15, 2006

3251.aspx

An honest politician in the Italian parliament???

What, is it possible???
Honest politicians don't exist by definition, especially Italian ones, but Di Pietro seems to be an exception. There has been a lot of discussions this year regarding the new budget plan and it has caught the attention of everybody. Nobody noticed that the communist majority government managed to sneak in a new law where they eliminate financial crimes committed by the Court of Auditors. Apart from Di Pietro that is, which made it pretty clear that the law must be removed or he leaves the majority government (which practically makes it a vote of confidence):



(AGI) - Rome, Dec. 15 - “... we are not here to have our leg pulled by those who use legal means for immoral ends“. Di Pietro's anger is against "the sly action of something within the majority, and maybe also of the government, which inserted a measure within the amendments that is disastrous for the credibility of the Unione coalition, regarding the elimination of financial crimes committed by the Court of Auditors." 


I rarely post about Italian current affairs or politics as I don't have the right to vote (even though I have lived here for more than a decade) but this really caught my attention. Finally a politician who is not interested in rubbing the backs of other politicians (or keeping his position in government if he continues like this :-)

Wednesday, December 13, 2006

3246.aspx

Create MSDN like documentation with Microsoft Sandcastle

Documentation is usually the weak point of most software development projects. Maintaining separate documentation from the code just does not work. Microsoft has released a Community Technology Preview of Sandcastle which is used internally in Microsoft to build the .NET framework documentation. Sandcastle produces accurate, MSDN style, comprehensive documentation by reflecting over the source assemblies and optionally integrating XML Documentation Comments.


Other Sandcastle resources:


3245.aspx

An Open future for iTunes and the iPod

Thanks to DVD Jon we can look forward to iTunes compatible music players from other companies than Apple, and using other music stores like Napster with the iPod. From the article on Yahoo:



"He imitated Apple's system; he didn't remove any copyright protections," said Monique Farantzos, whose DoubleTwist Ventures plans to license the code to businesses. "He made a system that behaves in a similar way."


Jon Lech Johansen has essentially created software that in a way tricks iTunes into thinking a competing device with the DoubleTwist code is an iPod, said Farantzos who predicted it could be available to consumers as soon as the beginning of 2007.


"What this means in practice is that competing (download) stores would be able to make their encrypted content compatible with the iPod, she said. "Hardware devices that have this code embedded could play iTunes content."


...


She also declined to go into specifics about how the hacker known as DVD Jon -- who now works at DoubleTwist -- cracked Apple's code. But Farantzos sees no legal complication arising from the technology she said does not remove any copyright protection.


More importantly, Apple would also find it difficult to update its software to block DoubleTwist as the company did when RealNetworks Inc. (Nasdaq:RNWK - news) offered songs for download that worked with iPods, she added.


"We followed a different strategy than RealNetworks. We don't believe it is practical for Apple to block this."


Way to go Jon!

3243.aspx

A richer Internet Archive

The Internet Archive contains more than two petabytes (growing at a rate of 20 terabytes a month) of contents ranging from, movies, texts, audio and now also software.


After winning the latest lawsuits there are several exemptions to the Digital Millennium Copyright Act. It is great news for all of us, not only the internet archive:



  • you can copy old computer games (if the original machine, format or technology is obsolete)

  • users of mobile phones can circumvent the technology which makes the phone only work with one network.

  • you can copy "dongle protected" software when the dongle has been damaged and a replacement is no longer available.

  • educational establishments can "break" digital rights management (DRM) technology for audiovisual works to be used by media studies or film classes

  • you can bypass DRM on CDs in order to test and fix DRM technology which might damage your computer

The Register has the details of the lawsuits.