Klíč je v zaokrouhlování. Stanov si cenu za den práce (8 hodin) a tu si účtuj. Pokud je to menší úkol, tak si to klient může vybrat po částech, ale platí vždy celé dny. A každou tu menší část musíš zaokrouhlovat nahoru a počítat, na jak dlouho tě klient vyrušil – on i jeden telefonát nebo změna na jednu řádku tě vytrhne z jiné rozdělané práce a vezme ti klidně půlhodinu, hodinu... To si spousta lidí neuvědomuje a prodávají se pod cenou. I když často pak dojdeš k tomu, že takto malé zakázky nemá smysl dělat - nebo jen pro lidi, kteří chápou tu pracnost a časovou náročnost takového stylu práce.
Co se týče studia, to je složitější. Čím jsi větší senior, odborník a čím vyšší cenu si účtuješ, tím víc se předpokládá, že budeš věci vědět z hlavy, bez přípravy - za to ti přece tolik platí. Na druhou stranu ani sebevětší odborník nemůže znát všechno a specifické věci si i on musí nastudovat - takže takový čas jednoznačně taky účtuješ.
Tzn. pokud ses někam dokázal prodat jako machr na C++ nebo Javu, a přitom ty jazyky pořádně neznáš, tak fajn, ale dostuduj si ty základy ve svém volném čase. Naopak pokud klient bude chtít, abys používal nějakou neobvyklou knihovnu nebo implementoval nějaký protokol či formát, tak tvůj čas na studium platí on.
P.S. jinak jdeš trochu s křížkem po funuse - takováhle témata se tu nadhazují hezky před víkendem, ne na jeho konci. Trollení zdar!
1. Nejde o neznalost jazyka nebo standardních knihoven, ale potřebuješ nějaký čas k prostudování konkrétního existujícího projektu než do něj začneš zasahovat - jakou má logiku, jak je to celé provázané, co na čem závisí atd. Vlastní úprava pak může být celkem triviální, ale než na to člověk přijde, tak se musí zorientovat, jaké funkce už jsou v něm hotové, jak se volají, jaké datové struktury využívají, co se z nich dá všechno vyčíst atp. To podle mě nezáleží na tom, je-li někdo senior či junior, ale jak přehledně je ten projekt vedený a jak dobře je dokumentovaný. Když původní dodavatel už dávno neexistuje, tak není koho se zeptat, všechno člověk musí vykoumat jen z toho, co má k dispozici, aby mohl nějak logicky navázat, použil maximum existujícího kódu a nedělal v tom zbytečný binec.
2. Na konci víkendu - to bude asi tím, že mě to opravdu zajímá, protože s takovýmito zakázkami nemám zkušenosti. V zakázkách pro korporáty je to prostě kontrakt na X měsíců, kdy se práce specifikuje a přebírá průběžně a fakturuje se na konci měsíce nebo celého kontraktu podle celkového počtu hodin v daném období, což se dohodne předem - např. 160 hodin měsíčně po X Kč bez ohledu na skutečně prací strávený čas. Ale tady jde o konkrétní požadavek objednatele na nějakou funkcionalitu, která se prodraží právě tím studiem projektu. Spíš mě zajímalo, jestli to fakturujete jako extra položky ("seznámení s projektem", "příprava prostředí pro vývoj"...), nebo třeba zda to fakturujete až po nějaké delší době, až se toho nashromáždí víc a tyhle fixní náklady nějak zohledníte až v celkové sumě nebo výsledné hodinové sazbě.
Najlepsie je, ze nikto nevie o aky vyvoj sa jedna (alebo vyvijas vsetko a vo vsetkom??).
A v čem by se to principiálně lišilo, pokud jde o C++, Javu nebo třeba PHP? V mém případě to první. Tady snad nejde o konrétní jazyk, ale o konkrétní typ zakázek - menší jednotlivé úkoly, kdy zadavatel neví nic o vývoji, je to prostě koncový zákazník.