Archive for August, 2009
URL shortening too long? j.mp is the answer
Aug 28th
First of all, what’ an URL Shortening service? URL shortening is a technique used very much lately on the World Wide Web allowing people to create a very short URL and make a web page available on it, in addition to the original address. For example, the page http://www.radupoenaru.com/handle-xml-with-namespaces/ has a length of 54 characters and resulted in the following TinyURL which has a length of 25 characters: http://tinyurl.com/mpjxqb .Half the size, same page pointing to!
But hey! Twitter allows only 140 characters – Need to save two characters in a tweet? You either have to use the SMS language – rework your wording by changing “people” to “ppl” or “for” to “4” for example, or, if you want to include a link, you can use a shorter URL. The natural evolution of shortening websites also followed the shrinking idea : Starting with tinyurl.com who had on its own 11 characters, going to bit.ly 6 characters( only half!!!) and finishing with the newest addition, making URLs look like they were getting just a little too long, when Bit.ly introduced j.mp –only 4 characters wasted.
GPS vs aGPS vs WiFi vs GSM localization
Aug 26th
Each method presented has its strengths and weaknesses. None of these is the perfect positioning system, yet they all can collaborate in order to give the estimated position of a user.
GPS, the veteran of the group, has a plethora of satellites at its disposal, offering almost anywhere in the world a precision in meters. The devices which implement this technology are small enough to be inserted even in phones, smart enough to do their job or even more by tracking many satellites in the same time and eating less power, affording the usage of this service for hours in a row. But it needs clear sight to the sky in order to see at least 3 satellites and needs quite a long time in this busy era to get a clear position and be able to pinpoint the location on a map.
GPS – Global positioning system
Aug 24th
GPS is the oldest one from the frameworks available to the large audience. It isn’t the first positioning system, but it is the one with the most success and longevity. It started as a military project in 1957. Because of the cold war, once the Russians sent to space the first man-made satellite, a team of scientists started monitoring its radio transmissions. The crucial discovery was that, because of the Doppler Effect, the signal transmitted frequency increases as the satellite approached, and lowers as it continued moved away from them. This added to the fact that they knew their exact location on the globe, the logical conclusion was that one could pinpoint where the satellite was along its orbit by measuring the Doppler distortion.
SCRUM
Aug 23rd
- one of Agile processes
- use incremental framework for developing complex software
- managing new products
- considered more like a framework in which you can employ various processes and techniques
- Key principle: during a project the customers can change their minds
Manages complex processes by:
- Transparency
- The outcome of the product should be visible to the manager who is managing the outcomes. Also each process that affect the outcome of the product also should been visible to the managers.
- Inspection
- Various aspects of the process must be frequently inspected regularly so that quality of work and peoples can be seen.
- Adaptation
- If the inspection process find outs some process are outside the scope of the product or the outcomes will be unacceptable, then the inspector should response quickly and adjusts the process or data being used in the process.
Agile vs Waterfall
Aug 21st
Agile roots: Toyota Production System
Aug 19th
This methodology and set of principles has the root in the company with the same name. After the Second World War, the Japan and its companies were almost ruined both physical and financial. To recover the economy, they had to rethink all the processes of production in order to maximize their efficiency. This was required because not only that they lack financial resources, but even the loans that they could do as a country came with big price. In Toyota Company, a smart man called Taiichi Ohno, created a new way to build cars, focusing on creating as many quality products possible with limited amount of resources.
Agile – techniques, principles and methodology
Aug 16th
Because the software industry is so different than any other, the development model used prior of creating agile methodology was taken from the engineering disciplines, such as civil or mechanical engineering. Those disciplines put a lot of emphasis on planning before you build because the resources are very expensive and cannot be wasted because of bad synchronization or different physical characteristics like calibers, by example. The planning style is a predictive method that focuses on planning the future in detail. A team that uses these predictive techniques can report precisely what features and tasks are scheduled, both their order and length, for the entire time span of the development process. Predictive teams are very difficult to redirect after the client needs. The plan is typically optimized for the original destination and changing direction can cause completed work to be thrown away and done over differently. These teams will often institute a change control board to ensure that only the most valuable changes are considered.
Agile Lab – Coining the Agile techniques
Aug 14th
The roots of agile programming as we know it can be traced back to 2001. At Snowbird ski resort in the Wasatch Mountains of Utah, a group of seventeen people met have fun, but also to find common ground on a issue that was too much discussed but no result can be achieved. They were the leaders of different currents of improving software creation techniques. They were adepts of Extreme Programming, SCRUM, DSDM, Adaptive Software Development, Crystal, Feature-Driven Development, Pragmatic Programming and other agile techniques, joined together by the need for an alternative to documentation driven, heavyweight software development processes.
BNR exchange rate
Aug 12th
In this global crisis, nothing is more useful than a good chart to watch your money as investment. That’s why I created a special page which collects freely available exchange rates from BNR (National Romanian Bank) and presents them in a graphical form. This way, the viewers of my website will always be on the edge with exchange rates, as soon as BNR posts them (usually around 13:00 GMT+2).
The main challenges were:
- Building a php script to parse XML, inserting the exchange rates into database. The lack of experience and debugging tools made a huge difference in development time. But all is working now.
- Creating a php script that will daily update the exchange rates, so the users will have the fresh rates at their disposal as soon as possible.
- Design the page that hosts the chart and provide create the appropriate data structure which will feed the chart with data.
- learn to use a very interesting framework of representing data as charts – Google Visualisations
Next steps:
- Offer the posibility to choose among all 30 currencies for which the BNR provides exchange rates.
- implement AJAX for smooth behavior of refreshing the page while user chooses a different currency.
Enjoy!
cPanel: using Cron Jobs
Aug 10th
First – what is a cron job? It is a piece of software which can be run at specific times by the cron service. By example, one could set a cron job to update his application exchange rates from a server every day at a specific hour so its application will be up to date.
I used it because the Romanian National Bank doesn’t have a proper page to check for exchange rates – they present just the numbers, but no trends, no charts – nothing visual. Too bad for them! For me it is actually a good way to refresh my PHP / MySQL and apache management skills. Because this Cron stuff is actually new for me, I composed a small tutorial in order to be easy for me to remember and for you, my dear readers, to get quickly the information required for a quick start. So let’s get going with our ..