Не съм писал отдавна, бла-бла-бла, да не продължавам.
Гледайте сега, имаме при нас един юноша бледен, той се казва Гошко (примерно) и като чудо е software developer. За незапознатите, това означава, че пие много кафе и постоянно се цъкли в монитора.
Гошко е типичен програмист и един ден му идва поредната гениална идея за невероятен продукт, който ще избие рибата и ще му донесе много пари. И понеже Гошко е същинското клише за програмист просто сяда и започва да пише.
Няма да говоря за това, че Гошко не сяда да си направи дизайна на приложението, че не предвижда време за тестване и документиране и т.н., дори ще пропусна 3 месеца упорит труд и гениални програмистки решениея.
След тези 60 дни работа, Гошко продължава да седи пред компютъра с все по-разтревожен поглед. В крайна сметка той има приложение, което е трябвало да бъде готово преди 2 месеца и от тогава е завършено на 99% докато не му дойде на ум поредната изключително важна функционалност, без която продукта му няма да е завършен и той се хвърля да пише и нея.
До тук е ясно. Стигне ли се до този етап значи вече си яко в гъбите и трудно ще излезеш от там. Аз лично така си изгубих наистина много време за да получа един продукт, който имаше основата на космически кораб, а се нуждаех от парапланер.
Може би това е резултат от това, че и аз и Гошко работим сами и измежду многото неща започваме да губим фокус.
От известно време чета блога на Джоел Сполски (въобще така трябва да му се пише името), та там споменава нещо много интересно (четох го отдавна и не ми се търси точен линк).
Той предлага следното решение. Сядаш и се правиш списък с всички необходими според теб компоненти. Да речем, че са общо 100. От тях внимателно избираш 50-те най-важни и ги имплементираш.
Какво се получава. Имаш продукт за много по-малко време, но с половината функционалност, та той на практика е незавършен.
Това, което казва Джоел е, че всъщност въобще не е така. Пускайки продукта с половината от предвидената функционалност, всъщност е много хитър план да си спестиш време и да разбереш от какво потребителите наистина имат нужда. Все пак нали идеята е, че всяка програма прави по едно нещо, дори да вградят в MS Office възможност да прави кафе, той пак ще си е офис пакет и потребителите му ще го купуват заради именно тази му функция, а не заради кафето.
Примера, който се даваше в поста беше за Apple и това, че пуснаха iPhone без copy/paste. На пръв поглед това е нещо, без което нито един "компютър" не би могъл да се пусне. Но Apple го пуснаха. При това телефона си стана доста успешен без дори да има copy/paste, представяте ли си.
Както и да е, потребителите ревнаха, че си нямат възможност да копират и залепят, от Apple казаха "No problem" и при следващия релийз на софтуера за телефона им пуснаха тази функционалност. Елементарно.
Идеята да пуснеш само 50% от функциите е много проста, пускаш основните неща и когато някой клиент ревне "Ама няма ми го това ..." просто си отваряш списъчето, поглеждаш и си казваш "Аха, това хубаво съм го мислил, добре, ще го напиша" или пък "Брей, не съм се сетил за това". Така в крайна сметка пишеш наистина необходимите 80% функции и като бонус получаваш едно разтегляне на нещата във времето, което ти дава възможност да обмислиш всичко по-добре.
Просто се оказва доста трудно да започнеш нещо голямо и да го завършиш "на един дъх"
Когато аз попаднах в ситуацията на Гошко, направих нещо подобно, нацепих проекта на много по-малки подпроекти, набелязах им основната функционалност и започнах да ги правя едно по едно. В началото първия release беше само с един работещ компонент, всичко останало седеше на "to be implemented", но клиента беше доволен защото основния компонент беше готов и работеше, плюс това му бях обяснил, че нещата ще стават постепенно, а той редовно виждаше някакъв прогрес.
Разбира се тогава не бях чел статията на Джоел и не знаех какво точно правя, но се получи.
Да кажем, че смислените ми проекти се броят на пръстите на ръцете ми, интересно е по-experienced програмистите да кажат какво мислят по-въпроса.
неделя, октомври 11, 2009
50% Software Developer
петък, юли 17, 2009
Ей така ...
Не съм писал от бая време и за разлика от Mrasnika, който вече пише месечни постове, аз ще се опитам да пиша поне на половин месец :)
И за да спазя тоя принцип ще драсна нещо "ей така" :)
В IT света неща бол, Google най-после пуснаха Chrome за Linux и Mac, макар и още бета. На всичкото отгоре решиха, че и собствена операционна система ще пускат, пак Linux базирана.
Apple пуснаха някакъв нов софтуер за иТелефон, обаче тая година нито следих какво става на MacWorld, нито се интересувах какво правят тия хорица. Не се интересувам вече чак толкова от телефоните им и компютрите им. Компютрите, ясно, там нещата опират до едни пари, дето не ми се дават точно за такива неща. А пък за телефона им, защото тъпото говедце дори и машина за италиански сладолед да му сложат пак ще си остане телефон, не ща да го чувам заради едни младежи, които искаха да им направим една игра за въпросното добиче. Писахме сума време някакво демо. Много го харесаха и повече не се обадиха. Да им се вкисне бирата дано.
Whatever. За Apple, писна ми да слушам за здравословното състояние на Steve Jobs, оставете човека на мира.
upgrade до ubuntu 9.04. Почти безпроблемно, няма драйвери за Ati, да им сера и на тях в устенцата.
Сега ходя по някакви интервюта за работа. Трябва пара, че иначе глад, мизерия, война и ... революция :P Бялата смърт ме чака в хладилника.
Лаптопа ми дрънчи та се къса. Много му е жега, въпреки че е на поставка с допълнителен вентилатор.
Направихме якия трип Пловдив - Бургас - Камчия - Варна - Русе - София - Пловдив за 4-5 дена.
До Камчия на стоп. По тия пътища има големи образи. Спахме в Камчия на палатки. На това море много пясък много нещо, пък водата мокра... пък бирата студена .... ужас !!!
btw, цялото пътуване ми излезе почти без пари.
Официално съм нелегален емигрант с невалидни документи. Превод трябва да си сменя адресната регистрация и да си подновя личната карта. Вече успяха да ме глобят за второто. Тъпи полицаи, кой им е дал право да искат лични карти? За какво въобще са тия лични карти? Всички лични документи трябва да се изгорят ритуално на центъра на всяко населено място.
Прибрах се в Русе малко да се видя с народа. Живи са.
Слушам яко Kyuss и God Is An Astronaut. Втората група скоро я чух за пръв път. Бравос на момчетата.
И Tori Amos, човек, тя е луда.
Лято. Жега. Всички говорят за разни морета, пък трябва яко да се бачка. Много лошо.
Както казваше една бивша съученичка - Тей като стане, все тей става ! :)
П.П. А, изборите минаха, и на тях да им ... майката !
П.П.2 YouTube и Digg спират поддръжката на Internet Explorer 6. Амин ! И на Microsoft ... майката!
Етикети: лично
четвъртък, юли 02, 2009
Избори в Малка Джангърия
Една напълно измислена история родена единствено в болния мозък на автора (аз). Всяка връзка с реални лица и събития (може би) е случайна.
В едно далечно село насред Родопите, наречено Малка Джангърия живеели сплотено малка група прости селяни, които изкарвали прехраната си с отглеждане на картофи и планински билки. След като миналото лято се включили в политически съюз на съседните села Горна Джагърия и Средна Джангърия у иначе скромните жители на Долна Джагърия се появила един особен вид гордост, от това че вече са прости селяни част от една голяма мултикултурна общност. Пък и далеч по-развитите села членове на съюза им обещали субсидии за да развият картофените си ниви.
Всички в селото били много щастливи от живота си докато един ден не се оказало, че мандата на сегашния кмет - руският възпитаник Альоша Серьожин, е изтекъл и е време за нови избори.
По радио-точката пръв се появил Альоша, който започнал да напомня на съселяните си колко хубав е бил живота им под неговото управление.
Благодарение на собственика на свинефермата, който бил отявлен русофил, Альоша успял да купи половината ефирно време на радио-точката и дори събрал половин кесия жълтици за да се пусне на предплатен план на ТКМД (Телекомуникационна Компания Малка Джангърия) и да увещава електората по телефона.
Грубият полицай (с нежното име) Боцко Боцков издигнал платформа от два пробити варела, турил върху тях нара, на който нощно време спяла тъща му и започнал да крещи по чаршията:
- Не ви ли писна да ви управляват некадърници ! Само една тежка полицейска ръка може да оправи нещата!
И така докато пред двата му изтърбушени варела (щедро дарени от собственика на фурна "Фурната" - Гочо Пекаря) не се събрала малка група недоволни съселяни. Повечето от тях били там просто за да видят гипсирания крак на Боцко, който той счупил предния ден докато гонел прасето по двора, но имало и такива, които просто си мечтаели за полицейско село.
Докато народа слушал в захлас полицая на селото, от другата страна на площада, пред група от трима сакати ветерани от втората световна война и селския идиот Харалампи, нервно тропал с крак и крещял генерал Болен фон Клинкерхофен. Тук е мястото да се отбележи, че той отдавна не бил генерал, защото третия райх се разпаднал преди доста лета, но вероятно заради объркана рецептата, той още си мислел, че войната е в разгара си.
Генерал фон Клинкерхофен крачел наляво надясно и със спорадични крясъци обяснявал на четиримата партийни членове:
- Проблема на Малка Джангърия са преселниците от юг. Те се заселват на другия хълм и...
- Хайл ! - изкрещял Харалампи.
- Не съм довършил! Те се заселват по другия хълм и започват да обработват нивите, които по право принадлежат на вас!
- Хайл ! - повторил Харалампи.
- Чакай не съм довършил! Ние трябва да спрем преселниците и да си върнем властта над селото !
Болен! Победа ! Болен ! Победа ! - започнал да крещи генерала под келявите ръкопляскания на двамата ветерани (тъй като третия бил само с една ръка) и объркания поглед на Харалампи, който се чудел дали е подходящ момент да се провикне "Хайл!".
Точно в края на площада от терасата на втория етаж на имението си наблюдавал събитията княз Симеон Сакскобургебасиготиния. Той бил аристократ, който преди 45 години избягал чак в Красна Джангърия, но след като положението в селото се подобрило, той се върнал с идеята да оправи всички за 800 дни.
На тези избори той не бил много активен, от време на време карал ратая си лепи плакати на спирката и да агитира кърските работници да гласуват за истинската аристокрация.
Сега той седял на терасата си, допивал си 25 годишната кайсиева ракия и си мислел - "За какво е тая лудница, да се занимават будалите, аз си върнах къщата на тате и нивите на дедо, не ми е вече до избори".
Циганчето Маугли Костовистки също решил да се върне в политическата борба. Този път той решил да подходи по изцяло нов начин към агитацията. Купил си веб камера от съседното село и отишъл в читалището, където подредил зад себе си камара книги (грижливо премахвайки всички томове на Карл Маркс и Астрид Линдгрен) и започнал да отговаря на запитвания "по интернета"! Проблема бил само че за да могат съселяните му да задават въпроси и да видят отговорите им, той трябвало да става от едиствения компютър в селото.
През това време в бившето кино, което се помещавало в сградата на читалището, електората си бил събрал Гождоман Али Баба ефенди и обяснявал на гласоподавателите:
- Вижте сега, да ви обясня някои неща. Аз командвам парада. Аз мога всичко.
По времето на Маугли аз управлявах, по времето на Симчо пак аз, по времето на Альоша аз дърпах конците и дори да дойде оня селяндур, който си изгае на старажари и апаши - полицайчето, пак ще правя каквото си искам със селото. Нека да не се заблуждаваме, гласувайте за мене белким си спестя някоя друга пара от подкупи.
- Машала, ефенди ! - отговорили всички в хор.
Докато всички в селото били заети с предизборната дейност едниствено глашатая Иванчо изглеждал отчайващо незаинтересован от събитията. Той шавал из "текейсето" с туба нафта и си повтарял под нос - "Къде оставих кибрита, мамицата ви! Къде оставих кибрита!?!"
Етикети: лично, fickbar menshen, fun, idiotism
неделя, юни 28, 2009
За хората, бъдещето и информатиката
Да зададеш въпроса "За какво я уча тая математика?" в началото на първи курс в университета е проява на нетърпеливост. Да зададеш същия въпрос няколко години по-късно е проява на пълно неразбиране на материята.
Да уточня, първо, аз никога не съм бил особено добър по математика, дори имам доста изпити оставени "за като му дойде времето", но дори аз започвам да осъзнавам някои неща за живота. Има още две години
Започнах да си мисля някакви такива неща за живота и информатиката след като в Русе се запознах с двама пияни младежи от Манчестър. Те тъкмо бяха завършили училище и тепърва кандидатстваха в колеж. Когато ги питах какво ще учат и двамата казаха Network Administration (или нещо от сорта, не запомних точно, защото след това започнаха да крещят - hackers and crackers!).
Интересно ми стана защото в България едва ли някъде можете да намерите подобна специалност, при нас има математика, информатика и КСТ, друго ако се интересуваш и се занимаваш сам.
Докато при нас ни учат на нещо и след това ни обясняват за какво ще се ползва, на запад първо им казват какво ще правят и после им обясняват как, защо и т.н.
До сега винаги съм си мислел, че това е слабост на нашата образователна система, но се замислих над една мисъл, че в момента преподавателите учат студентите да работят професии, които все още не съществуват. За тях това е много сериозен проблем защото те специализират нещата. Ако искаш да станеш мрежов администратор учиш едно, ако искаш да станеш desktop програмист - друго, а за web програмист - нещо напълно различно.
При такъв подход, без да задълбаваш в нещата, промяната би била нещо, с което доста трудно можеш да се справиш ако не си запознат с основите.
Точно това според мен се опитва да направи нашата образователна система - преподават основите, преподават начин на мислене, а от там нататък е въпрос на желание и малко интелект да се развиеш и да научиш новите неща. Точно по същия начин по който първо виждаш нещата математически и след това разбираш как се повтарят в информатиката.
Някакъв юноша бледен беше казал, че информатиката е един от най-сложните дялове на приложната математика и посредствените математици е хубаво да си останат просто посредствени математици :)
Далеч съм от мисълта, че нашите университети вадят много по-подготвени и много по-кадърни информатици от западните, все пак всичко е въпрос на хора, ако си посредствен няма значение къде учиш. :)
Важното е да се стремим към самоусъвършенстване, да гледаме напред и да вярваме, че ако нещо е писано да стане, то ще стане по един или по друг начин :)
peace and love brothers \/
сряда, юни 24, 2009
Suse Studio - web, а ?
Най-после получих покана за SuseStudio beta tester.
За незапознатите да обясня за какво иде реч. Suse Studio си е едно готино уеб сайтче, в което можете да си "построите" сами linux дистрибуция на база SUSE, да си го изтеглите или дори да го тествате online.
Въпреки че софтуера е още в beta стадии се държи много прилично. Разработчиците са се постарали да не се усеща по нищо, че работите с web интерфейс, а не с desktop приложение.
При влизане те посреща един симпатичен робот и ти предлага да си избереш базова конфугурация, с която да започнеш същинското ръчкане и настройване. Възможните опции са server, minimal x, gnome, kde 3, kde 4 и minimalistic. След като си избереш шаблон за работа можеш съвсем спокойно да си селектираш какви пакети искаш да се инсталират допълнително и кои да се махнат, поддържат се зависимости, така че шанса да махнеш нещо, което не трябва, е доста малък.
Следват тривиалните настройки за локализация, добавяне на потребители и т.н.
До тук опциите са доста ограничени (поне ако искате наистина да разцъкате нещата на 100%), но идва интересната секция "Overlay files", където можете да качите на сървъра файлове, които да заменят вече съществуващите на диска. Ако знаете какво правите, това ви дава пълен контол над всичко което си поискате.
За финал остава естесвено самото сглобяване на системата, което в моя случай отне около 3 минути, като можете да си изберете дали да се build-не disc image, live cd, vmware virtual machine или xen virtual machine. Имате 15GB за експерименти. :)
След като процедурата завърши, освен очакваната функционалност да си го изтеглите има едно малко симпатично бутноче Testdrive. Тук започва забавлението. Можете да се свържете към виртуална машина стартирала вашата дистрибуция или през flash-овски уеб интерфейс или през ssh и да правите каквото си искате. Все пак не го приемайте като безплатен виртуален хостинг, всяка сесия се откача автоматично след 1 час - по мое мнение напълно достатъчно време за да разберете дали добичето работи като хората.
Виртуализацията на linux + GNOME ми се стори малко бавничка, но все пак върви върху QEMU (мен ако питате, лоша работа :)).
По-важния въпрос тук е на кого му трябва нещо такова ? Ако искаш да си направиш 100% твой си линукс имаш хиляди варианти - от linux from scratch, през debian net install, та чак до красивите и удобни инструментчета на ubuntu за тази цел.
На мен лично за подобен тип дейности ми допада най-много debian net install / arch linux net install идеята, тоест базова инсталация, която си слагате от диск и от там нататък всичко, което ви трябва се инсталира от net-а. По-голям контрол над системата - здраве му кажи.
Ще кажете - да, ама това е само за nerd-ове. Дори да приемем, че е така, аз пак не проумявам защо тези fancy user friendly shiny happy geeky-weeky teeny-weeny flashy нещица трябва да се случват в web ???
Само мога да си представя какви хардуерни ресурси са отделени за този проект. За мен чиста загуба на време и ток. :)
Whatever, проекта не е лош като изпълнение, ако ви допада идеята тествайте го и сами преценете до колко е полезен. Най-малкото си заслужава разцъкването. Можем само да се надяваме, че това ще донесе на linux някой друг фен.
P.S. За наблюдателните, Chrome под Linux тича та не мога да го догоня. Нямам търпение да излезе нещо по stable. На фона на това, което писах за Firefox, май открих новия си любим браузър.
Етикети: geex, linux, open culture, software
