Tisztelt Keresztesi úr,
Xxx Xxxxtól kértem el az Ön email címét, mivel nagyon szeretnék egyértelmű választ, vagy a személyes találkozás lehetőségét megkapni Öntől - az alábbiakban szeretném röviden elmondani, hogy miért.
Egész programozói pályafutásom alatt jellemző volt rám, hogy igyekeztem az általános feladatokat megragadni, struktúrákat építeni a fejlesztés alatt álló rendszerek alá, hogy a szerkezet "szellős" maradjon, így lehetővé váljon az alapréteg szolgáltatáskészletének továbbfejlesztése a stabilitás megtartása mellett - illetve hogy a konkrét feladatok megvalósítása során a fejlesztőnek kizárólag a saját részével kelljen törődnie, nem nyúlva idegen szintekhez, eszközökhöz.
Ez jelenlegi munkahelyemen olyan szintig jutott, hogy számos alapszolgáltatás (többek között: általános iratkezelés, törzskarbantartás, bizonylatkezelés, levelezés, XML alapú GUI mögötti alkalmazáslogika keret, külső adatkapcsolat, stb) alapjaiban az én elképzeléseim szerint (és javarészt általam) került megvalósításra.
Így tulajdonképpen több, mint tíz éve egyre mélyebb szinten, egyre nagyobb rendszereken dolgozva olyan komponenseket, eszközkészleteket alkottam, amelyek a konkrét rendszerhez egyre kevésbé kötődnek; "bárhol" használhatók lennének, ha nem kötődnének programozási nyelvhez, illetve lett volna idő a korrekt tervezésre (mert természetesen a menet közben hozzácsapott, a kiindulással gyakran homlokegyenest ellentétes igények miatt a belső megvalósítás elég zavaros).
Az elmúlt időszakban egyre erősebbé vált bennem egy vízió, mely szerint ebben az irányban haladva megvalósítható egy általános alkalmazás keretréteg, amely a legalapvetőbb feladatokat leveszi a fejlesztők válláról, sok "gyakori" feladatra használható referencia implementációt ad; független operációs rendszertől, sőt, programozási nyelvtől is; homogén "node-halmazként" tekint a rendszert alkotó komponensekre, amelyek nem feltétlenül számítógépek, hanem a keret alapkommunikációját értő intelligens eszközök is lehetnek. A keret perspektívái pedig elképesztőek... (korábbi levelemben mindez kicsit részletesebben olvasható)
Ez a gondolat még számomra is gyakran tűnik "túl ambiciózusnak", mégis, képtelen voltam meggyőzni magam a lehetetlenségéről, sőt egyre erősebb bennem az az érzés, hogy ez az a dolog, amiért érdemes volt elkezdenem programozással foglalkozni, és hiányozna az életemből, ha nem tennék meg mindent a megvalósítása érdekében.
Egyedül azonban egy ekkora munkába vágni irreális, és sajnos biztos vagyok benne, hogy jelenlegi munkahelyem profiljától teljesen idegen.
Itt jött képbe a Freesoft, amely "elég nagy" lehet egy ilyen szintű fejlesztéshez, hosszú távra tervez, társadalmi érzékenységet is mutat, és nem utolsósorban magyar cég; illetve személy szerint Ön, aki egy általam olvasott cikkben ( http://nws.iif.hu/ncd2003/docs/ehu/EHU-188.htm ) a jövő megértéséről, megtervezéséről és megvalósításáról beszélt. Ezért kerestem fel Önt, társat remélve álmaimhoz.
Nyilvánvaló azonban, hogy ez a gondolathalmaz, bármennyire is fontos nekem, nem feltétlenül jelent vonzó befektetést egy külső szemlélő - jelen esetben az Ön számára. Amennyiben ez lenne a helyzet, szeretnék erről mihamarabb értesülni, és más utakat keresni (mivel számomra egyértelmű, hogy nyugalmam érdekében el kell indulnom ebbe az irányba, és amennyiben lehetséges, professzionális keretek között foglalkozni vele); ellenkező esetben lehetőséget kapni egy részletesebb megbeszélésre.
Figyelmét köszönöm, várom válaszát
Kedves Loránd
Az önéletrajzomat bekérték, de onnantól semmi.
Ha elég messzire jutottál, a megoldás a hátad mögött van... :-)
Respektu Tempon. Tiszteld az Időt / Az Időt tiszteld.
International readers, please use the english tag to get a first impression, thank you.
2005. augusztus 26., péntek
2005. július 10., vasárnap
Kapcsolatkeresés - alapítvány létrehozás
Kedves Csaba,
Múlt pénteki beszélgetésünk (Kiss Reni férje, alapítványcsináláson töprengő programozó) emlékeztetőjeként küldöm ezt a levelet. Tehát a lényeg:
Több, mint tízéves, és elég speciális programozói tapasztalat birtokában arra a következtetésre jutottam, hogy van a programozás világában egy "hiányzó réteg", amelynek részei minden egyes program megírásakor hiányoznak és helyileg meg kell őket valósítani, ami értékes időt és erőforrást vesz el a valóban megoldandó feladatoktól. Én egymástól nagyon eltérő rendszereken dolgozva szembesültem azzal a ténnyel, hogy mindenhol ugyanazt csináltam. Tervem az, hogy ezt a "réteget" önálló projekt keretében szeretném megvalósítani az elkövetkező években, és lehetőleg ebből megélni.
Ez a gondolat ellentétes feltételeket támaszt. A rendszer csak akkor lehet életképes, ha jelentős anyagi és emberi erőforrások (komoly cég(ek)) állnak a háta mögött. Ugyanakkor ma nagyon sok társadalmi, egészségügyi, környezetvédelmi, szociális szempontból létfontosságú tevékenység azért nem tud megvalósulni, mert nincs meg hozzá a szükséges információtechnológiai háttér. Ezért non-profit felhasználásra a keret alapkomponensei szabadon felhasználhatók lennének, míg profitorientált rendszerekél és fejlesztésnél ugyanez fizetős lenne megvásárlás vagy bérlet formájában. Ugyanígy bevételforrást jelentene a "nem alapkomponensek" forgalmazása (ügymenetkezelés, virtuális iroda, levelezés, iktatás, stb), illetve ügyfeleknek történő egyedi komponens fejlesztés. Mindenhol meg kell viszont tartani a különbséget a non-profit és az üzleti alkalmazások között. Szeretném biztosítani, hogy ezek az elvek ne sérüljenek; viszont ha elmegyek egy céghez dolgozni és "átadom nekik" a technológiát, a továbbiakban ennek ellenőrzéséről lemondtam - ha magam alapítok céget, az túl kicsi lenne a megfelelő fejlesztésre, valószínűleg megvásárolná valaki, és utána a helyzet ugyanaz lenne.
A megoldást egy alapítvány létrehozásában látom. Ugyanis ez egy nemzetközileg ismert és elfogadott intézmény, aminek a feladata pontosan az, amit én kívánok: az alapító bizonyos tőkét valamilyen cél érdekében letesz az asztalra, eltávolítja saját érdekeitől és általában a pénzügyi folyamatoktól. Ez a tőke hozzákötődik a célhoz, nem lehet "kivenni" az alapítványból és más célra, más módon felhasználni. Jelen esetben a tőke szellemi: a rendszer alapgondolata és tulajdonjoga. Az alapító okiratban tisztázni kell, hogy milyen rétegei vannak a rendszernek, mely komponensek tekintendők alapszintnek, melyek "pénzesnek", milyen célokat támogat az alapítvány azzal, hogy szabadon rendelkezésre bocsátja az alapkomponenseket, és honnantól számít üzletinek a dolog. Az alapítvány feladata ezen elvek felett őrködni, a vitás kérdésekben dönteni.
A precíz megfogalmazás azért is nagyon fontos, mert a rendszer fejlesztését nem az alapítvány, hanem egy cég végzi (amely lehet egy mással is foglalkozó "nagy", vagy egy eleinte különféle támogatásokból élő, direkt erre a célra létrehozott programozói csoport), amely természetesen csak úgy fog beszállni a dologba, ha az üzleti réteg nyereségét biztosítottnak látja. Ez a szerkezet kölcsönösen előnyös együttműködést tesz lehetővé: az alapszint kifejlesztéséhez szükséges befektetést a cég állja, amely önmaga is használja ezt a később általa fejlesztett komponensekben és alkalmazásokban, melyek fejlesztési ideje és költsége jelentősen csökkenhet ezáltal (tulajdonképpen sok cég csinált már ilyesmit "magánhasználatra", csakhogy ezek mindig mostohagyerekként, "az éles alkalmazás háta mögött" keletkeznek, és soha nem jutnak el arra a szintre, hogy önálló termékként megjelenhessenek, mert mindig van egy csomó "kis kompromisszum", ami egyedivé teszi őket). Bevételre tehet szert abból is, hogy más fejlesztő cégek for-profit fejlesztéseikhez használják a rendszert és ezért fizetnek. Ugyanakkor létrejön egy non-profit célokra szabadon használható keretrendszer, ami az informatikai fejlesztések költségeit drasztikusan csökkenti, és nem "hulladékfelhasználás" szintű, hanem mindig a legfrissebb fejlesztéseket tartalmazza, éles piaci rendszerek mögötti háttérkomponensekből áll. A megszerzett programozó gyakorlat is "átvihető", nincs az, hogy egy fejlesztő nagyon drága eszközökhöz szokott, abban meg tudna valósítani egy feladatot, de a megrendelőnek erre már nincs pénze.
Az alapító okiratnak tartalmaznia kell azt is, hogy milyen okokból mely feltételek között mondhatja fel az együttműködést a megvalósító céggel - pl: a cég által fejlesztett "saját komponensek" a cég birtokában maradnak ugyan, de az alaprendszer harmadik fél által való használatából, bérletéből kapott jövedelemtől a továbbiakban elesik (az általa kötött szerződések haszna természetesen megmarad nála). A lényeg, hogy legyen "fair business" az alapítvány és a cég között, mindenki találja meg a saját hasznát és a jó együttműködésben legyen érdekelt, ne a kiskapuk keresésében. Természetesen én is a "cégben" dolgoznék - esetleg tulajdonosa lennék, fizetést onnan kapnék, és magam sem tehetnék olyat, ami az itteni elvekkel ellentétes lenne - bármilyen komoly üzleti érdek is diktálja, mert következménye az együttműködés megszakítása lenne, amivel elesek az alapréteg értékesítéséből származó haszontól.
Mindez persze valószínűleg túlbiztosításnak tűnik, de az én természetem ilyen: igyekszem a dolgok elején végiggondolni a lehetséges kimeneteleket, és annak megfelelően "méretezni" az indulást. Ha nem jön be a dolog, legfeljebb gondolkodtam egy jót és levontam néhány tanulságot - viszont nagyon nem szeretek menet közben arra ébredni, hogy valahol az elején figyelmetlen voltam és "megspóroltam" ezt, ami miatt most nagy árat kell fizetnem.
Türelmedet köszönöm
Kedves Loránd
A gondolat végeredménye lett a Hajnalvilág Alapítvány létrehozása
Múlt pénteki beszélgetésünk (Kiss Reni férje, alapítványcsináláson töprengő programozó) emlékeztetőjeként küldöm ezt a levelet. Tehát a lényeg:
Több, mint tízéves, és elég speciális programozói tapasztalat birtokában arra a következtetésre jutottam, hogy van a programozás világában egy "hiányzó réteg", amelynek részei minden egyes program megírásakor hiányoznak és helyileg meg kell őket valósítani, ami értékes időt és erőforrást vesz el a valóban megoldandó feladatoktól. Én egymástól nagyon eltérő rendszereken dolgozva szembesültem azzal a ténnyel, hogy mindenhol ugyanazt csináltam. Tervem az, hogy ezt a "réteget" önálló projekt keretében szeretném megvalósítani az elkövetkező években, és lehetőleg ebből megélni.
Ez a gondolat ellentétes feltételeket támaszt. A rendszer csak akkor lehet életképes, ha jelentős anyagi és emberi erőforrások (komoly cég(ek)) állnak a háta mögött. Ugyanakkor ma nagyon sok társadalmi, egészségügyi, környezetvédelmi, szociális szempontból létfontosságú tevékenység azért nem tud megvalósulni, mert nincs meg hozzá a szükséges információtechnológiai háttér. Ezért non-profit felhasználásra a keret alapkomponensei szabadon felhasználhatók lennének, míg profitorientált rendszerekél és fejlesztésnél ugyanez fizetős lenne megvásárlás vagy bérlet formájában. Ugyanígy bevételforrást jelentene a "nem alapkomponensek" forgalmazása (ügymenetkezelés, virtuális iroda, levelezés, iktatás, stb), illetve ügyfeleknek történő egyedi komponens fejlesztés. Mindenhol meg kell viszont tartani a különbséget a non-profit és az üzleti alkalmazások között. Szeretném biztosítani, hogy ezek az elvek ne sérüljenek; viszont ha elmegyek egy céghez dolgozni és "átadom nekik" a technológiát, a továbbiakban ennek ellenőrzéséről lemondtam - ha magam alapítok céget, az túl kicsi lenne a megfelelő fejlesztésre, valószínűleg megvásárolná valaki, és utána a helyzet ugyanaz lenne.
A megoldást egy alapítvány létrehozásában látom. Ugyanis ez egy nemzetközileg ismert és elfogadott intézmény, aminek a feladata pontosan az, amit én kívánok: az alapító bizonyos tőkét valamilyen cél érdekében letesz az asztalra, eltávolítja saját érdekeitől és általában a pénzügyi folyamatoktól. Ez a tőke hozzákötődik a célhoz, nem lehet "kivenni" az alapítványból és más célra, más módon felhasználni. Jelen esetben a tőke szellemi: a rendszer alapgondolata és tulajdonjoga. Az alapító okiratban tisztázni kell, hogy milyen rétegei vannak a rendszernek, mely komponensek tekintendők alapszintnek, melyek "pénzesnek", milyen célokat támogat az alapítvány azzal, hogy szabadon rendelkezésre bocsátja az alapkomponenseket, és honnantól számít üzletinek a dolog. Az alapítvány feladata ezen elvek felett őrködni, a vitás kérdésekben dönteni.
A precíz megfogalmazás azért is nagyon fontos, mert a rendszer fejlesztését nem az alapítvány, hanem egy cég végzi (amely lehet egy mással is foglalkozó "nagy", vagy egy eleinte különféle támogatásokból élő, direkt erre a célra létrehozott programozói csoport), amely természetesen csak úgy fog beszállni a dologba, ha az üzleti réteg nyereségét biztosítottnak látja. Ez a szerkezet kölcsönösen előnyös együttműködést tesz lehetővé: az alapszint kifejlesztéséhez szükséges befektetést a cég állja, amely önmaga is használja ezt a később általa fejlesztett komponensekben és alkalmazásokban, melyek fejlesztési ideje és költsége jelentősen csökkenhet ezáltal (tulajdonképpen sok cég csinált már ilyesmit "magánhasználatra", csakhogy ezek mindig mostohagyerekként, "az éles alkalmazás háta mögött" keletkeznek, és soha nem jutnak el arra a szintre, hogy önálló termékként megjelenhessenek, mert mindig van egy csomó "kis kompromisszum", ami egyedivé teszi őket). Bevételre tehet szert abból is, hogy más fejlesztő cégek for-profit fejlesztéseikhez használják a rendszert és ezért fizetnek. Ugyanakkor létrejön egy non-profit célokra szabadon használható keretrendszer, ami az informatikai fejlesztések költségeit drasztikusan csökkenti, és nem "hulladékfelhasználás" szintű, hanem mindig a legfrissebb fejlesztéseket tartalmazza, éles piaci rendszerek mögötti háttérkomponensekből áll. A megszerzett programozó gyakorlat is "átvihető", nincs az, hogy egy fejlesztő nagyon drága eszközökhöz szokott, abban meg tudna valósítani egy feladatot, de a megrendelőnek erre már nincs pénze.
Az alapító okiratnak tartalmaznia kell azt is, hogy milyen okokból mely feltételek között mondhatja fel az együttműködést a megvalósító céggel - pl: a cég által fejlesztett "saját komponensek" a cég birtokában maradnak ugyan, de az alaprendszer harmadik fél által való használatából, bérletéből kapott jövedelemtől a továbbiakban elesik (az általa kötött szerződések haszna természetesen megmarad nála). A lényeg, hogy legyen "fair business" az alapítvány és a cég között, mindenki találja meg a saját hasznát és a jó együttműködésben legyen érdekelt, ne a kiskapuk keresésében. Természetesen én is a "cégben" dolgoznék - esetleg tulajdonosa lennék, fizetést onnan kapnék, és magam sem tehetnék olyat, ami az itteni elvekkel ellentétes lenne - bármilyen komoly üzleti érdek is diktálja, mert következménye az együttműködés megszakítása lenne, amivel elesek az alapréteg értékesítéséből származó haszontól.
Mindez persze valószínűleg túlbiztosításnak tűnik, de az én természetem ilyen: igyekszem a dolgok elején végiggondolni a lehetséges kimeneteleket, és annak megfelelően "méretezni" az indulást. Ha nem jön be a dolog, legfeljebb gondolkodtam egy jót és levontam néhány tanulságot - viszont nagyon nem szeretek menet közben arra ébredni, hogy valahol az elején figyelmetlen voltam és "megspóroltam" ezt, ami miatt most nagy árat kell fizetnem.
Türelmedet köszönöm
Kedves Loránd
A gondolat végeredménye lett a Hajnalvilág Alapítvány létrehozása
Feliratkozás:
Bejegyzések (Atom)