Archívum - Feb 2012
február 20
isinstance - ne használjam?
Ahogy elnézem, ő többé-kevésbé általánosságban, programnyelvtől függetlenül próbálja megfogalmazni, miért ártalmas(???) az isinstance használata, de van egy szakasz amit nem értek: annak megállapítására, hogy egy paraméterként kapott objektum implementált-e egy szükséges interface-t ("to determine whether an object supports a particular interface "), szerinte alkalmatlan és kerülendő az isinstance használata, ugyanakkor nem látom, hogy adna tippet, hogy mit kellene helyette.
A saját problémám: pythonban készítettem egy fa struktúra leírására használható osztályt. (csak tanulgatok, semmi komoly)
Néhány helyen szeretném ellenőrizni, hogy a paraméterként kapott objektum az általam definiált Node osztályból származik-e, ezzel biztosítva, hogy a szükséges attribútumok és metódusok létezzenek benne.
Ha a fentieket jól értelmezem, e célra nem illik ezt használni. De ha ez így van(így van??), akkor hogyan tudnám ellenőrizni?
Frontend fejlesztő interjú kérdések
Interjúztatni nem könnyű, hiszen az interjúalanynak nem csak a szakmai tudását kell figyelembe venni. Az Arkon tavalyi kérdőíve például olyan volt, hogy csak nagyon kevesen tudták hibátlanul kitölteni, így az is kijött, hogy a kudarcot hogyan éli meg valaki, stresszhelyzetben hogyan viselkedik. Darcy Clarke is egy ilyen kérdéssort rakott össze – a legtöbb választ illik ismerni, amit nem ismertünk eddig, annak meg érdemes utánaolvasni.
GIT - szerver alkalmazás nélkül?
Egy weboldalt többen szerkesztünk, csak FTP hozzáférésünk van, a szerverre plusz alkalmazás feltelepítésére nincs lehetőség. Nem érjük el egymás gépét.
Megoldható a fenti feltételekkel, hogy mégis használjunk közös repository-t? Az nem szükséges, hogy maga az élesítés is GIT-tel menjen. Tehát elegendő, hogy a Pull, Push utasítást FTP-n keresztül egy közös könyvtárral végezzük. Checkout-ot külön kezelnénk, illetve nem tudom, hogy hogyan érdemes. Nem biztos, hogy előnyös lenne, a Pull-t összekötni az élesítéssel is.
Amennyiben nem megoldható, akkor ilyen esetben mit szoktak csinálni? Mindenképpen szükséges a szerverre valamilyen program feltelepítése?
Válaszokat előre is köszönöm!
netBeans - java bekapcsolása újratelepítés nélkül
Netbeans-t használok PHP-s fejlesztésre. Érdekelne, hogy van e lehetőség a java támogatás bekapcsolására újratelepítés nélkül, vagy muszáj lesz innen leszednem az "all"-os verziót?
Szeretnék olyan plugint készíteni, ami saját parancsfájlokat hív, esetleg ugyanazt csinálja, mint ezek a parancsfájlok... Ha van valami használható leírásotok hozzá, azt is megköszönném. Java-val alap szinten tisztában vagyok, de még nem fejlesztettem benne.
február 19
Magyar vagy nemzetközi weboldal?
Jelenleg van egy weboldalam, ami egy bizonyos érdeklődésű emberek számára nyújt információkat, tartalmakat, cikkeket. Jelenleg egy .hu végződésű domain cím alatt fut, a weboldal bevételi forrását a Google Adsense biztosítja.
Az ötlet:
A következő jutott eszembe. Azon gondolkodtam, hogy ezt a címet angolra lefordítva beregisztrálom .com végződéssel. Ugyanakkor a tartalmat kiegészítem úgy, hogy más országokból jövőknek is élményt nyújtson, többnyelvű tartalmakkal.
Két koncepció
Két lehetőséget kell fontolóra vennem:
1. inkább a magyar közönséget erősítsem meg, magyar domainnel, magyar tartalmakkal?
2. inkább a nemzetközi közösséget célozzam meg, külföldi domain címmel, többnyelvű tartalommal? Ebben az esetben nyilván a tartalom is felhígul, mert ugyanannyi munkával ugyanannyi cikket tudok csak írni, de így több országból is rátalálnak.
A kérdéseim
Szerintetek ugyanannyi munkával melyik lehetőséggel lehet hosszútávon több látogatót bevonzani, illetve nagyobb átkattintási arányt elérni Adsense-ből? Ha nem csak a látogatottságot vagy az Adsense bevételt nézzük, milyen előnyei és hátrányai vannak az 1. és a 2. koncepciónak?
február 18
session_id() egyezik
Írtam egy új statisztikai rendszert amit be is vezettem a tárhelyemen ami munkamenetazonosítókkal (session_id()) azonosítja hogy az adott ip visszatérő látogató-e.
Annak érdekében hogy gyorsuljon az egész és könyebb is legyen kezelni, elsődleges indexet adtam az adott oszlopnak ahol az azonosítót tárolom.
Mióta ez így működik a PHP elég furcsa dolgokat művel, mivel van olyan hibaüzenet a naplóban miszerint már van olyan kulcs.
Erre próbáltam valahogy "reagálni".
session_start();
if (!isset($_SESSION["init"])) {
session_id(md5(time()));
$_SESSION["init"] = true;
}
A beállítások mindenütt rendben vannak, a működési elvük is egyezik, nincs olyan különbség ami ezt okozná... ezt jópárszor átnéztem.
Esetleg ha valaki összefutott ehhez hasonló problémával és talált rá megoldást vagy valakinek van ötlete hogy lehetne helyrehozni kérem írja meg.
Előre is köszönöm
JOIN + LIMIT + GROUP BY + COUNT?
SELECT m.megye, m.megye_id, a.megyehez_tartozo_adat
FROM megyek AS m
INNER JOIN adatok AS a
USING ( megye_id )
megye1->adat1
megye1->adat2
megye1->adat3
megye2->adat1
megye2->adat2
megye3->adat1
megye3->adat2
megye3->adat3
Kiegészítés: mysql adatbázisról van szó
február 17
Eladó könyvek
A következő könyvek váltak számomra fölöslegessé, egyben, vagy darabonként:
- Java 2 útikalauz programozóknak (Kék és zöld, mind a 3 kötet)
- Beginning iPhone Development (Apress)
- Learn Objective-C on the Mac (Apress)
- PHP Fekete Könyv
- PHP fejlesztés felsőfokon
- Flash 5 Biblia (mindkét kötet)
Ha valamelyik megtetszett, vagy az egészet átvennéd, akkor keress bátran. (simonbence gmail com)
További szép napot :)
JSON_UNESCAPED_UNICODE
Mivel php 5.2-t használunk, ezért json_encode($array, UNESCAPED_UNICODE) sajnos nem elérhető.
A problémám az ékezetes karakterekkel van. Találtam néhány függvényt erre, ami eddig a leghasználhatóbbnak tünt az ez:
[colorer=php]
function json_encode_string($in_str)
{
mb_internal_encoding("UTF-8");
$convmap = array(0x80, 0xFFFF, 0, 0xFFFF);
$str = "";
for($i=mb_strlen($in_str)-1; $i>=0; $i--)
{
$mb_char = mb_substr($in_str, $i, 1);
if(mb_ereg("&#(\\d+);", mb_encode_numericentity($mb_char, $convmap, "UTF-8"), $match))
{
$str = sprintf("\\u%04x", $match[1]) . $str;
}
else
{
$str = $mb_char . $str;
}
}
return $str;
}
function php_json_encode($arr)
{
$json_str = "";
if(is_array($arr))
{
$pure_array = true;
$array_length = count($arr);
for($i=0;$i<$array_length;$i++)
{
if(! isset($arr[$i]))
{
$pure_array = false;
break;
}
}
if($pure_array)
{
$json_str ="[";
$temp = array();
for($i=0;$i<$array_length;$i++)
{
$temp[] = sprintf("%s", php_json_encode($arr[$i]));
}
$json_str .= implode(",",$temp);
$json_str .="]";
}
else
{
$json_str ="{";
$temp = array();
foreach($arr as $key => $value)
{
$temp[] = sprintf("\"%s\":%s", $key, php_json_encode($value));
}
$json_str .= implode(",",$temp);
$json_str .="}";
}
}
else
{
if(is_string($arr))
{
$json_str = "\"". json_encode_string($arr) . "\"";
}
else if(is_numeric($arr))
{
$json_str = $arr;
}
else
{
$json_str = "\"". json_encode_string($arr) .
Használható PSD-k
Sok helyen nem a grafikusok végzik a HTML elkészítését, emiatt szükség lehet arra, hogy olyan formában adják át a látványtervet a sitebuilderek részére, ami jó esetben szükségtelenné teszi az utólagos kommunikációt, mert minden egyértelmű benne, továbbá könnyebbé teszi a munkát, ha fél év múlva kell elővennünk az anyagot. Ehhez szeretnék segítséget nyújtani, bemutatva jó és rossz példákat (a szakmában kvázi-szabvánnyá vált Photoshopon keresztül, de az elvek természetesen más szoftverre is alkalmazhatóak), továbbá várom a nyájas olvasók további javaslatait. A felsoroltak jórésze sokak számára magától értetődő lehet, de ne felejtkezzünk el azokról, akik nemrég csöppentek bele a szakmába, és még nincs meg a megfelelő gyakorlatuk.