miercuri, 21 octombrie 2009

Probleme cu Ruby legate de threading

Schimbarile din modelul de threading din Ruby, de-a lungul versiunilor:



Cateva articole interesante despre acest subiect aici:
- Concurrency is a Myth in Ruby
- The Futures of Ruby Threading

marți, 20 octombrie 2009

Ruby on Rails - performanta

Am gasit un interview cu un dezvoltator din echipa Twitter, in care vorbeste despre problemele intalnite in dezvoltare. Twitter este cunoscut ca unul din cele mai mari site-uri dezvoltate in Ruby.
How has Ruby on Rails been holding up to the increased load?
By various metrics Twitter is the biggest Rails site on the net right now. Running on Rails has forced us to deal with scaling issues -issues that any growing site eventually contends with – far sooner than I think we would on another framework.The common wisdom in the Rails community at this time is that scaling Rails is a matter of cost: just throw more CPUs at it. The problem is that more instances of Rails (running as part of a Mongrel cluster, in our case) means more requests to your database. At this point in time there’s no facility in Rails to talk to more than one database at a time. The solutions to this are caching the hell out of everything and setting up multiple read-only slave databases, neither of which are quick fixes to implement. So it’s not just cost, it’s time, and time is that much more precious when people can['t] reach your site.None of these scaling approaches are as fun and easy as developing for Rails. All the convenience methods and syntactical sugar that makes Rails such a pleasure for coders ends up being absolutely punishing, performance-wise. Once you hit a certain threshold of traffic, either you need to strip out all the costly neat stuff that Rails does for you (RJS, ActiveRecord, ActiveSupport, etc.) or move the slow parts of your application out of Rails, or both.It’s also worth mentioning that there shouldn’t be doubt in anybody’s mind at this point that Ruby itself is slow. It’s great that people are hard at work on faster implementations of the language, but right now, it’s tough. If you’re looking to deploy a big web application and you’re language-agnostic, realize that the same operation in Ruby will take less time in Python. All of us working on Twitter are big Ruby fans, but I think it’s worth being frank that this isn’t one of those relativistic language issues. Ruby is slow.
Interviul complet il gasiti aici.

Se pare ca in prezent o parte din website-ul Twitter ruleaza in Scala. Interesant.. merita investigat.

Actualizare baza de date Metastock cu date de la bvb.ro


Cum altfel sa imbinam mai bine IT-ul cu bursa decat cu un program pentru mediul bursier.

Sinc Metastock versiunea 1.01

Sinc Metastock, sincronizeza si updateaza bazele de date ale programului Metastock, cu fisierele oferite de site-ul BVB, care contin cotatiile End Of Day pentru actiunile tranzactionate pe Bursa de Valori Bucuresti si pe piata RASDAQ.
Programul este extrem de usor de utilizat, sigur in exploatare, datele sunt de incredere pentru ca sunt preluate direct de la sursa: BVB.

Instalare si exploatare
  1. Trebuie sa ai instalat DotNet Framework 2.0 3.5, de obicei il ai pe calculator, daca nu il downloadezi de aici: http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6&displaylang=en
  2. Dezarhivezi arhiva downloadata de pe www.bursanoastra.ro intr-un folder din calculator, exemplu: C:\My Documents\SincMetastock
  3. Lansezi SincMetaStock.exe
  4. Sus la “Database Folder” alegi folder-ul unde se afla baza de date metastock, exemplu: C:\My Documents\bvb (daca nu ai deja baza de date, downloadezi de aici baza de date “bvb” sau “superbazadedate”
  5. Introduci in lista Companies simbolurile pentru care se doreste actualizarea bazei de date, cate un simbol pe fiecare rand, exemplu:
    BRD
    SNP
    SIF5
    ALBZ
    RRC
    TLV
    ARAX
  6. Apesi “Update” si astepti finalizarea operatiei. Foarte rapid, SincMetastock va updata simbolurile introduse, iar baza de date va fi gata pentru lucru.
Descarcati aplicatia SincMetaStock de aici (necesita inregistrare pe site)

Ruby hosting in Romania


Exista hosting cu suport pentru Ruby si in Romania.

Am gasit provider-ii urmatori:
- Hosting.chml.ro: par destul de incepatori in domeniu.. cel putin dupa site.
- RubyHost.ro: sunt inca in faza alpha cu site-ul.. sper sa isi lanseze serviciile cat mai curand.

Gasiti o lista destul de completa cu hosting-uri pentru Ruby aici. Cele de la Romania sunt cam out-of-date.

Resurse bursa: video training


Un site educativ vis-a-vis de bursa este MarketClub. Va recomand sa va abonati la blog-ul lor si sa vizualizati filmuletele postate de ei. Accesibil si incepatorilor.
Site-ul prezinta filmulete foarte frumos realizate, iar materiale sunt de calitate.

Hosting

Am cautat un hosting in Ro, pentru un site dezvoltat in Ruby. Pur si simplu am fost refuzat, singura varianta posibila fiindu-mi sugerata un VPS (virtual server) pe care sa-l configurez eu. Poate ca nu vreau sa configurez eu serverul respectiv, de asta caut un hosting.

In afara, sunt foarte multe variante, cu preturi surprinzator de bune.
Oare la noi nu are nimeni viziune.. sa isi diversifice oferta?

marți, 13 octombrie 2009

Viitorul mediului online

In ce directie s-ar putea indrepta mediul online in anii urmatori?

Socializarea a prins foarte mult. Avand in vedere ca unul din rezultatele consumului oarecum excesiv de Internet, poate duce la antisocializare, incep sa-mi explic de ce au prins site-urile de socializare. Intelegem ca astfel s-a nascut nevoia de socializare, iar site-urile gen hi5, facebook nu fac decat sa raspunda acestei nevoi.

Sa fie asta o metoda de analiza pe care am putea-o folosi pentru a gasi noi directii in care se va indrepta mediul online?

Sa analizam informatiile produse de blog-uri.. informatiile sunt de o oarecare calitate, insa destul de greu de urmarit si agregat. Cum am putea folosi aceste informatii? Cum am putea sa le structuram?