Jun 13

Am pus un filmuletz pe unul din site-urile proiectelor noastre curente. Vezi aici.

Jun 09

Vine vacanta, toata lumea pleaca in vacanta. Vacanta e un concept modern, inventat de corporatii pentru a crea iluzia unei relaxari totale, angajatii cred ca si-au reincarcat bateriile si pot sa revina cu forte proaspete la munca. Dar din pacate nu e chiar asa. Forta lor de munca e din ce in ce mai mica de-a lungul timpului. Vacanta este o scuza a marilor corporatii de a nu se adapta la zilele de azi si la incapacitatea de optimizare a costurilor. Ce-ar fi sa oferi angajatilor libertate deplina de realizare a taskurilor, acolo unde e posibil. Daca oferi asta reduci costurile si angajatul se simte ca in concediu. Cum faci asta? printr-un management strict al taskurilor, stabilirea lor, executia si consecintele incalcarii regulelor trebuie sa se resfranga imediat asupra renumeratiei angajatului. Sistemul este extrem de asemanator unui joc RPG. De fapt asta e viitorul si probabil foarte multe corporatii vor opta pentru un sistem bazat pe quest-uri (task-uri), iar angajatii vor trebui sa le execute pentru a obtine bani. Problema care mai trebuie rezolvata este cine face taskurile si cum se inregistreaza in sistem. Complexitatea acestei probleme depaseste orice solutie software de pe piata. Celelalte probleme gen: conexiune, prezenta fizica, etc sunt rezolvabile.

Jan 01

Timpul ne joaca feste.. si iar a mai trecut 1 an. Pentru a incetini timpul trebuie sa intram in ‘demo mode’ si sa dam tot ce e mai bun din noi. ‘Slow motion’ este senzatia pe care o ai cand creierul functioneaza la viteza maxima si perceptia despre realitate este mai intensa. Sunt unele zile in care timpul zboara mai repede ca de obicei (asta e un semn ca creierul tau/meu se relaxeaza), sau zile cand timpul trece mai greu (asta inseamn ca creierul percepe mai mult din realitate, si e bine in zilele astea sa te gandesc si la viitor ca ai sanse mari sa descoperi ceva ce nu ai putea altfel). Daca nu renunti niciodata o sa reusesti sa ajungi sa realizezi ce iti propui, singurul ajutor pe care il ai este creierul tau, si ar fi bine sa-l percepi si pe el ca un sistem de calcul mai performant ca oricare altul.

Aug 13

Acest domeniu este in faza de copilarie si probabil aici se vor bate greii softului pentru stabilirea unor standarde/patente sau cum vreti sa le numiti.

Pana acum avem:

- Algoritmi de cautare. Probabil cele mai vechi si cele mai bune. Spatiul solutiilor e cunoscut si de obicei imens si algoritmii doar cauta solutia optima pe baza unor estimari. Nimic spectaculos, totul e reduce la viteza de cautare si forta de procesare.

- Algoritmii folositi in prezent sunt bazati pe invatare cu definirea clara a problemei si antrenarea programelor pentru a raspunde corect la testele predefinite. Iesirea din aceaste norme proiectate este imposibila, algoritmul nu face fata la noi provocari, dar raspunde excelent (aproape uman) la problema pe care a fost invatat s-o rezolve. Tip de probleme rezolvate: recunoastere scris/vorbire, etc.

- Algoritmi bazati pe statistica si sunt definiti pentru a rezolva probleme specifice. Ideea e simpla: avand o baza de date imensa e usor sa calculezi probabilitatile de aparitie a unei cerititudini si sa oferi in mod statistic un raspuns. Tip de probleme rezolvate: traduceri, previziuni, probleme decizionale, etc.

- Algoritmi bazati pe praguri. Se defineste problema se seteaza niste niveluri min/max pentru datele de intrare si rezulta anumite informatii care pot fi folosite mai usor la incadrarea in solutie. Acesti algorimi sunt specifici procesarii in timp real a informatiei. Tip de probleme rezolvate: recunoasterea formelor, etc.

 

Toate solutiile de pana acum rezolva probleme clare, bine definite la inceput, variatiile sunt minore  si precalculate sa nu dea peste cap algoritmul prin teste si reglaje fine. Combinarea lor practic ajuta. Dezvoltarea tehnicii le fac inmbatabile pe teritoriul lor.

Nu exista inca un algoritm sau o metoda care sa se aplice general la orice tip de problema. Logic e si imposibil de definit o problema la care nu stii nici macar care va fi problema. Odata inventat algoritmul general de invatare s-a inventat si AI-ul si industria softului da faliment subit, locul lor va fi preluat de AI.

Feb 19

Pare un titlu pompos, dar facem un mic experiment de SEO, puteti sa scuzati titlul.

Intotdeauna retetele de realizare de proiecte au la baza unele ingredinte care se combina intr-un echilibru perfect. Daca unul din ingrediente este intr-o cantitatea mai mare reteta nu duce nicaieri. Proiectele IT indiferent de dimensiunea lor si de cine le realizeaza trebuie sa respecte si sa combine elemente diferite.

Horoscop: arta de a spune ce se vrea auzit, se aplica in IT prin crearea unei interfete pentru destinatarii proiectului, cei care vor folosi aplicatia, daca ei nu o inteleg si nu e usor de invatat, proiectul IT e un semiesec.

Magie: arta de a insela simturile, se traduce prin folosirea unui secret in realizarea proiectului IT. Secret care permite realizarea proiectul in cel mai scurt timp cu cel mai putine resurse. Oricine poate creea orice daca are suficiente resurse si timp.

Stiinta: arta de a invata din experienta, permite folosirea si imbinarea proiectelor vechi care au fost testate si optimizate din toate punctele de vedere de-a lungului timpul.

Daca luati orice proiect doriti si il studiati dupa cele trei reguli o sa realizati ca imbinarea lor este aproape perfecta la proiectele reusite.

Nov 20

Acum 10 ani am avut o idee simpla: sa creeam o unealta pentru generat aplicatii bussiness pentru php/sql/web2.0. Am reusit folosind generatoare de cod care primeau ca intrari specificatiile de la clienti (convertite intr-un limbaj specific) si ca output iesea aplicatia gata construita de bagat in productie. Am realizat unealta, toate erau ok. Problema a fost ca nu te credea nimeni cand le ziceai ca ai un generator de aplicatii care face minuni.

Schimbarea de optica a venit simplu din nevoie si am decis sa folosim noi acea unealta minunata sa facem noi ce ar trebui sa faca altii pe baza ei. Ne-am apucat si am generat in 2 saptamani aifacturi.ro, airezervare.ro, pe care le-am oferit gratis in ideea de a testa in conditii realea aceste produse generate automat. Rezultate sunt inca functionale si azi fara nici o problema de securitate sau alte defectiuni tehnice.

Apoi am decis sa facem ceva sa vindem. Am create o aplicatie pentru brokerii de asigurare, am gasit 1-2 clienti la inceput, am mulat specificatiile in conditii reale si am oferit o solutie optima pentru aceasta afacere. Acum produsul este folosit de 20 de clienti si administreaza lunar in jur de 5 mil de RON si acopera 99% din activitatea de brokeraj. Serviciul oferit este pe baza de abonament lunar si acest abonament ne permita sa imbunatatim permanent atat unealta cat si produsele finale.

Partea frumoasa e ca unealta (generatorul de aplicatii) scoate si site-uri si orice e nevoie pentru un bussiness pe internet.

Pe langa aceste proiecte ne-am pus la teste si alt tip de afacere. Asko international dealer honda a apelat la noi pentru a le crea o aplicatie care sa preia toate activitatea interna. Istoria a fost similara, in 2 saptamani prima versiune, si apoi intr-o luna a intrat in productie.

De fapt acum avem aceeasi problema ca la inceput. Daca te duci la un client si ii zici aceste lucruri, nu are cum sa te creada. Este imposibil sa crezi ceva pe care l-ai considerat toata viata imposibil, sa pleci de la specificatii si sa ajung  la proiectul final fara pasi intermediari. Partea socanta este este ca toate aceste proiecte sunt create/mentinute/actualizate de un singur programator (creatorul uneltei).

Beneficiile unui generator de cod, pe care noi le consideram esentiale pentru un soft pe termen lung:

- codul sa fie reutilizabil instant la alte proiecte (reinventarea rotii e inutila, codul existent se duplica automat per proiect)

- codul sa fie usor de modificat in functie de nevoile priectului (un bug intr-o aplicatie se rezolva automat in toate proiectele, prin regenerare)

- folosirea produse open source (ele vor exista pe termen lung)

- generatorul de cod trebuie sa stie sa genereze orice limbaj si sa permita combinarea modulelor in orice forma posibila.

Ideile simple sunt cel mai greu de realizat din motiv ca sunt simple si nu iti ofera nici o alta alternativa. Aici ideea a fost sa cream un generator de aplicatii care sa primeasca de la client specificatii si apoi sa genereze aplicatia automat. O alta metoda de a realiza soft, mult mai rapida si mai buna. Simplu nu?

Oct 05

Am fost extrem de ocupati in ultima perioada si probabil singurul lucru care ne lipseste e timpul. Unde se poate cumpara timp? Se pare ca singura resursa inestimabila e timpul. Cine ar fi crezut.

Cum poti sa castigi timp? Externalizezi tot ce nu-ti place sa faci si faci doar ce-ti place. Pentru o firma s-ar traduce ca apelezi la servicii care te ajuta sa faci doar ce conteaza. Desigur asta inseamna ca trebuie sa cauti cele mai bune variante, deci timp pierdut pe termen scurt si castig in perspectiva.

May 16

Sambata am primit o invitatie la spectacolul dedicat lui ASIMO desfasurat la showroom-ul Asko. Am vazut la lucru un robot construit cu un efort deosebit fara aparente beneficii.  De obicei orice forma de cercetare aduce dupa sine descoperiri care intr-o forma sau alta pot fi folosite la crearea de tehnologii mai bune. Daca stam sa analizam un pic cum e realizat ASIMO se pare ca merge cu hidrogen si e evident ca propulsia pe baza de hidrogen pare sa fie de viitor. Asta ar fi cel mai evident beneficiu adus pentru Honda de ASIMO, perfectionarea propulsiei pe baza de hidrogen.

Noi fiind o firma de soft ne intereseaza softul lui ASIMO. Aici progrese sunt destul de limitate pentru ca ASIMO executa niste rutine prestabilite fara prea multe variatii. Imbinarea softului cu hardware-ul este aproape perfecta la ASIMO si toti ne-am dori ca si calculatoarele noastre personale sa mearga si sa vorbeasca cu noi. Cred ca pe cei de la HONDA ii intereseaza mai mult recunoasterea vorbirii si mai putin inteligenta artificiala ca produs.

La iesire ne-a asteptat noul Honda CR-Z care arata mai bine ca in poze.

May 05

Muncitorii perfectii pentru internet par sa fie de departe robotii/botii sau oricum vreti sa le spuneti, sunt programele care ruleaza pe ascuns sau nu si care nu fac decat sa caute si sa posteze informatii prestabilite de proprietari in scopuri comerciale in cele mai multe cazuri. Reteaua lor se extinde destul demult si probabil vor exista tot felul de probleme cauzate de acesti roboti.

Diversificare serviciilor web oferte gratuite pe internet creste, dar aceste servicii sunt dedicate oamenilor si nevoilor lor. Ce-ar fi daca ar exista roboti inteligenti care sa te ajute in munca de zi cu zi, in special cu activitatea mai putin relaxanta? Ce pot face astfel de roboti pentru tine? E destul de greu sa se gaseasca un patern general valabil care sa raspunde la aceasta intrebare pentru toti, dar in functie de o nevoie sau grup de nevoi exista o solutie pe baza de roboti. Ce credem noi ca poate fi realizabil este crearea unei aplicatii pe baza de roboti care sa ofere in mod transparent un model de lucru care sa unifice serviciile gratuite (fiecare cu functionalitatea lui) intr-un soi aplicatie completa de bussiness capabila sa respunda tuturor problemelor posibile prezente sau viitoare. Sigur daca afacerea are nevoie de ceva el exista sub forma de serviciu si este deja facut si trebuie doar integrat, si se poate face cu un robot care sa inteleaga serviciu si sa se muleze cu aplicatia existenta.  Singurul inconvenient pentru un astfel de sistem de lucru este conexiunea de internet, dar si aici se poate face o solutie de compromis.

Pare ceva ce trebuie explicat pe un caz concret. De exemplu sa luam o firma care vinde aspiratoare online. Aceasta firma are nevoie de o aplicatie care sa faca oferte, sa stie sa faca proforme/facturi, stoc, contabilitate, site de prezentare cu preturile actualizate etc. Toate acestea existe sub forma de servicii intr-o forma sau alta dar niciodata nu exista o solutie integrata complet… Ar fi imposibil de creat. Cum se poate crea o astfel de solutie? Credem ca singura solutie in momentul de fata este oferita de acest roboti. Toate bucatile se integreaza la nivel de functionalitate si nu la nivel de date. Datele vor fi impartite pe servicii, iar functionalitatea va fi oferita de roboti. Practic omul va da comenzii si cineva va raspunde la aceste comenzi folosindu-se de datele aflate in mai multe locuri. Desigur aceste comenzii trebuie create pentru a putea fi folosite, dar partea frumoasa e ca ele trebuie create o singura data pentru orice tip de nevoie. In plus afacerea ta este cu totul pe internet.

Astfel se creaza o fabrica de roboti care daca e facuta corect de la inceput se populeaza o singura data si va raspunde oricarei afaceri.

Dec 16

Avansul tehnologic face ca Nokia sa scoata pe piata un telefon N900. Ce poate sa faca?.. sa ruleze linux nativ, si toate aplicatiile de linux: browser puternic, flash, etc. (Nu stim daca are inca forta sa ruleze si aplicatiile de bussines gen open office, dar n-am fi surprinsi sa o faca.). Plus ca vine cu toate facilitatile unui sistem de operare, multitasking fiind cea mai importanta. Puterea bateriei s-ar putea sa fie singurul minus.

De ce incepe o noua era? Pentru ca acum practic poti sa ai calculatorul desktop la tine in buzunar, si asta e doar inceputul.

Oportunitatea bussines-ului sa devine mobil este din ce in ce mai aproape. Serviciile web vor juca un rol dominant in viitor.