<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Вовата, s. Hamaelleon ™ &#187; web developer</title>
	<atom:link href="http://www.vlkomarov.info/blog/tag/web-developer/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.vlkomarov.info/blog</link>
	<description>Почти сериозен блог на една гола цица</description>
	<pubDate>Sun, 31 May 2009 20:01:50 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>jQuery (jQuery UI) базирана администрация на галерия</title>
		<link>http://www.vlkomarov.info/blog/2009/05/25/jquery-based-administration-of-gallery/</link>
		<comments>http://www.vlkomarov.info/blog/2009/05/25/jquery-based-administration-of-gallery/#comments</comments>
		<pubDate>Mon, 25 May 2009 07:42:02 +0000</pubDate>
		<dc:creator>Hamaelleon</dc:creator>
		
		<category><![CDATA[Web development]]></category>

		<category><![CDATA[admin]]></category>

		<category><![CDATA[freelancer]]></category>

		<category><![CDATA[Jcrop]]></category>

		<category><![CDATA[jQuery]]></category>

		<category><![CDATA[jQuery UI]]></category>

		<category><![CDATA[lightBox]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[web developer]]></category>

		<category><![CDATA[галерия]]></category>

		<category><![CDATA[снимки]]></category>

		<guid isPermaLink="false">http://www.vlkomarov.info/blog/?p=169</guid>
		<description><![CDATA[Бях решил да не пиша повече в този блог (и не съм го правил от 09.2008 насам), но тъй като от един месец си работя вече само от вкъщи като web developer freelancer, имам малко повече свободно време. Вкл. смятам да отделя такова и да вдигна отново този блог на крака (само че на този [...]]]></description>
			<content:encoded><![CDATA[<p>Бях решил да не пиша повече в този блог (и не съм го правил от 09.2008 насам), но тъй като от един месец си работя вече само от вкъщи като web developer <strong>freelancer</strong>, имам малко повече свободно време. Вкл. смятам да отделя такова и да вдигна отново този блог на крака (само че на този адрес: <a title="www.vlkomarov.info Blog" href="http://www.vlkomarov.info/post/" target="_blank">www.vlkomarov.info/post/</a>), както и въобще да се погрижа за личния си сайт.</p>
<p>Темата днес е <strong>jQuery</strong> и защо това е един <strong>прекрасен javascript framework</strong> (<a title="jQuery" href="http://www.jquery.com" target="_blank">www.jquery.com</a>):</p>
<p><span id="more-169"></span></p>
<p><strong>1.</strong> Лесен за усвояване (изучаване) основен синтаксис: в сравнение с други библиотеки, върху които имам поглед (mooTools, YUI), синтаксисът на jQuery е много по-лесен за изучаване, четивен е и спестява - както и другите библиотеки - време и усилия на разработчиците.<br />
<strong>2.</strong> Наистина пести време: в сравнение с обема на кода, времето за debug-ване и обема на вложеното време и усилия, писането на jQuery, сравнено с native javascript или native Ajax (а не ползването на методи $.load, $.get, $.post, $.ajax via jQuery) e просто като забавна игра.<br />
<strong>3.</strong> Има десетки и стотици вече разработени от jQuery общността плъгини, които без или с леко модване на кода могат да влязат веднага в употреба и да спестят още повече време, осигурявайки обаче добра функционалност за вашия сайт.</p>
<p>Например, в демото, което можете да видите ползвам два стандартни плъгина:</p>
<p><strong>1.</strong> Единият осигурява lightBox ефектa, който мисля всички помним в първоначалния му prototype (+ scriptaculous) вариант: <a title="jQuery lightBox plugin" href="http://leandrovieira.com/projects/jquery/lightbox/" target="_blank">jQuery lightBox plugin</a> (сега има много и най-различни варианти).<br />
<strong>2.</strong> Вторият осигурява <em>една изключително полезна функционалност</em>, а именно crop = изрязване на снимки (вижте демото): <a title="jQuery Image Cropping Plugin" href="http://deepliquid.com/content/Jcrop.html" target="_blank">jQuery Image Cropping Plugin</a>.</p>
<p>Освен тези два основни jQuery плъгина в употреба влиза и функционалността, която jQuery UI (=User Interface) предлага за лесно създаване и манипулация на диалогови прозорци, както и за такива неща като sortable списъци: <a title="jQuery UI" href="http://www.jqueryui.com" target="_blank">www.jqueryui.com</a>.</p>
<p>През юли 2008, когато кодвах back-end-а за сайта на XGround Models (<a title="XGround Models" href="http://www.xgroundmodels.com/" target="_blank">www.xgroundmodels.com</a>) все още не знаех за jQuery и jQuery UI. Ползвах javascript библиотека от 2005 (jQuery стана на 3 години през януари 2009, т.е е от началото на 2006) за sortable функционалност, стана страхотно; а за crop-ването, заедно с колега Flash developer, писахме едни чудесии, комуникация PHP &lt;-&gt; Flash, XML &lt;-&gt; PHP (целият сайт е Flash и XML базиран, но във втората версия, която ще разработвам т.г. това вече няма да е така), всичко стана много добре, работи прекрасно, беше забавно, научих нови неща.. и загубих една седмица!</p>
<p>След това, през ноември 2008, когато кандидатствах за работа в ICDSoft писах едно домашно, което ако трябва да пиша сега (с използване на jQuery) щеше да е много по-добро: <a title="PhoneBook Demo" href="http://www.vlkomarov.info/projects/icdsoft/phonebook/" target="_blank&lt;br &gt;&lt;/a&gt;">Demo</a>.</p>
<p>През декември 2008 започнах наистина сериозно да следя за всичко около jQuery и мисля, че това беше крачка в правилна посока. Ако все още не сте я направили и вие, съветвам ви да побързате: това е неоценима помощ за всеки web developer.</p>
<p>Така, и в края, ето едно демо. Става дума за администрация на галерия - всеки 2-3-4 сайт има такава, нали? Сега, с помощта на jQuery (вкл. Ajax via jQuery), jQuery UI, плъгините, нещата стават в пъти по-бързо, с по-малко и по-чист код..</p>
<p>Функционалност:<br />
- проверка за тип, разширение, размер на файла и т.н.<br />
- предварително автоматично оразмеряване на всяка качена снимка<br />
- добавяне на max на брой нови снимки<br />
- смяна на всяка една снимка<br />
- изрязване на thumbnail чрез Jcrop от всяка снимка, при качване и във всеки един момент след това<br />
- изтриване на снимки<br />
- преподреждане на снимките<br />
- преглед на снимките (lightBox)</p>
<p style="text-align: center;"><!-- Smart Youtube --><span class="youtube"><object width="425" height="355"><param name="movie" value="http://www.youtube.com/v/EHJLdLxbZl0&amp;rel=1&amp;color1=d6d6d6&amp;color2=f0f0f0&amp;border=&amp;fs=1&amp;hl=en&amp;autoplay=&amp;showsearch=0"></param><param name="allowFullScreen" value="true"></param><embed src="http://www.youtube.com/v/EHJLdLxbZl0&amp;rel=1&amp;color1=d6d6d6&amp;color2=f0f0f0&amp;border=&amp;fs=1&amp;hl=en&amp;autoplay=&amp;showsearch=0" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="355" ></embed><param name="wmode" value="transparent" /></object></span></p>
<p style="text-align: right;"><strong>jQuery (jQuery UI) базирана администрация на галерия</strong></p>
<p>Препоръчително е да го гледате на Full Screen, HD, иначе не се вижда май май нищо особено.</p>
<p>И един скрийншот от подобна галерия:</p>
<p><a href="http://photos-b.ak.fbcdn.net/hphotos-ak-snc1/hs001.snc1/4141_1107561580903_1582729260_261609_8336606_n.jpg" rel="lightbox" title="jQuery Based Gallery"><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc1/hs001.snc1/4141_1107561580903_1582729260_261609_8336606_n.jpg" alt="jQuery Based Gallery" width="500" /></a></p>
<div align="right"><script type="text/javascript"><!--
svejo_url='http://www.vlkomarov.info/blog/2009/05/25/jquery-based-administration-of-gallery/';
svejo_bgcolor='[FFFFFF]';
svejo_skin='compact';
svejo_theme='blue';
// --></script><br />
<script src="http://svejo.net/javascripts/svejo_button.js" type="text/javascript"></script></div>
<p><strong><span style="color: #008000;">Владимир Комаров, PHP | MySQL | XML | jQuery web developer, Freelancer</span></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.vlkomarov.info/blog/2009/05/25/jquery-based-administration-of-gallery/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Е, как е?</title>
		<link>http://www.vlkomarov.info/blog/2008/07/06/atom-solutions/</link>
		<comments>http://www.vlkomarov.info/blog/2008/07/06/atom-solutions/#comments</comments>
		<pubDate>Sun, 06 Jul 2008 10:17:55 +0000</pubDate>
		<dc:creator>Hamaelleon</dc:creator>
		
		<category><![CDATA[Web development]]></category>

		<category><![CDATA[Лично]]></category>

		<category><![CDATA[AJAX]]></category>

		<category><![CDATA[Atom]]></category>

		<category><![CDATA[Atom Solutions]]></category>

		<category><![CDATA[back-end]]></category>

		<category><![CDATA[CSS]]></category>

		<category><![CDATA[DOM]]></category>

		<category><![CDATA[MySQL]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[web]]></category>

		<category><![CDATA[web developer]]></category>

		<category><![CDATA[XHTML]]></category>

		<category><![CDATA[XML]]></category>

		<category><![CDATA[Атом]]></category>

		<category><![CDATA[нова]]></category>

		<category><![CDATA[ООП]]></category>

		<category><![CDATA[предизивикателство]]></category>

		<category><![CDATA[работа]]></category>

		<category><![CDATA[споделяне]]></category>

		<category><![CDATA[учене]]></category>

		<guid isPermaLink="false">http://www.vlkomarov.info/blog/?p=81</guid>
		<description><![CDATA[
Е, как е? Справяш ли се с новата работа? Доволен ли си? Похвали се нещо..

Това бяха въпроси, които чувах постоянно през изминалия месец от приятели, които знаеха, че съм започнал нова работа.
Сега ще ви разкажа накратко.
Фирмата се казва Atom Solutions, www.atomsolutions.net. Офисът е в &#8220;центъра&#8221; на София.
Само няколко човека сме и няма нито една колежка..
Работа [...]]]></description>
			<content:encoded><![CDATA[<p><a title="XGround Models Back-End ScreenShot #050708" rel="lightbox" href="http://www.vlkomarov.info/blog/wp-content/uploads/2008/07/ss-xground-photos-050708.jpg"><img style="border: 0;" src="http://www.vlkomarov.info/blog/wp-content/uploads/2008/07/ss-xground-photos-050708-th.jpg" alt="XGround Models Back-End ScreenShot #050708" /></a></p>
<p>Е, как е? Справяш ли се с новата работа? Доволен ли си? Похвали се нещо..</p>
<p><span id="more-81"></span></p>
<p>Това бяха въпроси, които чувах постоянно през изминалия месец от приятели, които знаеха, че съм започнал <a href="http://www.vlkomarov.info/blog/2008/05/25/new_work/" target="_blank">нова работа</a>.</p>
<p>Сега ще ви разкажа накратко.</p>
<p>Фирмата се казва <a href="http://www.atomsolutions.net/" target="_blank">Atom Solutions, www.atomsolutions.net</a>. Офисът е в &#8220;центъра&#8221; на София.</p>
<p>Само няколко човека сме и няма нито една колежка..</p>
<p>Работа има доста. Първите две седмици беше тежко. В началото на втората седмица даже се чудех сутрините &#8220;да отида ли днес на работа или да си остана вкъщи&#8221; <img src='http://www.vlkomarov.info/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Абе беше си шаш и паника. Даже си направих комбинация от <a href="http://bach.vlkomarov.info" target="_blank">Бах есенции</a>, нещо, което не бях правил от две години, може би и повече (Орех, Бряст, Трепетлика, Кестенови пъпки, Лиственица)..</p>
<p>Има три неща, свързани с работата, които жестоко ме изнервят, но за съжаление и трите са неразделна част от нея и не може да мине без тях: 1. Мразя да работя в <em>крайни срокове</em>, особено пък в срокове &#8220;за вчера&#8221;, а в началото първите няколко задачи бяха точно такива и със сигурност ще има и още подобни. 2. Мразя да се чувствам <em>неспособен</em>, да нямам усещането, че ще се справя с поставената задача.. а в началото усещах прекалено осезателно колко много пропуски имам и колко неща не знам и не съм правил. 3. Клиентите, които <em>не са наясно</em> с ограниченията на web и искат от теб сайтът им примерно да пържи яйца на челна стойка, докато свири 349 симфония на Моцарт. Няма такава ли? Е, ти нали си уеб програмист, ще заложиш в сайта и възможност да композира гениални произведения, разбира се. Преекспонирам, но мисля, че схванахте идеята, нали? <img src='http://www.vlkomarov.info/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>В началото се борех със задачи от английски клиент.. това беше първата и част от втората седмица. Писах една търсачка, борих се с едни класове за mass mail.. в крайна сметка клиентът е останал доволен, а това е важното. А аз научих доста нови неща.</p>
<p>След това имаше някакъв сайт за ъпдейт, трябваше да свършим за два дена, направихме го (с клиента до мен, казващ ми това тук така, онова еди как си го искам) за един следобед. Пак доволен клиент.</p>
<p>На 11 юни ми възложиха един проект с &#8220;това е спешно.. ако можеш да го свършиш този уикенд.. и няма нищо сложно, само малко промени по CSS-а на сайта&#8221; <img src='http://www.vlkomarov.info/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Става дума за сайт, писан от румънски колеги, използващи <a title="Smarty Template Engine" href="http://www.smarty.net/" target="_blank">Smarty Template Engine</a>. Имах бегла представа за Smarty, но се наложи експресно да изчета <a title="Smarty Template Engine" href="http://www.smarty.net/manual/en/" target="_blank">цялата документация</a>, празнуването на рождения ми ден (13 юни) отиде по дяволите.. изискваните промени изобщо не бяха нито прости, нито само по CSS стиловете. В крайна сметка с множеството малки и по-големи промени по първоначалния шаблон, фиксове, добавен нов раздел и съответна функционалност в Admin Panel-а, че и преправянето след това и за гръцки колеги, работата по този сайт се проточи до 2 юли. Резултатът е <a href="http://www.mobilenews.bg" target="_blank">www.mobilenews.bg</a> и <a href="http://www.mobile-news.gr" target="_blank">www.mobile-news.gr</a> (сега забелязах нещо за фиксване в CSS-a, щото под IE 6 заглавната не изглежда точно така, както трябва да е). Трябва да добавя по някое време поддръжка на RSS и възможност за качване на видео в сайта. Също и търсачка за раздел Каталог. С две думи, ще има още работа..</p>
<p>Вярно, научих достатъчно за Smarty за да се справя по-уверено със следващата подобна задача, но това все пак е като да бършеш нечий чужд задник, не е много приятно занятие. Друго си е да си почнеш съответния проект от нулата, да си знаеш къде какво си писал в кода и кое как си реализирал.. да, пак ползваш опита на майсторите в бранша, като готови функции, класове, решения и т.н., но ти си този, който слага тухла след тухла в изцяло нов строеж, а не просто кръпки във вече съществуваща уеб сграда. Не знам, това ме влече повече.</p>
<p>Сега имам нова задача. Трябва да напиша администрация за <a title="Xground Models" href="http://www.xgroundmodels.com" target="_blank">сайта на Xground Models, www.xgroundmodels.com</a>. Сайтът е изцяло на Flash, организацията на информацията е посредством XML файлове. Моята задача е парсване на XML-ите (ползвам PHP DOM), актуализацията им и записването им вече обновени, както и работа с файлове (разбирай картинки). Интересно ми е.. щом вчера вместо да си почивам отделих три часа за човъркане в CSS-а и за работа с Photoshop-a.. в събота.. за служебна работа!? Или съм се сдухал, или просто наистина ми е интересно.</p>
<p>С две думи, работата е доста, учи се интензивно в движение, повечето неща, които правих този месец преди ги бях чел само на теория или пък имах предишни реализации в доста опростен вид.. с една идея съм напред с ООП.. и изобщо, ако така ще се чете и ще се учи следващите пет месеца, като ми мине изпитателния срок определено ще съм доста по-напред с материала, което може само да ме радва. И няма да има значение дали ще остана в същата фирма или ще се търси нова работа отново..</p>
<p>Това на първо място зависи от заплащането, естествено. Предишната работа, която напуснах беше ок, шефът ми беше пич, имах време да чета и да уча, но всеки месец, плащайки наема, сметките и подобни се оказвах още на 3-4 число с цял месец пред мен и празни джобове. Сори, ама така не се живее. Лоялността към фирмата я разбирам така: започваш на една заплата и на обичайния изпитателен срок, при мен в случая беше 6 месеца, и сега пак е така. Работиш, изпълняваш си съвестно задълженията, учиш (на предишната работа моментът с ученето беше изцяло лична инициатива, самата работа де факто не го изискваше) и като ти изтече изпитателния срок си вече с една или повече стъпки напред, нали? Означава, че си по-опитен и с повече знание, нали? Следователно би трябвало да си по-ценен кадър и съответно цената ти да е по-висока. И ако въпреки това (както за съжаление се случва в повечето фирми в БГ) няма промяна в заплащането или пък става дума за мизерно увеличение (както беше в по-по-предишната ми работа), и работата не ти предоставя кой знае какви перспективи за учене или професионално развитие, тогава какво? Разбира се, че напускаш при първа възможност заради по-добро предложение. (Е, аз продължавам засега работата с комиксите, но де факто съм напуснал.) Правилно ли разсъждавам?</p>
<p>В крайна сметка, не съм толкова млад вече, че да си позволя кибик на безперспективна работа само за да ми е по-лек живота.. вземаш си там някаква си заплатка и кюташ както намериш за добре, евентуално все още висейки на врата на мама и тати (познат ли ви е този сценарий).. нито пък съм все още на години, когато да се стремя да се установя някъде за постоянно и да храня напразни надежди за пенсия и лека старост. Сега му е времето за растеж (макар, че аз малко съм закъснял покрай отделените 6 години на медицината и още 3 за хомеопатията.. както и да е, те не се губят, за добро са..) и експериментиране, нали?</p>
<p>&#8212;</p>
<p>Има много за учене, има интересни задачи, заплащането за момента ме удовлетворява.. в крайна сметка този месец съм изкарал 245% повече от предишния, като само 1/9 от дохода за месеца е от частни проекти, няма от какво да се оплаквам.</p>
<p>&#8212;</p>
<p>О, btw, май скоро ще съм най-дъртия във фирмата.. това не знам дали да го коментирам..</p>
<p>&#8212;</p>
<p>Ами, това е засега <img src='http://www.vlkomarov.info/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.vlkomarov.info/blog/2008/07/06/atom-solutions/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
