Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?

Submission Summary: 0 pending, 9 declined, 3 accepted (12 total, 25.00% accepted)

Slashdot Deals: Cyber Monday Sale! Courses ranging from coding to project management - all eLearning deals 25% off with coupon code "CYBERMONDAY25". ×

Submission + - The four promises of Actor Based Programming for telco software (wikipedia.org)

neutrino38 writes: The Actor Model is a theoritical computation model which aims is to improve concurrent computing. In essence, Actors are 'processes' that can receive, process and send messages to other Actors. This is a computation model that is not based on shared memory and opposes the traditionnal shared memory, locking and multithreading model. In terms of hardware architecture, the multithreaded model aims at powerful servers few CPUs and shared memory whereas the actor model aims for concurrent processing on many computers cooperating through reliable networks links.

To my profane eyes, there are little theoritical differences between object model and actor model. But I am no academics and the intent here is to throw some practical views on the possible benefits that programmers can draw from actor based programming.

One has to admit that the original vision of many computers cooperating through networks did not materialize yet. The dominant model is a cloud of powerful cooperating servers providing online services to smart terminals through network. Multithreaded programming is the mainstream way of developping server side software.

However, there are some trends in computing that may be game changers. These are:
  • the 'cloud' or flexible computing where server-side applications are hosted on virtual machines Multiple 'instances' of the same application can be created on demand to cope with load surge. Context information is shared through add-ons such as memcached or databases. Advanced realtime web applications such as facebook use message and notifications and look like good candidate of actor based implementations.
  • the Internet of Thing where multiple devices with low processing power coordinates over a local area network and through the Internet. Again, this matches nicely with actor model purposes.
  • finally, server side applications such as HTTP servers are put under pressure by growing users bases. The 10K user problem well documented for web servers, occurs in any big server-side application. Adding more processors to cope with load does improve performance linearly as processes or threads spend more and more time to wait for locks when accessing critical ressources. The actor model provides a 'lock free' alternative that can overcome this issue.

Several programming frameworks and languages provides very good ways to implement actor based software. Three of them come in mind:

  • Erlang, a language developped by Ericsson and open sourced or Elixir that provides a friendlier language syntax but produce bytcode that is compatible with Erlang VM.
  • Scala a language that produces java compatible bytcode. It is used in the famous Minecraft game
  • The C++ Actor Framework brings the actor model into native code.

Erlang and Scala merge functional programming with actor model and that has a solid consequence: developpers can only assign variables once and cannot change the value. The only way to change a variable is to send a new messsage (or to call a function) with new arguments. This is a radical way to prevent any use of memory sharing but this breaks most of the classical programming techniques: loops needs to be implemented by recursive function calls or can be replaced with more functional equivalents.

Let's focus now on server side application development, especially in telecommunication field where protocol exchange is the main purpose. Intuitively the actor model fits perfectly . However the majority of telecommunication apps are still developped in classical C/C++ with scripting languages or in Java (SIP servlet). But Actors make four important promises:

  1. I shall not fail: Telco applications should always be on. With the OTP framework, Erlang provides a radical way to recover. If an actor detects an error condition, it can crash and be restarted. Dependant actors will be nicely notified about the restart. Application can partially crash and restart limiting the impact to a single user. Erlang also supports code replacement without application stop. I did not test it first hand but if proved, this is a tremendous advantage in telco business.
  2. I will not block: by design, actor model is lock free. This remove one of the worst nightmare of any server side application developpement.
  3. I can scale: actor model breaks downs a piece of software into a set of coordinated actors that do not share any memory. They exchange messages transparently and therefore can be very easily spread on several hardware system. Traditionnal approach implies communication context sharing that was never fully scalable.
  4. I am a finite state machine: That concept is not enough understood while it is central to build robust and resilient telecommunication applications. actor model is about exchanging message. The actor framework provides a natural way to map messages into function calls and implement FSM easily.

So ... why the telecom world is not rushing to embrace actor based programming ?

Its because it requires major cultural changes and telco world is a bit conservative.

  • Software needs to be entirely redesigned into actors that are simple and pipelined.
  • Developpers need to give up any use of shared memory to store a "communication context".
  • no more control on lock and threading
  • Langages such as Erlang and even C++ Actor framework uses a syntax that is so different from procedural approach that the learning curve is very steep. Almost hostile.

All this is much more radical than moving from init scripts to systemd on Linux. And this transition is costly: training developers, software redesign and reimplementation.

Is it worth it ? That is a question we are asking ourselves

Submission + - ATOS Healthcare seeks early contract termination in the UK (lefigaro.fr)

neutrino38 writes: ATOS Healthcare, subsidiary from the French service company ATOS has won a contract with UK govt in 2010. Atos Healthcare conducts assessments on behalf of the Department for Work and Pensions. Basically it implements David Cameron policy on social services fraud management.

It became so impopular that its employees are routinely insulted and threathened on social networks (about 153 threats a month according to the article). The company is now looking for a way out before the planned end of the contract in 2015.

Therry Breton, its CEO has declared that : "In its current form, the system does not work neither for the beneficiaries, nor for the DWP nor for ATOS Healthcare".


Submission + - Free coding school for geeks ande develoopers founded in Paris and called "42" (zdnet.fr)

neutrino38 writes: Xavier Niel, founder and CEO of the ISP Free Telecom, well known in France to be an agressive competitor of the big incumbent telcos like Orange, called a press event to explains a new mysterious intiative called "born2code".

It appeared to be the launch of a new computer programming school, based in Paris, codenamed "42" in reference to Douglas Adams books. The cursus is quite revolutonary in regards of the traditional French education system:

- the admission requires no prior background, only to pass the selection tests (and age limit from 18 to 30).
- the selection tests are in two phases: first tests are online. It will preselect 4000 candidates. The second tests need the people to come and be involved in actual intensive programming tasks (15 hrs / day) during one month in a dedicated room called "the pool". Out of this will 1000 student be selected.
- once admitted in the school, no tuition fee will be required nor any future contribution as a professional.
- the school will not deliver any diploma. Mr Niel argues that companies are hiring on skill and experience basis rather than on diploma (note: french HR are badly addicted to Diplomas)

Mr Niel blasted the traditionnal education systems saying it produces "standard engineers" that are not innovative and that existing private schools are too expensive and prevent real talents to emerge by selecting student over money. It also reject traditionnal education in favor of a 2.0 education, peer to peer and project centered education that are in line with today's connected society

The goal of this school is to train 1000 "genius" every year. The proclamed purpose is to help IT companies to find suitable people for innovation, helping in this way the country competitivness.

Mr Niel will be funding the school on its own money during 10 years by putting 50 M euros on the table. Hehopes that other IT companies will take over as he is conviced that "only private initiative" can bring this kind of renewal.

The school is due to open next fall and be equipped with brand new 27 inches iMacs.


Submission + - Google investigated for tax evation in France (latribune.fr)

neutrino38 writes: Google is being investigated in France for tax evasion. Most of the sales in this country are accounted in Google Irish subsidiary through a complex financial setup involving the Netherland and know as the "Dutch sandwitch".

The local IRS considers that most of this revenue is sold though Google employees located in France that issues invoices in French language. Therefore it seeks to requalify the amount of taxes paid by Google up to 169 M euros / years from the 5 M euros actually paid.

Accounting information was seized in Google French premises. Google lawyers tried to invalidate the procedure .. without sucesss.

Looks like France may get a big one time payment but future customer will have to call Irland and receive invoice in English to be served.

Submission + - IP location taken seriously by telecom regulators (ofcom.org.uk)

neutrino38 writes: "Locating IP calls is becoming an increasingly important subject.

- More and more persons and companies are equiped with VoIP access
Service provider as us may be interested or required to provide video call access to emergency services.

- The transport of location information is already well described and standardized by IETF and the ECRIT commitee and is using XML format (how verbose!) called LO-PIDF. Its handling in SIP protocol is decribed in the following draft: location conveyance.

Finally, telecom authority are starting to take notice and OfCom, the British regulator has produced a fairly comprehensive report about this. Good reading."


Submission + - Side By Side assemblies: DLL Hell 2.0 (dotnetmonster.com)

neutrino38 writes: This is an alert for all developers using Microsoft Visual Studio 2005.

At the beginning of January, Microsoft issued a security fix for Visual Studio 2005 forcing the use of news dynamic libraries (DLLs) by all application compiled with this IDE. Basically, the application compiled with Visual Studio 2005 will not work anymore on ordinary (non dev) PC unless the newer DLL are to be installed. And we found out that happened on fully updated PCs. I posted a detailed article here: http://www.ives.fr/index.php/blog/post/19 for those needing more technical details.

For those who are not familiar with the Microsoft world, native microsoft applications written in C++ rely on dynamic libraries. Two of them are famous or infamous: MSVCRT.DLL and MFCxx.dll. Because of the evolution and other security fix, multiple version of these DLL were often present in the system causing application instability. Where Linux resorted to some simple suffix notation on the dynamic libraries, Microsoft created a new beast in 2001: the Side By Side assemblies http://articles.techrepublic.com.com/5100-10878_11-5032712.html. These are basically DLLs with a comanion XML files that identify them. The XML file contains a digital signature and when the system binds these DLL dynamically to an application, it checks the match and check that the signature of the DLL matches the DLL itself.

When everythings runs well, this is pretty transparent. But when issues arises, it becomes excruciatingly difficult to troubleshoot and fix. DLL hell is not over.


Submission + - OpenSER project forked, VoIP world upside down

neutrino38 writes: "On August 5, OpenSER project was renamed Kamalio and the project board took a technical decision as developpers were deadlocked in disagreement. Right after, a new project called OpenSIPS was created as a fork from OpenSER.

What look like a technical argument between two lead developers could have some serious consequences on many business as former OpenSER was used in commercial environment to manage thousands of VoIP calls. Many of them should face soon the hard decision to choose between the two for continuing their business.

This happened already before an OpenSER was a fork of the SER projet supported by IPTEL company.

To sum up:
  • Original SVN repository contains Kamailio source code and the effort behind it seems to be led by historical contributors and it is ment to remain the free codebase. Will they have the horsepower to make the software evolve?
  • OpenSIPS is supported by the Romanian company Voice System. They 0wn the openser.org domain name that is redirected to OpenSIPS. Their site is leaner and the list of event that they will attend outlining the efforts to add more features more quicky. But will this software remain entirely free?

Caught between two fires, OpenSER's users wonder about future compatibility of the two engines and are seeking for guidance..."

Wireless (Apple)

Submission + - SIP client for iPhone proposed by French ISP

neutrino38 writes: Free, the third largest ISP in France, started offering an [fr] VoIP SIP client for the Apple's iPhone.

It is interesting to know that this ISP provides a SIP account for each broadband subscription and SIP account allows you to call nationwide for free and to be called. In effect, this iPhone add-on enables to use this SIP access if a Wifi network is available.

This is an innovative form of competition as Orange has an exclusive deal with Apple for iPhones in France. This software creates a loophole that causes a loss of revenue for Orange as outgoing calls are charged by Free and the incoming calls fee will not be collected by Orange anymore. However, the installation procedure indicates that the phone must be "jailbreaked". This could have serious legal implications.
The Internet

Submission + - AMF specifications get public (arstechnica.com)

neutrino38 writes: "Adobe released the specification of the AMF format. This was the format used by Flash Remoting, the equivalent of AJAX for the Flash world.

The article did not refer to the AMFPHP project and the fact that some German and Canadian guys already reverse engineered the format a long time ago. This disclosure will also remove a long standing legal uncertainty that prevented to use AMFPHP for commercial projects too openly.

Secondly, we need to note that Adobe does not document its RTMP protocol used to contact Flash Media server. This later protocol is more iteresting in terms of possibilities as it provides:
  • Sessionful operation
  • Media streaming
  • Remote procedure call both client side and server side using AMF format
  • Shared objects between several sessions and server side events

Fortunately, this protocol has partially been reverse engineered by people of the red5 project. I would suggest that the W3C should take a look at the whole Flash ecosystem if they think about upgrading the HTTP protocol."

Portables (Apple)

Submission + - Unlocked iPhone available for sales in France! (lemonde.fr)

neutrino38 writes: "Orange and Apple did not close any deal yet for reselling the iPhone in France. It is unlikely that the device will hit the sheves for Chrismas.

Oh wait! Le Monde newspaper reports that some supermarkets have [fr] imported a stock of unlocked iPhones and are reselling them without any deal with Apple. Neat. Except the price of 999 euros which is outragious."


Submission + - Ex HP over hyped CEO hired by Fox News (iht.com)

neutrino38 writes: The International Herald Tribune reports that Fox News hired Carly Fiorina ex HP CEO. Such an interesting move will certainly bring support to those who viewed her as the over hyped CEO who killed the orginal corporate engineering culture know as the HP way.

The article, off course does not elaborate on this aspect of things. Slashdot has previously reported her demise from HP and some comments mentioned some HP employee dancing in the cubicle then.

Carly on Faux News? Must be slashdotted!


Submission + - France rejects OOXML but proposes convergence (vnunet.fr)

neutrino38 writes: "Following internal meetings, the French national standardization organisation AFNOR rejected OOXML standard [fr] as member of the relevant ISO comitee.

The decision was mainly based on the fact that an equivalent standard ODF is already approved. However, in a detailed comment, the organisation proposes to work on a convergence path:

OOXML would be split into two parts, the core would be a simplified version that would be rendered ISO compliant on date format metric system adoption, by adoptiong other existing relevant XML DTD already in force and by excluding the proprietary VML vector graphic description.

Then, ODF would be revised to converge with this Core-OOXML. Finally, compatibility with existing Microsoft documents would be described in a Extended OOXML which would not be mandatory as a standard."