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?