The rants and raves of a technogeek
community
Good bye Symbian, Hello Android
Aug 9th
For those who had been reading this blog for some time now, you may have stumbled across my blog post from 2008, regarding me buying a Nokia E90 - http://www.simionovich.com/2008/06/06/i-finally-purchased-a-nokia-e90.
Well, it’s a fact, since the year 1998, I’ve been an avid Nokia fan. I think I’ve ranged from the old Nokia 51XX, through the 6XXX up to the E61, E62 and E90 – if it was some funky Nokia phone that gave me some new feature, I most probably had it. I guess that the time I spent at m-Wise, working closely with various mobile content technologies had put its toll on me – and I became a Nokia Cell Phone addict. For many years I couldn’t imagine myself digressing from the Nokia clan. Even when my friends moved from their Nokia/Motorola/Ericsson phones to a star spangled iPhone – I remained faithful to my old habits – and remained with my trusty Nokia.
About two years ago I promised myself this: “If you ever decide to move to a touch screen phone, don’t go ala iPhone, stay for a Nokia phone” – so I waited. The initial Nokia touch phones came out. The first Nokia touch phone that came out, I believe shortly after the iPhone was the Nokia 5800, also known as the Nokia XpressMusic.
I’ve got one thing to say about this phone – “What the hell were you thinking???” – it’s a phone, not a bloody MP3 player – if I wanted an MP3 player, I would have bought an iPod. Apart from being the slowest phones I’ve ever encountered, its touch interface was annoying and disruptive.
So, I didn’t buy the Nokia 5800 – I simply had no use for it. At that point I decided to wait a bit more, and see what Nokia cooks up. Shortly after seeing the 5800 in dis-action, I met a new member of the Nokia clan: the Nokia 700.
The Nokia 700 was a totally new thing, not really a phone, not really a PDA – somewhat of a cross between the two. It was big and bulky, and I couldn’t imagine myself walking around with one of these – however, it showed some promise. Sure, it was big, bulky, slow and anything bad you can say about a device –
however, it had one thing – it showed potential – something to look for. At that time, I decided that I needed a proper smart phone and purchased the Nokia E90 – and I was fairly happy with it till 8 months ago.
You are probably asking, why would an avid Nokia fan become displeased with his trusty E90 phone – the answer is simple – the plastics. The plastics are of such low quality, that after 18 months of usage, the paint job starts to peel away from the phone. As you run more and more applications, or store more data, the phone becomes sluggish and slow – to the point where you have to reset it.
So, 2 months ago I gave up, I said to myself: “that’s it, time to move forward and leave the Nokia clan” – but I still didn’t want to put myself with the iPhone clan – or to be more exact, the iPhone cult movement. While at the Amoocon convention, I came across some people who were using HTC phones, specifically the HTC Evo. Well, I was somewhat taken with this snazy piece of hardware. It was fast, it was fluid and for some funky reason, I felt at home with it. Could it be, have I found a new clan for my mobile needs? I returned back home starting to examine my options. The HTC Evo isn’t available in Israel, the next best thing is the HTC Desire.
The HTC Desire is also known as the Google Nexus-1, basically it’s the same phone. I tried using the Nexus-1, but I didn’t like it. Specifically, I didn’t like the fact that the four keys are touch based – on the HTC these are real keys, making my life much easier.
So now, I’m equipped with the HTC Desire, and apart from the occasional Android crash (not too often to be honest) – it is one of the best phones I ever had. It’s fast, syncs my life into a manageable construct and most importantly, it’s become a second nature to me. The only disadvantage of owning such a phone is that you need a massive Data plan with your carrier – this little machine can gobble up ten’s of megabytes on a daily basis. My old Nokia E90 was using 25MB of data per month, with the Desire, I consume that much in less than a day – that is an amazing number.
In order to get better into Android development, I’ve ordered an Eken M002 device. This is a 7″, Android based tablet PC. I’ll be posting information about that once it arrives.
Business 2.0 – Taking the leap forward…
May 11th
The following post doesn’t really fit in line with the normal spirit of the blog, simply because it’s not funny nor directly related to technology. It’s called Business 2.0, as it relates to the ever problematic question any business owner has: “When should I grow and how?”.
As you may know, I’ve been a freelance Asterisk Platform developer since early 2003, turned to freelance development (Penguin for hire) around April 2007. Since that time, I’ve built systems and platforms for some of the better known brands around the world. Be it working directly with the customer or through a 3rd party (as a sub contractor) – I can easily say that I’ve completed over 120 different large scale projects within 3 years time. Now, when I refer to projects, I’m not referring to installing PBX systems, I don’t do that at all – I’m referring to highly complex application level development, creating some of the most innovative Asterisk based systems I’ve ever seen.
Putting aside everything, finalizing a rough estimate of 40 development projects on a yearly base, most of these performed solely by myself is a fairly challenging task. Sure, at times I’ll outsource some work to other freelancers like myself, specifically in fields where I’m not all that fluent (Database, Web Development, UI) – but yet, doing that means that I’m conducting 3 – 5 projects on a monthly basis.
After doing so for 3 years now, I can’t help but start thinking about expanding my business, taking it to the next level by hiring more people and building it up to a new level. Question remains for this: “How? What is the natural track of expanding your business?” – of course the simple answer would be: “Just hire another developer or two, and start doing more sales” – it’s not as simple as it sounds. After thinking about it for some time, I’ve concluded there are a few models of expansion:
Model 1: Organic Growth
Organic growth can be described as the simplest way of growth: “Hire a new guy and get more work in”. The problem with this model that it is fully reliant on your ability to sell more. However, as you concentrate on sales more, you take time from the development and delivery process – thus, the addition of the new developer is not a 100% addition, it’s actually 100% (developer) minus 40% (you) – so you are not at 200% capacity, you are 160% capacity. Surely 160 is 100, however, for the initial 6 months, till the guy learns the ropes, you are not at 160, you are actually at 80 – can you and your business sustain that?
Thus, the main issue with Organic growth is cash flow, can your business sustain the elevated expenses with less income for the period of transition? If the answer is NO, then you need a different method. If the answer is YES, then you are in the best place in the world, however, bear in mind that taking someone to work for you is a responsibility – people are not resources, they are human beings, with families and children – taking someone to work for you is like taking responsibility for their lives.
Model 2: The Partner

- Image by thinkpanama via Flickr
A partnership with a person who is equally matched to you is always a good option. Technically speaking, it means that you are teaming with someone who generates as much work as you do and is capable of finalizing the work as fast and as good as you can. Yet, taking a partner doesn’t negate the requirement for a new employee or two. In this case, you may end up with too much sales with too little staff to deliver – that is a big problem.
Another issue with partners is the issue of trust. While most partners tend to rely on each other and trust each other, that trust can easily be broken (in most cases by stupid things). It’s enough for one partner to now carry its weight in sales/development to initiate a chain reaction, shortly ending in the partnership dissolving.
So, the partner is a good option, however, may prove to be problematic if the wrong partner is chosen – in addition, dissolving a partnership solely on these issues isn’t all that simple – and usually ends up in litigation and other judicial issues – YUCK!
Model 3: Un-intrusive Angel
Some people ragard Un-intrusive Angels as “Stupid Money” – an Angel investor that doesn’t interfere in your company business model and operations. In many cases, this is how start-up companies start – someone gives them a lump sum of money to start their business, signing off to own a portion of the new company.
An un-intrusive investor usually gives you the money and pays you a visit once every few months to see how his money is spent. Don’t expect to raise a whole lot from these people, usually you will get anything from 25K$ to around 250K$ – tops. If you are getting an investment from an Angel, make sure you plan your business carefully – and make sure your investor knows what he is getting into. The Angel is not a found piggy bank, he is a business man looking for profit – if you make sure his expectations of profits (time frame, amount, percentage, etc) are kept within the reason of your business – he will make an educated decision and invest accordingly. Promises like: “you’ll double your money in 3 years” are stupid – make sure it’s realistic and to the point. If you promise the moon, and reach a star – that’s a problem, if you promise the skies and hit a start – that’s wonderful.
Model 4: The Strategic-Intrusive Angel
A strategic angel is similar to the previous one in terms of funds, however, he is more capable in assisting your business meet its goals. Usually, it would be someone who is already a well established figure in your business sector, had made his money from previous companies and is now looking for new ideas and businesses. I call him an intrusive Angel, as sometimes he may have ideas as to where your business should go – and he will make sure you hear his ideas. You may regard it as annoying, but you should still listen to your Angel and pay him the respect he deserves.
Sometimes this Angel may invest in your business due to the fact that he has a hidden agenda. An agenda can be: The angel looks at your business and see a certain potential you are not planning, he’ll invest and try to re-direct your company to the agenda he sees. This is usually the case when your angel is invested into several endeavours that is either parallel to each other or may have orthogonal intersection points. These angels can be the builders of your business or the destroyers, it is up to you to make sure the latter doesn’t happen.
Prolog:
So, which model did I choose? – I didn’t choose yet, I’m still figuring it out myself. What ever the model may be, the choice isn’t simple nor straight forward. At best, whatever choice I’ll take will have a profound impact on my business and me – so I’ll need to weigh my options carefully. If you can think of an additional model, I’d love to hear about it – so just comment on this post.
Open Source, Philanthropy and Asterisk
Apr 16th
When I started using Open Source software, it seemed like all Open Source projects are driven by philanthropic agendas. We were all focused on “sticking it to the man” – showing all these would be software vendors that community driven projects can do just as well – if not better.
"When I was a child I spoke as a child I understood as a child I thought as a child; but when I became a man I put away childish things." - I Cor. xiii. 11.
Well, I’m not claiming that Open Source is childish – absolutely not, however, when you are a student you tend to look at things in one way, when you have a family to care for – you start looking at things differently. You remember these days in life when your dad said: “When you’ll have children you will understand” – well, now I do.
So, what am I rambling about exactly? I’ll tell you. The day before Passover I attended several meetings, which when I came back home had pissed me off immensely. I feel an urge to write all about these meetings, including who I met exactly, however – I won’t do that. However, I will give a rough idea of these.
Meeting 1 : A world recognized Mobile application player
I came into the meeting with this company, where the CTO of the company explained to me that they are looking to create an Asterisk based solution for their application’s users. My initial question was: how many users? what is your concurrency level? – The answer that I got was: “Oh, we don’t need something major, just a few lines of configurations in Asterisk config files in order to make this work”.
I left the meeting slightly pissed off, thinking to myself: “You bloody inconsiderate prick! You bring me to a meeting, spend my time – and then telling me that this is just a few lines of configuration. If it is that simple, why don’t you do it yourself? you have 20 developers in there, 4 IT people and god knows how many outsourced workers off-shore – if it was that simple, you would have done it already – so probably it isn’t – right?”
Meeting 2 : A well established IVR services vendor
The second meeting was with a well established IVR content vendor, this company runs around 16M minutes of inbound IVR traffic every month. They invited me in order to talk about expanding into new countries, wishing to get premium based access numbers in various countries. So, we started talking, and the guy indicates that he wants a certain kick-back payout, which I know is impossible – at least without charging the user more. Actually, the guy indicated that out of the interconnect fee, he wants to get almost 90% as a kick back.
Meeting 3 : A start up rendering IVR content
The third meeting was the most amazing one – these guys wanted to build an Asterisk system to server around 4000 concurrent channels – outsource the entire development to my company – and pay as a revenue share. When I asked for their business model, marketing plan, investors, profiles – I got a response of – we don’t yet have all of these, we only have an idea at this point that we want to implement.
Garage based companies are built by people who can do the work themselves, not the other way around.

- Image via Wikipedia
At this point, you are probably asking yourself: “What does this have to do with the title?” – Well, all of these meetings had one thing in common. The people I met were under the impression that Open Source is some form of philanthropy. Or to be more exact, people who deal with the Open Source market are philanthropists. My question is this: “Why are we perceived as philanthropists? don’t we have families to care for? don’t we need to pay mortgages and bills just like everybody else?”. I guess when people read about the various Open Source entrepreneurs, such as Mark Shuttleworth – the immediately associate Open Source with Big Exists – this is not the case.
At some level, this is purely our fault – we educated people that Open Source is a highly economical methodology of solving technical challenges. No where along the way, had we educated the public that behind the model there are people, people who need to make a living.
If you are an Open Source consultant, developer, evangelist or just someone who may have an opinion on this, I’d love to read what you say.
Call Analytics – Closed Alpha testing group
Mar 14th
Well, it’s been almost a month since I’ve started writing about the humbug project. Now, it’s time to actually get you people involved, at least in the initial levels. We are looking to add 10 additional members into the humbug call analytics suite. Currently available analytics during the alpha testing is inbound call analytics.
Our aim is to gather as much information as we can and as much user requests as we can, humbug is a community oriented project, thus it relies on community oriented input and feature requests. Participating members will be granted access to the humbug analytics portal, allowing them to gather statistical information regarding their inbound call hits and their top ten DID numbers – we are working on additional statistics. As new stats will become available, we’ll role those out into the service as soon as possible.
In order to participate in the closed alpha testing, please send an email to alphatest at humbuglabs.org, and we’ll send you a short piece of dialplan code to insert into your Asterisk server. Technically speaking, we’ll send you a short AGI command that looks like this:
exten => _X.,n,AGI(agi://somehost/DataReceiver,some_unique_ident)
The above line needs to be inserted into any place you would like to generate call analytics from. We’ll also enclose configuration steps for FreePBX (and other FreePBX compatible distributions). We are hard at work for creating a FreePBX integrated module, so you can do a one-click install.
Call Analytics – Beyond CDR analysis – Part I
Feb 22nd
“Oh, just get me the CDR‘s and I’ll take it from there” – how many times have I heard these words before? I can’t even imagine the number of times in the past 15 years of IT/Telecom’s work that I’ve done and in the last 8 years of Asterisk in particular – when it comes to billing and fraud management, it would appear that the CDR’s are the Rosetta Stone of the industry.
Over the past 6 months, several of my friends and I had been asking ourselves this question: “Is there more to billing, fraud management and profit leakage? does it really all begins and ends with the CDRs?” – so, here we were, a group of 3 engineers dealing with telecom system and billing systems – we knew that the answer is a definite YES, however, how come most companies and system aren’t even aware of this, in such a way that causes them to leak telecom profits and waste their hard earned profit margins on simple accidental mis-interpretation of CDR records.
So, we’ve decided to sit down and start analyzing calls in real-time, trying to evaluate not only the CDR record that is received upon the completion of the call – but also understand the traversal path of the call, analyzing it in real time and evaluating it profit leakage potential. At the mean time, we’re concentrating our work on Asterisk, as it is the simplest for us to implement – however, we’re not focusing it only on that – we’ll looking at adding it to FreeSwitch, Yate, OpenSer/Kamailio, OpenSIPS and the various varients.
So, what have we done so far? well, one thing we never really had with any of the existing systems was a clear view of what’s going on “right-now” on our systems, so we said: “it would really be great if we could know how many call hits we’ve received during the past 15, 30, 45 or 60 minutes” – so here is what we made:
The above image shows our top 10 inbound DID numbers, as you can see these are in the 972 and 447 country codes (yes, we work mainly in Israel and the UK). At the backend, our servers are analyzing the data in real time, generating an active alert in the case a DID number’s statistics change in a somewhat drastic change, thus, establish a traffic anomaly. Another thing that interested us was our usage across multiple servers, which we are exhibiting in the below graph:
Now, as you can see, the top graph shows a discrete anomaly:
This anomaly indicates something went wrong on all our servers between 00:45 and 1:15, which gives us a fairly discrete period of time to seek for a problem in the system. What happened was that one of the guys updated a portion of the data traversal API – basically deleting it
[we resumed full work after about 40 minutes].
So, where is it all going to? well simple, a new Open Source based service that we’ll be launching within a few months from now. Our intention is to provide a means for simple, straight forward, highly reliable, call analytics, fraud management and profit leakage analysis service. A service which is based upon a simple to use API on one hand and Open Source based data gathering agents. Our belief is that by analyzing large amounts of data, from multiple sources around the world, we’ll be able to ascertain the fingerprint of a telecom bound attack – being able to alert the respective users of the service and maybe in the later future, also provide a means to block the attack as it advances across the world.
I’ll be updating about our advancement as we go along, but for the time being, this is something I felt would interest you.



![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=57eab5ba-a057-413e-ac36-9a6edf23a538)

![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=0d6b720b-e2bc-4e1f-bf59-7f5ce2ce1615)
![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=30a0c292-bf3e-4955-a2cb-865340d13569)

![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=48389df4-cfc0-4a29-999f-bd64ebfa9a06)




Picasa
Twitter
Facebook
LinkedIn
Youtube
RSS